Home
last modified time | relevance | path

Searched refs:irq_num (Results 1 – 18 of 18) sorted by relevance

/DragonOS-0.1.2/kernel/src/exception/
Dirq.h110 void (*enable)(ul irq_num);
112 void (*disable)(ul irq_num);
115 ul (*install)(ul irq_num, void *arg);
117 void (*uninstall)(ul irq_num);
119 void (*ack)(ul irq_num);
131 void (*handler)(ul irq_num, ul parameter, struct pt_regs *regs);
155 int irq_register(ul irq_num, void *arg, void (*handler)(ul irq_num, ul parameter, struct pt_regs *r…
163 int irq_unregister(ul irq_num);
Dsoftirq.c58 void register_softirq(uint32_t irq_num, void (*action)(void *data), void *data) in register_softirq() argument
60 softirq_vector[irq_num].action = action; in register_softirq()
61 softirq_vector[irq_num].data = data; in register_softirq()
69 void unregister_softirq(uint32_t irq_num) in unregister_softirq() argument
71 softirq_vector[irq_num].action = NULL; in unregister_softirq()
72 softirq_vector[irq_num].data = NULL; in unregister_softirq()
109 int clear_softirq_pending(uint32_t irq_num) in clear_softirq_pending() argument
111 clear_softirq_running(irq_num); in clear_softirq_pending()
Dirq.c152 int irq_register(ul irq_num, void *arg, void (*handler)(ul irq_num, ul parameter, struct pt_regs *r… in irq_register() argument
157 if (irq_num >= 32 && irq_num < 0x80) in irq_register()
158 p = &interrupt_desc[irq_num - 32]; in irq_register()
159 else if (irq_num >= 150 && irq_num < 200) in irq_register()
160 p = &local_apic_interrupt_desc[irq_num - 150]; in irq_register()
163 kerror("irq_register(): invalid irq num: %ld.", irq_num); in irq_register()
180 p->controller->install(irq_num, arg); in irq_register()
182 p->controller->enable(irq_num); in irq_register()
194 int irq_unregister(ul irq_num) in irq_unregister() argument
196 irq_desc_t *p = &interrupt_desc[irq_num - 32]; in irq_unregister()
[all …]
Dsoftirq.h48 void register_softirq(uint32_t irq_num, void (*action)(void *data), void *data);
55 void unregister_softirq(uint32_t irq_num);
60 int clear_softirq_pending(uint32_t irq_num);
/DragonOS-0.1.2/kernel/src/driver/interrupt/apic/
Dapic_timer.c11 void apic_timer_enable(uint64_t irq_num) in apic_timer_enable() argument
23 void apic_timer_disable(uint64_t irq_num) in apic_timer_disable() argument
35 uint64_t apic_timer_install(ul irq_num, void *arg) in apic_timer_install() argument
52 void apic_timer_uninstall(ul irq_num) in apic_timer_uninstall() argument
Dapic.h306 void apic_ioapic_enable(ul irq_num);
307 void apic_ioapic_disable(ul irq_num);
308 ul apic_ioapic_install(ul irq_num, void *arg);
309 void apic_ioapic_uninstall(ul irq_num);
310 void apic_ioapic_level_ack(ul irq_num); // ioapic电平触发 应答
311 void apic_ioapic_edge_ack(ul irq_num); // ioapic边沿触发 应答
314 void apic_local_apic_edge_ack(ul irq_num); // local apic边沿触发 应答
Dapic.c519 void apic_ioapic_enable(ul irq_num) in apic_ioapic_enable() argument
521 ul index = 0x10 + ((irq_num - 32) << 1); in apic_ioapic_enable()
527 void apic_ioapic_disable(ul irq_num) in apic_ioapic_disable() argument
529 ul index = 0x10 + ((irq_num - 32) << 1); in apic_ioapic_disable()
535 ul apic_ioapic_install(ul irq_num, void *arg) in apic_ioapic_install() argument
539 apic_ioapic_write_rte(0x10 + ((irq_num - 32) << 1), *(ul *)entry); in apic_ioapic_install()
543 void apic_ioapic_uninstall(ul irq_num) in apic_ioapic_uninstall() argument
546 apic_ioapic_write_rte(0x10 + ((irq_num - 32) << 1), 0x10000UL); in apic_ioapic_uninstall()
549 void apic_ioapic_level_ack(ul irq_num) // 电平触发 in apic_ioapic_level_ack() argument
552 *apic_ioapic_map.virtual_EOI_addr = irq_num; in apic_ioapic_level_ack()
[all …]
/DragonOS-0.1.2/kernel/src/arch/x86_64/
Dx86_64_ipi.h43 int ipi_regiserIPI(uint64_t irq_num, void *arg,
44 void (*handler)(uint64_t irq_num, uint64_t param, struct pt_regs *regs),
Dx86_64_ipi.c38 int ipi_regiserIPI(uint64_t irq_num, void *arg, in ipi_regiserIPI() argument
39 void (*handler)(uint64_t irq_num, uint64_t param, struct pt_regs *regs), in ipi_regiserIPI() argument
42 irq_desc_t *p = &SMP_IPI_desc[irq_num - 200]; in ipi_regiserIPI()
Dia64_msi.c25 …msi_desc->msg.data = ia64_pci_get_arch_msi_message_data(msi_desc->irq_num, msi_desc->processor, ms… in msi_arch_get_msg()
/DragonOS-0.1.2/kernel/src/smp/
Dipi.h37 extern int ipi_regiserIPI(uint64_t irq_num, void *arg,
38 void (*handler)(uint64_t irq_num, uint64_t param, struct pt_regs *regs),
Dsmp.c15 void ipi_0xc8_handler(uint64_t irq_num, uint64_t param, struct pt_regs *regs); // 由BSP转发的HPET中断处理函数
198 void ipi_0xc8_handler(uint64_t irq_num, uint64_t param, struct pt_regs *regs) in ipi_0xc8_handler() argument
/DragonOS-0.1.2/kernel/src/driver/disk/
Data.c14 void ata_disk_handler(ul irq_num, ul param, struct pt_regs *regs) in ata_disk_handler() argument
18 kdebug("irq_num=%ld", irq_num); in ata_disk_handler()
/DragonOS-0.1.2/kernel/src/driver/pci/
Dmsi.h73 uint16_t irq_num; // 中断向量号 member
/DragonOS-0.1.2/kernel/src/driver/usb/xhci/
Dxhci.c23 void xhci_hc_irq_enable(uint64_t irq_num);
24 void xhci_hc_irq_disable(uint64_t irq_num);
25 uint64_t xhci_hc_irq_install(uint64_t irq_num, void *arg);
26 void xhci_hc_irq_uninstall(uint64_t irq_num);
39 void xhci_hc_irq_handler(uint64_t irq_num, uint64_t cid, struct pt_regs *regs);
587 void xhci_hc_irq_enable(uint64_t irq_num) in xhci_hc_irq_enable() argument
589 int cid = xhci_find_hcid_by_irq_num(irq_num); in xhci_hc_irq_enable()
603 void xhci_hc_irq_disable(uint64_t irq_num) in xhci_hc_irq_disable() argument
605 int cid = xhci_find_hcid_by_irq_num(irq_num); in xhci_hc_irq_disable()
623 uint64_t xhci_hc_irq_install(uint64_t irq_num, void *arg) in xhci_hc_irq_install() argument
[all …]
Dxhci.h22 #define xhci_find_hcid_by_irq_num(irq_num) ({ \ argument
25 if (xhci_controller_irq_num[i] == irq_num) \
/DragonOS-0.1.2/kernel/src/driver/keyboard/
Dps2_keyboard.c145 void ps2_keyboard_handler(ul irq_num, ul buf_vaddr, struct pt_regs *regs) in ps2_keyboard_handler() argument
/DragonOS-0.1.2/kernel/src/driver/mouse/
Dps2_mouse.c56 void ps2_mouse_handler(ul irq_num, ul param, struct pt_regs *regs) in ps2_mouse_handler() argument