aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-tegra/board-ventana.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-tegra/board-ventana.h')
-rw-r--r--arch/arm/mach-tegra/board-ventana.h116
1 files changed, 116 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-ventana.h b/arch/arm/mach-tegra/board-ventana.h
new file mode 100644
index 00000000000..b8d8040d187
--- /dev/null
+++ b/arch/arm/mach-tegra/board-ventana.h
@@ -0,0 +1,116 @@
1/*
2 * arch/arm/mach-tegra/board-ventana.h
3 *
4 * Copyright (C) 2011 Google, Inc.
5 * Copyright (C) 2012 NVIDIA Corporation.
6 *
7 * This software is licensed under the terms of the GNU General Public
8 * License version 2, as published by the Free Software Foundation, and
9 * may be copied, distributed, and modified under those terms.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 */
17
18#ifndef _MACH_TEGRA_BOARD_VENTANA_H
19#define _MACH_TEGRA_BOARD_VENTANA_H
20
21int ventana_charge_init(void);
22int ventana_regulator_init(void);
23int ventana_sdhci_init(void);
24int ventana_pinmux_init(void);
25int ventana_panel_init(void);
26int ventana_sensors_init(void);
27int ventana_kbc_init(void);
28int ventana_emc_init(void);
29int ventana_charger_init(void);
30int ventana_cam_fixed_voltage_regulator_init(void);
31
32/* PCA954x I2C bus expander bus addresses */
33#define PCA954x_I2C_BUS_BASE 6
34#define PCA954x_I2C_BUS0 (PCA954x_I2C_BUS_BASE + 0)
35#define PCA954x_I2C_BUS1 (PCA954x_I2C_BUS_BASE + 1)
36#define PCA954x_I2C_BUS2 (PCA954x_I2C_BUS_BASE + 2)
37
38/* Sensor gpios */
39#define ISL29018_IRQ_GPIO TEGRA_GPIO_PZ2
40#define AKM8975_IRQ_GPIO TEGRA_GPIO_PN5
41#define NCT1008_THERM2_GPIO TEGRA_GPIO_PN6
42
43#define CAMERA_POWER_GPIO TEGRA_GPIO_PV4
44#define CAMERA_CSI_MUX_SEL_GPIO TEGRA_GPIO_PBB4
45#define CAMERA_FLASH_ACT_GPIO TEGRA_GPIO_PD2
46
47#define PANEL_POWER_EN_GPIO TEGRA_GPIO_PC6
48
49/* TPS6586X gpios */
50#define TPS6586X_GPIO_BASE TEGRA_NR_GPIOS
51#define TPS6586X_GPIO(_x_) (TPS6586X_GPIO_BASE + (_x_))
52#define TPS6586X_NR_GPIOS 4
53#define AVDD_DSI_CSI_ENB_GPIO TPS6586X_GPIO(1) /* gpio2 */
54#define TPS6586X_GPIO_END TPS6586X_GPIO(TPS6586X_NR_GPIOS - 1)
55
56/* TCA6416 gpios */
57#define TCA6416_GPIO_BASE (TPS6586X_GPIO_END + 1)
58#define TCA6416_GPIO(_x_) (TCA6416_GPIO_BASE + (_x_))
59#define TCA6416_NR_GPIOS 16
60#define CAM1_PWR_DN_GPIO TCA6416_GPIO(0) /* gpio0 */
61#define CAM1_RST_L_GPIO TCA6416_GPIO(1) /* gpio1 */
62#define CAM1_AF_PWR_DN_L_GPIO TCA6416_GPIO(2) /* gpio2 */
63#define CAM1_LDO_SHUTDN_L_GPIO TCA6416_GPIO(3) /* gpio3 */
64#define CAM2_PWR_DN_GPIO TCA6416_GPIO(4) /* gpio4 */
65#define CAM2_RST_L_GPIO TCA6416_GPIO(5) /* gpio5 */
66#define CAM2_AF_PWR_DN_L_GPIO TCA6416_GPIO(6) /* gpio6 */
67#define CAM2_LDO_SHUTDN_L_GPIO TCA6416_GPIO(7) /* gpio7 */
68#define CAM3_PWR_DN_GPIO TCA6416_GPIO(8) /* gpio8 */
69#define CAM3_RST_L_GPIO TCA6416_GPIO(9) /* gpio9 */
70#define CAM3_AF_PWR_DN_L_GPIO TCA6416_GPIO(10) /* gpio10 */
71#define CAM3_LDO_SHUTDN_L_GPIO TCA6416_GPIO(11) /* gpio11 */
72#define CAM_LED_GPIO TCA6416_GPIO(12) /* gpio12 */
73#define CAM_I2C_MUX_RST_GPIO TCA6416_GPIO(15) /* gpio15 */
74#define TCA6416_GPIO_END TCA6416_GPIO(TCA6416_NR_GPIOS - 1)
75
76/* WM8903 GPIOs */
77#define WM8903_GPIO_BASE (TCA6416_GPIO_END + 1)
78#define WM8903_GPIO(_x_) (WM8903_GPIO_BASE + (_x_))
79#define WM8903_NR_GPIOS 4
80#define WM8903_GPIO_END WM8903_GPIO(WM8903_NR_GPIOS - 1)
81
82/* Audio-related GPIOs */
83#define TEGRA_GPIO_CDC_IRQ TEGRA_GPIO_PX3
84#define TEGRA_GPIO_SPKR_EN WM8903_GPIO(2)
85#define TEGRA_GPIO_HP_DET TEGRA_GPIO_PW2
86#define TEGRA_GPIO_HP_DET TEGRA_GPIO_PW2
87#define TEGRA_GPIO_INT_MIC_EN TEGRA_GPIO_PX0
88#define TEGRA_GPIO_EXT_MIC_EN TEGRA_GPIO_PX1
89
90/* AC detect GPIO */
91#define AC_PRESENT_GPIO TEGRA_GPIO_PV3
92
93/* Interrupt numbers from external peripherals */
94#define TPS6586X_INT_BASE TEGRA_NR_IRQS
95#define TPS6586X_INT_END (TPS6586X_INT_BASE + 32)
96
97/* Invensense MPU Definitions */
98#define MPU_TYPE_MPU3050 1
99#define MPU_TYPE_MPU6050 2
100#define MPU_GYRO_TYPE MPU_TYPE_MPU3050
101#define MPU_GYRO_IRQ_GPIO TEGRA_GPIO_PZ4
102#define MPU_GYRO_ADDR 0x68
103#define MPU_GYRO_BUS_NUM 0
104#define MPU_GYRO_ORIENTATION { 0, -1, 0, -1, 0, 0, 0, 0, -1 }
105#define MPU_ACCEL_NAME "kxtf9"
106#define MPU_ACCEL_IRQ_GPIO 0 /* Disable ACCELIRQ: TEGRA_GPIO_PN4 */
107#define MPU_ACCEL_ADDR 0x0F
108#define MPU_ACCEL_BUS_NUM 0
109#define MPU_ACCEL_ORIENTATION { 0, -1, 0, -1, 0, 0, 0, 0, -1 }
110#define MPU_COMPASS_NAME "ak8975"
111#define MPU_COMPASS_IRQ_GPIO TEGRA_GPIO_PN5
112#define MPU_COMPASS_ADDR 0x0C
113#define MPU_COMPASS_BUS_NUM 4
114#define MPU_COMPASS_ORIENTATION { 1, 0, 0, 0, 1, 0, 0, 0, 1 }
115
116#endif