[kernel] r7381 - in dists/sid/linux-2.6/debian: . patches patches/series

Sven Luther luther at costa.debian.org
Sun Sep 10 09:18:42 UTC 2006


Author: luther
Date: Sun Sep 10 09:18:41 2006
New Revision: 7381

Added:
   dists/sid/linux-2.6/debian/patches/powerpc-prom-init-backport.patch
Modified:
   dists/sid/linux-2.6/debian/changelog
   dists/sid/linux-2.6/debian/patches/series/9

Log:
Fixing isa ranges for pegasos serial driver + 32bit warning removal.



Modified: dists/sid/linux-2.6/debian/changelog
==============================================================================
--- dists/sid/linux-2.6/debian/changelog	(original)
+++ dists/sid/linux-2.6/debian/changelog	Sun Sep 10 09:18:41 2006
@@ -9,7 +9,11 @@
   * Update vserver patch to 2.0.2.
     - Fix possible priviledge escalation in remount code. (CVE-2006-4243)
 
- -- Bastian Blank <waldi at debian.org>  Mon,  4 Sep 2006 18:20:24 +0200
+  [ Sven Luther ]
+  * [powerpc] Fixing isa ranges for pegasos serial driver + 32bit warning
+    removal.
+
+ -- Sven Luther <sven at tael.powerlinux.fr>  Sun, 10 Sep 2006 11:15:55 +0200
 
 linux-2.6 (2.6.17-8) unstable; urgency=low
 

Added: dists/sid/linux-2.6/debian/patches/powerpc-prom-init-backport.patch
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/powerpc-prom-init-backport.patch	Sun Sep 10 09:18:41 2006
@@ -0,0 +1,72 @@
+# 
+# Fixing isa ranges for pegasos serial driver.
+# Removed warning on 32bit code.
+# Author: Benjamin Herrenschmidt <benh at kernel.crashing.org>
+# Upstream status: Backport
+# Description:
+#  The Pegasos firmware doesn't create a valid "ranges" property for the
+#  ISA bridge, thus causing translation of ISA addresses and IO ports to
+#  fail. This fixes it, thus re-enabling proper early serial console to
+#  work on Pegasos.
+#  A warning is hurting my eyes when building 32 bits kernels
+#  Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
+#
+
+--- linux-2.6.17.11/arch/powerpc/kernel/prom_init.c.orig	2006-09-10 11:04:34.000000000 +0200
++++ linux-2.6.17.11/arch/powerpc/kernel/prom_init.c	2006-09-10 11:09:26.000000000 +0200
+@@ -565,7 +565,9 @@
+ static void __init early_cmdline_parse(void)
+ {
+ 	struct prom_t *_prom = &RELOC(prom);
++#ifdef CONFIG_PPC64
+ 	const char *opt;
++#endif
+ 	char *p;
+ 	int l = 0;
+ 
+@@ -2103,6 +2105,37 @@
+ #define fixup_device_tree_maple()
+ #endif
+ 
++#ifdef CONFIG_PPC_CHRP
++/* Pegasos lacks the "ranges" property in the isa node */
++static void __init fixup_device_tree_chrp(void)
++{
++	phandle isa;
++	u32 isa_ranges[6];
++	char *name;
++	int rc;
++
++	name = "/pci at 80000000/isa at c";
++	isa = call_prom("finddevice", 1, 1, ADDR(name));
++	if (!PHANDLE_VALID(isa))
++		return;
++	
++	rc = prom_getproplen(isa, "ranges");
++	if (rc != 0 && rc != PROM_ERROR)
++		return;
++
++	prom_printf("Fixing up missing ISA range on Pegasos...\n");
++	isa_ranges[0] = 0x1;
++	isa_ranges[1] = 0x0;
++	isa_ranges[2] = 0x01006000;
++	isa_ranges[3] = 0x0;
++	isa_ranges[4] = 0x0;
++	isa_ranges[5] = 0x00010000;
++	prom_setprop(isa, name, "ranges",
++		isa_ranges, sizeof(isa_ranges));
++#else
++#define fixup_device_tree_chrp()
++#endif
++
+ #if defined(CONFIG_PPC64) && defined(CONFIG_PPC_PMAC)
+ static void __init fixup_device_tree_pmac(void)
+ {
+@@ -2150,6 +2183,7 @@
+ static void __init fixup_device_tree(void)
+ {
+ 	fixup_device_tree_maple();
++	fixup_device_tree_chrp();
+ 	fixup_device_tree_pmac();
+ }
+ 

Modified: dists/sid/linux-2.6/debian/patches/series/9
==============================================================================
--- dists/sid/linux-2.6/debian/patches/series/9	(original)
+++ dists/sid/linux-2.6/debian/patches/series/9	Sun Sep 10 09:18:41 2006
@@ -1,2 +1,4 @@
 + drivers-ide-pci-via82cxxx-vt8237a-id.patch
 + drivers-ide-pci-via82cxxx-vt8237a-id-2.patch
++ powerpc-prom-init-backport.patch
+



More information about the Kernel-svn-changes mailing list