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 BUS_GENERIC_PRINT_CHILD 9 31.Os 32.Sh NAME 33.Nm bus_generic_print_child , 34.Nm bus_print_child_domain , 35.Nm bus_print_child_footer , 36.Nm bus_print_child_header 37.Nd generic implementation of 38.Xr BUS_PRINT_CHILD 9 39.Sh SYNOPSIS 40.In sys/param.h 41.In sys/bus.h 42.Ft int 43.Fn bus_generic_print_child "device_t dev" "device_t child" 44.Ft int 45.Fn bus_print_child_domain "device_t dev" "device_t child" 46.Ft int 47.Fn bus_print_child_footer "device_t dev" "device_t child" 48.Ft int 49.Fn bus_print_child_header "device_t dev" "device_t child" 50.Sh DESCRIPTION 51.Fn bus_generic_print_child 52prints out the default device announcement message. 53Given device 54.Sq foo0 55on bus 56.Sq bar0 57where foo0 has the description 58.Dq FooCard 1234 59and is associated with the NUMA domain 1, 60the 61following would be printed: 62.Bd -literal -offset indent 63foo0: <FooCard 1234> numa-domain 1 on bar0 64.Ed 65.Pp 66.Fn bus_generic_print_child 67calls the three helper functions 68.Fn bus_print_child_header , 69.Fn bus_print_child_domain , 70and 71.Fn bus_print_child_footer . 72.Pp 73.Fn bus_print_child_header 74outputs the device name and unit followed by the device description 75in angle brackets 76.Po 77.Dq foo0: <FooCard 1234> 78.Pc . 79.Pp 80.Fn bus_print_child_domain 81outputs 82.Dq \& numa-domain 83followed by the domain number if 84.Fn bus_get_domain 85returns a valid domain for the device 86.Po 87.Dq numa-domain 1 88.Pc . 89If 90.Fa dev 91is not associated witha valid domain, 92nothing is output. 93.Pp 94.Fn bus_print_child_footer 95outputs the string 96.Dq \& on 97followed by the parent device's name and unit 98.Po 99.Dq \& on bar0 100.Pc . 101.Pp 102These functions can be used to implement 103.Xr BUS_PRINT_CHILD 9 104in a bus driver if 105.Fn bus_generic_print_child 106is not sufficient. 107.Sh RETURN VALUES 108The number of characters output. 109.Sh SEE ALSO 110.Xr BUS_PRINT_CHILD 9 , 111.Xr device 9 112.Sh AUTHORS 113This manual page was written by 114.An Doug Rabson . 115