Values set within all APEI tables have no hardware meaning and
are valid combining with kernel hacks. These changes allow only
to confirm that APEI tables (HEST, ERST, BERT) are supported by
kernel and no issues were observed on arm/arm64 architectures.
Tomasz Nowicki (6):
acpi, apei, ghes: Enable APEI firmware first mode by APEI bit.
acpi, apei, hed: Add Hardware Error Device (HED) to SB bus.
acpi, apei, einj: Fill ACPI tables to enable EINJ driver.
acpi, apei: Fix EINJ and HEST tables.
acpi, apei, bert: Point to the same error block status memory region
as HEST points.
acpi, apei, erst: Point to region where we can pretend registers,
persistent sotrage.
platforms/exynos5250-arndale.acpi/bert.asl | 4 +-
platforms/exynos5250-arndale.acpi/dsdt.asl | 27 +++++
platforms/exynos5250-arndale.acpi/einj.asl | 2 +-
platforms/exynos5250-arndale.acpi/erst.asl | 34 +++----
platforms/exynos5250-arndale.acpi/hest.asl | 148 +---------------------------
platforms/foundation-v8.acpi/bert.asl | 4 +-
platforms/foundation-v8.acpi/dsdt.asl | 27 +++++
platforms/foundation-v8.acpi/einj.asl | 2 +-
platforms/foundation-v8.acpi/erst.asl | 34 +++----
platforms/foundation-v8.acpi/hest.asl | 148 +---------------------------
10 files changed, 98 insertions(+), 332 deletions(-)
--
1.7.9.5
From: Al Stone <ahs3(a)redhat.com>
I should have sent these out for comment much sooner. Once these are
in good shape, the next steps are to send patches for verifying that
the pinconf code is working properly, connecting up the GPIO interrupts
using ACPI, and then conversion of all of the pin controllers for
Arndale (this patch converts one of four).
This patch puts most of the infrastructure in place so that in the
3.11 kernel the Arndale pin controllers can be converted from FDT to
ACPI. The changes in ASL are included in a separate patch. What this
allows is for the pin controllers to be described in either FDT or ACPI
for Arndale and -- in conjunction with the ASL changes -- shows how to
describe a Samsung controller in ACPI.
Changes for v2:
-- Add patch 6 which allows compilation regardless of whether
CONFIG_ACPI is used or not
Al Stone (6):
ACPI: ARM: arndale: remove GPZ GPIO definition from DT so it can be in
ACPI
ACPI: ARM: arndale: whitelist the samsung-pinctrl driver for ACPI
ACPI: make an error message a little clearer
ACPI: improve acpi_extract_package() utility
ACPI: ARM: arndale: enable ACPI in the Samsung pinctrl driver
ACPI: ARM: arndale: add CONFIG_ACPI ifdef's to pinctrl driver
arch/arm/boot/dts/exynos5250-pinctrl.dtsi | 2 +
arch/arm/boot/dts/exynos5250.dtsi | 6 +-
drivers/acpi/acpi_platform.c | 3 +
drivers/acpi/osl.c | 2 +-
drivers/acpi/utils.c | 17 +-
drivers/pinctrl/pinctrl-samsung.c | 517 +++++++++++++++++++++++++++++-
drivers/pinctrl/pinctrl-samsung.h | 3 +
7 files changed, 536 insertions(+), 14 deletions(-)
--
1.8.3.1
This patch set is the kernel part of code for cpu hotplug.
I got a patch in upstream but not accepted by mainline, this patch
emulate an ACPI SCI interrupt to emulate a hot-plug event. Useful
for testing ACPI based hot-plug on systems that don't have the
necessary firmware support. With this patch, I can test the hot-add
and hot-remove repeatly.
This patch set is intended to close the cpu hotplug related cards
in JIRA, just for review purpose, *should not* pushed to our linaro
acpi.
I have created an acpi-hotplug-next branch in our git tree for these
patches.
This patch set includes 3 parts, the forst part is the kernel code,
and the second is the ASL code fix, the third part is the boot wrapper.
Hanjun Guo (4):
Revert "ARM64 / CPU hot-plug: Skeleton logic cpu online/offline for
cpu hot-plug"
ACPI: Enable SCI_EMULATE to manually simulate physical hotplug
testing
arm / ACPI: Remove __cpuinit and fix __init attribute location
arm: fix cpu hot add failure
Mark Rutland (6):
arm64: reorganise smp_enable_ops
arm64: factor out spin-table boot method
arm64: read enable-method for CPU0
arm64: add CPU_HOTPLUG infrastructure
arm64: add PSCI CPU_OFF-based hotplug support
HACK: arm64: dts: foundation: add PSCI data
arch/arm64/Kconfig | 2 +-
arch/arm64/boot/dts/foundation-v8.dts | 19 +--
arch/arm64/include/asm/irq.h | 1 +
arch/arm64/include/asm/smp.h | 46 +++++--
arch/arm64/kernel/cputable.c | 2 +-
arch/arm64/kernel/head.S | 12 +-
arch/arm64/kernel/irq.c | 61 +++++++++
arch/arm64/kernel/process.c | 7 ++
arch/arm64/kernel/smp.c | 222 ++++++++++++++++++---------------
arch/arm64/kernel/smp_psci.c | 54 ++++++--
arch/arm64/kernel/smp_spin_table.c | 85 ++++++++++++-
arch/arm64/kernel/vmlinux.lds.S | 1 -
drivers/acpi/Kconfig | 10 ++
drivers/acpi/Makefile | 1 +
drivers/acpi/plat/arm/boot.c | 20 +--
drivers/acpi/sci_emu.c | 145 +++++++++++++++++++++
16 files changed, 538 insertions(+), 150 deletions(-)
create mode 100644 drivers/acpi/sci_emu.c
--
1.7.9.5
From: Al Stone <ahs3(a)redhat.com>
The first two patches in this series have been submitted before;
this series just combines all of the Arndale GPIO changes so far.
The last of the three converts yet another GPIO device to ACPI.
All that remains is to convert the final controller. To make that
work, the GIC and GIC combiner will need to work first and that I'm
still investigating.
Al Stone (3):
ACPI: ARM: arndale: move definition of GPZ GPIO from DT to ACPI
ACPI: ARM: arndale: convert GPIO controller 3 of 4 to ACPI
ACPI: ARM: arndale: convert GPIO controller 2 of 4 to ACPI
platforms/exynos5250-arndale.acpi/ssdt0.asl | 554 +++++++++++++++++++++++++++-
1 file changed, 553 insertions(+), 1 deletion(-)
--
1.8.3.1
Hi everyone,
I read the wiki about ACPI Table Prioritization:
https://wiki.linaro.org/LEG/Engineering/Kernel/ACPI/TablePriorities
and I noticed that CSRT is in the *Never Tables* priority, here I got
some different opinions.
Yes, CSRT or Core System Resources Table is a proprietary ACPI table
introduced by Microsoft, but This table can contain devices that are not in
the system DSDT table. In particular DMA controllers, Timer, interrupt might
be described here.
we can get DMA description from DMAR (DMA Remapping Table) tables on Intel platform,
but on ARM SoCs, there is no table to describe DMA, only CSRT is available.
Actually, the support code of CSRT in Linux kernel already have submitted
by Intel on Jan 17 this year, but only DMA is supported, still have something
more to do (if needed).
So, why not use the CSRT table to describe DMA?
Thanks
Hanjun
v1->v2: Return specific error value instead of just return -1, and
correct some grammar mistake in changelog.
For cpu hot add, evaluate _MAT or parse MADT will did twice to get
APIC id:
acpi_processor_add()
acpi_processor_get_info()
acpi_get_cpuid() will evaluate _MAT or parse MADT;
acpi_processor_hotadd_init()
acpi_map_lsapic() will evaluate _MAT again;
This patch set introduces apic_id in struct processor to save parsed
APIC id, and use it to remove the duplicated _MAT evaluation.
Further more, the new logical cpu number will be generated in
acpi_register_lapic(), this can be returned to remove the cpumask
allocation and operation to simplify _acpi_map_lsapic().
There are also some cleanups for the ACPI processor dirver code.
Hanjun Guo (2):
ACPI / processor: remove unnecessary if (!pr) check
ACPI / processor: Remove outdated comments
Jiang Liu (4):
ACPI / processor: Introduce apic_id in struct processor to save
parsed APIC id
ACPI / processor: use apic_id and remove duplicated _MAT evaluation
x86 / ACPI: simplify _acpi_map_lsapic()
ACPI / processor: remove some dead code in acpi_processor_get_info()
arch/ia64/kernel/acpi.c | 38 ++----------------
arch/x86/include/asm/mpspec.h | 2 +-
arch/x86/kernel/acpi/boot.c | 88 +++++++++--------------------------------
arch/x86/kernel/apic/apic.c | 8 ++--
drivers/acpi/acpi_processor.c | 22 +++--------
drivers/acpi/processor_core.c | 26 +++++++++---
include/acpi/processor.h | 3 ++
include/linux/acpi.h | 2 +-
8 files changed, 60 insertions(+), 129 deletions(-)
--
1.7.9.5