diff options
-rw-r--r-- | minui/Android.mk | 4 | ||||
-rw-r--r-- | minui/graphics_fbdev.cpp | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/minui/Android.mk b/minui/Android.mk index 3057f45..dd64cc6 100644 --- a/minui/Android.mk +++ b/minui/Android.mk @@ -37,6 +37,10 @@ else LOCAL_CFLAGS += -DOVERSCAN_PERCENT=0 endif +ifneq ($(BOARD_RECOVERY_NEEDS_FBIOPAN_DISPLAY),) + LOCAL_CFLAGS += -DBOARD_RECOVERY_NEEDS_FBIOPAN_DISPLAY +endif + include $(BUILD_STATIC_LIBRARY) # Used by OEMs for factory test images. diff --git a/minui/graphics_fbdev.cpp b/minui/graphics_fbdev.cpp index 997e9ca..c94b581 100644 --- a/minui/graphics_fbdev.cpp +++ b/minui/graphics_fbdev.cpp @@ -73,9 +73,15 @@ static void set_displayed_framebuffer(unsigned n) vi.yres_virtual = gr_framebuffer[0].height * 2; vi.yoffset = n * gr_framebuffer[0].height; vi.bits_per_pixel = gr_framebuffer[0].pixel_bytes * 8; + if (ioctl(fb_fd, FBIOPUT_VSCREENINFO, &vi) < 0) { perror("active fb swap failed"); } +#ifdef BOARD_RECOVERY_NEEDS_FBIOPAN_DISPLAY + if (ioctl(fb_fd, FBIOPAN_DISPLAY, &vi) < 0) { + perror("pan failed"); + } +#endif displayed_buffer = n; } |