Про machine ID при загрузке ядра.

Как правило при сборке ядра линукс указывается модель платки под которую идет сборка. Для каждого типа плат существуют свои конфигурационные файлы с аппаратным описанием составляющих платы (kernel_src/arch).

В каждом таком файле должна находится структурка вот такого типа (обычно она распологается в самом низу файла):

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,
MACHINE_END

Суть этого примерно в следующем. На этапе конфигурации ядра может быть выбрано несколько типов плат для которых будет производиться сборка. Но при старте, ядро должно подхватить ту конфигурацию системы для которой запущено ядро.

Данный выбор осщуествляется через переменную юубта arcNumber. Т.е. переменная юбута arcNumber передается в ядро и сравнивается с значением DB88F6281_BP. И если они совпадают то проиходит загрузка именно этой конфигурации. При варианте что нет совпадений переменной arcNumber со всеми существующими конфигурациями на экране увидим примерно следующее:

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.