From 5fc564eda7cc99a37fa485b452fdcc1260ee2d4f Mon Sep 17 00:00:00 2001 From: Michael Hennerich Date: Fri, 7 Aug 2009 02:47:54 +0000 Subject: Blackfin: shutdown video DMA when booting Linux In case there is no frame buffer driver present in Linux to hand over the PPI LCD DMA upon boot, the DMA initiated by u-boot to display the splash screen runs unattended. Therefore always stop the video driver in u-boot before starting Linux. If people don't want this behavior, then they can simply stub out the video_stop() function in their board video driver. Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger --- arch/blackfin/lib/boot.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'arch') diff --git a/arch/blackfin/lib/boot.c b/arch/blackfin/lib/boot.c index 37aa82a..768a882 100644 --- a/arch/blackfin/lib/boot.c +++ b/arch/blackfin/lib/boot.c @@ -18,6 +18,10 @@ extern void swap_to(int device_id); #endif +#ifdef CONFIG_VIDEO +extern void video_stop(void); +#endif + static char *make_command_line(void) { char *dest = (char *)CONFIG_LINUX_CMDLINE_ADDR; @@ -45,6 +49,11 @@ int do_bootm_linux(int flag, int argc, char * const argv[], bootm_headers_t *ima swap_to(FLASH); #endif +#ifdef CONFIG_VIDEO + /* maybe this should be standardized and moved to bootm ... */ + video_stop(); +#endif + appl = (int (*)(char *))images->ep; printf("Starting Kernel at = %p\n", appl); -- cgit v1.1