Index | Thread | Search

From:
Marcus Glocker <marcus@nazgul.ch>
Subject:
Fix HP Omnibook X 14 boot in ACPI mode
To:
tech@openbsd.org
Date:
Mon, 23 Dec 2024 19:53:48 +0100

Download raw body.

Thread
landry@ noticed a crash when trying to boot his HP Omnibook X 14 in
ACPI mode:

	acpitz24 at acpi0unsupported access type 0xf05
	02ce Called: \_SB_.IC10.RDEC
	  arg0: 0xffffff8023691c08 cnt:01 stk:00 integer: a9
	53a97 Called: \_SB_.TZ39._TMP
	panic: aml_die aml_rwgsb:2581

	aml_die at aml_rwgsb+0x348
	aml_rwinde3xfield at aml_rwfield+0x29c
	aml_rwfield at aml_store+0x1cc
	aml_store at aml_parse+0x15b0

Apparently we are not supporting the 'AttribRawProcessBytes' attribute
in our DSDT code, which leads to the "unsupported access type" message
followed by the panic.

By adding the 'AttribRawProcessBytes' attribute, and handling it the
same way as the 'AttribRawBytes' attribute, landry@ can boot the HP
Omnibook X 14 also in ACPI mode.

Feedback, OKs?


Index: sys/dev/acpi/dsdt.c
===================================================================
RCS file: /cvs/src/sys/dev/acpi/dsdt.c,v
diff -u -p -u -p -r1.271 dsdt.c
--- sys/dev/acpi/dsdt.c	20 Sep 2024 02:00:46 -0000	1.271
+++ sys/dev/acpi/dsdt.c	23 Dec 2024 16:47:12 -0000
@@ -2574,6 +2574,7 @@ aml_rwgsb(struct aml_value *conn, int le
 			buflen = len;
 			break;
 		case 0x0e:	/* AttribRawBytes */
+		case 0x0f:	/* AttribRawProcessBytes */
 			cmdlen = 0;
 			buflen = len;
 			break;
@@ -2664,6 +2665,7 @@ aml_rwgsb(struct aml_value *conn, int le
 			break;
 		case 0x0b:	/* AttribBytes */
 		case 0x0e:	/* AttribRawBytes */
+		case 0x0f:	/* AttribRawProcessBytes */
 			buflen = len;
 			break;
 		default: