mirror of
https://github.com/torvalds/linux.git
synced 2026-09-24 06:24:02 +02:00
Allwinner device tree changes for 7.3
Some changes for old chips/devices and some for recent ones. - A10 PMU interrupt number fixed - A100/A133 gained LRADC - enabled overlay support for sun8i-h2-plus pi boards - A523 family gained consumer IR receiver - H728-based X96QPRO+ gained SPDIF audio output - PinePhone's mpu6050 mount orientation fixed - style fixes New board added: - Baijie Helper A133 - NetCube Systems OpenNMC (dobermann) -----BEGIN PGP SIGNATURE----- iQJEBAABCgAuFiEE2nN1m/hhnkhOWjtHOJpUIZwPJDAFAmpwvNYQHHdlbnNAa2Vy bmVsLm9yZwAKCRA4mlQhnA8kMC8qD/0R7T3AqT3n2HChF6NLv5mGqbJSxmTqG7FN FsJ9YuL+6ooeMRnktXypf1tagaVwZjz31U6LsCEPtmyxMZBrNXW0vE5iukvXVxG7 /F1Ar9vezQ1BVtd5qAdLbsWGQRfxsaTtk38sqYP+m1EObFKaxIKrf6VN8pX94uyM pJFXnIY0uEgHedEIzHphJYJP/y+r0WuvcI2ydpRU2u0yyBIj8JxY+pYvCeG8mw9x QXSZkDrz3ImdsHQqyMDN9lUEsgg/41DL9PyEcaiu0hv0Jiik0hQmX+NRZvo16LmO JZJjpPyVVxIxTGB15Bnh1z8dU+fPcmXxTOYJfDmYEI87Y81nUD1tG3UtyrOsirt2 aler/di3aAPUw9IysEyTU56vrAE2e76iCHhgO/Ba27Wi9HYjnRD4t+xSmLO5LXOv HlcRrzg5VPzlrXlabkuZQbJPfeqoZlwi08NCZxAo5mFeuDWuEDC5qnJzHezouicG DpAMchWZaTr+6wdFOUegZbGeNIp9LqK4Im/ySFmP2pGtBQ6avyLii9vlp52cc5Na banc4LgSigNFJVGKZ48DCk6q9ACfG8MTGLkT0wyRr5/1C4Aqrsd4LBptcsESk2Wv FbAneZj/nIs/Zke+Ek3tuVCx76KOt+2jxeTIp8gd7WWJGOWT+q2I5UBv2qTOvhfA 0Z/dB/ll4A== =S3xU -----END PGP SIGNATURE----- Merge tag 'sunxi-dt-for-7.3' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into soc/dt Allwinner device tree changes for 7.3 Some changes for old chips/devices and some for recent ones. - A10 PMU interrupt number fixed - A100/A133 gained LRADC - enabled overlay support for sun8i-h2-plus pi boards - A523 family gained consumer IR receiver - H728-based X96QPRO+ gained SPDIF audio output - PinePhone's mpu6050 mount orientation fixed - style fixes New board added: - Baijie Helper A133 - NetCube Systems OpenNMC (dobermann) * tag 'sunxi-dt-for-7.3' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux: arm64: dts: allwinner: Correct white-space style ARM: dts: allwinner: Correct white-space style arm64: dts: allwinner: a523: Enable SPDIF on X96QPRO+ arm64: dts: allwinner: a523: Add SPDIF output PH pin mux option arm64: dts: allwinner: sun50i-a64-pinephone: Fix mpu6050 mount matrix arm64: dts: allwinner: a523: enable IR on the Avaota A1 arm64: dts: allwinner: a523: enable IR receiver on the X96Q Pro+ arm64: dts: allwinner: a523: add IR receiver nodes media: dt-bindings: allwinner,sun4i-a10-ir: add A523 compatible ARM: dts: allwinner: a10: Fix PMU interrupt ARM: dts: allwinner: enable overlay support for sun8i-h2-plus pi boards ARM: dts: allwinner: add support for NetCube Systems OpenNMC (dobermann) riscv: dts: allwinner: d1s-t113: Add uart4 pinctrl required by NetCube Systems OpenNMC dt-bindings: arm: sunxi: Add NetCube Systems OpenNMC (dobermann) ARM: dts: allwinner: sun8i-h3: Correct indentation arm64: dts: allwinner: A133: add support for Baijie Helper A133 board arm64: dts: allwinner: a100: Add LRADC node dt-bindings: input: sun4i-lradc-keys: Add A100/A133 compatible dt-bindings: arm: sunxi: Add Baijie HelperBoard A133 compatible dt-bindings: vendor-prefixes: Add Shenzhen Baijie Technology Co., Ltd. Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
This commit is contained in:
commit
ff1d40db21
|
|
@ -96,6 +96,12 @@ properties:
|
|||
- const: allwinner,ba10-tvbox
|
||||
- const: allwinner,sun4i-a10
|
||||
|
||||
- description: Baijie A133 HelperBoard
|
||||
items:
|
||||
- const: baijie,helperboard-a133
|
||||
- const: baijie,helperboard-a133-core
|
||||
- const: allwinner,sun50i-a100
|
||||
|
||||
- description: BananaPi
|
||||
items:
|
||||
- const: lemaker,bananapi
|
||||
|
|
@ -598,6 +604,7 @@ properties:
|
|||
- description: NetCube Systems Nagami SoM based boards
|
||||
items:
|
||||
- enum:
|
||||
- netcube,dobermann
|
||||
- netcube,nagami-basic-carrier
|
||||
- netcube,nagami-keypad-carrier
|
||||
- const: netcube,nagami
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ properties:
|
|||
- const: allwinner,sun50i-r329-lradc
|
||||
- items:
|
||||
- enum:
|
||||
- allwinner,sun50i-a100-lradc
|
||||
- allwinner,sun50i-h616-lradc
|
||||
- allwinner,sun20i-d1-lradc
|
||||
- const: allwinner,sun50i-r329-lradc
|
||||
|
|
|
|||
|
|
@ -16,9 +16,10 @@ allOf:
|
|||
properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- const: allwinner,sun4i-a10-ir
|
||||
- const: allwinner,sun5i-a13-ir
|
||||
- const: allwinner,sun6i-a31-ir
|
||||
- enum:
|
||||
- allwinner,sun4i-a10-ir
|
||||
- allwinner,sun5i-a13-ir
|
||||
- allwinner,sun6i-a31-ir
|
||||
- items:
|
||||
- enum:
|
||||
- allwinner,suniv-f1c100s-ir
|
||||
|
|
@ -27,6 +28,7 @@ properties:
|
|||
- allwinner,sun50i-a64-ir
|
||||
- allwinner,sun50i-h6-ir
|
||||
- allwinner,sun50i-h616-ir
|
||||
- allwinner,sun55i-a523-ir
|
||||
- const: allwinner,sun6i-a31-ir
|
||||
|
||||
reg:
|
||||
|
|
|
|||
|
|
@ -231,6 +231,8 @@ patternProperties:
|
|||
description: Azoteq (Pty) Ltd
|
||||
"^azw,.*":
|
||||
description: Shenzhen AZW Technology Co., Ltd.
|
||||
"^baijie,.*":
|
||||
description: Shenzhen Baijie Technology Co., Ltd.
|
||||
"^baikal,.*":
|
||||
description: BAIKAL ELECTRONICS, JSC
|
||||
"^bananapi,.*":
|
||||
|
|
|
|||
|
|
@ -182,6 +182,9 @@ dtb-$(CONFIG_MACH_SUN7I) += \
|
|||
sun7i-a20-wits-pro-a20-dkt.dtb
|
||||
|
||||
# Enables support for device-tree overlays for all pis
|
||||
DTC_FLAGS_sun8i-h2-plus-bananapi-m2-zero := -@
|
||||
DTC_FLAGS_sun8i-h2-plus-libretech-all-h3-cc := -@
|
||||
DTC_FLAGS_sun8i-h2-plus-orangepi-r1 := -@
|
||||
DTC_FLAGS_sun8i-h2-plus-orangepi-zero := -@
|
||||
DTC_FLAGS_sun8i-h3-orangepi-lite := -@
|
||||
DTC_FLAGS_sun8i-h3-bananapi-m2-plus := -@
|
||||
|
|
@ -201,6 +204,7 @@ DTC_FLAGS_sun8i-h3-orangepi-pc := -@
|
|||
DTC_FLAGS_sun8i-h3-bananapi-m2-plus-v1.2 := -@
|
||||
DTC_FLAGS_sun8i-h3-orangepi-pc-plus := -@
|
||||
DTC_FLAGS_sun8i-t113s-netcube-nagami-basic-carrier := -@
|
||||
DTC_FLAGS_sun8i-t113s-netcube-dobermann := -@
|
||||
DTC_FLAGS_sun8i-v3s-netcube-kumquat := -@
|
||||
dtb-$(CONFIG_MACH_SUN8I) += \
|
||||
sun8i-a23-evb.dtb \
|
||||
|
|
@ -261,6 +265,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
|
|||
sun8i-s3-lichee-zero-plus.dtb \
|
||||
sun8i-s3-pinecube.dtb \
|
||||
sun8i-t113s-mangopi-mq-r-t113.dtb \
|
||||
sun8i-t113s-netcube-dobermann.dtb \
|
||||
sun8i-t113s-netcube-nagami-basic-carrier.dtb \
|
||||
sun8i-t113s-netcube-nagami-keypad-carrier.dtb \
|
||||
sun8i-t3-cqa3t-bv3.dtb \
|
||||
|
|
|
|||
|
|
@ -179,7 +179,7 @@ ®_usb2_vbus {
|
|||
};
|
||||
|
||||
|
||||
&uart0 {
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_pb_pins>;
|
||||
status = "okay";
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ &cpu0 {
|
|||
cpu-supply = <®_dcdc2>;
|
||||
};
|
||||
|
||||
&ehci0 {
|
||||
&ehci0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
@ -157,7 +157,7 @@ &mmc0 {
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&ohci0 {
|
||||
&ohci0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -185,7 +185,7 @@ de: display-engine {
|
|||
|
||||
pmu {
|
||||
compatible = "arm,cortex-a8-pmu";
|
||||
interrupts = <3>;
|
||||
interrupts = <66>;
|
||||
};
|
||||
|
||||
reserved-memory {
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ reg_vcc_dram: vcc-dram {
|
|||
enable-active-high;
|
||||
gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>; /* PL9 */
|
||||
vin-supply = <®_vcc5v0>;
|
||||
};
|
||||
};
|
||||
|
||||
reg_vdd_sys: vdd-sys {
|
||||
compatible = "regulator-fixed";
|
||||
|
|
@ -85,7 +85,7 @@ reg_vdd_sys: vdd-sys {
|
|||
enable-active-high;
|
||||
gpio = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
|
||||
vin-supply = <®_vcc5v0>;
|
||||
};
|
||||
};
|
||||
|
||||
wifi_pwrseq: pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
|
|
|
|||
149
arch/arm/boot/dts/allwinner/sun8i-t113s-netcube-dobermann.dts
Normal file
149
arch/arm/boot/dts/allwinner/sun8i-t113s-netcube-dobermann.dts
Normal file
|
|
@ -0,0 +1,149 @@
|
|||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (C) 2026 Lukas Schmid <lukas.schmid@netcube.li>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "sun8i-t113s-netcube-nagami.dtsi"
|
||||
|
||||
#include <dt-bindings/leds/common.h>
|
||||
|
||||
/ {
|
||||
model = "NetCube Systems OpenNMC (dobermann)";
|
||||
compatible = "netcube,dobermann", "netcube,nagami",
|
||||
"allwinner,sun8i-t113s";
|
||||
|
||||
aliases {
|
||||
serial2 = &uart4; // UART on SmartSlot
|
||||
rtc0 = &ds3232;
|
||||
rtc1 = &rtc; // not battery backed
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led_heartbeat_green: led-heartbeat-green {
|
||||
gpios = <&pio 6 14 GPIO_ACTIVE_HIGH>; /* PG14 */
|
||||
linux,default-trigger = "heartbeat";
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
function = LED_FUNCTION_HEARTBEAT;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&ehci0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ehci1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
status = "okay";
|
||||
|
||||
tusb320: typec@60 {
|
||||
compatible = "ti,tusb320";
|
||||
reg = <0x60>;
|
||||
interrupts-extended = <&pio 3 22 IRQ_TYPE_LEVEL_LOW>; /* PD22 */
|
||||
};
|
||||
|
||||
ds3232: rtc@68 {
|
||||
compatible = "dallas,ds3232";
|
||||
reg = <0x68>;
|
||||
};
|
||||
};
|
||||
|
||||
/* microSD Card Slot on the board */
|
||||
&mmc0 {
|
||||
vmmc-supply = <®_vcc3v3>;
|
||||
disable-wp;
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&pio 6 15 GPIO_ACTIVE_LOW>; /* PG15 */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ohci0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ohci1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pio {
|
||||
gpio-line-names = "", "", "", "", // PA
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "SMART_TX", "SMART_RX", // PB
|
||||
"EXT_IO3", "EXT_IO2", "CONSOLE_TX", "CONSOLE_RX",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "eMMC_CLK", "eMMC_CMD", // PC
|
||||
"eMMC_D2", "eMMC_D1", "eMMC_D0", "eMMC_D3",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "", // PD
|
||||
"", "", "", "",
|
||||
"", "USB_SEC_EN", "EXT_SPI_nCS", "EXT_SPI_SCK",
|
||||
"EXT_SPI_MOSI", "EXT_SPI_MISO", "EXT_IO5", "EXT_IO4",
|
||||
"SMART_SEL", "", "", "",
|
||||
"I2C2_SCL", "I2C2_SDA", "TUSB320_nINT", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"ETH_CRSDV", "ETH_RXD0", "ETH_RXD1", "ETH_TXCK", // PE
|
||||
"ETH_TXD0", "ETH_TXD1", "ETH_TXEN", "",
|
||||
"ETH_MDC", "ETH_MDIO", "I2C3_nINT", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"uSD_D1", "uSD_D0", "uSD_CLK", "uSD_CMD", // PF
|
||||
"uSD_D3", "uSD_D2", "TUSB320_ID", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"ESP_CLK", "ESP_CMD", "ESP_D0", "ESP_D1", // PG
|
||||
"ESP_D2", "ESP_D3", "ESP_TXD", "ESP_RXD",
|
||||
"ESP_nBOOT", "ESP_nRST", "I2C3_SCL", "I2C3_SDA",
|
||||
"EXT_IO1", "EXT_IO0", "LED_HEARTBEAT", "SD_DETECT",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "",
|
||||
"", "", "", "";
|
||||
};
|
||||
|
||||
/* SmartSlot serial */
|
||||
&uart4 {
|
||||
pinctrl-0 = <&uart4_pb_pins>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_otg {
|
||||
extcon = <&tusb320 0>;
|
||||
dr_mode = "otg";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbphy {
|
||||
usb0_id_det-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */
|
||||
status = "okay";
|
||||
};
|
||||
|
|
@ -42,7 +42,7 @@ reg_vcc_core: regulator-core {
|
|||
};
|
||||
|
||||
/* USB0 MUX to switch connect to Card-Edge only after BootROM */
|
||||
usb0_sec_mux: mux-controller{
|
||||
usb0_sec_mux: mux-controller {
|
||||
compatible = "gpio-mux";
|
||||
#mux-control-cells = <0>;
|
||||
mux-gpios = <&pio 3 9 GPIO_ACTIVE_HIGH>; /* PD9 */
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-sopine-baseboard.dtb
|
|||
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-teres-i.dtb
|
||||
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h64-remix-mini-pc.dtb
|
||||
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a100-allwinner-perf1.dtb
|
||||
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a133-helperboard.dtb
|
||||
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a133-liontron-h-a133l.dtb
|
||||
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-bananapi-m2-plus.dtb
|
||||
dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-bananapi-m2-plus-v1.2.dtb
|
||||
|
|
|
|||
|
|
@ -466,6 +466,16 @@ ths: thermal-sensor@5070400 {
|
|||
#thermal-sensor-cells = <1>;
|
||||
};
|
||||
|
||||
lradc: lradc@5070800 {
|
||||
compatible = "allwinner,sun50i-a100-lradc",
|
||||
"allwinner,sun50i-r329-lradc";
|
||||
reg = <0x05070800 0x400>;
|
||||
interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&ccu CLK_BUS_LRADC>;
|
||||
resets = <&ccu RST_BUS_LRADC>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
usb_otg: usb@5100000 {
|
||||
compatible = "allwinner,sun50i-a100-musb",
|
||||
"allwinner,sun8i-a33-musb";
|
||||
|
|
|
|||
197
arch/arm64/boot/dts/allwinner/sun50i-a133-helperboard-core.dtsi
Normal file
197
arch/arm64/boot/dts/allwinner/sun50i-a133-helperboard-core.dtsi
Normal file
|
|
@ -0,0 +1,197 @@
|
|||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2025 Arm Ltd.
|
||||
* Copyright (c) 2026 Alexander Sverdlin <alexander.sverdlin@gmail.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "sun50i-a100.dtsi"
|
||||
#include "sun50i-a100-cpu-opp.dtsi"
|
||||
|
||||
/{
|
||||
model = "Baijie A133 HelperBoard Core";
|
||||
compatible = "baijie,helperboard-a133-core",
|
||||
"allwinner,sun50i-a100";
|
||||
|
||||
aliases {
|
||||
serial1 = &uart1; /* BT module */
|
||||
};
|
||||
};
|
||||
|
||||
&cpu0 {
|
||||
cpu-supply = <®_dcdc2>;
|
||||
};
|
||||
|
||||
&lradc {
|
||||
vref-supply = <®_aldo1>;
|
||||
};
|
||||
|
||||
&mmc2 {
|
||||
vmmc-supply = <®_dcdc1>;
|
||||
vqmmc-supply = <®_eldo1>;
|
||||
cap-mmc-highspeed;
|
||||
cap-mmc-hw-reset;
|
||||
max-frequency = <100000000>;
|
||||
non-removable;
|
||||
bus-width = <8>;
|
||||
mmc-ddr-1_8v;
|
||||
mmc-hs200-1_8v;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pio {
|
||||
vcc-pb-supply = <®_dcdc1>;
|
||||
vcc-pc-supply = <®_eldo1>;
|
||||
vcc-pd-supply = <®_dcdc1>;
|
||||
vcc-pe-supply = <®_dldo2>;
|
||||
vcc-pf-supply = <®_dcdc1>;
|
||||
vcc-pg-supply = <®_dldo1>;
|
||||
vcc-ph-supply = <®_dcdc1>;
|
||||
/*
|
||||
* PL0/PL1 are the I2C connection to PMIC, but it would create a
|
||||
* circular dependency:
|
||||
* vcc-pl-supply = <®_aldo3>;
|
||||
*/
|
||||
};
|
||||
|
||||
&r_i2c0 {
|
||||
status = "okay";
|
||||
|
||||
axp803: pmic@34 {
|
||||
compatible = "x-powers,axp803";
|
||||
reg = <0x34>;
|
||||
interrupt-parent = <&r_intc>;
|
||||
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
|
||||
x-powers,drive-vbus-en; /* set N_VBUSEN as output pin */
|
||||
aldoin-supply = <®_vdd5v>;
|
||||
dldoin-supply = <®_vdd5v>;
|
||||
eldoin-supply = <®_vdd5v>;
|
||||
fldoin-supply = <®_dcdc5>;
|
||||
vin1-supply = <®_vdd5v>;
|
||||
vin2-supply = <®_vdd5v>;
|
||||
vin3-supply = <®_vdd5v>;
|
||||
vin4-supply = <®_vdd5v>;
|
||||
vin5-supply = <®_vdd5v>;
|
||||
vin6-supply = <®_vdd5v>;
|
||||
drivevbus-supply = <®_vdd5v>;
|
||||
};
|
||||
};
|
||||
|
||||
#include "axp803.dtsi"
|
||||
|
||||
&ac_power_supply {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
®_aldo1 {
|
||||
/* PLL + LRADC analog reference */
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-name = "vcc-pll";
|
||||
};
|
||||
|
||||
®_aldo2 {
|
||||
/* LPDDR */
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-name = "vdd18-lpddr";
|
||||
};
|
||||
|
||||
®_aldo3 {
|
||||
/*
|
||||
* Port L, but linking it to &pio node would create a circular
|
||||
* dependency because of PL0/PL1 I2C connection to PMIC
|
||||
*/
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-name = "vcc-pl";
|
||||
};
|
||||
|
||||
®_dcdc1 {
|
||||
/* Besides Port D it also powers analog part of USB IP and SoC I/O */
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-name = "vcc-3v3";
|
||||
};
|
||||
|
||||
®_dcdc2 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <810000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-name = "vdd-cpu";
|
||||
};
|
||||
|
||||
/* DCDC3 is polyphased with DCDC2 */
|
||||
|
||||
®_dcdc4 {
|
||||
/* Digital part of USB IP, "System" SoC power rail */
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <950000>;
|
||||
regulator-max-microvolt = <950000>;
|
||||
regulator-name = "vdd-sys";
|
||||
};
|
||||
|
||||
®_dcdc5 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1100000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
regulator-name = "vcc-dram";
|
||||
};
|
||||
|
||||
/* DCDC6 unused */
|
||||
®_dcdc6 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
®_dldo1 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-name = "vcc-pg";
|
||||
};
|
||||
|
||||
®_dldo2 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-name = "vcc-pe";
|
||||
};
|
||||
|
||||
®_dldo3 {
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
regulator-name = "avdd-csi";
|
||||
};
|
||||
|
||||
®_dldo4 {
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
regulator-name = "afvcc-csi";
|
||||
};
|
||||
|
||||
®_eldo1 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-name = "vcc-pc";
|
||||
};
|
||||
|
||||
®_eldo2 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-name = "dvdd-csi";
|
||||
};
|
||||
|
||||
/* ELDO3 unused */
|
||||
|
||||
®_fldo1 {
|
||||
/* CPUS power rail */
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <900000>;
|
||||
regulator-max-microvolt = <900000>;
|
||||
regulator-name = "vdd-cpus";
|
||||
};
|
||||
|
||||
/* reg_drivevbus unused */
|
||||
148
arch/arm64/boot/dts/allwinner/sun50i-a133-helperboard.dts
Normal file
148
arch/arm64/boot/dts/allwinner/sun50i-a133-helperboard.dts
Normal file
|
|
@ -0,0 +1,148 @@
|
|||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2025 Arm Ltd.
|
||||
* Copyright (c) 2026 Alexander Sverdlin <alexander.sverdlin@gmail.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "sun50i-a133-helperboard-core.dtsi"
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/linux-event-codes.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
|
||||
/{
|
||||
model = "Baijie HelperBoard A133";
|
||||
compatible = "baijie,helperboard-a133",
|
||||
"baijie,helperboard-a133-core",
|
||||
"allwinner,sun50i-a100";
|
||||
|
||||
aliases {
|
||||
serial0 = &uart0;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led {
|
||||
function = LED_FUNCTION_INDICATOR;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&pio 7 13 GPIO_ACTIVE_LOW>; /* PH13 */
|
||||
};
|
||||
};
|
||||
|
||||
reg_vdd5v: vdd5v {
|
||||
/* board wide 5V supply from a 12V->5V regulator */
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vdd-5v";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
|
||||
&ehci1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&emac0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&rgmii0_pins>;
|
||||
phy-handle = <&rgmii_phy>;
|
||||
phy-mode = "rgmii-id";
|
||||
allwinner,rx-delay-ps = <200>;
|
||||
allwinner,tx-delay-ps = <200>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&lradc {
|
||||
wakeup-source;
|
||||
status = "okay";
|
||||
|
||||
button-115 {
|
||||
label = "K1";
|
||||
linux,code = <KEY_1>;
|
||||
channel = <0>;
|
||||
voltage = <114607>;
|
||||
};
|
||||
|
||||
button-235 {
|
||||
label = "K2";
|
||||
linux,code = <KEY_2>;
|
||||
channel = <0>;
|
||||
voltage = <234783>;
|
||||
};
|
||||
|
||||
button-360 {
|
||||
label = "K3";
|
||||
linux,code = <KEY_3>;
|
||||
channel = <0>;
|
||||
voltage = <360000>;
|
||||
};
|
||||
|
||||
button-476 {
|
||||
label = "K4";
|
||||
linux,code = <KEY_4>;
|
||||
channel = <0>;
|
||||
voltage = <476471>;
|
||||
};
|
||||
|
||||
button-592 {
|
||||
label = "K5";
|
||||
linux,code = <KEY_5>;
|
||||
channel = <0>;
|
||||
voltage = <591946>;
|
||||
};
|
||||
};
|
||||
|
||||
&mdio0 {
|
||||
reset-gpios = <&pio 7 11 GPIO_ACTIVE_LOW>; /* PH11 */
|
||||
reset-delay-us = <10000>;
|
||||
reset-post-delay-us = <150000>;
|
||||
|
||||
rgmii_phy: ethernet-phy@1 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
&mmc0 {
|
||||
vmmc-supply = <®_dcdc1>;
|
||||
cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
|
||||
bus-width = <4>;
|
||||
disable-wp;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ohci1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&rgmii0_pins {
|
||||
drive-strength = <30>;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_pb_pins>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_otg {
|
||||
/*
|
||||
* Connected to a downstream port of an onboard hub, therefore only
|
||||
* "peripheral" mode will work here.
|
||||
*/
|
||||
dr_mode = "peripheral";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbphy {
|
||||
usb1_vbus-supply = <®_vdd5v>;
|
||||
status = "okay";
|
||||
};
|
||||
|
|
@ -230,8 +230,8 @@ accelerometer@68 {
|
|||
interrupts = <7 5 IRQ_TYPE_EDGE_RISING>; /* PH5 */
|
||||
vdd-supply = <®_dldo1>;
|
||||
vddio-supply = <®_dldo1>;
|
||||
mount-matrix = "0", "1", "0",
|
||||
"-1", "0", "0",
|
||||
mount-matrix = "0", "-1", "0",
|
||||
"1", "0", "0",
|
||||
"0", "0", "1";
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ axp803: pmic@3a3 {
|
|||
};
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ ext_rgmii_phy: ethernet-phy@1 {
|
|||
};
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
|
|
|
|||
|
|
@ -191,7 +191,7 @@ reg_vdd_cpux: regulator@65 {
|
|||
};
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ rtl8189ftv: wifi@1 {
|
|||
};
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
|
||||
flash@0 {
|
||||
|
|
|
|||
|
|
@ -99,7 +99,7 @@ &ohci1 {
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spi0_pins>, <&spi0_cs0_pin>;
|
||||
|
|
|
|||
|
|
@ -149,7 +149,7 @@ reg_dcdc3: dcdc3 {
|
|||
};
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
&spi0 {
|
||||
status = "okay";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spi0_pins>, <&spi0_cs0_pin>;
|
||||
|
|
|
|||
|
|
@ -155,6 +155,13 @@ i2s2_pi_pins: i2s2-pi-pins {
|
|||
bias-disable;
|
||||
};
|
||||
|
||||
/omit-if-no-ref/
|
||||
ir_rx_pin: ir-rx-pi-pin {
|
||||
pins = "PI8";
|
||||
allwinner,pinmux = <3>;
|
||||
function = "cir_rx";
|
||||
};
|
||||
|
||||
/omit-if-no-ref/
|
||||
ledc_ph_pin: ledc-ph-pin {
|
||||
pins = "PH19";
|
||||
|
|
@ -216,6 +223,13 @@ spdif_out_pb_pin: spdif-pb-pin {
|
|||
allwinner,pinmux = <2>;
|
||||
};
|
||||
|
||||
/omit-if-no-ref/
|
||||
spdif_out_ph_pin: spdif-ph-pin {
|
||||
pins = "PH7";
|
||||
function = "spdif";
|
||||
allwinner,pinmux = <4>;
|
||||
};
|
||||
|
||||
/omit-if-no-ref/
|
||||
spdif_out_pi_pin: spdif-pi-pin {
|
||||
pins = "PI10";
|
||||
|
|
@ -327,6 +341,17 @@ ccu: clock-controller@2001000 {
|
|||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
ir: ir@2005000 {
|
||||
compatible = "allwinner,sun55i-a523-ir",
|
||||
"allwinner,sun6i-a31-ir";
|
||||
reg = <0x02005000 0x400>;
|
||||
interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&ccu CLK_BUS_IR_RX>, <&ccu CLK_IR_RX>;
|
||||
clock-names = "apb", "ir";
|
||||
resets = <&ccu RST_BUS_IR_RX>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
ledc: led-controller@2008000 {
|
||||
compatible = "allwinner,sun55i-a523-ledc",
|
||||
"allwinner,sun50i-a100-ledc";
|
||||
|
|
@ -927,6 +952,24 @@ r_i2c_pins: r-i2c-pins {
|
|||
allwinner,pinmux = <2>;
|
||||
function = "r_i2c0";
|
||||
};
|
||||
|
||||
/omit-if-no-ref/
|
||||
r_ir_rx_pin: r-ir-rx-pl-pin {
|
||||
pins = "PL11";
|
||||
allwinner,pinmux = <2>;
|
||||
function = "s_cir_rx";
|
||||
};
|
||||
};
|
||||
|
||||
r_ir: ir@7040000 {
|
||||
compatible = "allwinner,sun55i-a523-ir",
|
||||
"allwinner,sun6i-a31-ir";
|
||||
reg = <0x07040000 0x400>;
|
||||
interrupts = <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&r_ccu CLK_BUS_R_IR_RX>, <&r_ccu CLK_R_IR_RX>;
|
||||
clock-names = "apb", "ir";
|
||||
resets = <&r_ccu RST_BUS_R_IR_RX>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
pck600: power-controller@7060000 {
|
||||
|
|
|
|||
|
|
@ -44,6 +44,24 @@ reg_vcc3v3: vcc3v3 {
|
|||
vin-supply = <®_vcc5v>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
sound-spdif {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "spdif-out";
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&spdif>;
|
||||
};
|
||||
|
||||
simple-audio-card,codec {
|
||||
sound-dai = <&spdif_out>;
|
||||
};
|
||||
};
|
||||
|
||||
spdif_out: spdif-out {
|
||||
compatible = "linux,spdif-dit";
|
||||
#sound-dai-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
&ehci0 {
|
||||
|
|
@ -266,6 +284,12 @@ reg_dcdc3_323: dcdc3 {
|
|||
};
|
||||
};
|
||||
|
||||
&r_ir {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&r_ir_rx_pin>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&r_pio {
|
||||
/*
|
||||
* Specifying the supply would create a circular dependency.
|
||||
|
|
@ -275,6 +299,12 @@ &r_pio {
|
|||
vcc-pm-supply = <®_aldo3>;
|
||||
};
|
||||
|
||||
&spdif {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spdif_out_ph_pin>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_pb_pins>;
|
||||
|
|
|
|||
|
|
@ -100,6 +100,12 @@ &gpu {
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&ir {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ir_rx_pin>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ledc {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ledc_ph_pin>;
|
||||
|
|
@ -403,7 +409,7 @@ &rtc {
|
|||
assigned-clock-rates = <32768>;
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
&spi0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spi0_pj_pins>, <&spi0_cs0_pj_pin>,
|
||||
<&spi0_hold_pj_pin>, <&spi0_wp_pj_pin>;
|
||||
|
|
|
|||
|
|
@ -400,7 +400,7 @@ &rtc {
|
|||
assigned-clock-rates = <32768>;
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
&spi0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&spi0_pc_pins>, <&spi0_cs0_pc_pin>;
|
||||
status = "okay";
|
||||
|
|
|
|||
|
|
@ -191,6 +191,12 @@ uart3_pb_pins: uart3-pb-pins {
|
|||
pins = "PB6", "PB7";
|
||||
function = "uart3";
|
||||
};
|
||||
|
||||
/omit-if-no-ref/
|
||||
uart4_pb_pins: uart4-pb-pins {
|
||||
pins = "PB2", "PB3";
|
||||
function = "uart4";
|
||||
};
|
||||
};
|
||||
|
||||
ccu: clock-controller@2001000 {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user