Message ID | 1320346215-21024-1-git-send-email-timur@freescale.com (mailing list archive) |
---|---|
State | Rejected, archived |
Headers | show |
On Nov 3, 2011, at 1:50 PM, Timur Tabi wrote: > Kconfig option PHYS_64BIT sets the size of phys_addr_t to 64 bits, which > allows support for a 36-bit physical address space. With this option, the > kernel can support more than 2GB of RAM, but the larger address size > impacts performance slightly. > > By including "select PHYS_64BIT" in the Kconfig for a particular board, > that option is forced enabled, and it becomes impossible to create a 32-bit > kernel. Instead, we should depend on the defconfig to enable this option. > We still build a 36-bit kernel by default, and we also allow users to build > 32-bit kernels if they really want. > > Signed-off-by: Timur Tabi <timur@freescale.com> > --- > arch/powerpc/configs/corenet32_smp_defconfig | 1 + > arch/powerpc/platforms/85xx/Kconfig | 5 ----- > 2 files changed, 1 insertions(+), 5 deletions(-) Nak. For certain boards like P204x-P50xx we only support a 36-bit address map. - k
Kumar Gala wrote:
> Nak. For certain boards like P204x-P50xx we only support a 36-bit address map.
I understand that we don't supply a 32-bit U-boot or device tree, but is
there any hard requirement that we force 36-bit kernels? If it's really a
requirement, then adding to the Kconfig of each board doesn't sound like
the best way to enforce this.
On Nov 3, 2011, at 2:01 PM, Timur Tabi wrote: > Kumar Gala wrote: >> Nak. For certain boards like P204x-P50xx we only support a 36-bit address map. > > I understand that we don't supply a 32-bit U-boot or device tree, but is > there any hard requirement that we force 36-bit kernels? If it's really a > requirement, then adding to the Kconfig of each board doesn't sound like > the best way to enforce this. Yes, there is a requirement. Why would we allow you to build support for a board and not have it boot? The Kconfig is exactly how to enforce this. - k
diff --git a/arch/powerpc/configs/corenet32_smp_defconfig b/arch/powerpc/configs/corenet32_smp_defconfig index 4311d02..819c06e 100644 --- a/arch/powerpc/configs/corenet32_smp_defconfig +++ b/arch/powerpc/configs/corenet32_smp_defconfig @@ -1,4 +1,5 @@ CONFIG_PPC_85xx=y +CONFIG_PHYS_64BIT=y CONFIG_SMP=y CONFIG_NR_CPUS=8 CONFIG_EXPERIMENTAL=y diff --git a/arch/powerpc/platforms/85xx/Kconfig b/arch/powerpc/platforms/85xx/Kconfig index 12f5932..6dba779 100644 --- a/arch/powerpc/platforms/85xx/Kconfig +++ b/arch/powerpc/platforms/85xx/Kconfig @@ -80,7 +80,6 @@ config P1010_RDB config P1022_DS bool "Freescale P1022 DS" select DEFAULT_UIMAGE - select PHYS_64BIT # The DTS has 36-bit addresses select SWIOTLB help This option enables support for the Freescale P1022DS reference board. @@ -175,7 +174,6 @@ config P2040_RDB bool "Freescale P2040 RDB" select DEFAULT_UIMAGE select PPC_E500MC - select PHYS_64BIT select SWIOTLB select MPC8xxx_GPIO select HAS_RAPIDIO @@ -187,7 +185,6 @@ config P3041_DS bool "Freescale P3041 DS" select DEFAULT_UIMAGE select PPC_E500MC - select PHYS_64BIT select SWIOTLB select MPC8xxx_GPIO select HAS_RAPIDIO @@ -199,7 +196,6 @@ config P4080_DS bool "Freescale P4080 DS" select DEFAULT_UIMAGE select PPC_E500MC - select PHYS_64BIT select SWIOTLB select MPC8xxx_GPIO select HAS_RAPIDIO @@ -214,7 +210,6 @@ config P5020_DS select DEFAULT_UIMAGE select E500 select PPC_E500MC - select PHYS_64BIT select SWIOTLB select MPC8xxx_GPIO select HAS_RAPIDIO
Kconfig option PHYS_64BIT sets the size of phys_addr_t to 64 bits, which allows support for a 36-bit physical address space. With this option, the kernel can support more than 2GB of RAM, but the larger address size impacts performance slightly. By including "select PHYS_64BIT" in the Kconfig for a particular board, that option is forced enabled, and it becomes impossible to create a 32-bit kernel. Instead, we should depend on the defconfig to enable this option. We still build a 36-bit kernel by default, and we also allow users to build 32-bit kernels if they really want. Signed-off-by: Timur Tabi <timur@freescale.com> --- arch/powerpc/configs/corenet32_smp_defconfig | 1 + arch/powerpc/platforms/85xx/Kconfig | 5 ----- 2 files changed, 1 insertions(+), 5 deletions(-)