1a2847172SGrzegorz JaszczykMarvell IO WIN address decoding bindings 2a2847172SGrzegorz Jaszczyk======================================== 3a2847172SGrzegorz Jaszczyk 4*47147013SDavid HorstmannIO Window configuration driver (2nd stage address translation) for Marvell Armada 8K and 8K+ SoCs. 5a2847172SGrzegorz Jaszczyk 6a2847172SGrzegorz JaszczykThe IO WIN includes a description of the address decoding configuration. 7a2847172SGrzegorz Jaszczyk 8a2847172SGrzegorz JaszczykTransactions that are decoded by CCU windows as IO peripheral, have an additional 9a2847172SGrzegorz Jaszczyklayer of decoding. This additional address decoding layer defines one of the 10a2847172SGrzegorz Jaszczykfollowing targets: 11a2847172SGrzegorz Jaszczyk 12a2847172SGrzegorz Jaszczyk- **0x0** = BootRom 13a2847172SGrzegorz Jaszczyk- **0x1** = STM (Serial Trace Macro-cell, a programmer's port into trace stream) 14a2847172SGrzegorz Jaszczyk- **0x2** = SPI direct access 15a2847172SGrzegorz Jaszczyk- **0x3** = PCIe registers 16a2847172SGrzegorz Jaszczyk- **0x4** = MCI Port 17a2847172SGrzegorz Jaszczyk- **0x5** = PCIe port 18a2847172SGrzegorz Jaszczyk 19a2847172SGrzegorz JaszczykMandatory functions 20a2847172SGrzegorz Jaszczyk------------------- 21a2847172SGrzegorz Jaszczyk 22a2847172SGrzegorz Jaszczyk- marvell_get_io_win_memory_map 23a2847172SGrzegorz Jaszczyk Returns the IO windows configuration and the number of windows of the 24a2847172SGrzegorz Jaszczyk specific AP. 25a2847172SGrzegorz Jaszczyk 26a2847172SGrzegorz JaszczykMandatory structures 27a2847172SGrzegorz Jaszczyk-------------------- 28a2847172SGrzegorz Jaszczyk 29a2847172SGrzegorz Jaszczyk- io_win_memory_map 30a2847172SGrzegorz Jaszczyk Array that include the configuration of the windows. Every window/entry is 31a2847172SGrzegorz Jaszczyk a struct which has 3 parameters: 32a2847172SGrzegorz Jaszczyk 33a2847172SGrzegorz Jaszczyk - Base address of the window 34a2847172SGrzegorz Jaszczyk - Size of the window 35a2847172SGrzegorz Jaszczyk - Target-ID of the window 36a2847172SGrzegorz Jaszczyk 37a2847172SGrzegorz JaszczykExample 38a2847172SGrzegorz Jaszczyk------- 39a2847172SGrzegorz Jaszczyk 40a2847172SGrzegorz Jaszczyk.. code:: c 41a2847172SGrzegorz Jaszczyk 42a2847172SGrzegorz Jaszczyk struct addr_map_win io_win_memory_map[] = { 43a2847172SGrzegorz Jaszczyk {0x00000000fe000000, 0x000000001f00000, PCIE_PORT_TID}, /* PCIe window 31Mb for PCIe port*/ 44a2847172SGrzegorz Jaszczyk {0x00000000ffe00000, 0x000000000100000, PCIE_REGS_TID}, /* PCI-REG window 64Kb for PCIe-reg*/ 45a2847172SGrzegorz Jaszczyk {0x00000000f6000000, 0x000000000100000, MCIPHY_TID}, /* MCI window 1Mb for PHY-reg*/ 46a2847172SGrzegorz Jaszczyk }; 47