Date: Sun, 6 Aug 2006 01:13:32 +0800 (KRAST) From: Eugene Grosbein <eugen@kuzbass.ru> To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/101415: AcpiEnterSleepState(ACPI_STATE_S5) may hang system Message-ID: <200608051713.k75HDWlU001002@grosbein.pp.ru> Resent-Message-ID: <200608051720.k75HKGLf069545@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>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@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:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200608051713.k75HDWlU001002>