kern/101415: AcpiEnterSleepState(ACPI_STATE_S5) may hang system
Eugene Grosbein
eugen at kuzbass.ru
Sat Aug 5 17:20:17 UTC 2006
>Number: 101415
>Category: kern
>Synopsis: AcpiEnterSleepState(ACPI_STATE_S5) may hang system
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sat Aug 05 17:20:15 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator: Eugene Grosbein
>Release: FreeBSD 6.1-STABLE i386
>Organization:
Svyaz Service JSC
>Environment:
System: FreeBSD grosbein.pp.ru 6.1-STABLE FreeBSD 6.1-STABLE #19: Sat Aug 5 22:27:00 KRAST 2006 eu at grosbein.pp.ru:/mnt/tmp/obj/usr/local/src/sys/DADV i386
Intel D975XBX motherboad with Intel HDA onboard audio system and
http://www.4front-tech.com/release/oss3994b-freebsd-x86-v6.1-RELEASE.tar.gz
audio driver.
>Description:
My Intel D975XBX motherboad has Intel HDA onboard audio
that is not supported by FreeBSD PCM audio device infrastructure
currently. OSS driver (see Environment abobe for URL) suppors it.
Its startup procedure loads oss_mod.ko kernel module.
This is not possible to turn power off (shutdown -p)
if this kernel module was loaded (unload does not help),
AcpiEnterSleepState(ACPI_STATE_S5) hangs:
1. acpi_shutdown_final(src/sys/dev/acpica/acpi.c) calls
AcpiEnterSleepState(ACPI_STATE_S5);
2. AcpiEnterSleepState(src/sys/contrib/dev/acpica/hwsleep.c)
proceeds normally to writing of SLP_TYP + SLP_EN (the comment says so)
and calls
AcpiHwRegisterWrite(ACPI_MTX_DO_NOT_LOCK, ACPI_REGISTER_PM1A_CONTROL, PM1AControl);
3. AcpiHwRegisterWrite(src/sys/contrib/dev/acpica/hwregs.c)
calls AcpiHwLowLevelWrite(16, Value, &AcpiGbl_FADT->XPm1aCntBlk)
for case ACPI_REGISTER_PM1A_CONTROL;
4. AcpiHwLowLevelWrite(same file hwregs.c) calls
AcpiOsWritePort ((ACPI_IO_ADDRESS) ACPI_GET_ADDRESS (Address), Value, Width);
5. AcpiOsWritePort(sys/dev/acpica/Osd/OsdHardware.c) calls
bus_space_write_2(ACPI_BUS_SPACE_IO, ACPI_BUS_HANDLE, OutPort, Value)
that hangs.
>How-To-Repeat:
1. Install FreeBSD 6.1-RELEASE of 6.1-STABLE on D975XBX motherboard.
2. Install and run
http://www.4front-tech.com/release/oss3994b-freebsd-x86-v6.1-RELEASE.tar.gz
3. Run shutdown -p now. The system hangs after
'Powering system off using ACPI' message is written.
>Fix:
Unknown. The only workaround is to not load OSS driver
that gives no audio.
Eugene Grosbein
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list