add BOOTLOADER_GET_MAC

Conflicts:
	platform/osd-merkur/params.h
This commit is contained in:
Harald Pichler 2013-06-04 11:28:42 +02:00
parent d5ca328050
commit 1fc136d379
3 changed files with 19 additions and 2 deletions

View file

@ -43,6 +43,12 @@ AVRDUDE_PORT=usb:00B000000D79
# Verify off
AVRDUDE_OPTIONS=-V
#debug
# CFLAGS += -save-temps
# Bootloader bonsai
# LDFLAGS += -save-temps
LDFLAGS += -Wl,--defsym,bootloader_get_mac=0x0001f3a0
include $(CONTIKIAVR)/Makefile.avr
include $(CONTIKIAVR)/radio/Makefile.radio

View file

@ -84,6 +84,9 @@ const uint8_t default_domain_name[] PROGMEM = PARAMS_DOMAINNAME;
#if PARAMETER_STORAGE==0
/* 0 Hard coded, minmal program and eeprom usage. */
extern uint8_t bootloader_get_mac(uint8_t);
uint8_t
params_get_eui64(uint8_t *eui64) {
#if CONTIKI_CONF_RANDOM_MAC
@ -92,7 +95,13 @@ params_get_eui64(uint8_t *eui64) {
return 1;
#else
uint8_t i;
#if BOOTLOADER_GET_MAC
for (i=0;i<sizeof(default_mac_address);i++){
eui64[i] = bootloader_get_mac(i);
}
#else
for (i=0;i<sizeof(default_mac_address);i++) eui64[i] = pgm_read_byte_near(default_mac_address+i);
#endif
return 0;
#endif
}

View file

@ -14,12 +14,14 @@
*/
#define CONTIKI_CONF_RANDOM_MAC 0 //adds 78 bytes
#define CONTIKI_CONF_SETTINGS_MANAGER 0 //adds 1696 bytes
#define BOOTLOADER_GET_MAC 0 // get mac form boolaoder, need bootlaoder bonsai, PARAMETER_STORAGE 0
#if CONTIKI_CONF_SETTINGS_MANAGER
//#define PARAMETER_STORAGE 2
#define PARAMETER_STORAGE 2
#else
#define PARAMETER_STORAGE 1
//#define PARAMETER_STORAGE 1
#define PARAMETER_STORAGE 0
#endif
/* Include settings.h, then dummy out the write routines */
@ -79,7 +81,7 @@ extern uint8_t eemem_domain_name[30];
#if UIP_CONF_LL_802154
//#define PARAMS_EUI64ADDR {0x02, 0xNN, 0xNN, 0xNN, 0xNN, 0xNN, 0xNN, 0xNN}
//#define PARAMS_EUI64ADDR {0x02, 0x00, 0x00, 0xff, 0xfe, 0x00, 0x00, 0x01}
#define PARAMS_EUI64ADDR {0x02, 0x00, 0x00, 0xff, 0xfe, 0x00, 0x00, 0x03}
#define PARAMS_EUI64ADDR {0x00, 0x21, 0x2e, 0xff, 0xff, 0x00, 0x26, 0xd0}
//#define PARAMS_EUI64ADDR {0x00, 0x21, 0x2e, 0xff, 0xff, 0x00, 0x1E, 0xFB}
#else
//#define PARAMS_EUI64ADDR {0x02, 0xNN, 0xNN, 0xff, 0xfe, 0xNN, 0xNN, 0xNN}