Messages in this thread Patch in this message | | | Date | Fri, 2 Dec 2011 00:33:26 -0500 (EST) | From | Nicolas Pitre <> | Subject | Re: [PATCH] arm: add default value for PHYS_OFFSET Kconfig setting |
| |
On Fri, 2 Dec 2011, Nicolas Pitre wrote:
> On Thu, 1 Dec 2011, Paul Gortmaker wrote: > > > On Thu, Dec 1, 2011 at 9:19 AM, Arnd Bergmann <arnd@arndb.de> wrote: > > > On Thursday 01 December 2011, Paul Gortmaker wrote: > > >> Commit 1b9f95f8ade9efc2bd49f0e7b9dc61a038ac3eef introduced the new > > >> Kconfig for PHYS_OFFSET but it did not specify a default value. > > >> > > >> This has the undesired side effect of breaking an implictly used > > >> trick for updating defconfigs on the fly for routine buildtesting > > >> across all arch and all platforms, i.e. > > >> > > >> cp /path/to/somedefconfig .config ; yes "" | make oldconfig > > >> > > > > > > FWIW, a better way to achieve the above is using > > > > > > make KCONFIG_ALLCONFIG=/path/to/somedefconfig listnewconfig alldefconfig > > > > > > which does not have this problem. > > > > > > Your patch looks still ok, but you might want to update your scripts > > > to be more robust. > > > > Thanks -- but on the other hand, the above use case does actually > > emulate exactly what happens when someone runs the > > "make oldconfig" and simply holds down the Enter key. (yes it > > happens probably way more than we want to know...) > > > > So, I guess what I'm trying to say is that the above "script" is > > intentionally fragile. :) As a use case, we shouldn't break it. > > Well... I took a while before replying because I'm also modifying things > around this, but those changes are good for a merge window not a -rc > period. > > Still, I don't think your patch is good, even as a temporary measure. > The fact is that we can't just pick a random default value since it is > likely to be wrong for the majority of the boards as the right answer > for this option is quite varied. So the fact that the config system > insists on your entering a proper value is actually a good thing. > > In the at91x40_defconfig case, it has CONFIG_EMBEDDED=y. If it was not > selected then you'd get CONFIG_ARM_PATCH_PHYS_VIRT=y by default and then > no CONFIG_PHYS_OFFSET would be presented. > > So the right fix here would actually consist of adding to > at91x40_defconfig either CONFIG_ARM_PATCH_PHYS_VIRT=y, or a default > value for CONFIG_PHYS_OFFSET which is the right value for that platform.
And it seems that at91x40 is the only defconfig with MMU=n, so the only option is really to provide a default CONFIG_PHYS_OFFSET. So what about this:
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index e084b7e981..a24672924f 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -222,6 +222,7 @@ config NEED_MACH_MEMORY_H config PHYS_OFFSET hex "Physical address of main memory" depends on !ARM_PATCH_PHYS_VIRT && !NEED_MACH_MEMORY_H + default DRAM_BASE if !MMU help Please provide the physical address corresponding to the location of main memory in your system. Eventually the DRAM_BASE config option could simply be replaced by PHYS_OFFSET directly, but that's a larger change.
Nicolas | |