2018-05-06 21:58:06 +00:00
|
|
|
// SPDX-License-Identifier: GPL-2.0+
|
2016-08-10 15:36:44 +00:00
|
|
|
/*
|
|
|
|
* (C) Copyright 2008 - 2013 Tensilica Inc.
|
|
|
|
* (C) Copyright 2014 - 2016 Cadence Design Systems Inc.
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
* CPU specific code
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include <common.h>
|
|
|
|
#include <command.h>
|
2020-05-10 17:40:02 +00:00
|
|
|
#include <init.h>
|
2019-11-14 19:57:20 +00:00
|
|
|
#include <vsprintf.h>
|
2016-08-10 15:36:44 +00:00
|
|
|
#include <linux/stringify.h>
|
|
|
|
#include <asm/global_data.h>
|
|
|
|
#include <asm/cache.h>
|
|
|
|
#include <asm/string.h>
|
|
|
|
#include <asm/misc.h>
|
|
|
|
|
|
|
|
DECLARE_GLOBAL_DATA_PTR;
|
|
|
|
|
2021-05-20 11:23:52 +00:00
|
|
|
gd_t *gd __section(".data");
|
2016-08-10 15:36:44 +00:00
|
|
|
|
|
|
|
#if defined(CONFIG_DISPLAY_CPUINFO)
|
|
|
|
/*
|
|
|
|
* Print information about the CPU.
|
|
|
|
*/
|
|
|
|
|
|
|
|
int print_cpuinfo(void)
|
|
|
|
{
|
|
|
|
char buf[120], mhz[8];
|
|
|
|
uint32_t id0, id1;
|
|
|
|
|
|
|
|
asm volatile ("rsr %0, 176\n"
|
|
|
|
"rsr %1, 208\n"
|
|
|
|
: "=r"(id0), "=r"(id1));
|
|
|
|
|
|
|
|
sprintf(buf, "CPU: Xtensa %s (id: %08x:%08x) at %s MHz\n",
|
|
|
|
XCHAL_CORE_ID, id0, id1, strmhz(mhz, gd->cpu_clk));
|
|
|
|
puts(buf);
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
int arch_cpu_init(void)
|
|
|
|
{
|
2022-11-16 18:10:37 +00:00
|
|
|
gd->ram_size = CFG_SYS_SDRAM_SIZE;
|
2016-08-10 15:36:44 +00:00
|
|
|
return 0;
|
|
|
|
}
|
2017-04-06 18:47:05 +00:00
|
|
|
|
|
|
|
int dram_init(void)
|
|
|
|
{
|
|
|
|
return 0;
|
|
|
|
}
|