164 nulldev, /* devo_probe - not needed */
165 usb_as_attach, /* devo_attach */
166 usb_as_detach, /* devo_detach */
167 nodev, /* devo_reset */
168 &usb_as_cb_ops, /* devi_cb_ops */
169 NULL, /* devo_busb_as_ops */
170 usb_as_power, /* devo_power */
171 ddi_quiesce_not_needed, /* devo_quiesce */
172 };
173
174 /* Linkage structure for loadable drivers */
175 static struct modldrv usb_as_modldrv = {
176 &mod_driverops, /* drv_modops */
177 "USB Audio Streaming Driver", /* drv_linkinfo */
178 &usb_as_dev_ops /* drv_dev_ops */
179 };
180
181 /* Module linkage structure */
182 static struct modlinkage usb_as_modlinkage = {
183 MODREV_1, /* ml_rev */
184 (void *)&usb_as_modldrv, /* ml_linkage */
185 NULL /* NULL terminates the list */
186 };
187
188
189 static usb_event_t usb_as_events = {
190 usb_as_disconnect_event_cb,
191 usb_as_reconnect_event_cb,
192 NULL, NULL
193 };
194
195 /*
196 * Mixer registration Management
197 * use defaults as much as possible
198 */
199
200 _NOTE(SCHEME_PROTECTS_DATA("unique per call", mblk_t))
201 _NOTE(SCHEME_PROTECTS_DATA("unique per call", usb_isoc_req_t))
202 _NOTE(SCHEME_PROTECTS_DATA("unique per call", usb_isoc_pkt_descr))
203
204 int
205 _init(void)
|
164 nulldev, /* devo_probe - not needed */
165 usb_as_attach, /* devo_attach */
166 usb_as_detach, /* devo_detach */
167 nodev, /* devo_reset */
168 &usb_as_cb_ops, /* devi_cb_ops */
169 NULL, /* devo_busb_as_ops */
170 usb_as_power, /* devo_power */
171 ddi_quiesce_not_needed, /* devo_quiesce */
172 };
173
174 /* Linkage structure for loadable drivers */
175 static struct modldrv usb_as_modldrv = {
176 &mod_driverops, /* drv_modops */
177 "USB Audio Streaming Driver", /* drv_linkinfo */
178 &usb_as_dev_ops /* drv_dev_ops */
179 };
180
181 /* Module linkage structure */
182 static struct modlinkage usb_as_modlinkage = {
183 MODREV_1, /* ml_rev */
184 { (void *)&usb_as_modldrv, NULL } /* ml_linkage */
185 };
186
187
188 static usb_event_t usb_as_events = {
189 usb_as_disconnect_event_cb,
190 usb_as_reconnect_event_cb,
191 NULL, NULL
192 };
193
194 /*
195 * Mixer registration Management
196 * use defaults as much as possible
197 */
198
199 _NOTE(SCHEME_PROTECTS_DATA("unique per call", mblk_t))
200 _NOTE(SCHEME_PROTECTS_DATA("unique per call", usb_isoc_req_t))
201 _NOTE(SCHEME_PROTECTS_DATA("unique per call", usb_isoc_pkt_descr))
202
203 int
204 _init(void)
|