Index: firmware/export/config-ipod3g.h =================================================================== --- firmware/export/config-ipod3g.h (révision 14902) +++ firmware/export/config-ipod3g.h (copie de travail) @@ -17,6 +17,9 @@ /* define this if you can invert the colours on your LCD */ #define HAVE_LCD_INVERT +/* define this if the LCD needs to be shutdown */ +#define HAVE_LCD_SHUTDOWN + /* define this if you have access to the quickscreen */ #define HAVE_QUICKSCREEN /* define this if you have access to the pitchscreen */ Index: firmware/export/config-ipodmini.h =================================================================== --- firmware/export/config-ipodmini.h (révision 14902) +++ firmware/export/config-ipodmini.h (copie de travail) @@ -17,6 +17,9 @@ /* define this if you can invert the colours on your LCD */ #define HAVE_LCD_INVERT +/* define this if the LCD needs to be shutdown */ +#define HAVE_LCD_SHUTDOWN + /* define this if you have access to the quickscreen */ #define HAVE_QUICKSCREEN /* define this if you have access to the pitchscreen */ Index: firmware/export/config-ipod1g2g.h =================================================================== --- firmware/export/config-ipod1g2g.h (révision 14902) +++ firmware/export/config-ipod1g2g.h (copie de travail) @@ -17,6 +17,9 @@ /* define this if you can invert the colours on your LCD */ #define HAVE_LCD_INVERT +/* define this if the LCD needs to be shutdown */ +#define HAVE_LCD_SHUTDOWN + /* define this if you have access to the quickscreen */ #define HAVE_QUICKSCREEN /* define this if you have access to the pitchscreen */ Index: firmware/export/config-ipodmini2g.h =================================================================== --- firmware/export/config-ipodmini2g.h (révision 14902) +++ firmware/export/config-ipodmini2g.h (copie de travail) @@ -17,6 +17,9 @@ /* define this if you can invert the colours on your LCD */ #define HAVE_LCD_INVERT +/* define this if the LCD needs to be shutdown */ +#define HAVE_LCD_SHUTDOWN + /* define this if you have access to the quickscreen */ #define HAVE_QUICKSCREEN /* define this if you have access to the pitchscreen */ Index: firmware/export/lcd.h =================================================================== --- firmware/export/lcd.h (révision 14902) +++ firmware/export/lcd.h (copie de travail) @@ -288,6 +288,10 @@ extern void lcd_sleep(void); #endif /* HAVE_LCD_SLEEP */ +#ifdef HAVE_LCD_SHUTDOWN +void lcd_shutdown(void); +#endif + /* Bitmap formats */ enum { Index: firmware/export/config-ipod4g.h =================================================================== --- firmware/export/config-ipod4g.h (révision 14902) +++ firmware/export/config-ipod4g.h (copie de travail) @@ -27,6 +27,9 @@ /* define this if you can invert the colours on your LCD */ #define HAVE_LCD_INVERT +/* define this if the LCD needs to be shutdown */ +#define HAVE_LCD_SHUTDOWN + /* define this if you have access to the quickscreen */ #define HAVE_QUICKSCREEN /* define this if you have access to the pitchscreen */ Index: firmware/target/arm/ipod/lcd-gray.c =================================================================== --- firmware/target/arm/ipod/lcd-gray.c (révision 14902) +++ firmware/target/arm/ipod/lcd-gray.c (copie de travail) @@ -368,3 +368,12 @@ { lcd_update_rect(0, 0, LCD_WIDTH, LCD_HEIGHT); } + +#ifdef HAVE_LCD_SHUTDOWN +/* LCD powerdown */ +void lcd_shutdown(void) +{ + lcd_cmd_and_data(R_POWER_CONTROL, 0x1500); /* Turn off op amp power */ + lcd_cmd_and_data(R_POWER_CONTROL, 0x1502); /* Put LCD driver in standby */ +} +#endif Index: firmware/powermgmt.c =================================================================== --- firmware/powermgmt.c (révision 14902) +++ firmware/powermgmt.c (copie de travail) @@ -1181,6 +1181,10 @@ lcd_remote_set_contrast(0); #endif +#ifdef HAVE_LCD_SHUTDOWN + lcd_shutdown(); +#endif + /* Small delay to make sure all HW gets time to flush. Especially eeprom chips are quite slow and might be still writing the last byte. */