300 ddi_no_info,
301 nulldev,
302 nulldev,
303 rootnex_attach,
304 rootnex_detach,
305 nulldev,
306 &rootnex_cb_ops,
307 &rootnex_bus_ops,
308 NULL,
309 rootnex_quiesce, /* quiesce */
310 };
311
312 static struct modldrv rootnex_modldrv = {
313 &mod_driverops,
314 "i86pc root nexus",
315 &rootnex_ops
316 };
317
318 static struct modlinkage rootnex_modlinkage = {
319 MODREV_1,
320 (void *)&rootnex_modldrv,
321 NULL
322 };
323
324 #if defined(__amd64) && !defined(__xpv)
325 static iommulib_nexops_t iommulib_nexops = {
326 IOMMU_NEXOPS_VERSION,
327 "Rootnex IOMMU ops Vers 1.1",
328 NULL,
329 rootnex_coredma_allochdl,
330 rootnex_coredma_freehdl,
331 rootnex_coredma_bindhdl,
332 rootnex_coredma_unbindhdl,
333 rootnex_coredma_reset_cookies,
334 rootnex_coredma_get_cookies,
335 rootnex_coredma_set_cookies,
336 rootnex_coredma_clear_cookies,
337 rootnex_coredma_get_sleep_flags,
338 rootnex_coredma_sync,
339 rootnex_coredma_win,
340 rootnex_coredma_hdl_setprivate,
341 rootnex_coredma_hdl_getprivate
|
300 ddi_no_info,
301 nulldev,
302 nulldev,
303 rootnex_attach,
304 rootnex_detach,
305 nulldev,
306 &rootnex_cb_ops,
307 &rootnex_bus_ops,
308 NULL,
309 rootnex_quiesce, /* quiesce */
310 };
311
312 static struct modldrv rootnex_modldrv = {
313 &mod_driverops,
314 "i86pc root nexus",
315 &rootnex_ops
316 };
317
318 static struct modlinkage rootnex_modlinkage = {
319 MODREV_1,
320 { (void *)&rootnex_modldrv, NULL }
321 };
322
323 #if defined(__amd64) && !defined(__xpv)
324 static iommulib_nexops_t iommulib_nexops = {
325 IOMMU_NEXOPS_VERSION,
326 "Rootnex IOMMU ops Vers 1.1",
327 NULL,
328 rootnex_coredma_allochdl,
329 rootnex_coredma_freehdl,
330 rootnex_coredma_bindhdl,
331 rootnex_coredma_unbindhdl,
332 rootnex_coredma_reset_cookies,
333 rootnex_coredma_get_cookies,
334 rootnex_coredma_set_cookies,
335 rootnex_coredma_clear_cookies,
336 rootnex_coredma_get_sleep_flags,
337 rootnex_coredma_sync,
338 rootnex_coredma_win,
339 rootnex_coredma_hdl_setprivate,
340 rootnex_coredma_hdl_getprivate
|