On my side I own a MPC Akai Force with a customm Firmware allowing to connect on the SSH.
Here is what the
lsusb -vvv describes about the USB bus topology on that board (although order within each vertical segment is unspecified):
RK3288
│
├─ Bus 001 Device 001: USB 2.0 hub based on a DesignWare On-The-Go chip, uses standard Linux kernel driver
│ │
│ (no connected devices)
│
└─ Bus 002 Device 001: USB 2.0 hub based on a DesignWare On-The-Go chip, uses standard Linux kernel driver
│
└─ Bus 002 Device 002 (09e8:5040): AKAI Professional M.I. Corp. Force Hub
│
├─ Bus 002 Device 006 (09e8:703b): AKAI Professional M.I. Corp. Card Reader
│
├─ (not connected to any device)
│
├─ Bus 002 Device 004 (13e0:2515): TSE Inc. USB Embedded Hub
│ │
│ └─ Bus 002 Device 005 (13e0:2517): TSE Inc. USB Mass Storage Device
│
├─ (not connected to any device)
│
├─ Bus 002 Device 003 (09e8:0040): AKAI Professional M.I. Corp. Akai Pro Force
│
├─ (not connected to any device)
│
└─ (not connected to any device)
The DesignWare chips are ubiquitous, and basically handle the On-The-Go functionality (fifth pin in USB micro connectors, telling whether this end should be the device or the host; the Linux side can use that to make the port either a host or a device using USB gadget drivers); very commonly used on SBCs where one or more ports can act as both host and device. This board has only two of them.
Bus 001 Device 001 is the first On-The-Go USB "hub", with just one port. That port is not currently connected to anything.
Bus 002 Device 002 is the second On-The-Go USB "hub", with just one port. It is connected to an AKAI-branded USB hub (Bus 002 Device 003), which is not listed in the
Linux USB IDs list. I also cannot find the USB product number (5040 in hexadecimal, 20544 in decimal) anywhere in Linux USB hub drivers, so it looks like this hub also uses some proprietary driver that Akai is breaking the GPL license and copyright law with. Naughty, naughty. It does say it has seven USB ports, three of which are in use (first, third, and fifth), with the first two in high speed mode (480 Mbit/s), and the third in full speed mode (12 Mbit/s). Which one is which is my educated guess; the hierarchy is fully described under
/sys/bus/usb/ but it isn't important enough to worry about here.
Bus 002 Device 003 is the full-speed device (09e8:0040) connected to aforementioned Akai USB hub, and is a MIDI controller based on its endpoints: three MIDI IN jacks, and three MIDI OUT jacks, and a couple of general (control) endpoints. Basically a simple USB-MIDI interface, in other words. (USB ID not listed in Linux USB IDs list, so who knows what driver this uses.)
Bus 002 Device 006 is a high-speed device (09e8:703b) connected to aforementioned Akai USB hub, and is a card reader. Again, USB ID not listed in Linux USB IDs list, so who knows what driver this one uses.
Bus 002 Device 004 is a yet another hub, this time one manufactured by TSE Inc. It has only one port, which is connected to Bus 002 Device 005, an USB mass storage device also made by TSE Inc. I do believe these two are either connected or even on the same actual chip, with the hub part controlling the power delivery and upstream connectivity, and the mass storage device being a standard USB mass storage device (Flash storage, perhaps eMMC, perhaps something else) using standard Linux USB mass storage drivers. The USB ID, 13e0:2517, has been seen on old 1 GB USB sticks ("Flashdrive 1GB").
What does this tell us about these devices?
- The topology is indeed one where at least one of the DWC OTG ports is connected to a "nonstandard" multi-port USB hub, like I suspected.
In this particular device the hub is 09e8:5040, whereas jboy32 has 0763:0016. These numbers are unlikely to be spoofed, as they are usually provided by the USB hub itself, i.e. its own internal firmware. - The storage on this device is based on an existing USB storage chip seen on 1GB USB sticks.
These devices do not have particularly good wear leveling, so depending on how the filesystem has been configured and mounted, might wear out. - Akai uses USB hub drivers not in official Linux sources, and seems to use other USB devices they use their own USB manufacturer ID for, too.
This means that they have a custom Linux kernel tree to support those devices.
Not providing those sources for their customers is a violation of the GPL license. Because violating that license means they do not have a license permitting them to distribute the Linux kernel as part of their device, they are breaking international copyright law and agreements.
Naughty Akai, naughty.
The funny thing here is that the driver code really isn't something you want or need to keep "secret". Akai wins absolutely nothing, and actually loses a lot (of experience and help from volunteers like myself who habitually fix bugs just as a hobby for example), by hiding the kernel sources. Only the crappy developers who they commissioned the drivers from benefit from keeping the sources hidden, as that way their crappiness is kept hidden, and not derided in public. I wish somebody would hit them with a copyright lawsuit, just to whack the Akai ossified officers with a clue bat.
Note that there is nothing wrong in keeping the userspace code (the user interface et cetera) proprietary; that's theirs. But the kernel is not.