12eb32b0aSMugunthan V NTI SoC Ethernet Switch Controller Device Tree Bindings 22eb32b0aSMugunthan V N------------------------------------------------------ 32eb32b0aSMugunthan V N 42eb32b0aSMugunthan V NRequired properties: 52eb32b0aSMugunthan V N- compatible : Should be "ti,cpsw" 62eb32b0aSMugunthan V N- reg : physical base address and size of the cpsw 72eb32b0aSMugunthan V N registers map 82eb32b0aSMugunthan V N- interrupts : property with a value describing the interrupt 92eb32b0aSMugunthan V N number 102eb32b0aSMugunthan V N- interrupt-parent : The parent interrupt controller 112eb32b0aSMugunthan V N- cpdma_channels : Specifies number of channels in CPDMA 122eb32b0aSMugunthan V N- ale_entries : Specifies No of entries ALE can hold 132eb32b0aSMugunthan V N- bd_ram_size : Specifies internal descriptor RAM size 142eb32b0aSMugunthan V N- rx_descs : Specifies number of Rx descriptors 152eb32b0aSMugunthan V N- mac_control : Specifies Default MAC control register content 162eb32b0aSMugunthan V N for the specific platform 172eb32b0aSMugunthan V N- slaves : Specifies number for slaves 18e86ac13bSMugunthan V N- active_slave : Specifies the slave to use for time stamping, 19e86ac13bSMugunthan V N ethtool and SIOCGMIIPHY 2000ab94eeSRichard Cochran- cpts_clock_mult : Numerator to convert input clock ticks into nanoseconds 2100ab94eeSRichard Cochran- cpts_clock_shift : Denominator to convert input clock ticks into nanoseconds 222eb32b0aSMugunthan V N 232eb32b0aSMugunthan V NOptional properties: 242eb32b0aSMugunthan V N- ti,hwmods : Must be "cpgmac0" 252eb32b0aSMugunthan V N- no_bd_ram : Must be 0 or 1 26d9ba8f9eSMugunthan V N- dual_emac : Specifies Switch to act as Dual EMAC 27470d1474SMugunthan V N 28470d1474SMugunthan V NSlave Properties: 29470d1474SMugunthan V NRequired properties: 30470d1474SMugunthan V N- phy_id : Specifies slave phy id 31e8f08ee0SSergei Shtylyov- phy-mode : See ethernet.txt file in the same directory 32470d1474SMugunthan V N 33470d1474SMugunthan V NOptional properties: 34d9ba8f9eSMugunthan V N- dual_emac_res_vlan : Specifies VID to be used to segregate the ports 35*e4a9839bSMarkus Pargmann- mac-address : See ethernet.txt file in the same directory 362eb32b0aSMugunthan V N 372eb32b0aSMugunthan V NNote: "ti,hwmods" field is used to fetch the base address and irq 382eb32b0aSMugunthan V Nresources from TI, omap hwmod data base during device registration. 392eb32b0aSMugunthan V NFuture plan is to migrate hwmod data base contents into device tree 402eb32b0aSMugunthan V Nblob so that, all the required data will be used from device tree dts 412eb32b0aSMugunthan V Nfile. 422eb32b0aSMugunthan V N 432eb32b0aSMugunthan V NExamples: 442eb32b0aSMugunthan V N 452eb32b0aSMugunthan V N mac: ethernet@4A100000 { 462eb32b0aSMugunthan V N compatible = "ti,cpsw"; 472eb32b0aSMugunthan V N reg = <0x4A100000 0x1000>; 482eb32b0aSMugunthan V N interrupts = <55 0x4>; 492eb32b0aSMugunthan V N interrupt-parent = <&intc>; 50e07b94f1SMugunthan V N cpdma_channels = <8>; 51e07b94f1SMugunthan V N ale_entries = <1024>; 52e07b94f1SMugunthan V N bd_ram_size = <0x2000>; 53e07b94f1SMugunthan V N no_bd_ram = <0>; 54e07b94f1SMugunthan V N rx_descs = <64>; 55e07b94f1SMugunthan V N mac_control = <0x20>; 56e07b94f1SMugunthan V N slaves = <2>; 57e86ac13bSMugunthan V N active_slave = <0>; 5800ab94eeSRichard Cochran cpts_clock_mult = <0x80000000>; 5900ab94eeSRichard Cochran cpts_clock_shift = <29>; 60e07b94f1SMugunthan V N cpsw_emac0: slave@0 { 61549985eeSRichard Cochran phy_id = <&davinci_mdio>, <0>; 62c5ceea7aSMugunthan V N phy-mode = "rgmii-txid"; 63e07b94f1SMugunthan V N /* Filled in by U-Boot */ 64e07b94f1SMugunthan V N mac-address = [ 00 00 00 00 00 00 ]; 652eb32b0aSMugunthan V N }; 66e07b94f1SMugunthan V N cpsw_emac1: slave@1 { 67549985eeSRichard Cochran phy_id = <&davinci_mdio>, <1>; 68c5ceea7aSMugunthan V N phy-mode = "rgmii-txid"; 69e07b94f1SMugunthan V N /* Filled in by U-Boot */ 70e07b94f1SMugunthan V N mac-address = [ 00 00 00 00 00 00 ]; 712eb32b0aSMugunthan V N }; 722eb32b0aSMugunthan V N }; 732eb32b0aSMugunthan V N 742eb32b0aSMugunthan V N(or) 752eb32b0aSMugunthan V N mac: ethernet@4A100000 { 762eb32b0aSMugunthan V N compatible = "ti,cpsw"; 772eb32b0aSMugunthan V N ti,hwmods = "cpgmac0"; 78e07b94f1SMugunthan V N cpdma_channels = <8>; 79e07b94f1SMugunthan V N ale_entries = <1024>; 80e07b94f1SMugunthan V N bd_ram_size = <0x2000>; 81e07b94f1SMugunthan V N no_bd_ram = <0>; 82e07b94f1SMugunthan V N rx_descs = <64>; 83e07b94f1SMugunthan V N mac_control = <0x20>; 84e07b94f1SMugunthan V N slaves = <2>; 85e86ac13bSMugunthan V N active_slave = <0>; 8600ab94eeSRichard Cochran cpts_clock_mult = <0x80000000>; 8700ab94eeSRichard Cochran cpts_clock_shift = <29>; 88e07b94f1SMugunthan V N cpsw_emac0: slave@0 { 89549985eeSRichard Cochran phy_id = <&davinci_mdio>, <0>; 90c5ceea7aSMugunthan V N phy-mode = "rgmii-txid"; 91e07b94f1SMugunthan V N /* Filled in by U-Boot */ 92e07b94f1SMugunthan V N mac-address = [ 00 00 00 00 00 00 ]; 932eb32b0aSMugunthan V N }; 94e07b94f1SMugunthan V N cpsw_emac1: slave@1 { 95549985eeSRichard Cochran phy_id = <&davinci_mdio>, <1>; 96c5ceea7aSMugunthan V N phy-mode = "rgmii-txid"; 97e07b94f1SMugunthan V N /* Filled in by U-Boot */ 98e07b94f1SMugunthan V N mac-address = [ 00 00 00 00 00 00 ]; 992eb32b0aSMugunthan V N }; 1002eb32b0aSMugunthan V N }; 101