ACPI updates for 5.2-rc1
- Convert the ACPI documentation in the kernel source tree to the
.rst format and split it into the admin guide, driver API and
firmware guide parts (Changbin Du).
- Add a PRP0001 usage example to the ACPI documentation (Thomas
Preston).
- Switch over the users of the acpi_dev_get_first_match_name()
library function which turned out to be problematic to a new,
better one called acpi_dev_get_first_match_dev() (Andy Shevchenko,
YueHaibing).
- Update the ACPICA code in the kernel to upstream release 20190405
including:
* Null pointer dereference check in acpi_ns_delete_node() (Erik
Schmauss).
* Multiple macro and function name changes (Bob Moore).
* Predefined operation region name fix (Erik Schmauss).
- Fix hibernation issue on systems using the Baytrail and
Cherrytrail Intel SoCs introduced during the 4.20 development
cycle (Hans de Goede).
- Add Sony VPCEH3U1E to the backlight quirk list (Zhang Rui).
- Fix button handling during system resume (Zhang Rui).
- Add a device PM diagnostic message (Rafael Wysocki).
- Clean up the code, comments and white space in multiple places
(Bjorn Helgaas, Gustavo Silva, Kefeng Wang).
-----BEGIN PGP SIGNATURE-----
iQJGBAABCAAwFiEE4fcc61cGeeHD/fCwgsRv/nhiVHEFAlzQEdcSHHJqd0Byand5
c29ja2kubmV0AAoJEILEb/54YlRxVKEP/ijfyNbe2s21nZXdEmL2mEFlkK3jvN/P
d9jDkM9u3iJzFHTjwbMrYa7uXQpLtlhsE3QrcRcfkumOf8XWH1kSY1pDfb3W701w
3Zy1zJyiH4SA5xwipDgiqLsHneV3NqtyYHjWh0u52zM8S5aL58ZPlgxwY/qywt94
CMCfs+QCR+MKHvJVjo8EjlF3pwOgZpIFpIHtzo5A87yzwnG3kWls0UVfJGHSAKsX
q+m3RhglqeVYVabXU/d5B9PnZiN5SmZdI864D2a5Dh4D/puv+k9hhBdCaMMi2F25
GZwFsBh3ymbcPCfaKe422488ERh1l8Ov1JsLUbFRcYw8euFXkaoOYtugETIy2XR9
3JNWu3TiuBhA4EkQdpiWY+CIcUmXDUzmEDhJBG1e6hhzlqZknIcfXVp6qu3bxoA/
OvlC3Lcaw9cHXQLGRk5S3u3F/NzdkSTD1A5bNSdHpbRqj1Ale8H8R9TUfqMX5Nsj
r4V5m+2bFsArOdVEit9kUw0MdFq/ew6eO75lBK8sUJLfQ2utiMZW8FuJBeNWRahE
bTsfOtxazDl0mcavROfzf4XFaBBQ0YUJvPIgVFhUPGOhlq96OAFgZYYemq7NOpQo
EvS8OQD0+k7hFg1/z+JUr8rDa1NRlLypz4iXa/wIU1a/sE0Odv4xwTH1XLhoaQKv
nVkGW4GD0WMX
=LtlV
-----END PGP SIGNATURE-----
Merge tag 'acpi-5.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull ACPI updates from Rafael Wysocki:
"These rearrange the ACPI documentation by converting it to the .rst
format and splitting it into clear categories (admin guide, driver
API, firmware guide), switch over multiple users of a problematic
library function to a new better one, update the ACPICA code in the
kernel to a new upstream release, fix a few issues, improve power
device management diagnostics and do some cleanups.
Specifics:
- Convert the ACPI documentation in the kernel source tree to the
.rst format and split it into the admin guide, driver API and
firmware guide parts (Changbin Du).
- Add a PRP0001 usage example to the ACPI documentation (Thomas
Preston).
- Switch over the users of the acpi_dev_get_first_match_name()
library function which turned out to be problematic to a new,
better one called acpi_dev_get_first_match_dev() (Andy Shevchenko,
YueHaibing).
- Update the ACPICA code in the kernel to upstream release 20190405
including:
* Null pointer dereference check in acpi_ns_delete_node() (Erik
Schmauss).
* Multiple macro and function name changes (Bob Moore).
* Predefined operation region name fix (Erik Schmauss).
- Fix hibernation issue on systems using the Baytrail and Cherrytrail
Intel SoCs introduced during the 4.20 development cycle (Hans de
Goede).
- Add Sony VPCEH3U1E to the backlight quirk list (Zhang Rui).
- Fix button handling during system resume (Zhang Rui).
- Add a device PM diagnostic message (Rafael Wysocki).
- Clean up the code, comments and white space in multiple places
(Bjorn Helgaas, Gustavo Silva, Kefeng Wang)"
* tag 'acpi-5.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (53 commits)
Documentation: ACPI: move video_extension.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move ssdt-overlays.txt to admin-guide/acpi and convert to reST
Documentation: ACPI: move lpit.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move cppc_sysfs.txt to admin-guide/acpi and convert to reST
Documentation: ACPI: move apei/einj.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move apei/output_format.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move aml-debugger.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move method-tracing.txt to firmware-guide/acpi and convert to rsST
Documentation: ACPI: move debug.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move dsd/data-node-references.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move dsd/graph.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move acpi-lid.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move i2c-muxes.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move dsdt-override.txt to admin-guide/acpi and convert to reST
Documentation: ACPI: move initrd_table_override.txt to admin-guide/acpi and convert to reST
Documentation: ACPI: move method-customizing.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move gpio-properties.txt to firmware-guide/acpi and convert to reST
Documentation: ACPI: move DSD-properties-rules.txt to firmware-guide/acpi and covert to reST
Documentation: ACPI: move scan_handlers.txt to driver-api/acpi and convert to reST
Documentation: ACPI: move linuxized-acpica.txt to driver-api/acpi and convert to reST
...
This commit is contained in:
commit
59df1c2bde
104 changed files with 1967 additions and 1609 deletions
|
|
@ -19,7 +19,7 @@ ACPI_MODULE_NAME("oslinuxtbl")
|
|||
typedef struct osl_table_info {
|
||||
struct osl_table_info *next;
|
||||
u32 instance;
|
||||
char signature[ACPI_NAME_SIZE];
|
||||
char signature[ACPI_NAMESEG_SIZE];
|
||||
|
||||
} osl_table_info;
|
||||
|
||||
|
|
@ -286,14 +286,14 @@ static acpi_status osl_add_table_to_list(char *signature, u32 instance)
|
|||
return (AE_NO_MEMORY);
|
||||
}
|
||||
|
||||
ACPI_MOVE_NAME(new_info->signature, signature);
|
||||
ACPI_COPY_NAMESEG(new_info->signature, signature);
|
||||
|
||||
if (!gbl_table_list_head) {
|
||||
gbl_table_list_head = new_info;
|
||||
} else {
|
||||
next = gbl_table_list_head;
|
||||
while (1) {
|
||||
if (ACPI_COMPARE_NAME(next->signature, signature)) {
|
||||
if (ACPI_COMPARE_NAMESEG(next->signature, signature)) {
|
||||
if (next->instance == instance) {
|
||||
found = TRUE;
|
||||
}
|
||||
|
|
@ -782,11 +782,11 @@ osl_get_bios_table(char *signature,
|
|||
|
||||
/* Handle special tables whose addresses are not in RSDT/XSDT */
|
||||
|
||||
if (ACPI_COMPARE_NAME(signature, ACPI_RSDP_NAME) ||
|
||||
ACPI_COMPARE_NAME(signature, ACPI_SIG_RSDT) ||
|
||||
ACPI_COMPARE_NAME(signature, ACPI_SIG_XSDT) ||
|
||||
ACPI_COMPARE_NAME(signature, ACPI_SIG_DSDT) ||
|
||||
ACPI_COMPARE_NAME(signature, ACPI_SIG_FACS)) {
|
||||
if (ACPI_COMPARE_NAMESEG(signature, ACPI_RSDP_NAME) ||
|
||||
ACPI_COMPARE_NAMESEG(signature, ACPI_SIG_RSDT) ||
|
||||
ACPI_COMPARE_NAMESEG(signature, ACPI_SIG_XSDT) ||
|
||||
ACPI_COMPARE_NAMESEG(signature, ACPI_SIG_DSDT) ||
|
||||
ACPI_COMPARE_NAMESEG(signature, ACPI_SIG_FACS)) {
|
||||
|
||||
find_next_instance:
|
||||
|
||||
|
|
@ -797,7 +797,7 @@ find_next_instance:
|
|||
* careful about the FADT length and validate table addresses.
|
||||
* Note: The 64-bit addresses have priority.
|
||||
*/
|
||||
if (ACPI_COMPARE_NAME(signature, ACPI_SIG_DSDT)) {
|
||||
if (ACPI_COMPARE_NAMESEG(signature, ACPI_SIG_DSDT)) {
|
||||
if (current_instance < 2) {
|
||||
if ((gbl_fadt->header.length >=
|
||||
MIN_FADT_FOR_XDSDT) && gbl_fadt->Xdsdt
|
||||
|
|
@ -815,7 +815,7 @@ find_next_instance:
|
|||
dsdt;
|
||||
}
|
||||
}
|
||||
} else if (ACPI_COMPARE_NAME(signature, ACPI_SIG_FACS)) {
|
||||
} else if (ACPI_COMPARE_NAMESEG(signature, ACPI_SIG_FACS)) {
|
||||
if (current_instance < 2) {
|
||||
if ((gbl_fadt->header.length >=
|
||||
MIN_FADT_FOR_XFACS) && gbl_fadt->Xfacs
|
||||
|
|
@ -833,7 +833,7 @@ find_next_instance:
|
|||
facs;
|
||||
}
|
||||
}
|
||||
} else if (ACPI_COMPARE_NAME(signature, ACPI_SIG_XSDT)) {
|
||||
} else if (ACPI_COMPARE_NAMESEG(signature, ACPI_SIG_XSDT)) {
|
||||
if (!gbl_revision) {
|
||||
return (AE_BAD_SIGNATURE);
|
||||
}
|
||||
|
|
@ -842,7 +842,7 @@ find_next_instance:
|
|||
(acpi_physical_address)gbl_rsdp.
|
||||
xsdt_physical_address;
|
||||
}
|
||||
} else if (ACPI_COMPARE_NAME(signature, ACPI_SIG_RSDT)) {
|
||||
} else if (ACPI_COMPARE_NAMESEG(signature, ACPI_SIG_RSDT)) {
|
||||
if (current_instance == 0) {
|
||||
table_address =
|
||||
(acpi_physical_address)gbl_rsdp.
|
||||
|
|
@ -931,7 +931,7 @@ find_next_instance:
|
|||
|
||||
/* Does this table match the requested signature? */
|
||||
|
||||
if (!ACPI_COMPARE_NAME
|
||||
if (!ACPI_COMPARE_NAMESEG
|
||||
(mapped_table->signature, signature)) {
|
||||
osl_unmap_table(mapped_table);
|
||||
mapped_table = NULL;
|
||||
|
|
@ -995,7 +995,7 @@ static acpi_status osl_list_customized_tables(char *directory)
|
|||
{
|
||||
void *table_dir;
|
||||
u32 instance;
|
||||
char temp_name[ACPI_NAME_SIZE];
|
||||
char temp_name[ACPI_NAMESEG_SIZE];
|
||||
char *filename;
|
||||
acpi_status status = AE_OK;
|
||||
|
||||
|
|
@ -1086,8 +1086,8 @@ osl_map_table(acpi_size address,
|
|||
return (AE_BAD_SIGNATURE);
|
||||
}
|
||||
} else
|
||||
if (!ACPI_COMPARE_NAME(signature, mapped_table->signature))
|
||||
{
|
||||
if (!ACPI_COMPARE_NAMESEG
|
||||
(signature, mapped_table->signature)) {
|
||||
acpi_os_unmap_memory(mapped_table,
|
||||
sizeof(struct acpi_table_header));
|
||||
return (AE_BAD_SIGNATURE);
|
||||
|
|
@ -1158,15 +1158,15 @@ osl_table_name_from_file(char *filename, char *signature, u32 *instance)
|
|||
|
||||
/* Ignore meaningless files */
|
||||
|
||||
if (strlen(filename) < ACPI_NAME_SIZE) {
|
||||
if (strlen(filename) < ACPI_NAMESEG_SIZE) {
|
||||
return (AE_BAD_SIGNATURE);
|
||||
}
|
||||
|
||||
/* Extract instance number */
|
||||
|
||||
if (isdigit((int)filename[ACPI_NAME_SIZE])) {
|
||||
sscanf(&filename[ACPI_NAME_SIZE], "%u", instance);
|
||||
} else if (strlen(filename) != ACPI_NAME_SIZE) {
|
||||
if (isdigit((int)filename[ACPI_NAMESEG_SIZE])) {
|
||||
sscanf(&filename[ACPI_NAMESEG_SIZE], "%u", instance);
|
||||
} else if (strlen(filename) != ACPI_NAMESEG_SIZE) {
|
||||
return (AE_BAD_SIGNATURE);
|
||||
} else {
|
||||
*instance = 0;
|
||||
|
|
@ -1174,7 +1174,7 @@ osl_table_name_from_file(char *filename, char *signature, u32 *instance)
|
|||
|
||||
/* Extract signature */
|
||||
|
||||
ACPI_MOVE_NAME(signature, filename);
|
||||
ACPI_COPY_NAMESEG(signature, filename);
|
||||
return (AE_OK);
|
||||
}
|
||||
|
||||
|
|
@ -1236,7 +1236,7 @@ osl_read_table_from_file(char *filename,
|
|||
status = AE_BAD_SIGNATURE;
|
||||
goto exit;
|
||||
}
|
||||
} else if (!ACPI_COMPARE_NAME(signature, header.signature)) {
|
||||
} else if (!ACPI_COMPARE_NAMESEG(signature, header.signature)) {
|
||||
fprintf(stderr,
|
||||
"Incorrect signature: Expecting %4.4s, found %4.4s\n",
|
||||
signature, header.signature);
|
||||
|
|
@ -1311,7 +1311,7 @@ osl_get_customized_table(char *pathname,
|
|||
{
|
||||
void *table_dir;
|
||||
u32 current_instance = 0;
|
||||
char temp_name[ACPI_NAME_SIZE];
|
||||
char temp_name[ACPI_NAMESEG_SIZE];
|
||||
char table_filename[PATH_MAX];
|
||||
char *filename;
|
||||
acpi_status status;
|
||||
|
|
@ -1329,7 +1329,7 @@ osl_get_customized_table(char *pathname,
|
|||
|
||||
/* Ignore meaningless files */
|
||||
|
||||
if (!ACPI_COMPARE_NAME(filename, signature)) {
|
||||
if (!ACPI_COMPARE_NAMESEG(filename, signature)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -289,14 +289,14 @@ int ap_dump_table_by_address(char *ascii_address)
|
|||
|
||||
int ap_dump_table_by_name(char *signature)
|
||||
{
|
||||
char local_signature[ACPI_NAME_SIZE + 1];
|
||||
char local_signature[ACPI_NAMESEG_SIZE + 1];
|
||||
u32 instance;
|
||||
struct acpi_table_header *table;
|
||||
acpi_physical_address address;
|
||||
acpi_status status;
|
||||
int table_status;
|
||||
|
||||
if (strlen(signature) != ACPI_NAME_SIZE) {
|
||||
if (strlen(signature) != ACPI_NAMESEG_SIZE) {
|
||||
fprintf(stderr,
|
||||
"Invalid table signature [%s]: must be exactly 4 characters\n",
|
||||
signature);
|
||||
|
|
@ -310,9 +310,9 @@ int ap_dump_table_by_name(char *signature)
|
|||
|
||||
/* To be friendly, handle tables whose signatures do not match the name */
|
||||
|
||||
if (ACPI_COMPARE_NAME(local_signature, "FADT")) {
|
||||
if (ACPI_COMPARE_NAMESEG(local_signature, "FADT")) {
|
||||
strcpy(local_signature, ACPI_SIG_FADT);
|
||||
} else if (ACPI_COMPARE_NAME(local_signature, "MADT")) {
|
||||
} else if (ACPI_COMPARE_NAMESEG(local_signature, "MADT")) {
|
||||
strcpy(local_signature, ACPI_SIG_MADT);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -97,7 +97,7 @@ int ap_open_output_file(char *pathname)
|
|||
|
||||
int ap_write_to_binary_file(struct acpi_table_header *table, u32 instance)
|
||||
{
|
||||
char filename[ACPI_NAME_SIZE + 16];
|
||||
char filename[ACPI_NAMESEG_SIZE + 16];
|
||||
char instance_str[16];
|
||||
ACPI_FILE file;
|
||||
acpi_size actual;
|
||||
|
|
@ -110,16 +110,16 @@ int ap_write_to_binary_file(struct acpi_table_header *table, u32 instance)
|
|||
/* Construct lower-case filename from the table local signature */
|
||||
|
||||
if (ACPI_VALIDATE_RSDP_SIG(table->signature)) {
|
||||
ACPI_MOVE_NAME(filename, ACPI_RSDP_NAME);
|
||||
ACPI_COPY_NAMESEG(filename, ACPI_RSDP_NAME);
|
||||
} else {
|
||||
ACPI_MOVE_NAME(filename, table->signature);
|
||||
ACPI_COPY_NAMESEG(filename, table->signature);
|
||||
}
|
||||
|
||||
filename[0] = (char)tolower((int)filename[0]);
|
||||
filename[1] = (char)tolower((int)filename[1]);
|
||||
filename[2] = (char)tolower((int)filename[2]);
|
||||
filename[3] = (char)tolower((int)filename[3]);
|
||||
filename[ACPI_NAME_SIZE] = 0;
|
||||
filename[ACPI_NAMESEG_SIZE] = 0;
|
||||
|
||||
/* Handle multiple SSDts - create different filenames for each */
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue