The line6usb driver references the device's idProduct and, in some
cases, the interface number in a number of places to determine device-
specific configuration values and to call device-specific functionality.
Rework code to leverage the device table matching more effectively.
Consolidate configuration settings into the properties entries and use
function pointers setup at initialization to remove much of the
conditional logic.

I have a TonePort UX2 that I've used for testing, meaning that some of
this is really only compile-tested.

Regards,

Chris

Chris Rorvick (25):
  staging: line6: Remove `device_bit' from properties
  staging: line6: Remove line6_pod_transmit_paramter()
  staging: line6: Remove unsupported X3 devices
  staging: line6: Cleanup device table
  staging: line6: Define a device type enum
  staging: line6: Index properties array with device type
  staging: line6: Key off of device type
  staging: line6: Remove idVendor and idProduct macros
  staging: line6: Remove useless comments
  staging: line6: Rename capability macros
  staging: line6: Use explicit indexes when defining properties
  staging: line6: List out capabilities individually
  staging: line6: Split out PODxt Live interfaces
  staging: line6: Split out POD HD500 interfaces
  staging: line6: Filter on Pocket POD interface
  staging: line6: Filter on UX2 interfaces
  staging: line6: Move altsetting to properties
  staging: line6: Move control endpoints to properties
  staging: line6: Remove stale Pocket POD PCM endpoints
  staging: line6: Move audio endpoints to properties
  staging: line6: Pass *_init() `usb_line6' pointers
  staging: line6: Pass *_process_message() `usb_line6' pointers
  staging: line6: Call *_process_message() via pointer
  staging: line6: Call *_disconnect() via pointer
  staging: line6: Make *_disconnect() functions static

 drivers/staging/line6/capture.c  |   9 +-
 drivers/staging/line6/driver.c   | 698 ++++++++++++++++++---------------------
 drivers/staging/line6/driver.h   |  57 ++--
 drivers/staging/line6/midi.c     |   4 +-
 drivers/staging/line6/pcm.c      |  55 +--
 drivers/staging/line6/pcm.h      |  12 +-
 drivers/staging/line6/playback.c |  11 +-
 drivers/staging/line6/pod.c      |  83 +++--
 drivers/staging/line6/pod.h      |  12 +-
 drivers/staging/line6/podhd.c    |  48 +--
 drivers/staging/line6/podhd.h    |   3 +-
 drivers/staging/line6/toneport.c | 113 ++++---
 drivers/staging/line6/toneport.h |   3 +-
 drivers/staging/line6/usbdefs.h  |  95 +-----
 drivers/staging/line6/variax.c   |  36 +-
 drivers/staging/line6/variax.h   |   4 +-
 16 files changed, 528 insertions(+), 715 deletions(-)

-- 
2.1.0

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to