Ok, I’m trying to write my own USB OTG driver for Linux 4.15.x kernel. As far as I know the USB OTG in Allwinner R40 consists of two integrated circuits:
- Mentor Graphics MUSBMHDRC USB 2.0 multi-point dual-role controller
- So called PHY for above MUSBMHDRC controller
Those two integrated cirucits are working “together” to provide USB functionality in Allwinner R40 SoC.
MUSBMHDRC is responsible for logic layer of USB and so called USB PHY is responsible for electrical layer. In other words PHY is responsible for reception and generation of proper electric signals in USB cable.
Similar like in ethernet - there are also MAC and PHY layer integrated circuits.
For now I have documentation only for MUSBHDRC. To write proper driver I need documentation for the second integrated circuit - so called USB PHY. PHY is also called “physical layer” or transceiver.
Without docs for USB PHY I cannot write this driver. That what I need is specification for USB OTG PHY controller. I mean: address where it is mapped in Allwinner R40, register list and description for those registers.
I hope with this description it is more clear now. If not - I’ll try to answer the questions.