Our usual bunch of arm64 DT changes, this time with:
- Some fixes for the DT schemas that were added during this release - Wifi support for the H6 - LRADC suppport for the A64 - Some background work on A64 boards, to enable various devices such as touchscreens, PMIC, audio, wifi, etc. -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQRcEzekXsqa64kGDp7j7w1vZxhRxQUCXQyQcQAKCRDj7w1vZxhR xbybAP9uAJcwix86BmYLIA3I7n1fT1oLooS+WfPL4btmqYBykAD/fK7Nn1g3alWg 7c61AEJKDHZwObU1dNpxjvsjT+/u+Qc= =B/U5 -----END PGP SIGNATURE----- Merge tag 'sunxi-dt64-for-5.3-201906210808' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into arm/dt Our usual bunch of arm64 DT changes, this time with: - Some fixes for the DT schemas that were added during this release - Wifi support for the H6 - LRADC suppport for the A64 - Some background work on A64 boards, to enable various devices such as touchscreens, PMIC, audio, wifi, etc. * tag 'sunxi-dt64-for-5.3-201906210808' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux: arm64: dts: allwinner: h6: Add DMA node arm64: dts: allwinner: a64: Add lradc node dt-bindings: input: sun4i-lradc-keys: Add A64 compatible arm64: dts: allwinner: h6: add r_watchog node arm64: dts: allwinner: h6: add watchdog node dt-bindings: watchdog: add Allwinner H6 watchdog arm64: dts: allwinner: a64: Enable audio on Teres-I arm64: dts: allwinner: a64: bananapi-m64: Enable PMIC USB power supply arm64: dts: allwinner: axp803: add USB power supply node arm64: dts: allwinner: a64: Add pinmux for RGB666 LCD arm64: dts: allwinner: a64: orangepi-win: Add wifi and bluetooth nodes arm64: dts: allwinner: h6: add PIO VCC bank supplies for Pine H64 arm64: dts: allwinner: a64-oceanic-5205-5inmfd: Enable GT911 CTP arm64: dts: allwinner: a64-amarula-relic: Add GT5663 CTP node arm64: dts: allwinner: a64: move I2C pinctrl to dtsi Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
commit
3264c72dcc
|
@ -5,6 +5,7 @@ Required properties:
|
|||
- compatible: should be one of the following string:
|
||||
"allwinner,sun4i-a10-lradc-keys"
|
||||
"allwinner,sun8i-a83t-r-lradc"
|
||||
"allwinner,sun50i-a64-lradc", "allwinner,sun8i-a83t-r-lradc"
|
||||
- reg: mmio address range of the chip
|
||||
- interrupts: interrupt to which the chip is connected
|
||||
- vref-supply: powersupply for the lradc reference voltage
|
||||
|
|
|
@ -6,6 +6,7 @@ Required properties:
|
|||
"allwinner,sun4i-a10-wdt"
|
||||
"allwinner,sun6i-a31-wdt"
|
||||
"allwinner,sun50i-a64-wdt","allwinner,sun6i-a31-wdt"
|
||||
"allwinner,sun50i-h6-wdt","allwinner,sun6i-a31-wdt"
|
||||
"allwinner,suniv-f1c100s-wdt", "allwinner,sun4i-a10-wdt"
|
||||
- reg : Specifies base physical address and size of the registers.
|
||||
|
||||
|
|
|
@ -185,4 +185,10 @@ reg_drivevbus: drivevbus {
|
|||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
usb_power_supply: usb-power-supply {
|
||||
compatible = "x-powers,axp803-usb-power-supply",
|
||||
"x-powers,axp813-usb-power-supply";
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
|
|
@ -85,8 +85,6 @@ &ehci0 {
|
|||
};
|
||||
|
||||
&i2c0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c0_pins>;
|
||||
status = "okay";
|
||||
|
||||
sensor@48 {
|
||||
|
@ -99,6 +97,22 @@ &i2c0_pins {
|
|||
bias-pull-up;
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
status = "okay";
|
||||
|
||||
touchscreen@5d {
|
||||
compatible = "goodix,gt5663";
|
||||
reg = <0x5d>;
|
||||
AVDD28-supply = <®_ldo_io0>; /* VCC-CTP: GPIO0-LDO */
|
||||
interrupt-parent = <&pio>;
|
||||
interrupts = <7 4 IRQ_TYPE_EDGE_FALLING>;
|
||||
irq-gpios = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* CTP-INT: PH4 */
|
||||
reset-gpios = <&pio 7 8 GPIO_ACTIVE_HIGH>; /* CTP-RST: PH8 */
|
||||
touchscreen-inverted-x;
|
||||
touchscreen-inverted-y;
|
||||
};
|
||||
};
|
||||
|
||||
&mmc1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&mmc1_pins>;
|
||||
|
@ -262,6 +276,13 @@ ®_fldo2 {
|
|||
regulator-name = "vdd-cpus";
|
||||
};
|
||||
|
||||
®_ldo_io0 {
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
regulator-name = "vcc-ctp";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
®_rtc_ldo {
|
||||
regulator-name = "vcc-rtc";
|
||||
};
|
||||
|
|
|
@ -145,8 +145,6 @@ hdmi_out_con: endpoint {
|
|||
};
|
||||
|
||||
&i2c1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c1_pins>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -394,8 +392,13 @@ &usb_otg {
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_power_supply {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbphy {
|
||||
usb0_id_det-gpios = <&pio 7 9 GPIO_ACTIVE_HIGH>; /* PH9 */
|
||||
usb0_vbus_power-supply = <&usb_power_supply>;
|
||||
usb0_vbus-supply = <®_drivevbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
|
|
@ -120,12 +120,6 @@ hdmi_out_con: endpoint {
|
|||
};
|
||||
|
||||
/* i2c1 connected with gpio headers like pine64, bananapi */
|
||||
&i2c1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c1_pins>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&i2c1_pins {
|
||||
bias-pull-up;
|
||||
};
|
||||
|
|
|
@ -37,6 +37,22 @@ &emac {
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
status = "okay";
|
||||
|
||||
touchscreen@5d {
|
||||
compatible = "goodix,gt911";
|
||||
reg = <0x5d>;
|
||||
AVDD28-supply = <®_ldo_io0>; /* VDD_CTP: GPIO0-LDO */
|
||||
interrupt-parent = <&pio>;
|
||||
interrupts = <7 4 IRQ_TYPE_EDGE_FALLING>;
|
||||
irq-gpios = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* CTP-INT: PH4 */
|
||||
reset-gpios = <&pio 7 11 GPIO_ACTIVE_HIGH>; /* CTP-RST: PH11 */
|
||||
touchscreen-inverted-x;
|
||||
touchscreen-inverted-y;
|
||||
};
|
||||
};
|
||||
|
||||
&mdio {
|
||||
ext_rgmii_phy: ethernet-phy@1 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
|
@ -52,6 +68,13 @@ ®_dc1sw {
|
|||
regulator-name = "vcc-phy";
|
||||
};
|
||||
|
||||
®_ldo_io0 {
|
||||
regulator-min-microvolt = <2800000>;
|
||||
regulator-max-microvolt = <2800000>;
|
||||
regulator-name = "vdd-ctp";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_pb_pins>;
|
||||
|
|
|
@ -109,6 +109,8 @@ reg_usb1_vbus: usb1-vbus {
|
|||
wifi_pwrseq: wifi_pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&r_pio 0 8 GPIO_ACTIVE_LOW>; /* PL8 */
|
||||
clocks = <&rtc 1>;
|
||||
clock-names = "ext_clock";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -170,6 +172,14 @@ &mmc1 {
|
|||
bus-width = <4>;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
interrupt-parent = <&r_pio>;
|
||||
interrupts = <0 7 IRQ_TYPE_LEVEL_LOW>; /* PL7 */
|
||||
interrupt-names = "host-wake";
|
||||
};
|
||||
};
|
||||
|
||||
&ohci0 {
|
||||
|
@ -342,7 +352,20 @@ &uart0 {
|
|||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
max-speed = <1500000>;
|
||||
clocks = <&rtc 1>;
|
||||
clock-names = "lpo";
|
||||
vbat-supply = <®_dldo2>;
|
||||
vddio-supply = <®_dldo4>;
|
||||
device-wakeup-gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
|
||||
host-wakeup-gpios = <&r_pio 0 5 GPIO_ACTIVE_HIGH>; /* PL5 */
|
||||
shutdown-gpios = <&r_pio 0 4 GPIO_ACTIVE_HIGH>; /* PL4 */
|
||||
};
|
||||
};
|
||||
|
||||
/* On Pi-2 connector, RTS/CTS optional */
|
||||
|
|
|
@ -122,8 +122,6 @@ hdmi_out_con: endpoint {
|
|||
};
|
||||
|
||||
&i2c1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c1_pins>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
|
|
@ -79,6 +79,25 @@ wifi_pwrseq: wifi_pwrseq {
|
|||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
|
||||
};
|
||||
|
||||
speaker_amp: audio-amplifier {
|
||||
compatible = "simple-audio-amplifier";
|
||||
enable-gpios = <&r_pio 0 12 GPIO_ACTIVE_HIGH>; /* PL12 */
|
||||
sound-name-prefix = "Speaker Amp";
|
||||
};
|
||||
};
|
||||
|
||||
&codec {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&codec_analog {
|
||||
cpvdd-supply = <®_eldo1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&dai {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ehci1 {
|
||||
|
@ -92,8 +111,6 @@ &ehci1 {
|
|||
*/
|
||||
&i2c0 {
|
||||
clock-frequency = <100000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c0_pins>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
@ -279,6 +296,29 @@ &simplefb_hdmi {
|
|||
vcc-hdmi-supply = <®_dldo1>;
|
||||
};
|
||||
|
||||
&sound {
|
||||
simple-audio-card,aux-devs = <&codec_analog>, <&speaker_amp>;
|
||||
simple-audio-card,widgets = "Headphone", "Headphone Jack",
|
||||
"Microphone", "Headset Microphone",
|
||||
"Microphone", "Internal Microphone",
|
||||
"Speaker", "Internal Speaker";
|
||||
simple-audio-card,routing =
|
||||
"Left DAC", "AIF1 Slot 0 Left",
|
||||
"Right DAC", "AIF1 Slot 0 Right",
|
||||
"AIF1 Slot 0 Left ADC", "Left ADC",
|
||||
"AIF1 Slot 0 Right ADC", "Right ADC",
|
||||
"Headphone Jack", "HP",
|
||||
"Speaker Amp INL", "LINEOUT",
|
||||
"Speaker Amp INR", "LINEOUT",
|
||||
"Internal Speaker", "Speaker Amp OUTL",
|
||||
"Internal Speaker", "Speaker Amp OUTR",
|
||||
"Internal Microphone", "MBIAS",
|
||||
"MIC1", "Internal Microphone",
|
||||
"Headset Microphone", "HBIAS",
|
||||
"MIC2", "Headset Microphone";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_pb_pins>;
|
||||
|
|
|
@ -611,6 +611,16 @@ i2c1_pins: i2c1-pins {
|
|||
function = "i2c1";
|
||||
};
|
||||
|
||||
/omit-if-no-ref/
|
||||
lcd_rgb666_pins: lcd-rgb666-pins {
|
||||
pins = "PD0", "PD1", "PD2", "PD3", "PD4",
|
||||
"PD5", "PD6", "PD7", "PD8", "PD9",
|
||||
"PD10", "PD11", "PD12", "PD13",
|
||||
"PD14", "PD15", "PD16", "PD17",
|
||||
"PD18", "PD19", "PD20", "PD21";
|
||||
function = "lcd0";
|
||||
};
|
||||
|
||||
mmc0_pins: mmc0-pins {
|
||||
pins = "PF0", "PF1", "PF2", "PF3",
|
||||
"PF4", "PF5";
|
||||
|
@ -730,6 +740,14 @@ spdif: spdif@1c21000 {
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
lradc: lradc@1c21800 {
|
||||
compatible = "allwinner,sun50i-a64-lradc",
|
||||
"allwinner,sun8i-a83t-r-lradc";
|
||||
reg = <0x01c21800 0x400>;
|
||||
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2s0: i2s@1c22000 {
|
||||
#sound-dai-cells = <0>;
|
||||
compatible = "allwinner,sun50i-a64-i2s",
|
||||
|
@ -842,6 +860,8 @@ i2c0: i2c@1c2ac00 {
|
|||
interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&ccu CLK_BUS_I2C0>;
|
||||
resets = <&ccu RST_BUS_I2C0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c0_pins>;
|
||||
status = "disabled";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
@ -853,6 +873,8 @@ i2c1: i2c@1c2b000 {
|
|||
interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&ccu CLK_BUS_I2C1>;
|
||||
resets = <&ccu RST_BUS_I2C1>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c1_pins>;
|
||||
status = "disabled";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
|
|
@ -127,6 +127,12 @@ &ohci3 {
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&pio {
|
||||
vcc-pc-supply = <®_bldo2>;
|
||||
vcc-pd-supply = <®_cldo1>;
|
||||
vcc-pg-supply = <®_aldo1>;
|
||||
};
|
||||
|
||||
&r_i2c {
|
||||
status = "okay";
|
||||
|
||||
|
@ -247,6 +253,10 @@ pcf8563: rtc@51 {
|
|||
};
|
||||
};
|
||||
|
||||
&r_pio {
|
||||
vcc-pm-supply = <®_aldo1>;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_ph_pins>;
|
||||
|
|
|
@ -203,11 +203,32 @@ ccu: clock@3001000 {
|
|||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
dma: dma-controller@3002000 {
|
||||
compatible = "allwinner,sun50i-h6-dma";
|
||||
reg = <0x03002000 0x1000>;
|
||||
interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&ccu CLK_BUS_DMA>, <&ccu CLK_MBUS_DMA>;
|
||||
clock-names = "bus", "mbus";
|
||||
dma-channels = <16>;
|
||||
dma-requests = <46>;
|
||||
resets = <&ccu RST_BUS_DMA>;
|
||||
#dma-cells = <1>;
|
||||
};
|
||||
|
||||
sid: sid@3006000 {
|
||||
compatible = "allwinner,sun50i-h6-sid";
|
||||
reg = <0x03006000 0x400>;
|
||||
};
|
||||
|
||||
watchdog: watchdog@30090a0 {
|
||||
compatible = "allwinner,sun50i-h6-wdt",
|
||||
"allwinner,sun6i-a31-wdt";
|
||||
reg = <0x030090a0 0x20>;
|
||||
interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
|
||||
/* Broken on some H6 boards */
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
pio: pinctrl@300b000 {
|
||||
compatible = "allwinner,sun50i-h6-pinctrl";
|
||||
reg = <0x0300b000 0x400>;
|
||||
|
@ -622,6 +643,13 @@ r_ccu: clock@7010000 {
|
|||
#reset-cells = <1>;
|
||||
};
|
||||
|
||||
r_watchdog: watchdog@7020400 {
|
||||
compatible = "allwinner,sun50i-h6-wdt",
|
||||
"allwinner,sun6i-a31-wdt";
|
||||
reg = <0x07020400 0x20>;
|
||||
interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
||||
|
||||
r_intc: interrupt-controller@7021000 {
|
||||
compatible = "allwinner,sun50i-h6-r-intc",
|
||||
"allwinner,sun6i-a31-r-intc";
|
||||
|
|
Loading…
Reference in New Issue