Tomasz Nowicki | 22 Jul 11:20 2014

[PATCH v5 0/3] APEI: Make APEI architecture independent.

APEI is currently implemented so that it depends on x86 hardware.
The primary dependency is that GHES uses the x86 NMI for hardware
error notification and MCE for memory error handling. These patches
remove that dependency.

Other APEI features such as error reporting via external IRQ, error
serialization, or error injection, do not require changes to use them
on non-x86 architectures.

The following patch set eliminates the APEI Kconfig x86 dependency
by making these changes:
- treat NMI notification as GHES architecture - HAVE_ACPI_APEI_NMI
- group and wrap around #ifdef CONFIG_HAVE_ACPI_APEI_NMI code which
  is used only for NMI path
- identify architectural boxes and abstract it accordingly (tlb flush and MCE)
- rework ioremap for both IRQ and NMI context

NMI code is kept in ghes.c file since NMI and IRQ context are tightly coupled.

Note, these patches introduce no functional changes for x86. The NMI notification
feature is hard selected for x86. Architectures that want to use this
feature should also provide NMI code infrastructure.

- address Borislav's comment
- abstract arch-specific calls instead of wrapping into the #ifdef

- address Robert's comment
- disable ACPI_APEI_NMI selection so that it is hard selected by arch Kconfig
(Continue reading)

Anders Kaseorg | 22 Jul 06:32 2014

PROBLEM: Native backlight regressed from logarithmic to linear scale

[1.] One line summary of the problem:    

Native backlight regressed from logarithmic to linear scale

[2.] Full description of the problem/report:

With the new default of video.use_native_backlight=0 (commit 
v3.16-rc1~30^2~2^3), my Thinkpad T510 backlight has become very difficult 
to control near the low end of the scale.  The lowest setting now turns 
the backlight completely off, but the second-lowest setting is too bright.  
Meanwhile, the difference between the highest several settings is nearly 

This happened because /sys/class/backlight/acpi_video0/brightness (which 
has now disappeared) used a different scale than 
/sys/class/intel_backlight/brightness; the relationship between 
acpi_video0 and intel_backlight was not linear.  I measured the exact 
relationship as follows:

acpi    intel
0       52
1       87
2       139
3       174
4       226
5       261
6       313
7       435
8       591
9       800
(Continue reading)

Rafael J. Wysocki | 19 Jul 22:36 2014

[PATCH 0/2] ACPI / PM: Make ACPI-based PCI wakeup work for the "freeze" sleep state


As per the subject, this is to make ACPI-based PCI wakeup (such as WoL on some
systems among other things) work with the "freeze" sleep state.  For this
purpose ACPI wakeup GPEs need to be enabled for wakeup devices before
freeze_enter() is called and it is best to do that when configuring devices
for wakeup.

[1/2] Always enable wakeup GPEs when configuring devices for wakeup
[2/2] Rename one static function to avoid possible future confusion



I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo <at>
More majordomo info at

Hans de Goede | 18 Jul 14:32 2014

[PATCH v2] acpi-video: Fix backlight taking 2 steps on a brightness keypress

Hi All,

Here is v2 of my cleaned up version of Linus' patch to fix this. New this
version is that the module option is left as a boolean, and the keypresses
handling simply always gets delayed 100 ms.

Bjørn, can you please re-test to make sure I've not accidentally broken
anything ? Note this still applies on top of the revert.


To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo <at>
More majordomo info at

Hanjun Guo | 18 Jul 12:02 2014

[PATCH v3 0/3] Clean up ACPI core to prepare for running ACPI on ARM64

This patch set have no function change for x86 and ia64 and
just do some clean up to prepare for running ACPI on ARM64.

This patch set is splited out from the patch set [1]
"[PATCH v4 00/13] Enable ACPI on ARM64 in Kconfig" and hope it
can be merged first before ARM64 ACPI core patches.


update from v2:
Don not select ACPI_LEGACY_TABLES_LOOKUP on IA64 which
is catched by Peter.

update from v1:
1. Drop "Make EC debugfs depend on X86 || IA64 in Kconfig";
   suggested by Rafael;
3. Rename ARCH_HAS_ACPI_PDC to ARCH_MIGHT_HAVE_ACPI_PDC suggested by Rafael;
4. Remove the help for ARCH_MIGHT_HAVE_ACPI_PDC because it can't be selected;
5. Rename acpi_arch_is_smp() to acpi_has_cpu_in_madt() to be more
   explicit and easy understanding.

Graeme Gregory (2):
  ACPI: ARM64 does not have a BIOS add config for BIOS table scan.
  ACPI: Don't use acpi_lapic in ACPI core code

Hanjun Guo (1):
  ACPI / processor: Introduce ARCH_HAS_ACPI_PDC

 arch/ia64/Kconfig             |    1 +
(Continue reading)

