ARM: dts: Zynq DT changes for v5.12-v2

- Add Ebang board support
 - Add missing zturn boards in dt binding
 - And convert Zynq QSPI binding
 -----BEGIN PGP SIGNATURE-----
 
 iF0EABECAB0WIQQbPNTMvXmYlBPRwx7KSWXLKUoMIQUCYCUVcgAKCRDKSWXLKUoM
 IZVWAKCM5e+z5R7MwgG/MUSnwhZ3GmjKsACbB3bnWgN/h2mywCGBWvyuho+FlYQ=
 =h0Yg
 -----END PGP SIGNATURE-----

Merge tag 'zynq-dt-for-v5.12-v2' of https://github.com/Xilinx/linux-xlnx into arm/dt

ARM: dts: Zynq DT changes for v5.12-v2

- Add Ebang board support
- Add missing zturn boards in dt binding
- And convert Zynq QSPI binding

* tag 'zynq-dt-for-v5.12-v2' of https://github.com/Xilinx/linux-xlnx:
  dt-bindings: spi: zynq: Convert Zynq QSPI binding to yaml
  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

Link: https://lore.kernel.org/r/19e0e0c9-1bed-bba5-6c80-6903937b3d96@xilinx.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2021-02-11 12:46:39 +01:00
commit 7815552728
7 changed files with 198 additions and 25 deletions

View file

@ -22,6 +22,9 @@ properties:
- adapteva,parallella
- digilent,zynq-zybo
- digilent,zynq-zybo-z7
- ebang,ebaz4205
- myir,zynq-zturn-v5
- myir,zynq-zturn
- xlnx,zynq-cc108
- xlnx,zynq-zc702
- xlnx,zynq-zc706

View file

@ -1,25 +0,0 @@
Xilinx Zynq QSPI controller Device Tree Bindings
-------------------------------------------------------------------
Required properties:
- compatible : Should be "xlnx,zynq-qspi-1.0".
- reg : Physical base address and size of QSPI registers map.
- interrupts : Property with a value describing the interrupt
number.
- clock-names : List of input clock names - "ref_clk", "pclk"
(See clock bindings for details).
- clocks : Clock phandles (see clock bindings for details).
Optional properties:
- num-cs : Number of chip selects used.
Example:
qspi: spi@e000d000 {
compatible = "xlnx,zynq-qspi-1.0";
reg = <0xe000d000 0x1000>;
interrupt-parent = <&intc>;
interrupts = <0 19 4>;
clock-names = "ref_clk", "pclk";
clocks = <&clkc 10>, <&clkc 43>;
num-cs = <1>;
};

View file

@ -0,0 +1,59 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/spi/xlnx,zynq-qspi.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Xilinx Zynq QSPI controller
description:
The Xilinx Zynq QSPI controller is used to access multi-bit serial flash
memory devices.
allOf:
- $ref: "spi-controller.yaml#"
maintainers:
- Michal Simek <michal.simek@xilinx.com>
# Everything else is described in the common file
properties:
compatible:
const: xlnx,zynq-qspi-1.0
reg:
maxItems: 1
interrupts:
maxItems: 1
clocks:
items:
- description: reference clock
- description: peripheral clock
clock-names:
items:
- const: ref_clk
- const: pclk
required:
- compatible
- reg
- interrupts
- clocks
- clock-names
unevaluatedProperties: false
examples:
- |
spi@e000d000 {
compatible = "xlnx,zynq-qspi-1.0";
reg = <0xe000d000 0x1000>;
interrupt-parent = <&intc>;
interrupts = <0 19 4>;
clock-names = "ref_clk", "pclk";
clocks = <&clkc 10>, <&clkc 43>;
num-cs = <1>;
};

View file

@ -313,6 +313,8 @@ patternProperties:
description: Dyna-Image
"^ea,.*":
description: Embedded Artists AB
"^ebang,.*":
description: Zhejiang Ebang Communication Co., Ltd
"^ebs-systart,.*":
description: EBS-SYSTART GmbH
"^ebv,.*":

View file

@ -2768,6 +2768,7 @@ W: http://wiki.xilinx.com
T: git https://github.com/Xilinx/linux-xlnx.git
F: Documentation/devicetree/bindings/i2c/cdns,i2c-r1p10.yaml
F: Documentation/devicetree/bindings/i2c/xlnx,xps-iic-2.00.a.yaml
F: Documentation/devicetree/bindings/spi/xlnx,zynq-qspi.yaml
F: arch/arm/mach-zynq/
F: drivers/block/xsysace.c
F: drivers/clocksource/timer-cadence-ttc.c

View file

@ -1322,6 +1322,7 @@ dtb-$(CONFIG_ARCH_VT8500) += \
wm8850-w70v2.dtb
dtb-$(CONFIG_ARCH_ZYNQ) += \
zynq-cc108.dtb \
zynq-ebaz4205.dtb \
zynq-microzed.dtb \
zynq-parallella.dtb \
zynq-zc702.dtb \

View file

@ -0,0 +1,132 @@
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright (C) 2021 Michael Walle <michael@walle.cc>
*/
/dts-v1/;
/include/ "zynq-7000.dtsi"
/ {
model = "Ebang EBAZ4205";
compatible = "ebang,ebaz4205", "xlnx,zynq-7000";
aliases {
ethernet0 = &gem0;
serial0 = &uart1;
};
memory@0 {
device_type = "memory";
reg = <0x0 0x10000000>;
};
chosen {
stdout-path = "serial0:115200n8";
};
};
&clkc {
ps-clk-frequency = <33333333>;
fclk-enable = <8>;
};
&gem0 {
status = "okay";
phy-mode = "mii";
phy-handle = <&phy>;
/* PHY clock */
assigned-clocks = <&clkc 18>;
assigned-clock-rates = <25000000>;
phy: ethernet-phy@0 {
reg = <0>;
};
};
&gpio0 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio0_default>;
};
&pinctrl0 {
pinctrl_gpio0_default: gpio0-default {
mux {
groups = "gpio0_20_grp", "gpio0_32_grp";
function = "gpio0";
};
conf {
groups = "gpio0_20_grp", "gpio0_32_grp";
io-standard = <3>;
slew-rate = <0>;
};
conf-pull-up {
pins = "MIO20", "MIO32";
bias-disable;
};
};
pinctrl_sdhci0_default: sdhci0-default {
mux {
groups = "sdio0_2_grp";
function = "sdio0";
};
conf {
groups = "sdio0_2_grp";
io-standard = <3>;
slew-rate = <0>;
bias-disable;
};
mux-cd {
groups = "gpio0_34_grp";
function = "sdio0_cd";
};
conf-cd {
groups = "gpio0_34_grp";
io-standard = <3>;
slew-rate = <0>;
bias-high-impedance;
bias-pull-up;
};
};
pinctrl_uart1_default: uart1-default {
mux {
groups = "uart1_4_grp";
function = "uart1";
};
conf {
groups = "uart1_4_grp";
io-standard = <3>;
slew-rate = <0>;
};
conf-rx {
pins = "MIO25";
bias-high-impedance;
};
conf-tx {
pins = "MIO24";
bias-disable;
};
};
};
&sdhci0 {
status = "okay";
disable-wp;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sdhci0_default>;
};
&uart1 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1_default>;
};