Timothy Pearson has submitted this change and it was merged. ( https://review.coreboot.org/c/coreboot/+/19821 )
Change subject: mb/asus/kgpe-d16: Enable IPMI KCS access ......................................................................
mb/asus/kgpe-d16: Enable IPMI KCS access
The on-board BMC contains a hardware KCS interface. Allow access to it over LPC.
Change-Id: Ia251334ae44668c2260d8d2e816f85f1f62faac6 Signed-off-by: Timothy Pearson tpearson@raptorengineering.com Reviewed-on: https://review.coreboot.org/c/19821 Tested-by: build bot (Jenkins) no-reply@coreboot.org --- M src/mainboard/asus/kgpe-d16/devicetree.cb M src/mainboard/asus/kgpe-d16/mainboard.c 2 files changed, 12 insertions(+), 0 deletions(-)
Approvals: build bot (Jenkins): Verified Timothy Pearson: Looks good to me, approved
diff --git a/src/mainboard/asus/kgpe-d16/devicetree.cb b/src/mainboard/asus/kgpe-d16/devicetree.cb index 9039f6d..0ea4216 100644 --- a/src/mainboard/asus/kgpe-d16/devicetree.cb +++ b/src/mainboard/asus/kgpe-d16/devicetree.cb @@ -217,6 +217,9 @@ chip drivers/pc80/tpm device pnp 4e.0 on end # TPM module end + chip drivers/generic/generic # BMC KCS + device pnp ca2.0 on end + end end device pci 14.4 on # Bridge device pci 1.0 on end # VGA diff --git a/src/mainboard/asus/kgpe-d16/mainboard.c b/src/mainboard/asus/kgpe-d16/mainboard.c index 0285936..d41a038 100644 --- a/src/mainboard/asus/kgpe-d16/mainboard.c +++ b/src/mainboard/asus/kgpe-d16/mainboard.c @@ -46,6 +46,8 @@ * 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) { printk(BIOS_INFO, "Mainboard KGPE-D16 Enable. dev=0x%p\n", dev); @@ -66,6 +68,13 @@
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 */