[kernel] r9460 - in dists/sid/linux-2.6/debian: . patches/bugfix/all patches/series
Maximilian Attems
maks at alioth.debian.org
Wed Sep 5 12:09:22 UTC 2007
Author: maks
Date: Wed Sep 5 12:09:22 2007
New Revision: 9460
Log:
revert serial 2.6.22 breakage
thanks to mika grml.org for pointing it out
Added:
dists/sid/linux-2.6/debian/patches/bugfix/all/revert-serial-probing-break.patch
Modified:
dists/sid/linux-2.6/debian/changelog
dists/sid/linux-2.6/debian/patches/series/5
Modified: dists/sid/linux-2.6/debian/changelog
==============================================================================
--- dists/sid/linux-2.6/debian/changelog (original)
+++ dists/sid/linux-2.6/debian/changelog Wed Sep 5 12:09:22 2007
@@ -28,12 +28,13 @@
- PCI: disable MSI on RX790
- IPV6: Fix kernel panic while send SCTP data with IP fragments
- i386: fix lazy mode vmalloc synchronization for paravirt
+ * revert "x86, serial: convert legacy COM ports to platform devices"
[ Martin Michlmayr ]
* [mips] Add a fix so qemu NE2000 will work again.
* [mipsel/r5k-cobalt] Enable MTD.
- -- maximilian attems <maks at debian.org> Sat, 01 Sep 2007 17:45:38 +0200
+ -- maximilian attems <maks at debian.org> Wed, 05 Sep 2007 13:45:05 +0200
linux-2.6 (2.6.22-4) unstable; urgency=low
Added: dists/sid/linux-2.6/debian/patches/bugfix/all/revert-serial-probing-break.patch
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/bugfix/all/revert-serial-probing-break.patch Wed Sep 5 12:09:22 2007
@@ -0,0 +1,267 @@
+Date: Tue, 31 Jul 2007 22:59:32 GMT
+Message-Id: <200707312259.l6VMxW9d017994 at hera.kernel.org>
+From: Linux Kernel Mailing List <linux-kernel at vger.kernel.org>
+To: git-commits-head at vger.kernel.org
+Subject: revert "x86, serial: convert legacy COM ports to platform devices"
+Sender: git-commits-head-owner at vger.kernel.org
+Precedence: bulk
+X-Mailing-List: git-commits-head at vger.kernel.org
+
+Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=57d4810ea0d9ca58a7bcc1336607f0cede0a2abf
+Commit: 57d4810ea0d9ca58a7bcc1336607f0cede0a2abf
+Parent: a583f1b54249b11ad1ffd14c6e74d28fcbc59c07
+Author: Andrew Morton <akpm at linux-foundation.org>
+AuthorDate: Tue Jul 31 00:38:02 2007 -0700
+Committer: Linus Torvalds <torvalds at woody.linux-foundation.org>
+CommitDate: Tue Jul 31 15:39:38 2007 -0700
+
+ revert "x86, serial: convert legacy COM ports to platform devices"
+
+ Revert 7e92b4fc345f5b6f57585fbe5ffdb0f24d7c9b26. It broke Sébastien Dugué's
+ machine and Jeff said (persuasively)
+
+ This seems like it will break decades-long-working stuff, in favor of
+ breaking new ground in our favorite area, "trusting the BIOS."
+
+ It's just not worth it for serial ports, IMO. Serial ports are something
+ that just shouldn't break at this late stage in the game. My new Intel
+ platform boxes don't even have serial ports, so I question the value of
+ messing with serial port probing even more... because... just wait a year,
+ and your box won't have a serial port either! :)
+
+ I certainly don't object to the use of platform devices (or isa_driver),
+ but the probe change seems questionable. That's sorta analagous to
+ rewriting the floppy driver probe routine. Sure you could do it... but why
+ risk all that damage and go through debugging all over again?
+
+ It seems clear from this report that we cannot, should not, trust BIOS for
+ something (a) so simple and (b) that has been working for over a decade.
+
+ Much discussion ensued and we've decided to have another go at all of this.
+
+ Cc: Sébastien Dugué <sebastien.dugue at bull.net>
+ Cc: Bjorn Helgaas <bjorn.helgaas at hp.com>
+ Cc: Len Brown <lenb at kernel.org>
+ Cc: Adam Belay <ambx1 at neo.rr.com>
+ Cc: Matthew Garrett <mjg59 at srcf.ucam.org>
+ Cc: Russell King <rmk at arm.linux.org.uk>
+ Cc: Jeff Garzik <jeff at garzik.org>
+ Acked-by: Alan Cox <alan at lxorguk.ukuu.org.uk>
+ Cc: Michal Piotrowski <michal.k.k.piotrowski at gmail.com>
+ Cc: Sascha Sommer <saschasommer at freenet.de>
+ Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
+ Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
+---
+ Documentation/kernel-parameters.txt | 5 ---
+ arch/i386/kernel/Makefile | 1 -
+ arch/i386/kernel/legacy_serial.c | 67 -----------------------------------
+ arch/x86_64/kernel/Makefile | 2 -
+ drivers/serial/Kconfig | 14 +++-----
+ include/asm-i386/serial.h | 16 ++++++++
+ include/asm-x86_64/serial.h | 16 ++++++++
+ 7 files changed, 37 insertions(+), 84 deletions(-)
+
+diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
+index d763ebe..efdb42f 100644
+--- a/Documentation/kernel-parameters.txt
++++ b/Documentation/kernel-parameters.txt
+@@ -864,11 +864,6 @@ and is between 256 and 4096 characters. It is defined in the file
+ lasi= [HW,SCSI] PARISC LASI driver for the 53c700 chip
+ Format: addr:<io>,irq:<irq>
+
+- legacy_serial.force [HW,X86-32,X86-64]
+- Probe for COM ports at legacy addresses even
+- if PNPBIOS or ACPI should describe them. This
+- is for working around firmware defects.
+-
+ load_ramdisk= [RAM] List of ramdisks to load from floppy
+ See Documentation/ramdisk.txt.
+
+diff --git a/arch/i386/kernel/Makefile b/arch/i386/kernel/Makefile
+index dbe5e87..9d33b00 100644
+--- a/arch/i386/kernel/Makefile
++++ b/arch/i386/kernel/Makefile
+@@ -35,7 +35,6 @@ obj-y += sysenter.o vsyscall.o
+ obj-$(CONFIG_ACPI_SRAT) += srat.o
+ obj-$(CONFIG_EFI) += efi.o efi_stub.o
+ obj-$(CONFIG_DOUBLEFAULT) += doublefault.o
+-obj-$(CONFIG_SERIAL_8250) += legacy_serial.o
+ obj-$(CONFIG_VM86) += vm86.o
+ obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
+ obj-$(CONFIG_HPET_TIMER) += hpet.o
+diff --git a/arch/i386/kernel/legacy_serial.c b/arch/i386/kernel/legacy_serial.c
+deleted file mode 100644
+index 2151011..0000000
+--- a/arch/i386/kernel/legacy_serial.c
++++ /dev/null
+@@ -1,67 +0,0 @@
+-/*
+- * Legacy COM port devices for x86 platforms without PNPBIOS or ACPI.
+- * Data taken from include/asm-i386/serial.h.
+- *
+- * (c) Copyright 2007 Hewlett-Packard Development Company, L.P.
+- * Bjorn Helgaas <bjorn.helgaas at hp.com>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License version 2 as
+- * published by the Free Software Foundation.
+- */
+-#include <linux/module.h>
+-#include <linux/init.h>
+-#include <linux/pnp.h>
+-#include <linux/serial_8250.h>
+-
+-/* Standard COM flags (except for COM4, because of the 8514 problem) */
+-#ifdef CONFIG_SERIAL_DETECT_IRQ
+-#define COM_FLAGS (UPF_BOOT_AUTOCONF | UPF_SKIP_TEST | UPF_AUTO_IRQ)
+-#define COM4_FLAGS (UPF_BOOT_AUTOCONF | UPF_AUTO_IRQ)
+-#else
+-#define COM_FLAGS (UPF_BOOT_AUTOCONF | UPF_SKIP_TEST)
+-#define COM4_FLAGS UPF_BOOT_AUTOCONF
+-#endif
+-
+-#define PORT(_base,_irq,_flags) \
+- { \
+- .iobase = _base, \
+- .irq = _irq, \
+- .uartclk = 1843200, \
+- .iotype = UPIO_PORT, \
+- .flags = _flags, \
+- }
+-
+-static struct plat_serial8250_port x86_com_data[] = {
+- PORT(0x3F8, 4, COM_FLAGS),
+- PORT(0x2F8, 3, COM_FLAGS),
+- PORT(0x3E8, 4, COM_FLAGS),
+- PORT(0x2E8, 3, COM4_FLAGS),
+- { },
+-};
+-
+-static struct platform_device x86_com_device = {
+- .name = "serial8250",
+- .id = PLAT8250_DEV_PLATFORM,
+- .dev = {
+- .platform_data = x86_com_data,
+- },
+-};
+-
+-static int force_legacy_probe;
+-module_param_named(force, force_legacy_probe, bool, 0);
+-MODULE_PARM_DESC(force, "Force legacy serial port probe");
+-
+-static int __init serial8250_x86_com_init(void)
+-{
+- if (pnp_platform_devices && !force_legacy_probe)
+- return -ENODEV;
+-
+- return platform_device_register(&x86_com_device);
+-}
+-
+-module_init(serial8250_x86_com_init);
+-
+-MODULE_AUTHOR("Bjorn Helgaas");
+-MODULE_LICENSE("GPL");
+-MODULE_DESCRIPTION("Generic 8250/16x50 legacy probe module");
+diff --git a/arch/x86_64/kernel/Makefile b/arch/x86_64/kernel/Makefile
+index d1d18c1..ff5d8c9 100644
+--- a/arch/x86_64/kernel/Makefile
++++ b/arch/x86_64/kernel/Makefile
+@@ -32,7 +32,6 @@ obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
+ obj-$(CONFIG_IOMMU) += pci-gart.o aperture.o
+ obj-$(CONFIG_CALGARY_IOMMU) += pci-calgary.o tce.o
+ obj-$(CONFIG_SWIOTLB) += pci-swiotlb.o
+-obj-$(CONFIG_SERIAL_8250) += legacy_serial.o
+ obj-$(CONFIG_KPROBES) += kprobes.o
+ obj-$(CONFIG_X86_PM_TIMER) += pmtimer.o
+ obj-$(CONFIG_X86_VSMP) += vsmp.o
+@@ -51,7 +50,6 @@ CFLAGS_vsyscall.o := $(PROFILING) -g0
+
+ therm_throt-y += ../../i386/kernel/cpu/mcheck/therm_throt.o
+ bootflag-y += ../../i386/kernel/bootflag.o
+-legacy_serial-y += ../../i386/kernel/legacy_serial.o
+ cpuid-$(subst m,y,$(CONFIG_X86_CPUID)) += ../../i386/kernel/cpuid.o
+ topology-y += ../../i386/kernel/topology.o
+ microcode-$(subst m,y,$(CONFIG_MICROCODE)) += ../../i386/kernel/microcode.o
+diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig
+index 18f6297..819fc3e 100644
+--- a/drivers/serial/Kconfig
++++ b/drivers/serial/Kconfig
+@@ -88,21 +88,17 @@ config SERIAL_8250_PCI
+ depends on SERIAL_8250 && PCI
+ default SERIAL_8250
+ help
+- Say Y here if you have PCI serial ports.
+-
+- To compile this driver as a module, choose M here: the module
+- will be called 8250_pci.
++ This builds standard PCI serial support. You may be able to
++ disable this feature if you only need legacy serial support.
++ Saves about 9K.
+
+ config SERIAL_8250_PNP
+ tristate "8250/16550 PNP device support" if EMBEDDED
+ depends on SERIAL_8250 && PNP
+ default SERIAL_8250
+ help
+- Say Y here if you have serial ports described by PNPBIOS or ACPI.
+- These are typically ports built into the system board.
+-
+- To compile this driver as a module, choose M here: the module
+- will be called 8250_pnp.
++ This builds standard PNP serial support. You may be able to
++ disable this feature if you only need legacy serial support.
+
+ config SERIAL_8250_HP300
+ tristate
+diff --git a/include/asm-i386/serial.h b/include/asm-i386/serial.h
+index 57a4306..bd67480 100644
+--- a/include/asm-i386/serial.h
++++ b/include/asm-i386/serial.h
+@@ -11,3 +11,19 @@
+ * megabits/second; but this requires the faster clock.
+ */
+ #define BASE_BAUD ( 1843200 / 16 )
++
++/* Standard COM flags (except for COM4, because of the 8514 problem) */
++#ifdef CONFIG_SERIAL_DETECT_IRQ
++#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST | ASYNC_AUTO_IRQ)
++#define STD_COM4_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_AUTO_IRQ)
++#else
++#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST)
++#define STD_COM4_FLAGS ASYNC_BOOT_AUTOCONF
++#endif
++
++#define SERIAL_PORT_DFNS \
++ /* UART CLK PORT IRQ FLAGS */ \
++ { 0, BASE_BAUD, 0x3F8, 4, STD_COM_FLAGS }, /* ttyS0 */ \
++ { 0, BASE_BAUD, 0x2F8, 3, STD_COM_FLAGS }, /* ttyS1 */ \
++ { 0, BASE_BAUD, 0x3E8, 4, STD_COM_FLAGS }, /* ttyS2 */ \
++ { 0, BASE_BAUD, 0x2E8, 3, STD_COM4_FLAGS }, /* ttyS3 */
+diff --git a/include/asm-x86_64/serial.h b/include/asm-x86_64/serial.h
+index 8ebd765..b0496e0 100644
+--- a/include/asm-x86_64/serial.h
++++ b/include/asm-x86_64/serial.h
+@@ -11,3 +11,19 @@
+ * megabits/second; but this requires the faster clock.
+ */
+ #define BASE_BAUD ( 1843200 / 16 )
++
++/* Standard COM flags (except for COM4, because of the 8514 problem) */
++#ifdef CONFIG_SERIAL_DETECT_IRQ
++#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST | ASYNC_AUTO_IRQ)
++#define STD_COM4_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_AUTO_IRQ)
++#else
++#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST)
++#define STD_COM4_FLAGS ASYNC_BOOT_AUTOCONF
++#endif
++
++#define SERIAL_PORT_DFNS \
++ /* UART CLK PORT IRQ FLAGS */ \
++ { 0, BASE_BAUD, 0x3F8, 4, STD_COM_FLAGS }, /* ttyS0 */ \
++ { 0, BASE_BAUD, 0x2F8, 3, STD_COM_FLAGS }, /* ttyS1 */ \
++ { 0, BASE_BAUD, 0x3E8, 4, STD_COM_FLAGS }, /* ttyS2 */ \
++ { 0, BASE_BAUD, 0x2E8, 3, STD_COM4_FLAGS }, /* ttyS3 */
+-
+To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
+the body of a message to majordomo at vger.kernel.org
+More majordomo info at http://vger.kernel.org/majordomo-info.html
Modified: dists/sid/linux-2.6/debian/patches/series/5
==============================================================================
--- dists/sid/linux-2.6/debian/patches/series/5 (original)
+++ dists/sid/linux-2.6/debian/patches/series/5 Wed Sep 5 12:09:22 2007
@@ -1,3 +1,4 @@
- bugfix/sparc/sun4u-pci-config-space.patch
+ bugfix/2.6.22.6
+ bugfix/mips/i8259-disable-method.patch
++ bugfix/all/revert-serial-probing-break.patch
More information about the Kernel-svn-changes
mailing list