msm: board-8064-camera: disable i2c for sglte2
GSBI4 is used to configure i2c for camera control. In SGLTE2 platform,
GSBI4 needs to be used for UART. So, disabling the i2c mux register
for camera in acse of SGLTE2 platform
Change-Id: Ide0dc353e669105271b6b25d1fe445f135b74572
Signed-off-by: Punit Soni <punits@codeaurora.org>
diff --git a/arch/arm/mach-msm/board-8064-camera.c b/arch/arm/mach-msm/board-8064-camera.c
index 3484e35..5c25391 100644
--- a/arch/arm/mach-msm/board-8064-camera.c
+++ b/arch/arm/mach-msm/board-8064-camera.c
@@ -19,6 +19,7 @@
#include <mach/camera.h>
#include <mach/msm_bus_board.h>
#include <mach/gpiomux.h>
+#include <mach/socinfo.h>
#include "devices.h"
#include "board-8064.h"
@@ -695,8 +696,12 @@
void __init apq8064_init_cam(void)
{
- msm_gpiomux_install(apq8064_cam_common_configs,
+ /* for SGLTE2 platform, do not configure i2c/gpiomux gsbi4 is used for
+ * some other purpose */
+ if (socinfo_get_platform_subtype() != PLATFORM_SUBTYPE_SGLTE2) {
+ msm_gpiomux_install(apq8064_cam_common_configs,
ARRAY_SIZE(apq8064_cam_common_configs));
+ }
if (machine_is_apq8064_cdp()) {
sensor_board_info_imx074.mount_angle = 0;
@@ -705,7 +710,8 @@
sensor_board_info_imx074.mount_angle = 180;
platform_device_register(&msm_camera_server);
- platform_device_register(&msm8960_device_i2c_mux_gsbi4);
+ if (socinfo_get_platform_subtype() != PLATFORM_SUBTYPE_SGLTE2)
+ platform_device_register(&msm8960_device_i2c_mux_gsbi4);
platform_device_register(&msm8960_device_csiphy0);
platform_device_register(&msm8960_device_csiphy1);
platform_device_register(&msm8960_device_csid0);