u-boot: mpc5xxx.h не поддерживает mpc55xx?

Я новичок в u-boot и в настоящее время пытаюсь портировать его на плату mpc5554 ​​(от phytec) для развлечения.

Я был счастлив найти файл mpc5xxx.h, указывающий, что его можно использовать в моем случае. Однако, чем больше я смотрю на него, кажется, что файл не такой общий, как следует из названия. В моем случае это не кажется пригодным для использования.

  1. Я ошибаюсь?
  2. Кто-нибудь пробовал что-то подобное?
  3. Нужно ли будет создавать свой собственный файл mpc555x.h и т. д.?
  4. Нужно ли переименовывать файл(ы) в дистрибутиве?

Любые мысли приветствуются, спасибо!


person barnie82    schedule 08.11.2012    source источник


Ответы (1)


  1. Я ошибаюсь?

Может быть. Существует два уровня настройки U-Boot (и Linux).
Первый уровень — это архитектура (PowerPC) и процессор (???) SoC (MPC5554).
Второй уровень. это плата (Phytec SOM?), на которой установлен этот SoC.

Очевидно, вы используете SoC Freescale MPC5554, а не Motorola MPC5200. Вам нужно будет убедиться, что объявления #defines и регистра/порта в этом файле mpc5xxx.h соответствуют спецификациям вашей SoC.

Затем вам нужно получить или написать модули для вашей платы. Плата представляет собой конкретную реализацию настраиваемых параметров SoC, которые теперь жестко подключены к контактам на стороне платы. Эти модули должны быть написаны для настройки периферийных устройств SoC и GPIO на стороне чипа контактов в соответствии с платой.

2 Кто-нибудь пробовал что-то подобное?

Я настроил U-Boot для платы.
Вам следует попытаться получить поддержку платы от производителя платы и поддержку SoC от производителя чипа.
Более популярные платы SoC (особенно "оценочные платы" от поставщиков микросхем) поставляются с демонстрационными ядрами Linux и программами начальной загрузки.
Вы можете попробовать поискать в Интернете веб-сайты разработчиков U-Boot, Linux на PowerPc, Freescale и/или Phytec и/или списки рассылки.

3 Нужно ли будет создавать собственный файл mpc555x.h и т. д.?

Возможно.
Если объявления #definesи регистра/порта в этих mpc5xxx.h файлах не соответствуют спецификациям вашей SoC и вы не можете найти их у другого разработчика, вы можете создать файл mpc5554.h. Или, в зависимости от соотношения соответствия и различных спецификаций, вы можете дополнить этот существующий файл объявлениями для MPC5444, используя директивы условной компиляции (например, #ifdef CPU_IS_MPC5444 ... #else ... #endif).

Если у вас есть только MPC5554 для тестирования, будьте осторожны с расширением кода, чтобы охватить другие устройства MPC555x или семейство Qorivva MPC55xx.

4 Нужно ли переименовывать файл(ы) в дистрибутиве?

Вероятно, нет, так как это сломает сборки тех, кто использует этот файл.

person sawdust    schedule 08.11.2012