[U-Boot] mx28: Error: unrecognized/unsupported processor variant (0x41069265).

Hello,
I'm bringing up a custom board that includes a mx283 and 64MB DDR2 memory, now I have some troubles with getting u-boot to properly boot the kernel. I have enabled kernel_debugging and with earlyprintk I get the following output:
## Booting kernel from Legacy Image at 42000000 ... Image Name: Linux-3.12.0-10554-g801a760 Created: 2013-11-19 20:56:47 UTC Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 3538288 Bytes = 3.4 MiB Load Address: 40008000 Entry Point: 40008000 Verifying Checksum ... OK ## Flattened Device Tree blob at 41000000 Booting using the fdt blob at 0x41000000 Loading Kernel Image ... OK Loading Device Tree to 43b21000, end 43b291ca ... OK Starting kernel ... Uncompressing Linux... done, booting the kernel. Error: unrecognized/unsupported processor variant (0x41069265).
After I looked the error message up on the internet I understand that the machine-id u-boot is passing to the kernel is wrong. When I compare arch_number from bdinfo on my custom board and my mx28-evk they are the same and my mx28-evk boots the same kernel image without roblems. Can anybody give some advice how to solve this?
Best regards, Mårten Wikman

"Mårten Wikman" Marten.Wikman@novia.fi writes:
Hello,
I'm bringing up a custom board that includes a mx283 and 64MB DDR2 memory, now I have some troubles with getting u-boot to properly boot the kernel. I have enabled kernel_debugging and with earlyprintk I get the following output:
## Booting kernel from Legacy Image at 42000000 ... Image Name: Linux-3.12.0-10554-g801a760 Created: 2013-11-19 20:56:47 UTC Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 3538288 Bytes = 3.4 MiB Load Address: 40008000 Entry Point: 40008000 Verifying Checksum ... OK ## Flattened Device Tree blob at 41000000 Booting using the fdt blob at 0x41000000 Loading Kernel Image ... OK Loading Device Tree to 43b21000, end 43b291ca ... OK Starting kernel ... Uncompressing Linux... done, booting the kernel. Error: unrecognized/unsupported processor variant (0x41069265).
After I looked the error message up on the internet I understand that the machine-id u-boot is passing to the kernel is wrong. When I compare arch_number from bdinfo on my custom board and my mx28-evk they are the same and my mx28-evk boots the same kernel image without roblems. Can anybody give some advice how to solve this?
0x41069265 is the CP15 ID register value for ARM926. I'd look into how this value ended up where the machine ID should be.

0x41069265 is the CP15 ID register value for ARM926. I'd look into how this value ended up where the machine ID should be.
I tried do set the correct machine ID with setenv machid but I get the same result even if u-boot says it's using the new machine ID.

Mårten Wikman marten.wikman@novia.fi writes:
0x41069265 is the CP15 ID register value for ARM926. I'd look into how this value ended up where the machine ID should be.
I tried do set the correct machine ID with setenv machid but I get the same result even if u-boot says it's using the new machine ID.
Still getting the CPU ID printed by the kernel? Then something between you setting the value and the kernel reading it is going wrong.

Still getting the CPU ID printed by the kernel? Then something between you setting the value and the kernel reading it is going wrong.
Yes I still get the CPU ID printed by the kernel. What I understand you should not have to set machid manually if everything is done correctly?
To be able to boot u-boot on our custom board we have changed spl_mem_init.c so dram_vals matches our memory configuration and in include/configs/mx28evk.h where we changed PHYS_SDRAM_1_SIZE. The kernel image we're trying to load is compiled with mxs_defconfig without any changes and it loads without problems on the evk-board. Could it be that we somehow messed up with the memconfiguration?

Mårten Wikman marten.wikman@novia.fi writes:
Still getting the CPU ID printed by the kernel? Then something between you setting the value and the kernel reading it is going wrong.
Yes I still get the CPU ID printed by the kernel. What I understand you should not have to set machid manually if everything is done correctly?
I've never had to set it manually, and either way it's strange for the CPU ID to show up there. The machine ID is passed to the kernel in r1 from the u-boot function boot_jump_linux(). I'd start by verifying that this function is indeed passing the proper value.
To be able to boot u-boot on our custom board we have changed spl_mem_init.c so dram_vals matches our memory configuration and in include/configs/mx28evk.h where we changed PHYS_SDRAM_1_SIZE. The kernel image we're trying to load is compiled with mxs_defconfig without any changes and it loads without problems on the evk-board. Could it be that we somehow messed up with the memconfiguration?
I can't see how that would end up in the wrong machine ID being passed to the kernel.

Mårten Wikman marten.wikman@novia.fi writes:
I can't see how that would end up in the wrong machine ID being passed to the kernel.
Looks like it was a problem with my toolchain, changed to another and kernel started.
I'm curious, which was the broken toolchain?

I first used arm-eabi-gcc 4.8 in Arch Linux repo and later moved to a ubuntu machine and compiled with arm-linux-gnueabi-gcc 4.7.2
2013/11/25 Måns Rullgård mans@mansr.com:
Mårten Wikman marten.wikman@novia.fi writes:
I can't see how that would end up in the wrong machine ID being passed to the kernel.
Looks like it was a problem with my toolchain, changed to another and kernel started.
I'm curious, which was the broken toolchain?
-- Måns Rullgård mans@mansr.com
participants (3)
-
Måns Rullgård
-
Mårten Wikman
-
Mårten Wikman