summaryrefslogtreecommitdiffstats
path: root/src/southbridge/intel/common/acpi_pirq_gen.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/southbridge/intel/common/acpi_pirq_gen.h')
-rw-r--r--src/southbridge/intel/common/acpi_pirq_gen.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/southbridge/intel/common/acpi_pirq_gen.h b/src/southbridge/intel/common/acpi_pirq_gen.h
index 83476d16ca88..4799528fcc3d 100644
--- a/src/southbridge/intel/common/acpi_pirq_gen.h
+++ b/src/southbridge/intel/common/acpi_pirq_gen.h
@@ -3,6 +3,7 @@
#ifndef INTEL_COMMON_ACPI_PIRQ_GEN_H
#define INTEL_COMMON_ACPI_PIRQ_GEN_H
+#include <assert.h>
#include <device/device.h>
#define MAX_SLOTS 32
@@ -17,6 +18,7 @@ enum pci_pin {
};
enum pirq {
+ PIRQ_INVALID,
PIRQ_A,
PIRQ_B,
PIRQ_C,
@@ -25,10 +27,15 @@ enum pirq {
PIRQ_F,
PIRQ_G,
PIRQ_H,
- PIRQ_COUNT,
- PIRQ_INVALID = 0xff,
+ PIRQ_COUNT = PIRQ_H,
};
+static inline size_t pirq_idx(enum pirq pirq)
+{
+ assert(pirq > PIRQ_INVALID && pirq <= PIRQ_H);
+ return (size_t)(pirq - PIRQ_A);
+}
+
/*
* This struct represents an assignment of slot/pin -> IRQ. Some chipsets may
* want to provide both PIC-mode and APIC-mode IRQs (e.g. selected using PICM