#include <asm/io.h>
#endif
+#ifdef IOMEM
#define RK_IO_ADDRESS(x) IOMEM(0xFED00000 + x)
+#else
+#define RK_IO_ADDRESS(x) ((void __force __iomem *)(0xFED00000 + x))
+#endif
#define RK_CRU_VIRT RK_IO_ADDRESS(0x00000000)
#define RK_GRF_VIRT RK_IO_ADDRESS(0x00010000)
#define RK_DEBUG_UART_VIRT RK_IO_ADDRESS(0x00060000)
#define RK_CPU_AXI_BUS_VIRT RK_IO_ADDRESS(0x00070000)
#define RK_TIMER_VIRT RK_IO_ADDRESS(0x00080000)
+#define RK_PWM_VIRT RK_IO_ADDRESS(0x00088000)
#define RK_GIC_VIRT RK_IO_ADDRESS(0x00090000)
#define RK_BOOTRAM_VIRT RK_IO_ADDRESS(0x000a0000)
#define RK_DDR_VIRT RK_IO_ADDRESS(0x000d0000)
#define RK3036_GPIO_SIZE SZ_4K
#define RK3036_EFUSE_PHYS 0x20090000
#define RK3036_EFUSE_SIZE SZ_4K
+#define RK3036_PWM_PHYS 0x20050000
+#define RK3036_PWM_SIZE SZ_16K
#define RK312X_IMEM_PHYS RK3036_IMEM_PHYS
#define RK312X_IMEM_SIZE RK3036_IMEM_SIZE
#define RK312X_GPIO0_PHYS RK3036_GPIO0_PHYS
#define RK312X_GPIO1_PHYS RK3036_GPIO1_PHYS
#define RK312X_GPIO2_PHYS RK3036_GPIO2_PHYS
+#define RK312X_GPIO3_PHYS 0x20088000
#define RK312X_GPIO_SIZE RK3036_GPIO_SIZE
#define RK312X_EFUSE_PHYS RK3036_EFUSE_PHYS
#define RK312X_EFUSE_SIZE RK3036_EFUSE_SIZE
+#define RK312X_PMU_PHYS 0x100a0000
+#define RK312X_PMU_SIZE SZ_64K
+#define RK312X_PWM_PHYS 0x20050000
+#define RK312X_PWM_SIZE SZ_16K
+
+#define RK3228_IMEM_PHYS RK3036_IMEM_PHYS
+#define RK3228_IMEM_SIZE SZ_32K
+#define RK3228_ROM_PHYS RK3036_ROM_PHYS
+#define RK3228_ROM_SIZE RK3036_ROM_SIZE
+#define RK3228_CPU_AXI_BUS_PHYS 0x31000000
+#define RK3228_CPU_AXI_BUS_SIZE SZ_32K
+#define RK3228_GIC_DIST_PHYS 0x32011000
+#define RK3228_GIC_DIST_SIZE SZ_4K
+#define RK3228_GIC_CPU_PHYS 0x32012000
+#define RK3228_GIC_CPU_SIZE SZ_4K
+#define RK3228_CRU_PHYS 0x110e0000
+#define RK3228_CRU_SIZE SZ_4K
+#define RK3228_DDR_PCTL_PHYS 0x11200000
+#define RK3228_DDR_PCTL_SIZE SZ_4K
+#define RK3228_GRF_PHYS 0x11000000
+#define RK3228_GRF_SIZE SZ_4K
+#define RK3228_SGRF_PHYS 0x10140000
+#define RK3228_SGRF_SIZE SZ_4K
+#define RK3228_DDR_PHY_PHYS 0x12000000
+#define RK3228_DDR_PHY_SIZE SZ_4K
+#define RK3228_TIMER_PHYS 0x110c0000
+#define RK3228_TIMER_SIZE SZ_4K
+#define RK3228_STIMER_PHYS 0x110d0000
+#define RK3228_STIMER_SIZE SZ_4K
+#define RK3228_UART0_PHYS 0x11010000
+#define RK3228_UART1_PHYS 0x11020000
+#define RK3228_UART2_PHYS 0x11030000
+#define RK3228_UART_SIZE SZ_4K
+#define RK3228_GPIO0_PHYS 0x11110000
+#define RK3228_GPIO1_PHYS 0x11120000
+#define RK3228_GPIO2_PHYS 0x11130000
+#define RK3228_GPIO3_PHYS 0x11140000
+#define RK3228_GPIO_SIZE SZ_4K
+#define RK3228_EFUSE_PHYS 0x11040000
+#define RK3228_EFUSE_SIZE SZ_4K
+#define RK3228_PWM_PHYS 0x110b0000
+#define RK3228_PWM_SIZE SZ_16K
#endif