1
0
mirror of https://github.com/elua/elua.git synced 2025-01-08 20:56:17 +08:00

12 Commits

Author SHA1 Message Date
Martin Guy
d55aa8cf10 Add minimal documentation at the head of build_elua.lua
saying how to install dependencies and where to find out the
command-line flags
2011-04-12 17:05:08 +02:00
Martin Guy
1fd500623e Make build-elua.lua also a directly executable script (#! ...) 2011-04-12 16:34:42 +02:00
Martin Guy
fe4c8d86f7 Integrated Martin Guy's emBLOD bootloader patch in eLua. Original patch message:
emBLOD is Marcus Jansson's second-stage boot loader for AVR32UC3A
parts as used in the EVK1100 and Mizar32 boards, designed to allow
firmware images larger than the on-chip flash memory by loading the
eLua binary from SD card into SDRAM and executing it there.

The source for the emBLOD loader is here https://github.com/cmp1084/emBLOD

When compilation option  bootloader=emblod is given to scons, a special
version is compiled that
- locates the program at the start of SDRAM
- doesn't initialize the system clocks and SDRAM controller, as these
are already set up by emBLOD.

If the bootloader= option is not given, eLua is compiled exactly as before.

The changes I've made to Marcus' originally posted patches are to put
DATA and BSS in internal static RAM, the same as before, since in the
best case (memcpy) the SDRAM is three times slower than access to
static RAM
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=80657

This also has an impact on code speed: the interpreter runs 9 times
slower in external SDRAM than it does in internal flash.

Tested and working on Mizar32
2011-04-07 22:35:10 +03:00
James Snyder
fdbdbcc335 Implement basic ADC module for AVR32 (only tested on EVK1100), add crosstools-ng avr32 toolchain to lua-based build system.
- add basic (no clock support) ADC implementation for AVR32, works on EVK1100
- add avr32-unknown-none-gcc to new lua-based build system to support crosstools-ng avr32 toolchain
2011-03-18 15:20:27 -05:00
Bogdan Marinescu
ab5e07bf10 Small fix for running build_elua.lua in Windows 2011-03-06 13:06:45 +02:00
Bogdan Marinescu
9cde5334a8 Compiled files are now found automatically
The files that will be compiled to link an eLua image are now found automatically,
there's no need to specify them explicitly anymore. This applies only to the main
'build_elua.lua' build file, each target's 'conf.lua' still needs to specify them
explicitly (but can use the same automatic source file finding as the main build file).
2011-03-06 03:29:31 +02:00
Bogdan Marinescu
163870081d Yeah, you guessed it: even more improvements to the build system :) 2011-02-27 18:31:09 +00:00
Bogdan Marinescu
1822ee1572 Now all eLua platforms compile using build_elua.lua; output compared with scons' output to verify that the same code is generated 2011-02-22 09:58:02 +00:00
Bogdan Marinescu
cd3d721519 added more platforms to the new build script; fixed issue that prevented compilation under Windows 2011-02-21 23:29:54 +00:00
Bogdan Marinescu
36d160876d More refinements to the new build system (yes, a lot of those, I know :) ) It is now possible to send arguments to targets if they are Lua functions. For example:
$ lua build_elua.lua board=et-stm32 burn /dev/ttyUSB0

will invoke stm32ld (the default for stm32's platform 'burn' target) on port /dev/ttyUSB0.
I really have to document all this stuff somewhere. Don't panic though, for now you can use the old build system exactly like you used it before :)
2011-02-21 16:08:55 +00:00
Bogdan Marinescu
b95dd84c41 - avr32 platform now uses the Lua build system (lua build_elua.lua board=mizar32|atevk1100|atevk1101)
- added support for per-backend targets. avr32 now has a 'burn' target (besides the regular 'prog') that can be used to build the image and burn it to the board (lua build_elua.lua board=atevk1100 burn). It is created in 'conf.lua'
- other fixes and improvements to the build system
2011-02-21 13:22:47 +00:00
Bogdan Marinescu
e3d6ee2715 Continuing work on the build system, try 'lua build_elua.lua board=et-stm32 prog' (it only works for stm32 for now). Still a lot of WIP and not throughly tested (for example the new mkfs.lua script was not tested at all with a non-empty FS) but it does seem to work nicely. NOTE: you need to install 'lpack' for this to work (luarocks install lpack). Anybody knows of a good way
to implement make's (or scon's ) '-jn' option (for parallel builds) in a cross-platform manner?
2011-02-21 01:01:21 +00:00