<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/drivers/acpi/bus.c, branch leds/master</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=leds%2Fmaster</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=leds%2Fmaster'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2015-06-10T21:51:27Z</updated>
<entry>
<title>ACPI / init: Switch over platform to the ACPI mode later</title>
<updated>2015-06-10T21:51:27Z</updated>
<author>
<name>Rafael J. Wysocki</name>
<email>rafael.j.wysocki@intel.com</email>
</author>
<published>2015-06-09T23:33:36Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=b064a8fa77dfead647564c46ac8fc5b13bd1ab73'/>
<id>urn:sha1:b064a8fa77dfead647564c46ac8fc5b13bd1ab73</id>
<content type='text'>
Commit 73f7d1ca3263 "ACPI / init: Run acpi_early_init() before
timekeeping_init()" moved the ACPI subsystem initialization,
including the ACPI mode enabling, to an earlier point in the
initialization sequence, to allow the timekeeping subsystem
use ACPI early.  Unfortunately, that resulted in boot regressions
on some systems and the early ACPI initialization was moved toward
its original position in the kernel initialization code by commit
c4e1acbb35e4 "ACPI / init: Invoke early ACPI initialization later".

However, that turns out to be insufficient, as boot is still broken
on the Tyan S8812 mainboard.

To fix that issue, split the ACPI early initialization code into
two pieces so the majority of it still located in acpi_early_init()
and the part switching over the platform into the ACPI mode goes into
a new function, acpi_subsystem_init(), executed at the original early
ACPI initialization spot.

That fixes the Tyan S8812 boot problem, but still allows ACPI
tables to be loaded earlier which is useful to the EFI code in
efi_enter_virtual_mode().

Link: https://bugzilla.kernel.org/show_bug.cgi?id=97141
Fixes: 73f7d1ca3263 "ACPI / init: Run acpi_early_init() before timekeeping_init()"
Reported-and-tested-by: Marius Tolzmann &lt;tolzmann@molgen.mpg.de&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
Acked-by: Toshi Kani &lt;toshi.kani@hp.com&gt;
Reviewed-by: Hanjun Guo &lt;hanjun.guo@linaro.org&gt;
Reviewed-by: Lee, Chun-Yi &lt;jlee@suse.com&gt;
</content>
</entry>
<entry>
<title>ARM64 / ACPI: Introduce ACPI_IRQ_MODEL_GIC and register device's gsi</title>
<updated>2015-03-26T15:13:07Z</updated>
<author>
<name>Hanjun Guo</name>
<email>hanjun.guo@linaro.org</email>
</author>
<published>2015-03-24T14:02:48Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=fbe61ec71ac975279cd47b6c299d5e33f63aac4e'/>
<id>urn:sha1:fbe61ec71ac975279cd47b6c299d5e33f63aac4e</id>
<content type='text'>
Introduce ACPI_IRQ_MODEL_GIC which is needed for ARM64 as GIC is
used, and then register device's gsi with the core IRQ subsystem.

acpi_register_gsi() is similar to DT based irq_of_parse_and_map(),
since gsi is unique in the system, so use hwirq number directly
for the mapping.

We are going to implement stacked domains when GICv2m, GICv3, ITS
support are added.

CC: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
Originally-by: Amit Daniel Kachhap &lt;amit.daniel@samsung.com&gt;
Tested-by: Suravee Suthikulpanit &lt;Suravee.Suthikulpanit@amd.com&gt;
Tested-by: Yijing Wang &lt;wangyijing@huawei.com&gt;
Tested-by: Mark Langsdorf &lt;mlangsdo@redhat.com&gt;
Tested-by: Jon Masters &lt;jcm@redhat.com&gt;
Tested-by: Timur Tabi &lt;timur@codeaurora.org&gt;
Tested-by: Robert Richter &lt;rrichter@cavium.com&gt;
Acked-by: Robert Richter &lt;rrichter@cavium.com&gt;
Acked-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
Reviewed-by: Grant Likely &lt;grant.likely@linaro.org&gt;
Signed-off-by: Hanjun Guo &lt;hanjun.guo@linaro.org&gt;
Signed-off-by: Will Deacon &lt;will.deacon@arm.com&gt;
</content>
</entry>
<entry>
<title>ACPIPHP / radeon / nouveau: Remove acpi_bus_no_hotplug()</title>
<updated>2014-09-15T19:15:34Z</updated>
<author>
<name>Bjorn Helgaas</name>
<email>bhelgaas@google.com</email>
</author>
<published>2014-09-10T21:30:08Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=f91ce35e471ae17552ce7bfe355cfd997e3ad781'/>
<id>urn:sha1:f91ce35e471ae17552ce7bfe355cfd997e3ad781</id>
<content type='text'>
Revert parts of f244d8b623da ("ACPIPHP / radeon / nouveau: Fix VGA
switcheroo problem related to hotplug").

A previous commit 5493b31f0b55 ("PCI: Add pci_ignore_hotplug() to ignore
hotplug events for a device") added equivalent functionality implemented in
a different way for both acpiphp and pciehp.

Signed-off-by: Bjorn Helgaas &lt;bhelgaas@google.com&gt;
Acked-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
Acked-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
Acked-by: Dave Airlie &lt;airlied@redhat.com&gt;
Acked-by: Rajat Jain &lt;rajatxjain@gmail.com&gt;</content>
</entry>
<entry>
<title>ACPICA: Linux: Add stub support for Linux specific variables and functions.</title>
<updated>2014-07-19T23:34:57Z</updated>
<author>
<name>Lv Zheng</name>
<email>lv.zheng@intel.com</email>
</author>
<published>2014-07-16T08:57:52Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=a8278efd84f7643d5e44e5e507b657c231b0743b'/>
<id>urn:sha1:a8278efd84f7643d5e44e5e507b657c231b0743b</id>
<content type='text'>
There are global variables and functions not upstreamed to the ACPICA code
base.  Such symbols still can be referenced by external users as they are
listed in the acpixf.h.  This patch uses ACPI_GLOBAL and
ACPI_EXTERNAL_RETURN_STATUS mechanism to add stub support for such symbols.

Signed-off-by: Lv Zheng &lt;lv.zheng@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'acpica'</title>
<updated>2014-06-03T21:12:27Z</updated>
<author>
<name>Rafael J. Wysocki</name>
<email>rafael.j.wysocki@intel.com</email>
</author>
<published>2014-06-03T21:12:27Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=0e36d43c9c87554cdb18aa865eec9edccda17324'/>
<id>urn:sha1:0e36d43c9c87554cdb18aa865eec9edccda17324</id>
<content type='text'>
* acpica: (63 commits)
  ACPICA: Namespace: Remove _PRP method support.
  ACPI: Fix x86 regression related to early mapping size limitation
  ACPICA: Tables: Add mechanism to control early table checksum verification.
  ACPICA: acpidump: Fix repetitive table dump in -n mode.
  ACPI: Clean up acpi_os_map/unmap_memory() to eliminate __iomem.
  ACPICA: Clean up redudant definitions already defined elsewhere
  ACPICA: Linux headers: Add &lt;asm/acenv.h&gt; to remove mis-ordered inclusion of &lt;asm/acpi.h&gt;
  ACPICA: Linux headers: Add &lt;acpi/platform/aclinuxex.h&gt;
  ACPICA: Linux headers: Remove ACPI_PREEMPTION_POINT() due to no usages.
  ACPICA: Update version to 20140424.
  ACPICA: Comment/format update, no functional change.
  ACPICA: Events: Update GPE handling and initialization code.
  ACPICA: Remove extraneous error message for large number of GPEs.
  ACPICA: Tables: Remove old mechanism to validate if XSDT contains NULL entries.
  ACPICA: Tables: Add new mechanism to skip NULL entries in RSDT and XSDT.
  ACPICA: acpidump: Add support to force using RSDT.
  ACPICA: Back port of improvements on exception code.
  ACPICA: Back port of _PRP update.
  ACPICA: acpidump: Fix truncated RSDP signature validation.
  ACPICA: Linux header: Add support for stubbed externals.
  ...
</content>
</entry>
<entry>
<title>Merge branches 'acpi-tables' and 'acpi-general'</title>
<updated>2014-06-03T21:10:06Z</updated>
<author>
<name>Rafael J. Wysocki</name>
<email>rafael.j.wysocki@intel.com</email>
</author>
<published>2014-06-03T21:10:06Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=91ab377ba3ab202c40a0da402d6c2f1507a15355'/>
<id>urn:sha1:91ab377ba3ab202c40a0da402d6c2f1507a15355</id>
<content type='text'>
* acpi-tables:
  ACPI: Fix conflict between customized DSDT and DSDT local copy

* acpi-general:
  ACPI: Add acpi_bus_attach_private_data() to attach data to ACPI handle
</content>
</entry>
<entry>
<title>ACPI: Fix x86 regression related to early mapping size limitation</title>
<updated>2014-05-31T22:20:52Z</updated>
<author>
<name>Lv Zheng</name>
<email>lv.zheng@intel.com</email>
</author>
<published>2014-05-31T00:15:02Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=4fc0a7e889e5540305926e41931cf3bc0a60abb2'/>
<id>urn:sha1:4fc0a7e889e5540305926e41931cf3bc0a60abb2</id>
<content type='text'>
The following warning message is triggered:
 WARNING: CPU: 0 PID: 0 at mm/early_ioremap.c:136 __early_ioremap+0x11f/0x1f2()
 Modules linked in:
 CPU: 0 PID: 0 Comm: swapper Not tainted 3.15.0-rc1-00017-g86dfc6f3-dirty #298
 Hardware name: Intel Corporation S2600CP/S2600CP, BIOS SE5C600.86B.99.99.x036.091920111209 09/19/2011
  0000000000000009 ffffffff81b75c40 ffffffff817c627b 0000000000000000
  ffffffff81b75c78 ffffffff81067b5d 000000000000007b 8000000000000563
  00000000b96b20dc 0000000000000001 ffffffffff300e0c ffffffff81b75c88
 Call Trace:
  [&lt;ffffffff817c627b&gt;] dump_stack+0x45/0x56
  [&lt;ffffffff81067b5d&gt;] warn_slowpath_common+0x7d/0xa0
  [&lt;ffffffff81067c3a&gt;] warn_slowpath_null+0x1a/0x20
  [&lt;ffffffff81d4b9d5&gt;] __early_ioremap+0x11f/0x1f2
  [&lt;ffffffff81d4bc5b&gt;] early_ioremap+0x13/0x15
  [&lt;ffffffff81d2b8f3&gt;] __acpi_map_table+0x13/0x18
  [&lt;ffffffff817b8d1a&gt;] acpi_os_map_memory+0x26/0x14e
  [&lt;ffffffff813ff018&gt;] acpi_tb_acquire_table+0x42/0x70
  [&lt;ffffffff813ff086&gt;] acpi_tb_validate_table+0x27/0x37
  [&lt;ffffffff813ff0e5&gt;] acpi_tb_verify_table+0x22/0xd8
  [&lt;ffffffff813ff6a8&gt;] acpi_tb_install_non_fixed_table+0x60/0x1c9
  [&lt;ffffffff81d61024&gt;] acpi_tb_parse_root_table+0x218/0x26a
  [&lt;ffffffff81d1b120&gt;] ? early_idt_handlers+0x120/0x120
  [&lt;ffffffff81d610cd&gt;] acpi_initialize_tables+0x57/0x59
  [&lt;ffffffff81d5f25d&gt;] acpi_table_init+0x1b/0x99
  [&lt;ffffffff81d2bca0&gt;] acpi_boot_table_init+0x1e/0x85
  [&lt;ffffffff81d23043&gt;] setup_arch+0x99d/0xcc6
  [&lt;ffffffff81d1b120&gt;] ? early_idt_handlers+0x120/0x120
  [&lt;ffffffff81d1bbbe&gt;] start_kernel+0x8b/0x415
  [&lt;ffffffff81d1b120&gt;] ? early_idt_handlers+0x120/0x120
  [&lt;ffffffff81d1b5ee&gt;] x86_64_start_reservations+0x2a/0x2c
  [&lt;ffffffff81d1b72e&gt;] x86_64_start_kernel+0x13e/0x14d
 ---[ end trace 11ae599a1898f4e7 ]---
when installing the following table during early stage:
 ACPI: SSDT 0x00000000B9638018 07A0C4 (v02 INTEL  S2600CP  00004000 INTL 20100331)
The regression is caused by the size limitation of the x86 early IO mapping.

The root cause is:
 1. ACPICA doesn't split IO memory mapping and table mapping;
 2. Linux x86 OSL implements acpi_os_map_memory() using a size limited fix-map
    mechanism during early boot stage, which is more suitable for only IO
    mappings.

This patch fixes this issue by utilizing acpi_gbl_verify_table_checksum to
disable the table mapping during early stage and enabling it again for the
late stage. In this way, the normal code path is not affected. Then after
the code related to the root cause is cleaned up, the early checksum
verification can be easily re-enabled.

A new boot parameter - acpi_force_table_verification is introduced for
the platforms that require the checksum verification to stop loading bad
tables.

This fix also covers the checksum verification for the table overrides. Now
large tables can also be overridden using the initrd override mechanism.

Signed-off-by: Lv Zheng &lt;lv.zheng@intel.com&gt;
Reported-and-tested-by: Yuanhan Liu &lt;yuanhan.liu@linux.intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI: Add acpi_bus_attach_private_data() to attach data to ACPI handle</title>
<updated>2014-05-26T23:19:54Z</updated>
<author>
<name>Lan Tianyu</name>
<email>tianyu.lan@intel.com</email>
</author>
<published>2014-05-20T12:59:21Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=72013795a73f8536d3346fa90379c987bcad0cc8'/>
<id>urn:sha1:72013795a73f8536d3346fa90379c987bcad0cc8</id>
<content type='text'>
There is already acpi_bus_get_private_data() to get ACPI handle data
which is associated with acpi_bus_private_data_handler(). This patch
is to add acpi_bus_attach_private_data() to make a pair and facilitate
to attach and get data to/from ACPI handle.

Reviewed-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Lan Tianyu &lt;tianyu.lan@intel.com&gt;
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI: Fix conflict between customized DSDT and DSDT local copy</title>
<updated>2014-05-16T23:55:33Z</updated>
<author>
<name>Lv Zheng</name>
<email>lv.zheng@intel.com</email>
</author>
<published>2014-05-12T07:50:16Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=73577d1df8e1f31f6b1a5eebcdbc334eb0330e47'/>
<id>urn:sha1:73577d1df8e1f31f6b1a5eebcdbc334eb0330e47</id>
<content type='text'>
This patch fixes the following issue:
If DSDT is customized, no local DSDT copy is needed.

References: https://bugzilla.kernel.org/show_bug.cgi?id=69711
Signed-off-by: Enrico Etxe Arte &lt;goitizena.generoa@gmail.com&gt;
Signed-off-by: Lv Zheng &lt;lv.zheng@intel.com&gt;
Cc: 2.6.35+ &lt;stable@vger.kernel.org&gt; # 2.6.35+
[rjw: Subject]
Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI / notify: Clean up handling of hotplug events</title>
<updated>2014-05-06T23:00:19Z</updated>
<author>
<name>Rafael J. Wysocki</name>
<email>rafael.j.wysocki@intel.com</email>
</author>
<published>2014-04-30T23:16:06Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=d0103387bc21644d297cb61ee623c7114e395575'/>
<id>urn:sha1:d0103387bc21644d297cb61ee623c7114e395575</id>
<content type='text'>
Make the handling of hotplug events in acpi_bus_notify() slightly
cleaner by using an extra local variable to indicate when
acpi_hotplug_schedule() should be called.

Signed-off-by: Rafael J. Wysocki &lt;rafael.j.wysocki@intel.com&gt;
</content>
</entry>
</feed>
