2005-06-24 09:01:16 +04:00
/*
* arch / xtensa / kernel / platform . c
*
* Default platform functions .
*
* This file is subject to the terms and conditions of the GNU General Public
* License . See the file " COPYING " in the main directory of this archive
* for more details .
*
* Copyright ( C ) 2005 Tensilica Inc .
*
* Chris Zankel < chris @ zankel . net >
*/
# include <linux/types.h>
# include <linux/pci.h>
# include <linux/time.h>
# include <asm/platform.h>
# include <asm/timex.h>
2005-10-31 02:03:48 +03:00
# include <asm/param.h> /* HZ */
2005-06-24 09:01:16 +04:00
# 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 )
*/
_F ( void , setup , ( char * * cmd ) , { } ) ;
_F ( void , restart , ( void ) , { while ( 1 ) ; } ) ;
_F ( void , halt , ( void ) , { while ( 1 ) ; } ) ;
_F ( void , power_off , ( void ) , { while ( 1 ) ; } ) ;
_F ( void , idle , ( void ) , { __asm__ __volatile__ ( " waiti 0 " : : : " memory " ) ; } ) ;
_F ( void , heartbeat , ( void ) , { } ) ;
_F ( int , pcibios_fixup , ( void ) , { return 0 ; } ) ;
2013-03-31 01:08:22 +04:00
_F ( void , pcibios_init , ( void ) , { } ) ;
2005-06-24 09:01:16 +04:00
2005-09-23 08:44:23 +04:00
# ifdef CONFIG_XTENSA_CALIBRATE_CCOUNT
2005-06-24 09:01:16 +04:00
_F ( void , calibrate_ccount , ( void ) ,
{
2012-09-17 05:44:43 +04:00
pr_err ( " ERROR: Cannot calibrate cpu frequency! Assuming 10MHz. \n " ) ;
2013-06-17 12:29:43 +04:00
ccount_freq = 10 * 1000000UL ;
2005-06-24 09:01:16 +04:00
} ) ;
# endif