Commit a08b6b79 authored by viro@ZenIV.linux.org.uk's avatar viro@ZenIV.linux.org.uk Committed by Linus Torvalds

[PATCH] Kconfig fix (BLK_DEV_FD dependencies)

Sanitized and fixed floppy dependencies: split the messy dependencies for
BLK_DEV_FD by introducing a new symbol (ARCH_MAY_HAVE_PC_FDC), making
BLK_DEV_FD depend on that one and taking declarations of ARCH_MAY_HAVE_PC_FDC
to arch/*/Kconfig.  While we are at it, fixed several obvious cases when
BLK_DEV_FD should have been excluded (architectures lacking asm/floppy.h
are *not* going to have floppy.c compile, let alone work).

If you can come up with better name for that ("this architecture might
have working PC-compatible floppy disk controller"), you are more than
welcome - just s/ARCH_MAY_HAVE_PC_FDC/your_prefered_name/g in the patch
below...
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 8ae418cf
...@@ -479,6 +479,9 @@ config EISA ...@@ -479,6 +479,9 @@ config EISA
depends on ALPHA_GENERIC || ALPHA_JENSEN || ALPHA_ALCOR || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_RAWHIDE depends on ALPHA_GENERIC || ALPHA_JENSEN || ALPHA_ALCOR || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_RAWHIDE
default y default y
config ARCH_MAY_HAVE_PC_FDC
def_bool y
config SMP config SMP
bool "Symmetric multi-processing support" bool "Symmetric multi-processing support"
depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL
......
...@@ -64,6 +64,9 @@ config GENERIC_CALIBRATE_DELAY ...@@ -64,6 +64,9 @@ config GENERIC_CALIBRATE_DELAY
config GENERIC_BUST_SPINLOCK config GENERIC_BUST_SPINLOCK
bool bool
config ARCH_MAY_HAVE_PC_FDC
bool
config GENERIC_ISA_DMA config GENERIC_ISA_DMA
bool bool
...@@ -150,6 +153,7 @@ config ARCH_RPC ...@@ -150,6 +153,7 @@ config ARCH_RPC
select ARCH_ACORN select ARCH_ACORN
select FIQ select FIQ
select TIMER_ACORN select TIMER_ACORN
select ARCH_MAY_HAVE_PC_FDC
help help
On the Acorn Risc-PC, Linux can support the internal IDE disk and On the Acorn Risc-PC, Linux can support the internal IDE disk and
CD-ROM interface, serial and parallel port, and the floppy drive. CD-ROM interface, serial and parallel port, and the floppy drive.
......
...@@ -87,6 +87,7 @@ config FOOTBRIDGE_ADDIN ...@@ -87,6 +87,7 @@ config FOOTBRIDGE_ADDIN
# EBSA285 board in either host or addin mode # EBSA285 board in either host or addin mode
config ARCH_EBSA285 config ARCH_EBSA285
select ARCH_MAY_HAVE_PC_FDC
bool bool
endif endif
...@@ -55,6 +55,10 @@ config GENERIC_BUST_SPINLOCK ...@@ -55,6 +55,10 @@ config GENERIC_BUST_SPINLOCK
config GENERIC_ISA_DMA config GENERIC_ISA_DMA
bool bool
config ARCH_MAY_HAVE_PC_FDC
bool
default y
source "init/Kconfig" source "init/Kconfig"
......
...@@ -37,6 +37,10 @@ config GENERIC_IOMAP ...@@ -37,6 +37,10 @@ config GENERIC_IOMAP
bool bool
default y default y
config ARCH_MAY_HAVE_PC_FDC
bool
default y
source "init/Kconfig" source "init/Kconfig"
menu "Processor type and features" menu "Processor type and features"
......
...@@ -25,6 +25,11 @@ config GENERIC_CALIBRATE_DELAY ...@@ -25,6 +25,11 @@ config GENERIC_CALIBRATE_DELAY
bool bool
default y default y
config ARCH_MAY_HAVE_PC_FDC
bool
depends on Q40 || (BROKEN && SUN3X)
default y
mainmenu "Linux/68k Kernel Configuration" mainmenu "Linux/68k Kernel Configuration"
source "init/Kconfig" source "init/Kconfig"
......
...@@ -4,6 +4,11 @@ config MIPS ...@@ -4,6 +4,11 @@ config MIPS
# Horrible source of confusion. Die, die, die ... # Horrible source of confusion. Die, die, die ...
select EMBEDDED select EMBEDDED
# shouldn't it be per-subarchitecture?
config ARCH_MAY_HAVE_PC_FDC
bool
default y
mainmenu "Linux/MIPS Kernel Configuration" mainmenu "Linux/MIPS Kernel Configuration"
source "init/Kconfig" source "init/Kconfig"
......
...@@ -49,6 +49,10 @@ config ISA_DMA_API ...@@ -49,6 +49,10 @@ config ISA_DMA_API
bool bool
default y default y
config ARCH_MAY_HAVE_PC_FDC
bool
default y
source "init/Kconfig" source "init/Kconfig"
......
...@@ -47,6 +47,10 @@ config SCHED_NO_NO_OMIT_FRAME_POINTER ...@@ -47,6 +47,10 @@ config SCHED_NO_NO_OMIT_FRAME_POINTER
bool bool
default y default y
config ARCH_MAY_HAVE_PC_FDC
bool
default y
source "init/Kconfig" source "init/Kconfig"
menu "Processor" menu "Processor"
......
...@@ -44,6 +44,10 @@ config SCHED_NO_NO_OMIT_FRAME_POINTER ...@@ -44,6 +44,10 @@ config SCHED_NO_NO_OMIT_FRAME_POINTER
bool bool
default y default y
config ARCH_MAY_HAVE_PC_FDC
bool
default y
# We optimistically allocate largepages from the VM, so make the limit # We optimistically allocate largepages from the VM, so make the limit
# large enough (16MB). This badly named config option is actually # large enough (16MB). This badly named config option is actually
# max order + 1 # max order + 1
......
...@@ -37,6 +37,10 @@ config GENERIC_CALIBRATE_DELAY ...@@ -37,6 +37,10 @@ config GENERIC_CALIBRATE_DELAY
bool bool
default y default y
config ARCH_MAY_HAVE_PC_FDC
bool
default y
source "init/Kconfig" source "init/Kconfig"
menu "System type" menu "System type"
......
...@@ -211,6 +211,10 @@ config GENERIC_CALIBRATE_DELAY ...@@ -211,6 +211,10 @@ config GENERIC_CALIBRATE_DELAY
bool bool
default y default y
config ARCH_MAY_HAVE_PC_FDC
bool
default y
config SUN_PM config SUN_PM
bool bool
default y default y
......
...@@ -26,6 +26,10 @@ config TIME_INTERPOLATION ...@@ -26,6 +26,10 @@ config TIME_INTERPOLATION
bool bool
default y default y
config ARCH_MAY_HAVE_PC_FDC
bool
default y
choice choice
prompt "Kernel page size" prompt "Kernel page size"
default SPARC64_PAGE_SIZE_8KB default SPARC64_PAGE_SIZE_8KB
......
...@@ -65,6 +65,10 @@ config GENERIC_IOMAP ...@@ -65,6 +65,10 @@ config GENERIC_IOMAP
bool bool
default y default y
config ARCH_MAY_HAVE_PC_FDC
bool
default y
source "init/Kconfig" source "init/Kconfig"
......
...@@ -6,7 +6,7 @@ menu "Block devices" ...@@ -6,7 +6,7 @@ menu "Block devices"
config BLK_DEV_FD config BLK_DEV_FD
tristate "Normal floppy disk support" tristate "Normal floppy disk support"
depends on (!ARCH_S390 && !M68K && !IA64 && !UML && !ARM) || Q40 || (SUN3X && BROKEN) || ARCH_RPC || ARCH_EBSA285 depends on ARCH_MAY_HAVE_PC_FDC
---help--- ---help---
If you want to use the floppy disk drive(s) of your PC under Linux, If you want to use the floppy disk drive(s) of your PC under Linux,
say Y. Information about this driver, especially important for IBM say Y. Information about this driver, especially important for IBM
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment