summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/acpi_fpdt.c
diff options
context:
space:
mode:
authorAdrian Huang <ahuang12@lenovo.com>2021-08-19 09:14:16 +0200
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2021-08-25 20:01:07 +0200
commit97e03410bc5f6a20d46b15740c2eae240f766e39 (patch)
treeeb5f91961c81711689551fe4389104d3ffc31676 /drivers/acpi/acpi_fpdt.c
parentACPI: SPCR: Add support for the new 16550-compatible Serial Port Subtype (diff)
downloadlinux-97e03410bc5f6a20d46b15740c2eae240f766e39.tar.xz
linux-97e03410bc5f6a20d46b15740c2eae240f766e39.zip
ACPI: tables: FPDT: Do not print FW_BUG message if record types are reserved
In ACPI 6.4 spec, record types "0x0002-0xffff" of FPDT Performance Record Types [1] and record types "0x0003-0xffff" of Runtime Performance Record Types [2] are reserved. Users might be confused with the FW_BUG message, and they think this is the FW issue. Here is the example in a Lenovo box: ACPI: FPDT 0x00000000A820A000 000044 (v01 LENOVO THINKSYS 00000100 01000013) ACPI: Reserving FPDT table memory at [mem 0xa820a000-0xa820a043] ACPI FPDT: [Firmware Bug]: Invalid record 4113 found So, remove the FW_BUG message to avoid confusion since those types are reserved in ACPI 6.4 spec. [1] https://uefi.org/specs/ACPI/6.4/05_ACPI_Software_Programming_Model/ACPI_Software_Programming_Model.html#fpdt-performance-record-types-table [2] https://uefi.org/specs/ACPI/6.4/05_ACPI_Software_Programming_Model/ACPI_Software_Programming_Model.html#runtime-performance-record-types-table Signed-off-by: Adrian Huang <ahuang12@lenovo.com> Acked-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi/acpi_fpdt.c')
-rw-r--r--drivers/acpi/acpi_fpdt.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/acpi/acpi_fpdt.c b/drivers/acpi/acpi_fpdt.c
index 4ee2ad234e3d..6922a44b3ce7 100644
--- a/drivers/acpi/acpi_fpdt.c
+++ b/drivers/acpi/acpi_fpdt.c
@@ -220,8 +220,8 @@ static int fpdt_process_subtable(u64 address, u32 subtable_type)
break;
default:
- pr_err(FW_BUG "Invalid record %d found.\n", record_header->type);
- return -EINVAL;
+ /* Other types are reserved in ACPI 6.4 spec. */
+ break;
}
}
return 0;
@@ -254,8 +254,7 @@ static int __init acpi_init_fpdt(void)
subtable->type);
break;
default:
- pr_info(FW_BUG "Invalid subtable type %d found.\n",
- subtable->type);
+ /* Other types are reserved in ACPI 6.4 spec. */
break;
}
offset += sizeof(*subtable);