2006-01-15 21:57:39

by Randy Dunlap

[permalink] [raw]
Subject: [PATCH/RFC] SATA in its own config menu

From: Randy Dunlap <[email protected]>

Put SATA into its own menu. Reason: using SCSI is an
implementation detail that users need not know about.

Enabling SATA selects SCSI since SATA uses SCSI as a function
library supplier. It also enables BLK_DEV_SD since that is
what SATA drives look like in Linux.

Signed-off-by: Randy Dunlap <[email protected]>
---
drivers/Kconfig | 2
drivers/scsi/Kconfig | 138 --------------------------------------------
drivers/scsi/Kconfig.sata | 142 ++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 144 insertions(+), 138 deletions(-)

--- linux-2615-g10.orig/drivers/scsi/Kconfig
+++ linux-2615-g10/drivers/scsi/Kconfig
@@ -461,144 +461,6 @@ config SCSI_IN2000

source "drivers/scsi/megaraid/Kconfig.megaraid"

-config SCSI_SATA
- tristate "Serial ATA (SATA) support"
- depends on SCSI
- help
- This driver family supports Serial ATA host controllers
- and devices.
-
- If unsure, say N.
-
-config SCSI_SATA_AHCI
- tristate "AHCI SATA support"
- depends on SCSI_SATA && PCI
- help
- This option enables support for AHCI Serial ATA.
-
- If unsure, say N.
-
-config SCSI_SATA_SVW
- tristate "ServerWorks Frodo / Apple K2 SATA support"
- depends on SCSI_SATA && PCI
- help
- This option enables support for Broadcom/Serverworks/Apple K2
- SATA support.
-
- If unsure, say N.
-
-config SCSI_ATA_PIIX
- tristate "Intel PIIX/ICH SATA support"
- depends on SCSI_SATA && PCI
- help
- This option enables support for ICH5 Serial ATA.
- If PATA support was enabled previously, this enables
- support for select Intel PIIX/ICH PATA host controllers.
-
- If unsure, say N.
-
-config SCSI_SATA_MV
- tristate "Marvell SATA support (HIGHLY EXPERIMENTAL)"
- depends on SCSI_SATA && PCI && EXPERIMENTAL
- help
- This option enables support for the Marvell Serial ATA family.
- Currently supports 88SX[56]0[48][01] chips.
-
- If unsure, say N.
-
-config SCSI_SATA_NV
- tristate "NVIDIA SATA support"
- depends on SCSI_SATA && PCI && EXPERIMENTAL
- help
- This option enables support for NVIDIA Serial ATA.
-
- If unsure, say N.
-
-config SCSI_PDC_ADMA
- tristate "Pacific Digital ADMA support"
- depends on SCSI_SATA && PCI
- help
- This option enables support for Pacific Digital ADMA controllers
-
- If unsure, say N.
-
-config SCSI_SATA_QSTOR
- tristate "Pacific Digital SATA QStor support"
- depends on SCSI_SATA && PCI
- help
- This option enables support for Pacific Digital Serial ATA QStor.
-
- If unsure, say N.
-
-config SCSI_SATA_PROMISE
- tristate "Promise SATA TX2/TX4 support"
- depends on SCSI_SATA && PCI
- help
- This option enables support for Promise Serial ATA TX2/TX4.
-
- If unsure, say N.
-
-config SCSI_SATA_SX4
- tristate "Promise SATA SX4 support"
- depends on SCSI_SATA && PCI && EXPERIMENTAL
- help
- This option enables support for Promise Serial ATA SX4.
-
- If unsure, say N.
-
-config SCSI_SATA_SIL
- tristate "Silicon Image SATA support"
- depends on SCSI_SATA && PCI && EXPERIMENTAL
- help
- This option enables support for Silicon Image Serial ATA.
-
- If unsure, say N.
-
-config SCSI_SATA_SIL24
- tristate "Silicon Image 3124/3132 SATA support"
- depends on SCSI_SATA && PCI && EXPERIMENTAL
- help
- This option enables support for Silicon Image 3124/3132 Serial ATA.
-
- If unsure, say N.
-
-config SCSI_SATA_SIS
- tristate "SiS 964/180 SATA support"
- depends on SCSI_SATA && PCI && EXPERIMENTAL
- help
- This option enables support for SiS Serial ATA 964/180.
-
- If unsure, say N.
-
-config SCSI_SATA_ULI
- tristate "ULi Electronics SATA support"
- depends on SCSI_SATA && PCI && EXPERIMENTAL
- help
- This option enables support for ULi Electronics SATA.
-
- If unsure, say N.
-
-config SCSI_SATA_VIA
- tristate "VIA SATA support"
- depends on SCSI_SATA && PCI
- help
- This option enables support for VIA Serial ATA.
-
- If unsure, say N.
-
-config SCSI_SATA_VITESSE
- tristate "VITESSE VSC-7174 SATA support"
- depends on SCSI_SATA && PCI
- help
- This option enables support for Vitesse VSC7174 Serial ATA.
-
- If unsure, say N.
-
-config SCSI_SATA_INTEL_COMBINED
- bool
- depends on IDE=y && !BLK_DEV_IDE_SATA && (SCSI_SATA_AHCI || SCSI_ATA_PIIX)
- default y
-
config SCSI_BUSLOGIC
tristate "BusLogic SCSI support"
depends on (PCI || ISA || MCA) && SCSI && ISA_DMA_API
--- /dev/null
+++ linux-2615-g10/drivers/scsi/Kconfig.sata
@@ -0,0 +1,142 @@
+menu "Serial ATA (SATA) device support"
+
+config SCSI_SATA
+ tristate "Serial ATA (SATA) support"
+ select SCSI
+ select BLK_DEV_SD
+ help
+ This driver family supports Serial ATA host controllers
+ and devices.
+
+ If unsure, say N.
+
+config SCSI_SATA_AHCI
+ tristate "AHCI SATA support"
+ depends on SCSI_SATA && PCI
+ help
+ This option enables support for AHCI Serial ATA.
+
+ If unsure, say N.
+
+config SCSI_SATA_SVW
+ tristate "ServerWorks Frodo / Apple K2 SATA support"
+ depends on SCSI_SATA && PCI
+ help
+ This option enables support for Broadcom/Serverworks/Apple K2
+ SATA support.
+
+ If unsure, say N.
+
+config SCSI_ATA_PIIX
+ tristate "Intel PIIX/ICH SATA support"
+ depends on SCSI_SATA && PCI
+ help
+ This option enables support for ICH5 Serial ATA.
+ If PATA support was enabled previously, this enables
+ support for select Intel PIIX/ICH PATA host controllers.
+
+ If unsure, say N.
+
+config SCSI_SATA_MV
+ tristate "Marvell SATA support (HIGHLY EXPERIMENTAL)"
+ depends on SCSI_SATA && PCI && EXPERIMENTAL
+ help
+ This option enables support for the Marvell Serial ATA family.
+ Currently supports 88SX[56]0[48][01] chips.
+
+ If unsure, say N.
+
+config SCSI_SATA_NV
+ tristate "NVIDIA SATA support"
+ depends on SCSI_SATA && PCI && EXPERIMENTAL
+ help
+ This option enables support for NVIDIA Serial ATA.
+
+ If unsure, say N.
+
+config SCSI_PDC_ADMA
+ tristate "Pacific Digital ADMA support"
+ depends on SCSI_SATA && PCI
+ help
+ This option enables support for Pacific Digital ADMA controllers
+
+ If unsure, say N.
+
+config SCSI_SATA_QSTOR
+ tristate "Pacific Digital SATA QStor support"
+ depends on SCSI_SATA && PCI
+ help
+ This option enables support for Pacific Digital Serial ATA QStor.
+
+ If unsure, say N.
+
+config SCSI_SATA_PROMISE
+ tristate "Promise SATA TX2/TX4 support"
+ depends on SCSI_SATA && PCI
+ help
+ This option enables support for Promise Serial ATA TX2/TX4.
+
+ If unsure, say N.
+
+config SCSI_SATA_SX4
+ tristate "Promise SATA SX4 support"
+ depends on SCSI_SATA && PCI && EXPERIMENTAL
+ help
+ This option enables support for Promise Serial ATA SX4.
+
+ If unsure, say N.
+
+config SCSI_SATA_SIL
+ tristate "Silicon Image SATA support"
+ depends on SCSI_SATA && PCI && EXPERIMENTAL
+ help
+ This option enables support for Silicon Image Serial ATA.
+
+ If unsure, say N.
+
+config SCSI_SATA_SIL24
+ tristate "Silicon Image 3124/3132 SATA support"
+ depends on SCSI_SATA && PCI && EXPERIMENTAL
+ help
+ This option enables support for Silicon Image 3124/3132 Serial ATA.
+
+ If unsure, say N.
+
+config SCSI_SATA_SIS
+ tristate "SiS 964/180 SATA support"
+ depends on SCSI_SATA && PCI && EXPERIMENTAL
+ help
+ This option enables support for SiS Serial ATA 964/180.
+
+ If unsure, say N.
+
+config SCSI_SATA_ULI
+ tristate "ULi Electronics SATA support"
+ depends on SCSI_SATA && PCI && EXPERIMENTAL
+ help
+ This option enables support for ULi Electronics SATA.
+
+ If unsure, say N.
+
+config SCSI_SATA_VIA
+ tristate "VIA SATA support"
+ depends on SCSI_SATA && PCI
+ help
+ This option enables support for VIA Serial ATA.
+
+ If unsure, say N.
+
+config SCSI_SATA_VITESSE
+ tristate "VITESSE VSC-7174 SATA support"
+ depends on SCSI_SATA && PCI
+ help
+ This option enables support for Vitesse VSC7174 Serial ATA.
+
+ If unsure, say N.
+
+config SCSI_SATA_INTEL_COMBINED
+ bool
+ depends on IDE=y && !BLK_DEV_IDE_SATA && (SCSI_SATA_AHCI || SCSI_ATA_PIIX)
+ default y
+
+endmenu
--- linux-2615-g10.orig/drivers/Kconfig
+++ linux-2615-g10/drivers/Kconfig
@@ -18,6 +18,8 @@ source "drivers/ide/Kconfig"

