am57xx: issues (usb 3.0)

Hey Everyone,

I was just pointed out an issue with usb 3.0 today, when comparing my
image with ti's sdk 2.0.0.0, our 3.0 is broken:

So in u-boot we do:

usb reset (scan usb bus)
scsi reset (scan scsi bus)
eMMC
microSD..

Well, the "usb reset" seems to hose the usb bus for the kernel..

and "scsi" needs "usb reset" otherwise it doesn't work in u-boot..

So... Today, if you want to test usb 3.0 do this:
U-Boot 2015.07-00188-g7f9169f (Dec 02 2015 - 09:30:06 -0600), Build:
jenkins-github_Bootloader-Builder-294

CPU : DRA752 ES1.1
BoaI2C: ready
DRAM: 2 GiB
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1

** Unable to use mmc 0:1 for loading the env **
Using default environment

SATA link 0 timeout.
AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: 64bit ncq stag pm led clo only pmp pio slum part ccc apst
SCSI: SATA link 0 timeout.
AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: 64bit ncq stag pm led clo only pmp pio slum part ccc apst
scanning bus for devices...
Found 0 device(s).
Net: <ethaddr> not set. Validating first E-fuse MAC
cpsw
Hit any key to stop autoboot: 0
U-Boot# run findfdt ; setenv mmcdev 0; setenv interface mmc ; run mmc_boot ;

debian@BeagleBoard-X15:~$ uname -r
4.1.13-ti-r35

(usb 3.0 device moved to left)
debian@BeagleBoard-X15:~$ lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
    >__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 5000M
        >__ Port 1: Dev 7, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
    >__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M

(usb 3.0 device moved to top right)
debian@BeagleBoard-X15:~$ lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
    >__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 5000M
        >__ Port 2: Dev 8, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
    >__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M

(usb 3.0 device moved to bottom right)
debian@BeagleBoard-X15:~$ lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
    >__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 5000M
        >__ Port 3: Dev 9, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
    >__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M

Otherwise by default:

U-Boot 2015.07-00188-g7f9169f (Dec 02 2015 - 09:30:06 -0600), Build:
jenkins-github_Bootloader-Builder-294

CPU : DRA752 ES1.1
BoaI2C: ready
DRAM: 2 GiB
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1

** Unable to use mmc 0:1 for loading the env **
Using default environment

SATA link 0 timeout.
AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: 64bit ncq stag pm led clo only pmp pio slum part ccc apst
SCSI: SATA link 0 timeout.
AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: 64bit ncq stag pm led clo only pmp pio slum part ccc apst
scanning bus for devices...
Found 0 device(s).
Net: <ethaddr> not set. Validating first E-fuse MAC
cpsw
Hit any key to stop autoboot: 0
resetting USB...
USB0: Register 2000140 NbrPorts 2
Starting the controller
USB XHCI 1.00
scanning bus 0 for devices... 2 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found

USB device 0: unknown device

Reset SCSI
SATA link 0 timeout.
AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: 64bit ncq stag pm led clo only pmp pio slum part ccc apst
scanning bus for devices...
Found 0 device(s).

SCSI device 0:
    Device 0: not available
switch to partitions #0, OK
mmc0 is current device
Scanning mmc device 0
Checking for: /uEnv.txt ...
Checking for: /boot/uEnv.txt ...
260 bytes read in 9 ms (27.3 KiB/s)
Loaded environment from /boot/uEnv.txt
Checking if uname_r is set in /boot/uEnv.txt ...
debug: [uname_r=4.1.13-ti-r35] ...
loading /boot/vmlinuz-4.1.13-ti-r35 ...
8284232 bytes read in 416 ms (19 MiB/s)
loading /boot/dtbs/4.1.13-ti-r35/am57xx-beagle-x15.dtb ...
155642 bytes read in 34 ms (4.4 MiB/s)
loading /boot/initrd.img-4.1.13-ti-r35 ...
4403306 bytes read in 227 ms (18.5 MiB/s)
debug: [console=ttyO2,115200n8 root=/dev/mmcblk0p1 ro rootfstype=ext4
rootwait coherent_pool=1M quiet] ...
debug: [bootz 0x82000000 0x88080000:43306a 0x88000000] ...
Kernel image @ 0x82000000 [ 0x000000 - 0x7e6848 ]
## Flattened Device Tree blob at 88000000
   Booting using the fdt blob at 0x88000000
   Loading Ramdisk to 8fbcc000, end 8ffff06a ... OK
   Loading Device Tree to 8fba3000, end 8fbcbff9 ... OK

(usb 3.0 device moved to left)
debian@BeagleBoard-X15:~$ lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
    >__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M

(usb 3.0 device moved to top right)
debian@BeagleBoard-X15:~$ lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
    >__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M

(usb 3.0 device moved to bottom right)
debian@BeagleBoard-X15:~$ lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
    >__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M

So yeah, usb 3.0 dead.......

Regards,