siemens/mc_bdx1: Move SCI to IRQ 10

IRQ 9 is used for different purpose on this board so move
SCI away to IRQ10.

Change-Id: I107bfb5ec8cd05f844ee75550779be7746e77a88
Signed-off-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-on: https://review.coreboot.org/15563
Tested-by: build bot (Jenkins)
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
This commit is contained in:
Werner Zeh 2016-07-07 07:10:50 +02:00
parent 8d3c4d1bb3
commit a845f427fe
2 changed files with 15 additions and 1 deletions

View File

@ -33,7 +33,7 @@
/*
* Route each PIRQ[A-H] to a PIC IRQ[0-15]
* Reserved: 0, 1, 2, 8, 13
* ACPI/SCI: 9
* ACPI/SCI: 10
*/
#define PIRQ_PIC_ROUTES \
PIRQ_PIC(A, 5), \

View File

@ -32,6 +32,7 @@
#include <hwilib.h>
#include <i210.h>
#include <soc/pci_devs.h>
#include <soc/irq.h>
#define MAX_PATH_DEPTH 12
#define MAX_NUM_MAPPINGS 10
@ -91,6 +92,18 @@ static void mainboard_enable(device_t dev)
}
static void mainboard_init(void *chip_info)
{
uint8_t actl = 0;
device_t dev = dev_find_slot(0, PCI_DEVFN(LPC_DEV, LPC_FUNC));
/* Route SCI to IRQ 10 to free IRQ 9 slot. */
actl = pci_read_config8(dev, ACPI_CNTL_OFFSET);
actl &= ~SCIS_MASK;
actl |= SCIS_IRQ10;
pci_write_config8(dev, ACPI_CNTL_OFFSET, actl);
}
static void mainboard_final(void *chip_info)
{
void *spi_base = NULL;
@ -183,5 +196,6 @@ enum cb_err mainboard_get_mac_address(struct device *dev, uint8_t mac[6])
struct chip_operations mainboard_ops = {
.enable_dev = mainboard_enable,
.init = mainboard_init,
.final = mainboard_final
};