source "drivers/scsi/Kconfig"

+source "drivers/scsi/Kconfig.sata"
+
source "drivers/cdrom/Kconfig"

source "drivers/md/Kconfig"


---


2006-01-16 12:09:03

by Jan Engelhardt

[permalink] [raw]
Subject: Re: [PATCH/RFC] SATA in its own config menu

>Put SATA into its own menu. Reason: using SCSI is an
>implementation detail that users need not know about.
>
>Enabling SATA selects SCSI since SATA uses SCSI as a function
>library supplier. It also enables BLK_DEV_SD since that is
>what SATA drives look like in Linux.

Good idea.

>--- /dev/null
>+++ linux-2615-g10/drivers/scsi/Kconfig.sata
>@@ -0,0 +1,142 @@
>+menu "Serial ATA (SATA) device support"
>+
>+config SCSI_SATA
>+ tristate "Serial ATA (SATA) support"
>+ select SCSI
>+ select BLK_DEV_SD
>+ help
>+ This driver family supports Serial ATA host controllers
>+ and devices.
>+
>+ If unsure, say N.

I'd prefer

menuconfig SCSI_SATA
tristate "Serial ATA (SATA) suport"
select SCSI...



Jan Engelhardt
--
| Alphagate Systems, http://alphagate.hopto.org/
| jengelh's site, http://jengelh.hopto.org/

