xref: /openbmc/linux/arch/xtensa/kernel/platform.c (revision 404e077a)
1 /*
2  * arch/xtensa/kernel/platform.c
3  *
4  * Default platform functions.
5  *
6  * This file is subject to the terms and conditions of the GNU General Public
7  * License.  See the file "COPYING" in the main directory of this archive
8  * for more details.
9  *
10  * Copyright (C) 2005 Tensilica Inc.
11  *
12  * Chris Zankel <chris@zankel.net>
13  */
14 
15 #include <linux/printk.h>
16 #include <linux/types.h>
17 #include <asm/platform.h>
18 #include <asm/timex.h>
19 
20 /*
21  * Default functions that are used if no platform specific function is defined.
22  * (Please, refer to arch/xtensa/include/asm/platform.h for more information)
23  */
24 
25 void __weak __init platform_init(bp_tag_t *first)
26 {
27 }
28 
29 void __weak __init platform_setup(char **cmd)
30 {
31 }
32 
33 void __weak platform_idle(void)
34 {
35 	__asm__ __volatile__ ("waiti 0" ::: "memory");
36 }
37 
38 #ifdef CONFIG_XTENSA_CALIBRATE_CCOUNT
39 void __weak platform_calibrate_ccount(void)
40 {
41 	pr_err("ERROR: Cannot calibrate cpu frequency! Assuming 10MHz.\n");
42 	ccount_freq = 10 * 1000000UL;
43 }
44 #endif
45