Lv Zheng | 19 Dec 06:59 2014
Picon

[RFC PATCH 0/6] ACPI/EC: Enhance EC driver state machine

This patchset fixes several small issues in current EC driver.
After applying this patchset, we can have all EC IRQ handling code
collected in advance_transaction() which is the core function of the EC
driver state machine.

These fixes are required by the EC GPE raw handler mode switch but not
dependent on the GPE raw handler mode. So I collect them to form this
small patchset.

Lv Zheng (6):
  ACPI/EC: Cleanup transaction wakeup code
  ACPI/EC: Add reference counting for query handlers
  ACPI/EC: Fix returning values in acpi_ec_sync_query()
  ACPI/EC: Fix a code path that global lock is not held
  ACPI/EC: Fix issues related to the SCI_EVT handling
  ACPI/EC: Cleanup QR_EC related code

 drivers/acpi/ec.c       |  183 +++++++++++++++++++++++------------------------
 drivers/acpi/internal.h |    1 +
 2 files changed, 92 insertions(+), 92 deletions(-)

--

-- 
1.7.10

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

(Continue reading)

Dmitry Tunin | 18 Dec 13:16 2014
Picon

[PATCH v3 1/2] acpi: Add "acpi_osi=" for ASUS X200MA to enable, brightness keys

Add "acpi_osi=" quirk for ASUS X200MA
More information can be found in UX302LA bugreport
https://bugzilla.kernel.org/show_bug.cgi?id=70241

X200MA is affected by th e same bug and the solution has been tested

I reported it to launchpad too
https://bugs.launchpad.net/ubuntu/bug/1400068

Cc: stable <at> vger.kernel.org
Signed-off-by: Dmitry Tunin <hanipouspilot <at> gmail.com>

---
  drivers/acpi/blacklist.c | 20 ++++++++++++++++++++
  1 file changed, 20 insertions(+)

diff --git a/drivers/acpi/blacklist.c b/drivers/acpi/blacklist.c
index 7556e7c..f78ed08 100644
--- a/drivers/acpi/blacklist.c
+++ b/drivers/acpi/blacklist.c
 <at>  <at>  -162,6 +162,17  <at>  <at>  static int __init dmi_disable_osi_win8(const struct dmi_system_id *d)
  	acpi_osi_setup("!Windows 2012");
  	return 0;
  }
+/*
+ * Some ASUS models firmware declares 16 devices instead of 8
+ * 'acpi_osi=' kernel parameter fixes it
+ * Without this parameters brightness keys Fn+F5 and F6 do not work
+ */
+static int __init dmi_disable_osi_all(const struct dmi_system_id *d)
(Continue reading)

Ken Xue | 18 Dec 09:50 2014
Picon

[PATCH 2/3 V3] acpi:apd:add AMD ACPI2Platform device support

This is a new feature to interpret AMD specific ACPI device to
platform device such as I2C, UART found on AMD CZ and later
chipsets. It based on ACPI SOC.

Signed-off-by: Ken Xue <Ken.Xue <at> amd.com>
---
 arch/x86/Kconfig        | 11 ++++++++
 drivers/acpi/Makefile   |  2 +-
 drivers/acpi/acpi_apd.c | 71 +++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/acpi/internal.h |  2 ++
 drivers/acpi/scan.c     |  1 +
 5 files changed, 86 insertions(+), 1 deletion(-)
 create mode 100644 drivers/acpi/acpi_apd.c

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index bea3a015..d189864 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
 <at>  <at>  -499,6 +499,17  <at>  <at>  config X86_INTEL_LPSS
 	  things like clock tree (common clock framework) and pincontrol
 	  which are needed by the LPSS peripheral drivers.

+config X86_AMD_PLATFORM_DEVICE
+	bool "AMD ACPI2Platform devices support"
+	depends on ACPI
+	select COMMON_CLK
+	select PINCTRL
+	---help---
+	  Select to interpret AMD specific ACPI device to platform device
+	  such as I2C, UART found on AMD Carrizo and later chipsets. Selecting
(Continue reading)

Ken Xue | 18 Dec 09:44 2014
Picon

[PATCH 1/3 V3] acpi:soc: merge common codes for creating platform device


This patch is supposed to deliver some common codes for AMD APD and
intel LPSS. It can help to convert some specific acpi devices to be
platform devices.

Signed-off-by: Ken Xue <Ken.Xue <at> amd.com>
---
 drivers/acpi/Makefile   |   2 +-
 drivers/acpi/acpi_soc.c | 228 ++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/acpi/acpi_soc.h | 104 ++++++++++++++++++++++
 3 files changed, 333 insertions(+), 1 deletion(-)
 create mode 100644 drivers/acpi/acpi_soc.c
 create mode 100644 drivers/acpi/acpi_soc.h

