18c2ecf20Sopenharmony_ciMarvell Prestera Switch Chip bindings 28c2ecf20Sopenharmony_ci------------------------------------- 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_ciRequired properties: 58c2ecf20Sopenharmony_ci- compatible: must be "marvell,prestera" and one of the following 68c2ecf20Sopenharmony_ci "marvell,prestera-98dx3236", 78c2ecf20Sopenharmony_ci "marvell,prestera-98dx3336", 88c2ecf20Sopenharmony_ci "marvell,prestera-98dx4251", 98c2ecf20Sopenharmony_ci- reg: address and length of the register set for the device. 108c2ecf20Sopenharmony_ci- interrupts: interrupt for the device 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ciOptional properties: 138c2ecf20Sopenharmony_ci- dfx: phandle reference to the "DFX Server" node 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ciExample: 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ciswitch { 188c2ecf20Sopenharmony_ci compatible = "simple-bus"; 198c2ecf20Sopenharmony_ci #address-cells = <1>; 208c2ecf20Sopenharmony_ci #size-cells = <1>; 218c2ecf20Sopenharmony_ci ranges = <0 MBUS_ID(0x03, 0x00) 0 0x100000>; 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci packet-processor@0 { 248c2ecf20Sopenharmony_ci compatible = "marvell,prestera-98dx3236", "marvell,prestera"; 258c2ecf20Sopenharmony_ci reg = <0 0x4000000>; 268c2ecf20Sopenharmony_ci interrupts = <33>, <34>, <35>; 278c2ecf20Sopenharmony_ci dfx = <&dfx>; 288c2ecf20Sopenharmony_ci }; 298c2ecf20Sopenharmony_ci}; 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_ciDFX Server bindings 328c2ecf20Sopenharmony_ci------------------- 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_ciRequired properties: 358c2ecf20Sopenharmony_ci- compatible: must be "marvell,dfx-server", "simple-bus" 368c2ecf20Sopenharmony_ci- ranges: describes the address mapping of a memory-mapped bus. 378c2ecf20Sopenharmony_ci- reg: address and length of the register set for the device. 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ciExample: 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_cidfx-server { 428c2ecf20Sopenharmony_ci compatible = "marvell,dfx-server", "simple-bus"; 438c2ecf20Sopenharmony_ci #address-cells = <1>; 448c2ecf20Sopenharmony_ci #size-cells = <1>; 458c2ecf20Sopenharmony_ci ranges = <0 MBUS_ID(0x08, 0x00) 0 0x100000>; 468c2ecf20Sopenharmony_ci reg = <MBUS_ID(0x08, 0x00) 0 0x100000>; 478c2ecf20Sopenharmony_ci}; 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ciMarvell Prestera SwitchDev bindings 508c2ecf20Sopenharmony_ci----------------------------------- 518c2ecf20Sopenharmony_ciOptional properties: 528c2ecf20Sopenharmony_ci- compatible: must be "marvell,prestera" 538c2ecf20Sopenharmony_ci- base-mac-provider: describes handle to node which provides base mac address, 548c2ecf20Sopenharmony_ci might be a static base mac address or nvme cell provider. 558c2ecf20Sopenharmony_ci 568c2ecf20Sopenharmony_ciExample: 578c2ecf20Sopenharmony_ci 588c2ecf20Sopenharmony_cieeprom_mac_addr: eeprom-mac-addr { 598c2ecf20Sopenharmony_ci compatible = "eeprom,mac-addr-cell"; 608c2ecf20Sopenharmony_ci status = "okay"; 618c2ecf20Sopenharmony_ci 628c2ecf20Sopenharmony_ci nvmem = <&eeprom_at24>; 638c2ecf20Sopenharmony_ci}; 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ciprestera { 668c2ecf20Sopenharmony_ci compatible = "marvell,prestera"; 678c2ecf20Sopenharmony_ci status = "okay"; 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ci base-mac-provider = <&eeprom_mac_addr>; 708c2ecf20Sopenharmony_ci}; 718c2ecf20Sopenharmony_ci 728c2ecf20Sopenharmony_ciThe current implementation of Prestera Switchdev PCI interface driver requires 738c2ecf20Sopenharmony_cithat BAR2 is assigned to 0xf6000000 as base address from the PCI IO range: 748c2ecf20Sopenharmony_ci 758c2ecf20Sopenharmony_ci&cp0_pcie0 { 768c2ecf20Sopenharmony_ci ranges = <0x81000000 0x0 0xfb000000 0x0 0xfb000000 0x0 0xf0000 778c2ecf20Sopenharmony_ci 0x82000000 0x0 0xf6000000 0x0 0xf6000000 0x0 0x2000000 788c2ecf20Sopenharmony_ci 0x82000000 0x0 0xf9000000 0x0 0xf9000000 0x0 0x100000>; 798c2ecf20Sopenharmony_ci phys = <&cp0_comphy0 0>; 808c2ecf20Sopenharmony_ci status = "okay"; 818c2ecf20Sopenharmony_ci}; 82