linux/arch/arm/boot/dts/sun7i-a20-bananapro.dts
Linus Torvalds 82851fce61 ARM: SoC devicetree updates for v5.12
After the last release contained a surprising amount of new 32-bit
 machines, this time two thirds of the code changes are for 64-bit.
 
 The usual updates to existing files include:
 
  - Device tree compiler warning fixes for Berlin, Renesas, SoCFPGA,
    nomadik, stm32, Allwinner, TI Keystone
 
  - Support for additional devices on existing machines on Renesas, SoCFPGA,
    at91, hisilicon, OMAP, Tegra, TI K3, Allwinner, Broadcom, ux500,
    Mediatek, Marvell Armada, Marvell MMP, ZynqMP, AMLogic, Qualcomm,
    i.MX, Layerscape, Actions, ASpeed, Toshiba
 
  - Cleanups and minor fixes for Renesas, at91, mstar, ux500, Samsung,
    stm32, Tegra, Broadcom, Mediatek, Marvell MMP, AMLogic, Qualcomm,
    i.MX, Rockchip, ASpeed, Zynq
 
 Only three new SoCs this time, but a number of boards across:
 
 Renesas:
  - Two Beacon EmbeddedWorks boards (RZ/G2H and RZ/G2N based)
 
 Intel SoCFPGA:
  - eASIC N5X board (N5X)
 
 ST-Ericsson Ux500:
  - Samsung GT-I9070 (Janice) phone (u8500)
 
 TI OMAP:
  - MYIR Tech Limited development board (AM335X)
 
 Allwinner/sunxi:
  - SL631 Action Camera (V3)
  - PineTab Early Adopter tablet (A64)
 
 Broadcom:
  - BCM4906/BCM4908 networking chip
  - Netgear R8000P router (BCM5906)
 
 AMLogic:
  - Hardkernel ODROID-HC4 development board (SM1)
  - Beelink GS-King-X TV Box (S922X)
 
 Qualcomm:
  - Snapdragon 888 / SM8350 high-end phone SoC
  - Qualcomm SDX55 5G modem as standalone SoC
  - Snapdragon MTP reference board (SM8350)
  - Snapdragon MTP reference board (SDX55)
  - Sony Kitakami phones: Xperia Z3+/Z4/Z5 (APQ8094)
  - Alcatel Idol 3 phone (MSM8916)
  - ASUS Zenfone 2 Laser phone (MSM8916)
  - BQ Aquaris X5 aka Longcheer L8910 phone (MSM8916)
  - OnePlus6 phone (SDM845)
  - OnePlus6T phone (SDM845)
  - Alfa Network AP120C-AC access point (IPQ4018)
 
 NXP i.MX6 (32-bit):
  - Plymovent BAS base system controller for filter systems (imx6dl)
  - Protonic MVT industrial touchscreen terminals (imx6dl)
  - Protonic PRTI6G reference board (imx6ul)
  - Kverneland UT1, UT1Q, UT1P, TGO agricultural terminals (imx6q/dl/qp)
 
 NXP i.MX8 (64-bit)
  - Beacon i.MX8M Nano development kit (imx8mn)
  - Boundary Devices i.MX8MM Nitrogen SBC (imx8mm)
  - Gateworks Venice i.MX 8M Mini Development Kits (imx8mm)
  - phyBOARD-Pollux-i.MX8MP (imx8mp)
  - Purism Librem5 Evergreen phone (imx8mp)
  - Kontron SMARC-sAL28 system-on-module(imx8mp)
 
 Rockchip:
  - NanoPi M4B Single-board computer (RK3399)
  - Radxa Rock Pi E router SBC (RK3328)
 
 ASpeed:
  - Ampere Mt. Jade, a BMC for an x86 server (AST2500)
  - IBM Everest, a BMC for a Power10 server (AST2600)
  - Supermicro x11spi, a BMC for an ARM server (AST2500)
 
 Zynq:
  - Ebang EBAZ4205, FPGA board (Zynq-7000)
  - ZynqMP zcu104 revC reference platform (ZynqMP)
 
 Signed-off-by: Arnd Bergmann <arnd@arndb.de>
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmAppIsACgkQYKtH/8kJ
 Uif/aBAA0lMYr+WRF9STUC/4u57e+QO7m53bahyO8mniX9raORRy4NxFwpDECXgP
 s9D/z7aBEojhK5vucsT6Ne5k13udRoI+hH/67t6NHxDod74pHcGJPVWuqXQRuoR+
 9qtm+UUJb+BMZpb2oFSA1KIfnp8GoDKd1jEhCRu3DP1YMoOD/KgZGjbOcBOkqelo
 EoFHyFhu0qzuDTOO2LgjoW0IYvY48+nzLEPhkBlGPMI7ZMnVPBC4vemowq4prFM/
 VknK+AgX8gR2dv8izygQxSVorhEbFrLqlbRCk1AvXDh2EmOGj+8LRVTyA9acZsHl
 nLqpgPuTc+V8NBPgiHP+DVxRI/DY5mqMMhMj8KIAY8fpH1fY+9CSxeGid8R7LMAQ
 rTplXr3AHRU4a3rvD5H9GF/WmHKUgcaEE5I9nABzGQW1nFxTPxAYi/YhzNL7y+GZ
 /em/G+K2zCLANjd4Ij8eyMu6dJv5NBsL5yWhBpkUg/+PLM+0DzYthD9dZ0u11fYf
 9b3pW/cM7xw6DL1TRsdVGTE+Y8IsW00RYDKC/7nwKrrtHQ201tIevSYeWNKysMes
 2lAuGnUIOquSd/OBjo9a1xGECqYLV95k7fk0juoSsOqzYVnDTt7wDx4W+MI9pwix
 wVrt0lkRnebgRToioeEPQG0WWitQ1ZkMOWZU4jYiZ2cIXyVEMJ8=
 =RIJK
 -----END PGP SIGNATURE-----

