From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michal Simek Date: Mon, 4 Jan 2021 10:36:18 +0100 Subject: [PATCH 1/2] ARM: zynq: add Digilent Zynq PYNQ Board(s) In-Reply-To: <20201227203408.3882-1-flokli@flokli.de> References: <20201227203408.3882-1-flokli@flokli.de> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 27. 12. 20 21:34, Florian Klink wrote: > This adds the dts and entry in CONFIG_OF_LIST for the Digilent Zynq PYNQ > Board(s). > > They're Zynq 7000 - based boards, the Z1 is from Digilent, the Z2 from > TUL. This is just saying that dt name is wrong. Pynq is not any board name. > > They have a slightly different audio system, and a different pin header, > but these aren't really accessible from the PS, only from the PL, so the > DTB is the same. I am fine with this. > > Co-authored-by: Thomas Heijligen This is not standard tag - please remove it. I see SoB below. > Signed-off-by: Florian Klink > Signed-off-by: Thomas Heijligen > --- > arch/arm/dts/Makefile | 1 + > arch/arm/dts/zynq-pynq.dts | 68 ++++++++++++++++++++++++++++++ > configs/xilinx_zynq_virt_defconfig | 2 +- > 3 files changed, 70 insertions(+), 1 deletion(-) > create mode 100644 arch/arm/dts/zynq-pynq.dts > > diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > index fd47e408f8..0631404dbd 100644 > --- a/arch/arm/dts/Makefile > +++ b/arch/arm/dts/Makefile > @@ -267,6 +267,7 @@ dtb-$(CONFIG_ARCH_ZYNQ) += \ > zynq-microzed.dtb \ > zynq-minized.dtb \ > zynq-picozed.dtb \ > + zynq-pynq.dtb \ > zynq-syzygy-hub.dtb \ > zynq-topic-miami.dtb \ > zynq-topic-miamilite.dtb \ > diff --git a/arch/arm/dts/zynq-pynq.dts b/arch/arm/dts/zynq-pynq.dts > new file mode 100644 > index 0000000000..04ac0f7cdc > --- /dev/null > +++ b/arch/arm/dts/zynq-pynq.dts > @@ -0,0 +1,68 @@ > +// SPDX-License-Identifier: GPL-2.0+ Just GPL-2.0 > +/dts-v1/; > +#include "zynq-7000.dtsi" > +#include > + > +/ { > + model = "Digilent/TUL Zynq PYNQ"; > + compatible = "digilent,zynq-pynq", "digilent,zynq-pynq-z1", "tul,zynq-pynq", "tul,zynq-pynq-z2", "xlnx,zynq-7000"; 1. tul is not recorded in Linux Documentation/devicetree/bindings/vendor-prefixes.yaml That's why please send a patch against Linux first to get it recorded. 2. Order is wrong. You all the time need to specify the most accurate description. For example: "digilent,zynq-pynq-z1", "digilent,zynq-pynq", "xlnx,zynq-7000"; > + > + aliases { > + ethernet0 = &gem0; > + serial0 = &uart0; > + }; > + > + memory at 0 { > + device_type = "memory"; > + reg = <0x0 0x20000000>; > + }; > + > + chosen { > + bootargs = ""; > + stdout-path = "serial0:115200n8"; > + }; > + > + gpio-leds { > + compatible = "gpio-leds"; > + > + ld4 { kernel dtb check reports that this should have led- prefix. > + label = "zynq-pynq:green:ld4"; > + gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>; > + }; > + }; > + > + usb_phy0: phy0 { > + #phy-cells = <0>; > + compatible = "usb-nop-xceiv"; > + reset-gpios = <&gpio0 46 GPIO_ACTIVE_LOW>; > + }; > +}; > + > +&clkc { > + ps-clk-frequency = <50000000>; > +}; > + > +&gem0 { > + status = "okay"; > + phy-mode = "rgmii-id"; > + phy-handle = <ðernet_phy>; > + > + ethernet_phy: ethernet-phy at 0 { > + reg = <0>; > + device_type = "ethernet-phy"; > + }; > +}; > + > +&sdhci0 { > + status = "okay"; > +}; > + > +&uart0 { > + status = "okay"; > +}; > + > +&usb0 { > + status = "okay"; > + dr_mode = "host"; > + usb-phy = <&usb_phy0>; > +}; > diff --git a/configs/xilinx_zynq_virt_defconfig b/configs/xilinx_zynq_virt_defconfig > index 552f1b4dfb..c46f531d4d 100644 > --- a/configs/xilinx_zynq_virt_defconfig > +++ b/configs/xilinx_zynq_virt_defconfig > @@ -52,7 +52,7 @@ CONFIG_CMD_MTDPARTS=y > CONFIG_CMD_MTDPARTS_SPREAD=y > CONFIG_CMD_MTDPARTS_SHOW_NET_SIZES=y > CONFIG_CMD_UBI=y > -CONFIG_OF_LIST="zynq-zc702 zynq-zc706 zynq-zc770-xm010 zynq-zc770-xm011 zynq-zc770-xm011-x16 zynq-zc770-xm012 zynq-zc770-xm013 zynq-cc108 zynq-microzed zynq-minized zynq-picozed zynq-zed zynq-zturn zynq-zturn-v5 zynq-zybo zynq-zybo-z7 zynq-dlc20-rev1.0" > +CONFIG_OF_LIST="zynq-zc702 zynq-zc706 zynq-zc770-xm010 zynq-zc770-xm011 zynq-zc770-xm011-x16 zynq-zc770-xm012 zynq-zc770-xm013 zynq-cc108 zynq-microzed zynq-minized zynq-picozed zynq-pynq zynq-zed zynq-zturn zynq-zturn-v5 zynq-zybo zynq-zybo-z7 zynq-dlc20-rev1.0" > CONFIG_ENV_OVERWRITE=y > CONFIG_ENV_IS_IN_SPI_FLASH=y > CONFIG_SYS_RELOC_GD_ENV_ADDR=y > Thanks, Michal -- Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91 w: www.monstr.eu p: +42-0-721842854 Maintainer of Linux kernel - Xilinx Microblaze Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP/Versal SoCs