Lines Matching refs:count

342 	int count;
355 for (count = 0; address[count]; count++) { /* for 6 BARs */
362 PCI_BASE_ADDRESS_0 + 4 * count, &tmp);
365 PCI_BASE_ADDRESS_0 + 4 * count, 0xFFFFFFFD);
368 PCI_BASE_ADDRESS_0 + 4 * count, 0xFFFFFFFF);
370 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFF);
371 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]);
373 if (!bar[count]) /* This BAR is not implemented */
376 debug("Device %x BAR %d wants %x\n", func->device, count, bar[count]);
378 if (bar[count] & PCI_BASE_ADDRESS_SPACE_IO) {
382 len[count] = bar[count] & 0xFFFFFFFC;
383 len[count] = ~len[count] + 1;
385 debug("len[count] in IO %x, count %d\n", len[count], count);
387 io[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL);
389 if (!io[count])
392 io[count]->type = IO;
393 io[count]->busno = func->busno;
394 io[count]->devfunc = PCI_DEVFN(func->device, func->function);
395 io[count]->len = len[count];
396 if (ibmphp_check_resource(io[count], 0) == 0) {
397 ibmphp_add_resource(io[count]);
398 func->io[count] = io[count];
401 func->busno, func->device, func->function, len[count]);
402 kfree(io[count]);
405 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->io[count]->start);
408 debug("b4 writing, the IO address is %x\n", func->io[count]->start);
409 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]);
410 debug("after writing.... the start address is %x\n", bar[count]);
415 if (bar[count] & PCI_BASE_ADDRESS_MEM_PREFETCH) {
419 len[count] = bar[count] & 0xFFFFFFF0;
420 len[count] = ~len[count] + 1;
422 debug("len[count] in PFMEM %x, count %d\n", len[count], count);
424 pfmem[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL);
425 if (!pfmem[count])
428 pfmem[count]->type = PFMEM;
429 pfmem[count]->busno = func->busno;
430 pfmem[count]->devfunc = PCI_DEVFN(func->device,
432 pfmem[count]->len = len[count];
433 pfmem[count]->fromMem = 0;
434 if (ibmphp_check_resource(pfmem[count], 0) == 0) {
435 ibmphp_add_resource(pfmem[count]);
436 func->pfmem[count] = pfmem[count];
440 kfree(pfmem[count]);
444 mem_tmp->busno = pfmem[count]->busno;
445 mem_tmp->devfunc = pfmem[count]->devfunc;
446 mem_tmp->len = pfmem[count]->len;
450 pfmem[count]->fromMem = 1;
451 pfmem[count]->rangeno = mem_tmp->rangeno;
452 pfmem[count]->start = mem_tmp->start;
453 pfmem[count]->end = mem_tmp->end;
454 ibmphp_add_pfmem_from_mem(pfmem[count]);
455 func->pfmem[count] = pfmem[count];
458 func->busno, func->device, len[count]);
460 kfree(pfmem[count]);
465 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->pfmem[count]->start);
468 debug("b4 writing, start address is %x\n", func->pfmem[count]->start);
469 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]);
470 debug("after writing, start address is %x\n", bar[count]);
473 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64) { /* takes up another dword */
474 debug("inside the mem 64 case, count %d\n", count);
475 count += 1;
477 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0x00000000);
483 len[count] = bar[count] & 0xFFFFFFF0;
484 len[count] = ~len[count] + 1;
486 debug("len[count] in Mem %x, count %d\n", len[count], count);
488 mem[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL);
489 if (!mem[count])
492 mem[count]->type = MEM;
493 mem[count]->busno = func->busno;
494 mem[count]->devfunc = PCI_DEVFN(func->device,
496 mem[count]->len = len[count];
497 if (ibmphp_check_resource(mem[count], 0) == 0) {
498 ibmphp_add_resource(mem[count]);
499 func->mem[count] = mem[count];
502 func->busno, func->device, len[count]);
503 kfree(mem[count]);
506 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->mem[count]->start);
508 debug("b4 writing, start address is %x\n", func->mem[count]->start);
509 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]);
510 debug("after writing, the address is %x\n", bar[count]);
513 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64) {
515 debug("inside mem 64 case, reg. mem, count %d\n", count);
516 count += 1;
518 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0x00000000);
545 int count;
631 for (count = 0; address[count]; count++) { /* for 2 BARs */
632 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFF);
633 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]);
635 if (!bar[count]) {
637 debug("so we come here then, eh?, count = %d\n", count);
640 // tmp_bar = bar[count];
642 debug("Bar %d wants %x\n", count, bar[count]);
644 if (bar[count] & PCI_BASE_ADDRESS_SPACE_IO) {
646 len[count] = bar[count] & 0xFFFFFFFC;
647 len[count] = ~len[count] + 1;
649 debug("len[count] in IO = %x\n", len[count]);
651 bus_io[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL);
653 if (!bus_io[count]) {
657 bus_io[count]->type = IO;
658 bus_io[count]->busno = func->busno;
659 bus_io[count]->devfunc = PCI_DEVFN(func->device,
661 bus_io[count]->len = len[count];
662 if (ibmphp_check_resource(bus_io[count], 0) == 0) {
663 ibmphp_add_resource(bus_io[count]);
664 func->io[count] = bus_io[count];
667 func->busno, func->device, len[count]);
668 kfree(bus_io[count]);
672 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->io[count]->start);
676 if (bar[count] & PCI_BASE_ADDRESS_MEM_PREFETCH) {
678 len[count] = bar[count] & 0xFFFFFFF0;
679 len[count] = ~len[count] + 1;
681 debug("len[count] in PFMEM = %x\n", len[count]);
683 bus_pfmem[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL);
684 if (!bus_pfmem[count]) {
688 bus_pfmem[count]->type = PFMEM;
689 bus_pfmem[count]->busno = func->busno;
690 bus_pfmem[count]->devfunc = PCI_DEVFN(func->device,
692 bus_pfmem[count]->len = len[count];
693 bus_pfmem[count]->fromMem = 0;
694 if (ibmphp_check_resource(bus_pfmem[count], 0) == 0) {
695 ibmphp_add_resource(bus_pfmem[count]);
696 func->pfmem[count] = bus_pfmem[count];
704 mem_tmp->busno = bus_pfmem[count]->busno;
705 mem_tmp->devfunc = bus_pfmem[count]->devfunc;
706 mem_tmp->len = bus_pfmem[count]->len;
709 bus_pfmem[count]->fromMem = 1;
710 bus_pfmem[count]->rangeno = mem_tmp->rangeno;
711 ibmphp_add_pfmem_from_mem(bus_pfmem[count]);
712 func->pfmem[count] = bus_pfmem[count];
715 func->busno, func->device, len[count]);
717 kfree(bus_pfmem[count]);
722 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->pfmem[count]->start);
724 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64) {
726 count += 1;
728 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0x00000000);
733 len[count] = bar[count] & 0xFFFFFFF0;
734 len[count] = ~len[count] + 1;
736 debug("len[count] in Memory is %x\n", len[count]);
738 bus_mem[count] = kzalloc(sizeof(struct resource_node), GFP_KERNEL);
739 if (!bus_mem[count]) {
743 bus_mem[count]->type = MEM;
744 bus_mem[count]->busno = func->busno;
745 bus_mem[count]->devfunc = PCI_DEVFN(func->device,
747 bus_mem[count]->len = len[count];
748 if (ibmphp_check_resource(bus_mem[count], 0) == 0) {
749 ibmphp_add_resource(bus_mem[count]);
750 func->mem[count] = bus_mem[count];
753 func->busno, func->device, len[count]);
754 kfree(bus_mem[count]);
758 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->mem[count]->start);
760 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64) {
762 count += 1;
764 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0x00000000);
785 for (count = 0; address[count]; count++) {
787 if (bus_io[count]) {
788 ibmphp_remove_resource(bus_io[count]);
789 func->io[count] = NULL;
790 } else if (bus_pfmem[count]) {
791 ibmphp_remove_resource(bus_pfmem[count]);
792 func->pfmem[count] = NULL;
793 } else if (bus_mem[count]) {
794 ibmphp_remove_resource(bus_mem[count]);
795 func->mem[count] = NULL;
1048 int count, len[6];
1109 for (count = 0; address[count]; count++) {
1112 pci_bus_read_config_byte(ibmphp_pci_bus, devfn, address[count], &tmp);
1114 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFD);
1116 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFF);
1118 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFF);
1119 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &bar[count]);
1121 debug("what is bar[count]? %x, count = %d\n", bar[count], count);
1123 if (!bar[count]) /* This BAR is not implemented */
1126 //tmp_bar = bar[count];
1128 debug("count %d device %x function %x wants %x resources\n", count, device, function, bar[count]);
1130 if (bar[count] & PCI_BASE_ADDRESS_SPACE_IO) {
1132 len[count] = bar[count] & 0xFFFFFFFC;
1133 len[count] = ~len[count] + 1;
1134 amount->io += len[count];
1137 if (bar[count] & PCI_BASE_ADDRESS_MEM_PREFETCH) {
1139 len[count] = bar[count] & 0xFFFFFFF0;
1140 len[count] = ~len[count] + 1;
1141 amount->pfmem += len[count];
1142 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64)
1144 count += 1;
1148 len[count] = bar[count] & 0xFFFFFFF0;
1149 len[count] = ~len[count] + 1;
1150 amount->mem += len[count];
1151 if (bar[count] & PCI_BASE_ADDRESS_MEM_TYPE_64) {
1153 count += 1;
1194 int count;
1215 for (count = 0; address[count]; count++) { /* for 6 BARs */
1216 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &start_address);
1220 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], 0xFFFFFFFF);
1221 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &size);
1222 pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], start_address);
1228 debug("is this bar no implemented?, count = %d\n", count);
1291 count += 1;
1305 int count;
1354 for (count = 0; address[count]; count++) {
1356 pci_bus_read_config_dword(ibmphp_pci_bus, devfn, address[count], &start_address);
1407 count += 1;
1534 int count;
1557 count = 2;
1559 count = 6;
1562 for (i = 0; i < count; i++) {