Re: [PATCH v5 2/2] hwmon: (acpi_power_meter) Ensure IPMI space handler is ready on Dell systems

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 3/25/24 05:38, Andy Shevchenko wrote:
On Wed, Mar 20, 2024 at 04:43:17PM +0800, Kai-Heng Feng wrote:
The following error can be observed at boot:
[    3.717920] ACPI Error: No handler for Region [SYSI] (00000000ab9e62c5) [IPMI] (20230628/evregion-130)
[    3.717928] ACPI Error: Region IPMI (ID=7) has no handler (20230628/exfldio-261)

[    3.717936] No Local Variables are initialized for Method [_GHL]

[    3.717938] No Arguments are initialized for method [_GHL]

[    3.717940] ACPI Error: Aborting method \_SB.PMI0._GHL due to previous error (AE_NOT_EXIST) (20230628/psparse-529)
[    3.717949] ACPI Error: Aborting method \_SB.PMI0._PMC due to previous error (AE_NOT_EXIST) (20230628/psparse-529)
[    3.717957] ACPI: \_SB_.PMI0: _PMC evaluation failed: AE_NOT_EXIST

On Dell systems several methods of acpi_power_meter access variables in
IPMI region [0], so wait until IPMI space handler is installed by
acpi_ipmi and also wait until SMI is selected to make the space handler
fully functional.

Since the dependency is inside BIOS's ASL code and it's not
discoverable, so use this fixup is a hack to workaround BIOS issue.

...

+	if (dmi_match(DMI_SYS_VENDOR, "Dell Inc.")) {
+		ipi_device = acpi_dev_get_first_match_dev("IPI0001", NULL, -1);
+
+		if (ipi_device) {
+			if (acpi_wait_for_acpi_ipmi())
+				dev_warn(&device->dev, "Waiting for ACPI IPMI timeout");
+			acpi_dev_put(ipi_device);
+		}

Can be written as

	if (dmi_match(DMI_SYS_VENDOR, "Dell Inc.")) {
		ipi_device = acpi_dev_get_first_match_dev("IPI0001", NULL, -1);
		if (ipi_device && acpi_wait_for_acpi_ipmi())
			dev_warn(&device->dev, "Waiting for ACPI IPMI timeout");
		acpi_dev_put(ipi_device);

+	}


Ah yes, acpi_dev_put() checks if the parameter is NULL. Good point.
I'll make that change, no need to resend.

Thanks,
Guenter





[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]
  Powered by Linux