| // SPDX-License-Identifier: GPL-2.0-only |
| /* |
| * Google Slider Board device tree source |
| * |
| * Copyright 2020 Google, LLC. |
| */ |
| |
| /* Touch is connected to spi_11, pins: |
| * CLK=GPP23[0], MOSI=GPP23[1], MISO=GPP23[2], CS=GPP23[3] |
| * TS_RESET_L = AE34 = XAPC_GPIO10 = GPP26[0] = <&gpp26 0 0> |
| * TS_SPI_SEL = AD34 = XAPC_GPIO11 = GPP26[1] = <&gpp26 1 0> |
| * TS_INT_R2_L = D11 = XEINT_20 = GPA9[0] = <&gpa9 0 0> |
| * |
| * DVDD = PP1800_L25M_TSP_DVDD = F10 = VLDO25M |
| * AVDD = PP3300_L26M_TS_AVDD = E13 = VLDO26M |
| */ |
| |
| #include <dt-bindings/pinctrl/samsung.h> |
| #include <dt-bindings/pinctrl/gs101.h> |
| |
| / { |
| fragment@touch_bus_negotiator { |
| target-path = "/"; |
| __overlay__ { |
| tbn: tbn { |
| compatible = "touch_bus_negotiator"; |
| /* Low: AP, High: AOC */ |
| /* Note: The following GPIO flags are not used by the driver. */ |
| tbn,aoc2ap_gpio = <&gpa8 6 GPIO_ACTIVE_LOW>; |
| tbn,ap2aoc_gpio = <&gpp26 1 GPIO_ACTIVE_LOW>; |
| }; |
| }; |
| }; |
| }; |
| |
| &pinctrl_0 { |
| ts_irq: ts-irq { |
| samsung,pins = "gpa9-0"; |
| samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; |
| samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>; |
| }; |
| |
| aoc2ap_irq: aoc2ap-irq { |
| samsung,pins = "gpa8-6"; |
| samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; |
| samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>; |
| }; |
| }; |
| |
| &pinctrl_5 { |
| ts_reset: ts-reset { |
| samsung,pins = "gpp26-0"; |
| samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; |
| samsung,pin-con-pdn = <EXYNOS_PIN_PDN_PREV>; |
| samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; |
| }; |
| |
| ap2aoc: ap2aoc { |
| samsung,pins = "gpp26-1"; |
| samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; |
| samsung,pin-con-pdn = <EXYNOS_PIN_PDN_PREV>; |
| samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; |
| }; |
| |
| ts_spi_bus_active: ts_spi_bus_active { |
| samsung,pins = "gpp23-0", "gpp23-1", "gpp23-2"; |
| samsung,pin-function = <EXYNOS_PIN_FUNC_2>; |
| samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; |
| samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>; |
| }; |
| |
| ts_spi_cs_active: ts_spi_cs_active { |
| samsung,pins = "gpp23-3"; |
| samsung,pin-function = <EXYNOS_PIN_FUNC_2>; |
| samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; |
| samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>; |
| }; |
| |
| ts_spi_bus_sleep: ts_spi_bus_sleep { |
| samsung,pins = "gpp23-0", "gpp23-1"; |
| samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; |
| samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; |
| samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>; |
| samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>; |
| samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; |
| }; |
| |
| ts_spi_miso_sleep: ts_spi_miso_sleep { |
| samsung,pins = "gpp23-2"; |
| samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; |
| samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; |
| samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>; |
| samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>; |
| samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; |
| }; |
| |
| ts_spi_cs_sleep: ts_spi_cs_sleep { |
| samsung,pins = "gpp23-3"; |
| samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; |
| samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; |
| samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>; |
| samsung,pin-con-pdn = <EXYNOS_PIN_PDN_INPUT>; |
| samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_UP>; |
| }; |
| }; |
| |
| &spi_11 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| status = "okay"; |
| pinctrl-0 = <>; |
| cs-gpios = <&gpp23 3 GPIO_ACTIVE_LOW>; |
| num-cs = <1>; |
| |
| spitouch: touchscreen@0 { |
| status = "disabled"; |
| reg = <0>; |
| pinctrl-names = "ts_active", "ts_suspend"; |
| pinctrl-0 = <&ts_irq &ts_reset &ap2aoc &aoc2ap_irq |
| &ts_spi_bus_active &ts_spi_cs_active>; |
| pinctrl-1 = <&ts_spi_bus_sleep &ts_spi_miso_sleep &ts_spi_cs_sleep>; |
| |
| vdd-supply = <&m_ldo25_reg>; |
| avdd-supply = <&m_ldo26_reg>; |
| }; |
| }; |