2010-10-13 00:52:46 -06:00
/*
* MIPS support for CONFIG_OF device tree support
*
* Copyright ( C ) 2010 Cisco Systems Inc . < dediao @ cisco . com >
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation .
*/
# include <linux/init.h>
2011-07-23 16:30:40 -04:00
# include <linux/export.h>
2010-10-13 00:52:46 -06:00
# include <linux/errno.h>
# include <linux/types.h>
# include <linux/bootmem.h>
# include <linux/debugfs.h>
# include <linux/of.h>
# include <linux/of_fdt.h>
# include <asm/page.h>
# include <asm/prom.h>
2013-04-11 05:34:59 +00:00
static char mips_machine_name [ 64 ] = " Unknown " ;
__init void mips_set_machine_name ( const char * name )
{
if ( name = = NULL )
return ;
2013-05-26 07:06:06 +00:00
strlcpy ( mips_machine_name , name , sizeof ( mips_machine_name ) ) ;
2013-04-11 05:34:59 +00:00
pr_info ( " MIPS: machine is %s \n " , mips_get_machine_name ( ) ) ;
}
char * mips_get_machine_name ( void )
{
return mips_machine_name ;
}
# ifdef CONFIG_OF
2010-10-13 00:52:46 -06:00
void __init early_init_dt_add_memory_arch ( u64 base , u64 size )
{
return add_memory_region ( base , size , BOOT_MEM_RAM ) ;
}
2011-01-13 15:36:09 -07:00
void * __init early_init_dt_alloc_memory_arch ( u64 size , u64 align )
2010-10-13 00:52:46 -06:00
{
2011-01-13 15:36:09 -07:00
return __alloc_bootmem ( size , align , __pa ( MAX_DMA_ADDRESS ) ) ;
2010-10-13 00:52:46 -06:00
}
2014-03-31 15:13:07 -05:00
void __init __dt_setup_arch ( void * bph )
2012-01-25 15:03:19 +01:00
{
2013-08-26 10:20:26 -05:00
if ( ! early_init_dt_scan ( bph ) )
2012-01-25 15:03:19 +01:00
return ;
2012-05-02 12:27:35 +02:00
2013-08-28 09:56:40 -05:00
mips_set_machine_name ( of_flat_dt_get_machine_name ( ) ) ;
2012-01-25 15:03:19 +01:00
}
2013-04-11 05:34:59 +00:00
# endif