From 4c6c8cd1aaf11ceea9e8e801f29e0c000fee7d32 Mon Sep 17 00:00:00 2001 From: Amaury Pouly Date: Thu, 26 Sep 2013 22:54:29 +0200 Subject: fuze+/zenxfi2: make sure pixclk is running before initialising lcdif Change-Id: I50b2376d5f6dcf4dde994b533e0b946589a737e8 --- firmware/target/arm/imx233/creative-zenxfi2/lcd-zenxfi2.c | 2 +- firmware/target/arm/imx233/lcdif-imx233.h | 1 + firmware/target/arm/imx233/sansa-fuzeplus/lcd-fuzeplus.c | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/firmware/target/arm/imx233/creative-zenxfi2/lcd-zenxfi2.c b/firmware/target/arm/imx233/creative-zenxfi2/lcd-zenxfi2.c index 6917ea3f53..a2dd689fd3 100644 --- a/firmware/target/arm/imx233/creative-zenxfi2/lcd-zenxfi2.c +++ b/firmware/target/arm/imx233/creative-zenxfi2/lcd-zenxfi2.c @@ -152,8 +152,8 @@ static void lcd_init_seq(void) void lcd_init_device(void) { - setup_lcdif(); setup_lcdif_clock(); + setup_lcdif(); // reset device imx233_lcdif_reset_lcd(true); diff --git a/firmware/target/arm/imx233/lcdif-imx233.h b/firmware/target/arm/imx233/lcdif-imx233.h index dabc1f4c71..3554c86e06 100644 --- a/firmware/target/arm/imx233/lcdif-imx233.h +++ b/firmware/target/arm/imx233/lcdif-imx233.h @@ -31,6 +31,7 @@ typedef void (*lcdif_irq_cb_t)(void); void imx233_lcdif_enable(bool enable); +/* WARNING: pixclk must be running before calling lcdif_init */ void imx233_lcdif_init(void);// reset lcdif block void imx233_lcdif_reset_lcd(bool enable);// set/clr reset line void imx233_lcdif_set_timings(unsigned data_setup, unsigned data_hold, diff --git a/firmware/target/arm/imx233/sansa-fuzeplus/lcd-fuzeplus.c b/firmware/target/arm/imx233/sansa-fuzeplus/lcd-fuzeplus.c index 93189c14e5..7710104f55 100644 --- a/firmware/target/arm/imx233/sansa-fuzeplus/lcd-fuzeplus.c +++ b/firmware/target/arm/imx233/sansa-fuzeplus/lcd-fuzeplus.c @@ -387,8 +387,8 @@ void lcd_init_device(void) lcd_dcp_channel = imx233_dcp_acquire_channel(TIMEOUT_NOBLOCK); if(lcd_dcp_channel < 0) panicf("imx233_framebuffer_init: imx233_dcp_acquire_channel failed!"); - setup_lcdif(); setup_lcdif_clock(); + setup_lcdif(); for(int i = 0; i < 10; i++) { -- cgit v1.2.3