2008-06-26 17:57:15

by Ben Collins

[permalink] [raw]
Subject: Ambiguous dupe in libusual device list

In unusual_devs.h, there are these two entries:

#ifdef CONFIG_USB_STORAGE_DATAFAB
/* Submitted by Olaf Hering <[email protected]> */
UNUSUAL_DEV( 0x07c4, 0xa109, 0x0000, 0xffff,
"Datafab Systems, Inc.",
"USB to CF + SM Combo (LC1)",
US_SC_SCSI, US_PR_DATAFAB, NULL,
0 ),
#endif
#ifdef CONFIG_USB_STORAGE_SDDR55
/* SM part - aeb <[email protected]> */
UNUSUAL_DEV( 0x07c4, 0xa109, 0x0000, 0xffff,
"Datafab Systems, Inc.",
"USB to CF + SM Combo (LC1)",
US_SC_SCSI, US_PR_SDDR55, NULL,
US_FL_SINGLE_LUN ),
#endif

If I'm not mistaken (and because libusual is pretty well abstracted, I
might be) this is an ambiguous dupe that isn't resolved with any
checking (IOW, the second entry is likely never used), at least when
both config options are enabled.

If that's not the case, then maybe a comment would be in order? If the
case is that these two options should not be enabled at the same time,
then perhaps some Kconfig magic is required.


2008-06-26 19:10:26

by Matthew Dharm

[permalink] [raw]
Subject: Re: [usb-storage] Ambiguous dupe in libusual device list

On Thu, Jun 26, 2008 at 01:32:36PM -0400, Ben Collins wrote:
> In unusual_devs.h, there are these two entries:
>
> #ifdef CONFIG_USB_STORAGE_DATAFAB
> /* Submitted by Olaf Hering <[email protected]> */
> UNUSUAL_DEV( 0x07c4, 0xa109, 0x0000, 0xffff,

> #ifdef CONFIG_USB_STORAGE_SDDR55
> /* SM part - aeb <[email protected]> */
> UNUSUAL_DEV( 0x07c4, 0xa109, 0x0000, 0xffff,

> If I'm not mistaken (and because libusual is pretty well abstracted, I
> might be) this is an ambiguous dupe that isn't resolved with any
> checking (IOW, the second entry is likely never used), at least when
> both config options are enabled.

Reading the code, it looks like it's a bit more complex than that.

The first entry enables use of a driver (if it's compiled it) which can
drive both slots on a dual-slot device.

The first entry enables use of a driver (if it's compiled it) which can
only drive one slot on a dual-slot device.

This is really the type of thing which shows that we need some sort of
semi-generic "preference" mechanism for driver binding...

Matt

--
Matthew Dharm Home: [email protected]
Maintainer, Linux USB Mass Storage Driver

M: No, Windows doesn't have any nag screens.
C: Then what are those blue and white screens I get every day?
-- Mike and Cobb
User Friendly, 1/4/1999


Attachments:
(No filename) (1.31 kB)
(No filename) (189.00 B)
Download all attachments