Lines Matching refs:i
150 static void free_hba(int i);
182 static void ida_procinit(int i);
184 static void ida_procinit(int i) {} in ida_procinit() argument
217 static void __init ida_procinit(int i) in ida_procinit() argument
224 proc_create_data(hba[i]->devname, 0, proc_array, &ida_proc_fops, hba[i]); in ida_procinit()
232 int i, ctlr; in ida_proc_show() local
263 for(i=0; i<h->log_drives; i++) { in ida_proc_show()
264 drv = &h->drv[i]; in ida_proc_show()
266 ctlr, i, drv->blk_size, drv->nr_blks); in ida_proc_show()
323 static void cpqarray_remove_one(int i) in cpqarray_remove_one() argument
331 if( sendcmd(FLUSH_CACHE, i, buff, 4, 0, 0, 0)) in cpqarray_remove_one()
334 i); in cpqarray_remove_one()
336 free_irq(hba[i]->intr, hba[i]); in cpqarray_remove_one()
337 iounmap(hba[i]->vaddr); in cpqarray_remove_one()
338 unregister_blkdev(COMPAQ_SMART2_MAJOR+i, hba[i]->devname); in cpqarray_remove_one()
339 del_timer(&hba[i]->timer); in cpqarray_remove_one()
340 remove_proc_entry(hba[i]->devname, proc_array); in cpqarray_remove_one()
341 pci_free_consistent(hba[i]->pci_dev, in cpqarray_remove_one()
342 NR_CMDS * sizeof(cmdlist_t), (hba[i]->cmd_pool), in cpqarray_remove_one()
343 hba[i]->cmd_pool_dhandle); in cpqarray_remove_one()
344 kfree(hba[i]->cmd_pool_bits); in cpqarray_remove_one()
346 if (ida_gendisk[i][j]->flags & GENHD_FL_UP) in cpqarray_remove_one()
347 del_gendisk(ida_gendisk[i][j]); in cpqarray_remove_one()
348 put_disk(ida_gendisk[i][j]); in cpqarray_remove_one()
350 blk_cleanup_queue(hba[i]->queue); in cpqarray_remove_one()
351 release_io_mem(hba[i]); in cpqarray_remove_one()
352 free_hba(i); in cpqarray_remove_one()
357 int i; in cpqarray_remove_one_pci() local
366 i = tmp_ptr->ctlr; in cpqarray_remove_one_pci()
367 if (hba[i] == NULL) { in cpqarray_remove_one_pci()
369 "already been removed \n", i); in cpqarray_remove_one_pci()
374 cpqarray_remove_one(i); in cpqarray_remove_one_pci()
380 static void cpqarray_remove_one_eisa(int i) in cpqarray_remove_one_eisa() argument
382 if (hba[i] == NULL) { in cpqarray_remove_one_eisa()
384 "already been removed \n", i); in cpqarray_remove_one_eisa()
387 cpqarray_remove_one(i); in cpqarray_remove_one_eisa()
391 static int cpqarray_register_ctlr(int i, struct pci_dev *pdev) in cpqarray_register_ctlr() argument
404 if (register_blkdev(COMPAQ_SMART2_MAJOR+i, hba[i]->devname)) { in cpqarray_register_ctlr()
407 hba[i]->access.set_intr_mask(hba[i], 0); in cpqarray_register_ctlr()
408 if (request_irq(hba[i]->intr, do_ida_intr, IRQF_SHARED, in cpqarray_register_ctlr()
409 hba[i]->devname, hba[i])) in cpqarray_register_ctlr()
412 hba[i]->intr, hba[i]->devname); in cpqarray_register_ctlr()
417 ida_gendisk[i][j] = alloc_disk(1 << NWD_SHIFT); in cpqarray_register_ctlr()
418 if (!ida_gendisk[i][j]) in cpqarray_register_ctlr()
422 hba[i]->cmd_pool = pci_alloc_consistent( in cpqarray_register_ctlr()
423 hba[i]->pci_dev, NR_CMDS * sizeof(cmdlist_t), in cpqarray_register_ctlr()
424 &(hba[i]->cmd_pool_dhandle)); in cpqarray_register_ctlr()
425 hba[i]->cmd_pool_bits = kcalloc( in cpqarray_register_ctlr()
429 if (!hba[i]->cmd_pool_bits || !hba[i]->cmd_pool) in cpqarray_register_ctlr()
432 memset(hba[i]->cmd_pool, 0, NR_CMDS * sizeof(cmdlist_t)); in cpqarray_register_ctlr()
434 hba[i]->devname); in cpqarray_register_ctlr()
436 spin_lock_init(&hba[i]->lock); in cpqarray_register_ctlr()
437 q = blk_init_queue(do_ida_request, &hba[i]->lock); in cpqarray_register_ctlr()
441 hba[i]->queue = q; in cpqarray_register_ctlr()
442 q->queuedata = hba[i]; in cpqarray_register_ctlr()
444 getgeometry(i); in cpqarray_register_ctlr()
445 start_fwbk(i); in cpqarray_register_ctlr()
447 ida_procinit(i); in cpqarray_register_ctlr()
450 blk_queue_bounce_limit(q, hba[i]->pci_dev->dma_mask); in cpqarray_register_ctlr()
455 init_timer(&hba[i]->timer); in cpqarray_register_ctlr()
456 hba[i]->timer.expires = jiffies + IDA_TIMER; in cpqarray_register_ctlr()
457 hba[i]->timer.data = (unsigned long)hba[i]; in cpqarray_register_ctlr()
458 hba[i]->timer.function = ida_timer; in cpqarray_register_ctlr()
459 add_timer(&hba[i]->timer); in cpqarray_register_ctlr()
462 hba[i]->access.set_intr_mask(hba[i], FIFO_NOT_EMPTY); in cpqarray_register_ctlr()
465 struct gendisk *disk = ida_gendisk[i][j]; in cpqarray_register_ctlr()
466 drv_info_t *drv = &hba[i]->drv[j]; in cpqarray_register_ctlr()
467 sprintf(disk->disk_name, "ida/c%dd%d", i, j); in cpqarray_register_ctlr()
468 disk->major = COMPAQ_SMART2_MAJOR + i; in cpqarray_register_ctlr()
473 blk_queue_logical_block_size(hba[i]->queue, drv->blk_size); in cpqarray_register_ctlr()
475 disk->queue = hba[i]->queue; in cpqarray_register_ctlr()
481 return(i); in cpqarray_register_ctlr()
484 nr_ctlr = i; in cpqarray_register_ctlr()
485 kfree(hba[i]->cmd_pool_bits); in cpqarray_register_ctlr()
486 if (hba[i]->cmd_pool) in cpqarray_register_ctlr()
487 pci_free_consistent(hba[i]->pci_dev, NR_CMDS*sizeof(cmdlist_t), in cpqarray_register_ctlr()
488 hba[i]->cmd_pool, hba[i]->cmd_pool_dhandle); in cpqarray_register_ctlr()
491 put_disk(ida_gendisk[i][j]); in cpqarray_register_ctlr()
492 ida_gendisk[i][j] = NULL; in cpqarray_register_ctlr()
494 free_irq(hba[i]->intr, hba[i]); in cpqarray_register_ctlr()
496 unregister_blkdev(COMPAQ_SMART2_MAJOR+i, hba[i]->devname); in cpqarray_register_ctlr()
500 release_io_mem(hba[i]); in cpqarray_register_ctlr()
501 free_hba(i); in cpqarray_register_ctlr()
511 int i; in cpqarray_init_one() local
517 i = alloc_cpqarray_hba(); in cpqarray_init_one()
518 if( i < 0 ) in cpqarray_init_one()
520 memset(hba[i], 0, sizeof(ctlr_info_t)); in cpqarray_init_one()
521 sprintf(hba[i]->devname, "ida%d", i); in cpqarray_init_one()
522 hba[i]->ctlr = i; in cpqarray_init_one()
524 pci_set_drvdata(pdev, hba[i]); in cpqarray_init_one()
526 if (cpqarray_pci_init(hba[i], pdev) != 0) { in cpqarray_init_one()
528 release_io_mem(hba[i]); in cpqarray_init_one()
529 free_hba(i); in cpqarray_init_one()
533 return (cpqarray_register_ctlr(i, pdev)); in cpqarray_init_one()
550 int i; in cpqarray_init() local
561 for (i=0; i < MAX_CTLR; i++) { in cpqarray_init()
562 if (hba[i] != NULL) in cpqarray_init()
578 int i; in alloc_cpqarray_hba() local
580 for(i=0; i< MAX_CTLR; i++) { in alloc_cpqarray_hba()
581 if (hba[i] == NULL) { in alloc_cpqarray_hba()
582 hba[i] = kmalloc(sizeof(ctlr_info_t), GFP_KERNEL); in alloc_cpqarray_hba()
583 if(hba[i]==NULL) { in alloc_cpqarray_hba()
587 return (i); in alloc_cpqarray_hba()
595 static void free_hba(int i) in free_hba() argument
597 kfree(hba[i]); in free_hba()
598 hba[i]=NULL; in free_hba()
613 int i; in cpqarray_pci_init() local
626 for(i=0; i<6; i++) in cpqarray_pci_init()
627 addr[i] = pci_resource_start(pdev, i); in cpqarray_pci_init()
652 for(i=0; i<6; i++) in cpqarray_pci_init()
653 printk("addr[%d] = %lx\n", i, addr[i]); in cpqarray_pci_init()
663 for(i=0; i<6; i++) { in cpqarray_pci_init()
664 if (pci_resource_flags(pdev, i) & PCI_BASE_ADDRESS_SPACE_IO) in cpqarray_pci_init()
666 c->io_mem_addr = addr[i]; in cpqarray_pci_init()
667 c->io_mem_length = pci_resource_end(pdev, i) in cpqarray_pci_init()
668 - pci_resource_start(pdev, i) + 1; in cpqarray_pci_init()
681 for(i=0; i<6; i++) in cpqarray_pci_init()
682 if (!(pci_resource_flags(pdev, i) & in cpqarray_pci_init()
684 c->paddr = pci_resource_start (pdev, i); in cpqarray_pci_init()
694 for(i=0; i<NR_PRODUCTS; i++) { in cpqarray_pci_init()
695 if (board_id == products[i].board_id) { in cpqarray_pci_init()
696 c->product_name = products[i].product_name; in cpqarray_pci_init()
697 c->access = *(products[i].access); in cpqarray_pci_init()
701 if (i == NR_PRODUCTS) { in cpqarray_pci_init()
729 int i, ints[9]; in cpqarray_setup() local
733 for(i=0; i<ints[0] && i<8; i++) in cpqarray_setup()
734 eisa[i] = ints[i+1]; in cpqarray_setup()
747 int i=0, j; in cpqarray_eisa_detect() local
753 while(i<8 && eisa[i]) { in cpqarray_eisa_detect()
757 board_id = inl(eisa[i]+0xC80); in cpqarray_eisa_detect()
769 hba[ctlr]->io_mem_addr = eisa[i]; in cpqarray_eisa_detect()
786 intr = inb(eisa[i]+0xCC0) >> 4; in cpqarray_eisa_detect()
801 printk("i = %d, j = %d\n", i, j); in cpqarray_eisa_detect()
808 i++; in cpqarray_eisa_detect()
910 int i, dir, seg; in do_ida_request() local
943 for( i=0; i < seg; i++) in do_ida_request()
945 c->req.sg[i].size = tmp_sg[i].length; in do_ida_request()
946 c->req.sg[i].addr = (__u32) pci_map_page(h->pci_dev, in do_ida_request()
947 sg_page(&tmp_sg[i]), in do_ida_request()
948 tmp_sg[i].offset, in do_ida_request()
949 tmp_sg[i].length, dir); in do_ida_request()
1003 int i, ddir; in complete_command() local
1030 for(i=0; i<cmd->req.hdr.sg_cnt; i++) in complete_command()
1031 pci_unmap_page(hba[cmd->ctlr]->pci_dev, cmd->req.sg[i].addr, in complete_command()
1032 cmd->req.sg[i].size, ddir); in complete_command()
1363 int i; in cmd_alloc() local
1373 i = find_first_zero_bit(h->cmd_pool_bits, NR_CMDS); in cmd_alloc()
1374 if (i == NR_CMDS) in cmd_alloc()
1376 } while(test_and_set_bit(i&(BITS_PER_LONG-1), h->cmd_pool_bits+(i/BITS_PER_LONG)) != 0); in cmd_alloc()
1377 c = h->cmd_pool + i; in cmd_alloc()
1378 cmd_dhandle = h->cmd_pool_dhandle + i*sizeof(cmdlist_t); in cmd_alloc()
1389 int i; in cmd_free() local
1395 i = c - h->cmd_pool; in cmd_free()
1396 clear_bit(i&(BITS_PER_LONG-1), h->cmd_pool_bits+(i/BITS_PER_LONG)); in cmd_free()
1419 unsigned long i; in sendcmd() local
1454 for (i = 200000; i > 0; i--) { in sendcmd()
1521 int i; in revalidate_allvol() local
1539 for (i = 1; i < NWD; i++) { in revalidate_allvol()
1540 struct gendisk *disk = ida_gendisk[ctlr][i]; in revalidate_allvol()
1555 for(i=0; i<NWD; i++) { in revalidate_allvol()
1556 struct gendisk *disk = ida_gendisk[ctlr][i]; in revalidate_allvol()
1557 drv_info_t *drv = &host->drv[i]; in revalidate_allvol()
1558 if (i && !drv->nr_blks) in revalidate_allvol()
1564 if (i) in revalidate_allvol()
1588 int i; in pollcomplete() local
1592 for (i = 200000; i > 0; i--) { in pollcomplete()
1654 int i; in getgeometry() local
1700 for(i=0;i<4;i++) in getgeometry()
1701 info_p->firm_rev[i] = id_ctlr_buf->firm_rev[i]; in getgeometry()
1803 int i; in cpqarray_exit() local
1808 for(i=0; i<MAX_CTLR; i++) { in cpqarray_exit()
1809 if (hba[i] != NULL) { in cpqarray_exit()
1811 "controller %d\n", i); in cpqarray_exit()
1812 cpqarray_remove_one_eisa(i); in cpqarray_exit()