mb/*: Use common IPMI KCS driver
Remove duplicated code and instead use the IPMI KCS driver, which provides the same functionality. Change-Id: I419713c9bef02084cca1ff4cf11c33c2e3e8d3c1 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/33490 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Andrey Petrov <anpetrov@fb.com>
This commit is contained in:
committed by
Patrick Rudolph
parent
a96c4a1340
commit
eb50d9a4fe
@@ -32,6 +32,7 @@ config BOARD_SPECIFIC_OPTIONS
|
||||
select DRIVERS_ASPEED_AST2050
|
||||
select MAINBOARD_FORCE_NATIVE_VGA_INIT
|
||||
select POWER_STATE_DEFAULT_ON_AFTER_FAILURE
|
||||
select IPMI_KCS
|
||||
|
||||
config MAINBOARD_DIR
|
||||
string
|
||||
|
@@ -217,7 +217,7 @@ chip northbridge/amd/amdfam10/root_complex # Root complex
|
||||
chip drivers/pc80/tpm
|
||||
device pnp 4e.0 on end # TPM module
|
||||
end
|
||||
chip drivers/generic/generic # BMC KCS
|
||||
chip drivers/ipmi # BMC KCS
|
||||
device pnp ca2.0 on end
|
||||
end
|
||||
end
|
||||
|
@@ -53,9 +53,6 @@ DefinitionBlock (
|
||||
|
||||
#include <southbridge/amd/common/acpi/sleepstates.asl>
|
||||
|
||||
/* IPMI KCS enable */
|
||||
Name (KCSE, 0x1)
|
||||
|
||||
/* The _PIC method is called by the OS to choose between interrupt
|
||||
* routing via the i8259 interrupt controller or the APIC.
|
||||
*
|
||||
@@ -489,13 +486,6 @@ DefinitionBlock (
|
||||
Name (_HID, EisaId ("PNP0A05"))
|
||||
Name (_ADR, 0x00140003)
|
||||
|
||||
OperationRegion (BMRG, SystemIO, 0xca2, 0x02) /* BMC KCS registers */
|
||||
Field (BMRG, AnyAcc, NoLock, Preserve)
|
||||
{
|
||||
BMRI, 8, /* Index */
|
||||
BMRD, 8, /* Data */
|
||||
}
|
||||
|
||||
/* Real Time Clock Device */
|
||||
Device(RTC0) {
|
||||
Name(_HID, EISAID("PNP0B00")) /* AT Real Time Clock (not PIIX4 compatible) */
|
||||
@@ -617,27 +607,6 @@ DefinitionBlock (
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
Device (KCS1) { /* IPMI KCS */
|
||||
Name (_HID, EISAID ("IPI0001")) /* ASpeed BMC */
|
||||
Method (_STA, 0, NotSerialized) {
|
||||
If (KCSE) { /* Detection enabled */
|
||||
If (LNotEqual (BMRD, 0xff)) {
|
||||
Return (0x0f) /* Device present */
|
||||
}
|
||||
Return (Zero)
|
||||
}
|
||||
Return (Zero)
|
||||
}
|
||||
Method (_CRS, 0) {
|
||||
Return (ResourceTemplate() {
|
||||
IO(Decode16, 0x0ca2, 0x0ca2, 0x01, 0x02)
|
||||
})
|
||||
}
|
||||
Method (_IFT, 0, NotSerialized) { /* Interface type */
|
||||
Return (One) /* KCS interface */
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* High Precision Event Timer */
|
||||
|
@@ -47,7 +47,6 @@ void set_pcie_dereset(void)
|
||||
* enable the dedicated function in kgpe-d16 board.
|
||||
* This function is called earlier than sr5650_enable.
|
||||
*************************************************/
|
||||
#define BMC_KCS_BASE 0xca2
|
||||
|
||||
static void mainboard_enable(struct device *dev)
|
||||
{
|
||||
@@ -69,13 +68,6 @@ static void mainboard_enable(struct device *dev)
|
||||
|
||||
set_pcie_dereset();
|
||||
/* get_ide_dma66(); */
|
||||
|
||||
/* Enable access to the BMC IPMI via KCS */
|
||||
struct device *lpc_sio_dev = dev_find_slot_pnp(BMC_KCS_BASE, 0);
|
||||
struct resource *res = new_resource(lpc_sio_dev, BMC_KCS_BASE);
|
||||
res->base = BMC_KCS_BASE;
|
||||
res->size = 1;
|
||||
res->flags = IORESOURCE_IO | IORESOURCE_ASSIGNED | IORESOURCE_FIXED;
|
||||
}
|
||||
|
||||
/* override the default SATA PHY setup */
|
||||
|
Reference in New Issue
Block a user