From 902b5e33ed824878030464916b83fa486e24cd96 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Wed, 10 Apr 2013 13:31:01 -0700 Subject: [PATCH] 3.8-stable patches added patches: arm-exynos-fix-crash-on-soft-reset-on-exynos5440.patch cpufreq-exynos-get-booting-freq-value-in-exynos_cpufreq_init.patch drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch drm-i915-fix-build-failure.patch msi-wmi-fix-memory-leak.patch revert-pci-acpi-request-_osc-control-before-scanning-pci-root-bus.patch thermal-return-an-error-on-failure-to-register-thermal-class.patch x86-fix-rebuild-with-efi_stub-enabled.patch --- ...ix-crash-on-soft-reset-on-exynos5440.patch | 45 ++++ ...ng-freq-value-in-exynos_cpufreq_init.patch | 41 ++++ ...-invert-brightness-on-emachines-e725.patch | 33 +++ ...-invert-brightness-on-emachines-g725.patch | 32 +++ ...ert-brightness-on-packard-bell-ncl20.patch | 31 +++ queue-3.8/drm-i915-fix-build-failure.patch | 37 ++++ queue-3.8/msi-wmi-fix-memory-leak.patch | 44 ++++ ...control-before-scanning-pci-root-bus.patch | 200 ++++++++++++++++++ queue-3.8/series | 10 + ...on-failure-to-register-thermal-class.patch | 36 ++++ ...86-fix-rebuild-with-efi_stub-enabled.patch | 63 ++++++ 11 files changed, 572 insertions(+) create mode 100644 queue-3.8/arm-exynos-fix-crash-on-soft-reset-on-exynos5440.patch create mode 100644 queue-3.8/cpufreq-exynos-get-booting-freq-value-in-exynos_cpufreq_init.patch create mode 100644 queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch create mode 100644 queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch create mode 100644 queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch create mode 100644 queue-3.8/drm-i915-fix-build-failure.patch create mode 100644 queue-3.8/msi-wmi-fix-memory-leak.patch create mode 100644 queue-3.8/revert-pci-acpi-request-_osc-control-before-scanning-pci-root-bus.patch create mode 100644 queue-3.8/thermal-return-an-error-on-failure-to-register-thermal-class.patch create mode 100644 queue-3.8/x86-fix-rebuild-with-efi_stub-enabled.patch diff --git a/queue-3.8/arm-exynos-fix-crash-on-soft-reset-on-exynos5440.patch b/queue-3.8/arm-exynos-fix-crash-on-soft-reset-on-exynos5440.patch new file mode 100644 index 00000000000..613b46813c1 --- /dev/null +++ b/queue-3.8/arm-exynos-fix-crash-on-soft-reset-on-exynos5440.patch @@ -0,0 +1,45 @@ +From 60db7e5f9c9a25a7a9b01007e6e3f5a93bc16a3a Mon Sep 17 00:00:00 2001 +From: Thomas Abraham +Date: Thu, 24 Jan 2013 10:09:13 -0800 +Subject: ARM: EXYNOS: Fix crash on soft reset on EXYNOS5440 + +From: Thomas Abraham + +commit 60db7e5f9c9a25a7a9b01007e6e3f5a93bc16a3a upstream. + +The soft-reset control register is located in the XMU controller space. +Map this controller space before writing to the soft-reset controller +register. + +Signed-off-by: Thomas Abraham +Signed-off-by: Girish K S +Signed-off-by: Kukjin +Signed-off-by: Jonghwan Choi +Signed-off-by: Greg Kroah-Hartman + +--- + arch/arm/mach-exynos/common.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +--- a/arch/arm/mach-exynos/common.c ++++ b/arch/arm/mach-exynos/common.c +@@ -299,6 +299,7 @@ void exynos4_restart(char mode, const ch + + void exynos5_restart(char mode, const char *cmd) + { ++ struct device_node *np; + u32 val; + void __iomem *addr; + +@@ -306,8 +307,9 @@ void exynos5_restart(char mode, const ch + val = 0x1; + addr = EXYNOS_SWRESET; + } else if (of_machine_is_compatible("samsung,exynos5440")) { +- val = (0x10 << 20) | (0x1 << 16); +- addr = EXYNOS5440_SWRESET; ++ np = of_find_compatible_node(NULL, NULL, "samsung,exynos5440-clock"); ++ addr = of_iomap(np, 0) + 0xcc; ++ val = (0xfff << 20) | (0x1 << 16); + } else { + pr_err("%s: cannot support non-DT\n", __func__); + return; diff --git a/queue-3.8/cpufreq-exynos-get-booting-freq-value-in-exynos_cpufreq_init.patch b/queue-3.8/cpufreq-exynos-get-booting-freq-value-in-exynos_cpufreq_init.patch new file mode 100644 index 00000000000..a83f05716e5 --- /dev/null +++ b/queue-3.8/cpufreq-exynos-get-booting-freq-value-in-exynos_cpufreq_init.patch @@ -0,0 +1,41 @@ +From 6e45eb12fd1c741d556bf264ee98853b5f3104e5 Mon Sep 17 00:00:00 2001 +From: Jonghwan Choi +Date: Fri, 18 Jan 2013 11:09:01 -0800 +Subject: cpufreq: exynos: Get booting freq value in exynos_cpufreq_init + +From: Jonghwan Choi + +commit 6e45eb12fd1c741d556bf264ee98853b5f3104e5 upstream. + +Boot_freq is for saving booting freq. But exynos_cpufreq_cpu_init +is called in hotplug. If boot_freq is existed in exynos_cpufreq_cpu_init, +boot_freq could be changed. + +Signed-off-by: Jonghwan Choi +Signed-off-by: Kukjin Kim +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/cpufreq/exynos-cpufreq.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/drivers/cpufreq/exynos-cpufreq.c ++++ b/drivers/cpufreq/exynos-cpufreq.c +@@ -222,8 +222,6 @@ static int exynos_cpufreq_cpu_init(struc + + cpufreq_frequency_table_get_attr(exynos_info->freq_table, policy->cpu); + +- locking_frequency = exynos_getspeed(0); +- + /* set the transition latency value */ + policy->cpuinfo.transition_latency = 100000; + +@@ -288,6 +286,8 @@ static int __init exynos_cpufreq_init(vo + goto err_vdd_arm; + } + ++ locking_frequency = exynos_getspeed(0); ++ + register_pm_notifier(&exynos_cpufreq_nb); + + if (cpufreq_register_driver(&exynos_driver)) { diff --git a/queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch b/queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch new file mode 100644 index 00000000000..8f7a2386d0f --- /dev/null +++ b/queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch @@ -0,0 +1,33 @@ +From 01e3a8feb40e54b962a20fa7eb595c5efef5e109 Mon Sep 17 00:00:00 2001 +From: Jani Nikula +Date: Tue, 22 Jan 2013 12:50:35 +0200 +Subject: drm/i915: add quirk to invert brightness on eMachines e725 + +From: Jani Nikula + +commit 01e3a8feb40e54b962a20fa7eb595c5efef5e109 upstream. + +Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=31522#c35 +[Note: There are more than one broken setups in the bug. This fixes one.] +Reported-by: Martins +Signed-off-by: Jani Nikula +Signed-off-by: Daniel Vetter +Cc: Josh Boyer +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/i915/intel_display.c | 3 +++ + 1 file changed, 3 insertions(+) + +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -8904,6 +8904,9 @@ static struct intel_quirk intel_quirks[] + + /* Acer/eMachines G725 */ + { 0x2a42, 0x1025, 0x0210, quirk_invert_brightness }, ++ ++ /* Acer/eMachines e725 */ ++ { 0x2a42, 0x1025, 0x0212, quirk_invert_brightness }, + }; + + static void intel_init_quirks(struct drm_device *dev) diff --git a/queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch b/queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch new file mode 100644 index 00000000000..9520390538b --- /dev/null +++ b/queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch @@ -0,0 +1,32 @@ +From 1ffff60320879830e469e26062c18f75236822ba Mon Sep 17 00:00:00 2001 +From: Jani Nikula +Date: Tue, 22 Jan 2013 12:50:34 +0200 +Subject: drm/i915: add quirk to invert brightness on eMachines G725 + +From: Jani Nikula + +commit 1ffff60320879830e469e26062c18f75236822ba upstream. + +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=59628 +Reported-by: Roland Gruber +Signed-off-by: Jani Nikula +Signed-off-by: Daniel Vetter +Cc: Josh Boyer +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/i915/intel_display.c | 3 +++ + 1 file changed, 3 insertions(+) + +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -8901,6 +8901,9 @@ static struct intel_quirk intel_quirks[] + + /* Acer Aspire 4736Z */ + { 0x2a42, 0x1025, 0x0260, quirk_invert_brightness }, ++ ++ /* Acer/eMachines G725 */ ++ { 0x2a42, 0x1025, 0x0210, quirk_invert_brightness }, + }; + + static void intel_init_quirks(struct drm_device *dev) diff --git a/queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch b/queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch new file mode 100644 index 00000000000..5f17a7bb5af --- /dev/null +++ b/queue-3.8/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch @@ -0,0 +1,31 @@ +From 5559ecadad5a73b27f863e92f4b4f369501dce6f Mon Sep 17 00:00:00 2001 +From: Jani Nikula +Date: Tue, 22 Jan 2013 12:50:36 +0200 +Subject: drm/i915: add quirk to invert brightness on Packard Bell NCL20 + +From: Jani Nikula + +commit 5559ecadad5a73b27f863e92f4b4f369501dce6f upstream. + +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44156 +Reported-by: Alan Zimmerman +Signed-off-by: Jani Nikula +Signed-off-by: Daniel Vetter +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/i915/intel_display.c | 3 +++ + 1 file changed, 3 insertions(+) + +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -8907,6 +8907,9 @@ static struct intel_quirk intel_quirks[] + + /* Acer/eMachines e725 */ + { 0x2a42, 0x1025, 0x0212, quirk_invert_brightness }, ++ ++ /* Acer/Packard Bell NCL20 */ ++ { 0x2a42, 0x1025, 0x034b, quirk_invert_brightness }, + }; + + static void intel_init_quirks(struct drm_device *dev) diff --git a/queue-3.8/drm-i915-fix-build-failure.patch b/queue-3.8/drm-i915-fix-build-failure.patch new file mode 100644 index 00000000000..b7b75743e1f --- /dev/null +++ b/queue-3.8/drm-i915-fix-build-failure.patch @@ -0,0 +1,37 @@ +From 27b7c63a7c509d797c151e95a641e1d94d94bbd9 Mon Sep 17 00:00:00 2001 +From: Lauri Kasanen +Date: Wed, 27 Mar 2013 15:04:55 +0200 +Subject: drm/i915: Fix build failure + +From: Lauri Kasanen + +commit 27b7c63a7c509d797c151e95a641e1d94d94bbd9 upstream. + +ERROR: "__build_bug_on_failed" [drivers/gpu/drm/i915/i915.ko] undefined! + +Originally reported at http://www.gossamer-threads.com/lists/linux/kernel/1631803 +FDO bug #62775 + +This needs to be backported to both 3.7 and 3.8 stable trees. Doesn't apply straight, +but it's a quick change. + +Signed-off-by: Lauri Kasanen +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=62775 +Signed-off-by: Daniel Vetter +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/i915/i915_gem_execbuffer.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c ++++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c +@@ -43,7 +43,7 @@ eb_create(int size) + { + struct eb_objects *eb; + int count = PAGE_SIZE / sizeof(struct hlist_head) / 2; +- BUILD_BUG_ON(!is_power_of_2(PAGE_SIZE / sizeof(struct hlist_head))); ++ BUILD_BUG_ON_NOT_POWER_OF_2(PAGE_SIZE / sizeof(struct hlist_head)); + while (count > size) + count >>= 1; + eb = kzalloc(count*sizeof(struct hlist_head) + diff --git a/queue-3.8/msi-wmi-fix-memory-leak.patch b/queue-3.8/msi-wmi-fix-memory-leak.patch new file mode 100644 index 00000000000..407da64ff87 --- /dev/null +++ b/queue-3.8/msi-wmi-fix-memory-leak.patch @@ -0,0 +1,44 @@ +From 51c94491c82c3d9029f6e87a1a153db321d88e35 Mon Sep 17 00:00:00 2001 +From: Maxim Mikityanskiy +Date: Sat, 15 Dec 2012 19:31:31 +0200 +Subject: msi-wmi: Fix memory leak + +From: Maxim Mikityanskiy + +commit 51c94491c82c3d9029f6e87a1a153db321d88e35 upstream. + +Fix memory leak - don't forget to kfree ACPI object when returning from +msi_wmi_notify() after suppressing key event. + +Signed-off-by: Maxim Mikityanskiy +Acked-by: Anisse Astier +Signed-off-by: Lee, Chun-Yi +Signed-off-by: Matthew Garrett +Signed-off-by: Jonghwan Choi +Signed-off-by: Greg Kroah-Hartman + + +--- + drivers/platform/x86/msi-wmi.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +--- a/drivers/platform/x86/msi-wmi.c ++++ b/drivers/platform/x86/msi-wmi.c +@@ -176,7 +176,7 @@ static void msi_wmi_notify(u32 value, vo + pr_debug("Suppressed key event 0x%X - " + "Last press was %lld us ago\n", + key->code, ktime_to_us(diff)); +- return; ++ goto msi_wmi_notify_exit; + } + last_pressed[key->code - SCANCODE_BASE] = cur; + +@@ -195,6 +195,8 @@ static void msi_wmi_notify(u32 value, vo + pr_info("Unknown key pressed - %x\n", eventcode); + } else + pr_info("Unknown event received\n"); ++ ++msi_wmi_notify_exit: + kfree(response.pointer); + } + diff --git a/queue-3.8/revert-pci-acpi-request-_osc-control-before-scanning-pci-root-bus.patch b/queue-3.8/revert-pci-acpi-request-_osc-control-before-scanning-pci-root-bus.patch new file mode 100644 index 00000000000..191c7c2e3fb --- /dev/null +++ b/queue-3.8/revert-pci-acpi-request-_osc-control-before-scanning-pci-root-bus.patch @@ -0,0 +1,200 @@ +From b8178f130e25c1bdac1c33e0996f1ff6e20ec08e Mon Sep 17 00:00:00 2001 +From: Bjorn Helgaas +Date: Mon, 1 Apr 2013 15:47:39 -0600 +Subject: Revert "PCI/ACPI: Request _OSC control before scanning PCI root bus" + +From: Bjorn Helgaas + +commit b8178f130e25c1bdac1c33e0996f1ff6e20ec08e upstream. + +This reverts commit 8c33f51df406e1a1f7fa4e9b244845b7ebd61fa6. + +Conflicts: + drivers/acpi/pci_root.c + +This commit broke some pre-1.1 PCIe devices by leaving them with +ASPM enabled. Previously, we had disabled ASPM on these devices +because many of them don't implement it correctly (per 149e1637). + +Requesting _OSC control early means that aspm_disabled may be set +before we scan the PCI bus and configure link ASPM state. But the +ASPM configuration currently skips the check for pre-PCIe 1.1 devices +when aspm_disabled is set, like this: + + acpi_pci_root_add + acpi_pci_osc_support + if (flags != base_flags) + pcie_no_aspm + aspm_disabled = 1 + pci_acpi_scan_root + ... + pcie_aspm_init_link_state + pcie_aspm_sanity_check + if (!aspm_disabled) + /* check for pre-PCIe 1.1 device */ + +Therefore, setting aspm_disabled early means that we leave ASPM enabled +on these pre-PCIe 1.1 devices, which is a regression for some devices. + +The best fix would be to clean up the ASPM init so we can evaluate +_OSC before scanning the bug (that way boot-time and hot-add discovery +will work the same), but that requires significant rework. + +For now, we'll just revert the _OSC change as the lowest-risk fix. + +Reference: https://bugzilla.kernel.org/show_bug.cgi?id=55211 +Signed-off-by: Bjorn Helgaas +Acked-by: Rafael J. Wysocki +Acked-by: Yinghai Lu +Signed-off-by: Greg Kroah-Hartman + + +--- + drivers/acpi/pci_root.c | 121 +++++++++++++++++++++++------------------------- + 1 file changed, 59 insertions(+), 62 deletions(-) + +--- a/drivers/acpi/pci_root.c ++++ b/drivers/acpi/pci_root.c +@@ -454,7 +454,6 @@ static int acpi_pci_root_add(struct acpi + acpi_handle handle; + struct acpi_device *child; + u32 flags, base_flags; +- bool is_osc_granted = false; + + root = kzalloc(sizeof(struct acpi_pci_root), GFP_KERNEL); + if (!root) +@@ -525,60 +524,6 @@ static int acpi_pci_root_add(struct acpi + flags = base_flags = OSC_PCI_SEGMENT_GROUPS_SUPPORT; + acpi_pci_osc_support(root, flags); + +- /* Indicate support for various _OSC capabilities. */ +- if (pci_ext_cfg_avail()) +- flags |= OSC_EXT_PCI_CONFIG_SUPPORT; +- if (pcie_aspm_support_enabled()) { +- flags |= OSC_ACTIVE_STATE_PWR_SUPPORT | +- OSC_CLOCK_PWR_CAPABILITY_SUPPORT; +- } +- if (pci_msi_enabled()) +- flags |= OSC_MSI_SUPPORT; +- if (flags != base_flags) { +- status = acpi_pci_osc_support(root, flags); +- if (ACPI_FAILURE(status)) { +- dev_info(&device->dev, "ACPI _OSC support " +- "notification failed, disabling PCIe ASPM\n"); +- pcie_no_aspm(); +- flags = base_flags; +- } +- } +- if (!pcie_ports_disabled +- && (flags & ACPI_PCIE_REQ_SUPPORT) == ACPI_PCIE_REQ_SUPPORT) { +- flags = OSC_PCI_EXPRESS_CAP_STRUCTURE_CONTROL +- | OSC_PCI_EXPRESS_NATIVE_HP_CONTROL +- | OSC_PCI_EXPRESS_PME_CONTROL; +- +- if (pci_aer_available()) { +- if (aer_acpi_firmware_first()) +- dev_dbg(&device->dev, +- "PCIe errors handled by BIOS.\n"); +- else +- flags |= OSC_PCI_EXPRESS_AER_CONTROL; +- } +- +- dev_info(&device->dev, +- "Requesting ACPI _OSC control (0x%02x)\n", flags); +- +- status = acpi_pci_osc_control_set(device->handle, &flags, +- OSC_PCI_EXPRESS_CAP_STRUCTURE_CONTROL); +- if (ACPI_SUCCESS(status)) { +- is_osc_granted = true; +- dev_info(&device->dev, +- "ACPI _OSC control (0x%02x) granted\n", flags); +- } else { +- is_osc_granted = false; +- dev_info(&device->dev, +- "ACPI _OSC request failed (%s), " +- "returned control mask: 0x%02x\n", +- acpi_format_exception(status), flags); +- } +- } else { +- dev_info(&device->dev, +- "Unable to request _OSC control " +- "(_OSC support mask: 0x%02x)\n", flags); +- } +- + /* + * TBD: Need PCI interface for enumeration/configuration of roots. + */ +@@ -618,14 +563,66 @@ static int acpi_pci_root_add(struct acpi + list_for_each_entry(child, &device->children, node) + acpi_pci_bridge_scan(child); + +- /* ASPM setting */ +- if (is_osc_granted) { +- if (acpi_gbl_FADT.boot_flags & ACPI_FADT_NO_ASPM) +- pcie_clear_aspm(root->bus); ++ /* Indicate support for various _OSC capabilities. */ ++ if (pci_ext_cfg_avail()) ++ flags |= OSC_EXT_PCI_CONFIG_SUPPORT; ++ if (pcie_aspm_support_enabled()) ++ flags |= OSC_ACTIVE_STATE_PWR_SUPPORT | ++ OSC_CLOCK_PWR_CAPABILITY_SUPPORT; ++ if (pci_msi_enabled()) ++ flags |= OSC_MSI_SUPPORT; ++ if (flags != base_flags) { ++ status = acpi_pci_osc_support(root, flags); ++ if (ACPI_FAILURE(status)) { ++ dev_info(root->bus->bridge, "ACPI _OSC support " ++ "notification failed, disabling PCIe ASPM\n"); ++ pcie_no_aspm(); ++ flags = base_flags; ++ } ++ } ++ ++ if (!pcie_ports_disabled ++ && (flags & ACPI_PCIE_REQ_SUPPORT) == ACPI_PCIE_REQ_SUPPORT) { ++ flags = OSC_PCI_EXPRESS_CAP_STRUCTURE_CONTROL ++ | OSC_PCI_EXPRESS_NATIVE_HP_CONTROL ++ | OSC_PCI_EXPRESS_PME_CONTROL; ++ ++ if (pci_aer_available()) { ++ if (aer_acpi_firmware_first()) ++ dev_dbg(root->bus->bridge, ++ "PCIe errors handled by BIOS.\n"); ++ else ++ flags |= OSC_PCI_EXPRESS_AER_CONTROL; ++ } ++ ++ dev_info(root->bus->bridge, ++ "Requesting ACPI _OSC control (0x%02x)\n", flags); ++ ++ status = acpi_pci_osc_control_set(device->handle, &flags, ++ OSC_PCI_EXPRESS_CAP_STRUCTURE_CONTROL); ++ if (ACPI_SUCCESS(status)) { ++ dev_info(root->bus->bridge, ++ "ACPI _OSC control (0x%02x) granted\n", flags); ++ if (acpi_gbl_FADT.boot_flags & ACPI_FADT_NO_ASPM) { ++ /* ++ * We have ASPM control, but the FADT indicates ++ * that it's unsupported. Clear it. ++ */ ++ pcie_clear_aspm(root->bus); ++ } ++ } else { ++ dev_info(root->bus->bridge, ++ "ACPI _OSC request failed (%s), " ++ "returned control mask: 0x%02x\n", ++ acpi_format_exception(status), flags); ++ pr_info("ACPI _OSC control for PCIe not granted, " ++ "disabling ASPM\n"); ++ pcie_no_aspm(); ++ } + } else { +- pr_info("ACPI _OSC control for PCIe not granted, " +- "disabling ASPM\n"); +- pcie_no_aspm(); ++ dev_info(root->bus->bridge, ++ "Unable to request _OSC control " ++ "(_OSC support mask: 0x%02x)\n", flags); + } + + pci_acpi_add_bus_pm_notifier(device, root->bus); diff --git a/queue-3.8/series b/queue-3.8/series index d26afae0f05..f76e4546712 100644 --- a/queue-3.8/series +++ b/queue-3.8/series @@ -46,3 +46,13 @@ block-avoid-using-uninitialized-value-in-from-queue_var_store.patch sunrpc-remove-extra-xprt_put.patch nfsv4-fix-a-memory-leak-in-nfs4_discover_server_trunking.patch nfsv4-4.1-fix-bugs-in-nfs4_walk_client_list.patch +drm-i915-fix-build-failure.patch +x86-fix-rebuild-with-efi_stub-enabled.patch +revert-pci-acpi-request-_osc-control-before-scanning-pci-root-bus.patch +thermal-return-an-error-on-failure-to-register-thermal-class.patch +msi-wmi-fix-memory-leak.patch +cpufreq-exynos-get-booting-freq-value-in-exynos_cpufreq_init.patch +arm-exynos-fix-crash-on-soft-reset-on-exynos5440.patch +drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch +drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch +drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch diff --git a/queue-3.8/thermal-return-an-error-on-failure-to-register-thermal-class.patch b/queue-3.8/thermal-return-an-error-on-failure-to-register-thermal-class.patch new file mode 100644 index 00000000000..b1a332b138d --- /dev/null +++ b/queue-3.8/thermal-return-an-error-on-failure-to-register-thermal-class.patch @@ -0,0 +1,36 @@ +From da28d966f6aa942ae836d09729f76a1647932309 Mon Sep 17 00:00:00 2001 +From: Richard Guy Briggs +Date: Tue, 12 Feb 2013 19:39:44 +0000 +Subject: thermal: return an error on failure to register thermal class + +From: Richard Guy Briggs + +commit da28d966f6aa942ae836d09729f76a1647932309 upstream. + +The return code from the registration of the thermal class is used to +unallocate resources, but this failure isn't passed back to the caller of +thermal_init. Return this failure back to the caller. + +This bug was introduced in changeset 4cb18728 which overwrote the return code +when the variable was re-used to catch the return code of the registration of +the genetlink thermal socket family. + +Signed-off-by: Richard Guy Briggs +Signed-off-by: Zhang Rui +Cc: Jonghwan Choi +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/thermal/thermal_sys.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/thermal/thermal_sys.c ++++ b/drivers/thermal/thermal_sys.c +@@ -1807,6 +1807,7 @@ static int __init thermal_init(void) + idr_destroy(&thermal_cdev_idr); + mutex_destroy(&thermal_idr_lock); + mutex_destroy(&thermal_list_lock); ++ return result; + } + result = genetlink_init(); + return result; diff --git a/queue-3.8/x86-fix-rebuild-with-efi_stub-enabled.patch b/queue-3.8/x86-fix-rebuild-with-efi_stub-enabled.patch new file mode 100644 index 00000000000..eecd6734d3d --- /dev/null +++ b/queue-3.8/x86-fix-rebuild-with-efi_stub-enabled.patch @@ -0,0 +1,63 @@ +From 918708245e92941df16a634dc201b407d12bcd91 Mon Sep 17 00:00:00 2001 +From: Jan Beulich +Date: Wed, 3 Apr 2013 15:47:33 +0100 +Subject: x86: Fix rebuild with EFI_STUB enabled + +From: Jan Beulich + +commit 918708245e92941df16a634dc201b407d12bcd91 upstream. + +eboot.o and efi_stub_$(BITS).o didn't get added to "targets", and hence +their .cmd files don't get included by the build machinery, leading to +the files always getting rebuilt. + +Rather than adding the two files individually, take the opportunity and +add $(VMLINUX_OBJS) to "targets" instead, thus allowing the assignment +at the top of the file to be shrunk quite a bit. + +At the same time, remove a pointless flags override line - the variable +assigned to was misspelled anyway, and the options added are +meaningless for assembly sources. + +[ hpa: the patch is not minimal, but I am taking it for -urgent anyway + since the excess impact of the patch seems to be small enough. ] + +Signed-off-by: Jan Beulich +Link: http://lkml.kernel.org/r/515C5D2502000078000CA6AD@nat28.tlf.novell.com +Cc: Matthew Garrett +Cc: Matt Fleming +Signed-off-by: H. Peter Anvin +Signed-off-by: Greg Kroah-Hartman + +--- + arch/x86/boot/compressed/Makefile | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) + +--- a/arch/x86/boot/compressed/Makefile ++++ b/arch/x86/boot/compressed/Makefile +@@ -4,7 +4,7 @@ + # create a compressed vmlinux image from the original vmlinux + # + +-targets := vmlinux.lds vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 vmlinux.bin.lzma vmlinux.bin.xz vmlinux.bin.lzo head_$(BITS).o misc.o string.o cmdline.o early_serial_console.o piggy.o ++targets := vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 vmlinux.bin.lzma vmlinux.bin.xz vmlinux.bin.lzo + + KBUILD_CFLAGS := -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O2 + KBUILD_CFLAGS += -fno-strict-aliasing -fPIC +@@ -29,7 +29,6 @@ VMLINUX_OBJS = $(obj)/vmlinux.lds $(obj) + $(obj)/piggy.o + + $(obj)/eboot.o: KBUILD_CFLAGS += -fshort-wchar -mno-red-zone +-$(obj)/efi_stub_$(BITS).o: KBUILD_CLFAGS += -fshort-wchar -mno-red-zone + + ifeq ($(CONFIG_EFI_STUB), y) + VMLINUX_OBJS += $(obj)/eboot.o $(obj)/efi_stub_$(BITS).o +@@ -43,7 +42,7 @@ OBJCOPYFLAGS_vmlinux.bin := -R .comment + $(obj)/vmlinux.bin: vmlinux FORCE + $(call if_changed,objcopy) + +-targets += vmlinux.bin.all vmlinux.relocs ++targets += $(patsubst $(obj)/%,%,$(VMLINUX_OBJS)) vmlinux.bin.all vmlinux.relocs + + CMD_RELOCS = arch/x86/tools/relocs + quiet_cmd_relocs = RELOCS $@ -- 2.47.3