Я пытаюсь настроить драйвер для встроенной платы PowerPC, и правильный способ сделать это сегодня - использовать структуру данных OpenFirmware Device Tree (файл .dtb, скомпилированный из .dts). Создание дерева довольно просто, но как я могу заставить свой драйвер устройства найти его узел и данные в нем? Мне не удалось найти хороших ссылок на это, и такие книги, как «Драйверы устройств Linux», слишком велики для земли x86, чтобы иметь большую помощь для деревьев устройств, которые в основном относятся к компьютерам с архитектурой Power Architecture (arch powerpc в ядре Linux терминология).Обзор/справочное руководство по Open Firmware Device Trees
6
A
ответ
4
Существует, по-видимому, очень мало документации, особенно на стороне водителей. говорил с давним разработчиком ядра Linux, которого я знаю, и его совет был, по сути, смотреть на код других драйверов.
некоторого фон чтения я нашел: Grant Likely presentation, Grant Likely Linux Symposium paper, a fairly good overview of the data structure
Наиболее распространенного использование открытой системы прошивки можно найти в драйверах fsl_x.c Freescale в арке// дереве PowerPC в ядре Linux, более поздний, чем 2.6.16.
Смежные вопросы
- 1. open-device in Powershell
- 2. Руководство по монтажу Руководство по эксплуатации
- 3. Generating Trees
- 4. Expression Trees: Отфильтрованный подсчет по навигационной собственности
- 5. «QIODevice :: write: device not open», когда файл открыт
- 6. Phylo BioPython Building trees
- 7. Сообщение в AVL Trees
- 8. Исключения в Expression Trees
- 9. Red Black Trees Rebalancing
- 10. Unit Testing Expression Trees
- 11. Руководство по созданию виджета
- 12. Руководство по диаграмме деятельности
- 13. Руководство по кодированию XAML
- 14. lsof Руководство по выживанию
- 15. Руководство по проектированию событий
- 16. Справочное руководство по Linux
- 17. Руководство по документации Spark
- 18. Руководство по установке Globus
- 19. Руководство по назначению
- 20. Требуется руководство по Gdi
- 21. Руководство по использованию SynchronousQueue
- 22. Intellij - Руководство по производительности
- 23. Руководство по IPhone OAuth?
- 24. Руководство по архитектуре предприятия
- 25. Руководство по изучению J2ME
- 26. Справочное руководство по Web2Py
- 27. Непрограммирующее руководство по программированию
- 28. Требуется руководство по архитектуре?
- 29. Руководство по проверке CSRF
- 30. Руководство по захвату Imdb
Поскольку в 2009 году был задан этот вопрос, в [привязке дерева устройств Linux] имеется документация (https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings). К сожалению, кто-то подделал всех, вызвав заголовок/источник с ** из **. См.: [Of.h] (https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/include/linux/of.h) (с более чем linux/of * .h) и [drivers/of] (https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/of). –