Lan Tianyu | 18 Jul 07:55 2014

[PATCH] ACPI/NVS: Not save NVS region for new machines to accelerate S3

NVS region is saved and restored unconditionally for machines without
nvs_nosave quirk during S3. Tested some new machines and the operation
is not necessary. Saving NVS region also affects S2RAM speed. The time of
NVS saving and restoring depends on the size of NVS region and it consumes
7~10ms normally.

This patch is to make machines produced from 2012 to now not saving NVS region
to accelerate S3.

Signed-off-by: Lan Tianyu <tianyu.lan <at>>
 drivers/acpi/sleep.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c
index b3e3cc7..896d8be 100644
--- a/drivers/acpi/sleep.c
+++ b/drivers/acpi/sleep.c
 <at>  <at>  -322,7 +322,12  <at>  <at>  static struct dmi_system_id acpisleep_dmi_table[] __initdata = {

 static void acpi_sleep_dmi_check(void)
+	int year;
+	if (dmi_get_date(DMI_BIOS_DATE, &year, NULL, NULL) && year >= 2012)
+		acpi_nvs_nosave_s3();

(Continue reading)

Hans de Goede | 16 Jul 13:28 2014

[PATCH resend] acpi-video: Add use_native_backlight quirk for HP ProBook 4540s

Hi Rafael,

I see that you've been adding some more use_native_backlight quirks here:

It seems this one has fallen through the cracks, hence this resend.


To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo <at>
More majordomo info at

Hans de Goede | 16 Jul 13:25 2014

[PATCH] acpi-video: Fix backlight taking 2 steps on a brightness key press

Hi All,

Here is my cleaned-up version of Linus' patch to fix the 2 steps on a
brightness key press problem.

Changes compared to Linus' version:
-Move the global variables to inside struct acpi_video_device
-Rebase on top of Rafael's linux-pm linux-next branch (so on top of the
 revert of changing the brightness_switch_enabled default)

I've tested this on a laptop affected by the 2 steps problem and I can confirm
that it fixes the 2 steps issue under normal usage. I managed to trigger the
race by generating a heavy io-load, as exptected hitting the race has no
unwanted side-effects other then taking 2 steps instead of one.

Bjørn can you test this patch on your system and confirm that it does not
break things for you please ? Note that in order to apply it you first need
to do: "git revert 886129a8eebebec", as the revert has not yet reached
Linus' tree AFAIK.


To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo <at>
More majordomo info at

Chen, Gong | 16 Jul 04:34 2014

Some RAS bug fix patches

[PATCH 1/3] APEI, GHES: Cleanup unnecessary function for lock-less
[RFC PATCH 2/3] x86, MCE: Avoid potential deadlock in MCE context
[PATCH 3/3] RAS, HWPOISON: Fix wrong error recovery status

The patch 1/3 & 3/3 are minor fixes which are irrelevant with patch
2/3. I send them together just to avoid fragments.

The patch 2/3 is a RFC patch depending on the following thread:

Comments and suggestions are welcome.
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo <at>
More majordomo info at

Rafael J. Wysocki | 14 Jul 22:39 2014

[PATCH 0/3] ACPI: Fix problem with GPE storm from buttons

Hi All,

This patch series attempts to fix a problem with GPE storms from
buttons described in the changelog of patch [3/3].

Patches [1/3] and [2/3] are ACPICA material, patch [3/3] is for Linux/ACPI.


To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo <at>
More majordomo info at

Rafael J. Wysocki | 14 Jul 22:36 2014

[PATCH] ACPI / hotplug: Simplify acpi_set_hp_context()

From: Rafael J. Wysocki <rafael.j.wysocki <at>>

Since all of the acpi_set_hp_context() callers pass at least one NULL
function pointer and one caller passes NULL function pointers only
to it, drop function pointer arguments from acpi_set_hp_context()
and make the callers initialize the function pointers in struct
acpi_hotplug_context by themselves before passing it to

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki <at>>
 drivers/acpi/scan.c                |    4 +++-
 drivers/pci/hotplug/acpiphp_glue.c |    7 ++++---
 include/acpi/acpi_bus.h            |    8 +-------
 3 files changed, 8 insertions(+), 11 deletions(-)

Index: linux-pm/include/acpi/acpi_bus.h
--- linux-pm.orig/include/acpi/acpi_bus.h
+++ linux-pm/include/acpi/acpi_bus.h
 <at>  <at>  -372,15 +372,9  <at>  <at>  static inline void acpi_set_device_statu

 static inline void acpi_set_hp_context(struct acpi_device *adev,
-				       struct acpi_hotplug_context *hp,
-				       int (*notify)(struct acpi_device *, u32),
-				       void (*uevent)(struct acpi_device *, u32),
-				       void (*fixup)(struct acpi_device *))
+				       struct acpi_hotplug_context *hp)
(Continue reading)