Hi, I believe these changes are needed on Alchemy SoCs in order to use iomem above 4G with the usual platform_device machinery: - Set CONFIG_ARCH_PHYS_ADDR_T_64BIT to make resource_size_t 64-bit. - Increase IOMEM_RESOURCE_END so that platforms can register resources. --- linux-2.6.33-rc2/arch/mips/Kconfig.orig 2009-12-30 18:06:02.000000000 +0100 +++ linux-2.6.33-rc2/arch/mips/Kconfig 2009-12-30 22:05:38.000000000 +0100 @@ -1725,6 +1725,9 @@ config 64BIT_PHYS_ADDR bool +config ARCH_PHYS_ADDR_T_64BIT + def_bool 64BIT_PHYS_ADDR + config CPU_HAS_SMARTMIPS depends on SYS_SUPPORTS_SMARTMIPS bool "Support for the SmartMIPS ASE" --- linux-2.6.33-rc2/arch/mips/include/asm/mach-au1x00/au1000.h.orig 2009-12-30 19:45:35.000000000 +0100 +++ linux-2.6.33-rc2/arch/mips/include/asm/mach-au1x00/au1000.h 2010-01-03 13:28:50.000000000 +0100 @@ -1728,7 +1728,7 @@ #define IOPORT_RESOURCE_START 0x10000000 #define IOPORT_RESOURCE_END 0xffffffff #define IOMEM_RESOURCE_START 0x10000000 -#define IOMEM_RESOURCE_END 0xffffffff +#define IOMEM_RESOURCE_END 0xfffffffffLL #define PCI_IO_START 0 #define PCI_IO_END 0