Merge tag 'arm-dt-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc

Pull ARM SoC devicetree updates from Arnd Bergmann:
 "After the last release contained a surprising amount of new 32-bit
  machines, this time two thirds of the code changes are for 64-bit.

  The usual updates to existing files include:

   - Device tree compiler warning fixes for Berlin, Renesas, SoCFPGA,
     nomadik, stm32, Allwinner, TI Keystone

   - Support for additional devices on existing machines on Renesas,
     SoCFPGA, at91, hisilicon, OMAP, Tegra, TI K3, Allwinner, Broadcom,
     ux500, Mediatek, Marvell Armada, Marvell MMP, ZynqMP, AMLogic,
     Qualcomm, i.MX, Layerscape, Actions, ASpeed, Toshiba

   - Cleanups and minor fixes for Renesas, at91, mstar, ux500, Samsung,
     stm32, Tegra, Broadcom, Mediatek, Marvell MMP, AMLogic, Qualcomm,
     i.MX, Rockchip, ASpeed, Zynq

  Only three new SoCs this time, but a number of boards across:

  Renesas:
   - Two Beacon EmbeddedWorks boards (RZ/G2H and RZ/G2N based)

  Intel SoCFPGA:
   - eASIC N5X board (N5X)

  ST-Ericsson Ux500:
   - Samsung GT-I9070 (Janice) phone (u8500)

  TI OMAP:
   - MYIR Tech Limited development board (AM335X)

  Allwinner/sunxi:
   - SL631 Action Camera (V3)
   - PineTab Early Adopter tablet (A64)

  Broadcom:
   - BCM4906 networking chip
   - Netgear R8000P router (BCM4906)

  AMLogic:
   - Hardkernel ODROID-HC4 development board (SM1)
   - Beelink GS-King-X TV Box (S922X)

  Qualcomm:
   - Snapdragon 888 / SM8350 high-end phone SoC
   - Qualcomm SDX55 5G modem as standalone SoC
   - Snapdragon MTP reference board (SM8350)
   - Snapdragon MTP reference board (SDX55)
   - Sony Kitakami phones: Xperia Z3+/Z4/Z5 (APQ8094)
   - Alcatel Idol 3 phone (MSM8916)
   - ASUS Zenfone 2 Laser phone (MSM8916)
   - BQ Aquaris X5 aka Longcheer L8910 phone (MSM8916)
   - OnePlus6 phone (SDM845)
   - OnePlus6T phone (SDM845)
   - Alfa Network AP120C-AC access point (IPQ4018)

  NXP i.MX6 (32-bit):
   - Plymovent BAS base system controller for filter systems (imx6dl)
   - Protonic MVT industrial touchscreen terminals (imx6dl)
   - Protonic PRTI6G reference board (imx6ul)
   - Kverneland UT1, UT1Q, UT1P, TGO agricultural terminals (imx6q/dl/qp)

  NXP i.MX8 (64-bit)
   - Beacon i.MX8M Nano development kit (imx8mn)
   - Boundary Devices i.MX8MM Nitrogen SBC (imx8mm)
   - Gateworks Venice i.MX 8M Mini Development Kits (imx8mm)
   - phyBOARD-Pollux-i.MX8MP (imx8mp)
   - Purism Librem5 Evergreen phone (imx8mp)
   - Kontron SMARC-sAL28 system-on-module(imx8mp)

  Rockchip:
   - NanoPi M4B Single-board computer (RK3399)
   - Radxa Rock Pi E router SBC (RK3328)

  ASpeed:
   - Ampere Mt. Jade, a BMC for an x86 server (AST2500)
   - IBM Everest, a BMC for a Power10 server (AST2600)
   - Supermicro x11spi, a BMC for an ARM server (AST2500)

  Zynq:
   - Ebang EBAZ4205, FPGA board (Zynq-7000)
   - ZynqMP zcu104 revC reference platform (ZynqMP)"

