1*f0a3f349SLokesh Vutla/* 2*f0a3f349SLokesh Vutla * Device Tree Source for K2G Netcp driver 3*f0a3f349SLokesh Vutla * 4*f0a3f349SLokesh Vutla * Copyright 2015 Texas Instruments, Inc. 5*f0a3f349SLokesh Vutla * 6*f0a3f349SLokesh Vutla * This program is free software; you can redistribute it and/or modify 7*f0a3f349SLokesh Vutla * it under the terms of the GNU General Public License version 2 as 8*f0a3f349SLokesh Vutla * published by the Free Software Foundation. 9*f0a3f349SLokesh Vutla */ 10*f0a3f349SLokesh Vutla 11*f0a3f349SLokesh Vutlaqmss: qmss@4020000 { 12*f0a3f349SLokesh Vutla compatible = "ti,keystone-navigator-qmss-l"; 13*f0a3f349SLokesh Vutla dma-coherent; 14*f0a3f349SLokesh Vutla #address-cells = <1>; 15*f0a3f349SLokesh Vutla #size-cells = <1>; 16*f0a3f349SLokesh Vutla /* power-domains = <&k2g_pds K2G_DEV_NSS0>; */ 17*f0a3f349SLokesh Vutla /* clocks = <&k2g_clks K2G_DEV_NSS0 K2G_DEV_NSS_VCLK>; */ 18*f0a3f349SLokesh Vutla clock-names = "nss_vclk"; 19*f0a3f349SLokesh Vutla ranges; 20*f0a3f349SLokesh Vutla queue-range = <0 0x80>; 21*f0a3f349SLokesh Vutla linkram0 = <0x4020000 0x7ff>; 22*f0a3f349SLokesh Vutla 23*f0a3f349SLokesh Vutla qmgrs { 24*f0a3f349SLokesh Vutla #address-cells = <1>; 25*f0a3f349SLokesh Vutla #size-cells = <1>; 26*f0a3f349SLokesh Vutla ranges; 27*f0a3f349SLokesh Vutla qmgr0 { 28*f0a3f349SLokesh Vutla managed-queues = <0 0x80>; 29*f0a3f349SLokesh Vutla reg = <0x4100000 0x800>, 30*f0a3f349SLokesh Vutla <0x4040000 0x100>, 31*f0a3f349SLokesh Vutla <0x4080000 0x800>, 32*f0a3f349SLokesh Vutla <0x40c0000 0x800>; 33*f0a3f349SLokesh Vutla reg-names = "peek", "config", 34*f0a3f349SLokesh Vutla "region", "push"; 35*f0a3f349SLokesh Vutla }; 36*f0a3f349SLokesh Vutla 37*f0a3f349SLokesh Vutla }; 38*f0a3f349SLokesh Vutla queue-pools { 39*f0a3f349SLokesh Vutla qpend { 40*f0a3f349SLokesh Vutla qpend-0 { 41*f0a3f349SLokesh Vutla qrange = <77 8>; 42*f0a3f349SLokesh Vutla interrupts =<0 308 0xf04 0 309 0xf04 0 310 0xf04 43*f0a3f349SLokesh Vutla 0 311 0xf04 0 312 0xf04 0 313 0xf04 44*f0a3f349SLokesh Vutla 0 314 0xf04 0 315 0xf04>; 45*f0a3f349SLokesh Vutla qalloc-by-id; 46*f0a3f349SLokesh Vutla }; 47*f0a3f349SLokesh Vutla }; 48*f0a3f349SLokesh Vutla general-purpose { 49*f0a3f349SLokesh Vutla gp-0 { 50*f0a3f349SLokesh Vutla qrange = <112 8>; 51*f0a3f349SLokesh Vutla }; 52*f0a3f349SLokesh Vutla netcp-tx { 53*f0a3f349SLokesh Vutla qrange = <5 8>; 54*f0a3f349SLokesh Vutla qalloc-by-id; 55*f0a3f349SLokesh Vutla }; 56*f0a3f349SLokesh Vutla }; 57*f0a3f349SLokesh Vutla }; 58*f0a3f349SLokesh Vutla 59*f0a3f349SLokesh Vutla descriptor-regions { 60*f0a3f349SLokesh Vutla #address-cells = <1>; 61*f0a3f349SLokesh Vutla #size-cells = <1>; 62*f0a3f349SLokesh Vutla ranges; 63*f0a3f349SLokesh Vutla region-12 { 64*f0a3f349SLokesh Vutla id = <12>; 65*f0a3f349SLokesh Vutla region-spec = <1023 128>; /* num_desc desc_size */ 66*f0a3f349SLokesh Vutla link-index = <0x400>; 67*f0a3f349SLokesh Vutla }; 68*f0a3f349SLokesh Vutla }; 69*f0a3f349SLokesh Vutla}; /* qmss */ 70*f0a3f349SLokesh Vutla 71*f0a3f349SLokesh Vutlaknav_dmas: knav_dmas@0 { 72*f0a3f349SLokesh Vutla compatible = "ti,keystone-navigator-dma"; 73*f0a3f349SLokesh Vutla #address-cells = <1>; 74*f0a3f349SLokesh Vutla #size-cells = <1>; 75*f0a3f349SLokesh Vutla /* power-domains = <&k2g_pds K2G_DEV_NSS0>; */ 76*f0a3f349SLokesh Vutla /* clocks = <&k2g_clks K2G_DEV_NSS0 K2G_DEV_NSS_VCLK>; */ 77*f0a3f349SLokesh Vutla clock-names = "nss_vclk"; 78*f0a3f349SLokesh Vutla ranges; 79*f0a3f349SLokesh Vutla ti,navigator-cloud-address = <0x40c0000 0x40c0000 0x40c0000 0x40c0000>; 80*f0a3f349SLokesh Vutla 81*f0a3f349SLokesh Vutla dma_gbe: dma_gbe@0 { 82*f0a3f349SLokesh Vutla reg = <0x4010000 0x100>, 83*f0a3f349SLokesh Vutla <0x4011000 0x2a0>, /* 21 Tx channels */ 84*f0a3f349SLokesh Vutla <0x4012000 0x400>, /* 32 Rx channels */ 85*f0a3f349SLokesh Vutla <0x4010100 0x80>, 86*f0a3f349SLokesh Vutla <0x4013000 0x400>; /* 32 Rx flows */ 87*f0a3f349SLokesh Vutla reg-names = "global", "txchan", "rxchan", 88*f0a3f349SLokesh Vutla "txsched", "rxflow"; 89*f0a3f349SLokesh Vutla }; 90*f0a3f349SLokesh Vutla 91*f0a3f349SLokesh Vutla}; 92*f0a3f349SLokesh Vutla 93*f0a3f349SLokesh Vutlagbe_subsys: subsys@4200000 { 94*f0a3f349SLokesh Vutla compatible = "syscon"; 95*f0a3f349SLokesh Vutla reg = <0x4200000 0x100>; 96*f0a3f349SLokesh Vutla}; 97*f0a3f349SLokesh Vutla 98*f0a3f349SLokesh Vutlanetcp: netcp@4000000 { 99*f0a3f349SLokesh Vutla reg = <0x2620110 0x8>; 100*f0a3f349SLokesh Vutla reg-names = "efuse"; 101*f0a3f349SLokesh Vutla compatible = "ti,netcp-1.0"; 102*f0a3f349SLokesh Vutla #address-cells = <1>; 103*f0a3f349SLokesh Vutla #size-cells = <1>; 104*f0a3f349SLokesh Vutla /* power-domains = <&k2g_pds K2G_DEV_NSS0>; */ 105*f0a3f349SLokesh Vutla /* clocks = <&k2g_clks K2G_DEV_NSS0 K2G_DEV_NSS_ESW_CLK>; */ 106*f0a3f349SLokesh Vutla clock-names = "ethss_clk"; 107*f0a3f349SLokesh Vutla 108*f0a3f349SLokesh Vutla /* NetCP address range */ 109*f0a3f349SLokesh Vutla ranges = <0 0x4000000 0x1000000>; 110*f0a3f349SLokesh Vutla 111*f0a3f349SLokesh Vutla dma-coherent; 112*f0a3f349SLokesh Vutla 113*f0a3f349SLokesh Vutla ti,navigator-dmas = <&dma_gbe 0>, <&dma_gbe 5>; 114*f0a3f349SLokesh Vutla ti,navigator-dma-names = "netrx0", "nettx"; 115*f0a3f349SLokesh Vutla 116*f0a3f349SLokesh Vutla netcp-devices { 117*f0a3f349SLokesh Vutla #address-cells = <1>; 118*f0a3f349SLokesh Vutla #size-cells = <1>; 119*f0a3f349SLokesh Vutla ranges; 120*f0a3f349SLokesh Vutla gbe@200000 { 121*f0a3f349SLokesh Vutla label = "netcp-gbe"; 122*f0a3f349SLokesh Vutla compatible = "ti,netcp-gbe-2"; 123*f0a3f349SLokesh Vutla syscon-subsys = <&gbe_subsys>; 124*f0a3f349SLokesh Vutla reg = <0x200100 0xe00>, <0x220000 0x20000>; 125*f0a3f349SLokesh Vutla /* enable-ale; */ 126*f0a3f349SLokesh Vutla tx-queue = <5>; 127*f0a3f349SLokesh Vutla tx-channel = "nettx"; 128*f0a3f349SLokesh Vutla 129*f0a3f349SLokesh Vutla interfaces { 130*f0a3f349SLokesh Vutla gbe0: interface-0 { 131*f0a3f349SLokesh Vutla slave-port = <0>; 132*f0a3f349SLokesh Vutla link-interface = <5>; 133*f0a3f349SLokesh Vutla }; 134*f0a3f349SLokesh Vutla }; 135*f0a3f349SLokesh Vutla }; 136*f0a3f349SLokesh Vutla }; 137*f0a3f349SLokesh Vutla 138*f0a3f349SLokesh Vutla netcp-interfaces { 139*f0a3f349SLokesh Vutla interface-0 { 140*f0a3f349SLokesh Vutla rx-channel = "netrx0"; 141*f0a3f349SLokesh Vutla rx-pool = <512 12>; 142*f0a3f349SLokesh Vutla tx-pool = <511 12>; 143*f0a3f349SLokesh Vutla rx-queue-depth = <128 128 0 0>; 144*f0a3f349SLokesh Vutla rx-buffer-size = <1518 4096 0 0>; 145*f0a3f349SLokesh Vutla rx-queue = <77>; 146*f0a3f349SLokesh Vutla tx-completion-queue = <78>; 147*f0a3f349SLokesh Vutla efuse-mac = <1>; 148*f0a3f349SLokesh Vutla netcp-gbe = <&gbe0>; 149*f0a3f349SLokesh Vutla }; 150*f0a3f349SLokesh Vutla }; 151*f0a3f349SLokesh Vutla}; 152