On Sun, Aug 07, 2016 at 10:50:49PM -0600, Theo de Raadt wrote:
> Your diff also contained:
> 
> -.Fn config_detach "struct device *dev" "int flags"
> +.Fn config_detach "struct device *dev"

Argh! I had initially given config_deactivate() a flags parameter,
realized it lacked one in the code, and must have also accidently
removed it from _detach() accidently. Patch below removes this error.
Page also uploaded for convenience:

http://ce.gl/config_attach.9.txt

> I think you are reading NetBSD?

I have not used nor even tried any other BSDs.

Index: config_attach.9
===================================================================
RCS file: /cvs/src/share/man/man9/config_attach.9,v
retrieving revision 1.3
diff -u -p -r1.3 config_attach.9
--- config_attach.9     5 Dec 2014 16:55:53 -0000       1.3
+++ config_attach.9     8 Aug 2016 05:31:34 -0000
@@ -34,7 +34,8 @@
 .Sh NAME
 .Nm config_attach ,
 .Nm config_detach ,
-.Nm config_detach_children
+.Nm config_detach_children ,
+.Nm config_deactivate
 .Nd attach and detach devices
 .Sh SYNOPSIS
 .In sys/param.h
@@ -46,6 +47,8 @@
 .Fn config_detach "struct device *dev" "int flags"
 .Ft "int"
 .Fn config_detach_children "struct device *parent" "int flags"
+.Ft "int"
+.Fn config_deactivate "struct device *dev"
 .Sh DESCRIPTION
 The
 .Fn config_attach
@@ -71,6 +74,21 @@ contains detachment flags:
 #define        DETACH_FORCE    0x01    /* Force detachment; hardware
gone */
 #define        DETACH_QUIET    0x02    /* Don't print a notice */
 .Ed
+.Pp
+The
+.Fn config_deactivate
+function is called by the parent to change the child device's
operational state
+by calling the driver's activate function with a
+.Fa flags
+argument describing the targeted operational state:
+.Bd -literal
+#define        DVACT_DEACTIVATE        1       /* deactivate the device
*/
+#define        DVACT_QUIESCE           2       /* warn the device about
suspend */
+#define        DVACT_SUSPEND           3       /* suspend the device */
+#define        DVACT_RESUME            4       /* resume the device */
+#define        DVACT_WAKEUP            5       /* tell device to
recover after resume */
+#define        DVACT_POWERDOWN         6       /* power device down */
+.Ed
 .Sh CONTEXT
 .Fn config_detach
 is always called from process context, allowing
@@ -79,6 +97,8 @@ to be called while the device detaches i
 which have a device open).
 .Sh RETURN VALUES
 .Fn config_detach
-returns zero if successful and an error code otherwise.
+and
+.Fn config_deactivate
+return zero if successful and an error code otherwise.
 .Sh SEE ALSO
 .Xr config_found 9

Reply via email to