Re: [PATCH] isd200: limit to BLK_DEV_IDE

Randy.Dunlap
2006-03-30T23:25:43Z

On Thu, 30 Mar 2006, Linus Torvalds wrote:

> On Thu, 30 Mar 2006, Randy.Dunlap wrote:
> >
> > Limit USB_STORAGE_ISD200 to whatever BLK_DEV_IDE and USB_STORAGE
> > are set to (y, m) since isd200 calls ide_fix_driveid() in the
> > BLK_DEV_IDE code.
> >
> > Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
> > ---
> > drivers/usb/storage/Kconfig | 2 +-
> > 1 files changed, 1 insertion(+), 1 deletion(-)
> >
> > --- linux-2616-z.orig/drivers/usb/storage/Kconfig
> > +++ linux-2616-z/drivers/usb/storage/Kconfig
> > @@ -48,7 +48,7 @@ config USB_STORAGE_FREECOM
> >
> > config USB_STORAGE_ISD200
> > bool "ISD-200 USB/ATA Bridge support"
> > - depends on USB_STORAGE && BLK_DEV_IDE
> > + depends on USB_STORAGE && (BLK_DEV_IDE=y || BLK_DEV_IDE=m && USB_STORAGE=m)
>
> Hmm. That expression is _really_ hard to figure out.

Yes, I just modeled it on some other similar Kconfigs.

> It would be more logical to make it
>
> depends on USB_STORAGE && (BLK_DEV_IDE=y || BLK_DEV_IDE=USB_STORAGE)
>
> or, even more preferably, split up the rules as two separate dependencies:
>
> depends on USB_STORAGE
> depends on BLK_DEV_IDE=y || BLK_DEV_IDE=USB_STORAGE
>
> (where that second thing really _should_ be expressible as
>
> depends on BLK_DEV_IDE >= USB_STORAGE
>
> but the kconfig language doesn't support that syntax..)

In some way, the original line made sense to me:
depends on USB_STORAGE && BLK_DEV_IDE
where we have: =y && =m

so if USB_STORAGE_ISD200 were a tristate, it would have been limited
to 'm', but since it's a bool, it's not limited.

New patch is below.
--

From: Randy Dunlap <rdunlap@xenotime.net>

Limit USB_STORAGE_ISD200 to whatever BLK_DEV_IDE and USB_STORAGE
are set to (y, m) since isd200 calls ide_fix_driveid() in the
BLK_DEV_IDE code.

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
---
drivers/usb/storage/Kconfig | 3 ++-
1 files changed, 2 insertions(+), 1 deletion(-)

--- linux-2616-z.orig/drivers/usb/storage/Kconfig
+++ linux-2616-z/drivers/usb/storage/Kconfig
@@ -48,7 +48,8 @@ config USB_STORAGE_FREECOM

config USB_STORAGE_ISD200
bool "ISD-200 USB/ATA Bridge support"
- depends on USB_STORAGE && BLK_DEV_IDE
+ depends on USB_STORAGE
+ depends on BLK_DEV_IDE=y || BLK_DEV_IDE=USB_STORAGE
---help---
Say Y here if you want to use USB Mass Store devices based
on the In-Systems Design ISD-200 USB/ATA bridge.