On Fri, May 12, 2017 at 9:53 PM, Vic <v...@chamsys.co.uk> wrote: > Hi All. > > I'm having difficulty with getting a board booting Linux from U-boot. This > is an existing unit, so I don't get much choice over changing versions of > kernel of U-boot. > > bdinfo gives me the machine ID I expect, but when I try to boot my > newly-built kernel, I get an "unsupported machine ID" error; the vlaue it > prints is not what U-boot gives me, and not what I expect. The supported > types for this kernel do include the machine ID I'm tryin to use... > > Would someone walk me through the process by which U-boot sends the machine > ID to the kernel, please? That's clearly gone wrong somewhere. >
You haven't specified which u-boot or Linux versions you're using so I'm going to assume a recent version of each. The machid is passed to the kernel in r1 see boot_jump_linux[1], it is possible to override it with the "machid" environment variable. Most arm platforms supported by Linux these days use a device-tree which basically makes the machid redundant, but it does mean u-boot needs to be passing a device-tree blob for the platform. If you are using a version of u-boot that can't pass a device-tree blob to the kernel you will need to build your kernel with CONFIG_ARM_APPENDED_DTB. -- [1] - http://git.denx.de/?p=u-boot.git;a=blob;f=arch/arm/lib/bootm.c;hb=HEAD#l390 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot