Глава 5.6 Добавляем GPIO Toggle в Device Tree — шаг за шагом — Практика по pin control и GPIO

9 подписчиков

12+
12+

3 просмотра

25 дней назад

ПожаловатьсяНарушение авторских прав

9 подписчиков

12+
12+

3 просмотра

25 дней назад

ПожаловатьсяНарушение авторских прав
12+
12+

3 просмотра

25 дней назад

Глава 5.6 — Практика по pin control и GPIO В этом видео мы 📌 добавляем поддержку модуля gpio_toggle.ko в дерево устройств (Device Tree) на Raspberry Pi 3. 👨💻 Делается это через редактирование .dts, компиляцию в .dtb, загрузку в /boot и перезапуск. 🔧 Что мы делаем по шагам: 1️⃣ Редактируем .dts Мы добавляем следующий блок в секцию &soc: dts gpiotoggle@1 { compatible = "kontakts,gpiotoggle"; reg = {1}; gpios = {&gpio 21 0}; status = "okay"; }; Зачем: 📎 compatible нужен для связывания с драйвером, 🧩 gpios — указываем конкретный GPIO (например, 21), 🔢 reg = [1] — для уникальности имени узла (@1), ✅ status = "okay" — активируем узел. 2️⃣ Компилируем в .dtb: bash dtc -I dts -O dtb -o bcm2710-rpi-3-b.dtb bcm2710-rpi-3-b.dts 📌 .dtb — это бинарное представление дерева устройств, которое загружает ядро при старте. 3️⃣ Копируем в /boot: bash sudo cp bcm2710-rpi-3-b.dtb /boot/ 🧠 Теперь при следующей перезагрузке Raspberry Pi получит обновлённую информацию о железе. 4️⃣ Перезагружаемся: bash sudo reboot 5️⃣ Проверяем: bash ls /proc/device-tree/soc/gpiotoggle@1 cat /proc/device-tree/soc/gpiotoggle@1/compatible cat /proc/device-tree/soc/gpiotoggle@1/gpios 📂 Если всё на месте — значит gpiotoggle@1 был корректно загружен! 🎯 Итог: Теперь наш модуль gpio_toggle.ko сможет: подключиться к DT-узлу gpiotoggle@1, запросить GPIO, и создать /dev/gpiotoggle для управления этим пином из userspace. 🔁 Повторить этот процесс можно для любого GPIO-устройства: реле, светодиода, датчика и т.д. ✨ Не забудь: === 📜 DT описывает железо → ядро использует это для привязки драйверов, ⚡ GPIO можно настраивать через DT, 🧠 Понимание reg, gpios и compatible — ключ к созданию своих драйверов! 📌 Тема: #DeviceTree #GPIO #RaspberryPi #gpio_toggle #LinuxDrivers #dts2dtb 🎬 Для главы 5.6 практикума: Linux Driver Development Guide for Raspberry Pi 3

Название:

Глава 5.6 Добавляем GPIO Toggle в Device Tree — шаг за шагом — Практика по pin control и GPIO

Категория:

Разное