iommulib_ops
iommulib_ops_t *iommulib_ops;
iommulib_ops = kmem_zalloc(sizeof (iommulib_ops_t), KM_SLEEP);
*iommulib_ops = amd_iommulib_ops;
iommulib_ops->ilops_data = (void *)iommu;
iommu->aiomt_iommulib_ops = iommulib_ops;
if (iommulib_iommu_register(dip, iommulib_ops, &handle)
kmem_free(iommulib_ops, sizeof (iommulib_ops_t));
struct iommulib_ops amd_iommulib_ops = {
iommulib_ops_t *iommulib_ops;
iommulib_ops = kmem_alloc(sizeof (iommulib_ops_t), KM_SLEEP);
*iommulib_ops = immulib_ops;
iommulib_ops->ilops_data = (void *)immu;
(void) iommulib_iommu_register(immu->immu_dip, iommulib_ops,
struct iommulib_ops immulib_ops = {
extern struct iommulib_ops immulib_ops;