Lines Matching defs:ioc
292 sfxge_vpd_ioctl(struct sfxge_softc *sc, sfxge_ioc_t *ioc)
297 switch (ioc->u.vpd.op) {
299 value.evv_tag = ioc->u.vpd.tag;
300 value.evv_keyword = ioc->u.vpd.keyword;
304 ioc->u.vpd.len = MIN(ioc->u.vpd.len, value.evv_length);
305 if (ioc->u.vpd.payload != 0) {
306 rc = copyout(value.evv_value, ioc->u.vpd.payload,
307 ioc->u.vpd.len);
311 if (ioc->u.vpd.len > sizeof(value.evv_value))
313 value.evv_tag = ioc->u.vpd.tag;
314 value.evv_keyword = ioc->u.vpd.keyword;
315 value.evv_length = ioc->u.vpd.len;
316 rc = copyin(ioc->u.vpd.payload, value.evv_value, value.evv_length);
336 sfxge_private_ioctl(struct sfxge_softc *sc, sfxge_ioc_t *ioc)
338 switch (ioc->op) {
340 return (sfxge_mcdi_ioctl(sc, ioc));
342 return (sfxge_nvram_ioctl(sc, ioc));
344 return (sfxge_vpd_ioctl(sc, ioc));
356 sfxge_ioc_t ioc;
493 error = copyin(ifr->ifr_data, &ioc, sizeof(ioc));
496 error = sfxge_private_ioctl(sc, &ioc);
498 error = copyout(&ioc, ifr->ifr_data, sizeof(ioc));