ck804: obtain stored IOAPIC address from allocator instead of register
Change-Id: Ibdd438455a545aa9266b0fd893d5ff27124ab22c Signed-off-by: Jonathan A. Kollasch <jakllsch@kollasch.net> Reviewed-on: http://review.coreboot.org/3961 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
@@ -32,6 +32,7 @@
|
|||||||
#include <arch/ioapic.h>
|
#include <arch/ioapic.h>
|
||||||
#include <cpu/x86/lapic.h>
|
#include <cpu/x86/lapic.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <assert.h>
|
||||||
#include "ck804.h"
|
#include "ck804.h"
|
||||||
|
|
||||||
#define CK804_CHIP_REV 2
|
#define CK804_CHIP_REV 2
|
||||||
@@ -54,14 +55,16 @@ static void lpc_common_init(device_t dev)
|
|||||||
{
|
{
|
||||||
u8 byte;
|
u8 byte;
|
||||||
u32 dword;
|
u32 dword;
|
||||||
|
struct resource *res;
|
||||||
|
|
||||||
/* I/O APIC initialization. */
|
/* I/O APIC initialization. */
|
||||||
byte = pci_read_config8(dev, 0x74);
|
byte = pci_read_config8(dev, 0x74);
|
||||||
byte |= (1 << 0); /* Enable APIC. */
|
byte |= (1 << 0); /* Enable APIC. */
|
||||||
pci_write_config8(dev, 0x74, byte);
|
pci_write_config8(dev, 0x74, byte);
|
||||||
dword = pci_read_config32(dev, PCI_BASE_ADDRESS_1); /* 0x14 */
|
|
||||||
|
|
||||||
setup_ioapic(dword, 0); /* Don't rename IOAPIC ID. */
|
res = find_resource(dev, PCI_BASE_ADDRESS_1); /* IOAPIC */
|
||||||
|
ASSERT(res != NULL);
|
||||||
|
setup_ioapic(res->base, 0); /* Don't rename IOAPIC ID. */
|
||||||
|
|
||||||
#if 1
|
#if 1
|
||||||
dword = pci_read_config32(dev, 0xe4);
|
dword = pci_read_config32(dev, 0xe4);
|
||||||
|
Reference in New Issue
Block a user