On Wed, Jan 03, 2024 at 03:54:29PM +0000, Mark Hills wrote: > The ScratchAmp worked perfectly with a quirk, but now that seems to have > regressed and the device is no longer detected [1]. > > It's design is from 2002, based on class-compliant (Philips UDA1325H) > chips. It hides itself behind a 'vendor specific' description, presumably > as it was launched in a closed system with specific hardware and software > for DJ'ing. Hi Mark, great fan of your work with xwax here. Perhaps adding USB_DEVICE_VENDOR_SPEC(0x103d, 0x0100) and USB_DEVICE_VENDOR_SPEC(0x103d, 0x0101) to quirks-table.h can do the trick? Regards, Geraldo Nascimento > > So this quirk was introduced in 2007: > > +/* Stanton/N2IT Final Scratch v1 device ('Scratchamp') */ > +{ > + USB_DEVICE(0x103d, 0x0100), > + .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { > + .vendor_name = "Stanton", > + .product_name = "ScratchAmp", > + .ifnum = QUIRK_NO_INTERFACE > + } > +}, > +{ > + USB_DEVICE(0x103d, 0x0101), > + .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { > + .vendor_name = "Stanton", > + .product_name = "ScratchAmp", > + .ifnum = QUIRK_NO_INTERFACE > + } > +}, > > In a modern kernel, the (ineffective) quirk is now in sound/usb/card.c: > > + /* Stanton/N2IT Final Scratch v1 device ('Scratchamp') */ > + DEVICE_NAME(0x103d, 0x0100, "Stanton", "ScratchAmp"), > + DEVICE_NAME(0x103d, 0x0101, "Stanton", "ScratchAmp"), > > Is there a functional difference between these quirks and/or any reason > the device would no longer be detected? > > I noted the commits went via use of QUIRK_RENAME_DEVICE(), perhaps > misleading the refactoring to assume the quirk was purely a rename. > > Below is an "lsusb" of the device, dated from 2008; I don't currently have > access to my own device, or know exactly when this regressed. > > Many thanks > > [1] https://sourceforge.net/p/xwax/mailman/message/48496984/ > [2] http://www.pogo.org.uk/~mark/linuxdj/scratchamp.html > [3] https://finalscratch.sourceforge.net/innards/ > > -- > Mark