USB Device not work when VDD5V is not attached during boot (iMX28)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

USB Device not work when VDD5V is not attached during boot (iMX28)

1,449 Views
michaelkoelbl
Contributor III

Hi,

our USB Device (mass storage application) is working fine as long as 5V is attached to VDD5V during linux booting. I can then disconnect and reconnect the USB cable and I see my mass storage device again on the PC. But if 5V is NOT attached to VCC5V during booting I can't see my mass storage when connecting the PC. The PC even has not any action when I have the PC's device manager open. It seems like the USB interface of the iMX28 is "off".

Any idea?

Labels (1)
0 Kudos
3 Replies

1,021 Views
igorpadykov
NXP Employee
NXP Employee

Hi Michael

according to USB specification 5V should be provided to the USB connector's Vbus (MX28 VDD5V).

The PHY inside the MX28 will then detect Vbus and set VBUSVALID0 when the cable connects.

One can try forcing VBUSVALID to 1 (strictly speaking, forcing VBUSVALID to 1 violates

the USB specification) using attached patch developed internally by application team.

Attached is the i.MX28 USB device mode without VDD5V patch for

BSP L2.6.35_1.1.0_130130. To use this feature, please enable the

kernel option "CONFIG_MX28_PLUGINDETECT".

Best regards

igor

0 Kudos

1,021 Views
michaelkoelbl
Contributor III

Hi igor,

we apply 5V MX28 VDD5V. Our problem is, when booting our iMX28 device without USB connection (therefore no 5V at VDD5V) and later connect our iMX28 device - which is powered by a battery - to the PC's USB (which applies 5V to VDD5V) the USB connection do not work.

The USB connection does only work when the USB connection exists during iMX28 boot process. If I have a USB connection during booting USB works even when I disconnect and later reconnect USB. Therefore it looks like iMX28 Linux does not set up USB correctly when 5V is missing during booting and it cannot set up USB when the USB connection (and 5V) is connected later, when Linux is already running.

Connect USB and then Switch On iMX28: USB works

Switch On iMX28 -> Wait until Linux has booted -> Connect USB: USB does not work

Michael

0 Kudos

1,021 Views
igorpadykov
NXP Employee
NXP Employee

Hi Michael

in linux USB is handled by linux USB driver not iROM, refer to attached Linux Manual

Chapter 24 ARC USB Driver, also attached document for testing USB

Peripheral mode "gadget" driver.

~igor

0 Kudos