diff --git a/drivers/acpi/Makefile b/drivers/acpi/Makefile
index f74317c..66c7457 100644
--- a/drivers/acpi/Makefile
+++ b/drivers/acpi/Makefile
 <at>  <at>  -40,7 +40,7  <at>  <at>  acpi-$(CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC) += processor_pdc.o
 acpi-y				+= ec.o
 acpi-$(CONFIG_ACPI_DOCK)	+= dock.o
 acpi-y				+= pci_root.o pci_link.o pci_irq.o
-acpi-y				+= acpi_lpss.o
+acpi-y				+= acpi_soc.o acpi_lpss.o
 acpi-y				+= acpi_platform.o
 acpi-y				+= acpi_pnp.o
 acpi-y				+= int340x_thermal.o
diff --git a/drivers/acpi/acpi_soc.c b/drivers/acpi/acpi_soc.c
new file mode 100644
index 0000000..2abbac9
(Continue reading)

Len Brown | 16 Dec 07:52 2014

cpuidle: remove CPUIDLE_FLAG_TIME_INVALID

Daniel Lezcano suggested removing CPUIDLE_FLAG_TIME_INVALID because
no states enable interrupts, and so cpuidle can always measure valid
residency time.  That turns out not to be un-true since x86 HALT is
invoked with interrupts enabled.  But looking at the code more closely,
Daniel's suggestion of simply removing the CPUIDLE_FLAG_TIME_INVALID
is actually an improvement over the workaround that we are currently using.

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo <at> vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Al Stone | 16 Dec 03:18 2014

[RFC] ACPI on arm64 TODO List

Back in September 2014, a meeting was held at Linaro Connect where we
discussed what issues remained before the arm64 ACPI core patches could
be merged into the kernel, creating the TODO list below.  I should have
published this list sooner; I got focused on trying to resolve some of
the issues instead.

We have made some progress on all of these items.  But, I want to make
sure we haven't missed something.  Since this list was compiled by only
the people in the room at Connect, it is probable we have.  I, for one,
do not yet claim omniscience.

So, I want to ask the ARM and ACPI communities:

  -- Is this list correct?

  -- Is this list complete?

Below is what we currently know about; very brief notes on status are
included.  The TL;DR versions of the TODO list and the current status
can be found at:

   https://wiki.linaro.org/LEG/Engineering/Kernel/ACPI/CoreUpstreamNotes

and I'll do my best to kept that up to date.

Thanks.  Any and all feedback is greatly appreciated.

TODO List for ACPI on arm64:
============================
1. Define how Aarch64 OS identifies itself to firmware.
(Continue reading)

Lv Zheng | 15 Dec 01:47 2014
Picon

[PATCH] ACPI/EC: Fix an issue that ec_remove_handlers() is invoked unexpectedly.

The ec_remove_handlers() is invoked without checking
EC_FLAGS_HANDLERS_INSTALLED, this patch enhances this check to avoid issues
that acpi_disable_gpe() is invoked unexpectedly to reduce the GPE runtime
count. This may happen when the EC handler installation failed on some
platforms.

Reported-by: Venkat Raghavulu <venkat.raghavulu <at> intel.com>
Signed-off-by: Lv Zheng <lv.zheng <at> intel.com>
---
 drivers/acpi/ec.c |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
