1
1
Драйверы USB-устройств (devu-*)
Перейти к файлу
2023-09-23 15:12:28 +03:00
devu Драйвер devh-egalax для ЗОСРВ "Нейтрино" редакции 2020 2022-09-16 15:43:59 +03:00
Makefile Драйвер devh-egalax для ЗОСРВ "Нейтрино" редакции 2020 2022-09-16 15:43:59 +03:00
README.md README.md: актуализация ссылок на документацию 2023-09-23 15:12:28 +03:00

Общая структура USB-стека

    ┌─────────────────────────────┐         ┌─────────────────────────────┐
    │                             │         │                             │
    │     Контроллер USB шины     ◂────*────▸       USB устройство        │
    │                             │         │                             │
    └──────────────▴──────────────┘         └─────────────────────────────┘
                   │
    ┌──────────────┴──────────────┐
    │                             │
    │     Драйвер контроллера     │
    │   USB шины (devu-*hci.so)   │
    │                             │
    └──────────────▴──────────────┘
                   │
                   *
                   │
    ┌──────────────┴──────────────┐         ┌───────────────────────────┐
    │                             │         │                           │
    │ Менеджер USB-стека (io-usb) ◂─── * ───┤   USB драйвер (devu-*)    ◂───▸ /dev/usb***X
    │                             │         │                           │           ▴
    └─────────────────────────────┘    ▲    └───────────────────────────┘           │
                                       │                                            │
                                       │                              ┌─────────────▾─────────────┐
             Интерфейс libusbdi ───────┘                              │                           │
                                                                      │   Клиентское приложение   │
                                                                      │                           │
                                                                      └───────────────────────────┘

Дерево исходных кодов

|- devu/
|  |- keyboard/         - Исходный код драйвера поддержки USB-клавиатур
|  |- mouse/            - Исходный код драйвера USB-мыши
|  |- printer/          - Исходный код драйвера класса для USB-принтеров
|  |- Makefile          - Правила сборки дерева исходников
|  `- common.mk         - Параметры сборки драйверов
|
`- Makefile             - Правила сборки дерева исходников

Сборка драйвера

make

Запуск драйвера

Общая схема запуска драйвера (не относится к драйверам контроллеров USB шин):

devu-* <опции_драйвера> &

Примеры:

devu-kbd   -n /dev/usbkbd0  &
└───┬───┘ └───────┬───────┘
    │             │
    │           Опции
 Драйвер



devu-mouse   -n /dev/usbmouse0 -vvvv  &
└────┬────┘ └───────────┬───────────┘
     │                  │
     │                Опции
  Драйвер



devu-prn   -n /dev/usbpar0 -s /dev/io-usb/io-usb  &
└───┬───┘ └──────────────────┬──────────────────┘
    │                        │
    │                      Опции
 Драйвер