On Sat, 2018-06-02 at 15:36 +0300, Timo Jyrinki wrote: > 2018-05-28 19:00 GMT+03:00 Andrew Lunn <and...@lunn.ch>: > > Could you try changing "Memory split" to "3G/1G user/kernel split > (for > > full 1G low memory)". You should then see that the lowmem in the > > Virtual kernel memory layout table goes from starting at 0xc0000000 > to > > starting at 0xB0000000. I hope it will then not use high mem, and > > still give you the full 1G of RAM. > > Someone could give newbie tips on making a bootable kernel that I > could load from u-boot. I tried compiling one Debian's kernel simply > with debuild in a stretch chroot, adding VMSPLIT_3G_OPT=y to > config.marvell under debian/, but with the vmlinuz generated I got > "Bad Magic Number" when I tried to load it with u-boot over TFTP.
You need to append a dtb and then encode in u-boot's uImage format. e.g. cat arch/arm/boot/zImage arch/arm/boot/dts/kirkwood-ts419-6281.dtb > x sudo mkimage -A arm -T kernel -O linux -C none -a 0x8000 -e 0x8000 -d x uImage Now the uImage file ought to be bootable with `bootm`, load it to 0x800000 and an initrd (if using one) to 0xa00000 then `bootm 0x800000`. Be sure to pick the correct dtb variant for your board, it might boot with the wrong one but you'll potentially be missing some peripherals etc.