]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
.38 patches
authorGreg Kroah-Hartman <gregkh@suse.de>
Mon, 21 Mar 2011 22:01:23 +0000 (15:01 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 21 Mar 2011 22:01:23 +0000 (15:01 -0700)
queue-2.6.38/davinci-dm644x-evm-register-musb-device-earlier.patch [new file with mode: 0644]
queue-2.6.38/fix-per-cpu-flag-problem-in-the-cpu-affinity-checkers.patch [new file with mode: 0644]
queue-2.6.38/hwmon-sht15-fix-integer-overflow-in-humidity-calculation.patch [new file with mode: 0644]
queue-2.6.38/i2c-fix-typo-in-instantiating-devices-document.patch [new file with mode: 0644]
queue-2.6.38/input-bcm5974-add-support-for-macbookpro8.patch [new file with mode: 0644]
queue-2.6.38/mmc-sdhci-add-ricoh-e823-pci-id.patch [new file with mode: 0644]
queue-2.6.38/mmc-sdio-remember-new-card-rca-when-redetecting-card.patch [new file with mode: 0644]
queue-2.6.38/series
queue-2.6.38/x86-binutils-xen-fix-another-wrong-size-directive.patch [new file with mode: 0644]

diff --git a/queue-2.6.38/davinci-dm644x-evm-register-musb-device-earlier.patch b/queue-2.6.38/davinci-dm644x-evm-register-musb-device-earlier.patch
new file mode 100644 (file)
index 0000000..511d9da
--- /dev/null
@@ -0,0 +1,51 @@
+From 60d97a840175d3becb2e6de36537a5cdfc0ec3a9 Mon Sep 17 00:00:00 2001
+From: Sergei Shtylyov <sshtylyov@ru.mvista.com>
+Date: Sun, 13 Mar 2011 20:06:59 +0000
+Subject: davinci: DM644x EVM: register MUSB device earlier
+
+From: Sergei Shtylyov <sshtylyov@ru.mvista.com>
+
+commit 60d97a840175d3becb2e6de36537a5cdfc0ec3a9 upstream.
+
+The MUSB driver doesn't see its platform device on DM644x EVM board anymore
+since commit 73b089b052a69020b953312a624a6e1eb5b81fab (usb: musb: split davinci
+to its own platform_driver) because the new probe is called as subsys_initcall()
+now, and the device is registered later than that by the board code.  Move the
+registration to davinci_evm_init() -- it's safe to do so because the MUSB core
+device still gets initialized as fs_initcall() -- which is late enough for the
+I2C GPIO expander (which controls VBUS) to be initialized.
+
+Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
+Acked-by: Felipe Balbi <balbi@ti.com>
+Tested-by: Sekhar Nori <nsekhar@ti.com>
+Signed-off-by: Kevin Hilman <khilman@ti.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ arch/arm/mach-davinci/board-dm644x-evm.c |    8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+--- a/arch/arm/mach-davinci/board-dm644x-evm.c
++++ b/arch/arm/mach-davinci/board-dm644x-evm.c
+@@ -440,11 +440,6 @@ evm_u35_setup(struct i2c_client *client,
+       gpio_request(gpio + 7, "nCF_SEL");
+       gpio_direction_output(gpio + 7, 1);
+-      /* irlml6401 switches over 1A, in under 8 msec;
+-       * now it can be managed by nDRV_VBUS ...
+-       */
+-      davinci_setup_usb(1000, 8);
+-
+       return 0;
+ }
+@@ -705,6 +700,9 @@ static __init void davinci_evm_init(void
+       davinci_serial_init(&uart_config);
+       dm644x_init_asp(&dm644x_evm_snd_data);
++      /* irlml6401 switches over 1A, in under 8 msec */
++      davinci_setup_usb(1000, 8);
++
+       soc_info->emac_pdata->phy_id = DM644X_EVM_PHY_ID;
+       /* Register the fixup for PHY on DaVinci */
+       phy_register_fixup_for_uid(LXT971_PHY_ID, LXT971_PHY_MASK,
diff --git a/queue-2.6.38/fix-per-cpu-flag-problem-in-the-cpu-affinity-checkers.patch b/queue-2.6.38/fix-per-cpu-flag-problem-in-the-cpu-affinity-checkers.patch
new file mode 100644 (file)
index 0000000..c16eda2
--- /dev/null
@@ -0,0 +1,31 @@
+From 9804c9eaeacfe78651052c5ddff31099f60ef78c Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Mon, 7 Feb 2011 19:28:01 +0100
+Subject: [PARISC] fix per-cpu flag problem in the cpu affinity checkers
+
+From: Thomas Gleixner <tglx@linutronix.de>
+
+commit 9804c9eaeacfe78651052c5ddff31099f60ef78c upstream.
+
+The CHECK_IRQ_PER_CPU is wrong, it should be checking
+irq_to_desc(irq)->status not just irq.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: James Bottomley <James.Bottomley@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ arch/parisc/kernel/irq.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/arch/parisc/kernel/irq.c
++++ b/arch/parisc/kernel/irq.c
+@@ -108,7 +108,7 @@ int cpu_check_affinity(unsigned int irq,
+       int cpu_dest;
+       /* timer and ipi have to always be received on all CPUs */
+-      if (CHECK_IRQ_PER_CPU(irq)) {
++      if (CHECK_IRQ_PER_CPU(irq_to_desc(irq)->status)) {
+               /* Bad linux design decision.  The mask has already
+                * been set; we must reset it */
+               cpumask_setall(irq_desc[irq].affinity);
diff --git a/queue-2.6.38/hwmon-sht15-fix-integer-overflow-in-humidity-calculation.patch b/queue-2.6.38/hwmon-sht15-fix-integer-overflow-in-humidity-calculation.patch
new file mode 100644 (file)
index 0000000..426950e
--- /dev/null
@@ -0,0 +1,38 @@
+From ccd32e735de7a941906e093f8dca924bb05c5794 Mon Sep 17 00:00:00 2001
+From: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
+Date: Mon, 21 Mar 2011 17:59:35 +0100
+Subject: hwmon: (sht15) Fix integer overflow in humidity calculation
+
+From: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
+
+commit ccd32e735de7a941906e093f8dca924bb05c5794 upstream.
+
+An integer overflow occurs in the calculation of RHlinear when the
+relative humidity is greater than around 30%. The consequence is a subtle
+(but noticeable) error in the resulting humidity measurement.
+
+Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
+Signed-off-by: Jean Delvare <khali@linux-fr.org>
+Cc: Jonathan Cameron <jic23@cam.ac.uk>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/hwmon/sht15.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/hwmon/sht15.c
++++ b/drivers/hwmon/sht15.c
+@@ -333,11 +333,11 @@ static inline int sht15_calc_humid(struc
+       const int c1 = -4;
+       const int c2 = 40500; /* x 10 ^ -6 */
+-      const int c3 = -2800; /* x10 ^ -9 */
++      const int c3 = -28; /* x 10 ^ -7 */
+       RHlinear = c1*1000
+               + c2 * data->val_humid/1000
+-              + (data->val_humid * data->val_humid * c3)/1000000;
++              + (data->val_humid * data->val_humid * c3) / 10000;
+       return (temp - 25000) * (10000 + 80 * data->val_humid)
+               / 1000000 + RHlinear;
+ }
diff --git a/queue-2.6.38/i2c-fix-typo-in-instantiating-devices-document.patch b/queue-2.6.38/i2c-fix-typo-in-instantiating-devices-document.patch
new file mode 100644 (file)
index 0000000..876421e
--- /dev/null
@@ -0,0 +1,31 @@
+From 6ced9e6b3901af4ab6ac0a11231402c888286ea6 Mon Sep 17 00:00:00 2001
+From: Roman Fietze <roman.fietze@telemotive.de>
+Date: Sun, 20 Mar 2011 14:50:52 +0100
+Subject: i2c: Fix typo in instantiating-devices document
+
+From: Roman Fietze <roman.fietze@telemotive.de>
+
+commit 6ced9e6b3901af4ab6ac0a11231402c888286ea6 upstream.
+
+The struct i2c_board_info member holding the name is "type", not
+"name".
+
+Signed-off-by: Roman Fietze <roman.fietze@telemotive.de>
+Signed-off-by: Jean Delvare <khali@linux-fr.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ Documentation/i2c/instantiating-devices |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/Documentation/i2c/instantiating-devices
++++ b/Documentation/i2c/instantiating-devices
+@@ -100,7 +100,7 @@ static int __devinit usb_hcd_pnx4008_pro
+       (...)
+       i2c_adap = i2c_get_adapter(2);
+       memset(&i2c_info, 0, sizeof(struct i2c_board_info));
+-      strlcpy(i2c_info.name, "isp1301_pnx", I2C_NAME_SIZE);
++      strlcpy(i2c_info.type, "isp1301_pnx", I2C_NAME_SIZE);
+       isp1301_i2c_client = i2c_new_probed_device(i2c_adap, &i2c_info,
+                                                  normal_i2c, NULL);
+       i2c_put_adapter(i2c_adap);
diff --git a/queue-2.6.38/input-bcm5974-add-support-for-macbookpro8.patch b/queue-2.6.38/input-bcm5974-add-support-for-macbookpro8.patch
new file mode 100644 (file)
index 0000000..42b65e1
--- /dev/null
@@ -0,0 +1,117 @@
+From 47340bd9fefb571888836da942b5aee0e85e959c Mon Sep 17 00:00:00 2001
+From: Andy Botting <andy@andybotting.com>
+Date: Sat, 12 Mar 2011 20:27:22 -0800
+Subject: Input: bcm5974 - add support for MacBookPro8
+
+From: Andy Botting <andy@andybotting.com>
+
+commit 47340bd9fefb571888836da942b5aee0e85e959c upstream.
+
+This patch add multitouch support for the MacBookPro8,1 and
+MacBookPro8,2 models.
+
+Signed-off-by: Andy Botting <andy@andybotting.com>
+Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
+Acked-by: Jiri Kosina <jkosina@suse.cz>
+Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/hid/hid-apple.c       |    6 ++++++
+ drivers/hid/hid-core.c        |    6 ++++++
+ drivers/hid/hid-ids.h         |    3 +++
+ drivers/input/mouse/bcm5974.c |   20 ++++++++++++++++++++
+ 4 files changed, 35 insertions(+)
+
+--- a/drivers/hid/hid-apple.c
++++ b/drivers/hid/hid-apple.c
+@@ -481,6 +481,12 @@ static const struct hid_device_id apple_
+               .driver_data = APPLE_HAS_FN | APPLE_ISO_KEYBOARD },
+       { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING4A_JIS),
+               .driver_data = APPLE_HAS_FN | APPLE_RDESC_JIS },
++      { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_ANSI),
++              .driver_data = APPLE_HAS_FN },
++      { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_ISO),
++              .driver_data = APPLE_HAS_FN | APPLE_ISO_KEYBOARD },
++      { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_JIS),
++              .driver_data = APPLE_HAS_FN | APPLE_RDESC_JIS },
+       { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ANSI),
+               .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN },
+       { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ISO),
+--- a/drivers/hid/hid-core.c
++++ b/drivers/hid/hid-core.c
+@@ -1300,6 +1300,9 @@ static const struct hid_device_id hid_ha
+       { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING4A_ANSI) },
+       { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING4A_ISO) },
+       { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING4A_JIS) },
++      { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_ANSI) },
++      { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_ISO) },
++      { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_JIS) },
+       { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ANSI) },
+       { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ISO) },
+       { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_JIS) },
+@@ -1800,6 +1803,9 @@ static const struct hid_device_id hid_mo
+       { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING4A_ANSI) },
+       { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING4A_ISO) },
+       { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING4A_JIS) },
++      { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_ANSI) },
++      { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_ISO) },
++      { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_JIS) },
+       { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_FOUNTAIN_TP_ONLY) },
+       { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_GEYSER1_TP_ONLY) },
+       { }
+--- a/drivers/hid/hid-ids.h
++++ b/drivers/hid/hid-ids.h
+@@ -103,6 +103,9 @@
+ #define USB_DEVICE_ID_APPLE_WELLSPRING4A_ANSI 0x0242
+ #define USB_DEVICE_ID_APPLE_WELLSPRING4A_ISO  0x0243
+ #define USB_DEVICE_ID_APPLE_WELLSPRING4A_JIS  0x0244
++#define USB_DEVICE_ID_APPLE_WELLSPRING5_ANSI  0x0245
++#define USB_DEVICE_ID_APPLE_WELLSPRING5_ISO   0x0246
++#define USB_DEVICE_ID_APPLE_WELLSPRING5_JIS   0x0247
+ #define USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ANSI  0x0239
+ #define USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ISO   0x023a
+ #define USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_JIS   0x023b
+--- a/drivers/input/mouse/bcm5974.c
++++ b/drivers/input/mouse/bcm5974.c
+@@ -63,6 +63,10 @@
+ #define USB_DEVICE_ID_APPLE_WELLSPRING4A_ANSI 0x0242
+ #define USB_DEVICE_ID_APPLE_WELLSPRING4A_ISO  0x0243
+ #define USB_DEVICE_ID_APPLE_WELLSPRING4A_JIS  0x0244
++/* Macbook8 (unibody, March 2011) */
++#define USB_DEVICE_ID_APPLE_WELLSPRING5_ANSI  0x0245
++#define USB_DEVICE_ID_APPLE_WELLSPRING5_ISO   0x0246
++#define USB_DEVICE_ID_APPLE_WELLSPRING5_JIS   0x0247
+ #define BCM5974_DEVICE(prod) {                                        \
+       .match_flags = (USB_DEVICE_ID_MATCH_DEVICE |            \
+@@ -96,6 +100,10 @@ static const struct usb_device_id bcm597
+       BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING4A_ANSI),
+       BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING4A_ISO),
+       BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING4A_JIS),
++      /* MacbookPro8 */
++      BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING5_ANSI),
++      BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING5_ISO),
++      BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING5_JIS),
+       /* Terminating entry */
+       {}
+ };
+@@ -274,6 +282,18 @@ static const struct bcm5974_config bcm59
+               { DIM_X, DIM_X / SN_COORD, -4616, 5112 },
+               { DIM_Y, DIM_Y / SN_COORD, -142, 5234 }
+       },
++      {
++              USB_DEVICE_ID_APPLE_WELLSPRING5_ANSI,
++              USB_DEVICE_ID_APPLE_WELLSPRING5_ISO,
++              USB_DEVICE_ID_APPLE_WELLSPRING5_JIS,
++              HAS_INTEGRATED_BUTTON,
++              0x84, sizeof(struct bt_data),
++              0x81, TYPE2, FINGER_TYPE2, FINGER_TYPE2 + SIZEOF_ALL_FINGERS,
++              { DIM_PRESSURE, DIM_PRESSURE / SN_PRESSURE, 0, 300 },
++              { DIM_WIDTH, DIM_WIDTH / SN_WIDTH, 0, 2048 },
++              { DIM_X, DIM_X / SN_COORD, -4415, 5050 },
++              { DIM_Y, DIM_Y / SN_COORD, -55, 6680 }
++      },
+       {}
+ };
diff --git a/queue-2.6.38/mmc-sdhci-add-ricoh-e823-pci-id.patch b/queue-2.6.38/mmc-sdhci-add-ricoh-e823-pci-id.patch
new file mode 100644 (file)
index 0000000..0026e9c
--- /dev/null
@@ -0,0 +1,34 @@
+From 5fd11c0754fa069b6aba64b65734aa2fb193552d Mon Sep 17 00:00:00 2001
+From: Manoj Iyer <manoj.iyer@canonical.com>
+Date: Fri, 11 Feb 2011 16:25:31 -0600
+Subject: mmc: sdhci: Add Ricoh e823 PCI ID
+
+From: Manoj Iyer <manoj.iyer@canonical.com>
+
+commit 5fd11c0754fa069b6aba64b65734aa2fb193552d upstream.
+
+Signed-off-by: Manoj Iyer <manoj.iyer@canonical.com>
+Signed-off-by: Chris Ball <cjb@laptop.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/mmc/host/sdhci-pci.c |    8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+--- a/drivers/mmc/host/sdhci-pci.c
++++ b/drivers/mmc/host/sdhci-pci.c
+@@ -547,6 +547,14 @@ static const struct pci_device_id pci_id
+       },
+       {
++              .vendor         = PCI_VENDOR_ID_RICOH,
++              .device         = 0xe823,
++              .subvendor      = PCI_ANY_ID,
++              .subdevice      = PCI_ANY_ID,
++              .driver_data    = (kernel_ulong_t)&sdhci_ricoh_mmc,
++      },
++
++      {
+               .vendor         = PCI_VENDOR_ID_ENE,
+               .device         = PCI_DEVICE_ID_ENE_CB712_SD,
+               .subvendor      = PCI_ANY_ID,
diff --git a/queue-2.6.38/mmc-sdio-remember-new-card-rca-when-redetecting-card.patch b/queue-2.6.38/mmc-sdio-remember-new-card-rca-when-redetecting-card.patch
new file mode 100644 (file)
index 0000000..7f8d1e6
--- /dev/null
@@ -0,0 +1,43 @@
+From 0aab3995485b8a994bf29a995a008c9ea4a28054 Mon Sep 17 00:00:00 2001
+From: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com>
+Date: Tue, 1 Mar 2011 14:41:04 +0100
+Subject: mmc: sdio: remember new card RCA when redetecting card
+
+From: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com>
+
+commit 0aab3995485b8a994bf29a995a008c9ea4a28054 upstream.
+
+During redetection of a SDIO card, a request for a new card RCA
+was submitted to the card, but was then overwritten by the old RCA.
+This caused the card to be deselected instead of selected when using
+the incorrect RCA.  This bug's been present since the "oldcard"
+handling was introduced in 2.6.32.
+
+Signed-off-by: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com>
+Reviewed-by: Ulf Hansson <ulf.hansson@stericsson.com>
+Reviewed-by: Pawel Wieczorkiewicz <pawel.wieczorkiewicz@stericsson.com>
+Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
+Signed-off-by: Chris Ball <cjb@laptop.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/mmc/core/sdio.c |    8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+--- a/drivers/mmc/core/sdio.c
++++ b/drivers/mmc/core/sdio.c
+@@ -395,6 +395,14 @@ static int mmc_sdio_init_card(struct mmc
+               if (err)
+                       goto remove;
++              /*
++               * Update oldcard with the new RCA received from the SDIO
++               * device -- we're doing this so that it's updated in the
++               * "card" struct when oldcard overwrites that later.
++               */
++              if (oldcard)
++                      oldcard->rca = card->rca;
++
+               mmc_set_bus_mode(host, MMC_BUSMODE_PUSHPULL);
+       }
index 7caf138c929c8823a34e0d1d8f1db483aa925a68..117bad583aac9ab0dc872ccfe3bcbd898097034e 100644 (file)
@@ -68,3 +68,11 @@ smp_call_function_many-handle-concurrent-clearing-of-mask.patch
 x86-flush-tlb-if-pgd-entry-is-changed-in-i386-pae-mode.patch
 hid-acrux-activate-the-device-immediately-after-binding.patch
 hid-do-not-create-input-devices-for-feature-reports.patch
+fix-per-cpu-flag-problem-in-the-cpu-affinity-checkers.patch
+input-bcm5974-add-support-for-macbookpro8.patch
+i2c-fix-typo-in-instantiating-devices-document.patch
+mmc-sdhci-add-ricoh-e823-pci-id.patch
+mmc-sdio-remember-new-card-rca-when-redetecting-card.patch
+x86-binutils-xen-fix-another-wrong-size-directive.patch
+davinci-dm644x-evm-register-musb-device-earlier.patch
+hwmon-sht15-fix-integer-overflow-in-humidity-calculation.patch
diff --git a/queue-2.6.38/x86-binutils-xen-fix-another-wrong-size-directive.patch b/queue-2.6.38/x86-binutils-xen-fix-another-wrong-size-directive.patch
new file mode 100644 (file)
index 0000000..7c92fc4
--- /dev/null
@@ -0,0 +1,75 @@
+From 371c394af27ab7d1e58a66bc19d9f1f3ac1f67b4 Mon Sep 17 00:00:00 2001
+From: Alexander van Heukelum <heukelum@fastmail.fm>
+Date: Fri, 11 Mar 2011 21:59:38 +0100
+Subject: x86, binutils, xen: Fix another wrong size directive
+
+From: Alexander van Heukelum <heukelum@fastmail.fm>
+
+commit 371c394af27ab7d1e58a66bc19d9f1f3ac1f67b4 upstream.
+
+The latest binutils (2.21.0.20110302/Ubuntu) breaks the build
+yet another time, under CONFIG_XEN=y due to a .size directive that
+refers to a slightly differently named (hence, to the now very
+strict and unforgiving assembler, non-existent) symbol.
+
+[ mingo:
+
+   This unnecessary build breakage caused by new binutils
+   version 2.21 gets escallated back several kernel releases spanning
+   several years of Linux history, affecting over 130,000 upstream
+   kernel commits (!), on CONFIG_XEN=y 64-bit kernels (i.e. essentially
+   affecting all major Linux distro kernel configs).
+
+   Git annotate tells us that this slight debug symbol code mismatch
+   bug has been introduced in 2008 in commit 3d75e1b8:
+
+     3d75e1b8        (Jeremy Fitzhardinge    2008-07-08 15:06:49 -0700 1231) ENTRY(xen_do_hypervisor_callback)   # do_hypervisor_callback(struct *pt_regs)
+
+   The 'bug' is just a slight assymetry in ENTRY()/END()
+   debug-symbols sequences, with lots of assembly code between the
+   ENTRY() and the END():
+
+     ENTRY(xen_do_hypervisor_callback)   # do_hypervisor_callback(struct *pt_regs)
+       ...
+     END(do_hypervisor_callback)
+
+   Human reviewers almost never catch such small mismatches, and binutils
+   never even warned about it either.
+
+   This new binutils version thus breaks the Xen build on all upstream kernels
+   since v2.6.27, out of the blue.
+
+   This makes a straightforward Git bisection of all 64-bit Xen-enabled kernels
+   impossible on such binutils, for a bisection window of over hundred
+   thousand historic commits. (!)
+
+   This is a major fail on the side of binutils and binutils needs to turn
+   this show-stopper build failure into a warning ASAP. ]
+
+Signed-off-by: Alexander van Heukelum <heukelum@fastmail.fm>
+Cc: Jeremy Fitzhardinge <jeremy@goop.org>
+Cc: Jan Beulich <jbeulich@novell.com>
+Cc: H.J. Lu <hjl.tools@gmail.com>
+Cc: Linus Torvalds <torvalds@linux-foundation.org>
+Cc: Andrew Morton <akpm@linux-foundation.org>
+Cc: "H. Peter Anvin" <hpa@zytor.com>
+Cc: Kees Cook <kees.cook@canonical.com>
+LKML-Reference: <1299877178-26063-1-git-send-email-heukelum@fastmail.fm>
+Signed-off-by: Ingo Molnar <mingo@elte.hu>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ arch/x86/kernel/entry_64.S |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/arch/x86/kernel/entry_64.S
++++ b/arch/x86/kernel/entry_64.S
+@@ -1248,7 +1248,7 @@ ENTRY(xen_do_hypervisor_callback)   # do
+       decl PER_CPU_VAR(irq_count)
+       jmp  error_exit
+       CFI_ENDPROC
+-END(do_hypervisor_callback)
++END(xen_do_hypervisor_callback)
+ /*
+  * Hypervisor uses this for application faults while it executes.