summaryrefslogtreecommitdiffstats
path: root/arch/arm/boards/vexpress/init.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2013-08-15 09:02:17 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2013-08-16 08:40:55 +0200
commit068bed22a6154aec1fe689603b8a8eaa27c0f350 (patch)
tree5cebcbbbcd486ee49552253d27d079b7f6703fd4 /arch/arm/boards/vexpress/init.c
parent774580c2bde4c8b126eed0a80d00cb22cbfb3193 (diff)
downloadbarebox-068bed22a6154aec1fe689603b8a8eaa27c0f350.tar.gz
barebox-068bed22a6154aec1fe689603b8a8eaa27c0f350.tar.xz
Set model and hostname at boardlevel
With multiboard support the compiletime generated BOARDINFO string gets more and more meaningless. This removes it from Kconfig and replaces it with a variable that can be set at boardlevel. Also many boards have a standard setting for the hostname in the environment. This patch also moves the standard to C code by calling barebox_set_hostname(). Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/boards/vexpress/init.c')
-rw-r--r--arch/arm/boards/vexpress/init.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/arch/arm/boards/vexpress/init.c b/arch/arm/boards/vexpress/init.c
index 6e4fa7248f..48bc11efec 100644
--- a/arch/arm/boards/vexpress/init.c
+++ b/arch/arm/boards/vexpress/init.c
@@ -22,7 +22,6 @@ struct vexpress_init {
void (*mem_init)(void);
void (*console_init)(void);
void (*devices_init)(void);
- char *hostname;
};
struct vexpress_init *v2m_init;
@@ -87,7 +86,6 @@ struct vexpress_init vexpress_init_a9_legacy = {
.mem_init = vexpress_a9_legacy_mem_init,
.console_init = vexpress_a9_legacy_console_init,
.devices_init = vexpress_a9_legacy_devices_init,
- .hostname = "vexpress-a9-legacy",
};
static int vexpress_mem_init(void)
@@ -106,9 +104,6 @@ static int vexpress_devices_init(void)
devfs_add_partition("nor0", 0x00000, 0x40000, DEVFS_PARTITION_FIXED, "self");
devfs_add_partition("nor0", 0x40000, 0x20000, DEVFS_PARTITION_FIXED, "env0");
-
- globalvar_add_simple("hostname", v2m_init->hostname);
-
return 0;
}
device_initcall(vexpress_devices_init);
@@ -123,20 +118,26 @@ console_initcall(vexpress_console_init);
static int vexpress_core_init(void)
{
+ char *hostname;
+
if (amba_is_arm_sp804(IOMEM(0x10011000))) {
v2m_init = &vexpress_init_a9_legacy;
+ hostname = "vexpress-a9-legacy";
} else {
v2m_init = &vexpress_init_ax;
if (cpu_is_cortex_a5())
- v2m_init->hostname = "vexpress-a5";
+ hostname = "vexpress-a5";
else if (cpu_is_cortex_a7())
- v2m_init->hostname = "vexpress-a7";
+ hostname = "vexpress-a7";
else if (cpu_is_cortex_a9())
- v2m_init->hostname = "vexpress-a9";
+ hostname = "vexpress-a9";
else if (cpu_is_cortex_a15())
- v2m_init->hostname = "vexpress-a15";
+ hostname = "vexpress-a15";
}
+ barebox_set_model("ARM Vexpress");
+ barebox_set_hostname(hostname);
+
v2m_init->core_init();
return 0;