console/post: Split parts to arch/
Both IO port and cmos are currently arch/x86 only features. Change-Id: I010af3f645c0be38dd856657874c36103aebbdc2 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/38187 Reviewed-by: Angel Pons <th3fanbus@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
40f539f8c4
commit
10bc806ab3
|
@ -99,6 +99,7 @@ all-y += boot.c
|
||||||
all-y += memcpy.c
|
all-y += memcpy.c
|
||||||
all-y += memset.c
|
all-y += memset.c
|
||||||
all-y += cpu_common.c
|
all-y += cpu_common.c
|
||||||
|
all-y += post.c
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
/*
|
||||||
|
* This file is part of the coreboot project.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License as
|
||||||
|
* published by the Free Software Foundation; version 2 of
|
||||||
|
* the License.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <console/console.h>
|
||||||
|
#include <arch/io.h>
|
||||||
|
|
||||||
|
void arch_post_code(uint8_t value)
|
||||||
|
{
|
||||||
|
if (CONFIG(POST_IO))
|
||||||
|
outb(value, CONFIG_POST_IO_PORT);
|
||||||
|
|
||||||
|
if (CONFIG(CMOS_POST))
|
||||||
|
cmos_post_code(value);
|
||||||
|
}
|
|
@ -14,11 +14,9 @@
|
||||||
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <console/console.h>
|
#include <console/console.h>
|
||||||
#if CONFIG(POST_IO)
|
|
||||||
#include <arch/io.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Write POST information */
|
/* Write POST information */
|
||||||
|
void __weak arch_post_code(uint8_t value) { }
|
||||||
|
|
||||||
/* Some mainboards have very nice features beyond just a simple display.
|
/* Some mainboards have very nice features beyond just a simple display.
|
||||||
* They can override this function.
|
* They can override this function.
|
||||||
|
@ -27,16 +25,13 @@ void __weak mainboard_post(uint8_t value) { }
|
||||||
|
|
||||||
void post_code(uint8_t value)
|
void post_code(uint8_t value)
|
||||||
{
|
{
|
||||||
#if !CONFIG(NO_POST)
|
if (!CONFIG(NO_POST)) {
|
||||||
#if CONFIG(CONSOLE_POST)
|
/* Assume this to be the most reliable and simplest type
|
||||||
printk(BIOS_EMERG, "POST: 0x%02x\n", value);
|
for displaying POST so keep it first. */
|
||||||
#endif
|
arch_post_code(value);
|
||||||
#if CONFIG(CMOS_POST)
|
|
||||||
cmos_post_code(value);
|
if (CONFIG(CONSOLE_POST))
|
||||||
#endif
|
printk(BIOS_EMERG, "POST: 0x%02x\n", value);
|
||||||
#if CONFIG(POST_IO)
|
}
|
||||||
outb(value, CONFIG_POST_IO_PORT);
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
mainboard_post(value);
|
mainboard_post(value);
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,6 +29,7 @@
|
||||||
#include <console/vtxprintf.h>
|
#include <console/vtxprintf.h>
|
||||||
|
|
||||||
void post_code(u8 value);
|
void post_code(u8 value);
|
||||||
|
void arch_post_code(u8 value);
|
||||||
void cmos_post_code(u8 value);
|
void cmos_post_code(u8 value);
|
||||||
#if CONFIG(CMOS_POST_EXTRA)
|
#if CONFIG(CMOS_POST_EXTRA)
|
||||||
void post_log_extra(u32 value);
|
void post_log_extra(u32 value);
|
||||||
|
|
Loading…
Reference in New Issue