Date: Thu, 25 Oct 2018 17:17:11 +0000 (UTC) From: Warner Losh <imp@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r339736 - head/sys/dev/acpica Message-ID: <201810251717.w9PHHBwh030708@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: imp Date: Thu Oct 25 17:17:11 2018 New Revision: 339736 URL: https://svnweb.freebsd.org/changeset/base/339736 Log: Update comment for AMI00[12]0 override. The AML is even stupider than always returning 0. It will only return non-zero for an OS that reports itself as "Windows 2015", at least on the Threadripper board's AML that I've examined. Those AMLs also suggest we may need this quirk for AMI0030 as well. There may be other cases where we need to override the _STA in a generic way, so we should consider writing code to do that. Modified: head/sys/dev/acpica/acpi.c Modified: head/sys/dev/acpica/acpi.c ============================================================================== --- head/sys/dev/acpica/acpi.c Thu Oct 25 17:00:39 2018 (r339735) +++ head/sys/dev/acpica/acpi.c Thu Oct 25 17:17:11 2018 (r339736) @@ -2222,10 +2222,10 @@ acpi_DeviceIsPresent(device_t dev) status = acpi_GetInteger(h, "_STA", &s); /* - * Onboard serial ports on certain AMD motherboards have an invalid _STA - * method that always returns 0. Force them to always be treated as present. - * - * This may solely be a quirk of a preproduction BIOS. + * Certain Treadripper boards always returns 0 for FreeBSD because it + * only returns non-zero for the OS string "Windows 2015". Otherwise it + * will return zero. Force them to always be treated as present. + * Beata versions were worse: they always returned 0. */ if (acpi_MatchHid(h, "AMDI0020") || acpi_MatchHid(h, "AMDI0010")) return (TRUE);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201810251717.w9PHHBwh030708>