| /linux/drivers/gpu/drm/nouveau/nvkm/core/ |
| H A D | intr.c | 29 nvkm_intr_xlat(struct nvkm_subdev *subdev, struct nvkm_intr *intr, in nvkm_intr_xlat() argument 36 const struct nvkm_intr_data *data = intr->data; in nvkm_intr_xlat() 42 if (tdev->intr >= 0 && in nvkm_intr_xlat() 45 if (data->mask & BIT(tdev->intr)) { in nvkm_intr_xlat() 47 *mask = BIT(tdev->intr); in nvkm_intr_xlat() 65 if (type < intr->leaves * sizeof(*intr->stat) * 8) { in nvkm_intr_xlat() 78 struct nvkm_intr *intr; in nvkm_intr_find() local 81 list_for_each_entry(intr, &subdev->device->intr.intr, head) { in nvkm_intr_find() 82 ret = nvkm_intr_xlat(subdev, intr, type, leaf, mask); in nvkm_intr_find() 84 return intr; in nvkm_intr_find() [all …]
|
| /linux/drivers/irqchip/ |
| H A D | irq-ti-sci-intr.c | 62 struct ti_sci_intr_irq_domain *intr = domain->host_data; in ti_sci_intr_irq_domain_translate() local 68 *type = intr->type; in ti_sci_intr_irq_domain_translate() 80 static int ti_sci_intr_xlate_irq(struct ti_sci_intr_irq_domain *intr, u32 irq) in ti_sci_intr_xlate_irq() argument 82 struct device_node *np = dev_of_node(intr->dev); in ti_sci_intr_xlate_irq() 111 struct ti_sci_intr_irq_domain *intr = domain->host_data; in ti_sci_intr_irq_domain_free() local 118 intr->sci->ops.rm_irq_ops.free_irq(intr->sci, in ti_sci_intr_irq_domain_free() 119 intr->ti_sci_id, data->hwirq, in ti_sci_intr_irq_domain_free() 120 intr->ti_sci_id, out_irq); in ti_sci_intr_irq_domain_free() 121 ti_sci_release_resource(intr->out_irqs, out_irq); in ti_sci_intr_irq_domain_free() 137 struct ti_sci_intr_irq_domain *intr = domain->host_data; in ti_sci_intr_alloc_parent_irq() local [all …]
|
| H A D | irq-mips-gic.c | 150 static void gic_clear_pcpu_masks(unsigned int intr) in gic_clear_pcpu_masks() argument 156 clear_bit(intr, per_cpu_ptr(pcpu_masks, i)); in gic_clear_pcpu_masks() 159 static bool gic_local_irq_is_routable(int intr) in gic_local_irq_is_routable() argument 168 switch (intr) { in gic_local_irq_is_routable() 239 unsigned int intr; in gic_handle_shared_int() local 255 for_each_set_bit(intr, pending, gic_shared_intrs) { in gic_handle_shared_int() 258 GIC_SHARED_TO_HWIRQ(intr)); in gic_handle_shared_int() 261 GIC_SHARED_TO_HWIRQ(intr)); in gic_handle_shared_int() 267 unsigned int intr = GIC_HWIRQ_TO_SHARED(d->hwirq); in gic_mask_irq() local 270 write_gic_redir_rmask(intr); in gic_mask_irq() [all …]
|
| H A D | irq-mxs.c | 53 void __iomem *intr; member 75 return icoll_priv.intr + ((d->hwirq >> 2) * 0x10); in icoll_intr_reg() 92 icoll_priv.intr + CLR_REG + HW_ICOLL_INTERRUPTn(d->hwirq)); in icoll_mask_irq() 98 icoll_priv.intr + SET_REG + HW_ICOLL_INTERRUPTn(d->hwirq)); in icoll_unmask_irq() 194 icoll_priv.intr = icoll_base + HW_ICOLL_INTERRUPT0; in icoll_of_init() 223 icoll_priv.intr = icoll_base + ASM9260_HW_ICOLL_INTERRUPT0; in asm9260_of_init() 233 writel(0, icoll_priv.intr + i); in asm9260_of_init()
|
| /linux/drivers/net/ethernet/cisco/enic/ |
| H A D | vnic_intr.c | 17 void vnic_intr_free(struct vnic_intr *intr) in vnic_intr_free() argument 19 intr->ctrl = NULL; in vnic_intr_free() 22 int vnic_intr_alloc(struct vnic_dev *vdev, struct vnic_intr *intr, in vnic_intr_alloc() argument 25 intr->index = index; in vnic_intr_alloc() 26 intr->vdev = vdev; in vnic_intr_alloc() 28 intr->ctrl = vnic_dev_get_res(vdev, RES_TYPE_INTR_CTRL, index); in vnic_intr_alloc() 29 if (!intr->ctrl) { in vnic_intr_alloc() 38 void vnic_intr_init(struct vnic_intr *intr, u32 coalescing_timer, in vnic_intr_init() argument 41 vnic_intr_coalescing_timer_set(intr, coalescing_timer); in vnic_intr_init() 42 iowrite32(coalescing_type, &intr->ctrl->coalescing_type); in vnic_intr_init() [all …]
|
| H A D | vnic_intr.h | 41 static inline void vnic_intr_unmask(struct vnic_intr *intr) in vnic_intr_unmask() argument 43 iowrite32(0, &intr->ctrl->mask); in vnic_intr_unmask() 46 static inline void vnic_intr_mask(struct vnic_intr *intr) in vnic_intr_mask() argument 48 iowrite32(1, &intr->ctrl->mask); in vnic_intr_mask() 51 static inline int vnic_intr_masked(struct vnic_intr *intr) in vnic_intr_masked() argument 53 return ioread32(&intr->ctrl->mask); in vnic_intr_masked() 56 static inline void vnic_intr_return_credits(struct vnic_intr *intr, in vnic_intr_return_credits() argument 66 iowrite32(int_credit_return, &intr->ctrl->int_credit_return); in vnic_intr_return_credits() 69 static inline unsigned int vnic_intr_credits(struct vnic_intr *intr) in vnic_intr_credits() argument 71 return ioread32(&intr->ctrl->int_credits); in vnic_intr_credits() [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/vfn/ |
| H A D | tu102.c | 29 tu102_vfn_intr_reset(struct nvkm_intr *intr, int leaf, u32 mask) in tu102_vfn_intr_reset() argument 31 struct nvkm_vfn *vfn = container_of(intr, typeof(*vfn), intr); in tu102_vfn_intr_reset() 37 tu102_vfn_intr_allow(struct nvkm_intr *intr, int leaf, u32 mask) in tu102_vfn_intr_allow() argument 39 struct nvkm_vfn *vfn = container_of(intr, typeof(*vfn), intr); in tu102_vfn_intr_allow() 45 tu102_vfn_intr_block(struct nvkm_intr *intr, int leaf, u32 mask) in tu102_vfn_intr_block() argument 47 struct nvkm_vfn *vfn = container_of(intr, typeof(*vfn), intr); in tu102_vfn_intr_block() 53 tu102_vfn_intr_rearm(struct nvkm_intr *intr) in tu102_vfn_intr_rearm() argument 55 struct nvkm_vfn *vfn = container_of(intr, typeof(*vfn), intr); in tu102_vfn_intr_rearm() 61 tu102_vfn_intr_unarm(struct nvkm_intr *intr) in tu102_vfn_intr_unarm() argument 63 struct nvkm_vfn *vfn = container_of(intr, typeof(*vfn), intr); in tu102_vfn_intr_unarm() [all …]
|
| /linux/drivers/scsi/fnic/ |
| H A D | vnic_intr.c | 15 void vnic_intr_free(struct vnic_intr *intr) in vnic_intr_free() argument 17 intr->ctrl = NULL; in vnic_intr_free() 20 int vnic_intr_alloc(struct vnic_dev *vdev, struct vnic_intr *intr, in vnic_intr_alloc() argument 23 intr->index = index; in vnic_intr_alloc() 24 intr->vdev = vdev; in vnic_intr_alloc() 26 intr->ctrl = vnic_dev_get_res(vdev, RES_TYPE_INTR_CTRL, index); in vnic_intr_alloc() 27 if (!intr->ctrl) { in vnic_intr_alloc() 36 void vnic_intr_init(struct vnic_intr *intr, unsigned int coalescing_timer, in vnic_intr_init() argument 39 iowrite32(coalescing_timer, &intr->ctrl->coalescing_timer); in vnic_intr_init() 40 iowrite32(coalescing_type, &intr->ctrl->coalescing_type); in vnic_intr_init() [all …]
|
| H A D | vnic_intr.h | 56 static inline void vnic_intr_unmask(struct vnic_intr *intr) in vnic_intr_unmask() argument 58 iowrite32(0, &intr->ctrl->mask); in vnic_intr_unmask() 61 static inline void vnic_intr_mask(struct vnic_intr *intr) in vnic_intr_mask() argument 63 iowrite32(1, &intr->ctrl->mask); in vnic_intr_mask() 66 static inline void vnic_intr_return_credits(struct vnic_intr *intr, in vnic_intr_return_credits() argument 76 iowrite32(int_credit_return, &intr->ctrl->int_credit_return); in vnic_intr_return_credits() 79 static inline unsigned int vnic_intr_credits(struct vnic_intr *intr) in vnic_intr_credits() argument 81 return ioread32(&intr->ctrl->int_credits); in vnic_intr_credits() 84 static inline void vnic_intr_return_all_credits(struct vnic_intr *intr) in vnic_intr_return_all_credits() argument 86 unsigned int credits = vnic_intr_credits(intr); in vnic_intr_return_all_credits() [all …]
|
| /linux/drivers/scsi/snic/ |
| H A D | vnic_intr.c | 12 void svnic_intr_free(struct vnic_intr *intr) in svnic_intr_free() argument 14 intr->ctrl = NULL; in svnic_intr_free() 17 int svnic_intr_alloc(struct vnic_dev *vdev, struct vnic_intr *intr, in svnic_intr_alloc() argument 20 intr->index = index; in svnic_intr_alloc() 21 intr->vdev = vdev; in svnic_intr_alloc() 23 intr->ctrl = svnic_dev_get_res(vdev, RES_TYPE_INTR_CTRL, index); in svnic_intr_alloc() 24 if (!intr->ctrl) { in svnic_intr_alloc() 33 void svnic_intr_init(struct vnic_intr *intr, unsigned int coalescing_timer, in svnic_intr_init() argument 36 iowrite32(coalescing_timer, &intr->ctrl->coalescing_timer); in svnic_intr_init() 37 iowrite32(coalescing_type, &intr->ctrl->coalescing_type); in svnic_intr_init() [all …]
|
| H A D | vnic_intr.h | 40 svnic_intr_unmask(struct vnic_intr *intr) in svnic_intr_unmask() argument 42 iowrite32(0, &intr->ctrl->mask); in svnic_intr_unmask() 46 svnic_intr_mask(struct vnic_intr *intr) in svnic_intr_mask() argument 48 iowrite32(1, &intr->ctrl->mask); in svnic_intr_mask() 52 svnic_intr_return_credits(struct vnic_intr *intr, in svnic_intr_return_credits() argument 64 iowrite32(int_credit_return, &intr->ctrl->int_credit_return); in svnic_intr_return_credits() 68 svnic_intr_credits(struct vnic_intr *intr) in svnic_intr_credits() argument 70 return ioread32(&intr->ctrl->int_credits); in svnic_intr_credits() 74 svnic_intr_return_all_credits(struct vnic_intr *intr) in svnic_intr_return_all_credits() argument 76 unsigned int credits = svnic_intr_credits(intr); in svnic_intr_return_all_credits() [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/mc/ |
| H A D | gp100.c | 48 gp100_mc_intr_allow(struct nvkm_intr *intr, int leaf, u32 mask) in gp100_mc_intr_allow() argument 50 struct nvkm_mc *mc = container_of(intr, typeof(*mc), intr); in gp100_mc_intr_allow() 56 gp100_mc_intr_block(struct nvkm_intr *intr, int leaf, u32 mask) in gp100_mc_intr_block() argument 58 struct nvkm_mc *mc = container_of(intr, typeof(*mc), intr); in gp100_mc_intr_block() 64 gp100_mc_intr_rearm(struct nvkm_intr *intr) in gp100_mc_intr_rearm() argument 68 for (i = 0; i < intr->leaves; i++) in gp100_mc_intr_rearm() 69 intr->func->allow(intr, i, intr->mask[i]); in gp100_mc_intr_rearm() 73 gp100_mc_intr_unarm(struct nvkm_intr *intr) in gp100_mc_intr_unarm() argument 77 for (i = 0; i < intr->leaves; i++) in gp100_mc_intr_unarm() 78 intr->func->block(intr, i, 0xffffffff); in gp100_mc_intr_unarm() [all …]
|
| H A D | nv04.c | 72 nv04_mc_intr_rearm(struct nvkm_intr *intr) in nv04_mc_intr_rearm() argument 74 struct nvkm_mc *mc = container_of(intr, typeof(*mc), intr); in nv04_mc_intr_rearm() 77 for (leaf = 0; leaf < intr->leaves; leaf++) in nv04_mc_intr_rearm() 82 nv04_mc_intr_unarm(struct nvkm_intr *intr) in nv04_mc_intr_unarm() argument 84 struct nvkm_mc *mc = container_of(intr, typeof(*mc), intr); in nv04_mc_intr_unarm() 87 for (leaf = 0; leaf < intr->leaves; leaf++) in nv04_mc_intr_unarm() 94 nv04_mc_intr_pending(struct nvkm_intr *intr) in nv04_mc_intr_pending() argument 96 struct nvkm_mc *mc = container_of(intr, typeof(*mc), intr); in nv04_mc_intr_pending() 100 for (leaf = 0; leaf < intr->leaves; leaf++) { in nv04_mc_intr_pending() 101 intr->stat[leaf] = nvkm_rd32(mc->subdev.device, 0x000100 + (leaf * 4)); in nv04_mc_intr_pending() [all …]
|
| H A D | gt215.c | 57 gt215_mc_intr_allow(struct nvkm_intr *intr, int leaf, u32 mask) in gt215_mc_intr_allow() argument 59 struct nvkm_mc *mc = container_of(intr, typeof(*mc), intr); in gt215_mc_intr_allow() 65 gt215_mc_intr_block(struct nvkm_intr *intr, int leaf, u32 mask) in gt215_mc_intr_block() argument 67 struct nvkm_mc *mc = container_of(intr, typeof(*mc), intr); in gt215_mc_intr_block() 84 .intr = &nv04_mc_intr,
|
| /linux/arch/mips/include/asm/ |
| H A D | mips-gic.h | 51 static inline void __iomem *addr_gic_##name(unsigned int intr) \ 53 return mips_gic_base + (off) + (intr * (stride)); \ 56 static inline unsigned int read_gic_##name(unsigned int intr) \ 59 return __raw_readl(addr_gic_##name(intr)); \ 66 static inline void write_gic_##name(unsigned int intr, \ 70 __raw_writel(val, addr_gic_##name(intr)); \ 102 static inline unsigned int read_gic_##name(unsigned int intr) \ 108 addr += (intr / 64) * sizeof(uint64_t); \ 109 val = __raw_readq(addr) >> intr % 64; \ 111 addr += (intr / 32) * sizeof(uint32_t); \ [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/engine/ce/ |
| H A D | gk104.c | 65 u32 intr = nvkm_rd32(device, 0x104908 + base) & mask; in gk104_ce_intr() local 66 if (intr & 0x00000001) { in gk104_ce_intr() 69 intr &= ~0x00000001; in gk104_ce_intr() 71 if (intr & 0x00000002) { in gk104_ce_intr() 74 intr &= ~0x00000002; in gk104_ce_intr() 76 if (intr & 0x00000004) { in gk104_ce_intr() 79 intr &= ~0x00000004; in gk104_ce_intr() 81 if (intr) { in gk104_ce_intr() 82 nvkm_warn(subdev, "intr %08x\n", intr); in gk104_ce_intr() 83 nvkm_wr32(device, 0x104908 + base, intr); in gk104_ce_intr() [all …]
|
| H A D | gp100.c | 66 u32 intr = nvkm_rd32(device, 0x104410 + base) & mask; in gp100_ce_intr() local 67 if (intr & 0x00000001) { //XXX: guess in gp100_ce_intr() 70 intr &= ~0x00000001; in gp100_ce_intr() 72 if (intr & 0x00000002) { //XXX: guess in gp100_ce_intr() 75 intr &= ~0x00000002; in gp100_ce_intr() 77 if (intr & 0x00000004) { in gp100_ce_intr() 80 intr &= ~0x00000004; in gp100_ce_intr() 82 if (intr) { in gp100_ce_intr() 83 nvkm_warn(subdev, "intr %08x\n", intr); in gp100_ce_intr() 84 nvkm_wr32(device, 0x104410 + base, intr); in gp100_ce_intr() [all …]
|
| /linux/arch/powerpc/platforms/52xx/ |
| H A D | mpc52xx_pic.c | 134 static struct mpc52xx_intr __iomem *intr; variable 162 io_be_clrbit(&intr->ctrl, 11 - l2irq); in mpc52xx_extirq_mask() 168 io_be_setbit(&intr->ctrl, 11 - l2irq); in mpc52xx_extirq_unmask() 174 io_be_setbit(&intr->ctrl, 27-l2irq); in mpc52xx_extirq_ack() 195 ctrl_reg = in_be32(&intr->ctrl); in mpc52xx_extirq_set_type() 198 out_be32(&intr->ctrl, ctrl_reg); in mpc52xx_extirq_set_type() 224 io_be_setbit(&intr->main_mask, 16 - l2irq); in mpc52xx_main_mask() 230 io_be_clrbit(&intr->main_mask, 16 - l2irq); in mpc52xx_main_unmask() 247 io_be_setbit(&intr->per_mask, 31 - l2irq); in mpc52xx_periph_mask() 253 io_be_clrbit(&intr->per_mask, 31 - l2irq); in mpc52xx_periph_unmask() [all …]
|
| /linux/drivers/net/wireless/zydas/zd1211rw/ |
| H A D | zd_usb.c | 360 struct zd_usb_interrupt *intr = &usb->intr; in handle_regs_int_override() local 363 spin_lock_irqsave(&intr->lock, flags); in handle_regs_int_override() 364 if (atomic_read(&intr->read_regs_enabled)) { in handle_regs_int_override() 365 atomic_set(&intr->read_regs_enabled, 0); in handle_regs_int_override() 366 intr->read_regs_int_overridden = 1; in handle_regs_int_override() 367 complete(&intr->read_regs.completion); in handle_regs_int_override() 369 spin_unlock_irqrestore(&intr->lock, flags); in handle_regs_int_override() 375 struct zd_usb_interrupt *intr = &usb->intr; in handle_regs_int() local 380 spin_lock_irqsave(&intr->lock, flags); in handle_regs_int() 390 } else if (atomic_read(&intr->read_regs_enabled)) { in handle_regs_int() [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/therm/ |
| H A D | g84.c | 145 uint32_t intr; in g84_therm_intr() local 149 intr = nvkm_rd32(device, 0x20100) & 0x3ff; in g84_therm_intr() 152 if (intr & 0x002) { in g84_therm_intr() 156 intr &= ~0x002; in g84_therm_intr() 160 if (intr & 0x004) { in g84_therm_intr() 164 intr &= ~0x004; in g84_therm_intr() 168 if (intr & 0x008) { in g84_therm_intr() 172 intr &= ~0x008; in g84_therm_intr() 176 if (intr & 0x010) { in g84_therm_intr() 180 intr &= ~0x010; in g84_therm_intr() [all …]
|
| /linux/drivers/scsi/ |
| H A D | mac53c94.c | 46 int intr; member 198 int nb, stat, seq, intr; in mac53c94_interrupt() local 207 intr = readb(®s->interrupt); in mac53c94_interrupt() 211 intr, stat, seq, state->phase); in mac53c94_interrupt() 214 if (intr & INTR_RESET) { in mac53c94_interrupt() 222 if (intr & INTR_ILL_CMD) { in mac53c94_interrupt() 224 intr, stat, seq, state->phase); in mac53c94_interrupt() 232 intr, stat, seq, state->phase); in mac53c94_interrupt() 248 if (intr & INTR_DISCONNECT) { in mac53c94_interrupt() 253 if (intr != INTR_BUS_SERV + INTR_DONE) { in mac53c94_interrupt() [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/pmu/ |
| H A D | gt215.c | 144 u32 intr = nvkm_rd32(device, 0x10a008) & disp & ~(disp >> 16); in gt215_pmu_intr() local 146 if (intr & 0x00000020) { in gt215_pmu_intr() 153 intr &= ~0x00000020; in gt215_pmu_intr() 157 if (intr & 0x00000040) { in gt215_pmu_intr() 160 intr &= ~0x00000040; in gt215_pmu_intr() 163 if (intr & 0x00000080) { in gt215_pmu_intr() 168 intr &= ~0x00000080; in gt215_pmu_intr() 171 if (intr) { in gt215_pmu_intr() 172 nvkm_error(subdev, "intr %08x\n", intr); in gt215_pmu_intr() 173 nvkm_wr32(device, 0x10a004, intr); in gt215_pmu_intr() [all …]
|
| /linux/drivers/gpu/drm/vmwgfx/ |
| H A D | vmwgfx_validation.h | 120 bool intr) in vmw_validation_bo_reserve() argument 122 return ttm_eu_reserve_buffers(&ctx->ticket, &ctx->bo_list, intr, in vmw_validation_bo_reserve() 156 int vmw_validation_bo_validate(struct vmw_validation_context *ctx, bool intr); 166 bool intr); 173 int vmw_validation_res_validate(struct vmw_validation_context *ctx, bool intr); 176 struct mutex *mutex, bool intr);
|
| /linux/drivers/gpu/drm/nouveau/nvkm/engine/sec2/ |
| H A D | base.c | 100 struct nvkm_intr *intr = &sec2->engine.subdev.device->mc->intr; in nvkm_sec2_oneinit() local 104 intr = sec2->func->intr_vector(sec2, &type); in nvkm_sec2_oneinit() 105 if (IS_ERR(intr)) in nvkm_sec2_oneinit() 106 return PTR_ERR(intr); in nvkm_sec2_oneinit() 109 return nvkm_inth_add(intr, type, NVKM_INTR_PRIO_NORMAL, subdev, sec2->func->intr, in nvkm_sec2_oneinit()
|
| /linux/Documentation/devicetree/bindings/cpufreq/ |
| H A D | brcm,stb-avs-cpu-freq.txt | 6 second node (brcm,avs-cpu-l2-intr) is required to trigger an interrupt on 37 Node brcm,avs-cpu-l2-intr 41 - compatible: must include: brcm,avs-cpu-l2-intr and 42 should include: one of brcm,bcm7271-avs-cpu-l2-intr or 43 brcm,bcm7268-avs-cpu-l2-intr 72 avs-cpu-l2-intr@f04d1100 { 73 compatible = "brcm,bcm7271-avs-cpu-l2-intr", 74 "brcm,avs-cpu-l2-intr";
|