select TIMER_ACORN
        select ISA
        select NO_IOPORT
+       select HAVE_IDE
        help
          Support for the Cirrus Logic PS7500FE system-on-a-chip.
 
        bool "Co-EBSA285"
        select FOOTBRIDGE
        select FOOTBRIDGE_ADDIN
+       select HAVE_IDE
        help
          Support for Intel's EBSA285 companion chip.
 
 config ARCH_FOOTBRIDGE
        bool "FootBridge"
        select FOOTBRIDGE
+       select HAVE_IDE
        help
          Support for systems based on the DC21285 companion chip
          ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
        depends on MMU
        select PLAT_IOP
        select PCI
+       select HAVE_IDE
        help
          Support for Intel's 80219 and IOP32X (XScale) family of
          processors.
        depends on MMU
        select PLAT_IOP
        select PCI
+       select HAVE_IDE
        help
          Support for Intel's IOP33X (XScale) family of processors.
 
 config ARCH_IXP23XX
        bool "IXP23XX-based"
        depends on MMU
+       select HAVE_IDE
        select PCI
        help
          Support for Intel's IXP23xx (XScale) family of processors.
        select GENERIC_GPIO
        select GENERIC_TIME
        select GENERIC_CLOCKEVENTS
+       select HAVE_IDE
        help
          Support for Intel's IXP4XX (XScale) family of processors.
 
 config ARCH_L7200
        bool "LinkUp-L7200"
        select FIQ
+       select HAVE_IDE
        help
          Say Y here if you intend to run this kernel on a LinkUp Systems
          L7200 Software Development Board which uses an ARM720T processor.
        depends on MMU
        select ARCH_MTD_XIP
        select GENERIC_GPIO
+       select HAVE_IDE
        select HAVE_GPIO_LIB
        select GENERIC_TIME
        select GENERIC_CLOCKEVENTS
        select ARCH_MAY_HAVE_PC_FDC
        select ISA_DMA_API
        select NO_IOPORT
+       select HAVE_IDE
        help
          On the Acorn Risc-PC, Linux can support the internal IDE disk and
          CD-ROM interface, serial and parallel port, and the floppy drive.
        select ARCH_MTD_XIP
        select GENERIC_GPIO
        select GENERIC_TIME
+       select HAVE_IDE
        help
          Support for StrongARM 11x0 based boards.
 
 config ARCH_S3C2410
        bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443"
        select GENERIC_GPIO
+       select HAVE_IDE
        help
          Samsung S3C2410X CPU based systems, such as the Simtec Electronics
          BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
 
 config ARCH_SHARK
        bool "Shark"
+       select HAVE_IDE
        select ISA
        select ISA_DMA
        select PCI
 
 config ARCH_LH7A40X
        bool "Sharp LH7A40X"
+       select HAVE_IDE
        help
          Say Y here for systems based on one of the Sharp LH7A40X
          System on a Chip processors.  These CPUs include an ARM922T
 
 source "drivers/misc/Kconfig"
 
-if PCMCIA || ARCH_CLPS7500 || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX \
-       || ARCH_L7200 || ARCH_LH7A40X || ARCH_PXA || ARCH_RPC \
-       || ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE \
-       || ARCH_IXP23XX
 source "drivers/ide/Kconfig"
-endif
 
 source "drivers/scsi/Kconfig"
 
 
 # Andre Hedrick <andre@linux-ide.org>
 #
 
+# Select HAVE_IDE if IDE is supported
+config HAVE_IDE
+       def_bool n
+
 menuconfig IDE
        tristate "ATA/ATAPI/MFM/RLL support"
+       depends on HAVE_IDE
        depends on BLOCK
-       depends on HAS_IOMEM
        ---help---
          If you say Y here, your kernel will be able to manage low cost mass
          storage units such as ATA/(E)IDE and ATAPI units. The most common