Цитата(TigerSHARC @ Mar 28 2014, 20:21)

- где в ядре задаётся machine id?
Вы не поверите - как правило в файле борды:-)
Цитата(TigerSHARC @ Mar 28 2014, 20:21)

пробовал менять его на тот который был в рабочем варианте - безрезультатно....(((
Там все может быть сложнее завязано. Может, например вычислять по комбинации перемычек на выводах контроллера, и тому подобное...., Куча подводных камней.
Если задача не стоит сделать универсальный файл борды под целый ряд девайсов - я лично блокирую все функции идентификации борды, дабы не тратить на них время.
Единственное - нужно понимать, к каким последствиям это может привести например для подключаемых модулей ядра.
Цитата(TigerSHARC @ Mar 28 2014, 20:21)

P.S. чем больше углубляюсь в это , тем больше думаю: зачем выдуманы такие сложности?
Это не сложности. Это стиль программирования
Только по началу тяжело освоить, потом становится легче, когда знаешь минимум того, что должно быть описано... Со временем понимая всю "навороченность" ядра начинаешь наоборот восхищаться некоторым решениям.
Писать драйвера под linux гораздо проще по сравнению например с windows именно благодаря богатой инфраструктуре того что нужно на уровне ядра, и хорошо продуманным описательным моделям самих драйверов.
Я вот чистым временем около недели потратил на освоение того, как примерно работает ALSA на уровне ядра, и еще далек от завершения поставленной задачи. Из документации, на скорую руку слепленой жалким подобием doxygen мало что понятно.

Но из того, что всплыло становится ясно, что при хорошей документации у меня ушло бы максимум 1 день на решение задачи.
Это не то что вы подумали ...