STRUCT IRQ_CHIP(9) | Structures | STRUCT IRQ_CHIP(9) |
NAME¶
struct_irq_chip - hardware interrupt chip descriptor
SYNOPSIS¶
struct irq_chip {
struct device * parent_device;
const char * name;
unsigned int (* irq_startup) (struct irq_data *data);
void (* irq_shutdown) (struct irq_data *data);
void (* irq_enable) (struct irq_data *data);
void (* irq_disable) (struct irq_data *data);
void (* irq_ack) (struct irq_data *data);
void (* irq_mask) (struct irq_data *data);
void (* irq_mask_ack) (struct irq_data *data);
void (* irq_unmask) (struct irq_data *data);
void (* irq_eoi) (struct irq_data *data);
int (* irq_set_affinity) (struct irq_data *data, const struct cpumask *dest, bool force);
int (* irq_retrigger) (struct irq_data *data);
int (* irq_set_type) (struct irq_data *data, unsigned int flow_type);
int (* irq_set_wake) (struct irq_data *data, unsigned int on);
void (* irq_bus_lock) (struct irq_data *data);
void (* irq_bus_sync_unlock) (struct irq_data *data);
void (* irq_cpu_online) (struct irq_data *data);
void (* irq_cpu_offline) (struct irq_data *data);
void (* irq_suspend) (struct irq_data *data);
void (* irq_resume) (struct irq_data *data);
void (* irq_pm_shutdown) (struct irq_data *data);
void (* irq_calc_mask) (struct irq_data *data);
void (* irq_print_chip) (struct irq_data *data, struct seq_file *p);
int (* irq_request_resources) (struct irq_data *data);
void (* irq_release_resources) (struct irq_data *data);
void (* irq_compose_msi_msg) (struct irq_data *data, struct msi_msg *msg);
void (* irq_write_msi_msg) (struct irq_data *data, struct msi_msg *msg);
int (* irq_get_irqchip_state) (struct irq_data *data, enum irqchip_irq_state which, bool *state);
int (* irq_set_irqchip_state) (struct irq_data *data, enum irqchip_irq_state which, bool state);
int (* irq_set_vcpu_affinity) (struct irq_data *data, void *vcpu_info);
void (* ipi_send_single) (struct irq_data *data, unsigned int cpu);
void (* ipi_send_mask) (struct irq_data *data, const struct cpumask *dest);
unsigned long flags; };
MEMBERS¶
struct device * parent_device
const char * name
unsigned int (*)(struct irq_data *data) irq_startup
void (*)(struct irq_data *data) irq_shutdown
void (*)(struct irq_data *data) irq_enable
void (*)(struct irq_data *data) irq_disable
void (*)(struct irq_data *data) irq_ack
void (*)(struct irq_data *data) irq_mask
void (*)(struct irq_data *data) irq_mask_ack
void (*)(struct irq_data *data) irq_unmask
void (*)(struct irq_data *data) irq_eoi
int (*)(struct irq_data *data, const struct cpumask *dest, bool force) irq_set_affinity
int (*)(struct irq_data *data) irq_retrigger
int (*)(struct irq_data *data, unsigned int flow_type) irq_set_type
int (*)(struct irq_data *data, unsigned int on) irq_set_wake
void (*)(struct irq_data *data) irq_bus_lock
void (*)(struct irq_data *data) irq_bus_sync_unlock
void (*)(struct irq_data *data) irq_cpu_online
void (*)(struct irq_data *data) irq_cpu_offline
void (*)(struct irq_data *data) irq_suspend
void (*)(struct irq_data *data) irq_resume
void (*)(struct irq_data *data) irq_pm_shutdown
void (*)(struct irq_data *data) irq_calc_mask
void (*)(struct irq_data *data, struct seq_file *p) irq_print_chip
int (*)(struct irq_data *data) irq_request_resources
void (*)(struct irq_data *data) irq_release_resources
void (*)(struct irq_data *data, struct msi_msg *msg) irq_compose_msi_msg
void (*)(struct irq_data *data, struct msi_msg *msg) irq_write_msi_msg
int (*)(struct irq_data *data, enum irqchip_irq_state which, bool *state) irq_get_irqchip_state
int (*)(struct irq_data *data, enum irqchip_irq_state which, bool state) irq_set_irqchip_state
int (*)(struct irq_data *data, void *vcpu_info) irq_set_vcpu_affinity
void (*)(struct irq_data *data, unsigned int cpu) ipi_send_single
void (*)(struct irq_data *data, const struct cpumask *dest) ipi_send_mask
unsigned long flags
AUTHORS¶
Thomas Gleixner <tglx@linutronix.de>
Ingo Molnar <mingo@elte.hu>
COPYRIGHT¶
June 2017 | Kernel Hackers Manual 4.11 |