diff --git a/firmware/target/arm/ipod/backlight-nano_video.c b/firmware/target/arm/ipod/backlight-nano_video.c index 2f56f94225..11893a591d 100644 --- a/firmware/target/arm/ipod/backlight-nano_video.c +++ b/firmware/target/arm/ipod/backlight-nano_video.c @@ -97,7 +97,6 @@ void _backlight_hw_enable(bool on) { GPIO_CLEAR_BITWISE(GPIOD_OUTPUT_VAL, 0x80); GPIO_CLEAR_BITWISE(GPIOB_OUTPUT_VAL, 0x08); - sleep(HZ/20); } enabled = on; } diff --git a/firmware/target/arm/ipod/video/lcd-video.c b/firmware/target/arm/ipod/video/lcd-video.c index 74d627730f..944f2c4236 100644 --- a/firmware/target/arm/ipod/video/lcd-video.c +++ b/firmware/target/arm/ipod/video/lcd-video.c @@ -509,6 +509,10 @@ static void bcm_command(unsigned cmd) static void bcm_powerdown(void) { + /* Immediately switch off the backlight to avoid flashing. */ + _backlight_hw_enable(false); + + /* Not sure what this does. */ bcm_write32(0x10001400, bcm_read32(0x10001400) & ~0xF0); /* Blanks the LCD and decreases power consumption