Lines Matching refs:hba
73 static ctlr_info_t *hba[MAX_CTLR]; variable
224 proc_create_data(hba[i]->devname, 0, proc_array, &ida_proc_fops, hba[i]); in ida_procinit()
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()
350 blk_cleanup_queue(hba[i]->queue); in cpqarray_remove_one()
351 release_io_mem(hba[i]); in cpqarray_remove_one()
367 if (hba[i] == NULL) { in cpqarray_remove_one_pci()
382 if (hba[i] == NULL) { in cpqarray_remove_one_eisa()
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()
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()
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()
466 drv_info_t *drv = &hba[i]->drv[j]; 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()
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()
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()
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()
562 if (hba[i] != NULL) in cpqarray_init()
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()
597 kfree(hba[i]); in free_hba()
598 hba[i]=NULL; in free_hba()
768 memset(hba[ctlr], 0, sizeof(ctlr_info_t)); in cpqarray_eisa_detect()
769 hba[ctlr]->io_mem_addr = eisa[i]; in cpqarray_eisa_detect()
770 hba[ctlr]->io_mem_length = 0x7FF; in cpqarray_eisa_detect()
771 if(!request_region(hba[ctlr]->io_mem_addr, in cpqarray_eisa_detect()
772 hba[ctlr]->io_mem_length, in cpqarray_eisa_detect()
777 hba[ctlr]->io_mem_addr, in cpqarray_eisa_detect()
778 hba[ctlr]->io_mem_length); in cpqarray_eisa_detect()
792 hba[ctlr]->intr = intr; in cpqarray_eisa_detect()
793 sprintf(hba[ctlr]->devname, "ida%d", nr_ctlr); in cpqarray_eisa_detect()
794 hba[ctlr]->product_name = products[j].product_name; in cpqarray_eisa_detect()
795 hba[ctlr]->access = *(products[j].access); in cpqarray_eisa_detect()
796 hba[ctlr]->ctlr = ctlr; in cpqarray_eisa_detect()
797 hba[ctlr]->board_id = board_id; in cpqarray_eisa_detect()
798 hba[ctlr]->pci_dev = NULL; /* not PCI */ in cpqarray_eisa_detect()
1006 (hba[cmd->ctlr]->misc_tflags & MISC_NONFATAL_WARN) == 0) { in complete_command()
1009 hba[cmd->ctlr]->misc_tflags |= MISC_NONFATAL_WARN; in complete_command()
1031 pci_unmap_page(hba[cmd->ctlr]->pci_dev, cmd->req.sg[i].addr, in complete_command()
1420 ctlr_info_t *info_p = hba[ctlr]; in sendcmd()
1593 done = hba[ctlr]->access.command_completed(hba[ctlr]); in pollcomplete()
1614 if( (hba[ctlr]->board_id != 0x40400E11) in start_fwbk()
1615 && (hba[ctlr]->board_id != 0x40480E11) ) in start_fwbk()
1653 ctlr_info_t *info_p = hba[ctlr]; in getgeometry()
1809 if (hba[i] != NULL) { in cpqarray_exit()