# HG changeset patch # User Rob Landley # Date 1267502823 21600 # Node ID 3dc3e3627af243c245618f86cc441730fc9c759b # Parent c49753970700bdd5abf97ed2114ff1b598115a07 Upgrade to 2.6.33 kernel. diff -r c49753970700 -r 3dc3e3627af2 download.sh --- a/download.sh Mon Mar 01 02:43:27 2010 -0600 +++ b/download.sh Mon Mar 01 22:07:03 2010 -0600 @@ -21,8 +21,8 @@ # Building a cross compile toolchain requires linux headers, uClibc, # binutils, and gcc. -URL=http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.32.tar.bz2 \ -SHA1=410b4fc818023bfef60064e973ff0ab46d3bfb19 \ +URL=http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.33.tar.bz2 \ +SHA1=acc8db00f30c7dfb4f04183a88ba35a32b6f8e8d \ UNSTABLE=http://kernel.org/pub/linux/kernel/v2.6/testing/linux-2.6.32-rc7.tar.bz2 \ maybe_fork "download || dienow" diff -r c49753970700 -r 3dc3e3627af2 sources/patches/linux-2.6.32-fixsparc.patch --- a/sources/patches/linux-2.6.32-fixsparc.patch Mon Mar 01 02:43:27 2010 -0600 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,13 +0,0 @@ ---- linux-2.6.32/arch/sparc/include/asm/stat.h 2009-12-02 21:51:21.000000000 -0600 -+++ linux-2.6.32.bak/arch/sparc/include/asm/stat.h 2010-02-21 10:34:40.000000000 -0600 -@@ -53,8 +53,8 @@ - ino_t st_ino; - mode_t st_mode; - short st_nlink; -- uid_t st_uid; -- gid_t st_gid; -+ unsigned short st_uid; -+ unsigned short st_gid; - unsigned short st_rdev; - off_t st_size; - time_t st_atime; diff -r c49753970700 -r 3dc3e3627af2 sources/patches/linux-revertppcserial.patch --- a/sources/patches/linux-revertppcserial.patch Mon Mar 01 02:43:27 2010 -0600 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -It seems that in qemu, we can see an interrupt in R3 despite the -fact that it's masked in W1. The chip doesn't actually issue an -interrupt, but we can "see" it when taking an interrupt for the -other channel. This may be a qemu bug ... or not, so let's be -safe and avoid calling into the UART layer when that happens which -woulc cause a crash. - -Signed-off-by: Benjamin Herrenschmidt ---- - -David: This would affect sunzilog as well I believe. I'm not sure -if it's a bug in qemu emulation of the ESCC or if a real ESCC can -show it so I decided to be safe :-) The ESCC doc I have doesn't -appear to specify whether the interrupt status bits in R3 are -prior or post masking by W1. I can reproduce that by having the -kernel low level "udbg" debug console on channel B and the main -console on channel A (which is itself an uncommon setup). - -diff --git a/drivers/serial/pmac_zilog.c b/drivers/serial/pmac_zilog.c -index 0700cd1..683e66f 100644 ---- a/drivers/serial/pmac_zilog.c -+++ b/drivers/serial/pmac_zilog.c -@@ -411,6 +411,17 @@ static void pmz_transmit_chars(struct uart_pmac_port *uap) - goto ack_tx_int; - } - -+ /* Under some circumstances, we see interrupts reported for -+ * a closed channel. The interrupt mask in R1 is clear, but -+ * R3 still signals the interrupts and we see them when taking -+ * an interrupt for the other channel (this could be a qemu -+ * bug but since the ESCC doc doesn't specify precsiely whether -+ * R3 interrup status bits are masked by R1 interrupt enable -+ * bits, better safe than sorry). --BenH. -+ */ -+ if (!ZS_IS_OPEN(uap)) -+ goto ack_tx_int; -+ - if (uap->port.x_char) { - uap->flags |= PMACZILOG_FLAG_TX_ACTIVE; - write_zsdata(uap, uap->port.x_char);