Usual round of DT patches for the 5.18 merge window, with:

- DT fixes
 - ethernet0 alias for Nanopi NEO
 - r_uart node for H3/H5
 - eMMC and bluetooth nodes for Nanopi NEO air
 - updated maintainers for Allwinner SoCs
 - new board: A20-Marsboard
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQSPRixG1tysKC2PKM10Ba7+DO8kkwUCYhf4hQAKCRB0Ba7+DO8k
 k/78AQCri8W0S4biFkv9CkzDGF3zioN6f/nlkWg4IWWdCFFY7AD8Dhv6UQm2j4HZ
 sp1ipPUlHVcIknYhPX2jDbmOV/dt8gI=
 =Vuzk
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmIY8aQACgkQmmx57+YA
 GNn8/g//bZBlICtTJPQTwv0gGFqF1whlItzggEsHNQvCluOlEob2DWj2MmtbDjDm
 F2J2fN6F0TXUIlCHTrxpU2r5HJvQnyZV/xKhwWXa4bi/fTbhZyD45duoltqy5U2e
 ss8g7KleA1UZ9X1FIStHYapN2FXkaujCJouVQNksVLXjmxQnmcvVTYT2fRKpAWO1
 9523MR2z5w1/nneaBbw/K1hCkW1YASlfgdpiZ+oDMFWAwZRelk4nFY1Uotd+wYw5
 1DTl2R0m70k3apwnbU/zerSvZ6Lu+WRJE6Su7DDFv5j8mM7KtaQV0yULXY0oASkT
 1xqYUi2EJHYtQQXXat5XEKyvwPsmQVwLfyQEHgsup3mPWq8aZtdRQ1HH+hdVvuZO
 19HLmPvKR6tuey4ujaHpWJmP8kCvHMp35b4wiv56NatYym5tG6vcOTiBGZdthILW
 +xAMcW7Hx96xFdVVBU/OnlyFxL9tquA02XkDPVhY9pHu4KGmhPAxqsv66Exf/mKX
 0mOXXA6GC1gnzn3Fuy75WpUTA5K30M3gRQ28xbltqI4f1sMgxGScgxVAOhSuuBJ7
 Dr8n4r8h4oegQ4eApF30XyxcYffgY8KTDOlWskYGCzdSboiG62a2yI26rhp/I0Gx
 a5Oq7Fm58bh6CnvzSkWBMJj1Ql9hpvmVCVeNUzQcRiS/X+8f8IA=
 =36rC
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-dt-for-5.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into arm/dt

Usual round of DT patches for the 5.18 merge window, with:
- DT fixes
- ethernet0 alias for Nanopi NEO
- r_uart node for H3/H5
- eMMC and bluetooth nodes for Nanopi NEO air
- updated maintainers for Allwinner SoCs
- new board: A20-Marsboard

* tag 'sunxi-dt-for-5.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  MAINTAINERS: Update Allwinner SoCs maintainers
  ARM: dts: sun8i-h3: Drop args in 'thermal-sensors'
  ARM: dts: sun8i: v3s: Move the csi1 block to follow address order
  ARM: dts: sun8i: Add ethernet0 alias in Nanopi NEO's device tree
  dt-bindings: arm: sunxi: add haoyu,a20-marsboard
  ARM: dts: sun7i: Add A20-Marsboard
  ARM: dts: sunxi: h3/h5: add r_uart node
  ARM: dts: nanopi-neo-air: Add eMMC and bluetooth

Link: https://lore.kernel.org/r/YhgMJ0AqaHopzaW3@kista.localdomain
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2022-02-25 16:11:31 +01:00
commit ceaf23fe3f
9 changed files with 252 additions and 14 deletions

View File

@ -444,6 +444,11 @@ properties:
- const: haoyu,a10-marsboard
- const: allwinner,sun4i-a10
- description: HAOYU Electronics Marsboard A20
items:
- const: haoyu,a20-marsboard
- const: allwinner,sun7i-a20
- description: MapleBoard MP130
items:
- const: mapleboard,mp130

View File

@ -1685,9 +1685,9 @@ S: Maintained
F: drivers/clk/sunxi/
ARM/Allwinner sunXi SoC support
M: Maxime Ripard <mripard@kernel.org>
M: Chen-Yu Tsai <wens@csie.org>
R: Jernej Skrabec <jernej.skrabec@gmail.com>
M: Jernej Skrabec <jernej.skrabec@gmail.com>
M: Samuel Holland <samuel@sholland.org>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained
T: git git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git

View File

@ -1231,6 +1231,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
sun7i-a20-bananapro.dtb \
sun7i-a20-cubieboard2.dtb \
sun7i-a20-cubietruck.dtb \
sun7i-a20-haoyu-marsboard.dtb \
sun7i-a20-hummingbird.dtb \
sun7i-a20-itead-ibox.dtb \
sun7i-a20-i12-tvbox.dtb \

View File

