Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0
0002 /*
0003  * Device Tree Source for Keystone 2 Edison Netcp driver
0004  *
0005  * Copyright (C) 2015-2017 Texas Instruments Incorporated - http://www.ti.com/
0006  */
0007 
0008 qmss: qmss@2a40000 {
0009         compatible = "ti,keystone-navigator-qmss";
0010         dma-coherent;
0011         #address-cells = <1>;
0012         #size-cells = <1>;
0013         clocks = <&chipclk13>;
0014         ranges;
0015         queue-range = <0 0x2000>;
0016         linkram0 = <0x100000 0x4000>;
0017         linkram1 = <0 0x10000>;
0018 
0019         qmgrs {
0020                 #address-cells = <1>;
0021                 #size-cells = <1>;
0022                 ranges;
0023                 qmgr0 {
0024                         managed-queues = <0 0x2000>;
0025                         reg = <0x2a40000 0x20000>,
0026                               <0x2a06000 0x400>,
0027                               <0x2a02000 0x1000>,
0028                               <0x2a03000 0x1000>,
0029                               <0x23a80000 0x20000>,
0030                               <0x2a80000 0x20000>;
0031                         reg-names = "peek", "status", "config",
0032                                     "region", "push", "pop";
0033                 };
0034         };
0035         queue-pools {
0036                 qpend {
0037                         qpend-0 {
0038                                 qrange = <658 8>;
0039                                 interrupts =<0 40 0xf04 0 41 0xf04 0 42 0xf04
0040                                              0 43 0xf04 0 44 0xf04 0 45 0xf04
0041                                              0 46 0xf04 0 47 0xf04>;
0042                         };
0043                         qpend-1 {
0044                                 qrange = <528 16>;
0045                                 interrupts = <0 48 0xf04 0 49 0xf04 0 50 0xf04
0046                                               0 51 0xf04 0 52 0xf04 0 53 0xf04
0047                                               0 54 0xf04 0 55 0xf04 0 56 0xf04
0048                                               0 57 0xf04 0 58 0xf04 0 59 0xf04
0049                                               0 60 0xf04 0 61 0xf04 0 62 0xf04
0050                                               0 63 0xf04>;
0051                                 qalloc-by-id;
0052                         };
0053                         qpend-2 {
0054                                 qrange = <544 16>;
0055                                 interrupts = <0 64 0xf04 0 65 0xf04 0 66 0xf04
0056                                               0 59 0xf04 0 68 0xf04 0 69 0xf04
0057                                               0 70 0xf04 0 71 0xf04 0 72 0xf04
0058                                               0 73 0xf04 0 74 0xf04 0 75 0xf04
0059                                               0 76 0xf04 0 77 0xf04 0 78 0xf04
0060                                               0 79 0xf04>;
0061                         };
0062                 };
0063                 general-purpose {
0064                         gp-0 {
0065                                 qrange = <4000 64>;
0066                         };
0067                         netcp-tx {
0068                                 qrange = <896 128>;
0069                                 qalloc-by-id;
0070                         };
0071                 };
0072                 accumulator {
0073                         acc-low-0 {
0074                                 qrange = <480 32>;
0075                                 accumulator = <0 47 16 2 50>;
0076                                 interrupts = <0 226 0xf01>;
0077                                 multi-queue;
0078                                 qalloc-by-id;
0079                         };
0080                 };
0081         };
0082 
0083         descriptor-regions {
0084                 #address-cells = <1>;
0085                 #size-cells = <1>;
0086                 ranges;
0087                 region-12 {
0088                         id = <12>;
0089                         region-spec = <8192 128>;       /* num_desc desc_size */
0090                         link-index = <0x4000>;
0091                 };
0092         };
0093 
0094         pdsps {
0095                 #address-cells = <1>;
0096                 #size-cells = <1>;
0097                 ranges;
0098                 pdsp0@2a10000 {
0099                         reg = <0x2a10000 0x1000    /*iram */
0100                                0x2a0f000 0x100     /*reg*/
0101                                0x2a0c000 0x3c8     /*intd */
0102                                0x2a20000 0x4000>;  /*cmd*/
0103                         id = <0>;
0104                 };
0105         };
0106 }; /* qmss */
0107 
0108 knav_dmas: knav_dmas@0 {
0109         compatible = "ti,keystone-navigator-dma";
0110         clocks = <&papllclk>;
0111         #address-cells = <1>;
0112         #size-cells = <1>;
0113         ranges;
0114         ti,navigator-cloud-address = <0x23a80000 0x23a90000
0115                                  0x23a80000 0x23a90000>;
0116 
0117         dma_gbe: dma_gbe@0 {
0118                 reg = <0x24186000 0x100>,
0119                           <0x24187000 0x2a0>,
0120                           <0x24188000 0xb60>,
0121                           <0x24186100 0x80>,
0122                           <0x24189000 0x1000>;
0123                 reg-names = "global", "txchan", "rxchan",
0124                                 "txsched", "rxflow";
0125         };
0126 };
0127 
0128 netcp: netcp@24000000 {
0129         reg = <0x2620110 0x8>;
0130         reg-names = "efuse";
0131         compatible = "ti,netcp-1.0";
0132         #address-cells = <1>;
0133         #size-cells = <1>;
0134 
0135         /* NetCP address range */
0136         ranges = <0 0x24000000 0x1000000>;
0137 
0138         clocks = <&clkpa>, <&clkcpgmac>;
0139         clock-names = "pa_clk", "ethss_clk";
0140         dma-coherent;
0141 
0142         ti,navigator-dmas = <&dma_gbe 0>,
0143                         <&dma_gbe 8>,
0144                         <&dma_gbe 0>;
0145         ti,navigator-dma-names = "netrx0", "netrx1", "nettx";
0146 
0147         netcp-devices {
0148                 #address-cells = <1>;
0149                 #size-cells = <1>;
0150                 ranges;
0151                 gbe@200000 { /* ETHSS */
0152                         label = "netcp-gbe";
0153                         compatible = "ti,netcp-gbe-9";
0154                         reg = <0x200000 0x900>, <0x220000 0x20000>;
0155                         /* enable-ale; */
0156                         tx-queue = <896>;
0157                         tx-channel = "nettx";
0158 
0159                         cpts {
0160                                 clocks = <&cpts_refclk_mux>;
0161                                 clock-names = "cpts";
0162 
0163                                 cpts_refclk_mux: cpts-refclk-mux {
0164                                         #clock-cells = <0>;
0165                                         clocks = <&chipclk12>, <&chipclk13>,
0166                                                  <&timi0>, <&timi1>,
0167                                                  <&tsipclka>, <&tsrefclk>,
0168                                                  <&tsipclkb>;
0169                                         ti,mux-tbl = <0x0>, <0x1>, <0x2>,
0170                                                 <0x3>, <0x4>, <0x8>, <0xC>;
0171                                         assigned-clocks = <&cpts_refclk_mux>;
0172                                         assigned-clock-parents = <&chipclk12>;
0173                                 };
0174                         };
0175 
0176                         interfaces {
0177                                 gbe0: interface-0 {
0178                                         slave-port = <0>;
0179                                         link-interface = <1>;
0180                                         phy-handle = <&ethphy0>;
0181                                 };
0182                                 gbe1: interface-1 {
0183                                         slave-port = <1>;
0184                                         link-interface = <1>;
0185                                         phy-handle = <&ethphy1>;
0186                                 };
0187                         };
0188 
0189                         secondary-slave-ports {
0190                                 port-2 {
0191                                         slave-port = <2>;
0192                                         link-interface = <2>;
0193                                 };
0194                                 port-3 {
0195                                         slave-port = <3>;
0196                                         link-interface = <2>;
0197                                 };
0198                                 port-4 {
0199                                         slave-port = <4>;
0200                                         link-interface = <2>;
0201                                 };
0202                                 port-5 {
0203                                         slave-port = <5>;
0204                                         link-interface = <2>;
0205                                 };
0206                                 port-6 {
0207                                         slave-port = <6>;
0208                                         link-interface = <2>;
0209                                 };
0210                                 port-7 {
0211                                         slave-port = <7>;
0212                                         link-interface = <2>;
0213                                 };
0214                         };
0215                 };
0216         };
0217 
0218         netcp-interfaces {
0219                 interface-0 {
0220                         rx-channel = "netrx0";
0221                         rx-pool = <1024 12>;
0222                         tx-pool = <1024 12>;
0223                         rx-queue-depth = <128 128 0 0>;
0224                         rx-buffer-size = <1518 4096 0 0>;
0225                         rx-queue = <528>;
0226                         tx-completion-queue = <530>;
0227                         efuse-mac = <1>;
0228                         netcp-gbe = <&gbe0>;
0229 
0230                 };
0231                 interface-1 {
0232                         rx-channel = "netrx1";
0233                         rx-pool = <1024 12>;
0234                         tx-pool = <1024 12>;
0235                         rx-queue-depth = <128 128 0 0>;
0236                         rx-buffer-size = <1518 4096 0 0>;
0237                         rx-queue = <529>;
0238                         tx-completion-queue = <531>;
0239                         efuse-mac = <0>;
0240                         local-mac-address = [02 18 31 7e 3e 00];
0241                         netcp-gbe = <&gbe1>;
0242                 };
0243         };
0244 };
0245 
0246 sa_subsys: subsys@24080000 {
0247         #address-cells = <1>;
0248         #size-cells = <1>;
0249         compatible = "simple-bus";
0250         ranges = <0 0x24080000 0x40000>;
0251 
0252         sa_config: subsys@0 {
0253                 compatible = "syscon";
0254                 reg = <0x0 0x100>;
0255         };
0256 
0257         rng@24000 {
0258                 compatible = "ti,keystone-rng";
0259                 reg = <0x24000 0x1000>;
0260                 ti,syscon-sa-cfg = <&sa_config>;
0261                 clocks = <&clksa>;
0262                 clock-names = "fck";
0263         };
0264 };