mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2026-01-27 12:47:24 +01:00
The NetCube Systems Nagami Keypad Carrier uses the Nagami SoM and contains a TCA8418 connected to a 4x4 matrix keypad. The I2C2 interface is connected to said TCA8418 and also a header for an PN532 NFC-Module. It also provides a pin-header for a bi-color status led. Ethernet with PoE support is available on a screwterminal after magnetics. Signed-off-by: Lukas Schmid <lukas.schmid@netcube.li> Link: https://patch.msgid.link/20250831162536.2380589-6-lukas.schmid@netcube.li [wens@csie.org: fix indentation for board level compatible fallback, gpio-line-names and keypad matrix.] Signed-off-by: Chen-Yu Tsai <wens@csie.org>
130 lines
3.2 KiB
Plaintext
130 lines
3.2 KiB
Plaintext
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
/*
|
|
* Copyright (C) 2025 Lukas Schmid <lukas.schmid@netcube.li>
|
|
*/
|
|
|
|
/dts-v1/;
|
|
#include "sun8i-t113s-netcube-nagami.dtsi"
|
|
|
|
#include <dt-bindings/input/input.h>
|
|
#include <dt-bindings/leds/common.h>
|
|
|
|
/ {
|
|
model = "NetCube Systems Nagami Keypad Carrier Board";
|
|
compatible = "netcube,nagami-keypad-carrier", "netcube,nagami",
|
|
"allwinner,sun8i-t113s";
|
|
|
|
leds {
|
|
compatible = "gpio-leds";
|
|
|
|
led_status_red: led-status-red {
|
|
gpios = <&pio 3 16 GPIO_ACTIVE_HIGH>; /* PD16 */
|
|
color = <LED_COLOR_ID_RED>;
|
|
function = LED_FUNCTION_STATUS;
|
|
};
|
|
|
|
led_status_green: led-status-green {
|
|
gpios = <&pio 3 22 GPIO_ACTIVE_HIGH>; /* PD22 */
|
|
color = <LED_COLOR_ID_GREEN>;
|
|
function = LED_FUNCTION_STATUS;
|
|
};
|
|
};
|
|
};
|
|
|
|
&i2c2 {
|
|
status = "okay";
|
|
|
|
tca8418: keypad@34 {
|
|
compatible = "ti,tca8418";
|
|
reg = <0x34>;
|
|
interrupts-extended = <&pio 5 6 IRQ_TYPE_EDGE_FALLING>; /* PF6 */
|
|
linux,keymap = <MATRIX_KEY(0x03, 0x00, KEY_NUMERIC_A)
|
|
MATRIX_KEY(0x03, 0x01, KEY_NUMERIC_1)
|
|
MATRIX_KEY(0x03, 0x02, KEY_NUMERIC_2)
|
|
MATRIX_KEY(0x03, 0x03, KEY_NUMERIC_3)
|
|
MATRIX_KEY(0x02, 0x00, KEY_NUMERIC_B)
|
|
MATRIX_KEY(0x02, 0x01, KEY_NUMERIC_4)
|
|
MATRIX_KEY(0x02, 0x02, KEY_NUMERIC_5)
|
|
MATRIX_KEY(0x02, 0x03, KEY_NUMERIC_6)
|
|
MATRIX_KEY(0x01, 0x00, KEY_NUMERIC_C)
|
|
MATRIX_KEY(0x01, 0x01, KEY_NUMERIC_7)
|
|
MATRIX_KEY(0x01, 0x02, KEY_NUMERIC_8)
|
|
MATRIX_KEY(0x01, 0x03, KEY_NUMERIC_9)
|
|
MATRIX_KEY(0x00, 0x00, KEY_NUMERIC_D)
|
|
MATRIX_KEY(0x00, 0x01, KEY_CLEAR)
|
|
MATRIX_KEY(0x00, 0x02, KEY_NUMERIC_0)
|
|
MATRIX_KEY(0x00, 0x03, KEY_OK)
|
|
>;
|
|
keypad,num-rows = <4>;
|
|
keypad,num-columns = <4>;
|
|
};
|
|
};
|
|
|
|
&pio {
|
|
gpio-line-names = "", "", "", "", // PA
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "", // PB
|
|
"", "", "UART3_TX", "UART3_RX",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "eMMC_CLK", "eMMC_CMD", // PC
|
|
"eMMC_D2", "eMMC_D1", "eMMC_D0", "eMMC_D3",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "", // PD
|
|
"", "", "", "",
|
|
"", "USB_SEC_EN", "", "",
|
|
"", "", "", "",
|
|
"LED_STATUS_RED", "", "", "",
|
|
"I2C2_SCL", "I2C2_SDA", "LED_STATUS_GREEN", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"ETH_CRSDV", "ETH_RXD0", "ETH_RXD1", "ETH_TXCK", // PE
|
|
"ETH_TXD0", "ETH_TXD1", "ETH_TXEN", "",
|
|
"ETH_MDC", "ETH_MDIO", "QWIIC_nINT", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "", // PF
|
|
"", "", "KEY_nINT", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"ESP_CLK", "ESP_CMD", "ESP_D0", "ESP_D1", // PG
|
|
"ESP_D2", "ESP_D3", "UART1_TXD", "UART1_RXD",
|
|
"ESP_nBOOT", "ESP_nRST", "I2C3_SCL", "I2C3_SDA",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "",
|
|
"", "", "", "";
|
|
};
|
|
|
|
&usb_otg {
|
|
dr_mode = "peripheral";
|
|
status = "okay";
|
|
};
|
|
|
|
&usbphy {
|
|
status = "okay";
|
|
};
|