Part Number: AM3354
Other Parts Discussed in Thread: AM3352, TPS65910
Tool/software: Linux
Getting Error at USB2-1 on AM335x-evm board:
Log:
USB1 is not working, it is not able to load the drivers successfully.
root@am335x-evm:~# dmesg | tail
[ 316.801076] FAT-fs (sda): FAT read failed (blocknr 1150)
[ 395.808379] usb 2-1: new low-speed USB device number 2 using musb-hdrc
[ 395.938418] usb 2-1: device descriptor read/64, error -71
[ 396.168510] usb 2-1: device descriptor read/64, error -71
[ 396.398376] usb 2-1: new low-speed USB device number 3 using musb-hdrc
[ 396.528547] usb 2-1: device descriptor read/64, error -71
[ 396.758370] usb 2-1: device descriptor read/64, error -71
[ 396.988687] usb 2-1: new low-speed USB device number 4 using musb-hdrc
[ 397.408381] usb 2-1: device not accepting address 4, error -71
[ 397.528377] usb 2-1: new low-speed USB device number 5 using musb-hdrc
[ 397.948673] usb 2-1: device not accepting address 5, error -71
[ 397.954878] usb usb2-port1: unable to enumerate USB device
For Kernel config:
Used Link:
processors.wiki.ti.com/.../UsbgeneralpageLinux-v3p1
processors.wiki.ti.com/.../UserGuideUsbDriver_PSP_03.00.00.05
In DTS File:
&am33xx_pinmux {
usb0_drvvbus: usb0_drvvbus {
pinctrl-single,pins = <
0x21c (PIN_OUTPUT_PULLUP | MUX_MODE0)
>;
};
usb1_drvvbus: usb1_drvvbus {
pinctrl-single,pins = <
0x234 ( PIN_OUTPUT_PULLUP | MUX_MODE0 )
>;
};
};
&usb {
status = "okay";
};
&usb_ctrl_mod {
status = "okay";
};
&usb0_phy {
status = "okay";
};
&usb1_phy {
status = "okay";
};
&usb1 {
pinctrl-0 = <&usb1_drvvbus>;
dr_mode = "host";
status = "okay";
};
&usb0 {
pinctrl-names = "default";
pinctrl-0 = <&usb0_drvvbus>;
status = "okay";
dr_mode = "otg";
};
Schmatic connections are:
Typical connections for a USB host:
USBx_DP and USBx_DM are connected directly to the USB connector
USBx_CE is typically not used and can be left unconnected
USDx_ID should be grounded
USBx_DRVVBUS should be connected to the enable of the 5V VBUS power source.
USBx_VBUS should be connected to the output of the 5V VBUS power source
DMESG Message Log on Host (AM335x-evm board):
root@am335x-evm:~# dmesg| grep usb
[ 9.545538] am335x-phy-driver 47401300.usb-phy: GPIO lookup for consumer reset
[ 9.545576] am335x-phy-driver 47401300.usb-phy: using device tree for GPIO lookup
[ 9.545599] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/ocp/usb@47400000/usb-phy@47401300[0]'
[ 9.545614] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/ocp/usb@47400000/usb-phy@47401300[0]'
[ 9.545627] am335x-phy-driver 47401300.usb-phy: using lookup tables for GPIO lookup
[ 9.545643] am335x-phy-driver 47401300.usb-phy: lookup for GPIO reset failed
[ 9.545659] am335x-phy-driver 47401300.usb-phy: GPIO lookup for consumer vbus-detect
[ 9.545672] am335x-phy-driver 47401300.usb-phy: using device tree for GPIO lookup
[ 9.545686] of_get_named_gpiod_flags: can't parse 'vbus-detect-gpios' property of node '/ocp/usb@47400000/usb-phy@47401300[0]'
[ 9.545699] of_get_named_gpiod_flags: can't parse 'vbus-detect-gpio' property of node '/ocp/usb@47400000/usb-phy@47401300[0]'
[ 9.545712] am335x-phy-driver 47401300.usb-phy: using lookup tables for GPIO lookup
[ 9.545726] am335x-phy-driver 47401300.usb-phy: lookup for GPIO vbus-detect failed
[ 9.545819] 47401300.usb-phy supply vcc not found, using dummy regulator
[ 9.670560] am335x-phy-driver 47401b00.usb-phy: GPIO lookup for consumer reset
[ 9.670597] am335x-phy-driver 47401b00.usb-phy: using device tree for GPIO lookup
[ 9.670620] of_get_named_gpiod_flags: can't parse 'reset-gpios' property of node '/ocp/usb@47400000/usb-phy@47401b00[0]'
[ 9.670634] of_get_named_gpiod_flags: can't parse 'reset-gpio' property of node '/ocp/usb@47400000/usb-phy@47401b00[0]'
[ 9.670648] am335x-phy-driver 47401b00.usb-phy: using lookup tables for GPIO lookup
[ 9.670663] am335x-phy-driver 47401b00.usb-phy: lookup for GPIO reset failed
[ 9.670677] am335x-phy-driver 47401b00.usb-phy: GPIO lookup for consumer vbus-detect
[ 9.670690] am335x-phy-driver 47401b00.usb-phy: using device tree for GPIO lookup
[ 9.670704] of_get_named_gpiod_flags: can't parse 'vbus-detect-gpios' property of node '/ocp/usb@47400000/usb-phy@47401b00[0]'
[ 9.670717] of_get_named_gpiod_flags: can't parse 'vbus-detect-gpio' property of node '/ocp/usb@47400000/usb-phy@47401b00[0]'
[ 9.670730] am335x-phy-driver 47401b00.usb-phy: using lookup tables for GPIO lookup
[ 9.670743] am335x-phy-driver 47401b00.usb-phy: lookup for GPIO vbus-detect failed
[ 9.670837] 47401b00.usb-phy supply vcc not found, using dummy regulator
[ 19.309693] usbcore: registered new interface driver usbfs
[ 19.315335] usbcore: registered new interface driver hub
[ 19.395983] usbcore: registered new device driver usb
[ 19.535444] musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, bulk combine, bulk split, HB-ISO Rx, HB-ISO Tx, SoftConn)
[ 19.535479] musb-hdrc: MHDRC RTL version 2.0
[ 19.535492] musb-hdrc: setup fifo_mode 4
[ 19.535519] musb-hdrc: 28/31 max ep, 16384/16384 memory
[ 19.535716] musb-hdrc musb-hdrc.0.auto: MUSB HDRC host driver
[ 19.602235] musb-hdrc musb-hdrc.0.auto: new USB bus registered, assigned bus number 1
[ 19.757245] musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, bulk combine, bulk split, HB-ISO Rx, HB-ISO Tx, SoftConn)
[ 19.757278] musb-hdrc: MHDRC RTL version 2.0
[ 19.757290] musb-hdrc: setup fifo_mode 4
[ 19.757312] musb-hdrc: 28/31 max ep, 16384/16384 memory
[ 19.757494] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
[ 19.814970] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 2
[ 22.248806] usb0: HOST MAC 6c:ec:eb:f9:6f:f5
[ 22.281596] usb0: MAC 4a:c9:fb:ce:23:8c
[ 23.505125] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
USB0 is working fine, it is able to mount the USB storage.
root@am335x-evm:~# dmesg | tail -n 15
[ 32.220637] PVR_K: UM DDK-(3699939) and KM DDK-(3699939) match. [ OK ]
[ 186.508652] usb 1-1: new high-speed USB device number 2 using musb-hdrc
[ 187.063382] SCSI subsystem initialized
[ 187.106821] usb-storage 1-1:1.0: USB Mass Storage device detected
[ 187.114631] scsi host0: usb-storage 1-1:1.0
[ 187.131664] usbcore: registered new interface driver usb-storage
[ 188.444225] scsi 0:0:0:0: Direct-Access General USB Flash Disk 1100 PQ: 0 ANSI: 0 CCS
[ 188.513994] sd 0:0:0:0: [sda] 7815168 512-byte logical blocks: (4.00 GB/3.73 GiB)
[ 188.556174] sd 0:0:0:0: [sda] Write Protect is off
[ 188.567790] sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00
[ 188.575460] sd 0:0:0:0: [sda] No Caching mode page found
[ 188.584751] sd 0:0:0:0: [sda] Assuming drive cache: write through
[ 188.614796] sda:
[ 188.626824] sd 0:0:0:0: [sda] Attached SCSI removable disk
[ 189.066832] FAT-fs (sda): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.