| 200 | DRIVER_MODULE(ppt, pci, ppt_driver, ppt_devclass, NULL, NULL); |
| 201 | |
| 202 | static int |
| 203 | ppt_find(struct vm *vm, int bus, int slot, int func, struct pptdev **pptp) |
| 204 | { |
| 205 | device_t dev; |
| 206 | struct pptdev *ppt; |
| 207 | int b, s, f; |
| 208 | |
| 209 | TAILQ_FOREACH(ppt, &pptdev_list, next) { |
| 210 | dev = ppt->dev; |
| 211 | b = pci_get_bus(dev); |
| 212 | s = pci_get_slot(dev); |
| 213 | f = pci_get_function(dev); |
| 214 | if (bus == b && slot == s && func == f) |
| 215 | break; |
| 216 | } |
| 217 | |
| 218 | if (ppt == NULL) |
| 219 | return (ENOENT); |
| 220 | if (ppt->vm != vm) /* Make sure we own this device */ |
| 221 | return (EBUSY); |
| 222 | *pptp = ppt; |
| 223 | return (0); |
| 224 | } |
| 225 | |
| 226 | static void |
| 227 | ppt_unmap_mmio(struct vm *vm, struct pptdev *ppt) |
no outgoing calls
no test coverage detected