linux/drivers
Bjorn Helgaas 8f81dd1498 PNP: notice whether we have PNP devices (PNPBIOS or PNPACPI)
This series converts i386 and x86_64 legacy serial ports to be platform
devices and prevents probing for them if we have PNP.

This prevents double discovery, where a device was found both by the legacy
probe and by 8250_pnp.

This also prevents the serial driver from claiming IRDA devices (unless they
have a UART PNP ID).  The serial legacy probe sometimes assumed the wrong IRQ,
so the user had to use "setserial" to fix it.

Removing the need for setserial to make IRDA devices work seems good, but it
does break some things.  In particular, you may need to keep setserial from
poking legacy UART stuff back in by doing something like "dpkg-reconfigure
setserial" with the "kernel" option.  Otherwise, the setserial-discovered
"UART" will claim resources and prevent the IRDA driver from loading.

This patch:

If we can discover devices using PNP, we can skip some legacy probes.  This
flag ("pnp_platform_devices") indicates that PNPBIOS or PNPACPI is enabled and
should tell us about builtin devices.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Keith Owens <kaos@ocs.com.au>
Cc: Len Brown <lenb@kernel.org>
Cc: Adam Belay <ambx1@neo.rr.com>
Cc: Matthieu CASTET <castet.matthieu@free.fr>
Cc: Jean Tourrilhes <jt@hpl.hp.com>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>
Cc: Ville Syrjala <syrjala@sci.fi>
Cc: Russell King <rmk+serial@arm.linux.org.uk>
Cc: Samuel Ortiz <samuel@sortiz.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-08 11:15:23 -07:00
..
acorn
acpi workaround rtc-related acpi table bugs 2007-05-08 11:15:18 -07:00
amba uevent: use add_uevent_var() instead of open coding it 2007-04-27 10:57:29 -07:00
ata Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2007-05-06 13:20:10 -07:00
atm PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
auxdisplay
base fix hotplug for legacy platform drivers 2007-05-08 11:15:10 -07:00
block cciss: include scsi/scsi.h unconditionally 2007-05-08 11:15:10 -07:00
bluetooth [Bluetooth] Correct SCO buffer for another Broadcom based dongle 2007-05-05 00:36:22 +02:00
cdrom mm: remove destroy_dirty_buffers from invalidate_bdev() 2007-05-07 12:12:55 -07:00
char Char: cyclades, remove useless casts 2007-05-08 11:15:23 -07:00
clocksource
connector
cpufreq Add a new deferrable delayed work init 2007-05-08 11:15:05 -07:00
crypto [CRYPTO] padlock: Remove pointless padlock module 2007-05-02 22:08:26 +10:00
dio
dma
edac Fix 82875 PCI setup 2007-05-08 11:15:07 -07:00
eisa virtual_eisa_root_init() should be __init 2007-05-08 11:15:02 -07:00
fc4
firmware remove "struct subsystem" as it is no longer needed 2007-05-02 18:57:59 -07:00
hid header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
hwmon use mutex instead of semaphore in hdaps driver 2007-05-08 11:15:15 -07:00
i2c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
ide ide-cs: recognize 2GB CompactFlash from Transcend 2007-05-05 22:03:51 +02:00
ieee1394 header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
infiniband inode numbering: change libfs sb creation routines to avoid collisions with their root inodes 2007-05-08 11:15:16 -07:00
input header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
isdn ISDN: Spinlock initializer cleanup 2007-05-08 11:15:17 -07:00
kvm KVM: Remove unused 'instruction_length' 2007-05-03 10:52:32 +03:00
leds
macintosh header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
mca
md Remove do_sync_file_range() 2007-05-08 11:15:04 -07:00
media Clean up mutex_trylock noise 2007-05-08 11:15:13 -07:00
message remove unused header file: drivers/message/i2o/i2o_lan.h 2007-05-08 11:15:02 -07:00
mfd header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
misc Misc: add sensable phantom driver 2007-05-08 11:15:14 -07:00
mmc Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2007-05-06 13:20:10 -07:00
mtd Clean up mutex_trylock noise 2007-05-08 11:15:13 -07:00
net header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
nubus
oprofile
parisc header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
parport parport_serial: fix PCI must_checks 2007-05-08 11:15:08 -07:00
pci header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
pcmcia fix hotplug for legacy platform drivers 2007-05-08 11:15:10 -07:00
pnp PNP: notice whether we have PNP devices (PNPBIOS or PNPACPI) 2007-05-08 11:15:23 -07:00
ps3 ps3av: Use __func__ instead of __FUNCTION__ 2007-05-04 17:59:09 -07:00
rapidio
rtc rtc-cmos: make it load on PNPBIOS systems 2007-05-08 11:15:19 -07:00
s390 Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2007-05-05 13:30:44 -07:00
sbus header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
scsi Replace deprecated SA_xxx interrupt flags 2007-05-08 11:15:08 -07:00
serial 8250: Remove commented out irq cruft 2007-05-08 11:15:15 -07:00
sh
sn
spi au1550 SPI controller driver 2007-05-08 11:15:16 -07:00
tc
telephony replace pci_find_device in drivers/telephony/ixj.c 2007-05-08 11:15:02 -07:00
usb header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
video header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
w1 Driver for the Maxim DS1WM, a 1-wire bus master ASIC core 2007-05-08 11:15:14 -07:00
zorro Amiga Zorro bus: kill resource_size_t warnings 2007-05-04 17:59:08 -07:00
Kconfig
Makefile i2c: Add i2c_board_info and i2c_new_device() 2007-05-01 23:26:31 +02:00