diff --git a/src/console/Kconfig b/src/console/Kconfig index c1c201227f..303a81d0be 100644 --- a/src/console/Kconfig +++ b/src/console/Kconfig @@ -360,9 +360,6 @@ config NO_POST bool "Don't show any POST codes" default n -config POST_PORT - hex - default 0x80 config CONSOLE_POST bool "Show POST codes on the debug console" @@ -391,5 +388,20 @@ config CMOS_POST_OFFSET If CONFIG_HAVE_OPTION_TABLE is enabled then it will use the value defined in the mainboard option table. -endmenu +config IO_POST + bool "Send POST codes to an IO port" + default y + help + If enabled, POST codes will be written to an IO port. +config IO_POST_PORT + depends on IO_POST + hex "IO port for POST codes" + default 0x80 + help + POST codes on x86 are typically written to the LPC bus on port + 0x80. However, it may be desireable to change the port number + depending on the presence of coprocessors/microcontrollers or if the + platform does not support IO in the conventional x86 manner. + +endmenu diff --git a/src/console/post.c b/src/console/post.c index a565c6bcfb..81a9d398c7 100644 --- a/src/console/post.c +++ b/src/console/post.c @@ -100,7 +100,9 @@ void post_code(uint8_t value) #if CONFIG_CMOS_POST cmos_post_code(value); #endif - outb(value, CONFIG_POST_PORT); +#if CONFIG_IO_POST + outb(value, CONFIG_IO_POST_PORT); +#endif #endif mainboard_post(value); }