summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-enterprise.h
diff options
context:
space:
mode:
authorJihoon Bang <jbang@nvidia.com>2011-09-27 11:23:55 -0700
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:49:22 -0800
commitecd187ab7f25044f1e1c19177e45a3b2a9b906c8 (patch)
tree711c05ae9093348938d8b13b38c2ee5e7036e01a /arch/arm/mach-tegra/board-enterprise.h
parent2b4ad6f054acd3f921fb4fd88e61058f6d24e428 (diff)
arm: tegra: enterprise: add I2C mux driver instance
Add I2C mux driver instance to support two rear sensors. Add new GPIO pin to control reset for I2C mux. If board doesn't have I2C mux, it falls back to previous I2C tree. Bug 871860 Reviewed-on: http://git-master/r/54763 (cherry picked from commit c53f8fc9d5d05427684aafb4ad6552eb6cff7ff7) Reviewed-on: http://git-master/r/55799 (cherry picked from commit c5fe68c1b4b1ed1e283526c8ac057efb3a2af5af) Change-Id: I40a35cbd301e53a8d70700043142d5cac0655b5c Reviewed-on: http://git-master/r/57414 Reviewed-by: Jihoon Bang <jbang@nvidia.com> Tested-by: Jihoon Bang <jbang@nvidia.com> Reviewed-by: Dan Willemsen <dwillemsen@nvidia.com> Rebase-Id: Re59baf9b13c653c366f992913622d1a46c8aecde
Diffstat (limited to 'arch/arm/mach-tegra/board-enterprise.h')
-rw-r--r--arch/arm/mach-tegra/board-enterprise.h18
1 files changed, 16 insertions, 2 deletions
diff --git a/arch/arm/mach-tegra/board-enterprise.h b/arch/arm/mach-tegra/board-enterprise.h
index 26e63208cb89..dcc24a0a5a98 100644
--- a/arch/arm/mach-tegra/board-enterprise.h
+++ b/arch/arm/mach-tegra/board-enterprise.h
@@ -25,6 +25,14 @@
#include <mach/irqs.h>
#include <linux/mfd/tps80031.h>
+/* Processor Board ID */
+#define BOARD_E1205 0x0C05
+
+/* Board Fab version */
+#define BOARD_FAB_A00 0x0
+#define BOARD_FAB_A01 0x1
+#define BOARD_FAB_A02 0x2
+
int enterprise_charge_init(void);
int enterprise_sdhci_init(void);
int enterprise_pinmux_init(void);
@@ -39,6 +47,13 @@ int enterprise_suspend_init(void);
int enterprise_edp_init(void);
void __init enterprise_tsensor_init(void);
+/* PCA954x I2C bus expander bus addresses */
+#define PCA954x_I2C_BUS_BASE 6
+#define PCA954x_I2C_BUS0 (PCA954x_I2C_BUS_BASE + 0)
+#define PCA954x_I2C_BUS1 (PCA954x_I2C_BUS_BASE + 1)
+#define PCA954x_I2C_BUS2 (PCA954x_I2C_BUS_BASE + 2)
+#define PCA954x_I2C_BUS3 (PCA954x_I2C_BUS_BASE + 3)
+
/*****************External GPIO tables ******************/
/* External peripheral gpio base. */
#define ENT_TPS80031_GPIO_BASE TEGRA_NR_GPIOS
@@ -58,9 +73,7 @@ void __init enterprise_tsensor_init(void);
#define CAM_CSI_MUX_SEL_FRONT 0
#define CAM1_RST_L_GPIO TEGRA_GPIO_PM5 /*REAR RIGHT*/
-#define CAM1_PWDN_GPIO TEGRA_GPIO_PF3 /*REAR RIGHT*/
#define CAM2_RST_L_GPIO TEGRA_GPIO_PF4 /*REAR LEFT*/
-#define CAM2_PWDN_GPIO TEGRA_GPIO_PF2 /*REAR LEFT*/
#define CAM3_RST_L_GPIO TEGRA_GPIO_PM2 /*FRONT*/
#define CAM3_RST_L_TRUE 0
#define CAM3_RST_L_FALSE 1
@@ -70,6 +83,7 @@ void __init enterprise_tsensor_init(void);
#define CAM_FLASH_EN_GPIO TEGRA_GPIO_PBB3
#define CAM_FLASH_MAX_TORCH_AMP 7
#define CAM_FLASH_MAX_FLASH_AMP 7
+#define CAM_I2C_MUX_RST_EXP TEGRA_GPIO_PF3 /*I2C Mux Reset*/
/* Audio-related GPIOs */
#define TEGRA_GPIO_HP_DET TEGRA_GPIO_PW3