Re: MAX3421E Linux driver?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 03/01/2014 07:53 AM, David Mosberger wrote:
> Attached is v0.1 of the max3421 driver.  This one actually is trying to do
> (mostly) the right things.  It's event-driven (no busy-waiting anymore).
> 
> The URB-scheduling implemented in max3421_next_ep() is still simplistic: it
> runs all periodic transfers, then runs non-periodic transfers until there
> is no more (useful) work to do or the next frame starts.
> 
> With this version of the driver:
> 
>    1. A USB-keyboard seems to work reliably (as per evtest anyhow).
>    2. Several USB mass-storage devices get recognized correctly.  There are
>    still some issues with reliably writing data, though.
>    3. Some WIFI dongles are starting to work.
> 
> I'd be very interested in getting feedback on this driver as this is the
> first time I tried my hands at a USB host-controller driver.

Without going too much into detail wrt the actual implementation, here
are two things that caught my eye:

1. Your patch has a large number of style issues, which
scripts/checkpatch.pl will tell you more about.

2. Is there any good reason for not using the regmap abstraction
framework for the SPI layer? It has convenience functions for bit
fiddling, a register cache and a nice debugging interface through
debugfs, among other things. See include/linux/regmap.h.


Also, out of curiosity: which SPI master controller are you using in
your setup? Is the whole thing actually fast enough for real-world
applications? Which data rates are you able to get through on
mass-storage devices for instance?


Thanks,
Daniel


--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux