| /rk3399_rockchip-uboot/arch/x86/lib/ |
| H A D | interrupts.c | 48 void irq_install_handler(int irq, interrupt_handler_t *handler, void *arg) in irq_install_handler() argument 52 if (irq < 0 || irq >= SYS_NUM_IRQS) { in irq_install_handler() 53 printf("irq_install_handler: bad irq number %d\n", irq); in irq_install_handler() 57 if (irq_handlers[irq].handler != NULL) in irq_install_handler() 60 (ulong) irq_handlers[irq].handler); in irq_install_handler() 64 irq_handlers[irq].handler = handler; in irq_install_handler() 65 irq_handlers[irq].arg = arg; in irq_install_handler() 66 irq_handlers[irq].count = 0; in irq_install_handler() 68 unmask_irq(irq); in irq_install_handler() 76 void irq_free_handler(int irq) in irq_free_handler() argument [all …]
|
| H A D | pirq_routing.c | 18 u8 irq = 0; in pirq_get_next_free_irq() local 27 irq = i; in pirq_get_next_free_irq() 30 if (irq_already_routed[irq]) in pirq_get_next_free_irq() 34 if (pirq_check_irq_routed(dev, link, irq)) { in pirq_get_next_free_irq() 35 irq_already_routed[irq] = true; in pirq_get_next_free_irq() 41 if (!irq_already_routed[irq]) { in pirq_get_next_free_irq() 42 irq_already_routed[irq] = true; in pirq_get_next_free_irq() 50 return irq; in pirq_get_next_free_irq() 53 void pirq_route_irqs(struct udevice *dev, struct irq_info *irq, int num) in pirq_route_irqs() argument 66 irq->bus, irq->devfn >> 3, irq->devfn & 7); in pirq_route_irqs() [all …]
|
| H A D | i8259.c | 67 void mask_irq(int irq) in mask_irq() argument 71 if (irq >= SYS_NUM_IRQS) in mask_irq() 74 if (irq > 7) in mask_irq() 79 outb(inb(imr_port) | (1 << (irq & 7)), imr_port); in mask_irq() 82 void unmask_irq(int irq) in unmask_irq() argument 86 if (irq >= SYS_NUM_IRQS) in unmask_irq() 89 if (irq > 7) in unmask_irq() 94 outb(inb(imr_port) & ~(1 << (irq & 7)), imr_port); in unmask_irq() 97 void specific_eoi(int irq) in specific_eoi() argument 99 if (irq >= SYS_NUM_IRQS) in specific_eoi() [all …]
|
| /rk3399_rockchip-uboot/drivers/irq/ |
| H A D | irq-gic.c | 20 #define IRQ_REG_X4(irq) (4 * ((irq) / 4)) argument 21 #define IRQ_REG_X16(irq) (4 * ((irq) / 16)) argument 22 #define IRQ_REG_X32(irq) (4 * ((irq) / 32)) argument 23 #define IRQ_REG_X4_OFFSET(irq) ((irq) % 4) argument 24 #define IRQ_REG_X16_OFFSET(irq) ((irq) % 16) argument 25 #define IRQ_REG_X32_OFFSET(irq) ((irq) % 32) argument 117 static int gic_irq_set_trigger(int irq, eINT_TRIG trig) in gic_irq_set_trigger() argument 122 val = gicd_readl(GICD_ICFGR + IRQ_REG_X16(irq)); in gic_irq_set_trigger() 123 val &= ~(1 << (2 * IRQ_REG_X16_OFFSET(irq) + 1)); in gic_irq_set_trigger() 124 gicd_writel(val, GICD_ICFGR + IRQ_REG_X16(irq)); in gic_irq_set_trigger() [all …]
|
| H A D | irq-generic.c | 35 int bad_irq(int irq) in bad_irq() argument 42 if (irq < PLATFORM_MAX_IRQ) { in bad_irq() 43 if (!irq_desc[irq].handle_irq) in bad_irq() 46 if (bad_virq(irq)) { in bad_irq() 47 IRQ_E("Unknown virq: %d\n", irq); in bad_irq() 56 void __generic_gpio_handle_irq(int irq) in __generic_gpio_handle_irq() argument 58 if (bad_irq(irq)) in __generic_gpio_handle_irq() 61 if (irq < PLATFORM_GIC_MAX_IRQ) { in __generic_gpio_handle_irq() 62 IRQ_W("IRQ %d: Invalid GPIO irq\n", irq); in __generic_gpio_handle_irq() 66 if (irq_desc[irq].handle_irq) { in __generic_gpio_handle_irq() [all …]
|
| H A D | virq.c | 27 int irq; member 52 static struct virq_desc *find_virq_desc(int irq) in find_virq_desc() argument 59 if (irq >= desc->irq_base && irq <= desc->irq_end) in find_virq_desc() 84 int irq; in virq_to_irq() local 92 irq = desc->irq_base + virq; in virq_to_irq() 93 if (irq >= desc->irq_base && irq <= desc->irq_end) in virq_to_irq() 94 return irq; in virq_to_irq() 101 int bad_virq(int irq) in bad_virq() argument 103 return !find_virq_desc(irq); in bad_virq() 127 vdata[i].irq, in virqs_show() [all …]
|
| H A D | Makefile | 7 obj-y += irq-gic.o 10 obj-y += irq-gpio-v2.o 12 obj-y += irq-gpio.o 14 obj-y += irq-generic.o 15 obj-y += irq-gpio-switch.o
|
| H A D | irq-internal.h | 38 int bad_virq(int irq); 40 void virq_free_handler(int irq); 41 int virq_install_handler(int irq, interrupt_handler_t *handler, void *data); 46 int bad_irq(int irq); 84 int irq_to_gpio(int irq); 88 void __generic_gpio_handle_irq(int irq);
|
| H A D | irq-gpio-switch.c | 64 int irq; in __hard_gpio_to_irq() local 74 irq = (gpio_banks[idx].irq_base + pin); in __hard_gpio_to_irq() 75 if (irq_is_busy(irq)) in __hard_gpio_to_irq() 77 return irq; in __hard_gpio_to_irq() 168 int irq, node; in __phandle_gpio_to_irq() local 189 irq = RK_IRQ_GPIO(bank, offset); in __phandle_gpio_to_irq() 190 if (!gpio_is_valid(irq)) in __phandle_gpio_to_irq() 193 return __hard_gpio_to_irq(irq); in __phandle_gpio_to_irq() 196 static int __irq_to_gpio(int irq) in __irq_to_gpio() argument 200 bank = (irq - PIN_BASE) / GPIO_BANK_PINS; in __irq_to_gpio() [all …]
|
| /rk3399_rockchip-uboot/include/ |
| H A D | irq-generic.h | 58 int (*irq_enable)(int irq); 59 int (*irq_disable)(int irq); 60 void (*irq_ack)(int irq); 61 void (*irq_eoi)(int irq); 62 int (*irq_set_type)(int irq, unsigned int flow_type); 63 int (*irq_revert_type)(int irq); 64 int (*irq_get_gpio_level)(int irq); 92 void irq_install_handler(int irq, interrupt_handler_t *handler, void *data); 93 void irq_free_handler(int irq); 94 int irq_set_irq_type(int irq, unsigned int type); [all …]
|
| H A D | ali512x.h | 22 void ali512x_set_fdc(int enabled, u16 io, u8 irq, u8 dma_channel); 23 void ali512x_set_pp(int enabled, u16 io, u8 irq, u8 dma_channel); 24 void ali512x_set_uart(int enabled, int index, u16 io, u8 irq); 25 void ali512x_set_rtc(int enabled, u16 io, u8 irq);
|
| /rk3399_rockchip-uboot/arch/microblaze/cpu/ |
| H A D | interrupts.c | 47 static void enable_one_interrupt(int irq) in enable_one_interrupt() argument 52 offset <<= irq; in enable_one_interrupt() 62 static void disable_one_interrupt(int irq) in disable_one_interrupt() argument 67 offset <<= irq; in disable_one_interrupt() 71 debug("Disable one interrupt irq %x - mask %x,ier %x\n", irq, mask, in disable_one_interrupt() 77 int install_interrupt_handler(int irq, interrupt_handler_t *hdlr, void *arg) in install_interrupt_handler() argument 82 if ((irq < 0) || (irq > irq_no)) { in install_interrupt_handler() 86 act = &vecs[irq]; in install_interrupt_handler() 91 enable_one_interrupt(irq); in install_interrupt_handler() 97 act->arg = (void *)irq; in install_interrupt_handler() [all …]
|
| H A D | timer.c | 46 int irq = -1; in timer_init() local 70 irq = cell[0]; in timer_init() 71 debug("TIMER: IRQ %x\n", irq); in timer_init() 79 if (tmr && preload && irq >= 0) { in timer_init() 85 ret = install_interrupt_handler (irq, timer_isr, (void *)tmr); in timer_init()
|
| /rk3399_rockchip-uboot/drivers/input/ |
| H A D | key-uclass.c | 250 irq_handler_disable(uc_key->irq); in power_key_download() 262 static void gpio_irq_handler(int irq, void *data) in gpio_irq_handler() argument 267 if (uc_key->irq != irq) in gpio_irq_handler() 271 uc_key->irq_thread(irq, data); in gpio_irq_handler() 273 if (irq_get_gpio_level(irq)) { in gpio_irq_handler() 285 irq_revert_irq_type(irq); in gpio_irq_handler() 342 int irq; in key_post_probe() local 347 irq = phandle_gpio_to_irq(uc_key->gpios[0], in key_post_probe() 349 if (irq < 0) { in key_post_probe() 351 uc_key->name, irq); in key_post_probe() [all …]
|
| /rk3399_rockchip-uboot/arch/nios2/cpu/ |
| H A D | interrupts.c | 77 void irq_install_handler (int irq, interrupt_handler_t *hdlr, void *arg) in irq_install_handler() argument 84 if ((irq < 0) || (irq > 31)) in irq_install_handler() 86 act = &vecs[irq]; in irq_install_handler() 92 ena |= (1 << irq); /* enable */ in irq_install_handler() 95 act->arg = (void *)irq; in irq_install_handler() 96 ena &= ~(1 << irq); /* disable */ in irq_install_handler()
|
| /rk3399_rockchip-uboot/drivers/rtc/ |
| H A D | rk8xx_rtc.c | 48 static void rtc_irq_handler(int irq, void *data) in rtc_irq_handler() argument 54 debug("%s: irq = %d\n", __func__, irq); in rtc_irq_handler() 83 int irq; in rtc_interrupt_init() local 90 irq = virq_to_irq(rk8xx->irq_chip, RK8XX_IRQ_RTC_ALARM); in rtc_interrupt_init() 91 if (irq < 0) { in rtc_interrupt_init() 92 if (irq == -EBUSY) { in rtc_interrupt_init() 96 return irq; in rtc_interrupt_init() 98 irq_install_handler(irq, rtc_irq_handler, dev); in rtc_interrupt_init() 99 irq_set_irq_type(irq, IRQ_TYPE_EDGE_FALLING); in rtc_interrupt_init() 100 irq_handler_enable(irq); in rtc_interrupt_init()
|
| /rk3399_rockchip-uboot/arch/powerpc/cpu/mpc8xx/ |
| H A D | interrupts.c | 54 int irq; in external_interrupt() local 63 irq = vec >> 26; in external_interrupt() 64 v_bit = 0x80000000UL >> irq; in external_interrupt() 70 clrbits_be32(&immr->im_siu_conf.sc_simask, 0xFFFF0000 >> irq); in external_interrupt() 72 if (!(irq & 0x1)) { /* External Interrupt ? */ in external_interrupt() 88 if (irq_vecs[irq].handler != NULL) { in external_interrupt() 89 irq_vecs[irq].handler(irq_vecs[irq].arg); in external_interrupt() 92 irq, vec); in external_interrupt()
|
| /rk3399_rockchip-uboot/arch/x86/cpu/ |
| H A D | irq.c | 20 bool pirq_check_irq_routed(struct udevice *dev, int link, u8 irq) in pirq_check_irq_routed() argument 37 return pirq == irq ? true : false; in pirq_check_irq_routed() 47 void pirq_assign_irq(struct udevice *dev, int link, u8 irq) in pirq_assign_irq() argument 53 if (irq < 3 || irq == 8 || irq == 13) in pirq_assign_irq() 57 dm_pci_write_config8(dev->parent, LINK_N2V(link, base), irq); in pirq_assign_irq() 59 writeb(irq, (uintptr_t)priv->ibase + LINK_N2V(link, base)); in pirq_assign_irq() 82 slot->irq[pin - 1].link = LINK_N2V(pirq, priv->link_base); in fill_irq_info() 83 slot->irq[pin - 1].bitmap = priv->irq_mask; in fill_irq_info() 192 if (slot->irq[pr.pin - 1].link) { in create_pirq_routing_table() 202 if (slot->irq[pr.pin - 1].link != in create_pirq_routing_table() [all …]
|
| /rk3399_rockchip-uboot/drivers/misc/ |
| H A D | ali512x.c | 83 void ali512x_set_fdc(int enabled, u16 io, u8 irq, u8 dma_channel) in ali512x_set_fdc() argument 92 ali_write(0x70, irq); in ali512x_set_fdc() 105 void ali512x_set_pp(int enabled, u16 io, u8 irq, u8 dma_channel) in ali512x_set_pp() argument 114 ali_write(0x70, irq); in ali512x_set_pp() 126 void ali512x_set_uart(int enabled, int index, u16 io, u8 irq) in ali512x_set_uart() argument 135 ali_write(0x70, irq); in ali512x_set_uart() 162 void ali512x_set_rtc(int enabled, u16 io, u8 irq) in ali512x_set_rtc() argument 171 ali_write(0x70, irq); in ali512x_set_rtc()
|
| /rk3399_rockchip-uboot/arch/x86/include/asm/ |
| H A D | pirq_routing.h | 34 } irq[MAX_INTX_ENTRIES]; member 81 bool pirq_check_irq_routed(struct udevice *dev, int link, u8 irq); 112 void pirq_assign_irq(struct udevice *dev, int link, u8 irq); 127 void pirq_route_irqs(struct udevice *dev, struct irq_info *irq, int num);
|
| H A D | interrupt.h | 46 void mask_irq(int irq); 47 void unmask_irq(int irq); 48 void specific_eoi(int irq);
|
| /rk3399_rockchip-uboot/arch/xtensa/dts/ |
| H A D | xtfpga.dtsi | 30 /* one cell: internal irq number, 31 * two cells: second cell == 0: internal irq number 32 * second cell == 1: external irq number 65 interrupts = <0 1>; /* external irq 0 */ 73 interrupts = <1 1>; /* external irq 1 */ 82 interrupts = <2 1>; /* external irq 2 */
|
| /rk3399_rockchip-uboot/drivers/power/pmic/ |
| H A D | pmic_rk801.c | 146 priv->irq = phandle_gpio_to_irq(phandle, interrupt); in rk801_ofdata_to_platdata() 147 if (priv->irq < 0) { in rk801_ofdata_to_platdata() 148 printf("priv to request rk801 irq, ret=%d\n", priv->irq); in rk801_ofdata_to_platdata() 149 return priv->irq; in rk801_ofdata_to_platdata() 204 ret = virq_add_chip(dev, priv->irq_chip, priv->irq); in rk801_probe() 207 priv->irq, ret); in rk801_probe()
|
| /rk3399_rockchip-uboot/arch/x86/cpu/qemu/ |
| H A D | qemu.c | 180 u8 irq; in mp_determine_pci_dstirq() local 189 PCI_INTERRUPT_LINE, &irq); in mp_determine_pci_dstirq() 195 irq = pirq < 8 ? pirq + 16 : pirq + 12; in mp_determine_pci_dstirq() 198 return irq; in mp_determine_pci_dstirq()
|
| /rk3399_rockchip-uboot/arch/arm/mach-rmobile/include/mach/ |
| H A D | irqs.h | 11 #define irq2evt(irq) (((irq) + 16) << 5) argument
|