249 #define ZC_CONF_FLAG (D_MP | D_MTQPAIR | D_MTOUTPERIM | D_MTOCEXCL)
250
251 /*
252 * this will define (struct cb_ops cb_zc_ops) and (struct dev_ops zc_ops)
253 */
254 DDI_DEFINE_STREAM_OPS(zc_ops, nulldev, nulldev, zc_attach, zc_detach, nodev, \
255 zc_getinfo, ZC_CONF_FLAG, &zc_tab_info, ddi_quiesce_not_needed);
256
257 /*
258 * Module linkage information for the kernel.
259 */
260
261 static struct modldrv modldrv = {
262 &mod_driverops, /* Type of module (this is a pseudo driver) */
263 "Zone console driver", /* description of module */
264 &zc_ops /* driver ops */
265 };
266
267 static struct modlinkage modlinkage = {
268 MODREV_1,
269 &modldrv,
270 NULL
271 };
272
273 typedef struct zc_state {
274 dev_info_t *zc_devinfo;
275 queue_t *zc_master_rdq;
276 queue_t *zc_slave_rdq;
277 vnode_t *zc_slave_vnode;
278 int zc_state;
279 } zc_state_t;
280
281 #define ZC_STATE_MOPEN 0x01
282 #define ZC_STATE_SOPEN 0x02
283
284 static void *zc_soft_state;
285
286 /*
287 * List of STREAMS modules that should be pushed onto every slave instance.
288 */
289 static char *zcons_mods[] = {
290 "ptem",
|
249 #define ZC_CONF_FLAG (D_MP | D_MTQPAIR | D_MTOUTPERIM | D_MTOCEXCL)
250
251 /*
252 * this will define (struct cb_ops cb_zc_ops) and (struct dev_ops zc_ops)
253 */
254 DDI_DEFINE_STREAM_OPS(zc_ops, nulldev, nulldev, zc_attach, zc_detach, nodev, \
255 zc_getinfo, ZC_CONF_FLAG, &zc_tab_info, ddi_quiesce_not_needed);
256
257 /*
258 * Module linkage information for the kernel.
259 */
260
261 static struct modldrv modldrv = {
262 &mod_driverops, /* Type of module (this is a pseudo driver) */
263 "Zone console driver", /* description of module */
264 &zc_ops /* driver ops */
265 };
266
267 static struct modlinkage modlinkage = {
268 MODREV_1,
269 { &modldrv,
270 NULL }
271 };
272
273 typedef struct zc_state {
274 dev_info_t *zc_devinfo;
275 queue_t *zc_master_rdq;
276 queue_t *zc_slave_rdq;
277 vnode_t *zc_slave_vnode;
278 int zc_state;
279 } zc_state_t;
280
281 #define ZC_STATE_MOPEN 0x01
282 #define ZC_STATE_SOPEN 0x02
283
284 static void *zc_soft_state;
285
286 /*
287 * List of STREAMS modules that should be pushed onto every slave instance.
288 */
289 static char *zcons_mods[] = {
290 "ptem",
|