diff options
| author | Keith Packard <keithp@keithp.com> | 2013-03-24 15:27:42 -0700 | 
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2013-05-07 20:16:52 -0700 | 
| commit | 7d98fc5d3f106f3063608a2e5c69d9359061437a (patch) | |
| tree | 0e42fc84f07365e46358eae66db5403ddb3b3cf0 /src | |
| parent | ab1cbc0f51ddf897a3a7a768862d9dfe26a6c14d (diff) | |
altos/stm: Add comments to the .ld files explaining how the romconfig stuff works
Would be nice to be able to explicitly define addresses for the
romconfig variables, but I can't figure out how to make that
work. Instead, just explicitly load the files in teh right order to
make things land in the right places.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src')
| -rw-r--r-- | src/stm/altos-application.ld | 12 | ||||
| -rw-r--r-- | src/stm/altos-loader.ld | 11 | 
2 files changed, 21 insertions, 2 deletions
| diff --git a/src/stm/altos-application.ld b/src/stm/altos-application.ld index 5bdfcd05..c94c06b8 100644 --- a/src/stm/altos-application.ld +++ b/src/stm/altos-application.ld @@ -35,9 +35,19 @@ SECTIONS {  		. = ORIGIN(rom) + 0x100; + +		/* Ick. What I want is to specify the +		 * addresses of some global constants so +		 * that I can find them across versions +		 * of the application. I can't figure out +		 * how to make gnu ld do that, so instead +		 * we just load the two files that include +		 * these defines in the right order here and +		 * expect things to 'just work'. Don't change +		 * the contents of those files, ok? +		 */  		ao_romconfig.o(.romconfig*)  		ao_product.o(.romconfig*) -  		*(.text*)	/* Executable code */  		*(.rodata*)	/* Constants */ diff --git a/src/stm/altos-loader.ld b/src/stm/altos-loader.ld index 7184b96c..14b45351 100644 --- a/src/stm/altos-loader.ld +++ b/src/stm/altos-loader.ld @@ -35,9 +35,18 @@ SECTIONS {  		. = ORIGIN(rom) + 0x100; +		/* Ick. What I want is to specify the +		 * addresses of some global constants so +		 * that I can find them across versions +		 * of the application. I can't figure out +		 * how to make gnu ld do that, so instead +		 * we just load the two files that include +		 * these defines in the right order here and +		 * expect things to 'just work'. Don't change +		 * the contents of those files, ok? +		 */  		ao_romconfig.o(.romconfig*)  		ao_product.o(.romconfig*) -  		*(.text)	/* Executable code */  		*(.rodata)	/* Constants */ | 
