1.\" -*- nroff -*- 2.\" 3.\" Copyright (c) 1998 Doug Rabson 4.\" 5.\" All rights reserved. 6.\" 7.\" This program is free software. 8.\" 9.\" Redistribution and use in source and binary forms, with or without 10.\" modification, are permitted provided that the following conditions 11.\" are met: 12.\" 1. Redistributions of source code must retain the above copyright 13.\" notice, this list of conditions and the following disclaimer. 14.\" 2. Redistributions in binary form must reproduce the above copyright 15.\" notice, this list of conditions and the following disclaimer in the 16.\" documentation and/or other materials provided with the distribution. 17.\" 18.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR 19.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 20.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, 22.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 23.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 27.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28.\" 29.Dd February 5, 2025 30.Dt DEVICE_DELETE_CHILD 9 31.Os 32.Sh NAME 33.Nm device_delete_child 34.Nd delete a child from a device 35.Sh SYNOPSIS 36.In sys/param.h 37.In sys/bus.h 38.Ft int 39.Fn device_delete_child "device_t dev" "device_t child" 40.Sh DESCRIPTION 41The specified device is removed from 42.Fa dev 43and deleted. 44If the device is currently attached, it is first detached via 45.Xr device_detach 9 . 46If 47.Fn device_detach 48fails, 49its error value is returned. 50Otherwise, 51all descendant devices of 52.Fa child 53are deleted and zero is returned. 54.Pp 55The 56.Xr BUS_CHILD_DELETED 9 57method is invoked for each device that is deleted. 58This permits the parent device's driver to tear down any state associated 59with child devices such as ivars. 60.Sh RETURN VALUES 61Zero is returned on success, otherwise an error is returned. 62.Sh SEE ALSO 63.Xr BUS_CHILD_DELETED 9 , 64.Xr device_add_child 9 65.Sh AUTHORS 66This manual page was written by 67.An Doug Rabson . 68