/* * Device Tree Source for Keystone 2 clock tree * * Copyright (C) 2013 Texas Instruments, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ clocks { #address-cells = <1>; #size-cells = <1>; ranges; mainmuxclk: mainmuxclk@2310108 { #clock-cells = <0>; compatible = "ti,keystone,pll-mux-clock"; clocks = <&mainpllclk>, <&refclksys>; reg = <0x02310108 4>; bit-shift = <23>; bit-mask = <1>; clock-output-names = "mainmuxclk"; }; chipclk1: chipclk1 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&mainmuxclk>; clock-div = <1>; clock-mult = <1>; clock-output-names = "chipclk1"; }; chipclk1rstiso: chipclk1rstiso { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&mainmuxclk>; clock-div = <1>; clock-mult = <1>; clock-output-names = "chipclk1rstiso"; }; gemtraceclk: gemtraceclk@2310120 { #clock-cells = <0>; compatible = "ti,keystone,pll-divider-clock"; clocks = <&mainmuxclk>; reg = <0x02310120 4>; bit-shift = <0>; bit-mask = <8>; clock-output-names = "gemtraceclk"; }; chipstmxptclk: chipstmxptclk { #clock-cells = <0>; compatible = "ti,keystone,pll-divider-clock"; clocks = <&mainmuxclk>; reg = <0x02310164 4>; bit-shift = <0>; bit-mask = <8>; clock-output-names = "chipstmxptclk"; }; chipclk12: chipclk12 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&chipclk1>; clock-div = <2>; clock-mult = <1>; clock-output-names = "chipclk12"; }; chipclk13: chipclk13 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&chipclk1>; clock-div = <3>; clock-mult = <1>; clock-output-names = "chipclk13"; }; paclk13: paclk13 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&papllclk>; clock-div = <3>; clock-mult = <1>; clock-output-names = "paclk13"; }; chipclk14: chipclk14 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&chipclk1>; clock-div = <4>; clock-mult = <1>; clock-output-names = "chipclk14"; }; chipclk16: chipclk16 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&chipclk1>; clock-div = <6>; clock-mult = <1>; clock-output-names = "chipclk16"; }; chipclk112: chipclk112 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&chipclk1>; clock-div = <12>; clock-mult = <1>; clock-output-names = "chipclk112"; }; chipclk124: chipclk124 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&chipclk1>; clock-div = <24>; clock-mult = <1>; clock-output-names = "chipclk114"; }; chipclk1rstiso13: chipclk1rstiso13 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&chipclk1rstiso>; clock-div = <3>; clock-mult = <1>; clock-output-names = "chipclk1rstiso13"; }; chipclk1rstiso14: chipclk1rstiso14 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&chipclk1rstiso>; clock-div = <4>; clock-mult = <1>; clock-output-names = "chipclk1rstiso14"; }; chipclk1rstiso16: chipclk1rstiso16 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&chipclk1rstiso>; clock-div = <6>; clock-mult = <1>; clock-output-names = "chipclk1rstiso16"; }; chipclk1rstiso112: chipclk1rstiso112 { #clock-cells = <0>; compatible = "fixed-factor-clock"; clocks = <&chipclk1rstiso>; clock-div = <12>; clock-mult = <1>; clock-output-names = "chipclk1rstiso112"; }; clkmodrst0: clkmodrst0 { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&chipclk16>; clock-output-names = "modrst0"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkusb: clkusb { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&chipclk16>; clock-output-names = "usb"; reg = <0x02350008 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkaemifspi: clkaemifspi { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&chipclk16>; clock-output-names = "aemif-spi"; reg = <0x0235000c 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkdebugsstrc: clkdebugsstrc { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&chipclk13>; clock-output-names = "debugss-trc"; reg = <0x02350014 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <1>; }; clktetbtrc: clktetbtrc { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&chipclk13>; clock-output-names = "tetb-trc"; reg = <0x02350018 0xb00>, <0x02350004 0x400>; reg-names = "control", "domain"; domain-id = <1>; }; clkpa: clkpa { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&paclk13>; clock-output-names = "pa"; reg = <0x0235001c 0xb00>, <0x02350008 0x400>; reg-names = "control", "domain"; domain-id = <2>; }; clkcpgmac: clkcpgmac { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkpa>; clock-output-names = "cpgmac"; reg = <0x02350020 0xb00>, <0x02350008 0x400>; reg-names = "control", "domain"; domain-id = <2>; }; clksa: clksa { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkpa>; clock-output-names = "sa"; reg = <0x02350024 0xb00>, <0x02350008 0x400>; reg-names = "control", "domain"; domain-id = <2>; }; clkpcie: clkpcie { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&chipclk12>; clock-output-names = "pcie"; reg = <0x02350028 0xb00>, <0x0235000c 0x400>; reg-names = "control", "domain"; domain-id = <3>; }; clksr: clksr { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&chipclk1rstiso112>; clock-output-names = "sr"; reg = <0x02350034 0xb00>, <0x02350018 0x400>; reg-names = "control", "domain"; domain-id = <6>; }; clkgem0: clkgem0 { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&chipclk1>; clock-output-names = "gem0"; reg = <0x0235003c 0xb00>, <0x02350020 0x400>; reg-names = "control", "domain"; domain-id = <8>; }; clkddr30: clkddr30 { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&chipclk12>; clock-output-names = "ddr3-0"; reg = <0x0235005c 0xb00>, <0x02350040 0x400>; reg-names = "control", "domain"; domain-id = <16>; }; clkwdtimer0: clkwdtimer0 { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkmodrst0>; clock-output-names = "timer0"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkwdtimer1: clkwdtimer1 { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkmodrst0>; clock-output-names = "timer1"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkwdtimer2: clkwdtimer2 { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkmodrst0>; clock-output-names = "timer2"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkwdtimer3: clkwdtimer3 { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkmodrst0>; clock-output-names = "timer3"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clktimer15: clktimer15 { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkmodrst0>; clock-output-names = "timer15"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkuart0: clkuart0 { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkmodrst0>; clock-output-names = "uart0"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkuart1: clkuart1 { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkmodrst0>; clock-output-names = "uart1"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkaemif: clkaemif { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkaemifspi>; clock-output-names = "aemif"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkusim: clkusim { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkmodrst0>; clock-output-names = "usim"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clki2c: clki2c { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkmodrst0>; clock-output-names = "i2c"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkspi: clkspi { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkaemifspi>; clock-output-names = "spi"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkgpio: clkgpio { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkmodrst0>; clock-output-names = "gpio"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; clkkeymgr: clkkeymgr { #clock-cells = <0>; compatible = "ti,keystone,psc-clock"; clocks = <&clkmodrst0>; clock-output-names = "keymgr"; reg = <0x02350000 0xb00>, <0x02350000 0x400>; reg-names = "control", "domain"; domain-id = <0>; }; };