summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXiaohui Tao <xtao@nvidia.com>2014-05-15 11:07:29 -0700
committerMandar Padmawar <mpadmawar@nvidia.com>2014-05-19 07:46:28 -0700
commit91b6227b96aa0a5bea85864c312643cb50fa7784 (patch)
tree30605e27c05e9c822ebcfb5b24fa84b1f9c6abf8
parent0939a054ec5d80dfc9dd1f1f504fb470620bc9ce (diff)
ARM: tegra: Add touch support for P1765
Bug 200004659 Change-Id: I417444bd558a56d424c138ce22e7a5db89b4c95e Signed-off-by: Xiaohui Tao <xtao@nvidia.com> Reviewed-on: http://git-master/r/410389 Reviewed-by: Thomas Cherry <tcherry@nvidia.com>
-rw-r--r--arch/arm/mach-tegra/board-ardbeg.c30
-rw-r--r--arch/arm/mach-tegra/tegra-board-id.h1
2 files changed, 30 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/board-ardbeg.c b/arch/arm/mach-tegra/board-ardbeg.c
index 02e35d8f5e86..08fe8da49ffe 100644
--- a/arch/arm/mach-tegra/board-ardbeg.c
+++ b/arch/arm/mach-tegra/board-ardbeg.c
@@ -1005,6 +1005,14 @@ static struct rm_spi_ts_platform_data rm31080ts_tn8_data = {
.name_of_clock_con = "extern2",
};
+static struct rm_spi_ts_platform_data rm31080ts_tn8_p1765_data = {
+ .gpio_reset = TOUCH_GPIO_RST_RAYDIUM_SPI,
+ .config = 0,
+ .platform_id = RM_PLATFORM_T008_2,
+ .name_of_clock = "clk_out_2",
+ .name_of_clock_con = "extern2",
+};
+
static struct rm_spi_ts_platform_data rm31080ts_norrin_data = {
.gpio_reset = TOUCH_GPIO_RST_RAYDIUM_SPI,
.config = 0,
@@ -1059,6 +1067,18 @@ static struct spi_board_info rm31080a_tn8_spi_board[1] = {
},
};
+static struct spi_board_info rm31080a_tn8_p1765_spi_board[1] = {
+ {
+ .modalias = "rm_ts_spidev",
+ .bus_num = TOUCH_SPI_ID,
+ .chip_select = TOUCH_SPI_CS,
+ .max_speed_hz = 18 * 1000 * 1000,
+ .mode = SPI_MODE_0,
+ .controller_data = &dev_cdata,
+ .platform_data = &rm31080ts_tn8_p1765_data,
+ },
+};
+
static struct spi_board_info rm31080a_norrin_spi_board[1] = {
{
.modalias = "rm_ts_spidev",
@@ -1117,13 +1137,21 @@ static int __init ardbeg_touch_init(void)
&rm31080a_ardbeg_spi_board[0],
ARRAY_SIZE(rm31080a_ardbeg_spi_board));
} else if (board_info.board_id == BOARD_P1761) {
- rm31080a_ardbeg_spi_board[0].irq =
+ rm31080a_tn8_spi_board[0].irq =
gpio_to_irq(TOUCH_GPIO_IRQ_RAYDIUM_SPI);
touch_init_raydium(TOUCH_GPIO_IRQ_RAYDIUM_SPI,
TOUCH_GPIO_RST_RAYDIUM_SPI,
&rm31080ts_tn8_data,
&rm31080a_tn8_spi_board[0],
ARRAY_SIZE(rm31080a_tn8_spi_board));
+ } else if (board_info.board_id == BOARD_P1765) {
+ rm31080a_tn8_p1765_spi_board[0].irq =
+ gpio_to_irq(TOUCH_GPIO_IRQ_RAYDIUM_SPI);
+ touch_init_raydium(TOUCH_GPIO_IRQ_RAYDIUM_SPI,
+ TOUCH_GPIO_RST_RAYDIUM_SPI,
+ &rm31080ts_tn8_p1765_data,
+ &rm31080a_tn8_p1765_spi_board[0],
+ ARRAY_SIZE(rm31080a_tn8_p1765_spi_board));
} else {
rm31080a_ardbeg_spi_board[0].irq =
gpio_to_irq(TOUCH_GPIO_IRQ_RAYDIUM_SPI);
diff --git a/arch/arm/mach-tegra/tegra-board-id.h b/arch/arm/mach-tegra/tegra-board-id.h
index 2d324aa34065..3991944c09cb 100644
--- a/arch/arm/mach-tegra/tegra-board-id.h
+++ b/arch/arm/mach-tegra/tegra-board-id.h
@@ -40,6 +40,7 @@
#define BOARD_P2530 0x09E2
#define BOARD_P1761 0x06E1
#define BOARD_E1762 0x06E2
+#define BOARD_P1765 0x06E5
#define BOARD_E1791 0x06ff
#define BOARD_E1784 0x06F8
#define BOARD_E1922 0x0782