90 0, /* refcnt */
91 tcli_info, /* getinfo */
92 nulldev, /* identify */
93 nulldev, /* probe */
94 tcli_attach, /* attach */
95 tcli_detach, /* detach */
96 nodev, /* reset */
97 &tcli_cb_ops, /* driver ops */
98 (struct bus_ops *)0, /* bus ops */
99 NULL, /* power */
100 ddi_quiesce_not_needed, /* quiesce */
101 };
102
103 static struct modldrv modldrv = {
104 &mod_driverops,
105 "vhci client test driver",
106 &tcli_ops
107 };
108
109 static struct modlinkage modlinkage = {
110 MODREV_1, &modldrv, NULL
111 };
112
113 int
114 _init(void)
115 {
116 int e;
117
118 if ((e = ddi_soft_state_init(&dstates,
119 sizeof (struct dstate), 0)) != 0) {
120 return (e);
121 }
122
123 if ((e = mod_install(&modlinkage)) != 0) {
124 ddi_soft_state_fini(&dstates);
125 }
126
127 return (e);
128 }
129
130 int
|
90 0, /* refcnt */
91 tcli_info, /* getinfo */
92 nulldev, /* identify */
93 nulldev, /* probe */
94 tcli_attach, /* attach */
95 tcli_detach, /* detach */
96 nodev, /* reset */
97 &tcli_cb_ops, /* driver ops */
98 (struct bus_ops *)0, /* bus ops */
99 NULL, /* power */
100 ddi_quiesce_not_needed, /* quiesce */
101 };
102
103 static struct modldrv modldrv = {
104 &mod_driverops,
105 "vhci client test driver",
106 &tcli_ops
107 };
108
109 static struct modlinkage modlinkage = {
110 MODREV_1, { &modldrv, NULL }
111 };
112
113 int
114 _init(void)
115 {
116 int e;
117
118 if ((e = ddi_soft_state_init(&dstates,
119 sizeof (struct dstate), 0)) != 0) {
120 return (e);
121 }
122
123 if ((e = mod_install(&modlinkage)) != 0) {
124 ddi_soft_state_fini(&dstates);
125 }
126
127 return (e);
128 }
129
130 int
|