MIPS: Support 36-bit iomem on 32-bit Au1x00
authorpascal@pabr.org <pascal@pabr.org>
Sun, 3 Jan 2010 12:39:12 +0000 (13:39 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Sat, 27 Feb 2010 11:53:17 +0000 (12:53 +0100)
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.

To: linux-mips@linux-mips.org
Patchwork: http://patchwork.linux-mips.org/patch/814/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/Kconfig
arch/mips/include/asm/mach-au1x00/au1000.h

index db0a85355be7e9af90fa992b8ff8430356b6c46a..591ca0cd4c2471a70841accab5f45a20a2d29a02 100644 (file)
@@ -1725,6 +1725,9 @@ config SB1_PASS_2_1_WORKAROUNDS
 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"
index 088c8e0f43bbadd30c39e27f8c70577493a90774..2805fc56484d4b3cf57a3679c50c61bb85d277ba 100644 (file)
@@ -1659,7 +1659,7 @@ enum soc_au1200_ints {
 #define IOPORT_RESOURCE_START  0x00001000      /* skip legacy probing */
 #define IOPORT_RESOURCE_END    0xffffffff
 #define IOMEM_RESOURCE_START   0x10000000
-#define IOMEM_RESOURCE_END     0xffffffff
+#define IOMEM_RESOURCE_END     0xfffffffffULL
 
 #else /* Au1000 and Au1100 and Au1200 */
 
@@ -1667,7 +1667,7 @@ enum soc_au1200_ints {
 #define IOPORT_RESOURCE_START  0x10000000
 #define IOPORT_RESOURCE_END    0xffffffff
 #define IOMEM_RESOURCE_START   0x10000000
-#define IOMEM_RESOURCE_END     0xffffffff
+#define IOMEM_RESOURCE_END     0xfffffffffULL
 
 #define PCI_IO_START   0
 #define PCI_IO_END     0