@ -0,0 +1,182 @@
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
* Copyright 2021 Conley Lee
* Conley Lee <conleylee@foxmail.com>
*/
/dts-v1/;
#include "sun7i-a20.dtsi"
#include "sunxi-common-regulators.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
/ {
model = "HAOYU Electronics Marsboard A20";
compatible = "haoyu,a20-marsboard", "allwinner,sun7i-a20";
aliases {
serial0 = &uart0;
};
chosen {
stdout-path = "serial0:115200n8";
};
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
};
&ahci {
target-supply = <&reg_ahci_5v>;
status = "okay";
};
&codec {
status = "okay";
};
&cpu0 {
cpu-supply = <&reg_dcdc2>;
};
&de {
status = "okay";
};
&ehci0 {
status = "okay";
};
&ehci1 {
status = "okay";
};
&gmac {
pinctrl-names = "default";
pinctrl-0 = <&gmac_mii_pins>, <&gmac_txerr>;
phy-handle = <&phy0>;
phy-mode = "mii";
status = "okay";
};
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 {
status = "okay";
axp209: pmic@34 {
reg = <0x34>;
interrupt-parent = <&nmi_intc>;
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
};
};
&mmc0 {
vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>;
cd-gpios = <&pio 7 10 GPIO_ACTIVE_LOW>; /* PH10 */
status = "okay";
};
&gmac_mdio {
phy0: ethernet-phy@0 {
reg = <0>;
};
};
&ohci0 {
status = "okay";
};
&ohci1 {
status = "okay";
};
&otg_sram {
status = "okay";
};
&pio {
gmac_txerr: gmac-txerr-pin {
pins = "PA17";
function = "gmac";
};
};
&reg_ahci_5v {
status = "okay";
};
#include "axp209.dtsi"
&ac_power_supply {
status = "okay";
};
&reg_dcdc2 {
regulator-always-on;
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1450000>;
regulator-name = "vdd-cpu";
};
&reg_dcdc3 {
regulator-always-on;
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1400000>;
regulator-name = "vdd-int-dll";
};
&reg_ldo1 {
regulator-name = "vdd-rtc";
};
&reg_ldo2 {
regulator-always-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "avcc";
};
&reg_usb1_vbus {
status = "okay";
};
&reg_usb2_vbus {
status = "okay";
};
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_pb_pins>;
status = "okay";
};
&usb_otg {
dr_mode = "otg";
status = "okay";
};
&usbphy {
usb0_id_det-gpios = <&pio 7 4 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; /* PH4 */
usb1_vbus-supply = <&reg_usb1_vbus>;
usb2_vbus-supply = <&reg_usb2_vbus>;
status = "okay";
};

View File

@ -103,12 +103,40 @@
};
};
&mmc2 {
pinctrl-names = "default";
pinctrl-0 = <&mmc2_8bit_pins>;
vmmc-supply = <&reg_vcc3v3>;
vqmmc-supply = <&reg_vcc3v3>;
bus-width = <8>;
non-removable;
status = "okay";
};
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_pa_pins>;
status = "okay";
};
&uart3 {
pinctrl-names = "default";
pinctrl-0 = <&uart3_pins>, <&uart3_rts_cts_pins>;
uart-has-rtscts;
status = "okay";
bluetooth {
compatible = "brcm,bcm43438-bt";
clocks = <&rtc 1>;
clock-names = "lpo";
vbat-supply = <&reg_vcc3v3>;
vddio-supply = <&reg_vcc3v3>;
device-wakeup-gpios = <&pio 0 8 GPIO_ACTIVE_HIGH>; /* PA8 */
host-wakeup-gpios = <&pio 0 7 GPIO_ACTIVE_HIGH>; /* PA7 */
shutdown-gpios = <&pio 6 13 GPIO_ACTIVE_HIGH>; /* PG13 */
};
};
&usbphy {
/* USB VBUS is always on */
status = "okay";

View File

@ -45,6 +45,10 @@
/ {
model = "FriendlyARM NanoPi NEO";
compatible = "friendlyarm,nanopi-neo", "allwinner,sun8i-h3";
aliases {
ethernet0 = &emac;
};
};
&ehci0 {

View File

@ -245,7 +245,7 @@
cpu_thermal: cpu-thermal {
polling-delay-passive = <0>;
polling-delay = <0>;
thermal-sensors = <&ths 0>;
thermal-sensors = <&ths>;
trips {
cpu_hot_trip: cpu-hot {

View File

@ -593,6 +593,17 @@
#size-cells = <0>;
};
gic: interrupt-controller@1c81000 {
compatible = "arm,gic-400";
reg = <0x01c81000 0x1000>,
<0x01c82000 0x2000>,
<0x01c84000 0x2000>,
<0x01c86000 0x2000>;
interrupt-controller;
#interrupt-cells = <3>;
interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
};
csi1: camera@1cb4000 {
compatible = "allwinner,sun8i-v3s-csi";
reg = <0x01cb4000 0x3000>;
@ -604,16 +615,5 @@
resets = <&ccu RST_BUS_CSI>;
status = "disabled";
};
gic: interrupt-controller@1c81000 {
compatible = "arm,gic-400";
reg = <0x01c81000 0x1000>,
<0x01c82000 0x2000>,
<0x01c84000 0x2000>,
<0x01c86000 0x2000>;
interrupt-controller;
#interrupt-cells = <3>;
interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
};
};
};

View File

@ -913,6 +913,19 @@
#size-cells = <0>;
};
r_uart: serial@1f02800 {
compatible = "snps,dw-apb-uart";
reg = <0x01f02800 0x400>;
interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
reg-shift = <2>;
reg-io-width = <4>;
clocks = <&r_ccu CLK_APB0_UART>;
resets = <&r_ccu RST_APB0_UART>;
pinctrl-names = "default";
pinctrl-0 = <&r_uart_pins>;
status = "disabled";
};
r_pio: pinctrl@1f02c00 {
compatible = "allwinner,sun8i-h3-r-pinctrl";
reg = <0x01f02c00 0x400>;
@ -939,6 +952,11 @@
pins = "PL10";
function = "s_pwm";
};
r_uart_pins: r-uart-pins {
pins = "PL2", "PL3";
function = "s_uart";
};
};
r_pwm: pwm@1f03800 {