Home
last modified time | relevance | path

Searched +full:num +full:- +full:irqs (Results 1 – 25 of 310) sorted by relevance

12345678910>>...13

/openbmc/linux/arch/powerpc/platforms/powernv/
H A Dpci-cxl.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Copyright 2014-2016 IBM Corp.
7 #include <misc/cxl-base.h>
8 #include <asm/pnv-pci.h>
15 struct pci_controller *hose = pci_bus_to_host(dev->bus); in pnv_phb_to_cxl_mode()
16 struct pnv_phb *phb = hose->private_data; in pnv_phb_to_cxl_mode()
22 return -ENODEV; in pnv_phb_to_cxl_mode()
26 rc = opal_pci_set_phb_cxl_mode(phb->opal_id, mode, pe->pe_number); in pnv_phb_to_cxl_mode()
28 dev_err(&dev->dev, "Required cxl mode not supported by firmware - update skiboot\n"); in pnv_phb_to_cxl_mode()
30 dev_err(&dev->dev, "opal_pci_set_phb_cxl_mode failed: %i\n", rc); in pnv_phb_to_cxl_mode()
[all …]
/openbmc/linux/tools/testing/selftests/kvm/aarch64/
H A Dvgic_irq.c1 // SPDX-License-Identifier: GPL-2.0
3 * vgic_irq.c - Test userspace injection of IRQs
5 * This test validates the injection of IRQs from userspace using various
30 uint32_t nr_irqs; /* number of KVM supported IRQs. */
39 * 0x00 (highest priority) - 0xF8 (lowest priority), in steps of 8
47 #define LOWEST_PRIO (KVM_NUM_PRIOS - 1)
49 #define IRQ_DEFAULT_PRIO (LOWEST_PRIO - 1)
73 uint32_t num; member
80 uint32_t num, int level, bool expect_failure);
86 #define _KVM_INJECT_MULTI(cmd, intid, num, expect_failure) \ argument
[all …]
/openbmc/linux/drivers/gpio/
H A Dgpio-reg.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * gpio-reg: single register individually fixed-direction GPIOs
19 #include <linux/gpio/gpio-reg.h>
28 const int *irqs; member
37 return r->direction & BIT(offset) ? GPIO_LINE_DIRECTION_IN : in gpio_reg_get_direction()
46 if (r->direction & BIT(offset)) in gpio_reg_direction_output()
47 return -ENOTSUPP; in gpio_reg_direction_output()
49 gc->set(gc, offset, value); in gpio_reg_direction_output()
57 return r->direction & BIT(offset) ? 0 : -ENOTSUPP; in gpio_reg_direction_input()
66 spin_lock_irqsave(&r->lock, flags); in gpio_reg_set()
[all …]
/openbmc/linux/Documentation/devicetree/bindings/interrupt-controller/
H A Dfsl,irqsteer.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/interrupt-controller/fsl,irqsteer.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Lucas Stach <l.stach@pengutronix.de>
15 - const: fsl,imx-irqsteer
16 - items:
17 - const: fsl,imx8m-irqsteer
18 - const: fsl,imx-irqsteer
29 - description: output interrupt 0
[all …]
/openbmc/linux/drivers/scsi/cxlflash/
H A Docxl_hw.c1 // SPDX-License-Identifier: GPL-2.0-or-later
29 * Pseudo-filesystem to allocate inodes.
39 return init_pseudo(fc, OCXLFLASH_FS_MAGIC) ? 0 : -ENOMEM; in ocxlflash_fs_init_fs_context()
50 * ocxlflash_release_mapping() - release the memory mapping
55 if (ctx->mapping) in ocxlflash_release_mapping()
57 ctx->mapping = NULL; in ocxlflash_release_mapping()
61 * ocxlflash_getfile() - allocate pseudo filesystem, inode, and the file
78 if (fops->owner && !try_module_get(fops->owner)) { in ocxlflash_getfile()
80 rc = -ENOENT; in ocxlflash_getfile()
92 inode = alloc_anon_inode(ocxlflash_vfs_mount->mnt_sb); in ocxlflash_getfile()
[all …]
H A Dcxl_hw.c1 // SPDX-License-Identifier: GPL-2.0-or-later
37 static int cxlflash_map_afu_irq(void *ctx_cookie, int num, in cxlflash_map_afu_irq() argument
40 return cxl_map_afu_irq(ctx_cookie, num, handler, cookie, name); in cxlflash_map_afu_irq()
43 static void cxlflash_unmap_afu_irq(void *ctx_cookie, int num, void *cookie) in cxlflash_unmap_afu_irq() argument
45 cxl_unmap_afu_irq(ctx_cookie, num, cookie); in cxlflash_unmap_afu_irq()
100 static int cxlflash_allocate_afu_irqs(void *ctx_cookie, int num) in cxlflash_allocate_afu_irqs() argument
102 return cxl_allocate_afu_irqs(ctx_cookie, num); in cxlflash_allocate_afu_irqs()
131 static int cxlflash_start_work(void *ctx_cookie, u64 irqs) in cxlflash_start_work() argument
135 work.num_interrupts = irqs; in cxlflash_start_work()
H A Dbackend.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
22 int (*map_afu_irq)(void *ctx_cookie, int num, irq_handler_t handler,
24 void (*unmap_afu_irq)(void *ctx_cookie, int num, void *cookie);
36 int (*allocate_afu_irqs)(void *ctx_cookie, int num);
43 int (*start_work)(void *ctx_cookie, u64 irqs);
/openbmc/linux/arch/powerpc/sysdev/
H A Dmsi_bitmap.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright 2006-2008, Michael Ellerman, IBM Corporation.
15 int msi_bitmap_alloc_hwirqs(struct msi_bitmap *bmp, int num) in msi_bitmap_alloc_hwirqs() argument
18 int offset, order = get_count_order(num); in msi_bitmap_alloc_hwirqs()
20 spin_lock_irqsave(&bmp->lock, flags); in msi_bitmap_alloc_hwirqs()
22 offset = bitmap_find_next_zero_area(bmp->bitmap, bmp->irq_count, 0, in msi_bitmap_alloc_hwirqs()
23 num, (1 << order) - 1); in msi_bitmap_alloc_hwirqs()
24 if (offset > bmp->irq_count) in msi_bitmap_alloc_hwirqs()
27 bitmap_set(bmp->bitmap, offset, num); in msi_bitmap_alloc_hwirqs()
28 spin_unlock_irqrestore(&bmp->lock, flags); in msi_bitmap_alloc_hwirqs()
[all …]
/openbmc/qemu/hw/intc/
H A Dheathrow_pic.c4 * Copyright (c) 2005-2007 Fabrice Bellard
35 return (pic->events | (pic->levels & pic->level_triggered)) & pic->mask; in heathrow_check_irq()
41 if (heathrow_check_irq(&s->pics[0]) || in heathrow_update_irq()
42 heathrow_check_irq(&s->pics[1])) { in heathrow_update_irq()
43 qemu_irq_raise(s->irqs[0]); in heathrow_update_irq()
45 qemu_irq_lower(s->irqs[0]); in heathrow_update_irq()
56 n = ((addr & 0xfff) - 0x10) >> 4; in heathrow_write()
60 pic = &s->pics[n]; in heathrow_write()
63 pic->mask = value; in heathrow_write()
67 /* do not reset level triggered IRQs */ in heathrow_write()
[all …]
/openbmc/linux/drivers/usb/gadget/udc/
H A Dgoku_udc.c1 // SPDX-License-Identifier: GPL-2.0
3 * Toshiba TC86C001 ("Goku-S") USB Device Controller driver
5 * Copyright (C) 2000-2002 Lineo
12 * This device has ep0 and three semi-configurable bulk/interrupt endpoints.
14 * - Endpoint numbering is fixed: ep{1,2,3}-bulk
15 * - Gadget drivers can choose ep maxpacket (8/16/32/64)
16 * - Gadget drivers can choose direction (IN, OUT)
17 * - DMA works with ep1 (OUT transfers) and ep2 (IN transfers).
21 // #define USB_TRACE /* packet-level success messages */
49 #define DRIVER_VERSION "30-Oct 2003"
[all …]
/openbmc/linux/drivers/irqchip/
H A Dirq-imgpdc.c1 // SPDX-License-Identifier: GPL-2.0
5 * Copyright 2010-2013 Imagination Technologies Ltd.
66 * struct pdc_intc_priv - private pdc interrupt data.
71 * @domain: IRQ domain for PDC peripheral and syswake IRQs.
92 iowrite32(data, priv->pdc_base + reg_offs); in pdc_write()
98 return ioread32(priv->pdc_base + reg_offs); in pdc_read()
112 return hw - SYS0_HWIRQ; in hwirq_to_syswake()
122 return (struct pdc_intc_priv *)data->domain->host_data; in irqd_to_priv()
135 raw_spin_lock(&priv->lock); in perip_irq_mask()
136 priv->irq_route &= ~data->mask; in perip_irq_mask()
[all …]
/openbmc/linux/arch/powerpc/include/asm/
H A Dpnv-pci.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
13 #include <misc/cxl-base.h>
14 #include <asm/opal-api.h>
33 int pnv_cxl_alloc_hwirqs(struct pci_dev *dev, int num);
34 void pnv_cxl_release_hwirqs(struct pci_dev *dev, int hwirq, int num);
41 int pnv_cxl_alloc_hwirq_ranges(struct cxl_irq_ranges *irqs,
42 struct pci_dev *dev, int num);
43 void pnv_cxl_release_hwirq_ranges(struct cxl_irq_ranges *irqs,
/openbmc/linux/drivers/base/
H A Dplatform.c1 // SPDX-License-Identifier: GPL-2.0
3 * platform.c - platform 'pseudo' bus for legacy devices
5 * Copyright (c) 2002-3 Patrick Mochel
6 * Copyright (c) 2002-3 Open Source Development Labs
8 * Please see Documentation/driver-api/driver-model/platform.rst for more
20 #include <linux/dma-mapping.h>
28 #include <linux/clk/clk-conf.h>
34 #include <linux/dma-map-ops.h>
48 * platform_get_resource - get a resource for a device
51 * @num: resource index
[all …]
/openbmc/qemu/hw/timer/
H A Dsifive_pwm.c31 #include "hw/qdev-properties.h"
72 return muldiv64(time, s->freq_hz, NANOSECONDS_PER_SECOND); in sifive_pwm_ns_to_ticks()
78 return muldiv64(ticks, NANOSECONDS_PER_SECOND, s->freq_hz); in sifive_pwm_ticks_to_ns()
83 return s->pwmcfg & R_CONFIG_SCALE_MASK; in sifive_pwm_compute_scale()
90 if (HAS_PWM_EN_BITS(s->pwmcfg)) { in sifive_pwm_set_alarms()
95 uint64_t pwmcount = (sifive_pwm_ns_to_ticks(s, now_ns) - in sifive_pwm_set_alarms()
96 s->tick_offset) & PWMCOUNT_MASK; in sifive_pwm_set_alarms()
102 uint64_t pwmcmp = s->pwmcmp[i] & PWMCMP_MASK; in sifive_pwm_set_alarms()
110 uint64_t offset = pwmcmp_ticks - pwmcount + 1; in sifive_pwm_set_alarms()
115 timer_mod(&s->timer[i], when_to_fire); in sifive_pwm_set_alarms()
[all …]
/openbmc/qemu/include/hw/intc/
H A Darm_gic.h23 * + QOM property "num-cpu": number of CPUs to support
24 * + QOM property "num-irq": number of IRQs (including both SPIs and PPIs)
26 * + QOM property "has-security-extensions": set true if the GIC should
28 * + QOM property "has-virtualization-extensions": set true if the GIC should
30 * + unnamed GPIO inputs: (where P is number of SPIs, i.e. num-irq - 32)
31 * [0..P-1] SPIs
35 * + sysbus IRQs: (in order; number will vary depending on number of cores)
36 * - IRQ for CPU 0
37 * - IRQ for CPU 1
39 * - FIQ for CPU 0
[all …]
/openbmc/linux/drivers/misc/cxl/
H A Dapi.c1 // SPDX-License-Identifier: GPL-2.0-or-later
20 * Since we want to track memory mappings to be able to force-unmap
26 * Therefore we implement our own simple pseudo-filesystem and inode
28 * meta-data associated with it (address_space) and it is shared by
40 return init_pseudo(fc, CXL_PSEUDO_FS_MAGIC) ? 0 : -ENOMEM; in cxl_fs_init_fs_context()
53 if (ctx->kernelapi && ctx->mapping) in cxl_release_mapping()
67 if (fops->owner && !try_module_get(fops->owner)) in cxl_getfile()
68 return ERR_PTR(-ENOENT); in cxl_getfile()
77 inode = alloc_anon_inode(cxl_vfs_mount->mnt_sb); in cxl_getfile()
88 file->private_data = priv; in cxl_getfile()
[all …]
H A Dguest.c1 // SPDX-License-Identifier: GPL-2.0-or-later
28 if (afu->phb == NULL) in pci_error_handlers()
31 list_for_each_entry(afu_dev, &afu->phb->bus->devices, bus_list) { in pci_error_handlers()
32 afu_drv = to_pci_driver(afu_dev->dev.driver); in pci_error_handlers()
36 err_handler = afu_drv->err_handler; in pci_error_handlers()
39 afu_dev->error_state = state; in pci_error_handlers()
42 err_handler->error_detected) in pci_error_handlers()
43 err_handler->error_detected(afu_dev, state); in pci_error_handlers()
46 afu_dev->error_state = state; in pci_error_handlers()
49 err_handler->slot_reset) in pci_error_handlers()
[all …]
/openbmc/linux/include/misc/
H A Dcxl.h1 /* SPDX-License-Identifier: GPL-2.0-or-later */
35 * - cxl_dev_context_init()
36 * - cxl_start_context()
37 * - cxl_stop_context()
38 * - cxl_start_context()
39 * - cxl_stop_context()
41 * - cxl_release_context()
52 * Once a context has been inited, IRQs may be configured. Firstly these IRQs
56 * These IRQs can be unmapped (cxl_unmap_afu_irq()) and finally released
92 * Allocate AFU interrupts for this context. num=0 will allocate the default
[all …]
/openbmc/qemu/hw/ppc/
H A Dspapr_irq.c7 * COPYING file in the top-level directory.
12 #include "qemu/error-report.h"
20 #include "hw/qdev-properties.h"
21 #include "cpu-models.h"
36 if (SPAPR_MACHINE_GET_CLASS(spapr)->legacy_irq_allocation) { in spapr_irq_msi_init()
41 spapr->irq_map_nr = spapr_irq_nr_msis(spapr); in spapr_irq_msi_init()
42 spapr->irq_map = bitmap_new(spapr->irq_map_nr); in spapr_irq_msi_init()
45 int spapr_irq_msi_alloc(SpaprMachineState *spapr, uint32_t num, bool align, in spapr_irq_msi_alloc() argument
56 align -= 1; in spapr_irq_msi_alloc()
58 irq = bitmap_find_next_zero_area(spapr->irq_map, spapr->irq_map_nr, 0, num, in spapr_irq_msi_alloc()
[all …]
/openbmc/linux/drivers/s390/cio/
H A Dairq.c1 // SPDX-License-Identifier: GPL-2.0
35 * register_adapter_interrupt() - register adapter interrupt handler
38 * Returns 0 on success, or -EINVAL.
44 if (!airq->handler || airq->isc > MAX_ISC) in register_adapter_interrupt()
45 return -EINVAL; in register_adapter_interrupt()
46 if (!airq->lsi_ptr) { in register_adapter_interrupt()
47 airq->lsi_ptr = cio_dma_zalloc(1); in register_adapter_interrupt()
48 if (!airq->lsi_ptr) in register_adapter_interrupt()
49 return -ENOMEM; in register_adapter_interrupt()
50 airq->flags |= AIRQ_PTR_ALLOCATED; in register_adapter_interrupt()
[all …]
/openbmc/u-boot/arch/arm/mach-omap2/omap5/
H A Dfdt.c1 // SPDX-License-Identifier: GPL-2.0+
12 #include <asm/arch-omap5/sys_proto.h>
50 /* Reserve IRQs that are used/needed by secure world */ in ft_hs_fixup_crossbar()
59 p_data = fdt_getprop(fdt, offs, "ti,irqs-skip", &len); in ft_hs_fixup_crossbar()
76 fdt_delprop(fdt, offs, "ti,irqs-skip"); in ft_hs_fixup_crossbar()
77 ret = fdt_setprop(fdt, offs, "ti,irqs-skip", in ft_hs_fixup_crossbar()
84 printf("Could not add ti,irqs-skip property to node %s: %s\n", in ft_hs_fixup_crossbar()
106 path = "/ocp/ocmcram@40300000/sram-hs"; in ft_hs_fixup_sram()
199 static int ft_fixup_clocks(void *fdt, const char **names, u32 *rates, int num) in ft_fixup_clocks() argument
211 for (i = 0; i < num; i++) { in ft_fixup_clocks()
[all …]
/openbmc/u-boot/arch/x86/lib/
H A Dpirq_routing.c1 // SPDX-License-Identifier: GPL-2.0+
52 void pirq_route_irqs(struct udevice *dev, struct irq_info *irq, int num) in pirq_route_irqs() argument
62 /* Set PCI IRQs */ in pirq_route_irqs()
63 for (i = 0; i < num; i++) { in pirq_route_irqs()
65 irq->bus, irq->devfn >> 3, irq->devfn & 7); in pirq_route_irqs()
68 int link = irq->irq[intx].link; in pirq_route_irqs()
69 int bitmap = irq->irq[intx].bitmap; in pirq_route_irqs()
100 /* Bus, device, slots IRQs for {A,B,C,D} */ in pirq_route_irqs()
101 pci_assign_irqs(irq->bus, irq->devfn >> 3, irq_slot); in pirq_route_irqs()
118 memcpy((void *)(uintptr_t)addr, rt, rt->size); in copy_pirq_routing_table()
[all …]
/openbmc/linux/kernel/irq/
H A Dmatrix.c1 // SPDX-License-Identifier: GPL-2.0
43 * irq_alloc_matrix - Allocate a irq_matrix structure and initialize it
62 m->matrix_bits = matrix_bits; in irq_alloc_matrix()
63 m->alloc_start = alloc_start; in irq_alloc_matrix()
64 m->alloc_end = alloc_end; in irq_alloc_matrix()
65 m->alloc_size = alloc_end - alloc_start; in irq_alloc_matrix()
66 m->maps = alloc_percpu(*m->maps); in irq_alloc_matrix()
67 if (!m->maps) { in irq_alloc_matrix()
75 * irq_matrix_online - Bring the local CPU matrix online
80 struct cpumap *cm = this_cpu_ptr(m->maps); in irq_matrix_online()
[all …]
/openbmc/linux/drivers/net/ethernet/hisilicon/
H A Dhisi_femac.c1 // SPDX-License-Identifier: GPL-2.0-or-later
38 #define HW_RX_FIFO_DEPTH (MAX_HW_FIFO_DEPTH - HW_TX_FIFO_DEPTH)
84 #define MAX_MULTICAST_ADDRESSES (MAX_MAC_FILTER_NUM - \
91 #define PHY_RESET_DELAYS_PROPERTY "hisilicon,phy-reset-delays-us"
103 int num; member
126 static void hisi_femac_irq_enable(struct hisi_femac_priv *priv, int irqs) in hisi_femac_irq_enable() argument
130 val = readl(priv->glb_base + GLB_IRQ_ENA); in hisi_femac_irq_enable()
131 writel(val | irqs, priv->glb_base + GLB_IRQ_ENA); in hisi_femac_irq_enable()
134 static void hisi_femac_irq_disable(struct hisi_femac_priv *priv, int irqs) in hisi_femac_irq_disable() argument
138 val = readl(priv->glb_base + GLB_IRQ_ENA); in hisi_femac_irq_disable()
[all …]
/openbmc/linux/drivers/vdpa/solidrun/
H A Dsnet_main.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2022-2023 SolidRun
7 * Author: Alvaro Karsz <alvaro.karsz@solid-run.com>
42 if (likely(snet->cb.callback)) in snet_cfg_irq_hndlr()
43 return snet->cb.callback(snet->cb.private); in snet_cfg_irq_hndlr()
52 if (likely(vq->cb.callback)) in snet_vq_irq_hndlr()
53 return vq->cb.callback(vq->cb.private); in snet_vq_irq_hndlr()
60 struct psnet *psnet = snet->psnet; in snet_free_irqs()
64 /* Which Device allcoated the IRQs? */ in snet_free_irqs()
66 pdev = snet->pdev->physfn; in snet_free_irqs()
[all …]

12345678910>>...13