Lines Matching refs:func

81 int ibmphp_configure_card (struct pci_func *func, u8 slotno)  in ibmphp_configure_card()  argument
95 debug ("inside configure_card, func->busno = %x\n", func->busno); in ibmphp_configure_card()
97 device = func->device; in ibmphp_configure_card()
98 cur_func = func; in ibmphp_configure_card()
198 func->bus = 1; /* To indicate to the unconfigure function that this is a PPB */ in ibmphp_configure_card()
206 if (func->devices[i]) { in ibmphp_configure_card()
227 func->bus = 1; /* To indicate to the unconfigure function that this is a PPB */ in ibmphp_configure_card()
268 func->bus = 1; /* To indicate to the unconfigure function that this is a PPB */ in ibmphp_configure_card()
279 if (func->devices[i]) { in ibmphp_configure_card()
302 func->bus = 1; /* To indicate to the unconfigure function that this is a PPB */ in ibmphp_configure_card()
348 static int configure_device (struct pci_func *func) in configure_device() argument
371 devfn = PCI_DEVFN(func->device, func->function); in configure_device()
372 ibmphp_pci_bus->number = func->busno; in configure_device()
395 debug ("Device %x BAR %d wants %x\n", func->device, count, bar[count]); in configure_device()
413 io[count]->busno = func->busno; in configure_device()
414 io[count]->devfunc = PCI_DEVFN(func->device, func->function); in configure_device()
418 func->io[count] = io[count]; in configure_device()
421 func->busno, func->device, func->function, len[count]); in configure_device()
425 pci_bus_write_config_dword (ibmphp_pci_bus, devfn, address[count], func->io[count]->start); in configure_device()
428 debug ("b4 writing, the IO address is %x\n", func->io[count]->start); in configure_device()
450 pfmem[count]->busno = func->busno; in configure_device()
451 pfmem[count]->devfunc = PCI_DEVFN(func->device, in configure_device()
452 func->function); in configure_device()
457 func->pfmem[count] = pfmem[count]; in configure_device()
477 func->pfmem[count] = pfmem[count]; in configure_device()
480 func->busno, func->device, len[count]); in configure_device()
487 pci_bus_write_config_dword (ibmphp_pci_bus, devfn, address[count], func->pfmem[count]->start); in configure_device()
490 debug ("b4 writing, start address is %x\n", func->pfmem[count]->start); in configure_device()
516 mem[count]->busno = func->busno; in configure_device()
517 mem[count]->devfunc = PCI_DEVFN(func->device, in configure_device()
518 func->function); in configure_device()
522 func->mem[count] = mem[count]; in configure_device()
525 func->busno, func->device, len[count]); in configure_device()
529 pci_bus_write_config_dword (ibmphp_pci_bus, devfn, address[count], func->mem[count]->start); in configure_device()
531 debug ("b4 writing, start address is %x\n", func->mem[count]->start); in configure_device()
547 func->bus = 0; /* To indicate that this is not a PPB */ in configure_device()
550 pci_bus_write_config_byte (ibmphp_pci_bus, devfn, PCI_INTERRUPT_LINE, func->irq[irq - 1]); in configure_device()
595 struct pci_func *func = *func_passed; in configure_bridge() local
602 devfn = PCI_DEVFN(func->function, func->device); in configure_bridge()
603 ibmphp_pci_bus->number = func->busno; in configure_bridge()
609 pci_bus_write_config_byte (ibmphp_pci_bus, devfn, PCI_PRIMARY_BUS, func->busno); in configure_bridge()
617 sec_number = find_sec_number (func->busno, slotno); in configure_bridge()
624 debug ("AFTER FIND_SEC_NUMBER, func->busno IS %x\n", func->busno); in configure_bridge()
644 debug ("func->busno is %x\n", func->busno); in configure_bridge()
682 bus_io[count]->busno = func->busno; in configure_bridge()
683 bus_io[count]->devfunc = PCI_DEVFN(func->device, in configure_bridge()
684 func->function); in configure_bridge()
688 func->io[count] = bus_io[count]; in configure_bridge()
691 func->busno, func->device, len[count]); in configure_bridge()
696 pci_bus_write_config_dword (ibmphp_pci_bus, devfn, address[count], func->io[count]->start); in configure_bridge()
714 bus_pfmem[count]->busno = func->busno; in configure_bridge()
715 bus_pfmem[count]->devfunc = PCI_DEVFN(func->device, in configure_bridge()
716 func->function); in configure_bridge()
721 func->pfmem[count] = bus_pfmem[count]; in configure_bridge()
738 func->pfmem[count] = bus_pfmem[count]; in configure_bridge()
741 func->busno, func->device, len[count]); in configure_bridge()
748 pci_bus_write_config_dword (ibmphp_pci_bus, devfn, address[count], func->pfmem[count]->start); in configure_bridge()
771 bus_mem[count]->busno = func->busno; in configure_bridge()
772 bus_mem[count]->devfunc = PCI_DEVFN(func->device, in configure_bridge()
773 func->function); in configure_bridge()
777 func->mem[count] = bus_mem[count]; in configure_bridge()
780 func->busno, func->device, len[count]); in configure_bridge()
785 pci_bus_write_config_dword (ibmphp_pci_bus, devfn, address[count], func->mem[count]->start); in configure_bridge()
799 amount_needed = scan_behind_bridge (func, sec_number); in configure_bridge()
803 ibmphp_pci_bus->number = func->busno; in configure_bridge()
816 func->io[count] = NULL; in configure_bridge()
819 func->pfmem[count] = NULL; in configure_bridge()
822 func->mem[count] = NULL; in configure_bridge()
842 io->busno = func->busno; in configure_bridge()
843 io->devfunc = PCI_DEVFN(func->device, func->function); in configure_bridge()
864 mem->busno = func->busno; in configure_bridge()
865 mem->devfunc = PCI_DEVFN(func->device, func->function); in configure_bridge()
886 pfmem->busno = func->busno; in configure_bridge()
887 pfmem->devfunc = PCI_DEVFN(func->device, func->function); in configure_bridge()
933 rc = add_new_bus (bus, io, mem, pfmem, func->busno); in configure_bridge()
943 ibmphp_remove_bus (bus, func->busno); in configure_bridge()
1021 pci_bus_write_config_byte (ibmphp_pci_bus, devfn, PCI_INTERRUPT_LINE, func->irq[irq - 1]); in configure_bridge()
1033 func->devices[i] = 1; in configure_bridge()
1036 func->bus = 1; /* For unconfiguring, to indicate it's PPB */ in configure_bridge()
1037 func_passed = &func; in configure_bridge()
1038 debug ("func->busno b4 returning is %x\n", func->busno); in configure_bridge()
1060 func->io[i] = NULL; in configure_bridge()
1063 func->pfmem[i] = NULL; in configure_bridge()
1066 func->mem[i] = NULL; in configure_bridge()
1078 static struct res_needed *scan_behind_bridge (struct pci_func *func, u8 busno) in scan_behind_bridge() argument
1581 if (sl->func) { in ibmphp_unconfigure_card()
1582 cur_func = sl->func; in ibmphp_unconfigure_card()
1619 sl->func = NULL; in ibmphp_unconfigure_card()