images/orangepi.build: поддержка USB
Этот коммит содержится в:
родитель
a152378d4e
Коммит
d2f38fbc86
@ -92,4 +92,5 @@ echo "tftpboot 0x41000000 $image; go 0x41000000" > $TFTP_SERIAL
|
|||||||
| RAM | 1GB | + | |
|
| RAM | 1GB | + | |
|
||||||
| SMP | 4 CPU cores | + | |
|
| SMP | 4 CPU cores | + | |
|
||||||
| UART | + | + | |
|
| UART | + | + | |
|
||||||
|
| USB | + | + | |
|
||||||
| NET | + | + | |
|
| NET | + | + | |
|
||||||
|
@ -18,6 +18,7 @@
|
|||||||
@item контроллер прерываний GICv2
|
@item контроллер прерываний GICv2
|
||||||
@item контроллер оперативной памяти DDR
|
@item контроллер оперативной памяти DDR
|
||||||
@item UART
|
@item UART
|
||||||
|
@item USB (EHCI/OHCI)
|
||||||
@item Ethernet
|
@item Ethernet
|
||||||
@endul
|
@endul
|
||||||
|
|
||||||
|
@ -20,6 +20,8 @@
|
|||||||
@table[width:40:60:width]
|
@table[width:40:60:width]
|
||||||
@tr Компонент @| Описание
|
@tr Компонент @| Описание
|
||||||
@tr @center @l{devc-ser8250} @endcenter @| Менеджер последовательных 8250-совместимых каналов связи
|
@tr @center @l{devc-ser8250} @endcenter @| Менеджер последовательных 8250-совместимых каналов связи
|
||||||
|
@tr @center @l{devu-ehci.so} @endcenter @| Драйвер для USB-контроллеров с усовершенствованным интерфейсом хост-контроллера (EHCI)
|
||||||
|
@tr @center @l{devu-ohci.so} @endcenter @| Драйвер для USB-контроллеров с открытым интерфейсом хост-контроллера (Open Host Controller Interface, OHCI)
|
||||||
@endtable
|
@endtable
|
||||||
|
|
||||||
@hint
|
@hint
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
@@item Проверки интерфейсов
|
@@item Проверки интерфейсов
|
||||||
@@@item Проверка драйвера контроллера UART
|
@@@item Проверка драйвера контроллера UART
|
||||||
@@@item Проверка драйвера контроллера Gigabit Ethernet
|
@@@item Проверка драйвера контроллера Gigabit Ethernet
|
||||||
|
@@@item Проверка драйвера контроллера USB
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -67,15 +68,18 @@ $ make install
|
|||||||
|
|
||||||
@output{shell}
|
@output{shell}
|
||||||
# pidin ar
|
# pidin ar
|
||||||
pid Arguments
|
pid Arguments
|
||||||
1 procnto-smp -vvv -ae
|
1 procnto-smp -vvv -ae
|
||||||
2 slogger -s 16384k
|
2 slogger -s 16384k
|
||||||
3 pipe
|
3 pipe
|
||||||
4 devc-ser8250 -e -F -b115200 -c24000000/16 0x01C28000^2,32
|
4 devc-ser8250 -e -F -b115200 -c24000000/16 0x01C28000^2,32
|
||||||
5 random -t
|
5 io-usb -dehci ioport=0x01c1b000,irq=106 -dohci ioport=0x01c1b400,irq=107
|
||||||
6 io-pkt-v4-hc-ksz -dsun8i
|
-dehci ioport=0x01c1c000,irq=108 -dohci ioport=0x01c1c400,irq=109
|
||||||
4103 sh
|
-dehci ioport=0x01c1d000,irq=110 -dohci ioport=0x01c1d400,irq=111
|
||||||
4104 pidin ar
|
6 random -t
|
||||||
|
7 io-pkt-v4-hc-ksz -dsun8i
|
||||||
|
4103 sh
|
||||||
|
4104 pidin ar
|
||||||
@endoutput
|
@endoutput
|
||||||
|
|
||||||
|
|
||||||
@ -120,27 +124,45 @@ Processor4: 1091551349 Cortex A7 228MHz FPU
|
|||||||
1 7 procnto-smp
|
1 7 procnto-smp
|
||||||
1 8 procnto-smp
|
1 8 procnto-smp
|
||||||
1 9 procnto-smp
|
1 9 procnto-smp
|
||||||
1 10 procnto-smp
|
1 10 procnto-smp
|
||||||
1 11 procnto-smp
|
1 11 procnto-smp
|
||||||
1 12 procnto-smp
|
1 12 procnto-smp
|
||||||
1 13 procnto-smp
|
1 13 procnto-smp
|
||||||
1 14 procnto-smp
|
1 14 procnto-smp
|
||||||
1 16 procnto-smp
|
1 15 procnto-smp
|
||||||
2 1 slogger
|
1 17 procnto-smp
|
||||||
3 1 pipe
|
2 1 slogger
|
||||||
3 2 pipe
|
3 1 pipe
|
||||||
3 3 pipe
|
3 2 pipe
|
||||||
4 1 devc-ser8250
|
3 3 pipe
|
||||||
1 0x20 0 --- @0x804ab30:0x805d1c0
|
4 1 devc-ser8250
|
||||||
5 1 random
|
1 0x20 0 --- @0x804ab6c:0x805d1c0
|
||||||
5 2 random
|
5 1 io-usb
|
||||||
5 3 random
|
2 0x6a 0 TP- =PULSE 0x40000008:21 0:0
|
||||||
6 1 io-pkt-v4-hc-ksz
|
3 0x6b 0 TP- =PULSE 0x4000000b:21 0:0
|
||||||
6 2 io-pkt-v4-hc-ksz
|
4 0x6c 0 TP- =PULSE 0x4000000e:21 0:0
|
||||||
2 0x72 0 T-- @0x78002d5c:0x818f2c0
|
5 0x6d 0 TP- =PULSE 0x40000011:21 0:0
|
||||||
6 3 io-pkt-v4-hc-ksz
|
6 0x6e 0 TP- =PULSE 0x40000014:21 0:0
|
||||||
4103 1 sh
|
7 0x6f 0 TP- =PULSE 0x40000017:21 0:0
|
||||||
20488 1 pidin
|
5 2 io-usb
|
||||||
|
5 3 io-usb
|
||||||
|
5 4 io-usb
|
||||||
|
5 5 io-usb
|
||||||
|
5 6 io-usb
|
||||||
|
5 7 io-usb
|
||||||
|
5 8 io-usb
|
||||||
|
5 9 io-usb
|
||||||
|
5 10 io-usb
|
||||||
|
5 11 io-usb
|
||||||
|
6 1 random
|
||||||
|
6 2 random
|
||||||
|
6 3 random
|
||||||
|
7 1 io-pkt-v4-hc-ksz
|
||||||
|
7 2 io-pkt-v4-hc-ksz
|
||||||
|
8 0x72 0 T-- @0x78002d5c:0x818f2c0
|
||||||
|
7 3 io-pkt-v4-hc-ksz
|
||||||
|
4104 1 sh
|
||||||
|
4105 1 pidin
|
||||||
@endoutput
|
@endoutput
|
||||||
|
|
||||||
Проверка считается пройденной успешно, если вывод утилиты @l{pidin|pidin ir} содержит информацию об обработчиках прерывания, принадлежащих выполняемым процессам, в формате
|
Проверка считается пройденной успешно, если вывод утилиты @l{pidin|pidin ir} содержит информацию об обработчиках прерывания, принадлежащих выполняемым процессам, в формате
|
||||||
@ -265,4 +287,61 @@ round-trip min/avg/max = 0/0/0 ms variance = 0 ms^2
|
|||||||
|
|
||||||
Проверка считается выполненной успешно, если все 3 пакета были успешно получены (процент потерь равен нулю).
|
Проверка считается выполненной успешно, если все 3 пакета были успешно получены (процент потерь равен нулю).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@group bsp_usb
|
||||||
|
|
||||||
|
Для работы с контроллером интерфейса USB используется драйвера @l{devu-ehci.so}, @l{devu-ohci.so} и менеджер ресурсов @l{io-usb}. В составе загрузочного образа драйвер запускается автоматически. Для вывода информации о доступных интерфейсах выполнить команду @l{usb}.
|
||||||
|
|
||||||
|
В случае успешного запуска драйвера в директории `/dev/` будет создано устройство @c io-usb.
|
||||||
|
|
||||||
|
@output{shell}
|
||||||
|
# ls /dev/io-usb
|
||||||
|
devu-ehci.so devu-ohci.so io-usb
|
||||||
|
@endoutput
|
||||||
|
|
||||||
|
Для проверки функционирования драйвера UART подключить ПМ к ПК через преобразователь по USB в один из разъемов и запустить терминальную программу @a minicom. В последовательном или удалённом терминале выполнить следующую команду:
|
||||||
|
|
||||||
|
@output{shell}
|
||||||
|
# usb
|
||||||
|
@endoutput
|
||||||
|
|
||||||
|
Проверка считается выполненной успешно, если в терминальной программе будет выведено сообщение:
|
||||||
|
|
||||||
|
@output{shell}
|
||||||
|
USB 0 (EHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
|
||||||
|
USB 1 (OHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
|
||||||
|
USB 2 (EHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
|
||||||
|
USB 3 (OHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
|
||||||
|
USB 4 (EHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
|
||||||
|
USB 5 (OHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
@endoutput
|
||||||
|
|
||||||
|
После подключения должно появиться новое устройство:
|
||||||
|
|
||||||
|
@output{shell}
|
||||||
|
# usb
|
||||||
|
USB 0 (EHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
|
||||||
|
Device Address : 1
|
||||||
|
Vendor : 0x8564 (JetFlash)
|
||||||
|
Product : 0x1000 (Mass Storage Device)
|
||||||
|
Class : 0x00 (Independent per interface)
|
||||||
|
|
||||||
|
USB 1 (OHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
|
||||||
|
USB 2 (EHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
|
||||||
|
USB 3 (OHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
|
||||||
|
USB 4 (EHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
|
||||||
|
USB 5 (OHCI) v1.10, v1.01 DDK, v1.01 HCD
|
||||||
|
@endoutput
|
||||||
|
|
||||||
@prev{./00-UserGuide.html|table_of_articles||11}
|
@prev{./00-UserGuide.html|table_of_articles||11}
|
||||||
|
@ -48,6 +48,14 @@
|
|||||||
waitfor /dev/ser1
|
waitfor /dev/ser1
|
||||||
reopen /dev/ser1
|
reopen /dev/ser1
|
||||||
|
|
||||||
|
#######################################################################
|
||||||
|
## USB Host driver
|
||||||
|
#######################################################################
|
||||||
|
display_msg Starting USB host driver...
|
||||||
|
io-usb -dehci ioport=0x01c1b000,irq=106 -dohci ioport=0x01c1b400,irq=107 -dehci ioport=0x01c1c000,irq=108 -dohci ioport=0x01c1c400,irq=109 -dehci ioport=0x01c1d000,irq=110 -dohci ioport=0x01c1d400,irq=111
|
||||||
|
waitfor /dev/io-usb/io-usb 4
|
||||||
|
waitfor /dev/io-usb/devu-ehci.so 4
|
||||||
|
waitfor /dev/io-usb/devu-ohci.so 4
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
## These env variables are inherited by all the programs which follow
|
## These env variables are inherited by all the programs which follow
|
||||||
|
Загрузка…
Ссылка в новой задаче
Block a user