From: Sergei Shtylyov <sshtylyov@ru.mvista.com>
To: Jeff Garzik <jeff@garzik.org>, htejun@gmail.com
Cc: Adrian Bunk <bunk@kernel.org>,
linux-kernel@vger.kernel.org, linux-ide@vger.kernel.org
Subject: Re: [2.6 patch] select ATA_SFF
Date: Tue, 22 Apr 2008 17:10:28 +0400 [thread overview]
Message-ID: <480DE3C4.5@ru.mvista.com> (raw)
In-Reply-To: <20080421213147.GH2633@cs181133002.pp.htv.fi>
Hello.
Adrian Bunk wrote:
> Making ATA_SFF a user-visible option with the drivers needing it
> depending on it caused the following problems:
> - people lose their driver when accidentally disabling it
> - people not requiring it needlessly enable it
> Fortunately, we don't have to bother the user with this option at all
> since we can simply select it when it's required.
> Signed-off-by: Adrian Bunk <bunk@kernel.org>
[...]
> @@ -132,6 +119,7 @@ config SATA_NV
> config PDC_ADMA
> tristate "Pacific Digital ADMA support"
> depends on PCI
> + select ATA_SFF
> help
> This option enables support for Pacific Digital ADMA controllers
ADMA is not SFF-8038i compilant, it's the IDE DMA spec of its own. And I'm
seeing references to libata-sff.c... confusing.
> @@ -248,6 +249,7 @@ config PATA_ARTOP
> config PATA_AT32
> tristate "Atmel AVR32 PATA support (Experimental)"
> depends on AVR32 && PLATFORM_AT32AP && EXPERIMENTAL
> + select ATA_SFF
> help
> This option enables support for the IDE devices on the
> Atmel AT32AP platform.
I'm seeing no DMA support here... yet there are calls to
> @@ -266,6 +269,7 @@ config PATA_ATIIXP
> config PATA_CMD640_PCI
> tristate "CMD640 PCI PATA support (Very Experimental)"
> depends on PCI && EXPERIMENTAL
> + select ATA_SFF
> help
> This option enables support for the CMD640 PCI IDE
> interface chip. Only the primary channel is currently
PIO only chip... yet its driver seems to call libata-sff.c...
> @@ -285,6 +290,7 @@ config PATA_CMD64X
> config PATA_CS5520
> tristate "CS5510/5520 PATA support"
> depends on PCI
> + select ATA_SFF
> help
> This option enables support for the Cyrix 5510/5520
> companion chip used with the MediaGX/Geode processor family.
These chips are PIO only. Yet the driver calls libata-sff.c, hm...
> @@ -375,6 +390,7 @@ config PATA_HPT3X2N
> config PATA_HPT3X3
> tristate "HPT 343/363 PATA support"
> depends on PCI
> + select ATA_SFF
> help
> This option enables support for the HPT 343/363
> PATA controllers via the new ATA layer
> @@ -384,6 +400,7 @@ config PATA_HPT3X3
> config PATA_HPT3X3_DMA
> bool "HPT 343/363 DMA support (Experimental)"
> depends on PATA_HPT3X3
> + select ATA_SFF
I don't think this 'select' is needed, since it's not on option that
enables the driver itself, just DMA support in it.
> help
> This option enables DMA support for the HPT343/363
> controllers. Enable with care as there are still some
> @@ -392,6 +409,7 @@ config PATA_HPT3X3_DMA
> config PATA_ISAPNP
> tristate "ISA Plug and Play PATA support (Experimental)"
> depends on EXPERIMENTAL && ISAPNP
> + select ATA_SFF
> help
> This option enables support for ISA plug & play ATA
> controllers such as those found on old soundcards.
PnP IDE is not SFF-8038i compliant, and not DMA capable, IIUC.
> @@ -429,6 +450,7 @@ config PATA_JMICRON
> config PATA_LEGACY
> tristate "Legacy ISA PATA support (Experimental)"
> depends on ISA && EXPERIMENTAL
> + select ATA_SFF
> help
> This option enables support for ISA/VLB bus legacy PATA
> ports and allows them to be accessed via the new ATA layer.
PIO only driver, no SFF-8038i stuff... but calls libata-sff.c, hm...
> @@ -456,6 +480,7 @@ config PATA_MARVELL
> config PATA_MPC52xx
> tristate "Freescale MPC52xx SoC internal IDE"
> depends on PPC_MPC52xx
> + select ATA_SFF
> help
> This option enables support for integrated IDE controller
> of the Freescale MPC52xx SoC.
DMA is not SFF-8038i compliant -- however it calls libata-sff.c...
> @@ -465,6 +490,7 @@ config PATA_MPC52xx
> config PATA_MPIIX
> tristate "Intel PATA MPIIX support"
> depends on PCI
> + select ATA_SFF
> help
> This option enables support for MPIIX PATA support.
PIO only, no SFF-8038i compliant registers. Yet it calls liabat-sff.c...
> @@ -490,6 +518,7 @@ config PATA_NETCELL
> config PATA_NINJA32
> tristate "Ninja32/Delkin Cardbus ATA support (Experimental)"
> depends on PCI && EXPERIMENTAL
> + select ATA_SFF
> help
> This option enables support for the Ninja32, Delkin and
> possibly other brands of Cardbus ATA adapter
BMDMA here is not SFF-8038i compatible. Uses libata-sff.c though, it seems...
> @@ -499,6 +528,7 @@ config PATA_NINJA32
> config PATA_NS87410
> tristate "Nat Semi NS87410 PATA support (Experimental)"
> depends on PCI && EXPERIMENTAL
> + select ATA_SFF
> help
> This option enables support for the National Semiconductor
> NS87410 PCI-IDE controller.
PIO only driver, no SFF-8038i compatible registers. Seems to be calling
libata-sff.c though...
> @@ -517,6 +548,7 @@ config PATA_NS87415
> config PATA_OPTI
> tristate "OPTI621/6215 PATA support (Very Experimental)"
> depends on PCI && EXPERIMENTAL
> + select ATA_SFF
> help
> This option enables full PIO support for the early Opti ATA
> controllers found on some old motherboards.
PIO only driver, not SFF-8038i compliant. Seems to be calling libata-sff.c...
> @@ -536,6 +569,7 @@ config PATA_OPTIDMA
> config PATA_PCMCIA
> tristate "PCMCIA PATA support"
> depends on PCMCIA
> + select ATA_SFF
> help
> This option enables support for PCMCIA ATA interfaces, including
> compact flash card adapters via the new ATA layer.
PCMCIA driver is PIO only, not SFF-8038i "by definition" since it's not
PCI. Yet seems to call libab-sff.c...
> @@ -554,12 +589,14 @@ config PATA_PDC_OLD
> config PATA_QDI
> tristate "QDI VLB PATA support"
> depends on ISA
> + select ATA_SFF
> help
> Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
QDI6580 is VLB PIO only driver -- therefore not SFF-8038i compliant.
> @@ -578,6 +616,7 @@ config PATA_RB500
> config PATA_RZ1000
> tristate "PC Tech RZ1000 PATA support"
> depends on PCI
> + select ATA_SFF
> help
> This option enables basic support for the PC Tech RZ1000/1
> PATA controllers via the new ATA layer
RZ1000 is PIO only, IIRC -- no SFF-8038i registers.
> @@ -647,6 +693,7 @@ config PATA_WINBOND
> config PATA_WINBOND_VLB
> tristate "Winbond W83759A VLB PATA support (Experimental)"
> depends on ISA && EXPERIMENTAL
> + select ATA_SFF
> help
> Support for the Winbond W83759A controller on Vesa Local Bus
> systems.
This is VLB PIO only driver -- no SFF-8038i. Seems to call libata-sff.c
though...
> @@ -673,6 +722,7 @@ config PATA_OF_PLATFORM
> config PATA_ICSIDE
> tristate "Acorn ICS PATA support"
> depends on ARM && ARCH_ACORN
> + select ATA_SFF
> help
> On Acorn systems, say Y here if you wish to use the ICS PATA
> interface card. This is not required for ICS partition support.
ICS is not SFF-8038i compliant. However it calls libata-sff.c... go figure.
> @@ -691,6 +742,7 @@ config PATA_IXP4XX_CF
> config PATA_SCC
> tristate "Toshiba's Cell Reference Set IDE support"
> depends on PCI && PPC_CELLEB
> + select ATA_SFF
SCC PATA is not SFF-8038i compliant. Seem to calls libata-sff.c however...
> help
> This option enables support for the built-in IDE controller on
> Toshiba Cell Reference Board.
Looks like there's no clean separation within libata-sff.c itself between
SFF-8038i (BMDMA spec) and IDE registers itself -- that confused me: at first
I thought there's a big issue with a patch. :-/
Jeff, Tejun, what "sff" in the file name actually means? Isn't it strange
that the drivers lacking DMA support or not really compliant with SFF-8038i
have to link with this file?
MBR, Sergei
next prev parent reply other threads:[~2008-04-22 13:11 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-21 21:31 [2.6 patch] select ATA_SFF Adrian Bunk
2008-04-22 11:39 ` Jens Axboe
2008-04-22 13:10 ` Sergei Shtylyov [this message]
2008-04-22 13:24 ` Tejun Heo
2008-04-22 13:36 ` Sergei Shtylyov
2008-04-22 13:41 ` Tejun Heo
2008-04-22 14:35 ` Mark Lord
2008-04-22 14:38 ` Tejun Heo
2008-04-22 14:44 ` Mark Lord
2008-04-22 15:00 ` Tejun Heo
2008-04-22 15:04 ` Sergei Shtylyov
2008-04-22 18:54 ` Sergei Shtylyov
2008-04-23 2:16 ` Tejun Heo
2008-04-23 4:21 ` Jeff Garzik
2008-04-23 11:16 ` Sergei Shtylyov
2008-04-23 13:30 ` Mark Lord
2008-04-22 14:43 ` Sergei Shtylyov
2008-04-22 14:51 ` Mark Lord
2008-04-24 11:35 ` Alan Cox
2008-04-24 12:45 ` Sergei Shtylyov
2008-04-24 12:50 ` Mark Lord
2008-04-24 13:00 ` Sergei Shtylyov
2008-04-24 14:27 ` Alan Cox
2008-04-24 15:30 ` Sergei Shtylyov
2008-04-24 15:15 ` Alan Cox
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=480DE3C4.5@ru.mvista.com \
--to=sshtylyov@ru.mvista.com \
--cc=bunk@kernel.org \
--cc=htejun@gmail.com \
--cc=jeff@garzik.org \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.