mainboard/asus/kgpe-d16: Use I/O PCI access in bootblock

The existing code incorrectly used standard PCI access
calls in the bootblock.  Use the I/O PCI access calls
as the normal PCI access mechanisms have not yet been
set up.

Also ensure the recovery jumper GPIO has been set to
input mode before reading it.

Change-Id: Id626d01526427004b2404e4d9b44d7c987d172d1
Signed-off-by: Timothy Pearson <tpearson@raptorengineeringinc.com>
Reviewed-on: https://review.coreboot.org/12651
Tested-by: build bot (Jenkins)
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
This commit is contained in:
Timothy Pearson 2015-12-06 00:47:17 -06:00 committed by Martin Roth
parent 9f656c0316
commit 369b561315
1 changed files with 6 additions and 2 deletions

View File

@ -15,6 +15,7 @@
* GNU General Public License for more details. * GNU General Public License for more details.
*/ */
#include <arch/io.h>
#include <pc80/mc146818rtc.h> #include <pc80/mc146818rtc.h>
void bootblock_mainboard_init(void) void bootblock_mainboard_init(void)
@ -27,7 +28,10 @@ void bootblock_mainboard_init(void)
bootblock_southbridge_init(); bootblock_southbridge_init();
/* Recovery jumper is connected to SP5100 GPIO61, and clears the GPIO when placed in the Recovery position */ /* Recovery jumper is connected to SP5100 GPIO61, and clears the GPIO when placed in the Recovery position */
recovery_enabled = (!(pci_read_config8(PCI_DEV(0, 0x14, 0), 0x57) & 0x1)); byte = pci_io_read_config8(PCI_DEV(0, 0x14, 0), 0x56);
byte |= 0x1 << 4; /* Set GPIO61 to input mode */
pci_io_write_config8(PCI_DEV(0, 0x14, 0), 0x56, byte);
recovery_enabled = (!(pci_io_read_config8(PCI_DEV(0, 0x14, 0), 0x57) & 0x1));
if (recovery_enabled) { if (recovery_enabled) {
#if CONFIG_USE_OPTION_TABLE #if CONFIG_USE_OPTION_TABLE
/* Clear NVRAM checksum */ /* Clear NVRAM checksum */
@ -45,4 +49,4 @@ void bootblock_mainboard_init(void)
*/ */
#endif #endif
} }
} }