Function report |
Source Code:arch\x86\kernel\i8259.c |
Create Date:2022-07-28 07:40:47 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:This is the 'legacy' 8259A Programmable Interrupt Controller,* present in the majority of PC/AT boxes.* plus some generic x86 specific things if generic specifics makes* any sense at all.
Proto:static void init_8259A(int auto_eoi)
Type:void
Parameter:
Type | Parameter | Name |
---|---|---|
int | auto_eoi |
331 | i8259A_auto_eoi = auto_eoi |
333 | raw_spin_lock_irqsave( & i8259A_lock, flags) |
335 | Basic port I/O |
340 | outb_pic(0x11, 8259A PIC registers ) |
343 | outb_pic(Vectors 0x30-0x3f are used for ISA interrupts.* round up to the next 16-vector boundary(0), PIC_MASTER_IMR) |
346 | outb_pic(1U << 8259A PIC related value , PIC_MASTER_IMR) |
348 | If auto_eoi Then outb_pic(MASTER_ICW4_DEFAULT | PIC_ICW4_AEOI, PIC_MASTER_IMR) |
350 | Else outb_pic(MASTER_ICW4_DEFAULT, PIC_MASTER_IMR) |
353 | outb_pic(0x11, PIC_SLAVE_CMD) |
356 | outb_pic(Vectors 0x30-0x3f are used for ISA interrupts.* round up to the next 16-vector boundary(8), PIC_SLAVE_IMR) |
362 | If auto_eoi Then irq_mask_ack = disable_8259A_irq |
371 | 0x10c7 is 2**32 / 1000000 (rounded up) (100) |
373 | Basic port I/O |
374 | Basic port I/O |
376 | raw_spin_unlock_irqrestore( & i8259A_lock, flags) |
Name | Describe |
---|---|
i8259A_resume |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |