XIP_KERNEL and !ARCH_MULTIPLATFORM

Uwe Kleine-König u.kleine-koenig at pengutronix.de
Fri Mar 20 01:19:10 PDT 2015


On Thu, Mar 19, 2015 at 08:57:21PM +0000, Chris Brandt wrote:
> Eventually....I got it to boot.
> 
> I had to remove both CONFIG_HIGHMEM and CONFIG_SMP and then I could boot completely from ROM (which for me is external QSPI flash that is memory mapping into linear CPU space at address 0x18000000)
> 
> So, the total changes was:
> 
> 1. start with shmobile_defconfig
> 2. remove all architectures but RZ/A1 (ARCH_R7S72100)
> 3. remove !ARCH_MULTIPLATFORM from XIP_KERNEL's dependencies
> 4. modify  'select ARM_PATCH_PHYS_VIRT if !XIP_KERNEL'  in PHYS_OFFSET (because I need to be able to set PHYS_OFFSET)
> 5. patch up mmu.c, proc-v7.S and link-vmlinux.sh
> 6. remove CONFIG_HIGHMEM and CONFIG_SMP
> 
> I also modified the DT to use internal RAM instead external SDRAM.
> 
> Of course to actually boot an XIP kernel, you have to make a custom command in u-boot (using bootm or go is not going to work).
It should. I remember that you need to pass something unintuitive to
mkimage (to not say buggy). See
http://lists.denx.de/pipermail/u-boot/2007-March/020171.html for my try
to fix that back when I still cared about U-Boot.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |



More information about the linux-arm-kernel mailing list