2006-01-16 12:13:32

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [PATCH/RFC] SATA in its own config menu

On Sun, Jan 15, 2006 at 01:57:28PM -0800, Randy.Dunlap wrote:
> From: Randy Dunlap <[email protected]>
>
> Put SATA into its own menu. Reason: using SCSI is an
> implementation detail that users need not know about.
>
> Enabling SATA selects SCSI since SATA uses SCSI as a function
> library supplier. It also enables BLK_DEV_SD since that is
> what SATA drives look like in Linux.

we'll soon support (or already do?) support sata atapi, when this
won't be true anymore. Please never select scsi upper drivers from
lower drivers, this independence is the whole point of the layered
architecture.

2006-01-16 14:10:16

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH/RFC] SATA in its own config menu

On Mon, Jan 16 2006, Christoph Hellwig wrote:
> On Sun, Jan 15, 2006 at 01:57:28PM -0800, Randy.Dunlap wrote:
> > From: Randy Dunlap <[email protected]>
> >
> > Put SATA into its own menu. Reason: using SCSI is an
> > implementation detail that users need not know about.
> >
> > Enabling SATA selects SCSI since SATA uses SCSI as a function
> > library supplier. It also enables BLK_DEV_SD since that is
> > what SATA drives look like in Linux.
>
> we'll soon support (or already do?) support sata atapi, when this
> won't be true anymore. Please never select scsi upper drivers from
> lower drivers, this independence is the whole point of the layered
> architecture.

