Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0
0002 /*
0003  * Device Tree Source for Keystone 2 clock tree
0004  *
0005  * Copyright (C) 2013-2017 Texas Instruments Incorporated - http://www.ti.com/
0006  */
0007 
0008 clocks {
0009         #address-cells = <1>;
0010         #size-cells = <1>;
0011         ranges;
0012 
0013         mainmuxclk: mainmuxclk@2310108 {
0014                 #clock-cells = <0>;
0015                 compatible = "ti,keystone,pll-mux-clock";
0016                 clocks = <&mainpllclk>, <&refclksys>;
0017                 reg = <0x02310108 4>;
0018                 bit-shift = <23>;
0019                 bit-mask = <1>;
0020                 clock-output-names = "mainmuxclk";
0021         };
0022 
0023         chipclk1: chipclk1 {
0024                 #clock-cells = <0>;
0025                 compatible = "fixed-factor-clock";
0026                 clocks = <&mainmuxclk>;
0027                 clock-div = <1>;
0028                 clock-mult = <1>;
0029                 clock-output-names = "chipclk1";
0030         };
0031 
0032         chipclk1rstiso: chipclk1rstiso {
0033                 #clock-cells = <0>;
0034                 compatible = "fixed-factor-clock";
0035                 clocks = <&mainmuxclk>;
0036                 clock-div = <1>;
0037                 clock-mult = <1>;
0038                 clock-output-names = "chipclk1rstiso";
0039         };
0040 
0041         gemtraceclk: gemtraceclk@2310120 {
0042                 #clock-cells = <0>;
0043                 compatible = "ti,keystone,pll-divider-clock";
0044                 clocks = <&mainmuxclk>;
0045                 reg = <0x02310120 4>;
0046                 bit-shift = <0>;
0047                 bit-mask = <8>;
0048                 clock-output-names = "gemtraceclk";
0049         };
0050 
0051         chipstmxptclk: chipstmxptclk@2310164 {
0052                 #clock-cells = <0>;
0053                 compatible = "ti,keystone,pll-divider-clock";
0054                 clocks = <&mainmuxclk>;
0055                 reg = <0x02310164 4>;
0056                 bit-shift = <0>;
0057                 bit-mask = <8>;
0058                 clock-output-names = "chipstmxptclk";
0059         };
0060 
0061         chipclk12: chipclk12 {
0062                 #clock-cells = <0>;
0063                 compatible = "fixed-factor-clock";
0064                 clocks = <&chipclk1>;
0065                 clock-div = <2>;
0066                 clock-mult = <1>;
0067                 clock-output-names = "chipclk12";
0068         };
0069 
0070         chipclk13: chipclk13 {
0071                 #clock-cells = <0>;
0072                 compatible = "fixed-factor-clock";
0073                 clocks = <&chipclk1>;
0074                 clock-div = <3>;
0075                 clock-mult = <1>;
0076                 clock-output-names = "chipclk13";
0077         };
0078 
0079         paclk13: paclk13 {
0080                 #clock-cells = <0>;
0081                 compatible = "fixed-factor-clock";
0082                 clocks = <&papllclk>;
0083                 clock-div = <3>;
0084                 clock-mult = <1>;
0085                 clock-output-names = "paclk13";
0086         };
0087 
0088         chipclk14: chipclk14 {
0089                 #clock-cells = <0>;
0090                 compatible = "fixed-factor-clock";
0091                 clocks = <&chipclk1>;
0092                 clock-div = <4>;
0093                 clock-mult = <1>;
0094                 clock-output-names = "chipclk14";
0095         };
0096 
0097         chipclk16: chipclk16 {
0098                 #clock-cells = <0>;
0099                 compatible = "fixed-factor-clock";
0100                 clocks = <&chipclk1>;
0101                 clock-div = <6>;
0102                 clock-mult = <1>;
0103                 clock-output-names = "chipclk16";
0104         };
0105 
0106         chipclk112: chipclk112 {
0107                 #clock-cells = <0>;
0108                 compatible = "fixed-factor-clock";
0109                 clocks = <&chipclk1>;
0110                 clock-div = <12>;
0111                 clock-mult = <1>;
0112                 clock-output-names = "chipclk112";
0113         };
0114 
0115         chipclk124: chipclk124 {
0116                 #clock-cells = <0>;
0117                 compatible = "fixed-factor-clock";
0118                 clocks = <&chipclk1>;
0119                 clock-div = <24>;
0120                 clock-mult = <1>;
0121                 clock-output-names = "chipclk114";
0122         };
0123 
0124         chipclk1rstiso13: chipclk1rstiso13 {
0125                 #clock-cells = <0>;
0126                 compatible = "fixed-factor-clock";
0127                 clocks = <&chipclk1rstiso>;
0128                 clock-div = <3>;
0129                 clock-mult = <1>;
0130                 clock-output-names = "chipclk1rstiso13";
0131         };
0132 
0133         chipclk1rstiso14: chipclk1rstiso14 {
0134                 #clock-cells = <0>;
0135                 compatible = "fixed-factor-clock";
0136                 clocks = <&chipclk1rstiso>;
0137                 clock-div = <4>;
0138                 clock-mult = <1>;
0139                 clock-output-names = "chipclk1rstiso14";
0140         };
0141 
0142         chipclk1rstiso16: chipclk1rstiso16 {
0143                 #clock-cells = <0>;
0144                 compatible = "fixed-factor-clock";
0145                 clocks = <&chipclk1rstiso>;
0146                 clock-div = <6>;
0147                 clock-mult = <1>;
0148                 clock-output-names = "chipclk1rstiso16";
0149         };
0150 
0151         chipclk1rstiso112: chipclk1rstiso112 {
0152                 #clock-cells = <0>;
0153                 compatible = "fixed-factor-clock";
0154                 clocks = <&chipclk1rstiso>;
0155                 clock-div = <12>;
0156                 clock-mult = <1>;
0157                 clock-output-names = "chipclk1rstiso112";
0158         };
0159 
0160         clkmodrst0: clkmodrst0@2350000 {
0161                 #clock-cells = <0>;
0162                 compatible = "ti,keystone,psc-clock";
0163                 clocks = <&chipclk16>;
0164                 clock-output-names = "modrst0";
0165                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0166                 reg-names = "control", "domain";
0167                 domain-id = <0>;
0168         };
0169 
0170 
0171         clkusb: clkusb@2350008 {
0172                 #clock-cells = <0>;
0173                 compatible = "ti,keystone,psc-clock";
0174                 clocks = <&chipclk16>;
0175                 clock-output-names = "usb";
0176                 reg = <0x02350008 0xb00>, <0x02350000 0x400>;
0177                 reg-names = "control", "domain";
0178                 domain-id = <0>;
0179         };
0180 
0181         clkaemifspi: clkaemifspi@235000c {
0182                 #clock-cells = <0>;
0183                 compatible = "ti,keystone,psc-clock";
0184                 clocks = <&chipclk16>;
0185                 clock-output-names = "aemif-spi";
0186                 reg = <0x0235000c 0xb00>, <0x02350000 0x400>;
0187                 reg-names = "control", "domain";
0188                 domain-id = <0>;
0189         };
0190 
0191 
0192         clkdebugsstrc: clkdebugsstrc@2350014 {
0193                 #clock-cells = <0>;
0194                 compatible = "ti,keystone,psc-clock";
0195                 clocks = <&chipclk13>;
0196                 clock-output-names = "debugss-trc";
0197                 reg = <0x02350014 0xb00>, <0x02350000 0x400>;
0198                 reg-names = "control", "domain";
0199                 domain-id = <1>;
0200         };
0201 
0202         clktetbtrc: clktetbtrc@2350018 {
0203                 #clock-cells = <0>;
0204                 compatible = "ti,keystone,psc-clock";
0205                 clocks = <&chipclk13>;
0206                 clock-output-names = "tetb-trc";
0207                 reg = <0x02350018 0xb00>, <0x02350004 0x400>;
0208                 reg-names = "control", "domain";
0209                 domain-id = <1>;
0210         };
0211 
0212         clkpa: clkpa@235001c {
0213                 #clock-cells = <0>;
0214                 compatible = "ti,keystone,psc-clock";
0215                 clocks = <&paclk13>;
0216                 clock-output-names = "pa";
0217                 reg = <0x0235001c 0xb00>, <0x02350008 0x400>;
0218                 reg-names = "control", "domain";
0219                 domain-id = <2>;
0220         };
0221 
0222         clkcpgmac: clkcpgmac@2350020 {
0223                 #clock-cells = <0>;
0224                 compatible = "ti,keystone,psc-clock";
0225                 clocks = <&clkpa>;
0226                 clock-output-names = "cpgmac";
0227                 reg = <0x02350020 0xb00>, <0x02350008 0x400>;
0228                 reg-names = "control", "domain";
0229                 domain-id = <2>;
0230         };
0231 
0232         clksa: clksa@2350024 {
0233                 #clock-cells = <0>;
0234                 compatible = "ti,keystone,psc-clock";
0235                 clocks = <&clkpa>;
0236                 clock-output-names = "sa";
0237                 reg = <0x02350024 0xb00>, <0x02350008 0x400>;
0238                 reg-names = "control", "domain";
0239                 domain-id = <2>;
0240         };
0241 
0242         clkpcie: clkpcie@2350028 {
0243                 #clock-cells = <0>;
0244                 compatible = "ti,keystone,psc-clock";
0245                 clocks = <&chipclk12>;
0246                 clock-output-names = "pcie";
0247                 reg = <0x02350028 0xb00>, <0x0235000c 0x400>;
0248                 reg-names = "control", "domain";
0249                 domain-id = <3>;
0250         };
0251 
0252         clksr: clksr@2350034 {
0253                 #clock-cells = <0>;
0254                 compatible = "ti,keystone,psc-clock";
0255                 clocks = <&chipclk1rstiso112>;
0256                 clock-output-names = "sr";
0257                 reg = <0x02350034 0xb00>, <0x02350018 0x400>;
0258                 reg-names = "control", "domain";
0259                 domain-id = <6>;
0260         };
0261 
0262         clkgem0: clkgem0@235003c {
0263                 #clock-cells = <0>;
0264                 compatible = "ti,keystone,psc-clock";
0265                 clocks = <&chipclk1>;
0266                 clock-output-names = "gem0";
0267                 reg = <0x0235003c 0xb00>, <0x02350020 0x400>;
0268                 reg-names = "control", "domain";
0269                 domain-id = <8>;
0270         };
0271 
0272         clkddr30: clkddr30@235005c {
0273                 #clock-cells = <0>;
0274                 compatible = "ti,keystone,psc-clock";
0275                 clocks = <&chipclk12>;
0276                 clock-output-names = "ddr3-0";
0277                 reg = <0x0235005c 0xb00>, <0x02350040 0x400>;
0278                 reg-names = "control", "domain";
0279                 domain-id = <16>;
0280         };
0281 
0282         clkwdtimer0: clkwdtimer0@2350000 {
0283                 #clock-cells = <0>;
0284                 compatible = "ti,keystone,psc-clock";
0285                 clocks = <&clkmodrst0>;
0286                 clock-output-names = "timer0";
0287                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0288                 reg-names = "control", "domain";
0289                 domain-id = <0>;
0290         };
0291 
0292         clkwdtimer1: clkwdtimer1@2350000 {
0293                 #clock-cells = <0>;
0294                 compatible = "ti,keystone,psc-clock";
0295                 clocks = <&clkmodrst0>;
0296                 clock-output-names = "timer1";
0297                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0298                 reg-names = "control", "domain";
0299                 domain-id = <0>;
0300         };
0301 
0302         clkwdtimer2: clkwdtimer2@2350000 {
0303                 #clock-cells = <0>;
0304                 compatible = "ti,keystone,psc-clock";
0305                 clocks = <&clkmodrst0>;
0306                 clock-output-names = "timer2";
0307                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0308                 reg-names = "control", "domain";
0309                 domain-id = <0>;
0310         };
0311 
0312         clkwdtimer3: clkwdtimer3@2350000 {
0313                 #clock-cells = <0>;
0314                 compatible = "ti,keystone,psc-clock";
0315                 clocks = <&clkmodrst0>;
0316                 clock-output-names = "timer3";
0317                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0318                 reg-names = "control", "domain";
0319                 domain-id = <0>;
0320         };
0321 
0322         clktimer15: clktimer15@2350000 {
0323                 #clock-cells = <0>;
0324                 compatible = "ti,keystone,psc-clock";
0325                 clocks = <&clkmodrst0>;
0326                 clock-output-names = "timer15";
0327                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0328                 reg-names = "control", "domain";
0329                 domain-id = <0>;
0330         };
0331 
0332         clkuart0: clkuart0@2350000 {
0333                 #clock-cells = <0>;
0334                 compatible = "ti,keystone,psc-clock";
0335                 clocks = <&clkmodrst0>;
0336                 clock-output-names = "uart0";
0337                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0338                 reg-names = "control", "domain";
0339                 domain-id = <0>;
0340         };
0341 
0342         clkuart1: clkuart1@2350000 {
0343                 #clock-cells = <0>;
0344                 compatible = "ti,keystone,psc-clock";
0345                 clocks = <&clkmodrst0>;
0346                 clock-output-names = "uart1";
0347                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0348                 reg-names = "control", "domain";
0349                 domain-id = <0>;
0350         };
0351 
0352         clkaemif: clkaemif@2350000 {
0353                 #clock-cells = <0>;
0354                 compatible = "ti,keystone,psc-clock";
0355                 clocks = <&clkaemifspi>;
0356                 clock-output-names = "aemif";
0357                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0358                 reg-names = "control", "domain";
0359                 domain-id = <0>;
0360         };
0361 
0362         clkusim: clkusim@2350000 {
0363                 #clock-cells = <0>;
0364                 compatible = "ti,keystone,psc-clock";
0365                 clocks = <&clkmodrst0>;
0366                 clock-output-names = "usim";
0367                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0368                 reg-names = "control", "domain";
0369                 domain-id = <0>;
0370         };
0371 
0372         clki2c: clki2c@2350000 {
0373                 #clock-cells = <0>;
0374                 compatible = "ti,keystone,psc-clock";
0375                 clocks = <&clkmodrst0>;
0376                 clock-output-names = "i2c";
0377                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0378                 reg-names = "control", "domain";
0379                 domain-id = <0>;
0380         };
0381 
0382         clkspi: clkspi@2350000 {
0383                 #clock-cells = <0>;
0384                 compatible = "ti,keystone,psc-clock";
0385                 clocks = <&clkaemifspi>;
0386                 clock-output-names = "spi";
0387                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0388                 reg-names = "control", "domain";
0389                 domain-id = <0>;
0390         };
0391 
0392         clkgpio: clkgpio@2350000 {
0393                 #clock-cells = <0>;
0394                 compatible = "ti,keystone,psc-clock";
0395                 clocks = <&clkmodrst0>;
0396                 clock-output-names = "gpio";
0397                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0398                 reg-names = "control", "domain";
0399                 domain-id = <0>;
0400         };
0401 
0402         clkkeymgr: clkkeymgr@2350000 {
0403                 #clock-cells = <0>;
0404                 compatible = "ti,keystone,psc-clock";
0405                 clocks = <&clkmodrst0>;
0406                 clock-output-names = "keymgr";
0407                 reg = <0x02350000 0xb00>, <0x02350000 0x400>;
0408                 reg-names = "control", "domain";
0409                 domain-id = <0>;
0410         };
0411 
0412         /*
0413          * Below are set of fixed, input clocks definitions,
0414          * for which real frequencies have to be defined in board files.
0415          * Those clocks can be used as reference clocks for some HW modules
0416          * (as cpts, for example) by configuring corresponding clock muxes.
0417          */
0418         timi0: timi0 {
0419                 #clock-cells = <0>;
0420                 compatible = "fixed-clock";
0421                 clock-frequency = <0>;
0422                 clock-output-names = "timi0";
0423         };
0424 
0425         timi1: timi1 {
0426                 #clock-cells = <0>;
0427                 compatible = "fixed-clock";
0428                 clock-frequency = <0>;
0429                 clock-output-names = "timi1";
0430         };
0431 
0432         tsrefclk: tsrefclk {
0433                 #clock-cells = <0>;
0434                 compatible = "fixed-clock";
0435                 clock-frequency = <0>;
0436                 clock-output-names = "tsrefclk";
0437         };
0438 };