Re: USB: ftdi-elan: client driver for ELAN Uxxx adapters - 3rd attempt

From: Greg KH
Date: Wed Sep 20 2006 - 18:00:57 EST


On Wed, Sep 13, 2006 at 11:26:04AM +0100, Tony Olech wrote:
> This "ftdi-elan" module is one half of the "driver" for
> ELAN's Uxxx series adapters which are USB to PCMCIA CardBus
> adapters. Currently only the U132 adapter is available and
> it's module is called "u132-hcd".
>
> When the USB hot plug subsystem detects a Uxxx series adapter
> it should load this module.
>
> Upon a successful device probe() the jtag device file interface
> is created and the status workqueue started up.
>
> The jtag device file interface exists for the purpose of
> updating the firmware in the Uxxx series adapter, but as
> yet it had never been used.
>
> The status workqueue initializes the Uxxx and then sits there
> polling the Uxxx until a supported PCMCIA CardBus device is
> detected it will start the command and respond workqueues
> and then load the module that handles the device. This will
> initially be only the u132-hcd module. The status workqueue
> then just polls the Uxxx looking for card ejects.
>
> The command and respond workqueues implement a command
> sequencer for communicating with the firmware on the other
> side of the FTDI chip in the Uxxx. This "ftdi-elan" module
> exports some functions to interface with the sequencer.
>
> Note that this module is a USB client driver.
>
> Note that the "u132-hcd" module is a (cut-down OHCI)
> host controller.
>
> Thus we have a topology with the parent of a host controller
> being a USB client! This really stresses the USB subsystem
> semaphore/mutex handling in the module removal.
>
> Signed-off-by: Tony Olech <tony.olech@xxxxxxxxxxxxxxxxxxxxxx>

I've applied this and fixed the build issue (again with the
drivers/usb/Makefile file) and the Kconfig entries don't need to be
duplicated so many times :)

Also, I've fixed up the sparse warnings, but you are doing something
very wierd with the user buffer still, and I get these warnings:

drivers/usb/misc/ftdi-elan.c:1231:65: warning: dereference of noderef expression
drivers/usb/misc/ftdi-elan.c:1237:65: warning: dereference of noderef expression

with sparse still. I think it's a bunch of debug code that is remaining
in that function, care to send me a follow-on patch that removes it?

thanks,

greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/