xref: /linux/arch/arm/boot/dts/allwinner/sun8i-t113s-netcube-nagami-keypad-carrier.dts (revision 55a42f78ffd386e01a5404419f8c5ded7db70a21)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (C) 2025 Lukas Schmid <lukas.schmid@netcube.li>
4 */
5
6/dts-v1/;
7#include "sun8i-t113s-netcube-nagami.dtsi"
8
9#include <dt-bindings/input/input.h>
10#include <dt-bindings/leds/common.h>
11
12/ {
13	model = "NetCube Systems Nagami Keypad Carrier Board";
14	compatible = "netcube,nagami-keypad-carrier", "netcube,nagami",
15		     "allwinner,sun8i-t113s";
16
17	leds {
18		compatible = "gpio-leds";
19
20		led_status_red: led-status-red {
21			gpios = <&pio 3 16 GPIO_ACTIVE_HIGH>;  /* PD16 */
22			color = <LED_COLOR_ID_RED>;
23			function = LED_FUNCTION_STATUS;
24		};
25
26		led_status_green: led-status-green {
27			gpios = <&pio 3 22 GPIO_ACTIVE_HIGH>;  /* PD22 */
28			color = <LED_COLOR_ID_GREEN>;
29			function = LED_FUNCTION_STATUS;
30		};
31	};
32};
33
34&i2c2 {
35	status = "okay";
36
37	tca8418: keypad@34 {
38		compatible = "ti,tca8418";
39		reg = <0x34>;
40		interrupts-extended = <&pio 5 6 IRQ_TYPE_EDGE_FALLING>;  /* PF6 */
41		linux,keymap = <MATRIX_KEY(0x03, 0x00, KEY_NUMERIC_A)
42				MATRIX_KEY(0x03, 0x01, KEY_NUMERIC_1)
43				MATRIX_KEY(0x03, 0x02, KEY_NUMERIC_2)
44				MATRIX_KEY(0x03, 0x03, KEY_NUMERIC_3)
45				MATRIX_KEY(0x02, 0x00, KEY_NUMERIC_B)
46				MATRIX_KEY(0x02, 0x01, KEY_NUMERIC_4)
47				MATRIX_KEY(0x02, 0x02, KEY_NUMERIC_5)
48				MATRIX_KEY(0x02, 0x03, KEY_NUMERIC_6)
49				MATRIX_KEY(0x01, 0x00, KEY_NUMERIC_C)
50				MATRIX_KEY(0x01, 0x01, KEY_NUMERIC_7)
51				MATRIX_KEY(0x01, 0x02, KEY_NUMERIC_8)
52				MATRIX_KEY(0x01, 0x03, KEY_NUMERIC_9)
53				MATRIX_KEY(0x00, 0x00, KEY_NUMERIC_D)
54				MATRIX_KEY(0x00, 0x01, KEY_CLEAR)
55				MATRIX_KEY(0x00, 0x02, KEY_NUMERIC_0)
56				MATRIX_KEY(0x00, 0x03, KEY_OK)
57		>;
58		keypad,num-rows = <4>;
59		keypad,num-columns = <4>;
60	};
61};
62
63&pio {
64	gpio-line-names = "", "", "", "", // PA
65			  "", "", "", "",
66			  "", "", "", "",
67			  "", "", "", "",
68			  "", "", "", "",
69			  "", "", "", "",
70			  "", "", "", "",
71			  "", "", "", "",
72			  "", "", "", "", // PB
73			  "", "", "UART3_TX", "UART3_RX",
74			  "", "", "", "",
75			  "", "", "", "",
76			  "", "", "", "",
77			  "", "", "", "",
78			  "", "", "", "",
79			  "", "", "", "",
80			  "", "", "eMMC_CLK", "eMMC_CMD", // PC
81			  "eMMC_D2", "eMMC_D1", "eMMC_D0", "eMMC_D3",
82			  "", "", "", "",
83			  "", "", "", "",
84			  "", "", "", "",
85			  "", "", "", "",
86			  "", "", "", "",
87			  "", "", "", "",
88			  "", "", "", "", // PD
89			  "", "", "", "",
90			  "", "USB_SEC_EN", "", "",
91			  "", "", "", "",
92			  "LED_STATUS_RED", "", "", "",
93			  "I2C2_SCL", "I2C2_SDA", "LED_STATUS_GREEN", "",
94			  "", "", "", "",
95			  "", "", "", "",
96			  "ETH_CRSDV", "ETH_RXD0", "ETH_RXD1", "ETH_TXCK", // PE
97			  "ETH_TXD0", "ETH_TXD1", "ETH_TXEN", "",
98			  "ETH_MDC", "ETH_MDIO", "QWIIC_nINT", "",
99			  "", "", "", "",
100			  "", "", "", "",
101			  "", "", "", "",
102			  "", "", "", "",
103			  "", "", "", "",
104			  "", "", "", "", // PF
105			  "", "", "KEY_nINT", "",
106			  "", "", "", "",
107			  "", "", "", "",
108			  "", "", "", "",
109			  "", "", "", "",
110			  "", "", "", "",
111			  "", "", "", "",
112			  "ESP_CLK", "ESP_CMD", "ESP_D0", "ESP_D1", // PG
113			  "ESP_D2", "ESP_D3", "UART1_TXD", "UART1_RXD",
114			  "ESP_nBOOT", "ESP_nRST", "I2C3_SCL", "I2C3_SDA",
115			  "", "", "", "",
116			  "", "", "", "",
117			  "", "", "", "",
118			  "", "", "", "",
119			  "", "", "", "";
120};
121
122&usb_otg {
123	dr_mode = "peripheral";
124	status = "okay";
125};
126
127&usbphy {
128	status = "okay";
129};
130