перенос конфигурации ядра на другую архитектуру

перенос конфигурации ядра на другую архитектуру

У меня хорошая .configнастройка ядра для x86, которой я доволен.

Теперь у меня есть несколько различных устройств на базе ARM (некоторые без видеовыхода), которые поставляются с предварительно настроенными настройками по умолчанию.

Мне бы хотелось максимально приблизить конфигурацию всех целевых объектов — например, чтобы у всех были включены одинаковые файловые системы и т. д.

Простое копирование .configне сработает, поскольку важные настройки, зависящие от оборудования (которые идут с конфигурацией по умолчанию), будут потеряны.

По сути, низкоуровневые настройки (сведения о процессоре, сопоставления ввода-вывода и т. д.) следует оставить как есть, а высокоуровневые настройки (включенные файловые системы, драйверы USB-устройств, параметры безопасности и множество других настроек, которые сейчас не приходят мне в голову) следует сделать общими для всех конфигураций.

Есть ли какая-то «рекомендация» для таких ситуаций или мне действительно придется вручную проверять более 3000 настроек?

решение1

Конфигурация ядра Linux включает в себя множество деталей, специфичных для оборудования, например, включение драйверов для устройств. Маловероятно, что это можно перенести из одной архитектуры в другую (за исключением тесно связанных, таких как x86 и x86_64). Кроме того, чипы ARM настраиваются из меню устройств на чипе, которые требуют специальной обработки конфигурации. Это делает ARM еще более отличным от обработки конфигурации вашего ПК, чем, скажем, x86_64 и SPARC64.

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

решение2

Я знаю, что опоздал, но надеюсь, мой ответ поможет кому-то еще.

  1. Скопируйте исходный код ядра в ARM SoC с x86 .configвнутри
  2. запустите make olddefconfig, который создаст новый файл, .configвзяв значения вашего x86 .configи значения по умолчанию для ARM
  3. Теперь соберите ядро, вас ничего не попросят, так как все это охвачено некоторыми настройками по умолчанию для ARM и некоторыми из ваших настроек x86

Связанный контент