drivers/pc80/rtc: Clean up post_log_path()

Change-Id: I605d39d907e083e73af4c72607216384e7ce166a
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38190
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Kyösti Mälkki 2020-01-04 15:55:16 +02:00 committed by Patrick Georgi
parent 8920ee0dcc
commit f3dbf4ce6b
2 changed files with 27 additions and 24 deletions

View File

@ -86,8 +86,11 @@ void cmos_post_code(u8 value)
spin_unlock(&cmos_post_lock);
}
static void __unused cmos_post_extra(u32 value)
void cmos_post_extra(u32 value)
{
if (!CONFIG(CMOS_POST_EXTRA))
return;
spin_lock(&cmos_post_lock);
switch (cmos_read(CMOS_POST_BANK_OFFSET)) {
@ -102,20 +105,11 @@ static void __unused cmos_post_extra(u32 value)
spin_unlock(&cmos_post_lock);
}
#if CONFIG(CMOS_POST_EXTRA)
void post_log_path(const struct device *dev)
void cmos_post_path(const struct device *dev)
{
if (dev) {
/* Encode path into lower 3 bytes */
u32 path = dev_path_encode(dev);
/* Upper byte contains the log type */
path |= CMOS_POST_EXTRA_DEV_PATH << 24;
cmos_post_extra(path);
}
}
void post_log_clear(void)
{
cmos_post_extra(0);
}
#endif /* CONFIG_CMOS_POST_EXTRA */

View File

@ -16,18 +16,27 @@
#include <console/vtxprintf.h>
struct device;
void post_code(u8 value);
void arch_post_code(u8 value);
void cmos_post_code(u8 value);
void cmos_post_extra(u32 value);
void cmos_post_path(const struct device *dev);
int cmos_post_previous_boot(u8 *code, u32 *extra);
#if CONFIG(CMOS_POST_EXTRA)
struct device;
void post_log_path(const struct device *dev);
void post_log_clear(void);
#else
#define post_log_path(x) do {} while (0)
#define post_log_clear() do {} while (0)
#endif
static inline void post_log_path(const struct device *dev)
{
if (CONFIG(CMOS_POST) && dev)
cmos_post_path(dev);
}
static inline void post_log_clear(void)
{
if (CONFIG(CMOS_POST))
cmos_post_extra(0);
}
/* this function is weak and can be overridden by a mainboard function. */
void mainboard_post(u8 value);
void __noreturn die(const char *fmt, ...);