2012-10-28 18:31:09 +00:00
/*
2015-01-27 16:41:55 +01:00
* Setup code for AT91RM9200
2012-10-28 18:31:09 +00:00
*
* Copyright ( C ) 2011 Atmel ,
* 2011 Nicolas Ferre < nicolas . ferre @ atmel . com >
* 2012 Joachim Eastwood < manabian @ gmail . com >
*
* Licensed under GPLv2 or later .
*/
# include <linux/of.h>
2015-01-15 15:59:27 +01:00
# include <linux/of_platform.h>
2012-10-28 18:31:09 +00:00
# include <asm/mach/arch.h>
2015-01-26 19:02:54 +01:00
# include <asm/system_misc.h>
2012-10-28 18:31:09 +00:00
# include "generic.h"
2015-03-12 15:54:28 +01:00
# include "soc.h"
static const struct at91_soc rm9200_socs [ ] = {
AT91_SOC ( AT91RM9200_CIDR_MATCH , 0 , " at91rm9200 BGA " , " at91rm9200 " ) ,
{ /* sentinel */ } ,
} ;
2012-10-28 18:31:09 +00:00
2015-01-27 18:41:33 +01:00
static void __init at91rm9200_dt_device_init ( void )
2015-01-15 15:59:27 +01:00
{
2015-03-12 15:54:28 +01:00
struct soc_device * soc ;
struct device * soc_dev = NULL ;
soc = at91_soc_init ( rm9200_socs ) ;
if ( soc ! = NULL )
soc_dev = soc_device_to_device ( soc ) ;
of_platform_populate ( NULL , of_default_bus_match_table , NULL , soc_dev ) ;
2015-01-23 11:47:37 +01:00
2015-01-26 19:02:54 +01:00
arm_pm_idle = at91rm9200_idle ;
2015-01-27 18:41:33 +01:00
at91rm9200_pm_init ( ) ;
2015-01-15 15:59:27 +01:00
}
2015-07-27 18:27:52 -04:00
static const char * const at91rm9200_dt_board_compat [ ] __initconst = {
2012-10-28 18:31:09 +00:00
" atmel,at91rm9200 " ,
NULL
} ;
2015-01-27 18:41:33 +01:00
DT_MACHINE_START ( at91rm9200_dt , " Atmel AT91RM9200 " )
. init_machine = at91rm9200_dt_device_init ,
2012-10-28 18:31:09 +00:00
. dt_compat = at91rm9200_dt_board_compat ,
MACHINE_END