About machine ID while kernel boot process.

Typically, while building the Linux kernel the board model is specified. Each type of boards has its own configuration files with hardware description of the board components (kernel_src/arch).

Each file has a structure of that type (usually this is at the very bottom of the file):

MACHINE_START(DB88F6281_BP, "Mrv Development Board")
	.atag_offset	= 0x100,
	.init_machine	= db88f6281_init,
	.map_io		= kirkwood_map_io,
	.init_early	= kirkwood_init_early,
	.init_irq	= kirkwood_init_irq,
	.timer		= &kirkwood_timer,
	.restart	= kirkwood_restart,

The point is that during configuration of the kernel several types of boards can be chosen for building. But at startup, the kernel should choose the system configuration for which the kernel is running .

It is choosen using the uBoot variable arcNumber. It means that the uBoot variable arcNumber is passed to the kernel and compared with the value DB88F6281_BP. In case of matching this configuration is being download. If there is no matching of the variable arcNumber with all existing configurations we can see the following massage on the screen:

Error: unrecognized/unsupported machine ID (r1 = 0x00000d54).

Available machine support:

ID (hex)        NAME
0000089b        LaCie d2 Network v2
0000089e        LaCie 5Big Network v2
0000089c        LaCie 2Big Network v2
00000b1e        HP t5325 Thin Client

Please check your kernel config and/or bootloader.