diff --git a/Linux/SBC RPi3 - Hardware.md b/Linux/SBC RPi3 - Hardware.md new file mode 100644 index 0000000..ede67fa --- /dev/null +++ b/Linux/SBC RPi3 - Hardware.md @@ -0,0 +1,39 @@ +## Hardware starting. Процесс запуска и инициализации +Далее описан процесс запуска и инициализации оборудования следующих уровней: +Firmware layer +Hardware descriptional layer +kernal initialization stage + +## Device tree - Описание аппаратной конфигурации. + +Device Tree — это **описание аппаратной конфигурации конкретной платы**. Применяется GPU до запуска ядра. +Device Tree Overlays - фрагмент device tree, который: + добавляет новое устройство + включает отключенный контроллер + меняет параметры существующего узла + +Пример изменения конфигурации DT без перекомпиляции ядра +Открыть config.txt и добавить `dtoverlay=i2c-rtc,ds3231` + +Что происходит: +1. GPU загрузит основной DTB +2. GPU применит overlay +3. GPU передаст модифицированный DT ядру +4. Ядро увидит новое устройство +5. Драйвер RTC автоматически загрузится + + +Команды для работы: +`cat /proc/device-tree/model` - модель платы для которой device tree создан +`ls /proc/device-tree/` - дерево устройств, которое kernel получил от GPU +`ls /sys/bus/platform/devices` - вывод устройств, которые kernel создал на основе DT +`lsmod` - просмотр загруженных модулей св + +## Commands +Система: +`vcgencmd get_config int` - параметры, которые передает GPU +`cat /etc/os-release` - просмотр версии системы + + + +