From 1c32ab420f28450eba64857720b702927228649c Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Thu, 19 Apr 2012 10:22:18 -0700 Subject: [PATCH] 3.2-stable patches added patches: gpio-add-missing-spin_lock_init-in-gpio-pch-driver.patch pch_gpio-support-new-device-lapis-semiconductor-ml7831-ioh.patch --- ...ng-spin_lock_init-in-gpio-pch-driver.patch | 33 +++++++++++ ...evice-lapis-semiconductor-ml7831-ioh.patch | 58 +++++++++++++++++++ queue-3.2/series | 2 + 3 files changed, 93 insertions(+) create mode 100644 queue-3.2/gpio-add-missing-spin_lock_init-in-gpio-pch-driver.patch create mode 100644 queue-3.2/pch_gpio-support-new-device-lapis-semiconductor-ml7831-ioh.patch diff --git a/queue-3.2/gpio-add-missing-spin_lock_init-in-gpio-pch-driver.patch b/queue-3.2/gpio-add-missing-spin_lock_init-in-gpio-pch-driver.patch new file mode 100644 index 00000000000..d1619ba0946 --- /dev/null +++ b/queue-3.2/gpio-add-missing-spin_lock_init-in-gpio-pch-driver.patch @@ -0,0 +1,33 @@ +From d166370ad86b33b1111af3a0cdd7de94e03789a6 Mon Sep 17 00:00:00 2001 +From: Axel Lin +Date: Wed, 1 Feb 2012 10:51:53 +0800 +Subject: gpio: Add missing spin_lock_init in gpio-pch driver + +From: Axel Lin + +commit d166370ad86b33b1111af3a0cdd7de94e03789a6 upstream. + +This bug was introduced by commit d568a681 +"gpio-pch: add spinlock in suspend/resume processing" +which adds a spinlock to struct pch_gpio but never init the spinlock. + +Reported-by: Tomoya MORINAGA +Signed-off-by: Axel Lin +Acked-by: Linus Walleij +Signed-off-by: Grant Likely +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpio/gpio-pch.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/gpio/gpio-pch.c ++++ b/drivers/gpio/gpio-pch.c +@@ -392,6 +392,7 @@ static int __devinit pch_gpio_probe(stru + chip->reg = chip->base; + pci_set_drvdata(pdev, chip); + mutex_init(&chip->lock); ++ spin_lock_init(&chip->spinlock); + pch_gpio_setup(chip); + ret = gpiochip_add(&chip->gpio); + if (ret) { diff --git a/queue-3.2/pch_gpio-support-new-device-lapis-semiconductor-ml7831-ioh.patch b/queue-3.2/pch_gpio-support-new-device-lapis-semiconductor-ml7831-ioh.patch new file mode 100644 index 00000000000..e92be92269e --- /dev/null +++ b/queue-3.2/pch_gpio-support-new-device-lapis-semiconductor-ml7831-ioh.patch @@ -0,0 +1,58 @@ +From 868fea0507308b6548bba7debe5f5c2d5ca47fca Mon Sep 17 00:00:00 2001 +From: Tomoya MORINAGA +Date: Fri, 28 Oct 2011 09:23:32 +0900 +Subject: pch_gpio: Support new device LAPIS Semiconductor ML7831 IOH + +From: Tomoya MORINAGA + +commit 868fea0507308b6548bba7debe5f5c2d5ca47fca upstream. + +ML7831 is companion chip for Intel Atom E6xx series. + +Signed-off-by: Tomoya MORINAGA +Signed-off-by: Grant Likely +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpio/Kconfig | 11 ++++++----- + drivers/gpio/gpio-pch.c | 1 + + 2 files changed, 7 insertions(+), 5 deletions(-) + +--- a/drivers/gpio/Kconfig ++++ b/drivers/gpio/Kconfig +@@ -387,7 +387,7 @@ config GPIO_LANGWELL + Say Y here to support Intel Langwell/Penwell GPIO. + + config GPIO_PCH +- tristate "Intel EG20T PCH / OKI SEMICONDUCTOR ML7223 IOH GPIO" ++ tristate "Intel EG20T PCH/LAPIS Semiconductor IOH(ML7223/ML7831) GPIO" + depends on PCI && X86 + select GENERIC_IRQ_CHIP + help +@@ -395,11 +395,12 @@ config GPIO_PCH + which is an IOH(Input/Output Hub) for x86 embedded processor. + This driver can access PCH GPIO device. + +- This driver also can be used for OKI SEMICONDUCTOR IOH(Input/ +- Output Hub), ML7223. ++ This driver also can be used for LAPIS Semiconductor IOH(Input/ ++ Output Hub), ML7223 and ML7831. + ML7223 IOH is for MP(Media Phone) use. +- ML7223 is companion chip for Intel Atom E6xx series. +- ML7223 is completely compatible for Intel EG20T PCH. ++ ML7831 IOH is for general purpose use. ++ ML7223/ML7831 is companion chip for Intel Atom E6xx series. ++ ML7223/ML7831 is completely compatible for Intel EG20T PCH. + + config GPIO_ML_IOH + tristate "OKI SEMICONDUCTOR ML7213 IOH GPIO support" +--- a/drivers/gpio/gpio-pch.c ++++ b/drivers/gpio/gpio-pch.c +@@ -524,6 +524,7 @@ static DEFINE_PCI_DEVICE_TABLE(pch_gpio_ + { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x8803) }, + { PCI_DEVICE(PCI_VENDOR_ID_ROHM, 0x8014) }, + { PCI_DEVICE(PCI_VENDOR_ID_ROHM, 0x8043) }, ++ { PCI_DEVICE(PCI_VENDOR_ID_ROHM, 0x8803) }, + { 0, } + }; + MODULE_DEVICE_TABLE(pci, pch_gpio_pcidev_id); diff --git a/queue-3.2/series b/queue-3.2/series index f9df942876a..98fc0325ad7 100644 --- a/queue-3.2/series +++ b/queue-3.2/series @@ -45,3 +45,5 @@ fcaps-clear-the-same-personality-flags-as-suid-when-fcaps-are-used.patch ath9k-fix-max-noise-floor-threshold.patch xhci-fix-register-save-restore-order.patch bluetooth-hci_core-fix-null-pointer-dereference-at.patch +pch_gpio-support-new-device-lapis-semiconductor-ml7831-ioh.patch +gpio-add-missing-spin_lock_init-in-gpio-pch-driver.patch -- 2.47.3