Skip site navigation (1)Skip section navigation (2)
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>