[board config]

* made config optional
This commit is contained in:
Oliver Hahm 2010-12-06 13:19:31 +01:00
parent ee0e37f8ea
commit 23c7710d7e
4 changed files with 14 additions and 15 deletions

View File

@ -27,7 +27,8 @@
SubDir TOP board msb-430-common ;
Module board : board_init.c debug_uart.c config.c ;
Module board : board_init.c debug_uart.c ;
Module config : config.c ;
UseModule board ;
SubInclude TOP cpu $(CPU) ;

View File

@ -27,7 +27,8 @@
SubDir TOP board msba2 ;
Module board : board_init.c config.c ;
Module board : board_init.c ;
Module config : config.c ;
UseModule board ;
UseModule board_common ;

View File

@ -44,9 +44,6 @@ and the mailinglist (subscription via web site)
#include <lpc23xx.h>
#include <VIC.h>
#include <cpu.h>
#include <config.h>
#include <string.h>
#include <flashrom.h>
#define PCRTC BIT9
#define CL_CPU_DIV 4
@ -156,13 +153,3 @@ void bl_blink(void) {
LED_RED_OFF;
LED_GREEN_OFF;
}
void bl_config_init(void) {
extern char configmem[];
if (*((uint16_t*) configmem) == CONFIG_KEY) {
memcpy(&sysconfig, (configmem + sizeof(CONFIG_KEY)), sizeof(sysconfig));
}
else {
config_save();
}
}

View File

@ -2,6 +2,16 @@
#include <config.h>
#include <flashrom.h>
void config_load(void) {
extern char configmem[];
if (*((uint16_t*) configmem) == CONFIG_KEY) {
memcpy(&sysconfig, (configmem + sizeof(CONFIG_KEY)), sizeof(sysconfig));
}
else {
config_save();
}
}
uint8_t config_save(void) {
configmem_t mem = { CONFIG_KEY, sysconfig };
return (flashrom_erase((uint8_t*) &configmem) && flashrom_write((uint8_t*) &configmem, (char*) &mem, sizeof(mem)));