LINUX.ORG.RU

Как экспортировать GPIO из device tree?

 ,


0

1

Имеется Allwiner H3 процессор с загруженным на нём linux.
Каждый раз при загрузке железки делаю следующее

echo 203 >  /sys/class/gpio/export
echo out > /sys/class/gpio/gpio203/direction
echo 1 > /sys/class/gpio/gpio203/value

дабы инициализировать ногу на вывод. Но это происходит уже в user space. А как бы экспортировать эту ногу из DTS?

Пробовал сделать так:
&pio {
    lock_ctrl {
        gpio-hog;
        gpios = <6 11 GPIO_ACTIVE_LOW>; /* PG11 */
        output-high;
        line-name = "door_lock_control";
        status = "okay";
    };
};

но так не собирается даже.
Пока экспортирую как LED и пользуюсь ногой через gpio-led, но «хочется» какой-то красоты...

ЕМНИП в ванили никак если ты хочешь именно управлять. бери патч из openwrt. https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob;f=target/linux/ramips/patches-4.14/0024-GPIO-add-named-gpio-exports.patch;h=61ed9ea784e79f53104702d288fa915c8cee2421;hb=b1e8a390ea7bde59eb47bdd729228cb377aa6f6f

Если тебе надо просто уровень выставить gpio hog вполне должен работать.

Dark_SavanT ★★★★★
()
Последнее исправление: Dark_SavanT (всего исправлений: 1)
Ответ на: комментарий от Dark_SavanT

Спасибо, до этого патча я уже и сам допёр.
Хотелось для начала малой кровью ПРОСТО ВЫСТАВИТЬ УРОВЕНЬ при загрузке ядра. Но нет же.... не получается.

Spider55
() автор топика
Ответ на: комментарий от Spider55

Я с gpio hog когда-то разбирался, там были какие-то подводные камни, но мне было нужно именно управление, поэтому я забил и с собой этот патч таскаю.

Dark_SavanT ★★★★★
()

device tree

Указанный Вами пример не может работать в принципе. DT связывает драйвера с устройством. Просто так задать узел нельзя, какой драйвер ОС должна подвязывать? Строка с параметром compatible = «w1-gpio»; должны быть обязательно. Схема DTS https://devdotnet.org/wp-content/uploads/device_tree_bpi_m64_1wire.png Работа с GPIO на примере Banana Pi BPI-M64. Часть 2. Device Tree overlays

Можно посмотреть какой нибудь общий драйвер, если найду отпишусь.

antondeveloper
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.