1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Device Tree Source for K2G Netcp driver 4*724ba675SRob Herring * 5*724ba675SRob Herring * Copyright (C) 2018 Texas Instruments Incorporated - http://www.ti.com/ 6*724ba675SRob Herring */ 7*724ba675SRob Herring 8*724ba675SRob Herringqmss: qmss@4020000 { 9*724ba675SRob Herring compatible = "ti,66ak2g-navss-qm"; 10*724ba675SRob Herring dma-coherent; 11*724ba675SRob Herring #address-cells = <1>; 12*724ba675SRob Herring #size-cells = <1>; 13*724ba675SRob Herring power-domains = <&k2g_pds 0x0018>; 14*724ba675SRob Herring clocks = <&k2g_clks 0x0018 0>; 15*724ba675SRob Herring clock-names = "nss_vclk"; 16*724ba675SRob Herring ranges; 17*724ba675SRob Herring queue-range = <0 0x80>; 18*724ba675SRob Herring linkram0 = <0x4020000 0x7ff>; 19*724ba675SRob Herring status = "disabled"; 20*724ba675SRob Herring 21*724ba675SRob Herring qmgrs { 22*724ba675SRob Herring #address-cells = <1>; 23*724ba675SRob Herring #size-cells = <1>; 24*724ba675SRob Herring ranges; 25*724ba675SRob Herring qmgr0 { 26*724ba675SRob Herring managed-queues = <0 0x80>; 27*724ba675SRob Herring reg = <0x4100000 0x800>, 28*724ba675SRob Herring <0x4040000 0x100>, 29*724ba675SRob Herring <0x4080000 0x800>, 30*724ba675SRob Herring <0x40c0000 0x800>; 31*724ba675SRob Herring reg-names = "peek", "config", 32*724ba675SRob Herring "region", "push"; 33*724ba675SRob Herring }; 34*724ba675SRob Herring 35*724ba675SRob Herring }; 36*724ba675SRob Herring queue-pools { 37*724ba675SRob Herring qpend { 38*724ba675SRob Herring qpend-0 { 39*724ba675SRob Herring qrange = <77 8>; 40*724ba675SRob Herring interrupts =<0 308 0xf04 0 309 0xf04 0 310 0xf04 41*724ba675SRob Herring 0 311 0xf04 0 312 0xf04 0 313 0xf04 42*724ba675SRob Herring 0 314 0xf04 0 315 0xf04>; 43*724ba675SRob Herring qalloc-by-id; 44*724ba675SRob Herring }; 45*724ba675SRob Herring }; 46*724ba675SRob Herring general-purpose { 47*724ba675SRob Herring gp-0 { 48*724ba675SRob Herring qrange = <112 8>; 49*724ba675SRob Herring }; 50*724ba675SRob Herring netcp-tx { 51*724ba675SRob Herring qrange = <5 8>; 52*724ba675SRob Herring qalloc-by-id; 53*724ba675SRob Herring }; 54*724ba675SRob Herring }; 55*724ba675SRob Herring }; 56*724ba675SRob Herring 57*724ba675SRob Herring descriptor-regions { 58*724ba675SRob Herring #address-cells = <1>; 59*724ba675SRob Herring #size-cells = <1>; 60*724ba675SRob Herring ranges; 61*724ba675SRob Herring region-12 { 62*724ba675SRob Herring id = <12>; 63*724ba675SRob Herring region-spec = <1023 128>; /* num_desc desc_size */ 64*724ba675SRob Herring link-index = <0x400>; 65*724ba675SRob Herring }; 66*724ba675SRob Herring }; 67*724ba675SRob Herring}; /* qmss */ 68*724ba675SRob Herring 69*724ba675SRob Herringknav_dmas: knav_dmas@0 { 70*724ba675SRob Herring compatible = "ti,keystone-navigator-dma"; 71*724ba675SRob Herring #address-cells = <1>; 72*724ba675SRob Herring #size-cells = <1>; 73*724ba675SRob Herring status = "disabled"; 74*724ba675SRob Herring power-domains = <&k2g_pds 0x0018>; 75*724ba675SRob Herring clocks = <&k2g_clks 0x0018 0>; 76*724ba675SRob Herring clock-names = "nss_vclk"; 77*724ba675SRob Herring ranges; 78*724ba675SRob Herring ti,navigator-cloud-address = <0x40c0000 0x40c0000 0x40c0000 0x40c0000>; 79*724ba675SRob Herring 80*724ba675SRob Herring dma_gbe: dma_gbe@0 { 81*724ba675SRob Herring reg = <0x4010000 0x100>, 82*724ba675SRob Herring <0x4011000 0x2a0>, /* 21 Tx channels */ 83*724ba675SRob Herring <0x4012000 0x400>, /* 32 Rx channels */ 84*724ba675SRob Herring <0x4010100 0x80>, 85*724ba675SRob Herring <0x4013000 0x400>; /* 32 Rx flows */ 86*724ba675SRob Herring reg-names = "global", "txchan", "rxchan", 87*724ba675SRob Herring "txsched", "rxflow"; 88*724ba675SRob Herring }; 89*724ba675SRob Herring 90*724ba675SRob Herring}; 91*724ba675SRob Herring 92*724ba675SRob Herringnetcp: netcp@4000000 { 93*724ba675SRob Herring reg = <0x2620110 0x8>; 94*724ba675SRob Herring reg-names = "efuse"; 95*724ba675SRob Herring compatible = "ti,netcp-1.0"; 96*724ba675SRob Herring #address-cells = <1>; 97*724ba675SRob Herring #size-cells = <1>; 98*724ba675SRob Herring status = "disabled"; 99*724ba675SRob Herring power-domains = <&k2g_pds 0x0018>; 100*724ba675SRob Herring clocks = <&k2g_clks 0x0018 3>, <&k2g_clks 0x0018 8>; 101*724ba675SRob Herring clock-names = "ethss_clk", "cpts"; 102*724ba675SRob Herring 103*724ba675SRob Herring /* NetCP address range */ 104*724ba675SRob Herring ranges = <0 0x4000000 0x1000000>; 105*724ba675SRob Herring 106*724ba675SRob Herring dma-coherent; 107*724ba675SRob Herring 108*724ba675SRob Herring ti,navigator-dmas = <&dma_gbe 0>, <&dma_gbe 5>; 109*724ba675SRob Herring ti,navigator-dma-names = "netrx0", "nettx"; 110*724ba675SRob Herring 111*724ba675SRob Herring netcp-devices { 112*724ba675SRob Herring #address-cells = <1>; 113*724ba675SRob Herring #size-cells = <1>; 114*724ba675SRob Herring ranges; 115*724ba675SRob Herring gbe: gbe@200000 { 116*724ba675SRob Herring label = "netcp-gbe"; 117*724ba675SRob Herring compatible = "ti,netcp-gbe-2"; 118*724ba675SRob Herring reg = <0x200000 0x20>, <0x220000 0x20000>; 119*724ba675SRob Herring enable-ale; 120*724ba675SRob Herring tx-queue = <5>; 121*724ba675SRob Herring tx-channel = "nettx"; 122*724ba675SRob Herring cpts-rftclk-sel = <0>; 123*724ba675SRob Herring cpts-ext-ts-inputs = <8>; 124*724ba675SRob Herring 125*724ba675SRob Herring interfaces { 126*724ba675SRob Herring gbe0: interface-0 { 127*724ba675SRob Herring slave-port = <0>; 128*724ba675SRob Herring link-interface = <5>; 129*724ba675SRob Herring }; 130*724ba675SRob Herring }; 131*724ba675SRob Herring }; 132*724ba675SRob Herring }; 133*724ba675SRob Herring 134*724ba675SRob Herring netcp-interfaces { 135*724ba675SRob Herring interface-0 { 136*724ba675SRob Herring rx-channel = "netrx0"; 137*724ba675SRob Herring rx-pool = <512 12>; 138*724ba675SRob Herring tx-pool = <511 12>; 139*724ba675SRob Herring rx-queue-depth = <128 128 0 0>; 140*724ba675SRob Herring rx-buffer-size = <1518 4096 0 0>; 141*724ba675SRob Herring rx-queue = <77>; 142*724ba675SRob Herring tx-completion-queue = <78>; 143*724ba675SRob Herring efuse-mac = <1>; 144*724ba675SRob Herring netcp-gbe = <&gbe0>; 145*724ba675SRob Herring }; 146*724ba675SRob Herring }; 147*724ba675SRob Herring}; 148