Split config_attach/detach(9) from autoconf(9). Stop talking about
authormpi <mpi@openbsd.org>
Sun, 13 Jul 2014 09:28:06 +0000 (09:28 +0000)
committermpi <mpi@openbsd.org>
Sun, 13 Jul 2014 09:28:06 +0000 (09:28 +0000)
config_deactivate(9), it should die.  Mention config_detach_children(9).
Use CONTEXT and RETURN VALUES sections

share/man/man9/Makefile
share/man/man9/autoconf.9
share/man/man9/config_attach.9 [new file with mode: 0644]

index e2a761d..2673b85 100644 (file)
@@ -1,4 +1,4 @@
-#      $OpenBSD: Makefile,v 1.214 2014/07/10 19:33:16 matthew Exp $
+#      $OpenBSD: Makefile,v 1.215 2014/07/13 09:28:06 mpi Exp $
 #      $NetBSD: Makefile,v 1.4 1996/01/09 03:23:01 thorpej Exp $
 
 #      Makefile for section 9 (kernel function and variable) manual pages.
@@ -8,7 +8,7 @@ MAN=    aml_evalnode.9 atomic_add_int.9 atomic_cas_uint.9 \
        atomic_sub_int.9 atomic_swap_uint.9 \
        audio.9 autoconf.9 \
        bemtoh32.9 bio_register.9 boot.9 buffercache.9 bus_dma.9 bus_space.9 \
-       copy.9 crypto.9 delay.9 \
+       copy.9 config_attach.9 crypto.9 delay.9 \
        disk.9 disklabel.9 dma_alloc.9 dohooks.9 dopowerhooks.9 \
        domountroothooks.9 doshutdownhooks.9 dostartuphooks.9 \
        evcount.9 extent.9 fb_setup.9 file.9 fork1.9 \
@@ -59,8 +59,6 @@ MLINKS+=atomic_swap_uint.9 atomic_swap_ulong.9 \
 MLINKS+=autoconf.9 config_init.9 autoconf.9 config_search.9 \
        autoconf.9 config_rootsearch.9 autoconf.9 config_found_sm.9 \
        autoconf.9 config_found.9 autoconf.9 config_rootfound.9 \
-       autoconf.9 config_attach.9 autoconf.9 config_detach.9 \
-       autoconf.9 config_activate.9 autoconf.9 config_deactivate.9 \
        autoconf.9 config_defer.9
 MLINKS+=bemtoh32.9 bemtoh16.9 bemtoh32.9 bemtoh64.9 \
        bemtoh32.9 htobem16.9 bemtoh32.9 htobem32.9 bemtoh32.9 htobem64.9 \
@@ -133,6 +131,7 @@ MLINKS+=bus_space.9 bus_space_alloc.9 bus_space.9 bus_space_barrier.9 \
        bus_space.9 bus_space_write_raw_region_2.9 \
        bus_space.9 bus_space_write_raw_region_4.9 \
        bus_space.9 bus_space_write_raw_region_8.9
+MLINKS+=config_attach.9 config_detach.9 config_attach.9 config_detach_children.9
 MLINKS+=copy.9 copyin.9 copy.9 copyout.9 copy.9 copystr.9 \
        copy.9 copyinstr.9 copy.9 copyoutstr.9 \
        copy.9 kcopy.9
index 6394010..836e827 100644 (file)
@@ -1,4 +1,4 @@
-.\"     $OpenBSD: autoconf.9,v 1.12 2014/07/10 19:23:10 mpi Exp $
+.\"     $OpenBSD: autoconf.9,v 1.13 2014/07/13 09:28:06 mpi Exp $
 .\"     $NetBSD: autoconf.9,v 1.9 2002/02/13 08:18:35 ross Exp $
 .\"
 .\" Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -28,7 +28,7 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd $Mdocdate: July 10 2014 $
+.Dd $Mdocdate: July 13 2014 $
 .Dt AUTOCONF 9
 .Os
 .Sh NAME
@@ -242,65 +242,6 @@ function performs the same operation on the root device identified
 by the
 .Fa rootname
 string.
