Module Name: src Committed By: jruoho Date: Sat Feb 27 19:38:39 UTC 2010
Modified Files: src/share/man/man4: acpiec.4 Log Message: Add few paragraphs about the idea behind ECs from a hardware angle. Also add a CAVEATS section because of the problematic and difficult nature of ECs. Update copyright, bump date. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/share/man/man4/acpiec.4 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/share/man/man4/acpiec.4 diff -u src/share/man/man4/acpiec.4:1.4 src/share/man/man4/acpiec.4:1.5 --- src/share/man/man4/acpiec.4:1.4 Wed Apr 30 13:10:53 2008 +++ src/share/man/man4/acpiec.4 Sat Feb 27 19:38:39 2010 @@ -1,6 +1,6 @@ -.\" $NetBSD: acpiec.4,v 1.4 2008/04/30 13:10:53 martin Exp $ +.\" $NetBSD: acpiec.4,v 1.5 2010/02/27 19:38:39 jruoho Exp $ .\" -.\" Copyright (c) 2002, 2004 The NetBSD Foundation, Inc. +.\" Copyright (c) 2002, 2004, 2010 The NetBSD Foundation, Inc. .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -24,7 +24,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd December 12, 2007 +.Dd February 27, 2010 .Dt ACPIEC 4 .Os .Sh NAME @@ -38,24 +38,67 @@ .Nm driver supports ACPI Embedded Controllers. .Pp -It provides -embedded controller access for other ACPI devices. -On many systems which have an -.Nm -device, other ACPI devices such as -.Xr acpiacad 4 , -.Xr acpibat 4 , -or -.Xr acpitz 4 -implicitly depend on the -.Nm -device. -Therefore it is a good idea to enable -.Nm -with other ACPI devices unless you are sure -the system does not have an +An ACPI Embedded Controller +.Pq Tn EC +is typically a small microprocessor that is responsible for various tasks +related to +.Tn ACPI . +The primary task is to handle +.Tn ACPI +specific interrupts, which are mapped to so-called +.Tn ACPI +General Purpose Events +.Pq Tn GPEs . +Other possible functions include embedded access to other buses such as the +.Xr iic 4 . +.Pp +The +.Tn ACPI +specific events range from user initiated events to events triggered by +the hardware. +When such an event occurs, typically either a System Management Interrupt +.Pq Tn SMI +or a System Control Interrupt +.Pq Tn SCI +is raised. +The latter is an active, visible, shareable, level interrupt. +On most Intel chipsets +.Tn SCI +is hardwired to the interrupt number 9. +The main task of an +.Tn EC +is to raise a system control interrupt. +.Pp +All GPEs generate SCIs. +A typical example of the internal wiring of +.Tn GPEs +could involve +.Xr gpio 4 : +when say the +.Tn AC +adapter is connected, a certain +.Tn GPIO +line becomes active, a given +.Tn GPE +is flagged, and a +.Tn SCI +interrupt is raised by the +.Tn EC , +leading to execution of +.Tn ACPI +machine code in order to locate the handler associated with the event. +A corresponding driver, +.Xr acpiacad 4 +in this case, will finally finish the processing of the event. +.Pp +Due to the reasons described above, majority of +.Tn ACPI +specific drivers are dysfunctional without +.Nm . +It is therefore recommended that .Nm -device. +is always enabled, +even though it may not be required on some older systems. .Sh SEE ALSO .Xr acpi 4 .Sh HISTORY @@ -64,3 +107,17 @@ driver appeared in .Nx 1.6 . +.Sh CAVEATS +Many machines depend on early attachment of +.Nm . +In such cases the information required by +.Nm +should be available as a separate and optional +Embedded Controller Descriptor Table +.Pq Tn ECDT . +If an +.Tn ECDT +is not available or early attachment can not be carried out due other reasons, +the initialization of the whole +.Xr acpi 4 +subsystem may be problematic.