Module Name:    src
Committed By:   jruoho
Date:           Mon Jun  6 16:52:16 UTC 2011

Modified Files:
        src/distrib/sets/lists/man: mi
        src/share/man/man4/man4.x86: Makefile
Added Files:
        src/share/man/man4/man4.x86: apic.4
Removed Files:
        src/share/man/man4/man4.x86: ioapic.4

Log Message:
Instead of ioapic(4), make MLINKS { lapic(4), ioapic(4) } to apic(4).


To generate a diff of this commit:
cvs rdiff -u -r1.1318 -r1.1319 src/distrib/sets/lists/man/mi
cvs rdiff -u -r1.9 -r1.10 src/share/man/man4/man4.x86/Makefile
cvs rdiff -u -r0 -r1.1 src/share/man/man4/man4.x86/apic.4
cvs rdiff -u -r1.4 -r0 src/share/man/man4/man4.x86/ioapic.4

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/sets/lists/man/mi
diff -u src/distrib/sets/lists/man/mi:1.1318 src/distrib/sets/lists/man/mi:1.1319
--- src/distrib/sets/lists/man/mi:1.1318	Sat Jun  4 18:27:39 2011
+++ src/distrib/sets/lists/man/mi	Mon Jun  6 16:52:15 2011
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1318 2011/06/04 18:27:39 jruoho Exp $
+# $NetBSD: mi,v 1.1319 2011/06/06 16:52:15 jruoho Exp $
 #
 # Note: don't delete entries from here - mark them as "obsolete" instead.
 #
@@ -1792,6 +1792,7 @@
 ./usr/share/man/cat4/x68k/pow.0			man-sys-catman		.cat
 ./usr/share/man/cat4/x68k/vs.0			man-sys-catman		.cat
 ./usr/share/man/cat4/x86/amdpcib.0		man-sys-catman		.cat
+./usr/share/man/cat4/x86/apic.0			man-sys-catman		.cat
 ./usr/share/man/cat4/x86/balloon.0		man-sys-catman		.cat
 ./usr/share/man/cat4/x86/coretemp.0		man-sys-catman		.cat
 ./usr/share/man/cat4/x86/est.0			man-sys-catman		.cat
@@ -1799,6 +1800,7 @@
 ./usr/share/man/cat4/x86/hpet.0			man-sys-catman		.cat
 ./usr/share/man/cat4/x86/ichlpcib.0		man-sys-catman		.cat
 ./usr/share/man/cat4/x86/ioapic.0		man-sys-catman		.cat
+./usr/share/man/cat4/x86/lapic.0		man-sys-catman		.cat
 ./usr/share/man/cat4/x86/odcm.0			man-sys-catman		.cat
 ./usr/share/man/cat4/x86/powernow.0		man-sys-catman		.cat
 ./usr/share/man/cat4/xbd.0			man-sys-catman		.cat
@@ -4499,6 +4501,7 @@
 ./usr/share/man/html4/x68k/pow.html		man-sys-htmlman		html
 ./usr/share/man/html4/x68k/vs.html		man-sys-htmlman		html
 ./usr/share/man/html4/x86/amdpcib.html		man-sys-htmlman		html
+./usr/share/man/html4/x86/apic.html		man-sys-htmlman		html
 ./usr/share/man/html4/x86/balloon.html		man-sys-htmlman		html
 ./usr/share/man/html4/x86/coretemp.html		man-sys-htmlman		html
 ./usr/share/man/html4/x86/est.html		man-sys-htmlman		html
@@ -4506,6 +4509,7 @@
 ./usr/share/man/html4/x86/hpet.html		man-sys-htmlman		html
 ./usr/share/man/html4/x86/ichlpcib.html		man-sys-htmlman		html
 ./usr/share/man/html4/x86/ioapic.html		man-sys-htmlman		html
+./usr/share/man/html4/x86/lapic.html		man-sys-htmlman		html
 ./usr/share/man/html4/x86/odcm.html		man-sys-htmlman		html
 ./usr/share/man/html4/x86/powernow.html		man-sys-htmlman		html
 ./usr/share/man/html4/xbd.html			man-sys-htmlman		html
