1 /* SPDX-License-Identifier: GPL-2.0 */
3 * From coreboot file of the same name
5 * Copyright (C) 2010 coresystems GmbH
11 #define IO_APIC_ADDR 0xfec00000
13 /* Direct addressed register */
14 #define IO_APIC_INDEX (IO_APIC_ADDR + 0x00)
15 #define IO_APIC_DATA (IO_APIC_ADDR + 0x10)
17 /* Indirect addressed register offset */
18 #define IO_APIC_ID 0x00
19 #define IO_APIC_VER 0x01
22 * io_apic_read() - Read I/O APIC register
24 * This routine reads I/O APIC indirect addressed register.
26 * @reg: address of indirect addressed register
27 * @return: register value to read
29 u32 io_apic_read(u32 reg);
32 * io_apic_write() - Write I/O APIC register
34 * This routine writes I/O APIC indirect addressed register.
36 * @reg: address of indirect addressed register
37 * @val: register value to write
39 void io_apic_write(u32 reg, u32 val);
41 void io_apic_set_id(int ioapic_id);