Provided by: freebsd-manpages_12.2-1_all 

NAME
BUS_READ_IVAR, BUS_WRITE_IVAR — manipulate bus-specific device instance variables
SYNOPSIS
#include <sys/param.h>
#include <sys/bus.h>
int
BUS_READ_IVAR(device_t dev, device_t child, int index, uintptr_t *result);
int
BUS_WRITE_IVAR(device_t dev, device_t child, int index, uintptr_t value);
DESCRIPTION
These two methods manage a bus specific set of instance variables of a child device. The intention is
that each different type of bus defines a set of appropriate instance variables (such as ports and irqs
for ISA bus etc.)
This information could be given to the child device as a struct but that makes it hard for a bus to add
or remove variables without forcing an edit and recompile for all drivers which may not be possible for
vendor supplied binary drivers.
RETURN VALUES
Zero is returned on success, otherwise an appropriate error is returned.
SEE ALSO
device(9), driver(9)
AUTHORS
This manual page was written by Doug Rabson.
Debian June 16, 1998 BUS_READ_IVAR(9)