diff options
author | Jakob Odersky <jodersky@gmail.com> | 2015-05-14 13:04:58 +0200 |
---|---|---|
committer | Jakob Odersky <jodersky@gmail.com> | 2015-05-14 13:04:58 +0200 |
commit | a0f69cb0bc4be17431849753c6f7b720cec7f6a5 (patch) | |
tree | 3683c033f076c2a23b194b9a7f5c16de15b733a3 | |
parent | e4031ca37046ada989cc92abe79329f64f885e3c (diff) | |
download | px4-firmware-a0f69cb0bc4be17431849753c6f7b720cec7f6a5.tar.gz px4-firmware-a0f69cb0bc4be17431849753c6f7b720cec7f6a5.tar.bz2 px4-firmware-a0f69cb0bc4be17431849753c6f7b720cec7f6a5.zip |
implement device id
-rwxr-xr-x | nuttx-configs/trifle/scripts/ld.script | 5 | ||||
-rw-r--r-- | src/drivers/boards/trifle/board_config.h | 4 | ||||
-rw-r--r-- | src/drivers/boards/trifle/idconfig.c | 8 | ||||
-rw-r--r-- | src/drivers/boards/trifle/module.mk | 6 | ||||
-rw-r--r-- | src/drivers/boards/trifle/pwmconfig.c (renamed from src/drivers/boards/trifle/devconfig.c) | 0 | ||||
-rw-r--r-- | src/drivers/kinetis/drv_hrt.c | 2 |
6 files changed, 20 insertions, 5 deletions
diff --git a/nuttx-configs/trifle/scripts/ld.script b/nuttx-configs/trifle/scripts/ld.script index 23e6a5174..c721346f3 100755 --- a/nuttx-configs/trifle/scripts/ld.script +++ b/nuttx-configs/trifle/scripts/ld.script @@ -69,6 +69,11 @@ SECTIONS KEEP(*(.cfmconfig)) } > cfmprotect + .idconfig : { + __device_id = ABSOLUTE(.); + KEEP(*(.idconfig)) + } > progflash + .text : { _stext = ABSOLUTE(.); KEEP(*(.text .text.*)) diff --git a/src/drivers/boards/trifle/board_config.h b/src/drivers/boards/trifle/board_config.h index 5ebae1973..d860bb906 100644 --- a/src/drivers/boards/trifle/board_config.h +++ b/src/drivers/boards/trifle/board_config.h @@ -4,8 +4,8 @@ #include <nuttx/config.h> #include <stdbool.h> -//totally random -#define UDID_START 0x2000000 +extern uint32_t __device_id; +#define UDID_START __device_id #define GPIO_LED0 (PIN_PORTC | PIN5 | GPIO_HIGHDRIVE | GPIO_OUTPUT_ONE) diff --git a/src/drivers/boards/trifle/idconfig.c b/src/drivers/boards/trifle/idconfig.c new file mode 100644 index 000000000..8fb80f987 --- /dev/null +++ b/src/drivers/boards/trifle/idconfig.c @@ -0,0 +1,8 @@ +#include <modules/systemlib/otp.h> + +__attribute__ ((section(".idconfig"))) +uint32_t device_id[] = { + 0xdeadbeef, + 0xdeadbeef, + 0xdeadbeef +}; diff --git a/src/drivers/boards/trifle/module.mk b/src/drivers/boards/trifle/module.mk index 7c4e4a525..6d553749a 100644 --- a/src/drivers/boards/trifle/module.mk +++ b/src/drivers/boards/trifle/module.mk @@ -2,6 +2,10 @@ # Board-specific startup code for the CONDOR # -SRCS = cfmconfig.c devconfig.c up_boot.c up_leds.c +SRCS = cfmconfig.c \ + pwmconfig.c \ + idconfig.c \ + up_boot.c \ + up_leds.c MAXOPTIMIZATION = -Os diff --git a/src/drivers/boards/trifle/devconfig.c b/src/drivers/boards/trifle/pwmconfig.c index 1fec4acd6..1fec4acd6 100644 --- a/src/drivers/boards/trifle/devconfig.c +++ b/src/drivers/boards/trifle/pwmconfig.c diff --git a/src/drivers/kinetis/drv_hrt.c b/src/drivers/kinetis/drv_hrt.c index 90714b7ba..8a765c970 100644 --- a/src/drivers/kinetis/drv_hrt.c +++ b/src/drivers/kinetis/drv_hrt.c @@ -178,5 +178,3 @@ void hrt_init(void) { } - -__END_DECLS |