Lines Matching refs:di

62     ET6000DeviceInfo di[MAX_DEVICES]; /* device specific stuff */
74 static status_t et6000MapDevice(ET6000DeviceInfo *di);
75 static void et6000UnmapDevice(ET6000DeviceInfo *di);
168 ET6000DeviceInfo *di = pd->di;
172 ((*pci_bus->get_nth_pci_info)(pciIndex, &(di->pcii)) == B_NO_ERROR))
176 ddprintf(("ET6000: checking pci index %ld, device 0x%04x/0x%04x\n", pciIndex, di->pcii.vendor_id, di->pcii.device_id));
179 if (supportedDevices[vendor].vendor == di->pcii.vendor_id) {
184 if (*devices == di->pcii.device_id) {
186 sprintf(di->name, "graphics/%04X_%04X_%02X%02X%02X",
187 di->pcii.vendor_id, di->pcii.device_id,
188 di->pcii.bus, di->pcii.device, di->pcii.function);
189 ddprintf(("ET6000: making /dev/%s\n", di->name));
191 pd->deviceNames[count] = di->name;
193 di->isOpen = 0;
195 di->sharedArea = -1;
197 di->si = NULL;
199 di++;
278 ET6000DeviceInfo *di = (ET6000DeviceInfo *)data;
279 ET6000SharedInfo *si = di->si;
316 di->interrupt_count++;
367 static status_t et6000MapDevice(ET6000DeviceInfo *di) {
369 ET6000SharedInfo *si = di->si;
371 pci_info *pcii = &(di->pcii);
384 si->pciConfigSpace = (uint16)di->pcii.u.h0.base_registers[1];
387 di->pcii.vendor_id, di->pcii.device_id,
388 di->pcii.bus, di->pcii.device, di->pcii.function);
398 di->pcii.u.h0.base_registers[0],
399 di->pcii.u.h0.base_register_sizes[0],
410 (void *) di->pcii.u.h0.base_registers_pci[0];
418 static void et6000UnmapDevice(ET6000DeviceInfo *di) {
419 ET6000SharedInfo *si = di->si;
421 ddprintf(("et6000UnmapDevice(%08lx) begins...\n", (uint32)di));
437 ET6000DeviceInfo *di;
453 di = &(pd->di[index]);
459 if (di->isOpen) {
465 di->pcii.vendor_id, di->pcii.device_id,
466 di->pcii.bus, di->pcii.device, di->pcii.function);
468 di->sharedArea = create_area(shared_name, (void **)&(di->si), B_ANY_KERNEL_ADDRESS, ((sizeof(ET6000SharedInfo) + (B_PAGE_SIZE - 1)) & ~(B_PAGE_SIZE - 1)), B_FULL_LOCK,
470 if (di->sharedArea < 0) {
472 result = di->sharedArea;
477 si = di->si;
480 si->vendor_id = di->pcii.vendor_id;
481 si->device_id = di->pcii.device_id;
482 si->revision = di->pcii.revision;
506 result = et6000MapDevice(di);
520 result = install_io_interrupt_handler(di->pcii.u.h0.interrupt_line,
521 et6000Interrupt, (void *)di, 0);
528 di->isOpen++;
531 *cookie = di;
536 et6000UnmapDevice(di);
540 delete_area(di->sharedArea);
541 di->sharedArea = -1;
542 di->si = NULL;
587 ET6000DeviceInfo *di = (ET6000DeviceInfo *)dev;
588 ET6000SharedInfo *si = di->si;
595 if (di->isOpen > 1)
604 remove_io_interrupt_handler(di->pcii.u.h0.interrupt_line, et6000Interrupt, di);
607 et6000UnmapDevice(di);
610 delete_area(di->sharedArea);
611 di->sharedArea = -1;
612 di->si = NULL;
616 di->isOpen--;
628 ET6000DeviceInfo *di = (ET6000DeviceInfo *)dev;
644 gpd->sharedInfoArea = di->sharedArea;
652 pci_info *pcii = &(di->pcii);
661 pci_info *pcii = &(di->pcii);
670 strncpy(dn->name, di->name, B_OS_NAME_LENGTH);
701 ET6000DeviceInfo *di = &(pd->di[i]);
702 uint16 device_id = di->pcii.device_id;
703 ET6000SharedInfo *si = di->si;
705 kprintf(" interrupt count: %ld\n", di->interrupt_count);