cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

Kconfig (30044B)


      1# SPDX-License-Identifier: GPL-2.0
      2#
      3# SATA/PATA driver configuration
      4#
      5
      6config HAVE_PATA_PLATFORM
      7	bool
      8	help
      9	  This is an internal configuration node for any machine that
     10	  uses pata-platform driver to enable the relevant driver in the
     11	  configuration structure without having to submit endless patches
     12	  to update the PATA_PLATFORM entry.
     13
     14menuconfig ATA
     15	tristate "Serial ATA and Parallel ATA drivers (libata)"
     16	depends on HAS_IOMEM
     17	depends on BLOCK
     18	select SCSI
     19	select GLOB
     20	help
     21	  If you want to use an ATA hard disk, ATA tape drive, ATA CD-ROM or
     22	  any other ATA device under Linux, say Y and make sure that you know
     23	  the name of your ATA host adapter (the card inside your computer
     24	  that "speaks" the ATA protocol, also called ATA controller),
     25	  because you will be asked for it.
     26
     27	  NOTE: ATA enables basic SCSI support; *however*,
     28	  'SCSI disk support', 'SCSI tape support', or
     29	  'SCSI CDROM support' may also be needed,
     30	  depending on your hardware configuration.
     31
     32if ATA
     33
     34config ATA_NONSTANDARD
     35       bool
     36
     37config SATA_HOST
     38	bool
     39
     40config PATA_TIMINGS
     41	bool
     42
     43config ATA_VERBOSE_ERROR
     44	bool "Verbose ATA error reporting"
     45	default y
     46	help
     47	  This option adds parsing of ATA command descriptions and error bits
     48	  in libata kernel output, making it easier to interpret.
     49	  This option will enlarge the kernel by approx. 6KB. Disable it only
     50	  if kernel size is more important than ease of debugging.
     51
     52	  If unsure, say Y.
     53
     54config ATA_FORCE
     55	bool "\"libata.force=\" kernel parameter support" if EXPERT
     56	default y
     57	help
     58	  This option adds support for "libata.force=" kernel parameter for
     59	  forcing configuration settings.
     60
     61	  For further information, please read
     62	  <file:Documentation/admin-guide/kernel-parameters.txt>.
     63
     64	  This option will enlarge the kernel by approx. 3KB. Disable it if
     65	  kernel size is more important than ability to override the default
     66	  configuration settings.
     67
     68	  If unsure, say Y.
     69
     70config ATA_ACPI
     71	bool "ATA ACPI Support"
     72	depends on ACPI
     73	select PATA_TIMINGS
     74	default y
     75	help
     76	  This option adds support for ATA-related ACPI objects.
     77	  These ACPI objects add the ability to retrieve taskfiles
     78	  from the ACPI BIOS and write them to the disk controller.
     79	  These objects may be related to performance, security,
     80	  power management, or other areas.
     81	  You can disable this at kernel boot time by using the
     82	  option libata.noacpi=1
     83
     84config SATA_ZPODD
     85	bool "SATA Zero Power Optical Disc Drive (ZPODD) support"
     86	depends on ATA_ACPI && PM
     87	help
     88	  This option adds support for SATA Zero Power Optical Disc
     89	  Drive (ZPODD). It requires both the ODD and the platform
     90	  support, and if enabled, will automatically power on/off the
     91	  ODD when certain condition is satisfied. This does not impact
     92	  end user's experience of the ODD, only power is saved when
     93	  the ODD is not in use (i.e. no disc inside).
     94
     95	  If unsure, say N.
     96
     97config SATA_PMP
     98	bool "SATA Port Multiplier support"
     99	depends on SATA_HOST
    100	default y
    101	help
    102	  This option adds support for SATA Port Multipliers
    103	  (the SATA version of an ethernet hub, or SAS expander).
    104
    105if HAS_DMA
    106
    107comment "Controllers with non-SFF native interface"
    108
    109config SATA_AHCI
    110	tristate "AHCI SATA support"
    111	depends on PCI
    112	select SATA_HOST
    113	help
    114	  This option enables support for AHCI Serial ATA.
    115
    116	  If unsure, say N.
    117
    118config SATA_MOBILE_LPM_POLICY
    119	int "Default SATA Link Power Management policy for low power chipsets"
    120	range 0 4
    121	default 0
    122	depends on SATA_AHCI
    123	help
    124	  Select the Default SATA Link Power Management (LPM) policy to use
    125	  for chipsets / "South Bridges" supporting low-power modes. Such
    126	  chipsets are typically found on most laptops but desktops and
    127	  servers now also widely use chipsets supporting low power modes.
    128
    129	  The value set has the following meanings:
    130		0 => Keep firmware settings
    131		1 => Maximum performance
    132		2 => Medium power
    133		3 => Medium power with Device Initiated PM enabled
    134		4 => Minimum power
    135
    136	  Note "Minimum power" is known to cause issues, including disk
    137	  corruption, with some disks and should not be used.
    138
    139config SATA_AHCI_PLATFORM
    140	tristate "Platform AHCI SATA support"
    141	select SATA_HOST
    142	help
    143	  This option enables support for Platform AHCI Serial ATA
    144	  controllers.
    145
    146	  If unsure, say N.
    147
    148config AHCI_BRCM
    149	tristate "Broadcom AHCI SATA support"
    150	depends on ARCH_BRCMSTB || BMIPS_GENERIC || ARCH_BCM_NSP || \
    151		   ARCH_BCM_63XX || COMPILE_TEST
    152	select SATA_HOST
    153	help
    154	  This option enables support for the AHCI SATA3 controller found on
    155	  Broadcom SoC's.
    156
    157	  If unsure, say N.
    158
    159config AHCI_DA850
    160	tristate "DaVinci DA850 AHCI SATA support"
    161	depends on ARCH_DAVINCI_DA850 || COMPILE_TEST
    162	select SATA_HOST
    163	help
    164	  This option enables support for the DaVinci DA850 SoC's
    165	  onboard AHCI SATA.
    166
    167	  If unsure, say N.
    168
    169config AHCI_DM816
    170	tristate "DaVinci DM816 AHCI SATA support"
    171	depends on ARCH_OMAP2PLUS || COMPILE_TEST
    172	select SATA_HOST
    173	help
    174	  This option enables support for the DaVinci DM816 SoC's
    175	  onboard AHCI SATA controller.
    176
    177	  If unsure, say N.
    178
    179config AHCI_ST
    180	tristate "ST AHCI SATA support"
    181	depends on ARCH_STI
    182	select SATA_HOST
    183	help
    184	  This option enables support for ST AHCI SATA controller.
    185
    186	  If unsure, say N.
    187
    188config AHCI_IMX
    189	tristate "Freescale i.MX AHCI SATA support"
    190	depends on MFD_SYSCON && (ARCH_MXC || COMPILE_TEST)
    191	depends on (HWMON && (THERMAL || !THERMAL_OF)) || !HWMON
    192	select SATA_HOST
    193	help
    194	  This option enables support for the Freescale i.MX SoC's
    195	  onboard AHCI SATA.
    196
    197	  If unsure, say N.
    198
    199config AHCI_CEVA
    200	tristate "CEVA AHCI SATA support"
    201	depends on OF
    202	select SATA_HOST
    203	help
    204	  This option enables support for the CEVA AHCI SATA.
    205	  It can be found on the Xilinx Zynq UltraScale+ MPSoC.
    206
    207	  If unsure, say N.
    208
    209config AHCI_MTK
    210	tristate "MediaTek AHCI SATA support"
    211	depends on ARCH_MEDIATEK || COMPILE_TEST
    212	select MFD_SYSCON
    213	select SATA_HOST
    214	help
    215	  This option enables support for the MediaTek SoC's
    216	  onboard AHCI SATA controller.
    217
    218	  If unsure, say N.
    219
    220config AHCI_MVEBU
    221	tristate "Marvell EBU AHCI SATA support"
    222	depends on ARCH_MVEBU || COMPILE_TEST
    223	select SATA_HOST
    224	help
    225	  This option enables support for the Marvebu EBU SoC's
    226	  onboard AHCI SATA.
    227
    228	  If unsure, say N.
    229
    230config AHCI_OCTEON
    231	tristate "Cavium Octeon Soc Serial ATA"
    232	depends on SATA_AHCI_PLATFORM && CAVIUM_OCTEON_SOC
    233	default y
    234	help
    235	  This option enables support for Cavium Octeon SoC Serial ATA.
    236
    237	  If unsure, say N.
    238
    239config AHCI_SUNXI
    240	tristate "Allwinner sunxi AHCI SATA support"
    241	depends on ARCH_SUNXI || COMPILE_TEST
    242	select SATA_HOST
    243	help
    244	  This option enables support for the Allwinner sunxi SoC's
    245	  onboard AHCI SATA.
    246
    247	  If unsure, say N.
    248
    249config AHCI_TEGRA
    250	tristate "NVIDIA Tegra AHCI SATA support"
    251	depends on ARCH_TEGRA || COMPILE_TEST
    252	select SATA_HOST
    253	help
    254	  This option enables support for the NVIDIA Tegra SoC's
    255	  onboard AHCI SATA.
    256
    257	  If unsure, say N.
    258
    259config AHCI_XGENE
    260	tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support"
    261	depends on PHY_XGENE || COMPILE_TEST
    262	select SATA_HOST
    263	help
    264	 This option enables support for APM X-Gene SoC SATA host controller.
    265
    266config AHCI_QORIQ
    267	tristate "Freescale QorIQ AHCI SATA support"
    268	depends on OF
    269	select SATA_HOST
    270	help
    271	  This option enables support for the Freescale QorIQ AHCI SoC's
    272	  onboard AHCI SATA.
    273
    274	  If unsure, say N.
    275
    276config SATA_FSL
    277	tristate "Freescale 3.0Gbps SATA support"
    278	depends on FSL_SOC || COMPILE_TEST
    279	select SATA_HOST
    280	help
    281	  This option enables support for Freescale 3.0Gbps SATA controller.
    282	  It can be found on MPC837x and MPC8315.
    283
    284	  If unsure, say N.
    285
    286config SATA_GEMINI
    287	tristate "Gemini SATA bridge support"
    288	depends on ARCH_GEMINI || (OF && COMPILE_TEST)
    289	select SATA_HOST
    290	default ARCH_GEMINI
    291	help
    292	  This enabled support for the FTIDE010 to SATA bridge
    293	  found in Cortina Systems Gemini platform.
    294
    295	  If unsure, say N.
    296
    297config SATA_AHCI_SEATTLE
    298	tristate "AMD Seattle 6.0Gbps AHCI SATA host controller support"
    299	depends on ARCH_SEATTLE || COMPILE_TEST
    300	select SATA_HOST
    301	help
    302	 This option enables support for AMD Seattle SATA host controller.
    303
    304	 If unsure, say N
    305
    306config SATA_INIC162X
    307	tristate "Initio 162x SATA support (Very Experimental)"
    308	depends on PCI
    309	select SATA_HOST
    310	help
    311	  This option enables support for Initio 162x Serial ATA.
    312
    313config SATA_ACARD_AHCI
    314	tristate "ACard AHCI variant (ATP 8620)"
    315	depends on PCI
    316	select SATA_HOST
    317	help
    318	  This option enables support for Acard.
    319
    320	  If unsure, say N.
    321
    322config SATA_SIL24
    323	tristate "Silicon Image 3124/3132 SATA support"
    324	depends on PCI
    325	select SATA_HOST
    326	help
    327	  This option enables support for Silicon Image 3124/3132 Serial ATA.
    328
    329	  If unsure, say N.
    330
    331endif # HAS_DMA
    332
    333config ATA_SFF
    334	bool "ATA SFF support (for legacy IDE and PATA)"
    335	default y
    336	help
    337	  This option adds support for ATA controllers with SFF
    338	  compliant or similar programming interface.
    339
    340	  SFF is the legacy IDE interface that has been around since
    341	  the dawn of time.  Almost all PATA controllers have an
    342	  SFF interface.  Many SATA controllers have an SFF interface
    343	  when configured into a legacy compatibility mode.
    344
    345	  For users with exclusively modern controllers like AHCI,
    346	  Silicon Image 3124, or Marvell 6440, you may choose to
    347	  disable this unneeded SFF support.
    348
    349	  If unsure, say Y.
    350
    351if ATA_SFF
    352
    353comment "SFF controllers with custom DMA interface"
    354
    355config PDC_ADMA
    356	tristate "Pacific Digital ADMA support"
    357	depends on PCI
    358	help
    359	  This option enables support for Pacific Digital ADMA controllers
    360
    361	  If unsure, say N.
    362
    363config PATA_OCTEON_CF
    364	tristate "OCTEON Boot Bus Compact Flash support"
    365	depends on CAVIUM_OCTEON_SOC
    366	select PATA_TIMINGS
    367	help
    368	  This option enables a polled compact flash driver for use with
    369	  compact flash cards attached to the OCTEON boot bus.
    370
    371	  If unsure, say N.
    372
    373config SATA_QSTOR
    374	tristate "Pacific Digital SATA QStor support"
    375	depends on PCI
    376	select SATA_HOST
    377	help
    378	  This option enables support for Pacific Digital Serial ATA QStor.
    379
    380	  If unsure, say N.
    381
    382config SATA_SX4
    383	tristate "Promise SATA SX4 support (Experimental)"
    384	depends on PCI
    385	select SATA_HOST
    386	help
    387	  This option enables support for Promise Serial ATA SX4.
    388
    389	  If unsure, say N.
    390
    391config ATA_BMDMA
    392	bool "ATA BMDMA support"
    393	depends on HAS_DMA
    394	default y
    395	help
    396	  This option adds support for SFF ATA controllers with BMDMA
    397	  capability.  BMDMA stands for bus-master DMA and is the
    398	  de facto DMA interface for SFF controllers.
    399
    400	  If unsure, say Y.
    401
    402if ATA_BMDMA
    403
    404comment "SATA SFF controllers with BMDMA"
    405
    406config ATA_PIIX
    407	tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support"
    408	depends on PCI
    409	select SATA_HOST
    410	help
    411	  This option enables support for ICH5/6/7/8 Serial ATA
    412	  and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series
    413	  host controllers.
    414
    415	  If unsure, say N.
    416
    417config SATA_DWC
    418	tristate "DesignWare Cores SATA support"
    419	depends on DMADEVICES
    420	select GENERIC_PHY
    421	select SATA_HOST
    422	help
    423	  This option enables support for the on-chip SATA controller of the
    424	  AppliedMicro processor 460EX.
    425
    426	  If unsure, say N.
    427
    428config SATA_DWC_OLD_DMA
    429	bool "Support old device trees"
    430	depends on SATA_DWC
    431	select DW_DMAC_CORE
    432	default y if 460EX
    433	help
    434	  This option enables support for old device trees without the
    435	  "dmas" property.
    436
    437config SATA_HIGHBANK
    438	tristate "Calxeda Highbank SATA support"
    439	depends on ARCH_HIGHBANK || COMPILE_TEST
    440	select SATA_HOST
    441	help
    442	  This option enables support for the Calxeda Highbank SoC's
    443	  onboard SATA.
    444
    445	  If unsure, say N.
    446
    447config SATA_MV
    448	tristate "Marvell SATA support"
    449	depends on PCI || ARCH_DOVE || ARCH_MV78XX0 || \
    450		   ARCH_MVEBU || ARCH_ORION5X || COMPILE_TEST
    451	select GENERIC_PHY
    452	select SATA_HOST
    453	help
    454	  This option enables support for the Marvell Serial ATA family.
    455	  Currently supports 88SX[56]0[48][01] PCI(-X) chips,
    456	  as well as the newer [67]042 PCI-X/PCIe and SOC devices.
    457
    458	  If unsure, say N.
    459
    460config SATA_NV
    461	tristate "NVIDIA SATA support"
    462	depends on PCI
    463	select SATA_HOST
    464	help
    465	  This option enables support for NVIDIA Serial ATA.
    466
    467	  If unsure, say N.
    468
    469config SATA_PROMISE
    470	tristate "Promise SATA TX2/TX4 support"
    471	depends on PCI
    472	select SATA_HOST
    473	help
    474	  This option enables support for Promise Serial ATA TX2/TX4.
    475
    476	  If unsure, say N.
    477
    478config SATA_RCAR
    479	tristate "Renesas R-Car SATA support"
    480	depends on ARCH_RENESAS || COMPILE_TEST
    481	select SATA_HOST
    482	help
    483	  This option enables support for Renesas R-Car Serial ATA.
    484
    485	  If unsure, say N.
    486
    487config SATA_SIL
    488	tristate "Silicon Image SATA support"
    489	depends on PCI
    490	select SATA_HOST
    491	help
    492	  This option enables support for Silicon Image Serial ATA.
    493
    494	  If unsure, say N.
    495
    496config SATA_SIS
    497	tristate "SiS 964/965/966/180 SATA support"
    498	depends on PCI
    499	select PATA_SIS
    500	select SATA_HOST
    501	help
    502	  This option enables support for SiS Serial ATA on
    503	  SiS 964/965/966/180 and Parallel ATA on SiS 180.
    504	  The PATA support for SiS 180 requires additionally to
    505	  enable the PATA_SIS driver in the config.
    506	  If unsure, say N.
    507
    508config SATA_SVW
    509	tristate "ServerWorks Frodo / Apple K2 SATA support"
    510	depends on PCI
    511	select SATA_HOST
    512	help
    513	  This option enables support for Broadcom/Serverworks/Apple K2
    514	  SATA support.
    515
    516	  If unsure, say N.
    517
    518config SATA_ULI
    519	tristate "ULi Electronics SATA support"
    520	depends on PCI
    521	select SATA_HOST
    522	help
    523	  This option enables support for ULi Electronics SATA.
    524
    525	  If unsure, say N.
    526
    527config SATA_VIA
    528	tristate "VIA SATA support"
    529	depends on PCI
    530	select SATA_HOST
    531	help
    532	  This option enables support for VIA Serial ATA.
    533
    534	  If unsure, say N.
    535
    536config SATA_VITESSE
    537	tristate "VITESSE VSC-7174 / INTEL 31244 SATA support"
    538	depends on PCI
    539	select SATA_HOST
    540	help
    541	  This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA.
    542
    543	  If unsure, say N.
    544
    545comment "PATA SFF controllers with BMDMA"
    546
    547config PATA_ALI
    548	tristate "ALi PATA support"
    549	depends on PCI
    550	select PATA_TIMINGS
    551	help
    552	  This option enables support for the ALi ATA interfaces
    553	  found on the many ALi chipsets.
    554
    555	  If unsure, say N.
    556
    557config PATA_AMD
    558	tristate "AMD/NVidia PATA support"
    559	depends on PCI
    560	select PATA_TIMINGS
    561	help
    562	  This option enables support for the AMD and NVidia PATA
    563	  interfaces found on the chipsets for Athlon/Athlon64.
    564
    565	  If unsure, say N.
    566
    567config PATA_ARASAN_CF
    568	tristate "ARASAN CompactFlash PATA Controller Support"
    569	depends on ARCH_SPEAR13XX || COMPILE_TEST
    570	depends on DMADEVICES
    571	select DMA_ENGINE
    572	help
    573	  Say Y here to support the ARASAN CompactFlash PATA controller
    574
    575config PATA_ARTOP
    576	tristate "ARTOP 6210/6260 PATA support"
    577	depends on PCI
    578	help
    579	  This option enables support for ARTOP PATA controllers.
    580
    581	  If unsure, say N.
    582
    583config PATA_ATIIXP
    584	tristate "ATI PATA support"
    585	depends on PCI
    586	help
    587	  This option enables support for the ATI ATA interfaces
    588	  found on the many ATI chipsets.
    589
    590	  If unsure, say N.
    591
    592config PATA_ATP867X
    593	tristate "ARTOP/Acard ATP867X PATA support"
    594	depends on PCI
    595	select PATA_TIMINGS
    596	help
    597	  This option enables support for ARTOP/Acard ATP867X PATA
    598	  controllers.
    599
    600	  If unsure, say N.
    601
    602config PATA_BK3710
    603	tristate "Palmchip BK3710 PATA support"
    604	depends on ARCH_DAVINCI || COMPILE_TEST
    605	select PATA_TIMINGS
    606	help
    607	  This option enables support for the integrated IDE controller on
    608	  the TI DaVinci SoC.
    609
    610	  If unsure, say N.
    611
    612config PATA_CMD64X
    613	tristate "CMD64x PATA support"
    614	depends on PCI
    615	select PATA_TIMINGS
    616	help
    617	  This option enables support for the CMD64x series chips
    618	  except for the CMD640.
    619
    620	  If unsure, say N.
    621
    622config PATA_CS5520
    623	tristate "CS5510/5520 PATA support"
    624	depends on PCI && (X86_32 || COMPILE_TEST)
    625	help
    626	  This option enables support for the Cyrix 5510/5520
    627	  companion chip used with the MediaGX/Geode processor family.
    628
    629	  If unsure, say N.
    630
    631config PATA_CS5530
    632	tristate "CS5530 PATA support"
    633	depends on PCI && (X86_32 || COMPILE_TEST)
    634	help
    635	  This option enables support for the Cyrix/NatSemi/AMD CS5530
    636	  companion chip used with the MediaGX/Geode processor family.
    637
    638	  If unsure, say N.
    639
    640config PATA_CS5535
    641	tristate "CS5535 PATA support (Experimental)"
    642	depends on PCI && (X86_32 || (X86_64 && COMPILE_TEST))
    643	help
    644	  This option enables support for the NatSemi/AMD CS5535
    645	  companion chip used with the Geode processor family.
    646
    647	  If unsure, say N.
    648
    649config PATA_CS5536
    650	tristate "CS5536 PATA support"
    651	depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
    652	help
    653	  This option enables support for the AMD CS5536
    654	  companion chip used with the Geode LX processor family.
    655
    656	  If unsure, say N.
    657
    658config PATA_CYPRESS
    659	tristate "Cypress CY82C693 PATA support (Very Experimental)"
    660	depends on PCI
    661	select PATA_TIMINGS
    662	help
    663	  This option enables support for the Cypress/Contaq CY82C693
    664	  chipset found in some Alpha systems
    665
    666	  If unsure, say N.
    667
    668config PATA_EFAR
    669	tristate "EFAR SLC90E66 support"
    670	depends on PCI
    671	help
    672	  This option enables support for the EFAR SLC90E66
    673	  IDE controller found on some older machines.
    674
    675	  If unsure, say N.
    676
    677config PATA_EP93XX
    678	tristate "Cirrus Logic EP93xx PATA support"
    679	depends on ARCH_EP93XX
    680	select PATA_TIMINGS
    681	help
    682	  This option enables support for the PATA controller in
    683	  the Cirrus Logic EP9312 and EP9315 ARM CPU.
    684
    685	  If unsure, say N.
    686
    687config PATA_FTIDE010
    688	tristate "Faraday Technology FTIDE010 PATA support"
    689	depends on OF
    690	depends on ARM || COMPILE_TEST
    691	depends on SATA_GEMINI
    692	help
    693	  This option enables support for the Faraday FTIDE010
    694	  PATA controller found in the Cortina Gemini SoCs.
    695
    696	  If unsure, say N.
    697
    698config PATA_HPT366
    699	tristate "HPT 366/368 PATA support"
    700	depends on PCI
    701	help
    702	  This option enables support for the HPT 366 and 368
    703	  PATA controllers via the new ATA layer.
    704
    705	  If unsure, say N.
    706
    707config PATA_HPT37X
    708	tristate "HPT 370/370A/371/372/374/302 PATA support"
    709	depends on PCI
    710	help
    711	  This option enables support for the majority of the later HPT
    712	  PATA controllers via the new ATA layer.
    713
    714	  If unsure, say N.
    715
    716config PATA_HPT3X2N
    717	tristate "HPT 371N/372N/302N PATA support"
    718	depends on PCI
    719	help
    720	  This option enables support for the N variant HPT PATA
    721	  controllers via the new ATA layer.
    722
    723	  If unsure, say N.
    724
    725config PATA_HPT3X3
    726	tristate "HPT 343/363 PATA support"
    727	depends on PCI
    728	help
    729	  This option enables support for the HPT 343/363
    730	  PATA controllers via the new ATA layer
    731
    732	  If unsure, say N.
    733
    734config PATA_HPT3X3_DMA
    735	bool "HPT 343/363 DMA support"
    736	depends on PATA_HPT3X3
    737	help
    738	  This option enables DMA support for the HPT343/363
    739	  controllers. Enable with care as there are still some
    740	  problems with DMA on this chipset.
    741
    742config PATA_ICSIDE
    743	tristate "Acorn ICS PATA support"
    744	depends on ARM && ARCH_ACORN
    745	select PATA_TIMINGS
    746	help
    747	  On Acorn systems, say Y here if you wish to use the ICS PATA
    748	  interface card.  This is not required for ICS partition support.
    749	  If you are unsure, say N to this.
    750
    751config PATA_IMX
    752	tristate "PATA support for Freescale iMX"
    753	depends on ARCH_MXC || COMPILE_TEST
    754	select PATA_TIMINGS
    755	help
    756	  This option enables support for the PATA host available on Freescale
    757          iMX SoCs.
    758
    759	  If unsure, say N.
    760
    761config PATA_IT8213
    762	tristate "IT8213 PATA support (Experimental)"
    763	depends on PCI
    764	help
    765	  This option enables support for the ITE 821 PATA
    766          controllers via the new ATA layer.
    767
    768	  If unsure, say N.
    769
    770config PATA_IT821X
    771	tristate "IT8211/2 PATA support"
    772	depends on PCI
    773	help
    774	  This option enables support for the ITE 8211 and 8212
    775	  PATA controllers via the new ATA layer, including RAID
    776	  mode.
    777
    778	  If unsure, say N.
    779
    780config PATA_JMICRON
    781	tristate "JMicron PATA support"
    782	depends on PCI
    783	help
    784	  Enable support for the JMicron IDE controller, via the new
    785	  ATA layer.
    786
    787	  If unsure, say N.
    788
    789config PATA_MACIO
    790	tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE"
    791	depends on PPC_PMAC
    792	help
    793	  Most IDE capable PowerMacs have IDE busses driven by a variant
    794          of this controller which is part of the Apple chipset used on
    795          most PowerMac models. Some models have multiple busses using
    796          different chipsets, though generally, MacIO is one of them.
    797
    798config PATA_MARVELL
    799	tristate "Marvell PATA support via legacy mode"
    800	depends on PCI
    801	help
    802	  This option enables limited support for the Marvell 88SE61xx ATA
    803	  controllers. If you wish to use only the SATA ports then select
    804	  the AHCI driver alone. If you wish to the use the PATA port or
    805	  both SATA and PATA include this driver.
    806
    807	  If unsure, say N.
    808
    809config PATA_MPC52xx
    810	tristate "Freescale MPC52xx SoC internal IDE"
    811	depends on PPC_MPC52xx && PPC_BESTCOMM
    812	select PPC_BESTCOMM_ATA
    813	help
    814	  This option enables support for integrated IDE controller
    815	  of the Freescale MPC52xx SoC.
    816
    817	  If unsure, say N.
    818
    819config PATA_NETCELL
    820	tristate "NETCELL Revolution RAID support"
    821	depends on PCI
    822	help
    823	  This option enables support for the Netcell Revolution RAID
    824	  PATA controller.
    825
    826	  If unsure, say N.
    827
    828config PATA_NINJA32
    829	tristate "Ninja32/Delkin Cardbus ATA support"
    830	depends on PCI
    831	help
    832	  This option enables support for the Ninja32, Delkin and
    833	  possibly other brands of Cardbus ATA adapter
    834
    835	  If unsure, say N.
    836
    837config PATA_NS87415
    838	tristate "Nat Semi NS87415 PATA support"
    839	depends on PCI
    840	select PATA_TIMINGS
    841	help
    842	  This option enables support for the National Semiconductor
    843	  NS87415 PCI-IDE controller.
    844
    845	  If unsure, say N.
    846
    847config PATA_OLDPIIX
    848	tristate "Intel PATA old PIIX support"
    849	depends on PCI
    850	help
    851	  This option enables support for early PIIX PATA support.
    852
    853	  If unsure, say N.
    854
    855config PATA_OPTIDMA
    856	tristate "OPTI FireStar PATA support (Very Experimental)"
    857	depends on PCI
    858	help
    859	  This option enables DMA/PIO support for the later OPTi
    860	  controllers found on some old motherboards and in some
    861	  laptops.
    862
    863	  If unsure, say N.
    864
    865config PATA_PDC2027X
    866	tristate "Promise PATA 2027x support"
    867	depends on PCI
    868	help
    869	  This option enables support for Promise PATA pdc20268 to pdc20277 host adapters.
    870
    871	  If unsure, say N.
    872
    873config PATA_PDC_OLD
    874	tristate "Older Promise PATA controller support"
    875	depends on PCI
    876	help
    877	  This option enables support for the Promise 20246, 20262, 20263,
    878	  20265 and 20267 adapters.
    879
    880	  If unsure, say N.
    881
    882config PATA_RADISYS
    883	tristate "RADISYS 82600 PATA support (Experimental)"
    884	depends on PCI
    885	help
    886	  This option enables support for the RADISYS 82600
    887	  PATA controllers via the new ATA layer
    888
    889	  If unsure, say N.
    890
    891config PATA_RDC
    892	tristate "RDC PATA support"
    893	depends on PCI
    894	help
    895	  This option enables basic support for the later RDC PATA controllers
    896	  controllers via the new ATA layer. For the RDC 1010, you need to
    897	  enable the IT821X driver instead.
    898
    899	  If unsure, say N.
    900
    901config PATA_SC1200
    902	tristate "SC1200 PATA support"
    903	depends on PCI && (X86_32 || COMPILE_TEST)
    904	help
    905	  This option enables support for the NatSemi/AMD SC1200 SoC
    906	  companion chip used with the Geode processor family.
    907
    908	  If unsure, say N.
    909
    910config PATA_SCH
    911	tristate "Intel SCH PATA support"
    912	depends on PCI
    913	help
    914	  This option enables support for Intel SCH PATA on the Intel
    915	  SCH (US15W, US15L, UL11L) series host controllers.
    916
    917	  If unsure, say N.
    918
    919config PATA_SERVERWORKS
    920	tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support"
    921	depends on PCI
    922	help
    923	  This option enables support for the Serverworks OSB4/CSB5/CSB6 and
    924	  HT1000 PATA controllers, via the new ATA layer.
    925
    926	  If unsure, say N.
    927
    928config PATA_SIL680
    929	tristate "CMD / Silicon Image 680 PATA support"
    930	depends on PCI
    931	help
    932	  This option enables support for CMD / Silicon Image 680 PATA.
    933
    934	  If unsure, say N.
    935
    936config PATA_SIS
    937	tristate "SiS PATA support"
    938	depends on PCI
    939	help
    940	  This option enables support for SiS PATA controllers
    941
    942	  If unsure, say N.
    943
    944config PATA_TOSHIBA
    945	tristate "Toshiba Piccolo support (Experimental)"
    946	depends on PCI
    947	help
    948	  Support for the Toshiba Piccolo controllers. Currently only the
    949	  primary channel is supported by this driver.
    950
    951	  If unsure, say N.
    952
    953config PATA_TRIFLEX
    954	tristate "Compaq Triflex PATA support"
    955	depends on PCI
    956	help
    957	  Enable support for the Compaq 'Triflex' IDE controller as found
    958	  on many Compaq Pentium-Pro systems, via the new ATA layer.
    959
    960	  If unsure, say N.
    961
    962config PATA_VIA
    963	tristate "VIA PATA support"
    964	depends on PCI
    965	select PATA_TIMINGS
    966	help
    967	  This option enables support for the VIA PATA interfaces
    968	  found on the many VIA chipsets.
    969
    970	  If unsure, say N.
    971
    972config PATA_PXA
    973	tristate "PXA DMA-capable PATA support"
    974	depends on ARCH_PXA || COMPILE_TEST
    975	help
    976	  This option enables support for harddrive attached to PXA CPU's bus.
    977
    978	  NOTE: This driver utilizes PXA DMA controller, in case your hardware
    979	        is not capable of doing MWDMA, use pata_platform instead.
    980
    981	  If unsure, say N.
    982
    983config PATA_WINBOND
    984	tristate "Winbond SL82C105 PATA support"
    985	depends on PCI
    986	help
    987	  This option enables support for SL82C105 PATA devices found in the
    988	  Netwinder and some other systems
    989
    990	  If unsure, say N.
    991
    992endif # ATA_BMDMA
    993
    994comment "PIO-only SFF controllers"
    995
    996config PATA_CMD640_PCI
    997	tristate "CMD640 PCI PATA support (Experimental)"
    998	depends on PCI
    999	select PATA_TIMINGS
   1000	help
   1001	  This option enables support for the CMD640 PCI IDE
   1002	  interface chip. Only the primary channel is currently
   1003	  supported.
   1004
   1005	  If unsure, say N.
   1006
   1007config PATA_FALCON
   1008	tristate "Atari Falcon and Q40/Q60 PATA support"
   1009	depends on M68K && (ATARI || Q40)
   1010	help
   1011	  This option enables support for the on-board IDE
   1012	  interface on the Atari Falcon and Q40/Q60.
   1013
   1014	  If unsure, say N.
   1015
   1016config PATA_GAYLE
   1017	tristate "Amiga Gayle PATA support"
   1018	depends on M68K && AMIGA
   1019	help
   1020	  This option enables support for the on-board IDE
   1021	  interfaces on some Amiga models (A600, A1200,
   1022	  A4000 and A4000T) and also for IDE interfaces on
   1023	  the Zorro expansion bus (M-Tech E-Matrix 530
   1024	  expansion card).
   1025
   1026	  If unsure, say N.
   1027
   1028config PATA_BUDDHA
   1029	tristate "Buddha/Catweasel/X-Surf PATA support"
   1030	depends on ZORRO
   1031	help
   1032	  This option enables support for the IDE interfaces
   1033	  on the Buddha, Catweasel and X-Surf expansion boards
   1034	  on the Zorro expansion bus. It supports up to two
   1035	  interfaces on the Buddha, three on the Catweasel and
   1036	  two on the X-Surf.
   1037
   1038	  If unsure, say N.
   1039
   1040config PATA_ISAPNP
   1041	tristate "ISA Plug and Play PATA support"
   1042	depends on ISAPNP
   1043	help
   1044	  This option enables support for ISA plug & play ATA
   1045	  controllers such as those found on old soundcards.
   1046
   1047	  If unsure, say N.
   1048
   1049config PATA_IXP4XX_CF
   1050	tristate "IXP4XX Compact Flash support"
   1051	depends on ARCH_IXP4XX || COMPILE_TEST
   1052	help
   1053	  This option enables support for a Compact Flash connected on
   1054	  the ixp4xx expansion bus. This driver had been written for
   1055	  Loft/Avila boards in mind but can work with others.
   1056
   1057	  If unsure, say N.
   1058
   1059config PATA_MPIIX
   1060	tristate "Intel PATA MPIIX support"
   1061	depends on PCI
   1062	help
   1063	  This option enables support for MPIIX PATA support.
   1064
   1065	  If unsure, say N.
   1066
   1067config PATA_NS87410
   1068	tristate "Nat Semi NS87410 PATA support"
   1069	depends on PCI
   1070	select PATA_TIMINGS
   1071	help
   1072	  This option enables support for the National Semiconductor
   1073	  NS87410 PCI-IDE controller.
   1074
   1075	  If unsure, say N.
   1076
   1077config PATA_OPTI
   1078	tristate "OPTI621/6215 PATA support (Very Experimental)"
   1079	depends on PCI
   1080	help
   1081	  This option enables full PIO support for the early Opti ATA
   1082	  controllers found on some old motherboards.
   1083
   1084	  If unsure, say N.
   1085
   1086config PATA_PALMLD
   1087	tristate "Palm LifeDrive PATA support"
   1088	depends on MACH_PALMLD
   1089	help
   1090	  This option enables support for Palm LifeDrive's internal ATA
   1091	  port via the new ATA layer.
   1092
   1093	  If unsure, say N.
   1094
   1095config PATA_PCMCIA
   1096	tristate "PCMCIA PATA support"
   1097	depends on PCMCIA
   1098	help
   1099	  This option enables support for PCMCIA ATA interfaces, including
   1100	  compact flash card adapters via the new ATA layer.
   1101
   1102	  If unsure, say N.
   1103
   1104config PATA_PLATFORM
   1105	tristate "Generic platform device PATA support"
   1106	depends on EXPERT || PPC || HAVE_PATA_PLATFORM
   1107	help
   1108	  This option enables support for generic directly connected ATA
   1109	  devices commonly found on embedded systems.
   1110
   1111	  If unsure, say N.
   1112
   1113config PATA_OF_PLATFORM
   1114	tristate "OpenFirmware platform device PATA support"
   1115	depends on PATA_PLATFORM && OF
   1116	help
   1117	  This option enables support for generic directly connected ATA
   1118	  devices commonly found on embedded systems with OpenFirmware
   1119	  bindings.
   1120
   1121	  If unsure, say N.
   1122
   1123config PATA_QDI
   1124	tristate "QDI VLB PATA support"
   1125	depends on ISA
   1126	select PATA_LEGACY
   1127	help
   1128	  Support for QDI 6500 and 6580 PATA controllers on VESA local bus.
   1129
   1130config PATA_RB532
   1131	tristate "RouterBoard 532 PATA CompactFlash support"
   1132	depends on MIKROTIK_RB532
   1133	help
   1134	  This option enables support for the RouterBoard 532
   1135	  PATA CompactFlash controller.
   1136
   1137	  If unsure, say N.
   1138
   1139config PATA_RZ1000
   1140	tristate "PC Tech RZ1000 PATA support"
   1141	depends on PCI
   1142	help
   1143	  This option enables basic support for the PC Tech RZ1000/1
   1144	  PATA controllers via the new ATA layer
   1145
   1146	  If unsure, say N.
   1147
   1148config PATA_SAMSUNG_CF
   1149	tristate "Samsung SoC PATA support"
   1150	depends on SAMSUNG_DEV_IDE || COMPILE_TEST
   1151	select PATA_TIMINGS
   1152	help
   1153	  This option enables basic support for Samsung's S3C/S5P board
   1154	  PATA controllers via the new ATA layer
   1155
   1156	  If unsure, say N.
   1157
   1158config PATA_WINBOND_VLB
   1159	tristate "Winbond W83759A VLB PATA support (Experimental)"
   1160	depends on ISA
   1161	select PATA_LEGACY
   1162	help
   1163	  Support for the Winbond W83759A controller on Vesa Local Bus
   1164	  systems.
   1165
   1166comment "Generic fallback / legacy drivers"
   1167
   1168config PATA_ACPI
   1169	tristate "ACPI firmware driver for PATA"
   1170	depends on ATA_ACPI && ATA_BMDMA && PCI
   1171	select PATA_TIMINGS
   1172	help
   1173	  This option enables an ACPI method driver which drives
   1174	  motherboard PATA controller interfaces through the ACPI
   1175	  firmware in the BIOS. This driver can sometimes handle
   1176	  otherwise unsupported hardware.
   1177
   1178config ATA_GENERIC
   1179	tristate "Generic ATA support"
   1180	depends on PCI && ATA_BMDMA
   1181	select SATA_HOST
   1182	help
   1183	  This option enables support for generic BIOS configured
   1184	  ATA controllers via the new ATA layer
   1185
   1186	  If unsure, say N.
   1187
   1188config PATA_LEGACY
   1189	tristate "Legacy ISA PATA support (Experimental)"
   1190	depends on (ISA || PCI)
   1191	select PATA_TIMINGS
   1192	help
   1193	  This option enables support for ISA/VLB/PCI bus legacy PATA
   1194	  ports and allows them to be accessed via the new ATA layer.
   1195
   1196	  If unsure, say N.
   1197
   1198endif # ATA_SFF
   1199endif # ATA