i2csim
i2csim_io_request(&i2csim, ctrl, port, req, NULL);
i2csim_io_request(&i2csim, ctrl, port, NULL, req);
i2csim_t *sim = &i2csim;
i2csim_t *sim = &i2csim;
i2csim_t *sim = &i2csim;
i2csim_t *sim = &i2csim;
VERIFY3P(i2csim.sim_dip, ==, NULL);
i2csim.sim_dip = dip;
mutex_init(&i2csim.sim_mutex, NULL, MUTEX_DRIVER, NULL);
cv_init(&i2csim.sim_cv, NULL, CV_DRIVER, NULL);
if (ddi_create_minor_node(i2csim.sim_dip, "ctrl", S_IFCHR, 0,
dev_err(i2csim.sim_dip, CE_WARN, "failed to allocate "
reg->ic_dip = i2csim.sim_dip;
ret = i2c_ctrl_register(reg, &i2csim.sim_hdls[i]);
dev_err(i2csim.sim_dip, CE_WARN, "failed to register "
(void) i2csim_unregister(&i2csim, false);
i2csim_cleanup(&i2csim);
VERIFY3P(i2csim.sim_dip, !=, NULL);
*outp = i2csim.sim_dip;
VERIFY3P(i2csim.sim_dip, !=, NULL);
*outp = i2csim.sim_dip;
*outp = (void *)(uintptr_t)ddi_get_instance(i2csim.sim_dip);
VERIFY3P(dip, ==, i2csim.sim_dip);
if (!i2csim_unregister(&i2csim, true)) {
i2csim_cleanup(&i2csim);
VERIFY3P(i2csim.sim_dip, ==, NULL);
i2csim_t i2csim;