From patchwork Mon Jan 8 02:25:07 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Lechner X-Patchwork-Id: 10148805 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 16E7660247 for ; Mon, 8 Jan 2018 02:43:01 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 04EA2287FA for ; Mon, 8 Jan 2018 02:43:01 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id EDEE828800; Mon, 8 Jan 2018 02:43:00 +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=-4.2 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_MED autolearn=unavailable version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [65.50.211.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 3C1F5287FA for ; Mon, 8 Jan 2018 02:43:00 +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=bZq8v5i7Z7lLruAGOwjXPJIDNZhbxpHOlP0oRauehZk=; b=hl8hr5KTMlBzAZI8IRNDVrvypG Z+iyZk3R9KVPL0aXI0a61iQxpSxz11bCkIjRXPZc22hCwYTnuVjvZzcHS4kLhtf3xgwyXnIpuOiGr MvgbQ7uTqxVURdWGFUg7Jb6HtPDB7v/oYx9d3PFB+xXHoaO/QSV/1I51lM95YIZNvKHBPfg0vjx0d rRDZAMTT+5MmE2JrG7yg5RN3AsiPMpwNWkCJvy5vt+eDnq4mN6LrllvaPECwEQZGBuM/2tVL8mofM 1QD0S/OechWD3RFo5tQV4UL9fSpP5Qn4bQWVATJyfQR6T4n6PdkrprG34a1YMC9y1fOX4xuCArqqB IakL6y6g==; 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 1eYNOr-0008Bo-G9; Mon, 08 Jan 2018 02:42:57 +0000 Received: from casper.infradead.org ([2001:8b0:10b:1236::1]) by bombadil.infradead.org with esmtps (Exim 4.89 #1 (Red Hat Linux)) id 1eYNOF-0007cq-16 for linux-arm-kernel@bombadil.infradead.org; Mon, 08 Jan 2018 02:42:19 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=References:In-Reply-To:Message-Id:Date: Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=MKizObJJ0NDD82RfU12x3kdILGyOfO2bSuCLqLheBfc=; b=OeX5P9rsaqEtO7Wk+Qxvra1R+ Rt8SXZZHp/iTg990LvVX3Ojzy3w9xizWqjwinki7heMAAhfT1IVj1VMLgJHOAzePi/IiJ131rXDok KE3Cp7R5LCVKrBR39Fluda7h4HqA6Ny5QEh57AQ6Oxq4c5VDMjSpQgL5XQ4vLaR4n/JLBSv+8LRi7 c9yBmkOuXl9ooJaoALjmwHBM4kkh6Cd/SbGI84NxoZd1CtpZ9ytaDdcm/VW6ej5qyD8cLBfH7fNBd /V1nhuM5r7/iSQeF6Rw26Lj2imypyLBm5RatMSzaHE7plzvC/ZhX9ABZD0jv8Cb6zFhCc4PoG7QUc abPVxOzfg==; Received: from vern.gendns.com ([206.190.152.46]) by casper.infradead.org with esmtps (Exim 4.89 #1 (Red Hat Linux)) id 1eYN8M-00079n-H5 for linux-arm-kernel@lists.infradead.org; Mon, 08 Jan 2018 02:25:56 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lechnology.com; s=default; h=References:In-Reply-To:Message-Id:Date:Subject :Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=MKizObJJ0NDD82RfU12x3kdILGyOfO2bSuCLqLheBfc=; b=syU5oezBmmBW/e3OaDZH8YQU1 InBWKwGtjvCX2tTQGaUlAx9QUs57QBYD389PJ52AaQ3x+hP/YLt70NO2VqMg9WHpTPeNSe6AMche3 MxsPlpQ7anRDzy6MSeRSpIwSQWd7CuNz+f1Z5J6lF7b5bGsPACZtKF5WK/0UBe4YLOcSotYasijeT go00XOegMbIjzrWJ2ZCO/wusf6dI6SUGfcwYOzcnzDIEousswrwMswFQfq2hBtYNVWk4QJPrrL0se goqdOmIPXD8u8/dL40eAGWxj+IQMBGJQ6KOtivNk86HtJCmMWDQol0gJ1hhgSLv+tN+xXWJSU8Kcq nfvZCIi4g==; Received: from 108-198-5-147.lightspeed.okcbok.sbcglobal.net ([108.198.5.147]:54056 helo=freyr.lechnology.com) by vern.gendns.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-SHA256:128) (Exim 4.89) (envelope-from ) id 1eYN7q-000AXP-LR; Sun, 07 Jan 2018 21:25:23 -0500 From: David Lechner To: linux-clk@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH v5 44/44] ARM: dts: da850: Add clocks Date: Sun, 7 Jan 2018 20:25:07 -0600 Message-Id: <1515378307-23718-5-git-send-email-david@lechnology.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1515378307-23718-1-git-send-email-david@lechnology.com> References: <1515378307-23718-1-git-send-email-david@lechnology.com> X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - vern.gendns.com X-AntiAbuse: Original Domain - lists.infradead.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - lechnology.com X-Get-Message-Sender-Via: vern.gendns.com: authenticated_id: davidmain+lechnology.com/only user confirmed/virtual account not confirmed X-Authenticated-Sender: vern.gendns.com: davidmain@lechnology.com X-Source: X-Source-Args: X-Source-Dir: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20180108_022554_704462_17F98F24 X-CRM114-Status: UNSURE ( 8.67 ) X-CRM114-Notice: Please train this message. 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 , David Lechner , Kevin Hilman , Stephen Boyd , Michael Turquette , Sekhar Nori , linux-kernel@vger.kernel.org, Rob Herring , Adam Ford 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 This adds clock provider nodes for da850 and wires them up to all of the devices. Signed-off-by: David Lechner --- arch/arm/boot/dts/da850.dtsi | 167 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 167 insertions(+) diff --git a/arch/arm/boot/dts/da850.dtsi b/arch/arm/boot/dts/da850.dtsi index c66cf78..313e98a 100644 --- a/arch/arm/boot/dts/da850.dtsi +++ b/arch/arm/boot/dts/da850.dtsi @@ -21,6 +21,59 @@ #interrupt-cells = <1>; ti,intc-size = <101>; reg = <0xfffee000 0x2000>; + clocks = <&psc0 6>; + }; + }; + + clocks: clocks { + ref_clk: ref_clk { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <24000000>; + clock-output-names = "ref_clk"; + }; + + sata_refclk: sata_refclk { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <100000000>; + clock-output-names = "sata_refclk"; + status = "disabled"; + }; + + usb_refclkin: usb_refclkin { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <48000000>; + clock-output-names = "usb_refclkin"; + status = "disabled"; + }; + + i2c0_clk: i2c0 { + compatible = "fixed-factor-clock"; + #clock-cells = <0>; + clock-div = <1>; + clock-mult = <1>; + clocks = <&pll0_aux_clk>; + clock-output-names = "i2c0"; + }; + + timer0_clk: timer0 { + compatible = "fixed-factor-clock"; + #clock-cells = <0>; + clock-div = <1>; + clock-mult = <1>; + clocks = <&pll0_aux_clk>; + clock-output-names = "timer0"; + }; + + timer1_clk: timer1 { + compatible = "fixed-factor-clock"; + #clock-cells = <0>; + clock-div = <1>; + clock-mult = <1>; + clocks = <&pll0_aux_clk>; + clock-output-names = "timer1"; }; }; dsp: dsp@11800000 { @@ -33,6 +86,7 @@ reg-names = "l2sram", "l1pram", "l1dram", "host1cfg", "chipsig"; interrupt-parent = <&intc>; interrupts = <28>; + clocks = <&psc0 15>; status = "disabled"; }; soc@1c00000 { @@ -43,6 +97,24 @@ ranges = <0x0 0x01c00000 0x400000>; interrupt-parent = <&intc>; + psc0: clock-controller@10000 { + compatible = "ti,da850-psc0"; + reg = <0x10000 0x1000>; + #clock-cells = <1>; + }; + pll0: clock-controller@11000 { + compatible = "ti,da850-pll0"; + reg = <0x11000 0x1000>; + clocks = <&ref_clk>; + + pll0_sysclk: sysclk { + #clock-cells = <1>; + }; + + pll0_aux_clk: auxclk { + #clock-cells = <0>; + }; + }; pmx_core: pinmux@14120 { compatible = "pinctrl-single"; reg = <0x14120 0x50>; @@ -264,8 +336,45 @@ usb_phy: usb-phy { compatible = "ti,da830-usb-phy"; #phy-cells = <1>; + clocks = <&usb0_phy_clk>, <&usb1_phy_clk>; + clock-names = "usb20_phy", "usb11_phy"; status = "disabled"; }; + + usb0_phy_clk: usb0-phy-clock { + compatible = "ti,da830-usb0-phy-clock"; + #clock-cells = <0>; + clocks = <&usb_refclkin>, <&pll0_aux_clk>, + <&psc1 1>; + clock-names = "usb_refclkin", "auxclk", + "usb0_lpsc"; + clock-output-names = "usb0_phy_clk"; + }; + + usb1_phy_clk: usb1-phy-clock { + compatible = "ti,da830-usb1-phy-clock"; + #clock-cells = <0>; + clocks = <&usb0_phy_clk>, <&usb_refclkin>; + clock-names = "usb0_phy", "usb_refclkin"; + clock-output-names = "usb1_phy_clk"; + }; + + ehrpwm_tbclk: tbclk { + compatible = "ti,da830-tbclk"; + #clock-cells = <0>; + clocks = <&psc1 17>; + clock-output-names = "ehrpwm_tbclk"; + }; + + async3_clk: async3 { + compatible = "ti,da850-async3-clock"; + #clock-cells = <0>; + clocks = <&pll0_sysclk 2>, <&pll1_sysclk 2>; + clock-names = "pll0_sysclk2", "pll1_sysclk2"; + assigned-clocks = <&async3_clk>; + assigned-clock-parents = <&pll1_sysclk 2>; + clock-output-names = "async3"; + }; }; edma0: edma@0 { compatible = "ti,edma3-tpcc"; @@ -277,18 +386,21 @@ #dma-cells = <2>; ti,tptcs = <&edma0_tptc0 7>, <&edma0_tptc1 0>; + clocks = <&psc0 0>; }; edma0_tptc0: tptc@8000 { compatible = "ti,edma3-tptc"; reg = <0x8000 0x400>; interrupts = <13>; interrupt-names = "edm3_tcerrint"; + clocks = <&psc0 1>; }; edma0_tptc1: tptc@8400 { compatible = "ti,edma3-tptc"; reg = <0x8400 0x400>; interrupts = <32>; interrupt-names = "edm3_tcerrint"; + clocks = <&psc0 2>; }; edma1: edma@230000 { compatible = "ti,edma3-tpcc"; @@ -300,12 +412,14 @@ #dma-cells = <2>; ti,tptcs = <&edma1_tptc0 7>; + clocks = <&psc1 0>; }; edma1_tptc0: tptc@238000 { compatible = "ti,edma3-tptc"; reg = <0x238000 0x400>; interrupts = <95>; interrupt-names = "edm3_tcerrint"; + clocks = <&psc1 21>; }; serial0: serial@42000 { compatible = "ti,da830-uart", "ns16550a"; @@ -313,6 +427,7 @@ reg-io-width = <4>; reg-shift = <2>; interrupts = <25>; + clocks = <&psc0 9>; status = "disabled"; }; serial1: serial@10c000 { @@ -321,6 +436,7 @@ reg-io-width = <4>; reg-shift = <2>; interrupts = <53>; + clocks = <&psc1 12>; status = "disabled"; }; serial2: serial@10d000 { @@ -329,6 +445,7 @@ reg-io-width = <4>; reg-shift = <2>; interrupts = <61>; + clocks = <&psc1 13>; status = "disabled"; }; rtc0: rtc@23000 { @@ -344,6 +461,7 @@ interrupts = <15>; #address-cells = <1>; #size-cells = <0>; + clocks = <&i2c0_clk>; status = "disabled"; }; i2c1: i2c@228000 { @@ -352,11 +470,18 @@ interrupts = <51>; #address-cells = <1>; #size-cells = <0>; + clocks = <&psc1 11>; status = "disabled"; }; + clocksource: timer@20000 { + compatible = "ti,davinci-timer"; + reg = <0x20000 0x1000>; + clocks = <&timer0_clk>; + }; wdt: wdt@21000 { compatible = "ti,davinci-wdt"; reg = <0x21000 0x1000>; + clocks = <&timer1_clk>; status = "disabled"; }; mmc0: mmc@40000 { @@ -367,12 +492,14 @@ interrupts = <16>; dmas = <&edma0 16 0>, <&edma0 17 0>; dma-names = "rx", "tx"; + clocks = <&psc0 5>; status = "disabled"; }; vpif: video@217000 { compatible = "ti,da850-vpif"; reg = <0x217000 0x1000>; interrupts = <92>; + clocks = <&psc1 9>; status = "disabled"; /* VPIF capture port */ @@ -395,6 +522,7 @@ interrupts = <72>; dmas = <&edma1 28 0>, <&edma1 29 0>; dma-names = "rx", "tx"; + clocks = <&psc1 18>; status = "disabled"; }; ehrpwm0: pwm@300000 { @@ -402,6 +530,8 @@ "ti,am33xx-ehrpwm"; #pwm-cells = <3>; reg = <0x300000 0x2000>; + clocks = <&psc1 17>, <&ehrpwm_tbclk>; + clock-names = "fck", "tbclk"; status = "disabled"; }; ehrpwm1: pwm@302000 { @@ -409,6 +539,8 @@ "ti,am33xx-ehrpwm"; #pwm-cells = <3>; reg = <0x302000 0x2000>; + clocks = <&psc1 17>, <&ehrpwm_tbclk>; + clock-names = "fck", "tbclk"; status = "disabled"; }; ecap0: ecap@306000 { @@ -416,6 +548,8 @@ "ti,am33xx-ecap"; #pwm-cells = <3>; reg = <0x306000 0x80>; + clocks = <&psc1 20>; + clock-names = "fck"; status = "disabled"; }; ecap1: ecap@307000 { @@ -423,6 +557,8 @@ "ti,am33xx-ecap"; #pwm-cells = <3>; reg = <0x307000 0x80>; + clocks = <&psc1 20>; + clock-names = "fck"; status = "disabled"; }; ecap2: ecap@308000 { @@ -430,6 +566,8 @@ "ti,am33xx-ecap"; #pwm-cells = <3>; reg = <0x308000 0x80>; + clocks = <&psc1 20>; + clock-names = "fck"; status = "disabled"; }; spi0: spi@41000 { @@ -442,6 +580,7 @@ interrupts = <20>; dmas = <&edma0 14 0>, <&edma0 15 0>; dma-names = "rx", "tx"; + clocks = <&psc0 4>; status = "disabled"; }; spi1: spi@30e000 { @@ -454,6 +593,7 @@ interrupts = <56>; dmas = <&edma0 18 0>, <&edma0 19 0>; dma-names = "rx", "tx"; + clocks = <&psc1 10>; status = "disabled"; }; usb0: usb@200000 { @@ -465,6 +605,7 @@ dr_mode = "otg"; phys = <&usb_phy 0>; phy-names = "usb-phy"; + clocks = <&psc1 1>; status = "disabled"; #address-cells = <1>; @@ -488,6 +629,7 @@ interrupts = <58>; #dma-cells = <2>; #dma-channels = <4>; + clocks = <&psc1 1>; status = "okay"; }; }; @@ -495,13 +637,25 @@ compatible = "ti,da850-ahci"; reg = <0x218000 0x2000>, <0x22c018 0x4>; interrupts = <67>; + clocks = <&psc1 8>, <&sata_refclk>; + clock-names = "fck", "refclk"; status = "disabled"; }; + pll1: clock-controller@21a000 { + compatible = "ti,da850-pll1"; + reg = <0x21a000 0x1000>; + clocks = <&ref_clk>; + + pll1_sysclk: sysclk { + #clock-cells = <1>; + }; + }; mdio: mdio@224000 { compatible = "ti,davinci_mdio"; #address-cells = <1>; #size-cells = <0>; reg = <0x224000 0x1000>; + clocks = <&psc1 5>; status = "disabled"; }; eth0: ethernet@220000 { @@ -517,6 +671,7 @@ 35 36 >; + clocks = <&psc1 5>; status = "disabled"; }; usb1: usb@225000 { @@ -525,6 +680,7 @@ interrupts = <59>; phys = <&usb_phy 1>; phy-names = "usb-phy"; + clocks = <&psc1 2>; status = "disabled"; }; gpio: gpio@226000 { @@ -542,6 +698,13 @@ status = "disabled"; interrupt-controller; #interrupt-cells = <2>; + clocks = <&psc1 3>; + clock-names = "gpio"; + }; + psc1: clock-controller@227000 { + compatible = "ti,da850-psc1"; + reg = <0x227000 0x1000>; + #clock-cells = <1>; }; pinconf: pin-controller@22c00c { compatible = "ti,da850-pupd"; @@ -560,6 +723,7 @@ dmas = <&edma0 1 1>, <&edma0 0 1>; dma-names = "tx", "rx"; + clocks = <&psc1 7>; }; lcdc: display@213000 { @@ -567,6 +731,8 @@ reg = <0x213000 0x1000>; interrupts = <52>; max-pixelclock = <37500>; + clocks = <&psc1 16>; + clock-names = "fck"; status = "disabled"; }; }; @@ -578,6 +744,7 @@ reg = <0x68000000 0x00008000>; ranges = <0 0 0x60000000 0x08000000 1 0 0x68000000 0x00008000>; + clocks = <&psc0 3>; status = "disabled"; }; memctrl: memory-controller@b0000000 {