| /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 | 205 eqt = dev->priv.eq_table; in mlx5_eq_async_int() 234 struct mlx5_eq_async *eq = &dev->priv.eq_table->cmd_eq; in mlx5_cmd_eq_recover() 430 struct mlx5_eq_table *eq_table; in mlx5_eq_table_init() local 433 eq_table = kvzalloc_node(sizeof(*eq_table), GFP_KERNEL, in mlx5_eq_table_init() 435 if (!eq_table) in mlx5_eq_table_init() 438 dev->priv.eq_table = eq_table; in mlx5_eq_table_init() 442 mutex_init(&eq_table->lock); in mlx5_eq_table_init() 444 ATOMIC_INIT_NOTIFIER_HEAD(&eq_table->nh[i]); in mlx5_eq_table_init() 446 eq_table->irq_table = mlx5_irq_table_get(dev); in mlx5_eq_table_init() 447 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 | 1636 err = mlx4_init_icm_table(dev, &priv->eq_table.cmpt_table, in mlx4_init_cmpt_table() 1698 err = mlx4_init_icm_table(dev, &priv->eq_table.table, in mlx4_init_icm() 1846 mlx4_cleanup_icm_table(dev, &priv->eq_table.table); in mlx4_init_icm() 1849 mlx4_cleanup_icm_table(dev, &priv->eq_table.cmpt_table); in mlx4_init_icm() 1876 mlx4_cleanup_icm_table(dev, &priv->eq_table.table); in mlx4_free_icms() 1877 mlx4_cleanup_icm_table(dev, &priv->eq_table.cmpt_table); in mlx4_free_icms() 2491 priv->eq_table.inta_pin = adapter.inta_pin; in mlx4_init_hca() 2793 priv->eq_table.eq[MLX4_EQ_ASYNC].irq); in mlx4_setup_hca() 2797 priv->eq_table.eq[MLX4_EQ_ASYNC].irq); in mlx4_setup_hca() 2942 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 | 6991 struct hns_roce_eq_table *eq_table = &hr_dev->eq_table; in __hns_roce_request_irq() local 7024 INIT_WORK(&eq_table->eq[j - other_num].work, in __hns_roce_request_irq() 7026 ret = request_irq(eq_table->eq[j - other_num].irq, in __hns_roce_request_irq() 7029 &eq_table->eq[j - other_num]); in __hns_roce_request_irq() 7031 ret = request_irq(eq_table->eq[j - other_num].irq, in __hns_roce_request_irq() 7034 &eq_table->eq[j - other_num]); in __hns_roce_request_irq() 7051 free_irq(eq_table->eq[j - other_num].irq, in __hns_roce_request_irq() 7052 &eq_table->eq[j - other_num]); in __hns_roce_request_irq() 7054 cancel_work_sync(&eq_table->eq[j - other_num].work); in __hns_roce_request_irq() 7077 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 | 2428 ibdev->eq_table = kzalloc_objs(ibdev->eq_table[0], in mlx4_ib_alloc_eqs() 2430 if (!ibdev->eq_table) in mlx4_ib_alloc_eqs() 2438 ibdev->eq_table[eq] = total_eqs; in mlx4_ib_alloc_eqs() 2440 &ibdev->eq_table[eq])) in mlx4_ib_alloc_eqs() 2443 ibdev->eq_table[eq] = -1; in mlx4_ib_alloc_eqs() 2448 ibdev->eq_table[i++] = -1) in mlx4_ib_alloc_eqs() 2461 if (!ibdev->eq_table) in mlx4_ib_free_eqs() 2468 mlx4_release_eq(dev, ibdev->eq_table[i]); in mlx4_ib_free_eqs() 2470 kfree(ibdev->eq_table); in mlx4_ib_free_eqs() 2471 ibdev->eq_table = NULL; in mlx4_ib_free_eqs()
|
| H A D | cq.c | 249 if (dev->eq_table) in mlx4_ib_create_cq() 250 vector = dev->eq_table[vector % ibdev->num_comp_vectors]; in mlx4_ib_create_cq()
|
| /linux/include/linux/mlx5/ |
| H A D | driver.h | 565 struct mlx5_eq_table *eq_table; member
|