It's already possible, and besides you could be using sg with your SATA
devices stand-alone if you so wanted. So this selection is indeed a
nonsensical one, it's an invalid dependency.

--
Jens Axboe

2006-01-16 14:16:40

by Jeff Garzik

[permalink] [raw]
Subject: Re: [PATCH/RFC] SATA in its own config menu

Randy.Dunlap wrote:
> From: Randy Dunlap <[email protected]>
>
> Put SATA into its own menu. Reason: using SCSI is an
> implementation detail that users need not know about.
>
> Enabling SATA selects SCSI since SATA uses SCSI as a function
> library supplier. It also enables BLK_DEV_SD since that is
> what SATA drives look like in Linux.
>
> Signed-off-by: Randy Dunlap <[email protected]>
> ---
> drivers/Kconfig | 2
> drivers/scsi/Kconfig | 138 --------------------------------------------
> drivers/scsi/Kconfig.sata | 142 ++++++++++++++++++++++++++++++++++++++++++++++
> 3 files changed, 144 insertions(+), 138 deletions(-)

This needs to be done after the code gets moved to drivers/ata...

Jeff



2006-01-17 04:59:43

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH/RFC] SATA in its own config menu

On Mon, 16 Jan 2006 09:16:28 -0500 Jeff Garzik wrote:

> Randy.Dunlap wrote:
> > From: Randy Dunlap <[email protected]>
> >
> > Put SATA into its own menu. Reason: using SCSI is an
> > implementation detail that users need not know about.
> >
> > Enabling SATA selects SCSI since SATA uses SCSI as a function
> > library supplier. It also enables BLK_DEV_SD since that is
> > what SATA drives look like in Linux.
> >
> > Signed-off-by: Randy Dunlap <[email protected]>
> > ---
> > drivers/Kconfig | 2
> > drivers/scsi/Kconfig | 138 --------------------------------------------
> > drivers/scsi/Kconfig.sata | 142 ++++++++++++++++++++++++++++++++++++++++++++++
> > 3 files changed, 144 insertions(+), 138 deletions(-)
>
> This needs to be done after the code gets moved to drivers/ata...

Thanks. It was an RFC and it got comments.
That's all that I hoped for.

---
~Randy

2006-01-17 16:50:41

by Jan Engelhardt

[permalink] [raw]
Subject: Re: [PATCH/RFC] SATA in its own config menu

>>
>> we'll soon support (or already do?) support sata atapi, when this
>> won't be true anymore. Please never select scsi upper drivers from
>> lower drivers, this independence is the whole point of the layered
>> architecture.

Hm, doesnot usb_storage select sd_mod? If I understand you correctly, this
usb->sd selection is exactly the thing you don't want.



Jan Engelhardt
--

2006-01-17 16:52:10

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [PATCH/RFC] SATA in its own config menu

On Tue, Jan 17, 2006 at 05:50:12PM +0100, Jan Engelhardt wrote:
> Hm, doesnot usb_storage select sd_mod?

no, it doesn't.