index 5f9b74b..1b5853f 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
 <at>  <at>  -844,6 +844,8  <at>  <at>  static int ec_install_handlers(struct acpi_ec *ec)

 static void ec_remove_handlers(struct acpi_ec *ec)
 {
+	if (!test_bit(EC_FLAGS_HANDLERS_INSTALLED, &ec->flags))
+		return;
 	acpi_disable_gpe(NULL, ec->gpe);
 	if (ACPI_FAILURE(acpi_remove_address_space_handler(ec->handle,
 				ACPI_ADR_SPACE_EC, &acpi_ec_space_handler)))
--

-- 
1.7.10

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
(Continue reading)

Octavian Purdila | 11 Dec 17:32 2014
Picon

[RFC PATCH] mfd: dln2: add support for ACPI

This patch adds support to load a custom ACPI table that describes
devices connected via the DLN2 USB to I2C/SPI/GPIO bridge.

The ACPI table is loaded at runtime as firmware with the name
dln2.aml, it looks for an ACPI device entry with _HID set to
"DLN20000" and makes it the ACPI companion for DLN2 USB sub-drivers.

It is sort of a hack due to the "../acpi/internal.h" and
"../usb/core/usb.h" includes and perhaps something more generic would
be more appropriate. Any suggestions to the right direction are kindly
appreciated.

Signed-off-by: Octavian Purdila <octavian.purdila <at> intel.com>
---
 Documentation/acpi/dln2-acpi.txt |  48 ++++++++++++++++++
 drivers/mfd/Kconfig              |  11 +++++
 drivers/mfd/Makefile             |   1 +
 drivers/mfd/dln2-acpi.c          | 103 +++++++++++++++++++++++++++++++++++++++
 drivers/mfd/dln2.c               |   6 +--
 drivers/mfd/dln2.h               |   9 ++++
 6 files changed, 173 insertions(+), 5 deletions(-)
 create mode 100644 Documentation/acpi/dln2-acpi.txt
 create mode 100644 drivers/mfd/dln2-acpi.c
 create mode 100644 drivers/mfd/dln2.h

diff --git a/Documentation/acpi/dln2-acpi.txt b/Documentation/acpi/dln2-acpi.txt
new file mode 100644
index 0000000..c099241
--- /dev/null
+++ b/Documentation/acpi/dln2-acpi.txt
(Continue reading)

Ken Xue | 11 Dec 04:05 2014
Picon

[PATCH 2/3 V2] acpi:apd:add AMD ACPI2Platform device support

This is a new feature to interpret AMD specific ACPI device to
platform device such as I2C, UART found on AMD CZ and later
chipsets. It based on acpi soc.

Signed-off-by: Ken Xue <Ken.Xue <at> amd.com>
---
 arch/x86/Kconfig        | 11 ++++++++
 drivers/acpi/Makefile   |  2 +-
 drivers/acpi/acpi_apd.c | 71 +++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/acpi/internal.h |  2 ++
 drivers/acpi/scan.c     |  1 +
 5 files changed, 86 insertions(+), 1 deletion(-)
 create mode 100644 drivers/acpi/acpi_apd.c

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index ded8a67..030f508 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
 <at>  <at>  -495,6 +495,17  <at>  <at>  config X86_INTEL_LPSS
 	  things like clock tree (common clock framework) and pincontrol
 	  which are needed by the LPSS peripheral drivers.

+config X86_AMD_PLATFORM_DEVICE
+	bool "AMD ACPI2Platform devices support"
+	depends on ACPI
+	select COMMON_CLK
+	select PINCTRL
+	---help---
+	  Select to interpret AMD specific ACPI device to platform device
+	  such as I2C, UART found on AMD Carrizo and later chipsets. Selecting
(Continue reading)

Ken Xue | 11 Dec 04:04 2014
Picon

[PATCH 1/3 V2] acpi:soc: merge common codes for creating platform device

This patch is supposed to deliver some common codes for AMD APD and
INTEL LPSS. It can help to convert some specific acpi devices to be
platform devices.

Signed-off-by: Ken Xue <Ken.Xue <at> amd.com>
---
 drivers/acpi/Makefile   |   2 +-
 drivers/acpi/acpi_soc.c | 224 ++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/acpi/acpi_soc.h |  98 +++++++++++++++++++++
 3 files changed, 323 insertions(+), 1 deletion(-)
 create mode 100644 drivers/acpi/acpi_soc.c
 create mode 100644 drivers/acpi/acpi_soc.h

diff --git a/drivers/acpi/Makefile b/drivers/acpi/Makefile
index c3b2fcb..ae3397d 100644
--- a/drivers/acpi/Makefile
+++ b/drivers/acpi/Makefile
 <at>  <at>  -40,7 +40,7  <at>  <at>  acpi-$(CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC) += processor_pdc.o
 acpi-y				+= ec.o
 acpi-$(CONFIG_ACPI_DOCK)	+= dock.o
 acpi-y				+= pci_root.o pci_link.o pci_irq.o
-acpi-y				+= acpi_lpss.o
+acpi-y				+= acpi_soc.o acpi_lpss.o
 acpi-y				+= acpi_platform.o
 acpi-y				+= acpi_pnp.o
 acpi-y				+= int340x_thermal.o
diff --git a/drivers/acpi/acpi_soc.c b/drivers/acpi/acpi_soc.c
new file mode 100644
index 0000000..46901d5
--- /dev/null
(Continue reading)

Ken Xue | 11 Dec 04:05 2014
Picon

[PATCH 3/3] acpi:lpss:Refine lpss codes to fit acpi soc.

Signed-off-by: Ken Xue <Ken.Xue <at> amd.com>
---
 drivers/acpi/acpi_lpss.c | 566 ++++++++++++++++++-----------------------------
 1 file changed, 221 insertions(+), 345 deletions(-)

diff --git a/drivers/acpi/acpi_lpss.c b/drivers/acpi/acpi_lpss.c
index 93d1606..554c932 100644
--- a/drivers/acpi/acpi_lpss.c
+++ b/drivers/acpi/acpi_lpss.c
 <at>  <at>  -10,7 +10,6  <at>  <at> 
  * published by the Free Software Foundation.
  */

-#include <linux/acpi.h>
 #include <linux/clk.h>
 #include <linux/clkdev.h>
 #include <linux/clk-provider.h>
 <at>  <at>  -21,10 +20,13  <at>  <at> 
 #include <linux/pm_runtime.h>
 #include <linux/delay.h>

+#include "acpi_soc.h"
 #include "internal.h"

 ACPI_MODULE_NAME("acpi_lpss");

+static struct acpi_soc a_soc;
+
 #ifdef CONFIG_X86_INTEL_LPSS

(Continue reading)


Gmane