Lines Matching defs:cio
693 pci_conf_io_init(struct pci_conf_io *cio, caddr_t data, u_long cmd)
704 *cio = *(struct pci_conf_io *)data;
713 cio->pat_buf_len = cio32->pat_buf_len;
714 cio->num_patterns = cio32->num_patterns;
715 cio->patterns = (void *)(uintptr_t)cio32->patterns;
716 cio->match_buf_len = cio32->match_buf_len;
717 cio->num_matches = cio32->num_matches;
718 cio->matches = (void *)(uintptr_t)cio32->matches;
719 cio->offset = cio32->offset;
720 cio->generation = cio32->generation;
721 cio->status = cio32->status;
732 pci_conf_io_update_data(const struct pci_conf_io *cio, caddr_t data,
746 d_cio->status = cio->status;
747 d_cio->generation = cio->generation;
748 d_cio->offset = cio->offset;
749 d_cio->num_matches = cio->num_matches;
759 cio32->status = cio->status;
760 cio32->generation = cio->generation;
761 cio32->offset = cio->offset;
762 cio32->num_matches = cio->num_matches;
1017 struct pci_conf_io *cio = NULL;
1078 cio = malloc(sizeof(struct pci_conf_io), M_TEMP,
1080 pci_conf_io_init(cio, data, cmd);
1085 cio->num_matches = 0;
1093 if ((cio->offset != 0)
1094 && (cio->generation != pci_generation)){
1095 cio->status = PCI_GETCONF_LIST_CHANGED;
1104 if (cio->offset >= pci_numdevs) {
1105 cio->status = PCI_GETCONF_LAST_DEVICE;
1120 iolen = min(cio->match_buf_len - (cio->match_buf_len % confsz),
1133 if ((cio->num_patterns > 0) && (cio->num_patterns < pci_numdevs)
1134 && (cio->pat_buf_len > 0)) {
1148 if (cio->num_patterns * pci_match_conf_size(cmd) !=
1149 cio->pat_buf_len) {
1151 cio->status = PCI_GETCONF_ERROR;
1159 pattern_buf = malloc(cio->pat_buf_len, M_TEMP,
1161 error = copyin(cio->patterns, pattern_buf,
1162 cio->pat_buf_len);
1167 num_patterns = cio->num_patterns;
1168 } else if ((cio->num_patterns > 0)
1169 || (cio->pat_buf_len > 0)) {
1173 cio->status = PCI_GETCONF_ERROR;
1182 for (cio->num_matches = 0, i = 0,
1186 if (i < cio->offset)
1215 if (cio->num_matches >= ionum) {
1222 (caddr_t)cio->matches +
1223 confsz * cio->num_matches, confsz);
1226 cio->num_matches++;
1234 cio->offset = i;
1240 cio->generation = pci_generation;
1249 cio->status = PCI_GETCONF_LAST_DEVICE;
1251 cio->status = PCI_GETCONF_MORE_DEVS;
1254 pci_conf_io_update_data(cio, data, cmd);
1255 free(cio, M_TEMP);