cancel
Showing results for 
Search instead for 
Did you mean: 

How to enable 3 USB ports on STM32MP1

PGE
Associate III

According to different STM32MP1 documentation such as STM32MP1-Peripheral-USB_Host_interface_USBH or STM32MP1-Peripheral-USB-On-The-Go-Full-and-HighSpeed-interface presentation there is two USB phy, one dual port HS phy and one single port FS phy.

In my understanding I should be able to enable 3 USB host port, two HS and one FS.

I am using the STM32CubeMX tool but I am unable to enable such 3 ports. I am able to enable two HS port but I am unable to enable OTG port. If I disable one HS port I am able to enable OTG port. So it seems STM32CubeMX allows to enable only two ports at the same time.

 

Is this an issue of STM32CubeMX or it's a real limitation of the chip ?

Note, I have tried with different package with the same results

 

Many thanks in advance for any help

1 ACCEPTED SOLUTION

Accepted Solutions
PatrickF
ST Employee

Hello,

This is a limitation in CubeMX, I confirm you could really use three host ports (2 x high-speed + 1 x full-speed).

You have to edit the device tree manually for this case. see https://wiki.st.com/stm32mpu/wiki/OTG_device_tree_configuration#DT_configuration_example_as_full-speed_OTG-2C_with_micro-B_connector

Notice that OTG host HW/driver has some limitations which make it not recommended to be connected to an USB Hub.

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

View solution in original post

5 REPLIES 5
PatrickF
ST Employee

Hello,

This is a limitation in CubeMX, I confirm you could really use three host ports (2 x high-speed + 1 x full-speed).

You have to edit the device tree manually for this case. see https://wiki.st.com/stm32mpu/wiki/OTG_device_tree_configuration#DT_configuration_example_as_full-speed_OTG-2C_with_micro-B_connector

Notice that OTG host HW/driver has some limitations which make it not recommended to be connected to an USB Hub.

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
PGE
Associate III

Ok many thanks for your clear reply

Any other known limitation ? Is there any documentation with all known limitation / issue ?

See ES0438: STM32MP151x/3x/7x device limitations

See also https://wiki.st.com/stm32mpu/wiki/STM32MP15_ecosystem_release_note

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
PGE
Associate III

@PatrickF​ According to your link above default IOs for USB OTG in full-speed mode are PA11 and PA12. These are general purpose IOs, are they powered by VDD or VDD_USB ? As USB is 3.3V signals does-it work well also with 1.8V VDD powered STM32MP157 ?

Thanks in advance for clarification

PA11 and PA12 are specific IOs and supplied by VDD_USB (3.3V typ.) when used as OTG_FS data pins, VDD otherwise.

No issue regarding VDD=1.8V

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.