From patchwork Fri Mar 2 19:04:30 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michal Simek X-Patchwork-Id: 10255487 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 078296037F for ; Fri, 2 Mar 2018 19:07:10 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E98532823D for ; Fri, 2 Mar 2018 19:07:09 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id DDFE328305; Fri, 2 Mar 2018 19:07:09 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID autolearn=unavailable version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 508CB2823D for ; Fri, 2 Mar 2018 19:07:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:References: In-Reply-To:Message-Id:Date:Subject:To:From:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=/VCWRbLQg5hBidnO510OhumGQqAZ1JWwcFaHpax/2hc=; b=YhR9l6a70GJyR7AyElk/rLUFCW sYyWkXqGtHviLAwv6PdB0DBYd8lRWjeYyxSFAyi99D4raJXZD1zUYo4PSCLntHrEw2Qp1Ee9gJrMm LcOeYTxQ4UqSviBE2elsIrU6L9HvKvnHZEWdcYek+KzWc76GkREn0cOX2wlpFkynkxcINDatC2jqS xUUeCRTNhT7PZvDZrrn0sDqRQIeq7D/OsSRuYJih3j0q1f3Tnk+3WLT2J3OMY7dJz51ixM1xVLuWZ 8+lCjcH+DUSAzu8pnPGYaCQl24PDxpRKMPt1kZJRz7y+oBv4csPW/iAjbFlu20N23EwDbM6u2q54Z OKcXYfGw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.89 #1 (Red Hat Linux)) id 1erq1C-0006lr-Uy; Fri, 02 Mar 2018 19:06:59 +0000 Received: from mail-wm0-x244.google.com ([2a00:1450:400c:c09::244]) by bombadil.infradead.org with esmtps (Exim 4.89 #1 (Red Hat Linux)) id 1erpzF-0004BX-7t for linux-arm-kernel@lists.infradead.org; Fri, 02 Mar 2018 19:05:13 +0000 Received: by mail-wm0-x244.google.com with SMTP id z9so4862857wmb.3 for ; Fri, 02 Mar 2018 11:04:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monstr-eu.20150623.gappssmtp.com; s=20150623; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :in-reply-to:references; bh=ZbY4H7CUWH6Mh2TsXD1qh15ihGBJqRm2FpHkYt8rQN4=; b=jC0v4AHTEQQoI5tS0VasOTj8ewDnZJfVHGpAwW+z+YF6vGqV3TGDraw1HjfGZjxuN/ frCi5qr0GiVunxo75iUsADuv2kKecV8LSVn7AR0kdRwiyID+TC0fr6UsTII+JZF12cbH gI+9TlJDu1LxLUC3nb7g1AgrG657w/O6p8dllXD2XDEnP4jTJhRmJsEEvVCWU/9vfJJn mJvsrf3co6MeX+Gvab1o+ViAXF8IpNHOeSRXxuLv/B/PWy96HXbw8EWSxkqtZaXbFPPT XmlArCKAyMAokmCH9m72/9t4fZw5FsNtbUhmbb9Q6N89lmEhulljtcf0fHvtHHUiT3Ve oHEQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:in-reply-to:references; bh=ZbY4H7CUWH6Mh2TsXD1qh15ihGBJqRm2FpHkYt8rQN4=; b=cumga7P6ehwFtJsv5cnFbasChjaAoR+Hsjd0ZmHcoQY4ZHbB0KrMXIyQ2vk3+1cyR0 xmdRYMHnvLF95jSKsiXPbJImmS4GCXgQx4xu4KdQ2RXj4I80JZFZUSSBKLstP3wms3LR mH3YcPdoBD5GcJ4X939msGk2rRVouwerTSykHhEtRf9AmdZATsnWTjOE8VcZndCxTm8h iwtmjD8SrXRy48CgVMn1adVjOXLDI205Fm6A+Pryxx6cgyBD2Oi7RMQwIlrDzOKieh1b 5wmSZrQQeHsmM12d0GfPJBfNQ+axpSfUAIL7PS3X/LZCDPxla2TK6pPHrtlJzqZMWm6H oNng== X-Gm-Message-State: AElRT7H5bVi2Oy3I1zJsdMX+oEzBAklKM81tF4VtscxdcR+2s/tvN2DI kV0o35VhM1NjDYlGnVUvJ1SQgQ== X-Google-Smtp-Source: AG47ELse/CZf2LTcnD3eacuwuZIdRlNkb/6VRtLPQX6uuLFM1Y4vCC5vRfkBNDbyrIL/XehGGxDIJQ== X-Received: by 10.28.74.199 with SMTP id n68mr2269606wmi.83.1520017485342; Fri, 02 Mar 2018 11:04:45 -0800 (PST) Received: from localhost (nat-35.starnet.cz. [178.255.168.35]) by smtp.gmail.com with ESMTPSA id g78sm3122796wmc.31.2018.03.02.11.04.44 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Fri, 02 Mar 2018 11:04:44 -0800 (PST) From: Michal Simek To: devicetree@vger.kernel.org Subject: [PATCH v3 4/8] arm64: zynqmp: Add support for Xilinx zcu104-revA Date: Fri, 2 Mar 2018 20:04:30 +0100 Message-Id: <409e614b762bd6da24bc26364fcf28c805986eaf.1520017397.git.michal.simek@xilinx.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: References: In-Reply-To: References: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20180302_110457_753781_ADBFEF66 X-CRM114-Status: GOOD ( 21.18 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , monstr@monstr.eu, Arnd Bergmann , Catalin Marinas , Will Deacon , linux-kernel@vger.kernel.org, Masahiro Yamada , Rob Herring , linux-arm-kernel@lists.infradead.org MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP Xilinx zcu104 is another customer board. It is sort of zcu102 clone with some differences. Signed-off-by: Michal Simek Reviewed-by: Rob Herring --- Changes in v3: - Use i2c-mux instead of i2cswitch - was done with zcu106 - Remove gpio and usb aliases Changes in v2: - Remove i2c mw u-boot commands - Record compatible string to xilinx.txt Documentation/devicetree/bindings/arm/xilinx.txt | 3 + arch/arm64/boot/dts/xilinx/Makefile | 1 + arch/arm64/boot/dts/xilinx/zynqmp-zcu104-revA.dts | 195 ++++++++++++++++++++++ 3 files changed, 199 insertions(+) create mode 100644 arch/arm64/boot/dts/xilinx/zynqmp-zcu104-revA.dts diff --git a/Documentation/devicetree/bindings/arm/xilinx.txt b/Documentation/devicetree/bindings/arm/xilinx.txt index 2b922ec3c82a..a9ce08a68711 100644 --- a/Documentation/devicetree/bindings/arm/xilinx.txt +++ b/Documentation/devicetree/bindings/arm/xilinx.txt @@ -26,3 +26,6 @@ Additional compatible strings: "xlnx,zynqmp-zcu102-revA", "xlnx,zynqmp-zcu102" "xlnx,zynqmp-zcu102-revB", "xlnx,zynqmp-zcu102" "xlnx,zynqmp-zcu102-rev1.0", "xlnx,zynqmp-zcu102" + +- Xilinx evaluation board zcu104 + "xlnx,zynqmp-zcu104-revA", "xlnx,zynqmp-zcu104" diff --git a/arch/arm64/boot/dts/xilinx/Makefile b/arch/arm64/boot/dts/xilinx/Makefile index 24e3ce801304..1c039e59c7c3 100644 --- a/arch/arm64/boot/dts/xilinx/Makefile +++ b/arch/arm64/boot/dts/xilinx/Makefile @@ -4,3 +4,4 @@ dtb-$(CONFIG_ARCH_ZYNQMP) += zynqmp-zcu100-revC.dtb dtb-$(CONFIG_ARCH_ZYNQMP) += zynqmp-zcu102-revA.dtb dtb-$(CONFIG_ARCH_ZYNQMP) += zynqmp-zcu102-revB.dtb dtb-$(CONFIG_ARCH_ZYNQMP) += zynqmp-zcu102-rev1.0.dtb +dtb-$(CONFIG_ARCH_ZYNQMP) += zynqmp-zcu104-revA.dtb diff --git a/arch/arm64/boot/dts/xilinx/zynqmp-zcu104-revA.dts b/arch/arm64/boot/dts/xilinx/zynqmp-zcu104-revA.dts new file mode 100644 index 000000000000..d4ad19a38c93 --- /dev/null +++ b/arch/arm64/boot/dts/xilinx/zynqmp-zcu104-revA.dts @@ -0,0 +1,195 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * dts file for Xilinx ZynqMP ZCU104 + * + * (C) Copyright 2017 - 2018, Xilinx, Inc. + * + * Michal Simek + */ + +/dts-v1/; + +#include "zynqmp.dtsi" +#include "zynqmp-clk.dtsi" +#include + +/ { + model = "ZynqMP ZCU104 RevA"; + compatible = "xlnx,zynqmp-zcu104-revA", "xlnx,zynqmp-zcu104", "xlnx,zynqmp"; + + aliases { + ethernet0 = &gem3; + i2c0 = &i2c1; + mmc0 = &sdhci1; + rtc0 = &rtc; + serial0 = &uart0; + serial1 = &uart1; + serial2 = &dcc; + }; + + chosen { + bootargs = "earlycon"; + stdout-path = "serial0:115200n8"; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x0 0x0 0x80000000>; + }; +}; + +&can1 { + status = "okay"; +}; + +&dcc { + status = "okay"; +}; + +&gem3 { + status = "okay"; + phy-handle = <&phy0>; + phy-mode = "rgmii-id"; + phy0: phy@c { + reg = <0xc>; + ti,rx-internal-delay = <0x8>; + ti,tx-internal-delay = <0xa>; + ti,fifo-depth = <0x1>; + }; +}; + +&gpio { + status = "okay"; +}; + +&i2c1 { + status = "okay"; + clock-frequency = <400000>; + + /* Another connection to this bus via PL i2c via PCA9306 - u45 */ + i2c-mux@74 { /* u34 */ + compatible = "nxp,pca9548"; + #address-cells = <1>; + #size-cells = <0>; + reg = <0x74>; + i2c@0 { + #address-cells = <1>; + #size-cells = <0>; + reg = <0>; + /* + * IIC_EEPROM 1kB memory which uses 256B blocks + * where every block has different address. + * 0 - 256B address 0x54 + * 256B - 512B address 0x55 + * 512B - 768B address 0x56 + * 768B - 1024B address 0x57 + */ + eeprom@54 { /* u23 */ + compatible = "atmel,24c08"; + reg = <0x54>; + #address-cells = <1>; + #size-cells = <1>; + }; + }; + + i2c@1 { + #address-cells = <1>; + #size-cells = <0>; + reg = <1>; + clock_8t49n287: clock-generator@6c { /* 8T49N287 - u182 */ + reg = <0x6c>; + }; + }; + + i2c@2 { + #address-cells = <1>; + #size-cells = <0>; + reg = <2>; + irps5401_43: irps54012@43 { /* IRPS5401 - u175 */ + reg = <0x43>; + }; + irps5401_4d: irps54012@4d { /* IRPS5401 - u180 */ + reg = <0x4d>; + }; + }; + + i2c@4 { + #address-cells = <1>; + #size-cells = <0>; + reg = <4>; + tca6416_u97: gpio@21 { + compatible = "ti,tca6416"; + reg = <0x21>; + gpio-controller; + #gpio-cells = <2>; + /* + * IRQ not connected + * Lines: + * 0 - IRPS5401_ALERT_B + * 1 - HDMI_8T49N241_INT_ALM + * 2 - MAX6643_OT_B + * 3 - MAX6643_FANFAIL_B + * 5 - IIC_MUX_RESET_B + * 6 - GEM3_EXP_RESET_B + * 7 - FMC_LPC_PRSNT_M2C_B + * 4, 10 - 17 - not connected + */ + }; + }; + + i2c@5 { + #address-cells = <1>; + #size-cells = <0>; + reg = <5>; + }; + + i2c@7 { + #address-cells = <1>; + #size-cells = <0>; + reg = <7>; + }; + + /* 3, 6 not connected */ + }; +}; + +&rtc { + status = "okay"; +}; + +&sata { + status = "okay"; + /* SATA OOB timing settings */ + ceva,p0-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>; + ceva,p0-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>; + ceva,p0-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>; + ceva,p0-retry-params = /bits/ 16 <0x96A4 0x3FFC>; + ceva,p1-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>; + ceva,p1-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>; + ceva,p1-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>; + ceva,p1-retry-params = /bits/ 16 <0x96A4 0x3FFC>; +}; + +/* SD1 with level shifter */ +&sdhci1 { + status = "okay"; + no-1-8-v; + disable-wp; +}; + +&uart0 { + status = "okay"; +}; + +&uart1 { + status = "okay"; +}; + +/* ULPI SMSC USB3320 */ +&usb0 { + status = "okay"; +}; + +&watchdog0 { + status = "okay"; +};