From ac7bf6a17fe54dc9bd7a1b0e7d1fb9fa51bbbb09 Mon Sep 17 00:00:00 2001 From: guenther Date: Wed, 19 Sep 2018 05:23:16 +0000 Subject: [PATCH] Delete checks of the CST bit_width ('vendor') field, as new Ryzen machines are showing up with vendor 2 and it doesn't seem to mean anything: Linux doesn't check it at all, so this exhibits all the normal ACPI spec lossage tested in snaps for a few weeks shrug kettenis@ --- sys/dev/acpi/acpicpu.c | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/sys/dev/acpi/acpicpu.c b/sys/dev/acpi/acpicpu.c index c3ee56ba874..8985db6eedd 100644 --- a/sys/dev/acpi/acpicpu.c +++ b/sys/dev/acpi/acpicpu.c @@ -1,4 +1,4 @@ -/* $OpenBSD: acpicpu.c,v 1.82 2018/06/29 17:39:18 kettenis Exp $ */ +/* $OpenBSD: acpicpu.c,v 1.83 2018/09/19 05:23:16 guenther Exp $ */ /* * Copyright (c) 2005 Marco Peereboom * Copyright (c) 2015 Philip Guenther @@ -401,11 +401,11 @@ acpicpu_add_cstatepkg(struct aml_value *val, void *arg) if (grd->grd_gas.register_bit_width == 0) { method = CST_METH_HALT; addr = 0; - } else if (grd->grd_gas.register_bit_width == 1 || - grd->grd_gas.register_bit_width == 8) { + } else { /* - * vendor 1 == Intel - * vendor 8 == "AML author used the bitwidth" + * In theory we should only do this for + * vendor 1 == Intel but other values crop up, + * presumably due to the normal ACPI spec confusion. */ switch (grd->grd_gas.register_bit_offset) { case 0x1: @@ -431,10 +431,6 @@ acpicpu_add_cstatepkg(struct aml_value *val, void *arg) state, grd->grd_gas.register_bit_offset); return; } - } else { - printf(": C%d (unknown FFH vendor %d)", - state, grd->grd_gas.register_bit_width); - return; } break; -- 2.20.1