-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
yaml --- r: 346842 b: refs/heads/master c: 7b07786 h: refs/heads/master v: v3
- Loading branch information
Linus Torvalds
committed
Dec 18, 2012
1 parent
c8ebf29
commit 4858c2c
Showing
1,853 changed files
with
118,217 additions
and
52,901 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,2 @@ | ||
--- | ||
refs/heads/master: 1f1c96102ff848778cd596e81bdbd45f81a40119 | ||
refs/heads/master: 7b077868cb8bc31aa5a0dad961ecc9f157bff744 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
Overriding ACPI tables via initrd | ||
================================= | ||
|
||
1) Introduction (What is this about) | ||
2) What is this for | ||
3) How does it work | ||
4) References (Where to retrieve userspace tools) | ||
|
||
1) What is this about | ||
--------------------- | ||
|
||
If the ACPI_INITRD_TABLE_OVERRIDE compile option is true, it is possible to | ||
override nearly any ACPI table provided by the BIOS with an instrumented, | ||
modified one. | ||
|
||
For a full list of ACPI tables that can be overridden, take a look at | ||
the char *table_sigs[MAX_ACPI_SIGNATURE]; definition in drivers/acpi/osl.c | ||
All ACPI tables iasl (Intel's ACPI compiler and disassembler) knows should | ||
be overridable, except: | ||
- ACPI_SIG_RSDP (has a signature of 6 bytes) | ||
- ACPI_SIG_FACS (does not have an ordinary ACPI table header) | ||
Both could get implemented as well. | ||
|
||
|
||
2) What is this for | ||
------------------- | ||
|
||
Please keep in mind that this is a debug option. | ||
ACPI tables should not get overridden for productive use. | ||
If BIOS ACPI tables are overridden the kernel will get tainted with the | ||
TAINT_OVERRIDDEN_ACPI_TABLE flag. | ||
Complain to your platform/BIOS vendor if you find a bug which is so sever | ||
that a workaround is not accepted in the Linux kernel. | ||
|
||
Still, it can and should be enabled in any kernel, because: | ||
- There is no functional change with not instrumented initrds | ||
- It provides a powerful feature to easily debug and test ACPI BIOS table | ||
compatibility with the Linux kernel. | ||
|
||
|
||
3) How does it work | ||
------------------- | ||
|
||
# Extract the machine's ACPI tables: | ||
cd /tmp | ||
acpidump >acpidump | ||
acpixtract -a acpidump | ||
# Disassemble, modify and recompile them: | ||
iasl -d *.dat | ||
# For example add this statement into a _PRT (PCI Routing Table) function | ||
# of the DSDT: | ||
Store("HELLO WORLD", debug) | ||
iasl -sa dsdt.dsl | ||
# Add the raw ACPI tables to an uncompressed cpio archive. | ||
# They must be put into a /kernel/firmware/acpi directory inside the | ||
# cpio archive. | ||
# The uncompressed cpio archive must be the first. | ||
# Other, typically compressed cpio archives, must be | ||
# concatenated on top of the uncompressed one. | ||
mkdir -p kernel/firmware/acpi | ||
cp dsdt.aml kernel/firmware/acpi | ||
# A maximum of: #define ACPI_OVERRIDE_TABLES 10 | ||
# tables are currently allowed (see osl.c): | ||
iasl -sa facp.dsl | ||
iasl -sa ssdt1.dsl | ||
cp facp.aml kernel/firmware/acpi | ||
cp ssdt1.aml kernel/firmware/acpi | ||
# Create the uncompressed cpio archive and concatenate the original initrd | ||
# on top: | ||
find kernel | cpio -H newc --create > /boot/instrumented_initrd | ||
cat /boot/initrd >>/boot/instrumented_initrd | ||
# reboot with increased acpi debug level, e.g. boot params: | ||
acpi.debug_level=0x2 acpi.debug_layer=0xFFFFFFFF | ||
# and check your syslog: | ||
[ 1.268089] ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] | ||
[ 1.272091] [ACPI Debug] String [0x0B] "HELLO WORLD" | ||
|
||
iasl is able to disassemble and recompile quite a lot different, | ||
also static ACPI tables. | ||
|
||
|
||
4) Where to retrieve userspace tools | ||
------------------------------------ | ||
|
||
iasl and acpixtract are part of Intel's ACPICA project: | ||
http://acpica.org/ | ||
and should be packaged by distributions (for example in the acpica package | ||
on SUSE). | ||
|
||
acpidump can be found in Len Browns pmtools: | ||
ftp://kernel.org/pub/linux/kernel/people/lenb/acpi/utils/pmtools/acpidump | ||
This tool is also part of the acpica package on SUSE. | ||
Alternatively, used ACPI tables can be retrieved via sysfs in latest kernels: | ||
/sys/firmware/acpi/tables |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
11 changes: 11 additions & 0 deletions
11
trunk/Documentation/devicetree/bindings/arm/altera/socfpga-reset.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
Altera SOCFPGA Reset Manager | ||
|
||
Required properties: | ||
- compatible : "altr,rst-mgr" | ||
- reg : Should contain 1 register ranges(address and length) | ||
|
||
Example: | ||
rstmgr@ffd05000 { | ||
compatible = "altr,rst-mgr"; | ||
reg = <0xffd05000 0x1000>; | ||
}; |
11 changes: 11 additions & 0 deletions
11
trunk/Documentation/devicetree/bindings/arm/altera/socfpga-system.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
Altera SOCFPGA System Manager | ||
|
||
Required properties: | ||
- compatible : "altr,sys-mgr" | ||
- reg : Should contain 1 register ranges(address and length) | ||
|
||
Example: | ||
sysmgr@ffd08000 { | ||
compatible = "altr,sys-mgr"; | ||
reg = <0xffd08000 0x1000>; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
20 changes: 20 additions & 0 deletions
20
trunk/Documentation/devicetree/bindings/arm/armada-370-xp-pmsu.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
Power Management Service Unit(PMSU) | ||
----------------------------------- | ||
Available on Marvell SOCs: Armada 370 and Armada XP | ||
|
||
Required properties: | ||
|
||
- compatible: "marvell,armada-370-xp-pmsu" | ||
|
||
- reg: Should contain PMSU registers location and length. First pair | ||
for the per-CPU SW Reset Control registers, second pair for the | ||
Power Management Service Unit. | ||
|
||
Example: | ||
|
||
armada-370-xp-pmsu@d0022000 { | ||
compatible = "marvell,armada-370-xp-pmsu"; | ||
reg = <0xd0022100 0x430>, | ||
<0xd0020800 0x20>; | ||
}; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
21 changes: 21 additions & 0 deletions
21
trunk/Documentation/devicetree/bindings/arm/coherency-fabric.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
Coherency fabric | ||
---------------- | ||
Available on Marvell SOCs: Armada 370 and Armada XP | ||
|
||
Required properties: | ||
|
||
- compatible: "marvell,coherency-fabric" | ||
|
||
- reg: Should contain coherency fabric registers location and | ||
length. First pair for the coherency fabric registers, second pair | ||
for the per-CPU fabric registers registers. | ||
|
||
Example: | ||
|
||
coherency-fabric@d0020200 { | ||
compatible = "marvell,coherency-fabric"; | ||
reg = <0xd0020200 0xb0>, | ||
<0xd0021810 0x1c>; | ||
|
||
}; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.