target: msm8974: Add panel autodetection for 8974
Adding support for autodetecting 720p/1080p
panel for 8974 platform. This allows either
panel to be attached/replaced without any code change.
Change-Id: I2c605c80f92a0e924f39908b668c5c28d4ea33ba
diff --git a/target/msm8974/init.c b/target/msm8974/init.c
index 5c8bfef..bb7fe08 100644
--- a/target/msm8974/init.c
+++ b/target/msm8974/init.c
@@ -587,23 +587,49 @@
}
}
-/* Returns 1 if target supports continuous splash screen. */
-int target_cont_splash_screen()
+uint8_t target_panel_auto_detect_enabled()
{
switch(board_hardware_id())
{
case HW_PLATFORM_SURF:
case HW_PLATFORM_MTP:
case HW_PLATFORM_FLUID:
- case HW_PLATFORM_DRAGON:
- case HW_PLATFORM_LIQUID:
- dprintf(SPEW, "Target_cont_splash=1\n");
return 1;
break;
default:
- dprintf(SPEW, "Target_cont_splash=0\n");
return 0;
+ break;
}
+ return 0;
+}
+
+static uint8_t splash_override;
+/* Returns 1 if target supports continuous splash screen. */
+int target_cont_splash_screen()
+{
+ uint8_t splash_screen = 0;
+ if(!splash_override) {
+ switch(board_hardware_id())
+ {
+ case HW_PLATFORM_SURF:
+ case HW_PLATFORM_MTP:
+ case HW_PLATFORM_FLUID:
+ case HW_PLATFORM_DRAGON:
+ case HW_PLATFORM_LIQUID:
+ dprintf(SPEW, "Target_cont_splash=1\n");
+ splash_screen = 1;
+ break;
+ default:
+ dprintf(SPEW, "Target_cont_splash=0\n");
+ splash_screen = 0;
+ }
+ }
+ return splash_screen;
+}
+
+void target_force_cont_splash_disable(uint8_t override)
+{
+ splash_override = override;
}
unsigned target_pause_for_battery_charge(void)