bsd_device
dev = kmalloc(sizeof(struct bsd_device), M_BUS, M_INTWAIT | M_ZERO);
TAILQ_HEAD(,bsd_device) bus_data_devices;
typedef struct bsd_device *device_t;
TAILQ_ENTRY(bsd_device) link; /* list of devices in parent */
TAILQ_ENTRY(bsd_device) devlink; /* global device list membership */
typedef TAILQ_HEAD(device_list, bsd_device) device_list_t;