-.Sh ATTACHING AND DETACHING DEVICES
-.nr nS 1
-.Ft "struct device *"
-.Fn config_attach "struct device *parent" "void *cf" "void *aux" \
-                  "cfprint_t print"
-.Ft "int"
-.Fn config_detach "struct device *dev" "int flags"
-.nr nS 0
-.Pp
-The
-.Fn config_attach
-function attaches a found device.
-Memory is allocated for the
-.Em softc
-structure and the driver's attach function is called according to the
-configuration table.
-If successful,
-.Fn config_attach
-returns the
-.Em softc .
-If unsuccessful, it returns
-.Dv NULL .
-.Pp
-The
-.Fn config_detach
-function is called by the parent to detach the child device.
-The second argument
-.Fa flags
-contains detachment flags:
-.Bd -literal
-#define        DETACH_FORCE    0x01    /* Force detachment; hardware gone */
-#define        DETACH_QUIET    0x02    /* Don't print a notice */
-.Ed
-.Pp
-The
-.Fn config_detach
-function returns zero if successful and an error code otherwise.
-.Fn config_detach
-is always called from process context, allowing
-.Xr tsleep 9
-to be called while the device detaches itself (to deal with processes
-which have a device open).
-.Sh DEVICE DEACTIVATION
-.nr nS 1
-.Ft "int"
-.Fn config_deactivate "struct device *dev"
-.nr nS 0
-.Pp
-The
-.Fn config_deactivate
-function is called by the parent to deactivate the child device
-.Fa dev .
-.Fn config_deactivate
-is called from interrupt context to immediately relinquish resources
-and notify dependent kernel subsystems that the device is about to be
-detached.
-At some later point,
-.Fn config_detach
-will be called to finalise the removal of the device.
 .Sh DEFERRED CONFIGURATION
 .nr nS 1
 .Ft "void"
@@ -323,11 +264,10 @@ Data structures and function prototypes for the framework are located in
 .Sh SEE ALSO
 .Xr autoconf 4 ,
 .Xr files.conf 5 ,
-.Xr config 8
+.Xr config 8 ,
+.Xr config_attach 9
 .Sh HISTORY
 Autoconfiguration first appeared in
 .Bx 4.1 .
 The autoconfiguration framework was completely revised in
 .Bx 4.4 .
-The detach and activate/deactivate interfaces appeared in
-.Nx 1.5 .
diff --git a/share/man/man9/config_attach.9 b/share/man/man9/config_attach.9
new file mode 100644 (file)
index 0000000..abfa6b3
--- /dev/null
@@ -0,0 +1,83 @@
+.\"     $OpenBSD: config_attach.9,v 1.1 2014/07/13 09:28:06 mpi Exp $
+.\"     $NetBSD: autoconf.9,v 1.9 2002/02/13 08:18:35 ross Exp $
+.\"
+.\" Copyright (c) 2001 The NetBSD Foundation, Inc.
+.\" All rights reserved.
+.\"
+.\" This code is derived from software contributed to The NetBSD Foundation
+.\" by Gregory McGarry.
+.\"
+.\" 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. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. 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 $Mdocdate: July 13 2014 $
+.Dt CONFIG_ATTACH 9
+.Os
+.Sh NAME
+.Nm config_attach, config_detach, config_detach_children
+.Nd attach and detach devices
+.Sh SYNOPSIS
+.In sys/param.h
+.In sys/device.h
+.Ft "struct device *"
+.Fn config_attach "struct device *parent" "void *cf" "void *aux" \
+                  "cfprint_t print"
+.Ft "int"
+.Fn config_detach "struct device *dev" "int flags"
+.Ft "int"
+.Fn config_detach_children "struct device *parent" "int flags"
+.Sh DESCRIPTION
+.Pp
+The
+.Fn config_attach
+function attaches a found device.
+Memory is allocated for the
+.Em softc
+structure and the driver's attach function is called according to the
+configuration table.
+If successful,
+.Fn config_attach
+returns the
+.Em softc .
+If unsuccessful, it returns
+.Dv NULL .
+.Pp
+The
+.Fn config_detach
+function is called by the parent to detach the child device.
+The second argument
+.Fa flags
+contains detachment flags:
+.Bd -literal
+#define        DETACH_FORCE    0x01    /* Force detachment; hardware gone */
+#define        DETACH_QUIET    0x02    /* Don't print a notice */
+.Ed
+.Sh CONTEXT
+.Fn config_detach
+is always called from process context, allowing
+.Xr tsleep 9
+to be called while the device detaches itself (to deal with processes
+which have a device open).
+.Sh RETURN VALUES
+.Fn config_detach
+returns zero if successful and an error code otherwise.
+.Sh SEE ALSO
+.Xr config_found 9