blob: 094e00d4877c12edcf2172bd6d55170590cf7dc7 [file] [log] [blame]
Angel Pons182dbde2020-04-02 23:49:05 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +03002
3#ifndef AMD_PCI_INT_DEFS_H
4#define AMD_PCI_INT_DEFS_H
5
6/*
7 * PIRQ and device routing - these define the index
8 * into the FCH PCI_INTR 0xC00/0xC01 interrupt
9 * routing table
10 */
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030011
12#define PIRQ_NC 0x1F /* Not Used */
13#define PIRQ_A 0x00 /* INT A */
14#define PIRQ_B 0x01 /* INT B */
15#define PIRQ_C 0x02 /* INT C */
16#define PIRQ_D 0x03 /* INT D */
17#define PIRQ_E 0x04 /* INT E */
18#define PIRQ_F 0x05 /* INT F */
19#define PIRQ_G 0x06 /* INT G */
20#define PIRQ_H 0x07 /* INT H */
21#define PIRQ_MISC 0x08 /* Miscellaneous IRQ Settings - See FCH Spec */
22#define PIRQ_MISC0 0x09 /* Miscellaneous0 IRQ Settings */
23#define PIRQ_MISC1 0x0A /* Miscellaneous1 IRQ Settings */
24#define PIRQ_MISC2 0x0B /* Miscellaneous2 IRQ Settings */
25#define PIRQ_SIRQA 0x0C /* Serial IRQ INTA */
Dave Frodin9cfa7422015-01-27 07:19:48 -070026#define PIRQ_SIRQB 0x0D /* Serial IRQ INTB */
27#define PIRQ_SIRQC 0x0E /* Serial IRQ INTC */
28#define PIRQ_SIRQD 0x0F /* Serial IRQ INTD */
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030029#define PIRQ_SCI 0x10 /* SCI IRQ */
30#define PIRQ_SMBUS 0x11 /* SMBUS 14h.0 */
31#define PIRQ_ASF 0x12 /* ASF */
32#define PIRQ_HDA 0x13 /* HDA 14h.2 */
33#define PIRQ_FC 0x14 /* FC */
34#define PIRQ_GEC 0x15 /* GEC */
35#define PIRQ_PMON 0x16 /* Performance Monitor */
Elyes HAOUASb0f19882018-06-09 11:59:00 +020036#define PIRQ_SD 0x17 /* SD */
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030037#define PIRQ_IMC0 0x20 /* IMC INT0 */
38#define PIRQ_IMC1 0x21 /* IMC INT1 */
39#define PIRQ_IMC2 0x22 /* IMC INT2 */
40#define PIRQ_IMC3 0x23 /* IMC INT3 */
41#define PIRQ_IMC4 0x24 /* IMC INT4 */
42#define PIRQ_IMC5 0x25 /* IMC INT5 */
43#define PIRQ_OHCI1 0x30 /* USB OHCI 12h.0 */
44#define PIRQ_EHCI1 0x31 /* USB EHCI 12h.2 */
45#define PIRQ_OHCI2 0x32 /* USB OHCI 13h.0 */
46#define PIRQ_EHCI2 0x33 /* USB EHCI 13h.2 */
47#define PIRQ_OHCI3 0x34 /* USB OHCI 16h.0 */
48#define PIRQ_EHCI3 0x35 /* USB EHCI 16h.2 */
49#define PIRQ_OHCI4 0x36 /* USB OHCI 14h.5 */
50#define PIRQ_IDE 0x40 /* IDE 14h.1 */
51#define PIRQ_SATA 0x41 /* SATA 11h.0 */
Dave Frodin9cfa7422015-01-27 07:19:48 -070052
Julius Wernercd49cce2019-03-05 16:53:33 -080053#if CONFIG(SOUTHBRIDGE_AMD_PI_AVALON)
Dave Frodin9cfa7422015-01-27 07:19:48 -070054#define FCH_INT_TABLE_SIZE 0x63
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030055#define PIRQ_GPIO 0x62 /* GPIO Controller Interrupt */
Dave Frodin9cfa7422015-01-27 07:19:48 -070056#endif
57
Julius Wernercd49cce2019-03-05 16:53:33 -080058#if CONFIG(SOUTHBRIDGE_AMD_PI_KERN)
WANG Siyuan839d68f2015-08-18 06:22:22 +080059#define FCH_INT_TABLE_SIZE 0x76
WANG Siyuanf2dfef02015-05-20 14:41:01 +080060#define PIRQ_GPIO 0x62 /* GPIO Controller Interrupt */
WANG Siyuan839d68f2015-08-18 06:22:22 +080061#define PIRQ_I2C0 0x70
62#define PIRQ_I2C1 0x71
63#define PIRQ_I2C2 0x72
64#define PIRQ_I2C3 0x73
65#define PIRQ_UART0 0x74
66#define PIRQ_UART1 0x75
WANG Siyuanf2dfef02015-05-20 14:41:01 +080067#endif
68
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030069#endif /* AMD_PCI_INT_DEFS_H */