/linux/drivers/infiniband/hw/mthca/ |
H A D | mthca_eq.c | 397 if (dev->eq_table.clr_mask) in mthca_tavor_interrupt() 398 writel(dev->eq_table.clr_mask, dev->eq_table.clr_int); in mthca_tavor_interrupt() 408 if (ecr & dev->eq_table.eq[i].eqn_mask) { in mthca_tavor_interrupt() 409 if (mthca_eq_int(dev, &dev->eq_table.eq[i])) in mthca_tavor_interrupt() 410 tavor_set_eq_ci(dev, &dev->eq_table.eq[i], in mthca_tavor_interrupt() 411 dev->eq_table.eq[i].cons_index); in mthca_tavor_interrupt() 412 tavor_eq_req_not(dev, dev->eq_table.eq[i].eqn); in mthca_tavor_interrupt() 437 if (dev->eq_table.clr_mask) in mthca_arbel_interrupt() 438 writel(dev->eq_table.clr_mask, dev->eq_table.clr_int); in mthca_arbel_interrupt() 441 if (mthca_eq_int(dev, &dev->eq_table.eq[i])) { in mthca_arbel_interrupt() [all …]
|
H A D | mthca_main.c | 682 mdev->eq_table.inta_pin = adapter.inta_pin; in mthca_init_hca() 762 dev->eq_table.eq[MTHCA_EQ_CMD].msi_x_vector); in mthca_setup_hca() 859 mdev->eq_table.eq[MTHCA_EQ_COMP ].msi_x_vector = in mthca_enable_msi_x() 861 mdev->eq_table.eq[MTHCA_EQ_ASYNC].msi_x_vector = in mthca_enable_msi_x() 863 mdev->eq_table.eq[MTHCA_EQ_CMD ].msi_x_vector = in mthca_enable_msi_x()
|
H A D | mthca_cq.c | 833 cq_context->error_eqn = cpu_to_be32(dev->eq_table.eq[MTHCA_EQ_ASYNC].eqn); in mthca_init_cq() 834 cq_context->comp_eqn = cpu_to_be32(dev->eq_table.eq[MTHCA_EQ_COMP].eqn); in mthca_init_cq() 934 synchronize_irq(dev->eq_table.eq[MTHCA_EQ_COMP].msi_x_vector); in mthca_free_cq()
|
H A D | mthca_dev.h | 341 struct mthca_eq_table eq_table; member
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | eq.c | 207 eqt = dev->priv.eq_table; in mlx5_eq_async_int() 236 struct mlx5_eq_async *eq = &dev->priv.eq_table->cmd_eq; in mlx5_cmd_eq_recover() 432 struct mlx5_eq_table *eq_table; in mlx5_eq_table_init() local 435 eq_table = kvzalloc_node(sizeof(*eq_table), GFP_KERNEL, in mlx5_eq_table_init() 437 if (!eq_table) in mlx5_eq_table_init() 440 dev->priv.eq_table = eq_table; in mlx5_eq_table_init() 444 mutex_init(&eq_table->lock); in mlx5_eq_table_init() 446 ATOMIC_INIT_NOTIFIER_HEAD(&eq_table->nh[i]); in mlx5_eq_table_init() 448 eq_table->irq_table = mlx5_irq_table_get(dev); in mlx5_eq_table_init() 449 cpumask_clear(&eq_table->used_cpus); in mlx5_eq_table_init() [all …]
|
/linux/drivers/net/ethernet/mellanox/mlx4/ |
H A D | eq.c | 241 struct mlx4_eq *eq = &priv->eq_table.eq[vec]; in mlx4_set_eq_affinity_hint() 856 writel(priv->eq_table.clr_mask, priv->eq_table.clr_int); in mlx4_interrupt() 859 work |= mlx4_eq_int(dev, &priv->eq_table.eq[i]); in mlx4_interrupt() 942 if (!priv->eq_table.uar_map[index]) { in mlx4_get_eq_uar() 943 priv->eq_table.uar_map[index] = in mlx4_get_eq_uar() 948 if (!priv->eq_table.uar_map[index]) { in mlx4_get_eq_uar() 955 return priv->eq_table.uar_map[index] + 0x800 + 8 * (eq->eqn % 4); in mlx4_get_eq_uar() 964 if (priv->eq_table.uar_map[i]) { in mlx4_unmap_uar() 965 iounmap(priv->eq_table.uar_map[i]); in mlx4_unmap_uar() 966 priv->eq_table.uar_map[i] = NULL; in mlx4_unmap_uar() [all …]
|
H A D | cq.c | 384 cq_context->comp_eqn = priv->eq_table.eq[MLX4_CQ_TO_EQ_VECTOR(vector)].eqn; in mlx4_cq_alloc() 417 &priv->eq_table.eq[MLX4_CQ_TO_EQ_VECTOR(vector)].tasklet_ctx; in mlx4_cq_alloc() 421 cq->irq = priv->eq_table.eq[MLX4_CQ_TO_EQ_VECTOR(vector)].irq; in mlx4_cq_alloc() 450 synchronize_irq(priv->eq_table.eq[MLX4_CQ_TO_EQ_VECTOR(cq->vector)].irq); in mlx4_cq_free() 451 if (priv->eq_table.eq[MLX4_CQ_TO_EQ_VECTOR(cq->vector)].irq != in mlx4_cq_free() 452 priv->eq_table.eq[MLX4_EQ_ASYNC].irq) in mlx4_cq_free() 453 synchronize_irq(priv->eq_table.eq[MLX4_EQ_ASYNC].irq); in mlx4_cq_free()
|
H A D | main.c | 1640 err = mlx4_init_icm_table(dev, &priv->eq_table.cmpt_table, in mlx4_init_cmpt_table() 1702 err = mlx4_init_icm_table(dev, &priv->eq_table.table, in mlx4_init_icm() 1850 mlx4_cleanup_icm_table(dev, &priv->eq_table.table); in mlx4_init_icm() 1853 mlx4_cleanup_icm_table(dev, &priv->eq_table.cmpt_table); in mlx4_init_icm() 1880 mlx4_cleanup_icm_table(dev, &priv->eq_table.table); in mlx4_free_icms() 1881 mlx4_cleanup_icm_table(dev, &priv->eq_table.cmpt_table); in mlx4_free_icms() 2495 priv->eq_table.inta_pin = adapter.inta_pin; in mlx4_init_hca() 2797 priv->eq_table.eq[MLX4_EQ_ASYNC].irq); in mlx4_setup_hca() 2801 priv->eq_table.eq[MLX4_EQ_ASYNC].irq); in mlx4_setup_hca() 2946 eq = &priv->eq_table.eq[eqn]; in mlx4_init_affinity_hint() [all …]
|
H A D | mlx4.h | 904 struct mlx4_eq_table eq_table; member
|
/linux/drivers/infiniband/hw/hns/ |
H A D | hns_roce_hw_v2.c | 6666 struct hns_roce_eq_table *eq_table = &hr_dev->eq_table; in __hns_roce_request_irq() local 6699 INIT_WORK(&eq_table->eq[j - other_num].work, in __hns_roce_request_irq() 6701 ret = request_irq(eq_table->eq[j - other_num].irq, in __hns_roce_request_irq() 6704 &eq_table->eq[j - other_num]); in __hns_roce_request_irq() 6706 ret = request_irq(eq_table->eq[j - other_num].irq, in __hns_roce_request_irq() 6709 &eq_table->eq[j - other_num]); in __hns_roce_request_irq() 6726 free_irq(eq_table->eq[j - other_num].irq, in __hns_roce_request_irq() 6727 &eq_table->eq[j - other_num]); in __hns_roce_request_irq() 6729 cancel_work_sync(&eq_table->eq[j - other_num].work); in __hns_roce_request_irq() 6752 free_irq(hr_dev->eq_table.eq[i].irq, &hr_dev->eq_table.eq[i]); in __hns_roce_free_irq() [all …]
|
/linux/drivers/infiniband/hw/mlx4/ |
H A D | main.c | 2429 ibdev->eq_table = kcalloc(dev->caps.num_comp_vectors, in mlx4_ib_alloc_eqs() 2430 sizeof(ibdev->eq_table[0]), GFP_KERNEL); in mlx4_ib_alloc_eqs() 2431 if (!ibdev->eq_table) in mlx4_ib_alloc_eqs() 2439 ibdev->eq_table[eq] = total_eqs; in mlx4_ib_alloc_eqs() 2441 &ibdev->eq_table[eq])) in mlx4_ib_alloc_eqs() 2444 ibdev->eq_table[eq] = -1; in mlx4_ib_alloc_eqs() 2449 ibdev->eq_table[i++] = -1) in mlx4_ib_alloc_eqs() 2462 if (!ibdev->eq_table) in mlx4_ib_free_eqs() 2469 mlx4_release_eq(dev, ibdev->eq_table[i]); in mlx4_ib_free_eqs() 2471 kfree(ibdev->eq_table); in mlx4_ib_free_eqs() [all …]
|
H A D | cq.c | 245 if (dev->eq_table) in mlx4_ib_create_cq() 246 vector = dev->eq_table[vector % ibdev->num_comp_vectors]; in mlx4_ib_create_cq()
|
H A D | mlx4_ib.h | 630 int *eq_table; member
|
/linux/include/linux/mlx5/ |
H A D | driver.h | 559 struct mlx5_eq_table *eq_table; member
|