1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- TI SoC Ethernet Switch Controller Device Tree Bindings
- ------------------------------------------------------
- Required properties:
- - compatible : Should be "ti,cpsw"
- - reg : physical base address and size of the cpsw
- registers map
- - interrupts : property with a value describing the interrupt
- number
- - interrupt-parent : The parent interrupt controller
- - cpdma_channels : Specifies number of channels in CPDMA
- - ale_entries : Specifies No of entries ALE can hold
- - bd_ram_size : Specifies internal descriptor RAM size
- - rx_descs : Specifies number of Rx descriptors
- - mac_control : Specifies Default MAC control register content
- for the specific platform
- - slaves : Specifies number for slaves
- - cpts_active_slave : Specifies the slave to use for time stamping
- - cpts_clock_mult : Numerator to convert input clock ticks into nanoseconds
- - cpts_clock_shift : Denominator to convert input clock ticks into nanoseconds
- - phy_id : Specifies slave phy id
- - mac-address : Specifies slave MAC address
- Optional properties:
- - ti,hwmods : Must be "cpgmac0"
- - no_bd_ram : Must be 0 or 1
- - dual_emac : Specifies Switch to act as Dual EMAC
- - dual_emac_res_vlan : Specifies VID to be used to segregate the ports
- Note: "ti,hwmods" field is used to fetch the base address and irq
- resources from TI, omap hwmod data base during device registration.
- Future plan is to migrate hwmod data base contents into device tree
- blob so that, all the required data will be used from device tree dts
- file.
- Examples:
- mac: ethernet@4A100000 {
- compatible = "ti,cpsw";
- reg = <0x4A100000 0x1000>;
- interrupts = <55 0x4>;
- interrupt-parent = <&intc>;
- cpdma_channels = <8>;
- ale_entries = <1024>;
- bd_ram_size = <0x2000>;
- no_bd_ram = <0>;
- rx_descs = <64>;
- mac_control = <0x20>;
- slaves = <2>;
- cpts_active_slave = <0>;
- cpts_clock_mult = <0x80000000>;
- cpts_clock_shift = <29>;
- cpsw_emac0: slave@0 {
- phy_id = <&davinci_mdio>, <0>;
- /* Filled in by U-Boot */
- mac-address = [ 00 00 00 00 00 00 ];
- };
- cpsw_emac1: slave@1 {
- phy_id = <&davinci_mdio>, <1>;
- /* Filled in by U-Boot */
- mac-address = [ 00 00 00 00 00 00 ];
- };
- };
- (or)
- mac: ethernet@4A100000 {
- compatible = "ti,cpsw";
- ti,hwmods = "cpgmac0";
- cpdma_channels = <8>;
- ale_entries = <1024>;
- bd_ram_size = <0x2000>;
- no_bd_ram = <0>;
- rx_descs = <64>;
- mac_control = <0x20>;
- slaves = <2>;
- cpts_active_slave = <0>;
- cpts_clock_mult = <0x80000000>;
- cpts_clock_shift = <29>;
- cpsw_emac0: slave@0 {
- phy_id = <&davinci_mdio>, <0>;
- /* Filled in by U-Boot */
- mac-address = [ 00 00 00 00 00 00 ];
- };
- cpsw_emac1: slave@1 {
- phy_id = <&davinci_mdio>, <1>;
- /* Filled in by U-Boot */
- mac-address = [ 00 00 00 00 00 00 ];
- };
- };
|