
On 7 April 2016 at 16:36, Marek Vasut marex@denx.de wrote:
On 04/08/2016 01:31 AM, George Broz wrote:
On 7 April 2016 at 13:39, Marek Vasut marex@denx.de wrote:
On 04/07/2016 03:14 PM, George Broz wrote:
On 6 April 2016 at 19:05, Marek Vasut marex@denx.de wrote:
On 04/07/2016 03:42 AM, George Broz wrote:
Hi,
>> U-Boot SPL 2016.03 (Apr 05 2016 - 17:57:23) >> drivers/ddr/altera/sequencer.c: Preparing to start memory calibration >> drivers/ddr/altera/sequencer.c: CALIBRATION PASSED >> drivers/ddr/altera/sequencer.c: Calibration complete >> Trying to boot from MMC1 >> >> First time that an SPL built from a recent version has run successfully >> on that board. >> >> Will try it out on de0 tomorrow morning... > > This is great news, thanks!
This patch also fixes the intermittent SDRAM calibration failures on my de0_nano_soc board. Thanks so much!
Great
Now with up-to-date versions of SPL and image... I have some USB questions/news/observations:
When using an OTG cable between USB port and mass storage device, the de0_nano_soc board is able to detect and access some USB sticks. The detection with these is almost immediate from when 'usb start' is entered. If the same (working) USB stick is used with a non-OTG cable, I get the timeout messages from before:
dwc_otg_core_host_init: Timeout! dwc_otg_core_host_init: Timeout!
and this is true even if I add 'dr_mode = "host" '
I don't think the driver supports the dr_mode property yet. Patch is welcome.
to the dts for usb1 of the de0 (and rebuild/reload). The older SPL/image that ships from the Terasic factory detects USB sticks with a non-OTG cable, (the cable that ships with the unit). What is the correct "expected" behavior here?? Is an OTG cable required or not?
The DWC2 driver tests the value of the OTG ID pin, so if you don't use OTG cable with correct ID pin setup, the host won't work.
Even with the OTG cable, some USB sticks "fail" in a not-so-great way. I have a Kingston stick and the sequence goes like this:
=> usb reset resetting USB... USB0: Core Release: 2.93a scanning bus 0 for devices...
<<< 1 minute, 41 seconds pass before >>> ... Device NOT ready Request Sense returned 00 00 00
<<< then another 24 seconds pass before >>>
2 USB Device(s) found
It was able to read some information about the stick:
=> usb info : 2: Mass Storage, USB Revision 2.0
- Kingston DataTraveler SE9 0014857749E5ECB0173000D3
- Class: (from Interface) Mass Storage
- PacketSize: 64 Configurations: 1
- Vendor: 0x0930 Product 0x6545 Version 1.0 Configuration: 1
- Interfaces: 1 Bus Powered 200mA Interface: 0
- Alternate Setting 0, Endpoints: 2
- Class Mass Storage, Transp. SCSI, Bulk only
- Endpoint 1 In Bulk MaxPacket 512
- Endpoint 2 Out Bulk MaxPacket 512
BUT, the stick cannot be accessed otherwise, for example:
=> usb part 0 ## Unknown partition table type 0
Is there any feature of the USB stick that would indicate whether or not it is "compatible" with u-boot?
Can you do "dcache off" before you do "usb reset" and see if that fixes the problem ?
The behavior is unchanged if "dcache off" done before "usb reset".
Try with the attached patch (and probably with dcache off)
The patch applied cleanly. The behavior is unchanged with both dcache on and off. The "good" sticks still work, and "bad" sticks still don't.
OK. Then I should probably go hunting for Kingston DataTraveler SE9, right ? Can you give me a link to the stick you have, so I know what crappy device to look for ? Thanks!
Here it is [1] - I have the 8GB version.
I think there will always be crappy sticks that don't work... but do you have any advice as to what properties will/might generally cause a problem?
[1] http://www.amazon.com/Kingston-Digital-DataTraveler-DTSE9H-16GBZET/dp/B00DYQ...
FYI - here is the verbose lsusb output for this particular device for what it's worth:
Bus 001 Device 005: ID 0930:6545 Toshiba Corp. Kingston DataTraveler 102 Flash Drive / HEMA Flash Drive 2 GB / PNY Attache 4GB Stick Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x0930 Toshiba Corp. idProduct 0x6545 Kingston DataTraveler 102 Flash Drive / HEMA Flash Drive 2 GB / PNY Attache 4GB Stick bcdDevice 1.00 iManufacturer 1 Kingston iProduct 2 DataTraveler SE9 iSerial 3 0014857749E5ECB0173000D3 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 32 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 200mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 80 Bulk-Only iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Device Qualifier (for other device speed): bLength 10 bDescriptorType 6 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 bNumConfigurations 1 Device Status: 0x0000 (Bus Powered)
Best regards, --George Broz
Best regards, Marek Vasut