* tag 'arm-dt-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (584 commits)
  ARM: dts: aspeed: align GPIO hog names with dtschema
  ARM: dts: aspeed: fix PCA95xx GPIO expander properties on Portwell
  dt-bindings: spi: zynq: Convert Zynq QSPI binding to yaml
  arm: dts: visconti: Add DT support for Toshiba Visconti5 GPIO driver
  ARM: dts: aspeed: ast2600evb: Add enable ehci and uhci
  ARM: dts: aspeed: mowgli: Add i2c rtc device
  ARM: dts: aspeed: amd-ethanolx: Enable secondary LPC snooping address
  dt-bindings: arm: xilinx: Add missing Zturn boards
  ARM: dts: ebaz4205: add pinctrl entries for switches
  ARM: dts: add Ebang EBAZ4205 device tree
  dt-bindings: arm: add Ebang EBAZ4205 board
  dt-bindings: add ebang vendor prefix
  ARM: dts: aspeed: Add Everest BMC machine
  ARM: dts: aspeed: inspur-fp5280g2: Add ipsps1 driver
  ARM: dts: aspeed: inspur-fp5280g2: Add GPIO line names
  ARM: dts: aspeed: Add Supermicro x11spi BMC machine
  ARM: dts: aspeed: g220a: Fix some gpio
  ARM: dts: aspeed: g220a: Enable ipmb
  ARM: dts: aspeed: rainier: Add eMMC clock phase compensation
  ARM: dts: aspeed: Add LCLK to lpc-snoop
  ...
2021-02-20 18:34:53 -08:00

220 lines
4.7 KiB
Plaintext

/*
* Copyright 2015 Hans de Goede <hdegoede@redhat.com>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "sun7i-a20.dtsi"
#include "sunxi-common-regulators.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
/ {
model = "LeMaker Banana Pro";
compatible = "lemaker,bananapro", "allwinner,sun7i-a20";
aliases {
serial0 = &uart0;
serial1 = &uart4;
serial2 = &uart7;
};
chosen {
stdout-path = "serial0:115200n8";
};
leds {
compatible = "gpio-leds";
led-0 {
label = "bananapro:blue:usr";
gpios = <&pio 6 2 GPIO_ACTIVE_HIGH>;
};
led-1 {
label = "bananapro:green:usr";
gpios = <&pio 7 24 GPIO_ACTIVE_HIGH>;
};
};
wifi_pwrseq: wifi-pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <&pio 7 22 GPIO_ACTIVE_LOW>;
};
reg_gmac_3v3: gmac-3v3 {
compatible = "regulator-fixed";
regulator-name = "gmac-3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
startup-delay-us = <100000>;
enable-active-high;
gpio = <&pio 7 23 GPIO_ACTIVE_HIGH>;
};
};
&ahci {
status = "okay";
};
&codec {
status = "okay";
};
&ehci0 {
status = "okay";
};
&ehci1 {
status = "okay";
};
&gmac {
pinctrl-names = "default";
pinctrl-0 = <&gmac_rgmii_pins>;
phy-handle = <&phy1>;
phy-mode = "rgmii-id";
phy-supply = <&reg_gmac_3v3>;
status = "okay";
};
&i2c0 {
status = "okay";
axp209: pmic@34 {
compatible = "x-powers,axp209";
reg = <0x34>;
interrupt-parent = <&nmi_intc>;
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
#interrupt-cells = <1>;
};
};
&i2c2 {
status = "okay";
};
&ir0 {
pinctrl-names = "default";
pinctrl-0 = <&ir0_rx_pin>;
status = "okay";
};
&gmac_mdio {
phy1: ethernet-phy@1 {
reg = <1>;
};
};
&mmc0 {
vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>;
cd-gpios = <&pio 7 10 GPIO_ACTIVE_LOW>; /* PH10 */
status = "okay";
};
&mmc3 {
vmmc-supply = <&reg_vcc3v3>;
mmc-pwrseq = <&wifi_pwrseq>;
bus-width = <4>;
non-removable;
status = "okay";
brcmf: wifi@1 {
reg = <1>;
compatible = "brcm,bcm4329-fmac";
interrupt-parent = <&pio>;
interrupts = <7 15 IRQ_TYPE_LEVEL_LOW>;
interrupt-names = "host-wake";
};
};
&ohci0 {
status = "okay";
};
&ohci1 {
status = "okay";
};
&reg_usb1_vbus {
gpio = <&pio 7 0 GPIO_ACTIVE_HIGH>; /* PH0 */
status = "okay";
};
&reg_usb2_vbus {
gpio = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
status = "okay";
};
&spi0 {
pinctrl-names = "default";
pinctrl-0 = <&spi0_pi_pins>,
<&spi0_cs0_pi_pin>,
<&spi0_cs1_pi_pin>;
status = "okay";
};
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_pb_pins>;
status = "okay";
};
&uart4 {
pinctrl-names = "default";
pinctrl-0 = <&uart4_ph_pins>;
status = "okay";
};
&uart7 {
pinctrl-names = "default";
pinctrl-0 = <&uart7_pi_pins>;
status = "okay";
};
&usbphy {
usb1_vbus-supply = <&reg_usb1_vbus>;
usb2_vbus-supply = <&reg_usb2_vbus>;
status = "okay";
};