xtensa: clean up default platform functions

Drop _F macro used to define default platform functions and rewrite
definitions as normal functions. Don't define separate __platform_*
function and platform_* weak alias, just define a weak function.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
This commit is contained in:
Max Filippov 2023-06-08 18:17:00 -07:00
parent 7561dfbf3b
commit 752121c7eb

View file

@ -17,23 +17,28 @@
#include <asm/platform.h>
#include <asm/timex.h>
#define _F(r,f,a,b) \
r __platform_##f a b; \
r platform_##f a __attribute__((weak, alias("__platform_"#f)))
/*
* Default functions that are used if no platform specific function is defined.
* (Please, refer to include/asm-xtensa/platform.h for more information)
* (Please, refer to arch/xtensa/include/asm/platform.h for more information)
*/
_F(void, init, (bp_tag_t *first), { });
_F(void, setup, (char** cmd), { });
_F(void, idle, (void), { __asm__ __volatile__ ("waiti 0" ::: "memory"); });
void __weak __init platform_init(bp_tag_t *first)
{
}
void __weak __init platform_setup(char **cmd)
{
}
void __weak platform_idle(void)
{
__asm__ __volatile__ ("waiti 0" ::: "memory");
}
#ifdef CONFIG_XTENSA_CALIBRATE_CCOUNT
_F(void, calibrate_ccount, (void),
void __weak platform_calibrate_ccount(void)
{
pr_err("ERROR: Cannot calibrate cpu frequency! Assuming 10MHz.\n");
ccount_freq = 10 * 1000000UL;
});
}
#endif