[U-Boot] u-boot support for iMote2

Hi all,
I am working on a port of U-Boot to the PXA271-based iMote2.
What I currently have is the patch attached to this email (my work starts at commit "2ba8bf207481cfb319f54a1bef67f6f068831a58", tag: "v2018.11-rc1"), where I basically have:
created board/crossbow/imote2/{Kconfig,Makefile,imote2.c,MAINTAINERS} files created include/configs/imote2.h header file sourced the board's Kconfig in arch/arm/Kconfig , as well as defining the target TARGET_IMOTE2 created a simple defconfig file in configs/imote2_defconfig made some further minor modifications (e.g. Modify some include paths) Now, when I output the raw U-boot binary, u-boot.bin, and flash it to NOR-flash address 0x0, the iMote2 doesn't boot up (the PXA2xx specification states that ”instructions will be fetched from flash at 0x0 after processor comes out of reset).
I understand that the source of the error may come from many different parts along the way, but in general I wanted to ask you a couple of questions regarding the PXA architecture:
Do, in general, PXA-based processors require an SPL in order to boot or is is sufficient to build a single-stage (proper) U-Boot? The CONFIG_SYS_TEXT_BASE symbol _must_ be 0 according to the top-level README. Is this true? In the case of the PXA271 processor, the SDRAM is mapped to address 0xa000-0000. Shouldn't CONFIG_SYS_TEXT_BASE, for a single-stage bootloader, be set to this address? The arch_cpu_init() routine, defined in arch/arm/cpu/pxa/pxa2xx.c, should it be called before or after relocation? I am confused about this. I would like to have some input here, since I can't manage to boot up the iMote2 with the cross-compiled U-boot. Any feedback is truly appreciated.
BR, /Santiago
participants (1)
-
Santi Pagola