Lines Matching full:count

343 	int count;  in configure_device()  local
356 for (count = 0; address[count]; count++) { /* for 6 BARs */ in configure_device()
363 PCI_BASE_ADDRESS_0 + 4 * count, &tmp); in configure_device()
366 PCI_BASE_ADDRESS_0 + 4 * count, 0xFFFFFFFD); in configure_device()
369 PCI_BASE_ADDRESS_0 + 4 * count, 0xFFFFFFFF); in configure_device()
371 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFF); in configure_device()
372 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]); in configure_device()
374 if (!bar[count]) /* This BAR is not implemented */ in configure_device()
377 debug("Device %x BAR %d wants %x\n", func->device, count, bar[count]); in configure_device()
379 if (bar[count] & PCI_BASE_ADDRESS_SPACE_IO) { in configure_device()
383 len[count] = bar[count] & 0xFFFFFFFC; in configure_device()
384 len[count] = ~len[count] + 1; in configure_device()
386 debug("len[count] in IO %x, count %d\n", len[count], count); in configure_device()
388 io[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL); in configure_device()
390 if (!io[count]) in configure_device()
393 io[count]->type = IO; in configure_device()
394 io[count]->busno = func->busno; in configure_device()
395 io[count]->devfunc = PCI_DEVFN(func->device, func->function); in configure_device()
396 io[count]->len = len[count]; in configure_device()
397 if (ibmphp_check_resource(io[count], 0) == 0) { in configure_device()
398 ibmphp_add_resource(io[count]); in configure_device()
399 func->io[count] = io[count]; in configure_device()
402 func->busno, func->device, func->function, len[count]); in configure_device()
403 kfree(io[count]); in configure_device()
406 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->io[count]->start); in configure_device()
409 debug("b4 writing, the IO address is %x\n", func->io[count]->start); in configure_device()
410 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]); in configure_device()
411 debug("after writing.... the start address is %x\n", bar[count]); in configure_device()
416 if (bar[count] & PCI_BASE_ADDRESS_MEM_PREFETCH) { in configure_device()
420 len[count] = bar[count] & 0xFFFFFFF0; in configure_device()
421 len[count] = ~len[count] + 1; in configure_device()
423 debug("len[count] in PFMEM %x, count %d\n", len[count], count); in configure_device()
425 pfmem[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL); in configure_device()
426 if (!pfmem[count]) in configure_device()
429 pfmem[count]->type = PFMEM; in configure_device()
430 pfmem[count]->busno = func->busno; in configure_device()
431 pfmem[count]->devfunc = PCI_DEVFN(func->device, in configure_device()
433 pfmem[count]->len = len[count]; in configure_device()
434 pfmem[count]->fromMem = 0; in configure_device()
435 if (ibmphp_check_resource(pfmem[count], 0) == 0) { in configure_device()
436 ibmphp_add_resource(pfmem[count]); in configure_device()
437 func->pfmem[count] = pfmem[count]; in configure_device()
441 kfree(pfmem[count]); in configure_device()
445 mem_tmp->busno = pfmem[count]->busno; in configure_device()
446 mem_tmp->devfunc = pfmem[count]->devfunc; in configure_device()
447 mem_tmp->len = pfmem[count]->len; in configure_device()
451 pfmem[count]->fromMem = 1; in configure_device()
452 pfmem[count]->rangeno = mem_tmp->rangeno; in configure_device()
453 pfmem[count]->start = mem_tmp->start; in configure_device()
454 pfmem[count]->end = mem_tmp->end; in configure_device()
455 ibmphp_add_pfmem_from_mem(pfmem[count]); in configure_device()
456 func->pfmem[count] = pfmem[count]; in configure_device()
459 func->busno, func->device, len[count]); in configure_device()
461 kfree(pfmem[count]); in configure_device()
466 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->pfmem[count]->start); in configure_device()
469 debug("b4 writing, start address is %x\n", func->pfmem[count]->start); in configure_device()
470 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]); in configure_device()
471 debug("after writing, start address is %x\n", bar[count]); in configure_device()
474 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64) { /* takes up another dword */ in configure_device()
475 debug("inside the mem 64 case, count %d\n", count); in configure_device()
476 count += 1; in configure_device()
478 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0x00000000); in configure_device()
484 len[count] = bar[count] & 0xFFFFFFF0; in configure_device()
485 len[count] = ~len[count] + 1; in configure_device()
487 debug("len[count] in Mem %x, count %d\n", len[count], count); in configure_device()
489 mem[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL); in configure_device()
490 if (!mem[count]) in configure_device()
493 mem[count]->type = MEM; in configure_device()
494 mem[count]->busno = func->busno; in configure_device()
495 mem[count]->devfunc = PCI_DEVFN(func->device, in configure_device()
497 mem[count]->len = len[count]; in configure_device()
498 if (ibmphp_check_resource(mem[count], 0) == 0) { in configure_device()
499 ibmphp_add_resource(mem[count]); in configure_device()
500 func->mem[count] = mem[count]; in configure_device()
503 func->busno, func->device, len[count]); in configure_device()
504 kfree(mem[count]); in configure_device()
507 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->mem[count]->start); in configure_device()
509 debug("b4 writing, start address is %x\n", func->mem[count]->start); in configure_device()
510 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]); in configure_device()
511 debug("after writing, the address is %x\n", bar[count]); in configure_device()
514 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64) { in configure_device()
516 debug("inside mem 64 case, reg. mem, count %d\n", count); in configure_device()
517 count += 1; in configure_device()
519 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0x00000000); in configure_device()
546 int count; in configure_bridge() local
632 for (count = 0; address[count]; count++) { /* for 2 BARs */ in configure_bridge()
633 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFF); in configure_bridge()
634 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]); in configure_bridge()
636 if (!bar[count]) { in configure_bridge()
638 debug("so we come here then, eh?, count = %d\n", count); in configure_bridge()
641 // tmp_bar = bar[count]; in configure_bridge()
643 debug("Bar %d wants %x\n", count, bar[count]); in configure_bridge()
645 if (bar[count] & PCI_BASE_ADDRESS_SPACE_IO) { in configure_bridge()
647 len[count] = bar[count] & 0xFFFFFFFC; in configure_bridge()
648 len[count] = ~len[count] + 1; in configure_bridge()
650 debug("len[count] in IO = %x\n", len[count]); in configure_bridge()
652 bus_io[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL); in configure_bridge()
654 if (!bus_io[count]) { in configure_bridge()
658 bus_io[count]->type = IO; in configure_bridge()
659 bus_io[count]->busno = func->busno; in configure_bridge()
660 bus_io[count]->devfunc = PCI_DEVFN(func->device, in configure_bridge()
662 bus_io[count]->len = len[count]; in configure_bridge()
663 if (ibmphp_check_resource(bus_io[count], 0) == 0) { in configure_bridge()
664 ibmphp_add_resource(bus_io[count]); in configure_bridge()
665 func->io[count] = bus_io[count]; in configure_bridge()
668 func->busno, func->device, len[count]); in configure_bridge()
669 kfree(bus_io[count]); in configure_bridge()
673 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->io[count]->start); in configure_bridge()
677 if (bar[count] & PCI_BASE_ADDRESS_MEM_PREFETCH) { in configure_bridge()
679 len[count] = bar[count] & 0xFFFFFFF0; in configure_bridge()
680 len[count] = ~len[count] + 1; in configure_bridge()
682 debug("len[count] in PFMEM = %x\n", len[count]); in configure_bridge()
684 bus_pfmem[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL); in configure_bridge()
685 if (!bus_pfmem[count]) { in configure_bridge()
689 bus_pfmem[count]->type = PFMEM; in configure_bridge()
690 bus_pfmem[count]->busno = func->busno; in configure_bridge()
691 bus_pfmem[count]->devfunc = PCI_DEVFN(func->device, in configure_bridge()
693 bus_pfmem[count]->len = len[count]; in configure_bridge()
694 bus_pfmem[count]->fromMem = 0; in configure_bridge()
695 if (ibmphp_check_resource(bus_pfmem[count], 0) == 0) { in configure_bridge()
696 ibmphp_add_resource(bus_pfmem[count]); in configure_bridge()
697 func->pfmem[count] = bus_pfmem[count]; in configure_bridge()
705 mem_tmp->busno = bus_pfmem[count]->busno; in configure_bridge()
706 mem_tmp->devfunc = bus_pfmem[count]->devfunc; in configure_bridge()
707 mem_tmp->len = bus_pfmem[count]->len; in configure_bridge()
710 bus_pfmem[count]->fromMem = 1; in configure_bridge()
711 bus_pfmem[count]->rangeno = mem_tmp->rangeno; in configure_bridge()
712 ibmphp_add_pfmem_from_mem(bus_pfmem[count]); in configure_bridge()
713 func->pfmem[count] = bus_pfmem[count]; in configure_bridge()
716 func->busno, func->device, len[count]); in configure_bridge()
718 kfree(bus_pfmem[count]); in configure_bridge()
723 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->pfmem[count]->start); in configure_bridge()
725 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64) { in configure_bridge()
727 count += 1; in configure_bridge()
729 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0x00000000); in configure_bridge()
734 len[count] = bar[count] & 0xFFFFFFF0; in configure_bridge()
735 len[count] = ~len[count] + 1; in configure_bridge()
737 debug("len[count] in Memory is %x\n", len[count]); in configure_bridge()
739 bus_mem[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL); in configure_bridge()
740 if (!bus_mem[count]) { in configure_bridge()
744 bus_mem[count]->type = MEM; in configure_bridge()
745 bus_mem[count]->busno = func->busno; in configure_bridge()
746 bus_mem[count]->devfunc = PCI_DEVFN(func->device, in configure_bridge()
748 bus_mem[count]->len = len[count]; in configure_bridge()
749 if (ibmphp_check_resource(bus_mem[count], 0) == 0) { in configure_bridge()
750 ibmphp_add_resource(bus_mem[count]); in configure_bridge()
751 func->mem[count] = bus_mem[count]; in configure_bridge()
754 func->busno, func->device, len[count]); in configure_bridge()
755 kfree(bus_mem[count]); in configure_bridge()
759 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->mem[count]->start); in configure_bridge()
761 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64) { in configure_bridge()
763 count += 1; in configure_bridge()
765 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0x00000000); in configure_bridge()
786 for (count = 0; address[count]; count++) { in configure_bridge()
788 if (bus_io[count]) { in configure_bridge()
789 ibmphp_remove_resource(bus_io[count]); in configure_bridge()
790 func->io[count] = NULL; in configure_bridge()
791 } else if (bus_pfmem[count]) { in configure_bridge()
792 ibmphp_remove_resource(bus_pfmem[count]); in configure_bridge()
793 func->pfmem[count] = NULL; in configure_bridge()
794 } else if (bus_mem[count]) { in configure_bridge()
795 ibmphp_remove_resource(bus_mem[count]); in configure_bridge()
796 func->mem[count] = NULL; in configure_bridge()
1049 int count, len[6]; in scan_behind_bridge() local
1110 for (count = 0; address[count]; count++) { in scan_behind_bridge()
1113 pci_bus_read_config_byte(ibmphp_pci_bus, devfn, address[count], &tmp); in scan_behind_bridge()
1115 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFD); in scan_behind_bridge()
1117 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFF); in scan_behind_bridge()
1119 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFF); in scan_behind_bridge()
1120 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]); in scan_behind_bridge()
1122 debug("what is bar[count]? %x, count = %d\n", bar[count], count); in scan_behind_bridge()
1124 if (!bar[count]) /* This BAR is not implemented */ in scan_behind_bridge()
1127 //tmp_bar = bar[count]; in scan_behind_bridge()
1129 … debug("count %d device %x function %x wants %x resources\n", count, device, function, bar[count]); in scan_behind_bridge()
1131 if (bar[count] & PCI_BASE_ADDRESS_SPACE_IO) { in scan_behind_bridge()
1133 len[count] = bar[count] & 0xFFFFFFFC; in scan_behind_bridge()
1134 len[count] = ~len[count] + 1; in scan_behind_bridge()
1135 amount->io += len[count]; in scan_behind_bridge()
1138 if (bar[count] & PCI_BASE_ADDRESS_MEM_PREFETCH) { in scan_behind_bridge()
1140 len[count] = bar[count] & 0xFFFFFFF0; in scan_behind_bridge()
1141 len[count] = ~len[count] + 1; in scan_behind_bridge()
1142 amount->pfmem += len[count]; in scan_behind_bridge()
1143 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64) in scan_behind_bridge()
1145 count += 1; in scan_behind_bridge()
1149 len[count] = bar[count] & 0xFFFFFFF0; in scan_behind_bridge()
1150 len[count] = ~len[count] + 1; in scan_behind_bridge()
1151 amount->mem += len[count]; in scan_behind_bridge()
1152 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64) { in scan_behind_bridge()
1154 count += 1; in scan_behind_bridge()
1195 int count; in unconfigure_boot_device() local
1216 for (count = 0; address[count]; count++) { /* for 6 BARs */ in unconfigure_boot_device()
1217 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &start_address); in unconfigure_boot_device()
1221 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFF); in unconfigure_boot_device()
1222 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &size); in unconfigure_boot_device()
1223 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], start_address); in unconfigure_boot_device()
1229 debug("is this bar no implemented?, count = %d\n", count); in unconfigure_boot_device()
1292 count += 1; in unconfigure_boot_device()
1306 int count; in unconfigure_boot_bridge() local
1355 for (count = 0; address[count]; count++) { in unconfigure_boot_bridge()
1357 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &start_address); in unconfigure_boot_bridge()
1408 count += 1; in unconfigure_boot_bridge()
1536 int count; in ibmphp_unconfigure_card() local
1559 count = 2; in ibmphp_unconfigure_card()
1561 count = 6; in ibmphp_unconfigure_card()
1564 for (i = 0; i < count; i++) { in ibmphp_unconfigure_card()