diff options
author | Keith Packard <keithp@keithp.com> | 2010-08-23 22:03:36 -0700 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2010-08-23 22:03:36 -0700 |
commit | 56b906f535ac2f86bcab71addbbcd376d74f6a73 (patch) | |
tree | 09b5f0aea253752da6ea87df0fabf335c11aa31a /src/ao.h | |
parent | 4c0c099716197ef7539be0cf55bbb164f6804958 (diff) |
altos: Place rom config variables in fixed location
The device serial number and radio calibration values are stored in
flash, mostly so that TeleDongle gets them saved.
Placing them in well-known locations (starting at 0xa0) makes it
possible to find the previous configuration and to re-write it
easily, without requiring the .map file.
altosui doesn't have the .map file parsing code, so it relies upon
this new technique. As a benefit, it reads the old values from the
device before reprogramming it.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src/ao.h')
-rw-r--r-- | src/ao.h | 12 |
1 files changed, 11 insertions, 1 deletions
@@ -290,6 +290,17 @@ void ao_led_init(uint8_t enable); /* + * ao_romconfig.c + */ + +#define AO_ROMCONFIG_VERSION 1 + +extern __code __at (0x00a0) uint16_t ao_romconfig_version; +extern __code __at (0x00a2) uint16_t ao_romconfig_check; +extern __code __at (0x00a4) uint16_t ao_serial_number; +extern __code __at (0x00a6) uint32_t ao_radio_cal; + +/* * ao_usb.c */ @@ -998,7 +1009,6 @@ ao_rssi_init(uint8_t rssi_led); */ extern const uint8_t ao_usb_descriptors []; -extern const uint16_t ao_serial_number; extern const char ao_version[]; extern const char ao_manufacturer[]; extern const char ao_product[]; |