1*91f16700SchasingluluAMB - AXI MBUS address decoding 2*91f16700Schasinglulu=============================== 3*91f16700Schasinglulu 4*91f16700SchasingluluAXI to M-bridge decoding unit driver for Marvell Armada 8K and 8K+ SoCs. 5*91f16700Schasinglulu 6*91f16700SchasingluluThe Runit offers a second level of address windows lookup. It is used to map 7*91f16700Schasinglulutransaction towards the CD BootROM, SPI0, SPI1 and Device bus (NOR). 8*91f16700Schasinglulu 9*91f16700SchasingluluThe Runit contains eight configurable windows. Each window defines a contiguous, 10*91f16700Schasingluluaddress space and the properties associated with that address space. 11*91f16700Schasinglulu 12*91f16700Schasinglulu:: 13*91f16700Schasinglulu 14*91f16700Schasinglulu Unit Bank ATTR 15*91f16700Schasinglulu Device-Bus DEV_BOOT_CS 0x2F 16*91f16700Schasinglulu DEV_CS0 0x3E 17*91f16700Schasinglulu DEV_CS1 0x3D 18*91f16700Schasinglulu DEV_CS2 0x3B 19*91f16700Schasinglulu DEV_CS3 0x37 20*91f16700Schasinglulu SPI-0 SPI_A_CS0 0x1E 21*91f16700Schasinglulu SPI_A_CS1 0x5E 22*91f16700Schasinglulu SPI_A_CS2 0x9E 23*91f16700Schasinglulu SPI_A_CS3 0xDE 24*91f16700Schasinglulu SPI_A_CS4 0x1F 25*91f16700Schasinglulu SPI_A_CS5 0x5F 26*91f16700Schasinglulu SPI_A_CS6 0x9F 27*91f16700Schasinglulu SPI_A_CS7 0xDF 28*91f16700Schasinglulu SPI SPI_B_CS0 0x1A 29*91f16700Schasinglulu SPI_B_CS1 0x5A 30*91f16700Schasinglulu SPI_B_CS2 0x9A 31*91f16700Schasinglulu SPI_B_CS3 0xDA 32*91f16700Schasinglulu BOOT_ROM BOOT_ROM 0x1D 33*91f16700Schasinglulu UART UART 0x01 34*91f16700Schasinglulu 35*91f16700SchasingluluMandatory functions 36*91f16700Schasinglulu------------------- 37*91f16700Schasinglulu 38*91f16700Schasinglulu- marvell_get_amb_memory_map 39*91f16700Schasinglulu Returns the AMB windows configuration and the number of windows 40*91f16700Schasinglulu 41*91f16700SchasingluluMandatory structures 42*91f16700Schasinglulu-------------------- 43*91f16700Schasinglulu 44*91f16700Schasinglulu- amb_memory_map 45*91f16700Schasinglulu Array that include the configuration of the windows. Every window/entry is a 46*91f16700Schasinglulu struct which has 2 parameters: 47*91f16700Schasinglulu 48*91f16700Schasinglulu - Base address of the window 49*91f16700Schasinglulu - Attribute of the window 50*91f16700Schasinglulu 51*91f16700SchasingluluExamples 52*91f16700Schasinglulu-------- 53*91f16700Schasinglulu 54*91f16700Schasinglulu.. code:: c 55*91f16700Schasinglulu 56*91f16700Schasinglulu struct addr_map_win amb_memory_map[] = { 57*91f16700Schasinglulu {0xf900, AMB_DEV_CS0_ID}, 58*91f16700Schasinglulu }; 59