coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
irq.h File Reference
#include <southbridge/intel/common/acpi_pirq_gen.h>
#include <types.h>
Include dependency graph for irq.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  slot_irq_constraints
 
struct  pci_irq_entry
 

Macros

#define MAX_FNS   8
 
#define INVALID_IRQ   -1
 
#define ANY_PIRQ(x)
 
#define DIRECT_IRQ(x)
 
#define FIXED_INT_ANY_PIRQ(x, pin)
 
#define FIXED_INT_PIRQ(x, pin, pirq)
 

Functions

bool assign_pci_irqs (const struct slot_irq_constraints *constraints, size_t num_slots)
 
bool generate_pin_irq_map (void)
 
bool irq_program_non_pch (void)
 
const struct pci_irq_entryget_cached_pci_irqs (void)
 
int get_pci_devfn_irq (unsigned int devfn)
 

Macro Definition Documentation

◆ ANY_PIRQ

#define ANY_PIRQ (   x)
Value:
[PCI_FUNC(x)] = { .fixed_int_pin = PCI_INT_NONE,\
.fixed_pirq = PIRQ_INVALID, \
.irq_route = IRQ_PIRQ, }
@ PIRQ_INVALID
Definition: acpi_pirq_gen.h:21
@ PCI_INT_NONE
Definition: acpi_pirq_gen.h:12
int x
Definition: edid.c:994
#define PCI_FUNC(devfn)
Definition: pci_def.h:550

Definition at line 12 of file irq.h.

◆ DIRECT_IRQ

#define DIRECT_IRQ (   x)
Value:
[PCI_FUNC(x)] = { .fixed_int_pin = PCI_INT_NONE,\
.fixed_pirq = PIRQ_INVALID, \
.irq_route = IRQ_DIRECT,}

Definition at line 15 of file irq.h.

◆ FIXED_INT_ANY_PIRQ

#define FIXED_INT_ANY_PIRQ (   x,
  pin 
)
Value:
[PCI_FUNC(x)] = { .fixed_int_pin = pin, \
.fixed_pirq = PIRQ_INVALID, \
.irq_route = IRQ_PIRQ,}

Definition at line 18 of file irq.h.

◆ FIXED_INT_PIRQ

#define FIXED_INT_PIRQ (   x,
  pin,
  pirq 
)
Value:
[PCI_FUNC(x)] = { .fixed_int_pin = pin, \
.fixed_pirq = pirq, \
.irq_route = IRQ_PIRQ,}
pirq
Definition: acpi_pirq_gen.h:20

Definition at line 21 of file irq.h.

◆ INVALID_IRQ

#define INVALID_IRQ   -1

Definition at line 10 of file irq.h.

◆ MAX_FNS

#define MAX_FNS   8

Definition at line 9 of file irq.h.

Function Documentation

◆ assign_pci_irqs()

bool assign_pci_irqs ( const struct slot_irq_constraints constraints,
size_t  num_slots 
)

Definition at line 328 of file irq.c.

References assign_slot(), BIOS_INFO, cached_entries, pci_irq_entry::devfn, pci_irq_entry::irq, pci_irq_entry::next, PCI_FUNC, PCI_SLOT, pci_irq_entry::pin, pin_to_str(), and printk.

Referenced by fill_fsps_irq_params(), and platform_fsp_silicon_init_params_cb().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ generate_pin_irq_map()

bool generate_pin_irq_map ( void  )

◆ get_cached_pci_irqs()

const struct pci_irq_entry* get_cached_pci_irqs ( void  )

Definition at line 347 of file irq.c.

References cached_entries.

Referenced by pci_irq_to_fsp().

Here is the caller graph for this function:

◆ get_pci_devfn_irq()

int get_pci_devfn_irq ( unsigned int  devfn)

◆ irq_program_non_pch()

bool irq_program_non_pch ( void  )