diff options
Diffstat (limited to 'src/console')
-rw-r--r-- | src/console/post.c | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/src/console/post.c b/src/console/post.c index b9a7557f63..33d85e7675 100644 --- a/src/console/post.c +++ b/src/console/post.c @@ -14,11 +14,9 @@ #include <stdint.h> #include <console/console.h> -#if CONFIG(POST_IO) -#include <arch/io.h> -#endif /* Write POST information */ +void __weak arch_post_code(uint8_t value) { } /* Some mainboards have very nice features beyond just a simple display. * They can override this function. @@ -27,16 +25,13 @@ void __weak mainboard_post(uint8_t value) { } void post_code(uint8_t value) { -#if !CONFIG(NO_POST) -#if CONFIG(CONSOLE_POST) - printk(BIOS_EMERG, "POST: 0x%02x\n", value); -#endif -#if CONFIG(CMOS_POST) - cmos_post_code(value); -#endif -#if CONFIG(POST_IO) - outb(value, CONFIG_POST_IO_PORT); -#endif -#endif + if (!CONFIG(NO_POST)) { + /* Assume this to be the most reliable and simplest type + for displaying POST so keep it first. */ + arch_post_code(value); + + if (CONFIG(CONSOLE_POST)) + printk(BIOS_EMERG, "POST: 0x%02x\n", value); + } mainboard_post(value); } |