ML403 USB driver
Hi,
we just tried the USB driver (from Peter Korsgaard) from Grant's virtex tree.
Nevertheless we could not get the peripheral ports work as gadgets. Has anyone tried (and probably fixed) that before?
Anyway, only one of the two peripheral ports seems to be active.
We use kernel 2.6.22 (as some usb related stuff has recently changed and the driver would have to be changed), usb host works (usb-storage, cdc_ether, some more stuff we tested)
Regards,
Lorenz Kolb
Signature · 2 lines
View this message in context: http://www.nabble.com/ML403-USB-driver-tf4844098.html#a13858912 Sent from the linuxppc-embedded mailing list archive at Nabble.com.
Quoted 8 lines · Lorenz Kolb
Hi,
we just tried the USB driver (from Peter Korsgaard) from Grant's virtex tree.
Nevertheless we could not get the peripheral ports work as gadgets. Has anyone tried (and probably fixed) that before?
That driver does not work for gadget ports.
Quoted 2 lines
Anyway, only one of the two peripheral ports seems to be active.
Yes, I've got that problem here too. I haven't yet solved it. Any help would be appreciated.
Quoted 3 lines
We use kernel 2.6.22 (as some usb related stuff has recently changed and the driver would have to be changed), usb host works (usb-storage,
cdc_ether, some more stuff we tested)
Cheers,
g.
Signature · 4 lines
Grant Likely, B.Sc., P.Eng. Secret Lab Technologies Ltd. [email protected] (403) 399-0195
Quoted 4 lines · Grant Likely-2 wrote:
Quoted 1 line · Lorenz Kolb
Quoted 9 lines
Quoted 1 line
Anyway, only one of the two peripheral ports seems to be active.
Yes, I've got that problem here too. I haven't yet solved it. Any help would be appreciated.
Cheers,
g.
Well that's what we have found out till now, maybe it helps, or at least what we think to have found out:
- First of all to the non functioning peripheral port:
It is "USB Peripheral 1".
According to the schematics it should be powered using the OTGVBus-Port of the Cypress-Controller (nevertheless it has currently no level)
- Secondly there is no configuration 1 Host + 2 Peripherals according to the datasheet from Cypress
- Thirdly the initial configuration (at least that is what we are guessing) seems to be done via some standalone program coming from an Eeprom.
- The three pins near the UART port are the serial console for the Cypress chip (we have not yet done any tests with that).
- At least the peripherals are connected in a right way, as one SIE can only have one peripheral
Some question aside the peripheral topic:
Has anyone any idea how to make the cypress chip to have a _normal_ Host not an OTG one (as some USB-Hub might save us from our dilemma why we tried to use gadgets in peripheral mode)?
Regards,
Lorenz Kolb
Signature · 2 lines
View this message in context: http://www.nabble.com/ML403-USB-driver-tf4844098.html#a13872475 Sent from the linuxppc-embedded mailing list archive at Nabble.com.
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Lorenz" == Lorenz Kolb <[email protected]> writes:
Lorenz> Hi,
Lorenz> we just tried the USB driver (from Peter Korsgaard) from Lorenz> Grant's virtex tree.
Lorenz> Nevertheless we could not get the peripheral ports work as gadgets. Lorenz> Has anyone tried (and probably fixed) that before?
My driver so far only has host support. I'm working on the peripheral support (or rather, a colleage of mine is) but it's quite early days ..
Lorenz> Anyway, only one of the two peripheral ports seems to be active.
The Linux gadget stack only support a single peripheral port.
Signature · 1 line
Bye, Peter Korsgaard
Hi Peter,
I've done a bunch more work on the host side of the c67x00 driver. I'd like to try and get it into 2.6.25. I'm planning to post a cleaned up set of patches to the usb-list this afternoon for review.
However, the change set between what you posted and what I have now is quite large so I've also pushed my incremental patch set to my git tree so you can see how it has changed from your original patchset.
(BTW, ignore the last patch in the series; that was for experimentation only and it won't be in the cleaned up patchset)
You can see the tree at:
http://git.secretlab.ca/git/gitweb.cgi?p=linux-2.6-virtex.git;a=shortlog;h=virtex-c67x00-dev
Or you can pull from:
git://git.secretlab.ca/git/linux-2.6-virtex.git virtex-c67x00-dev
Grant Likely (17):
[C67x00] Fix calculation of frame bandwidth
[c67x00] Remove unnecessary references to pt_regs
[C67x00] Added error handling paths to lowlevel interface code [C67x00] Change 'struct c67x00_drv' to 'struct c67x00_device'
C67x00: Add registration banner
[C67x00] Merge c67x00-hub.c into c67x00-hcd.c
C67x00: fixes for 2.6.24
c67x00: consolidate header files
C67x00: Eliminate done list lock
c67x00: Fix incorrectly handled error path.
c67x00: Tighten up error paths
c67x00: Fix race condition in ll_start()
c67x00: eliminate unnecessary INIT_COMPLETION() in low level interface.
c67x00: Use an inline function instead of #define for dbg_td
c67x00: Fix manipulation of urb_iso_count
c67x00: fix unnecessary list_for_each_entry_safe()
c67x00: eliminate done tasklet
Peter Korsgaard (4):
[C67x00] Make usb_hcd_irq work for multi-role USB controllers w/
shared irq
[C67x00] Base support for the Cypress c67x00 multi-role USB controllers [C67x00] HCD support for Cypress c67x00
[C67x00] Gadget support for Cypress c67x00
drivers/usb/Kconfig | 2 + drivers/usb/Makefile | 2 + drivers/usb/c67x00/Kconfig | 22 + drivers/usb/c67x00/Makefile | 15 + drivers/usb/c67x00/c67x00-drv.c | 301 +++++++++ drivers/usb/c67x00/c67x00-hcd.c | 390 ++++++++++++ drivers/usb/c67x00/c67x00-hcd.h | 162 +++++ drivers/usb/c67x00/c67x00-ll-hpi.c | 512 ++++++++++++++++ drivers/usb/c67x00/c67x00-sched.c | 1188 ++++++++++++++++++++++++++++++++++++ drivers/usb/c67x00/c67x00-udc.c | 166 +++++ drivers/usb/c67x00/c67x00-udc.h | 59 ++ drivers/usb/c67x00/c67x00.h | 236 +++++++ drivers/usb/core/hcd.c | 6 +- drivers/usb/gadget/Kconfig | 7 + include/linux/usb/c67x00.h | 45 ++ 15 files changed, 3112 insertions(+), 1 deletions(-) create mode 100644 drivers/usb/c67x00/Kconfig create mode 100644 drivers/usb/c67x00/Makefile create mode 100644 drivers/usb/c67x00/c67x00-drv.c create mode 100644 drivers/usb/c67x00/c67x00-hcd.c create mode 100644 drivers/usb/c67x00/c67x00-hcd.h create mode 100644 drivers/usb/c67x00/c67x00-ll-hpi.c create mode 100644 drivers/usb/c67x00/c67x00-sched.c create mode 100644 drivers/usb/c67x00/c67x00-udc.c create mode 100644 drivers/usb/c67x00/c67x00-udc.h create mode 100644 drivers/usb/c67x00/c67x00.h create mode 100644 include/linux/usb/c67x00.h
Cheers,
g.
Quoted 25 lines · Peter Korsgaard
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Lorenz" == Lorenz Kolb <[email protected]> writes:
Lorenz> Hi,
Lorenz> we just tried the USB driver (from Peter Korsgaard) from Lorenz> Grant's virtex tree.
Lorenz> Nevertheless we could not get the peripheral ports work as gadgets. Lorenz> Has anyone tried (and probably fixed) that before?
My driver so far only has host support. I'm working on the peripheral support (or rather, a colleage of mine is) but it's quite early days ..
Lorenz> Anyway, only one of the two peripheral ports seems to be active.
The Linux gadget stack only support a single peripheral port.
--
Bye, Peter Korsgaard
_______________________________________________
Linuxppc-embedded mailing list
[email protected]
https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Signature · 4 lines
Grant Likely, B.Sc., P.Eng. Secret Lab Technologies Ltd. [email protected] (403) 399-0195