Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-only
0002 
0003 &pllss {
0004         /*
0005          * See TRM "2.6.10 Connected outputso DPLLS" and
0006          * "2.6.11 Connected Outputs of DPLLJ". Only clkout is
0007          * connected except for hdmi and usb.
0008          */
0009         adpll_mpu_ck: adpll@40 {
0010                 #clock-cells = <1>;
0011                 compatible = "ti,dm814-adpll-s-clock";
0012                 reg = <0x40 0x40>;
0013                 clocks = <&devosc_ck &devosc_ck &devosc_ck>;
0014                 clock-names = "clkinp", "clkinpulow", "clkinphif";
0015                 clock-output-names = "481c5040.adpll.dcoclkldo",
0016                                      "481c5040.adpll.clkout",
0017                                      "481c5040.adpll.clkoutx2",
0018                                      "481c5040.adpll.clkouthif";
0019         };
0020 
0021         adpll_dsp_ck: adpll@80 {
0022                 #clock-cells = <1>;
0023                 compatible = "ti,dm814-adpll-lj-clock";
0024                 reg = <0x80 0x30>;
0025                 clocks = <&devosc_ck &devosc_ck>;
0026                 clock-names = "clkinp", "clkinpulow";
0027                 clock-output-names = "481c5080.adpll.dcoclkldo",
0028                                      "481c5080.adpll.clkout",
0029                                      "481c5080.adpll.clkoutldo";
0030         };
0031 
0032         adpll_sgx_ck: adpll@b0 {
0033                 #clock-cells = <1>;
0034                 compatible = "ti,dm814-adpll-lj-clock";
0035                 reg = <0xb0 0x30>;
0036                 clocks = <&devosc_ck &devosc_ck>;
0037                 clock-names = "clkinp", "clkinpulow";
0038                 clock-output-names = "481c50b0.adpll.dcoclkldo",
0039                                      "481c50b0.adpll.clkout",
0040                                      "481c50b0.adpll.clkoutldo";
0041         };
0042 
0043         adpll_hdvic_ck: adpll@e0 {
0044                 #clock-cells = <1>;
0045                 compatible = "ti,dm814-adpll-lj-clock";
0046                 reg = <0xe0 0x30>;
0047                 clocks = <&devosc_ck &devosc_ck>;
0048                 clock-names = "clkinp", "clkinpulow";
0049                 clock-output-names = "481c50e0.adpll.dcoclkldo",
0050                                      "481c50e0.adpll.clkout",
0051                                      "481c50e0.adpll.clkoutldo";
0052         };
0053 
0054         adpll_l3_ck: adpll@110 {
0055                 #clock-cells = <1>;
0056                 compatible = "ti,dm814-adpll-lj-clock";
0057                 reg = <0x110 0x30>;
0058                 clocks = <&devosc_ck &devosc_ck>;
0059                 clock-names = "clkinp", "clkinpulow";
0060                 clock-output-names = "481c5110.adpll.dcoclkldo",
0061                                      "481c5110.adpll.clkout",
0062                                      "481c5110.adpll.clkoutldo";
0063         };
0064 
0065         adpll_isp_ck: adpll@140 {
0066                 #clock-cells = <1>;
0067                 compatible = "ti,dm814-adpll-lj-clock";
0068                 reg = <0x140 0x30>;
0069                 clocks = <&devosc_ck &devosc_ck>;
0070                 clock-names = "clkinp", "clkinpulow";
0071                 clock-output-names = "481c5140.adpll.dcoclkldo",
0072                                      "481c5140.adpll.clkout",
0073                                      "481c5140.adpll.clkoutldo";
0074         };
0075 
0076         adpll_dss_ck: adpll@170 {
0077                 #clock-cells = <1>;
0078                 compatible = "ti,dm814-adpll-lj-clock";
0079                 reg = <0x170 0x30>;
0080                 clocks = <&devosc_ck &devosc_ck>;
0081                 clock-names = "clkinp", "clkinpulow";
0082                 clock-output-names = "481c5170.adpll.dcoclkldo",
0083                                      "481c5170.adpll.clkout",
0084                                      "481c5170.adpll.clkoutldo";
0085         };
0086 
0087         adpll_video0_ck: adpll@1a0 {
0088                 #clock-cells = <1>;
0089                 compatible = "ti,dm814-adpll-lj-clock";
0090                 reg = <0x1a0 0x30>;
0091                 clocks = <&devosc_ck &devosc_ck>;
0092                 clock-names = "clkinp", "clkinpulow";
0093                 clock-output-names = "481c51a0.adpll.dcoclkldo",
0094                                      "481c51a0.adpll.clkout",
0095                                      "481c51a0.adpll.clkoutldo";
0096         };
0097 
0098         adpll_video1_ck: adpll@1d0 {
0099                 #clock-cells = <1>;
0100                 compatible = "ti,dm814-adpll-lj-clock";
0101                 reg = <0x1d0 0x30>;
0102                 clocks = <&devosc_ck &devosc_ck>;
0103                 clock-names = "clkinp", "clkinpulow";
0104                 clock-output-names = "481c51d0.adpll.dcoclkldo",
0105                                      "481c51d0.adpll.clkout",
0106                                      "481c51d0.adpll.clkoutldo";
0107         };
0108 
0109         adpll_hdmi_ck: adpll@200 {
0110                 #clock-cells = <1>;
0111                 compatible = "ti,dm814-adpll-lj-clock";
0112                 reg = <0x200 0x30>;
0113                 clocks = <&devosc_ck &devosc_ck>;
0114                 clock-names = "clkinp", "clkinpulow";
0115                 clock-output-names = "481c5200.adpll.dcoclkldo",
0116                                      "481c5200.adpll.clkout",
0117                                      "481c5200.adpll.clkoutldo";
0118         };
0119 
0120         adpll_audio_ck: adpll@230 {
0121                 #clock-cells = <1>;
0122                 compatible = "ti,dm814-adpll-lj-clock";
0123                 reg = <0x230 0x30>;
0124                 clocks = <&devosc_ck &devosc_ck>;
0125                 clock-names = "clkinp", "clkinpulow";
0126                 clock-output-names = "481c5230.adpll.dcoclkldo",
0127                                      "481c5230.adpll.clkout",
0128                                      "481c5230.adpll.clkoutldo";
0129         };
0130 
0131         adpll_usb_ck: adpll@260 {
0132                 #clock-cells = <1>;
0133                 compatible = "ti,dm814-adpll-lj-clock";
0134                 reg = <0x260 0x30>;
0135                 clocks = <&devosc_ck &devosc_ck>;
0136                 clock-names = "clkinp", "clkinpulow";
0137                 clock-output-names = "481c5260.adpll.dcoclkldo",
0138                                      "481c5260.adpll.clkout",
0139                                      "481c5260.adpll.clkoutldo";
0140         };
0141 
0142         adpll_ddr_ck: adpll@290 {
0143                 #clock-cells = <1>;
0144                 compatible = "ti,dm814-adpll-lj-clock";
0145                 reg = <0x290 0x30>;
0146                 clocks = <&devosc_ck &devosc_ck>;
0147                 clock-names = "clkinp", "clkinpulow";
0148                 clock-output-names = "481c5290.adpll.dcoclkldo",
0149                                      "481c5290.adpll.clkout",
0150                                      "481c5290.adpll.clkoutldo";
0151         };
0152 };
0153 
0154 &pllss_clocks {
0155         timer1_fck: timer1_fck@2e0 {
0156                 #clock-cells = <0>;
0157                 compatible = "ti,mux-clock";
0158                 clocks = <&sysclk18_ck &aud_clkin0_ck &aud_clkin1_ck
0159                           &aud_clkin2_ck &devosc_ck &auxosc_ck &tclkin_ck>;
0160                 ti,bit-shift = <3>;
0161                 reg = <0x2e0>;
0162         };
0163 
0164         timer2_fck: timer2_fck@2e0 {
0165                 #clock-cells = <0>;
0166                 compatible = "ti,mux-clock";
0167                 clocks = <&sysclk18_ck &aud_clkin0_ck &aud_clkin1_ck
0168                           &aud_clkin2_ck &devosc_ck &auxosc_ck &tclkin_ck>;
0169                 ti,bit-shift = <6>;
0170                 reg = <0x2e0>;
0171         };
0172 
0173         /* CPTS_RFT_CLK in RMII_REFCLK_SRC, usually sourced from auiod */
0174         cpsw_cpts_rft_clk: cpsw_cpts_rft_clk {
0175                 #clock-cells = <0>;
0176                 compatible = "ti,mux-clock";
0177                 clocks = <&adpll_video0_ck 1
0178                           &adpll_video1_ck 1
0179                           &adpll_audio_ck 1>;
0180                 ti,bit-shift = <1>;
0181                 reg = <0x2e8>;
0182         };
0183 
0184         /* REVISIT: Set up with a proper mux using RMII_REFCLK_SRC */
0185         cpsw_125mhz_gclk: cpsw_125mhz_gclk {
0186                 #clock-cells = <0>;
0187                 compatible = "fixed-clock";
0188                 clock-frequency = <125000000>;
0189         };
0190 
0191         sysclk18_ck: sysclk18_ck@2f0 {
0192                 #clock-cells = <0>;
0193                 compatible = "ti,mux-clock";
0194                 clocks = <&rtcosc_ck>, <&rtcdivider_ck>;
0195                 ti,bit-shift = <0>;
0196                 reg = <0x02f0>;
0197         };
0198 };
0199 
0200 &scm_clocks {
0201         devosc_ck: devosc_ck@40 {
0202                 #clock-cells = <0>;
0203                 compatible = "ti,mux-clock";
0204                 clocks = <&virt_20000000_ck>, <&virt_19200000_ck>;
0205                 ti,bit-shift = <21>;
0206                 reg = <0x0040>;
0207         };
0208 
0209         /* Optional auxosc, 20 - 30 MHz range, assume 22.5729 MHz by default */
0210         auxosc_ck: auxosc_ck {
0211                 #clock-cells = <0>;
0212                 compatible = "fixed-clock";
0213                 clock-frequency = <22572900>;
0214         };
0215 
0216         /* Optional 32768Hz crystal or clock on RTCOSC pins */
0217         rtcosc_ck: rtcosc_ck {
0218                 #clock-cells = <0>;
0219                 compatible = "fixed-clock";
0220                 clock-frequency = <32768>;
0221         };
0222 
0223         /* Optional external clock on TCLKIN pin, set rate in baord dts file */
0224         tclkin_ck: tclkin_ck {
0225                 #clock-cells = <0>;
0226                 compatible = "fixed-clock";
0227                 clock-frequency = <0>;
0228         };
0229 
0230         virt_20000000_ck: virt_20000000_ck {
0231                 #clock-cells = <0>;
0232                 compatible = "fixed-clock";
0233                 clock-frequency = <20000000>;
0234         };
0235 
0236         virt_19200000_ck: virt_19200000_ck {
0237                 #clock-cells = <0>;
0238                 compatible = "fixed-clock";
0239                 clock-frequency = <19200000>;
0240         };
0241 
0242         mpu_ck: mpu_ck {
0243                 #clock-cells = <0>;
0244                 compatible = "fixed-clock";
0245                 clock-frequency = <1000000000>;
0246         };
0247 };
0248 
0249 &prcm_clocks {
0250         osc_src_ck: osc_src_ck {
0251                 #clock-cells = <0>;
0252                 compatible = "fixed-factor-clock";
0253                 clocks = <&devosc_ck>;
0254                 clock-mult = <1>;
0255                 clock-div = <1>;
0256         };
0257 
0258         mpu_clksrc_ck: mpu_clksrc_ck@40 {
0259                 #clock-cells = <0>;
0260                 compatible = "ti,mux-clock";
0261                 clocks = <&devosc_ck>, <&rtcdivider_ck>;
0262                 ti,bit-shift = <0>;
0263                 reg = <0x0040>;
0264         };
0265 
0266         /* Fixed divider clock 0.0016384 * devosc */
0267         rtcdivider_ck: rtcdivider_ck {
0268                 #clock-cells = <0>;
0269                 compatible = "fixed-factor-clock";
0270                 clocks = <&devosc_ck>;
0271                 clock-mult = <128>;
0272                 clock-div = <78125>;
0273         };
0274 
0275         /* L4_HS 220 MHz*/
0276         sysclk4_ck: sysclk4_ck {
0277                 #clock-cells = <0>;
0278                 compatible = "ti,fixed-factor-clock";
0279                 clocks = <&adpll_l3_ck 1>;
0280                 ti,clock-mult = <1>;
0281                 ti,clock-div = <1>;
0282         };
0283 
0284         /* L4_FWCFG */
0285         sysclk5_ck: sysclk5_ck {
0286                 #clock-cells = <0>;
0287                 compatible = "ti,fixed-factor-clock";
0288                 clocks = <&adpll_l3_ck 1>;
0289                 ti,clock-mult = <1>;
0290                 ti,clock-div = <2>;
0291         };
0292 
0293         /* L4_LS 110 MHz */
0294         sysclk6_ck: sysclk6_ck {
0295                 #clock-cells = <0>;
0296                 compatible = "ti,fixed-factor-clock";
0297                 clocks = <&adpll_l3_ck 1>;
0298                 ti,clock-mult = <1>;
0299                 ti,clock-div = <2>;
0300         };
0301 
0302         sysclk8_ck: sysclk8_ck {
0303                 #clock-cells = <0>;
0304                 compatible = "ti,fixed-factor-clock";
0305                 clocks = <&adpll_usb_ck 1>;
0306                 ti,clock-mult = <1>;
0307                 ti,clock-div = <1>;
0308         };
0309 
0310         sysclk10_ck: sysclk10_ck {
0311                 compatible = "ti,divider-clock";
0312                 reg = <0x324>;
0313                 ti,max-div = <7>;
0314                 #clock-cells = <0>;
0315                 clocks = <&adpll_usb_ck 1>;
0316         };
0317 
0318         aud_clkin0_ck: aud_clkin0_ck {
0319                 #clock-cells = <0>;
0320                 compatible = "fixed-clock";
0321                 clock-frequency = <20000000>;
0322         };
0323 
0324         aud_clkin1_ck: aud_clkin1_ck {
0325                 #clock-cells = <0>;
0326                 compatible = "fixed-clock";
0327                 clock-frequency = <20000000>;
0328         };
0329 
0330         aud_clkin2_ck: aud_clkin2_ck {
0331                 #clock-cells = <0>;
0332                 compatible = "fixed-clock";
0333                 clock-frequency = <20000000>;
0334         };
0335 };
0336 
0337 &prcm {
0338         default_cm: default_cm@500 {
0339                 compatible = "ti,omap4-cm";
0340                 reg = <0x500 0x100>;
0341                 #address-cells = <1>;
0342                 #size-cells = <1>;
0343                 ranges = <0 0x500 0x100>;
0344 
0345                 default_clkctrl: clk@0 {
0346                         compatible = "ti,clkctrl";
0347                         reg = <0x0 0x5c>;
0348                         #clock-cells = <2>;
0349                 };
0350         };
0351 
0352         alwon_cm: alwon_cm@1400 {
0353                 compatible = "ti,omap4-cm";
0354                 reg = <0x1400 0x300>;
0355                 #address-cells = <1>;
0356                 #size-cells = <1>;
0357                 ranges = <0 0x1400 0x300>;
0358 
0359                 alwon_clkctrl: clk@0 {
0360                         compatible = "ti,clkctrl";
0361                         reg = <0x0 0x228>;
0362                         #clock-cells = <2>;
0363                 };
0364         };
0365 
0366         alwon_ethernet_cm: alwon_ethernet_cm@15d4 {
0367                 compatible = "ti,omap4-cm";
0368                 reg = <0x15d4 0x4>;
0369                 #address-cells = <1>;
0370                 #size-cells = <1>;
0371                 ranges = <0 0x15d4 0x4>;
0372 
0373                 alwon_ethernet_clkctrl: clk@0 {
0374                         compatible = "ti,clkctrl";
0375                         reg = <0 0x4>;
0376                         #clock-cells = <2>;
0377                 };
0378         };
0379 };