diff mbox series

[1/2] ARM: zynq: add Digilent Zynq PYNQ Board(s)

Message ID 20201227203408.3882-1-flokli@flokli.de
State Deferred
Delegated to: Tom Rini
Headers show
Series [1/2] ARM: zynq: add Digilent Zynq PYNQ Board(s) | expand

Commit Message

Florian Klink Dec. 27, 2020, 8:34 p.m. UTC
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.

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.

Co-authored-by: Thomas Heijligen <src@posteo.de>
Signed-off-by: Florian Klink <flokli@flokli.de>
Signed-off-by: Thomas Heijligen <src@posteo.de>
---
 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

Comments

Michal Simek Jan. 4, 2021, 9:36 a.m. UTC | #1
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 <src@posteo.de>

This is not standard tag - please remove it. I see SoB below.

> Signed-off-by: Florian Klink <flokli@flokli.de>
> Signed-off-by: Thomas Heijligen <src@posteo.de>
> ---
>  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 <dt-bindings/gpio/gpio.h>
> +
> +/ {
> +	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@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 = <&ethernet_phy>;
> +
> +	ethernet_phy: ethernet-phy@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
diff mbox series

Patch

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+
+/dts-v1/;
+#include "zynq-7000.dtsi"
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+	model = "Digilent/TUL Zynq PYNQ";
+	compatible = "digilent,zynq-pynq", "digilent,zynq-pynq-z1", "tul,zynq-pynq", "tul,zynq-pynq-z2", "xlnx,zynq-7000";
+
+	aliases {
+		ethernet0 = &gem0;
+		serial0 = &uart0;
+	};
+
+	memory@0 {
+		device_type = "memory";
+		reg = <0x0 0x20000000>;
+	};
+
+	chosen {
+		bootargs = "";
+		stdout-path = "serial0:115200n8";
+	};
+
+	gpio-leds {
+		compatible = "gpio-leds";
+
+		ld4 {
+			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 = <&ethernet_phy>;
+
+	ethernet_phy: ethernet-phy@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