From 0940e414e2604320320c7f1bc6c5ae4d56f385c6 Mon Sep 17 00:00:00 2001 From: Ethan Chen Date: Tue, 22 Oct 2013 13:48:50 -0700 Subject: minui: Allow devices to blank/unblank using LCD backlight * Some devices rely on the LCD backlight to blank/unblank the display, support them by allowing a custom LCD backlight path to be used. Change-Id: I8406b4b55cd7a2afc4f8f8ba65de2c53b949489d --- minui/Android.mk | 4 ++++ minui/graphics.c | 12 ++++++++++++ 2 files changed, 16 insertions(+) diff --git a/minui/Android.mk b/minui/Android.mk index 9bda6dd36..d8895873e 100644 --- a/minui/Android.mk +++ b/minui/Android.mk @@ -31,4 +31,8 @@ else LOCAL_CFLAGS += -DOVERSCAN_PERCENT=0 endif +ifneq ($(TARGET_RECOVERY_LCD_BACKLIGHT_PATH),) + LOCAL_CFLAGS += -DRECOVERY_LCD_BACKLIGHT_PATH=$(TARGET_RECOVERY_LCD_BACKLIGHT_PATH) +endif + include $(BUILD_STATIC_LIBRARY) diff --git a/minui/graphics.c b/minui/graphics.c index 8998d9fd1..ff3967496 100644 --- a/minui/graphics.c +++ b/minui/graphics.c @@ -437,9 +437,21 @@ gr_pixel *gr_fb_data(void) void gr_fb_blank(bool blank) { +#ifdef RECOVERY_LCD_BACKLIGHT_PATH + int fd; + + fd = open(RECOVERY_LCD_BACKLIGHT_PATH, O_RDWR); + if (fd < 0) { + perror("cannot open LCD backlight"); + return; + } + write(fd, blank ? "000" : "127", 3); + close(fd); +#else int ret; ret = ioctl(gr_fb_fd, FBIOBLANK, blank ? FB_BLANK_POWERDOWN : FB_BLANK_UNBLANK); if (ret < 0) perror("ioctl(): blank"); +#endif } -- cgit v1.2.3