arch/x86/include/asm/i8259.h

Source file repositories/reference/linux-study-clean/arch/x86/include/asm/i8259.h

File Facts

System
Linux kernel
Corpus path
arch/x86/include/asm/i8259.h
Extension
.h
Size
2061 bytes
Lines
88
Domain
Architecture Layer
Bucket
arch/x86
Inferred role
Architecture Layer: implementation source
Status
source implementation candidate

Why This File Exists

CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.

Dependency Surface

Detected Declarations

Annotated Snippet

struct legacy_pic {
	int nr_legacy_irqs;
	struct irq_chip *chip;
	void (*mask)(unsigned int irq);
	void (*unmask)(unsigned int irq);
	void (*mask_all)(void);
	void (*restore_mask)(void);
	void (*init)(int auto_eoi);
	int (*probe)(void);
	int (*irq_pending)(unsigned int irq);
	void (*make_irq)(unsigned int irq);
};

void legacy_pic_pcat_compat(void);

extern struct legacy_pic *legacy_pic;
extern struct legacy_pic null_legacy_pic;

static inline bool has_legacy_pic(void)
{
	return legacy_pic != &null_legacy_pic;
}

static inline int nr_legacy_irqs(void)
{
	return legacy_pic->nr_legacy_irqs;
}

#endif /* _ASM_X86_I8259_H */

Annotation

Implementation Notes