@@ -7141,6 +7145,7 @@
 ./usr/share/man/man4/x68k/pow.4			man-sys-man		.man
 ./usr/share/man/man4/x68k/vs.4			man-sys-man		.man
 ./usr/share/man/man4/x86/amdpcib.4		man-sys-man		.man
+./usr/share/man/man4/x86/apic.4			man-sys-man		.man
 ./usr/share/man/man4/x86/balloon.4		man-sys-man		.man
 ./usr/share/man/man4/x86/coretemp.4		man-sys-man		.man
 ./usr/share/man/man4/x86/est.4			man-sys-man		.man
@@ -7148,6 +7153,7 @@
 ./usr/share/man/man4/x86/hpet.4			man-sys-man		.man
 ./usr/share/man/man4/x86/ichlpcib.4		man-sys-man		.man
 ./usr/share/man/man4/x86/ioapic.4		man-sys-man		.man
+./usr/share/man/man4/x86/lapic.4		man-sys-man		.man
 ./usr/share/man/man4/x86/odcm.4			man-sys-man		.man
 ./usr/share/man/man4/x86/powernow.4		man-sys-man		.man
 ./usr/share/man/man4/xbd.4			man-sys-man		.man

Index: src/share/man/man4/man4.x86/Makefile
diff -u src/share/man/man4/man4.x86/Makefile:1.9 src/share/man/man4/man4.x86/Makefile:1.10
--- src/share/man/man4/man4.x86/Makefile:1.9	Fri Mar  4 05:56:49 2011
+++ src/share/man/man4/man4.x86/Makefile	Mon Jun  6 16:52:16 2011
@@ -1,7 +1,10 @@
-#	$NetBSD: Makefile,v 1.9 2011/03/04 05:56:49 jruoho Exp $
+#	$NetBSD: Makefile,v 1.10 2011/06/06 16:52:16 jruoho Exp $
 
-MAN=	amdpcib.4 balloon.4 coretemp.4 est.4 \
-	fwhrng.4 hpet.4 ichlpcib.4 ioapic.4 odcm.4 powernow.4
+MAN=	amdpcib.4 apic.4 balloon.4 coretemp.4 est.4 \
+	fwhrng.4 hpet.4 ichlpcib.4 odcm.4 powernow.4
+
+MLINKS+=apic.4 ioapic.4 \
+	apic.4 lapic.4
 
 MANSUBDIR=/x86
 

Added files:

Index: src/share/man/man4/man4.x86/apic.4
diff -u /dev/null src/share/man/man4/man4.x86/apic.4:1.1
--- /dev/null	Mon Jun  6 16:52:16 2011
+++ src/share/man/man4/man4.x86/apic.4	Mon Jun  6 16:52:15 2011
@@ -0,0 +1,174 @@
+.\" $NetBSD: apic.4,v 1.1 2011/06/06 16:52:15 jruoho Exp $
+.\"
+.\" Copyright (c) 2011 Jukka Ruohonen <jruoho...@iki.fi>
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Neither the name of the author nor the names of any
+.\"    contributors may be used to endorse or promote products derived
+.\"    from this software without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+.\" POSSIBILITY OF SUCH DAMAGE.
+.\"
+.Dd June 6, 2011
+.Dt APIC 4 x86
+.Os
+.Sh NAME
+.Nm apic ,
+.Nm ioapic ,
+.Nm lapic
+.Nd Intel APIC Architecture
+.Sh SYNOPSIS
+.Cd "ioapic* at mainbus*"
+.Sh DESCRIPTION
+The
+.Nm
+subsystem provides basis for a system of advanced programmable
+interrupt controllers
+.Pq Tn APICs
+originally designed by Intel but now widely used on all x86 systems.
+.Pp
+There are two elements in the architecture, the local
+.Tn APIC
+.Pq Tn LAPIC
+and the
+.Tn I/O APIC .
+Historically these were connected by a dedicated 3-wire
+.Dq APIC bus ,
+but the system bus is used for communication today.
+The configuration is increasingly dependent on
+.Tn ACPI .
+.Pp
+Typically each
+.Tn CPU
+in the system contains one
+.Tn LAPIC
+that performs two primary functions:
+.Bl -enum -offset indent
+.It
+It receives interrupts both from internal sources and from the external
+.Tn I/O APIC .
+The interrupt sources include
+.Tn I/O
+devices, the programmable
+.Tn APIC
+timer, performance monitoring counters,
+thermal sensor interrupts, and others.
+.It
+In multiprocessor
+.Pq Tn MP
+systems a
+.Tn LAPIC
+receives and sends interprocessor interrupts
+.Pq Tn IPIs
+from and to other processors in the system.
+.Tn IPIs
+are used to provide software interrupts,
+interrupt forwarding, or preemptive scheduling.
+Against this, the architecture can be generally seen as an attempt
+to solve the interrupt routing efficiency issues in
+.Tn MP
+systems.
+.El
+.Pp
+There is typically one
+.Tn I/O APIC
+for each peripheral bus in the system.
+Each
+.Tn I/O APIC
+has a series of interrupt inputs to external interrupt sources.
+The architecture usually contains a redirection table which can be used
+to route the interrupts that an
+.Tn I/O APIC
+receives to one or more local
+.Tn APICs .
+When a
+.Tn LAPIC
+is able to accept an interrupt, it will signal the
+.Tn CPU .
+Without an
+.Tn I/O APIC ,
+the local
+.Tn APICs
+are therefore mostly useless; one of the primary functions
+of the architecture is no longer achievable, interrupts can
+not be distributed to different
+.Tn CPUs .
+.Pp
+The 8259
+.Tn PIC
+has coexisted with the architecture since its introduction.
+It is still possible to disable the
+.Tn APIC
+system and revert back to a 8259-compatible
+.Tn PIC .
+But the widespread use of
+.Tn MP
+systems has made this mainly a fallback option.
+.Sh SEE ALSO
+.Xr acpi 4 ,
+.Xr ichlpcib 4 ,
+.Xr mainbus 4
+.Rs
+.%A Intel Corporation
+.%T Intel 64 and IA-32 Architectures Software Developer's Manual
+.%V Volume 3A: System Programming Guide, Part 1
+.%P Chapter 10
+.%D January, 2011
+.%U http://www.intel.com/Assets/PDF/manual/253668.pdf
+.Re
+.Rs
+.%A Intel Corporation
+.%T Intel 82093AA I/O Advanced Programmable
+.%T Interrupt Controller (I/O APIC) Datasheet
+.%D May, 1996
+.%U http://www.intel.com/design/chipsets/datashts/29056601.pdf
+.Re
+.Rs
+.%A Intel Corporation
+.%T 8259A, Programmable Interrupt Controller
+.%D December, 1988
+.%U http://pdos.csail.mit.edu/6.828/2005/readings/hardware/8259A.pdf
+.Re
+.Rs
+.%A John Baldwin
+.%T PCI Interrupts for x86 Machines under FreeBSD
+.%D May 18-19, 2007
+.%O Proceedings of BSDCan 2007
+.%U http://people.freebsd.org/~jhb/papers/bsdcan/2007/article.pdf
+.Re
+.Rs
+.%A Microsoft Corporation
+.%T PCI IRQ Routing on a Multiprocessor ACPI System
+.%D December 4, 2001
+.%U http://www.microsoft.com/whdc/archive/acpi-mp.mspx
+.Re
+.Sh AUTHORS
+.An -nosplit
+Authors of the
+.Nx
+implementation of the Intel APIC Architecture include
+.An Andrew Doran ,
+.An Bill Sommerfeld ,
+.An Frank van der Linden ,
+and
+.An Stefan Grefen ,
+among others.
+The older 8259
+.Tn PIC
+implementation is based on the work of
+.An William Jolitz .

Reply via email to