ca91cx42_bridge 93 drivers/vme/bridges/vme_ca91cx42.c static u32 ca91cx42_VERR_irqhandler(struct vme_bridge *ca91cx42_bridge) ca91cx42_bridge 98 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 103 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "ca91cx42_VERR_irqhandler DMA " ca91cx42_bridge 110 drivers/vme/bridges/vme_ca91cx42.c static u32 ca91cx42_LERR_irqhandler(struct vme_bridge *ca91cx42_bridge) ca91cx42_bridge 115 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 120 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "ca91cx42_LERR_irqhandler DMA " ca91cx42_bridge 127 drivers/vme/bridges/vme_ca91cx42.c static u32 ca91cx42_VIRQ_irqhandler(struct vme_bridge *ca91cx42_bridge, ca91cx42_bridge 133 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 141 drivers/vme/bridges/vme_ca91cx42.c vme_irq_handler(ca91cx42_bridge, i, vec); ca91cx42_bridge 153 drivers/vme/bridges/vme_ca91cx42.c struct vme_bridge *ca91cx42_bridge; ca91cx42_bridge 156 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge = ptr; ca91cx42_bridge 158 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 179 drivers/vme/bridges/vme_ca91cx42.c serviced |= ca91cx42_VERR_irqhandler(ca91cx42_bridge); ca91cx42_bridge 181 drivers/vme/bridges/vme_ca91cx42.c serviced |= ca91cx42_LERR_irqhandler(ca91cx42_bridge); ca91cx42_bridge 186 drivers/vme/bridges/vme_ca91cx42.c serviced |= ca91cx42_VIRQ_irqhandler(ca91cx42_bridge, stat); ca91cx42_bridge 194 drivers/vme/bridges/vme_ca91cx42.c static int ca91cx42_irq_init(struct vme_bridge *ca91cx42_bridge) ca91cx42_bridge 200 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 203 drivers/vme/bridges/vme_ca91cx42.c pdev = to_pci_dev(ca91cx42_bridge->parent); ca91cx42_bridge 214 drivers/vme/bridges/vme_ca91cx42.c driver_name, ca91cx42_bridge); ca91cx42_bridge 239 drivers/vme/bridges/vme_ca91cx42.c struct vme_bridge *ca91cx42_bridge; ca91cx42_bridge 249 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge = container_of((void *)bridge, struct vme_bridge, ca91cx42_bridge 251 drivers/vme/bridges/vme_ca91cx42.c free_irq(pdev->irq, ca91cx42_bridge); ca91cx42_bridge 269 drivers/vme/bridges/vme_ca91cx42.c static void ca91cx42_irq_set(struct vme_bridge *ca91cx42_bridge, int level, ca91cx42_bridge 277 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 290 drivers/vme/bridges/vme_ca91cx42.c pdev = to_pci_dev(ca91cx42_bridge->parent); ca91cx42_bridge 296 drivers/vme/bridges/vme_ca91cx42.c static int ca91cx42_irq_generate(struct vme_bridge *ca91cx42_bridge, int level, ca91cx42_bridge 302 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 340 drivers/vme/bridges/vme_ca91cx42.c struct vme_bridge *ca91cx42_bridge; ca91cx42_bridge 343 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge = image->parent; ca91cx42_bridge 345 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 370 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Invalid address space\n"); ca91cx42_bridge 388 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Invalid VME base " ca91cx42_bridge 393 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Invalid VME bound " ca91cx42_bridge 398 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Invalid PCI Offset " ca91cx42_bridge 505 drivers/vme/bridges/vme_ca91cx42.c struct vme_bridge *ca91cx42_bridge; ca91cx42_bridge 507 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge = image->parent; ca91cx42_bridge 510 drivers/vme/bridges/vme_ca91cx42.c if (!ca91cx42_bridge->parent) { ca91cx42_bridge 511 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Dev entry NULL\n"); ca91cx42_bridge 514 drivers/vme/bridges/vme_ca91cx42.c pdev = to_pci_dev(ca91cx42_bridge->parent); ca91cx42_bridge 540 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->name, image->number); ca91cx42_bridge 550 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Failed to allocate mem " ca91cx42_bridge 560 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Failed to remap resource\n"); ca91cx42_bridge 597 drivers/vme/bridges/vme_ca91cx42.c struct vme_bridge *ca91cx42_bridge; ca91cx42_bridge 600 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge = image->parent; ca91cx42_bridge 602 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 613 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Invalid VME Window " ca91cx42_bridge 619 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Invalid VME Window " ca91cx42_bridge 634 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Unable to allocate memory " ca91cx42_bridge 678 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Invalid data width\n"); ca91cx42_bridge 710 drivers/vme/bridges/vme_ca91cx42.c dev_err(ca91cx42_bridge->parent, "Invalid address space\n"); ca91cx42_bridge 1162 drivers/vme/bridges/vme_ca91cx42.c static int ca91cx42_dma_busy(struct vme_bridge *ca91cx42_bridge) ca91cx42_bridge 1167 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 1488 drivers/vme/bridges/vme_ca91cx42.c static int ca91cx42_slot_get(struct vme_bridge *ca91cx42_bridge) ca91cx42_bridge 1493 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 1535 drivers/vme/bridges/vme_ca91cx42.c static int ca91cx42_crcsr_init(struct vme_bridge *ca91cx42_bridge, ca91cx42_bridge 1542 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 1544 drivers/vme/bridges/vme_ca91cx42.c slot = ca91cx42_slot_get(ca91cx42_bridge); ca91cx42_bridge 1576 drivers/vme/bridges/vme_ca91cx42.c static void ca91cx42_crcsr_exit(struct vme_bridge *ca91cx42_bridge, ca91cx42_bridge 1582 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 1601 drivers/vme/bridges/vme_ca91cx42.c struct vme_bridge *ca91cx42_bridge; ca91cx42_bridge 1611 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge = kzalloc(sizeof(*ca91cx42_bridge), GFP_KERNEL); ca91cx42_bridge 1612 drivers/vme/bridges/vme_ca91cx42.c if (!ca91cx42_bridge) { ca91cx42_bridge 1616 drivers/vme/bridges/vme_ca91cx42.c vme_init_bridge(ca91cx42_bridge); ca91cx42_bridge 1624 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->driver_priv = ca91cx42_device; ca91cx42_bridge 1663 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->parent = &pdev->dev; ca91cx42_bridge 1664 drivers/vme/bridges/vme_ca91cx42.c strcpy(ca91cx42_bridge->name, driver_name); ca91cx42_bridge 1667 drivers/vme/bridges/vme_ca91cx42.c retval = ca91cx42_irq_init(ca91cx42_bridge); ca91cx42_bridge 1680 drivers/vme/bridges/vme_ca91cx42.c master_image->parent = ca91cx42_bridge; ca91cx42_bridge 1693 drivers/vme/bridges/vme_ca91cx42.c &ca91cx42_bridge->master_resources); ca91cx42_bridge 1703 drivers/vme/bridges/vme_ca91cx42.c slave_image->parent = ca91cx42_bridge; ca91cx42_bridge 1717 drivers/vme/bridges/vme_ca91cx42.c &ca91cx42_bridge->slave_resources); ca91cx42_bridge 1727 drivers/vme/bridges/vme_ca91cx42.c dma_ctrlr->parent = ca91cx42_bridge; ca91cx42_bridge 1736 drivers/vme/bridges/vme_ca91cx42.c &ca91cx42_bridge->dma_resources); ca91cx42_bridge 1745 drivers/vme/bridges/vme_ca91cx42.c lm->parent = ca91cx42_bridge; ca91cx42_bridge 1750 drivers/vme/bridges/vme_ca91cx42.c list_add_tail(&lm->list, &ca91cx42_bridge->lm_resources); ca91cx42_bridge 1752 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->slave_get = ca91cx42_slave_get; ca91cx42_bridge 1753 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->slave_set = ca91cx42_slave_set; ca91cx42_bridge 1754 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->master_get = ca91cx42_master_get; ca91cx42_bridge 1755 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->master_set = ca91cx42_master_set; ca91cx42_bridge 1756 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->master_read = ca91cx42_master_read; ca91cx42_bridge 1757 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->master_write = ca91cx42_master_write; ca91cx42_bridge 1758 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->master_rmw = ca91cx42_master_rmw; ca91cx42_bridge 1759 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->dma_list_add = ca91cx42_dma_list_add; ca91cx42_bridge 1760 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->dma_list_exec = ca91cx42_dma_list_exec; ca91cx42_bridge 1761 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->dma_list_empty = ca91cx42_dma_list_empty; ca91cx42_bridge 1762 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->irq_set = ca91cx42_irq_set; ca91cx42_bridge 1763 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->irq_generate = ca91cx42_irq_generate; ca91cx42_bridge 1764 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->lm_set = ca91cx42_lm_set; ca91cx42_bridge 1765 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->lm_get = ca91cx42_lm_get; ca91cx42_bridge 1766 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->lm_attach = ca91cx42_lm_attach; ca91cx42_bridge 1767 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->lm_detach = ca91cx42_lm_detach; ca91cx42_bridge 1768 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->slot_get = ca91cx42_slot_get; ca91cx42_bridge 1769 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->alloc_consistent = ca91cx42_alloc_consistent; ca91cx42_bridge 1770 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_bridge->free_consistent = ca91cx42_free_consistent; ca91cx42_bridge 1776 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_slot_get(ca91cx42_bridge)); ca91cx42_bridge 1778 drivers/vme/bridges/vme_ca91cx42.c if (ca91cx42_crcsr_init(ca91cx42_bridge, pdev)) ca91cx42_bridge 1784 drivers/vme/bridges/vme_ca91cx42.c retval = vme_register_bridge(ca91cx42_bridge); ca91cx42_bridge 1790 drivers/vme/bridges/vme_ca91cx42.c pci_set_drvdata(pdev, ca91cx42_bridge); ca91cx42_bridge 1795 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_crcsr_exit(ca91cx42_bridge, pdev); ca91cx42_bridge 1798 drivers/vme/bridges/vme_ca91cx42.c list_for_each_safe(pos, n, &ca91cx42_bridge->lm_resources) { ca91cx42_bridge 1805 drivers/vme/bridges/vme_ca91cx42.c list_for_each_safe(pos, n, &ca91cx42_bridge->dma_resources) { ca91cx42_bridge 1812 drivers/vme/bridges/vme_ca91cx42.c list_for_each_safe(pos, n, &ca91cx42_bridge->slave_resources) { ca91cx42_bridge 1819 drivers/vme/bridges/vme_ca91cx42.c list_for_each_safe(pos, n, &ca91cx42_bridge->master_resources) { ca91cx42_bridge 1837 drivers/vme/bridges/vme_ca91cx42.c kfree(ca91cx42_bridge); ca91cx42_bridge 1851 drivers/vme/bridges/vme_ca91cx42.c struct vme_bridge *ca91cx42_bridge = pci_get_drvdata(pdev); ca91cx42_bridge 1853 drivers/vme/bridges/vme_ca91cx42.c bridge = ca91cx42_bridge->driver_priv; ca91cx42_bridge 1877 drivers/vme/bridges/vme_ca91cx42.c vme_unregister_bridge(ca91cx42_bridge); ca91cx42_bridge 1879 drivers/vme/bridges/vme_ca91cx42.c ca91cx42_crcsr_exit(ca91cx42_bridge, pdev); ca91cx42_bridge 1882 drivers/vme/bridges/vme_ca91cx42.c list_for_each_safe(pos, n, &ca91cx42_bridge->lm_resources) { ca91cx42_bridge 1889 drivers/vme/bridges/vme_ca91cx42.c list_for_each_safe(pos, n, &ca91cx42_bridge->dma_resources) { ca91cx42_bridge 1896 drivers/vme/bridges/vme_ca91cx42.c list_for_each_safe(pos, n, &ca91cx42_bridge->slave_resources) { ca91cx42_bridge 1903 drivers/vme/bridges/vme_ca91cx42.c list_for_each_safe(pos, n, &ca91cx42_bridge->master_resources) { ca91cx42_bridge 1918 drivers/vme/bridges/vme_ca91cx42.c kfree(ca91cx42_bridge);