221 lines
5.5 KiB
Plaintext
221 lines
5.5 KiB
Plaintext
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
/*
|
|
* Device Tree for the TVK1281618 R3 user interface board (UIB)
|
|
* also known as the "CYTTSP board"
|
|
*/
|
|
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
#include <dt-bindings/input/input.h>
|
|
|
|
/ {
|
|
gpio_keys {
|
|
compatible = "gpio-keys";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
vdd-supply = <&ab8500_ldo_aux1_reg>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&hall_tvk_mode>;
|
|
|
|
button@145 {
|
|
/* Hall sensor */
|
|
gpios = <&gpio4 17 GPIO_ACTIVE_HIGH>;
|
|
linux,code = <0>; /* SW_LID */
|
|
label = "HED54XXU11 Hall Effect Sensor";
|
|
};
|
|
};
|
|
|
|
soc {
|
|
i2c@80004000 {
|
|
tc35893@44 {
|
|
compatible = "toshiba,tc35893";
|
|
reg = <0x44>;
|
|
interrupt-parent = <&gpio2>;
|
|
interrupts = <0 IRQ_TYPE_EDGE_RISING>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&tc35893_tvk_mode>;
|
|
|
|
interrupt-controller;
|
|
#interrupt-cells = <1>;
|
|
status = "disabled";
|
|
|
|
tc3589x_gpio {
|
|
compatible = "toshiba,tc3589x-gpio";
|
|
interrupts = <0>;
|
|
|
|
interrupt-controller;
|
|
#interrupt-cells = <2>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
};
|
|
tc3589x_keypad {
|
|
compatible = "toshiba,tc3589x-keypad";
|
|
interrupts = <6>;
|
|
debounce-delay-ms = <4>;
|
|
keypad,num-columns = <8>;
|
|
keypad,num-rows = <8>;
|
|
linux,no-autorepeat;
|
|
wakeup-source;
|
|
linux,keymap = <MATRIX_KEY(3, 1, KEY_END)>,
|
|
<MATRIX_KEY(4, 1, KEY_HOME)>,
|
|
<MATRIX_KEY(6, 4, KEY_VOLUMEDOWN)>,
|
|
<MATRIX_KEY(4, 2, KEY_EMAIL)>,
|
|
<MATRIX_KEY(3, 3, KEY_RIGHT)>,
|
|
<MATRIX_KEY(2, 5, KEY_BACKSPACE)>,
|
|
<MATRIX_KEY(6, 7, KEY_MENU)>,
|
|
<MATRIX_KEY(5, 0, KEY_ENTER)>,
|
|
<MATRIX_KEY(4, 3, KEY_0)>,
|
|
<MATRIX_KEY(3, 4, KEY_DOT)>,
|
|
<MATRIX_KEY(5, 2, KEY_UP)>,
|
|
<MATRIX_KEY(3, 5, KEY_DOWN)>,
|
|
<MATRIX_KEY(4, 5, KEY_SEND)>,
|
|
<MATRIX_KEY(0, 5, KEY_BACK)>,
|
|
<MATRIX_KEY(6, 2, KEY_VOLUMEUP)>,
|
|
<MATRIX_KEY(1, 3, KEY_SPACE)>,
|
|
<MATRIX_KEY(7, 6, KEY_LEFT)>,
|
|
<MATRIX_KEY(5, 5, KEY_SEARCH)>;
|
|
};
|
|
};
|
|
};
|
|
|
|
i2c@80128000 {
|
|
accelerometer@19 {
|
|
compatible = "st,lsm303dlhc-accel";
|
|
st,drdy-int-pin = <1>;
|
|
reg = <0x19>;
|
|
vdd-supply = <&ab8500_ldo_aux1_reg>;
|
|
vddio-supply = <&db8500_vsmps2_reg>;
|
|
interrupt-parent = <&gpio2>;
|
|
interrupts = <18 IRQ_TYPE_EDGE_RISING>,
|
|
<19 IRQ_TYPE_EDGE_RISING>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&accel_tvk_mode>;
|
|
mount-matrix = "0", "-1", "0",
|
|
"-1", "0", "0",
|
|
"0", "0", "-1";
|
|
};
|
|
magnetometer@1e {
|
|
compatible = "st,lsm303dlm-magn";
|
|
reg = <0x1e>;
|
|
vdd-supply = <&ab8500_ldo_aux1_reg>;
|
|
vddio-supply = <&db8500_vsmps2_reg>;
|
|
// This interrupt is not properly working with the driver
|
|
// interrupt-parent = <&gpio1>;
|
|
// interrupts = <0 IRQ_TYPE_EDGE_RISING>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&magn_tvk_mode>;
|
|
};
|
|
gyroscope@68 {
|
|
/* Gyroscope */
|
|
compatible = "st,l3g4200d-gyro";
|
|
reg = <0x68>;
|
|
vdd-supply = <&ab8500_ldo_aux1_reg>;
|
|
vddio-supply = <&db8500_vsmps2_reg>;
|
|
};
|
|
pressure@5c {
|
|
/* Barometer/pressure sensor */
|
|
compatible = "st,lps001wp-press";
|
|
reg = <0x5c>;
|
|
vdd-supply = <&ab8500_ldo_aux1_reg>;
|
|
vddio-supply = <&db8500_vsmps2_reg>;
|
|
};
|
|
};
|
|
|
|
spi@80111000 {
|
|
num-cs = <1>;
|
|
cs-gpios = <&gpio6 24 GPIO_ACTIVE_LOW>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&spi2_default_mode>;
|
|
status = "okay";
|
|
|
|
touchscreen@0 {
|
|
compatible = "cypress,cy8ctma340";
|
|
/*
|
|
* Actually the max frequency is 6 MHz, but over 2 MHz the
|
|
* data rate needs to be restricted to max 2Mbps which the
|
|
* SPI framework cannot handle.
|
|
*/
|
|
spi-max-frequency = <2000000>;
|
|
reg = <0>;
|
|
interrupt-parent = <&gpio2>;
|
|
interrupts = <20 IRQ_TYPE_EDGE_FALLING>;
|
|
vcpin-supply = <&ab8500_ldo_aux1_reg>;
|
|
vdd-supply = <&db8500_vsmps2_reg>;
|
|
reset-gpios = <&gpio4 15 GPIO_ACTIVE_LOW>;
|
|
touchscreen-size-x = <480>;
|
|
touchscreen-size-y = <854>;
|
|
active-interval-ms = <0>;
|
|
touch-timeout-ms = <255>;
|
|
lowpower-interval-ms = <10>;
|
|
bootloader-key = /bits/ 8 <0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&cyttsp_tvk_mode>;
|
|
};
|
|
};
|
|
|
|
mcde@a0350000 {
|
|
status = "okay";
|
|
|
|
dsi@a0351000 {
|
|
panel {
|
|
compatible = "sony,acx424akp";
|
|
reg = <0>;
|
|
vddi-supply = <&ab8500_ldo_aux1_reg>;
|
|
reset-gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
|
|
};
|
|
};
|
|
};
|
|
|
|
pinctrl {
|
|
hall {
|
|
hall_tvk_mode: hall_tvk {
|
|
tvk_cfg {
|
|
pins = "GPIO145_C13";
|
|
ste,config = <&gpio_in_pu>;
|
|
};
|
|
};
|
|
};
|
|
tc35893 {
|
|
/* IRQ from the TC35893 */
|
|
tc35893_tvk_mode: tc35893_tvk {
|
|
tvk_cfg {
|
|
pins = "GPIO64_F3";
|
|
ste,config = <&gpio_in_pu>;
|
|
};
|
|
};
|
|
};
|
|
accelerometer {
|
|
accel_tvk_mode: accel_tvk {
|
|
/* Accelerometer interrupt lines 1 & 2 */
|
|
tvk_cfg {
|
|
pins = "GPIO82_C1", "GPIO83_D3";
|
|
ste,config = <&gpio_in_pd>;
|
|
};
|
|
};
|
|
};
|
|
magnetometer {
|
|
magn_tvk_mode: magn_tvk {
|
|
/* GPIO 32 used for DRDY, pull this down */
|
|
tvk_cfg {
|
|
pins = "GPIO32_V2";
|
|
ste,config = <&gpio_in_pd>;
|
|
};
|
|
};
|
|
};
|
|
cyttsp {
|
|
cyttsp_tvk_mode: cyttsp_tvk {
|
|
/* Touchscreen uses GPIO84 for IRQ */
|
|
tvk_cfg1 {
|
|
pins = "GPIO84_C2";
|
|
ste,config = <&gpio_in_pu>;
|
|
};
|
|
/* GPIO143 is reset */
|
|
tvk_cfg2 {
|
|
pins = "GPIO143_D12";
|
|
ste,config = <&gpio_out_hi>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|