Back to home page

OSCL-LXR

 
 

    


0001 /*
0002  *  BSD LICENSE
0003  *
0004  *  Copyright(c) 2016-2017 Broadcom.  All rights reserved.
0005  *
0006  *  Redistribution and use in source and binary forms, with or without
0007  *  modification, are permitted provided that the following conditions
0008  *  are met:
0009  *
0010  *    * Redistributions of source code must retain the above copyright
0011  *      notice, this list of conditions and the following disclaimer.
0012  *    * Redistributions in binary form must reproduce the above copyright
0013  *      notice, this list of conditions and the following disclaimer in
0014  *      the documentation and/or other materials provided with the
0015  *      distribution.
0016  *    * Neither the name of Broadcom nor the names of its
0017  *      contributors may be used to endorse or promote products derived
0018  *      from this software without specific prior written permission.
0019  *
0020  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
0021  *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
0022  *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
0023  *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
0024  *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
0025  *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
0026  *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
0027  *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
0028  *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
0029  *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
0030  *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
0031  */
0032 
0033 #include <dt-bindings/clock/bcm-sr.h>
0034 
0035                 osc: oscillator {
0036                         #clock-cells = <0>;
0037                         compatible = "fixed-clock";
0038                         clock-frequency = <50000000>;
0039                 };
0040 
0041                 crmu_ref25m: crmu_ref25m {
0042                         #clock-cells = <0>;
0043                         compatible = "fixed-factor-clock";
0044                         clocks = <&osc>;
0045                         clock-div = <2>;
0046                         clock-mult = <1>;
0047                 };
0048 
0049                 genpll0: genpll0@1d104 {
0050                         #clock-cells = <1>;
0051                         compatible = "brcm,sr-genpll0";
0052                         reg = <0x0001d104 0x32>,
0053                               <0x0001c854 0x4>;
0054                         clocks = <&osc>;
0055                         clock-output-names = "genpll0", "clk_125m", "clk_scr",
0056                                              "clk_250", "clk_pcie_axi",
0057                                              "clk_paxc_axi_x2",
0058                                              "clk_paxc_axi";
0059                 };
0060 
0061                 genpll2: genpll2@1d1ac {
0062                         #clock-cells = <1>;
0063                         compatible = "brcm,sr-genpll2";
0064                         reg = <0x0001d1ac 0x32>,
0065                               <0x0001c854 0x4>;
0066                         clocks = <&osc>;
0067                         clock-output-names = "genpll2", "clk_nic",
0068                                              "clk_ts_500_ref", "clk_125_nitro",
0069                                              "clk_chimp", "clk_nic_flash",
0070                                              "clk_fs";
0071                 };
0072 
0073                 genpll3: genpll3@1d1e0 {
0074                         #clock-cells = <1>;
0075                         compatible = "brcm,sr-genpll3";
0076                         reg = <0x0001d1e0 0x32>,
0077                               <0x0001c854 0x4>;
0078                         clocks = <&osc>;
0079                         clock-output-names = "genpll3", "clk_hsls",
0080                                              "clk_sdio";
0081                 };
0082 
0083                 genpll4: genpll4@1d214 {
0084                         #clock-cells = <1>;
0085                         compatible = "brcm,sr-genpll4";
0086                         reg = <0x0001d214 0x32>,
0087                               <0x0001c854 0x4>;
0088                         clocks = <&osc>;
0089                         clock-output-names = "genpll4", "clk_ccn",
0090                                              "clk_tpiu_pll", "clk_noc",
0091                                              "clk_chclk_fs4",
0092                                              "clk_bridge_fscpu";
0093                 };
0094 
0095                 genpll5: genpll5@1d248 {
0096                         #clock-cells = <1>;
0097                         compatible = "brcm,sr-genpll5";
0098                         reg = <0x0001d248 0x32>,
0099                               <0x0001c870 0x4>;
0100                         clocks = <&osc>;
0101                         clock-output-names = "genpll5", "clk_fs4_hf",
0102                                              "clk_crypto_ae", "clk_raid_ae";
0103                 };
0104 
0105                 lcpll0: lcpll0@1d0c4 {
0106                         #clock-cells = <1>;
0107                         compatible = "brcm,sr-lcpll0";
0108                         reg = <0x0001d0c4 0x3c>,
0109                               <0x0001c870 0x4>;
0110                         clocks = <&osc>;
0111                         clock-output-names = "lcpll0", "clk_sata_refp",
0112                                              "clk_sata_refn", "clk_sata_350",
0113                                              "clk_sata_500";
0114                 };
0115 
0116                 lcpll1: lcpll1@1d138 {
0117                         #clock-cells = <1>;
0118                         compatible = "brcm,sr-lcpll1";
0119                         reg = <0x0001d138 0x3c>,
0120                               <0x0001c870 0x4>;
0121                         clocks = <&osc>;
0122                         clock-output-names = "lcpll1", "clk_wan",
0123                                              "clk_usb_ref",
0124                                              "clk_crmu_ts";
0125                 };
0126 
0127                 hsls_clk: hsls_clk {
0128                         #clock-cells = <0>;
0129                         compatible = "fixed-factor-clock";
0130                         clocks = <&genpll3 1>;
0131                         clock-div = <1>;
0132                         clock-mult = <1>;
0133                 };
0134 
0135                 hsls_div2_clk: hsls_div2_clk {
0136                         #clock-cells = <0>;
0137                         compatible = "fixed-factor-clock";
0138                         clocks = <&genpll3 BCM_SR_GENPLL3_HSLS_CLK>;
0139                         clock-div = <2>;
0140                         clock-mult = <1>;
0141 
0142                 };
0143 
0144                 hsls_div4_clk: hsls_div4_clk {
0145                         #clock-cells = <0>;
0146                         compatible = "fixed-factor-clock";
0147                         clocks = <&genpll3 BCM_SR_GENPLL3_HSLS_CLK>;
0148                         clock-div = <4>;
0149                         clock-mult = <1>;
0150                 };
0151 
0152                 hsls_25m_clk: hsls_25m_clk {
0153                         #clock-cells = <0>;
0154                         compatible = "fixed-factor-clock";
0155                         clocks = <&crmu_ref25m>;
0156                         clock-div = <1>;
0157                         clock-mult = <1>;
0158                 };
0159 
0160                 hsls_25m_div2_clk: hsls_25m_div2_clk {
0161                         #clock-cells = <0>;
0162                         compatible = "fixed-factor-clock";
0163                         clocks = <&hsls_25m_clk>;
0164                         clock-div = <2>;
0165                         clock-mult = <1>;
0166                 };
0167 
0168                 sdio0_clk: sdio0_clk {
0169                         #clock-cells = <0>;
0170                         compatible = "fixed-factor-clock";
0171                         clocks = <&genpll3 BCM_SR_GENPLL3_SDIO_CLK>;
0172                         clock-div = <1>;
0173                         clock-mult = <1>;
0174                 };
0175 
0176                 sdio1_clk: sdio1_clk {
0177                         #clock-cells = <0>;
0178                         compatible = "fixed-factor-clock";
0179                         clocks = <&genpll3 BCM_SR_GENPLL3_SDIO_CLK>;
0180                         clock-div = <1>;
0181                         clock-mult = <1>;
0182                 };