Регистры Allwinner H616

Сокращения  |  Дерево шин  |  Карта памяти

Контроллер USB2.0 OTG ( Руководство )

Имя модуля: USB0 , базовый адрес: 0x05100000

Руководство п. 9.4


В официальном руководстве Allwinner H616 по каким-то причинам отсутствует описание регистров OTG контроллера.> Поэтому можно предполагать, что регистры USB-OTG и их поля похожи на аналогичные для хост-портов USB.

В дереве устройств имеются узлы для USB-OTG :

  • usbc0@0

  • udc-controller@0x05100000

  • ehci0-controller@0x05101000

  • ohci0-controller@0x05101400


    Ниже приводится информация из статьи USB OTG Controller Register Guide. Есть вероятность того, что имена регистров и их поля для серии H отличаются от серии A не очень критично, с точностью до конкретных разрядов (в серии A регистры 8-разрядные).

    Руководство по регистрам контроллера USB OTG

    Все SoC Allwinner серии A поставляются с одним контроллером USB OTG. Контроллер был идентифицирован как Mentor Graphics Inventra HDRC (высокоскоростной двухролевой контроллер), который поддерживается драйвером musb. Однако адреса регистров зашифрованы.

    В руководстве A20 перечислены следующие функции: Соответствует спецификации USB 2.0 Поддерживает высокую, полную и низкую скорость в режиме хоста Поддерживает высокую и полную скорость в режиме устройства 64-байтовая конечная точка 0 для передачи управления Поддерживает до 5 настраиваемых пользователем конечных точек для массовых, изохронных, управляющих и прерывистых двунаправленных передач.

    Контроллер USB OTG подключен к контроллеру порта. Из SoC экспортируются только выводы данных. Контроллер порта также используется для управления или настройки USB PHY для других хост-контроллеров USB.

    Общие регистры


  • PCTL / POWER - USB Power Control
  • DEVCTL - OTG Device Control
  • EPIND / INDEX
  • VEND0 - Vendor specific register Controls whether to use DMA mode
  • INTTx / INTRTX - Transmit interrupt status
  • INTRx / INTRRX - Receive interrupt status
  • INTTxE / INTRTXE - Transmit interrupt mask
  • INTRxE / INTRRXE - Receive interrupt mask
  • INTUSB / INTRUSB - USB function interrupt status
  • INTUSBE / INTRUSBE - USB function interrupt mask
  • FRNUM / FRAME
  • EPINFO
  • RAMINFO
  • LINKINFO
  • VPLEN
  • HSEOF / HS_EOF1
  • FSEOF / FS_EOF1
  • LSEOF / LS_EOF1

    PCTL / POWER
    ISOUPDATE SOFTCONN
    HSENAB
    HSMODE
    RESET
    RESUME
    SUSPENDM ENSUSPEND

    DEVCTL
    B_DEVICE/BDEVICE
    FS_DEV/FSDEV
    LS_DEV/LSDEV
    VBUS
    HOST_MODE/HM
    HOST_REQ/HR
    SESSION

    VEND0
    DRQ_SEL BUS_SEL

    Регистры конечных точек


    Чтобы получить к ним доступ в индексированном режиме, вы должны сначала записать номер конечной точки в регистр INDEX.

    Endpoint 0
    CSR0
    COUNT0
    EP0TYPE/TYPE0
    NAKLIMIT0

    Endpoint 1 TXMAXP
    TXCSR
    RXMAXP
    RXCSR
    RXCOUNT
    TXTYPE
    TXINTERVAL
    RXTYPE
    RXINTERVAL
    TXFIFOSZ
    RXFIFOSZ
    TXFIFOADD
    RXFIFOADD



  • Allwinner H616 Manual