Commit graph

1299 commits

Author SHA1 Message Date
d18c7db aafd94b868 Change over to standard AT91 header file 2009-09-27 20:46:47 +00:00
d18c7db d3ae0de746 Small changes to some armsrc makefile to allow conditional compilation of various protocols via defines, change winsrc makefile to allow override of compiler location via external defines, finally change fpgaloader to actually check that the image upload succeeded instead of just blindly sending it and hoping for the best. 2009-09-22 09:57:03 +00:00
henryk@ploetzli.ch c3adc9fd60 Create a stamp file for download completion so that it won't have to be redone later
Unpack newlib before compiling gcc, fixes the bug where header files were not installed
2009-09-19 21:55:22 +00:00
adam@algroup.co.uk a93bd81d88 tool to find UIDs in bitstream 2009-09-12 08:11:24 +00:00
henryk@ploetzli.ch 709b784c16 Change variable assignments to make it easier to compile static and/or x86 binaries 2009-09-11 02:25:48 +00:00
adam@algroup.co.uk ac86b65681 fix mandemod initialisation and add Transit tag trace 2009-09-10 15:12:20 +00:00
henryk@ploetzli.ch ccb6ae9169 Change flashos.bat for the new flash procedure 2009-09-09 07:40:14 +00:00
henryk@ploetzli.ch 1b2c893632 Fix data segement. You may now use stuff like int foo = 1; in global context (as opposed to both int foo = 0; which is bss and const int foo = 1; which is rodata) without having the sky come
crashing down
2009-09-08 15:40:22 +00:00
d18c7db 715d74c5be Fixed up last gcc 4.1 and 4.4 warnings, added OpenOCD wiggler config 2009-09-08 10:08:43 +00:00
henryk@ploetzli.ch 45dcfac2cc Hopefully correct code for C's strict aliasing rules 2009-09-08 02:36:50 +00:00
henryk@ploetzli.ch 9dbe0941fd Change section_start pointer to char** to prevent aliasing warnings on old toolchain 2009-09-08 00:37:13 +00:00
d18c7db 57fcd2d7d1 added eh_frame needed for gcc 4.4.1 or higher 2009-09-07 09:53:45 +00:00
d18c7db a8120704f7 Updated the windows Makefile to be compatible with both nmake and make 2009-09-07 09:03:45 +00:00
henryk@ploetzli.ch d4086fe2b7 Re-enable -Wall 2009-09-06 19:19:38 +00:00
henryk@ploetzli.ch bb03181744 Fix FPGA load code for the generic case where a new style bitstream is not DWORD aligned
Completely switch to byte-wise load, shouldn't make much of a difference since this is not timing-critical
2009-09-06 19:08:56 +00:00
henryk@ploetzli.ch 64b8119836 Add make targets for flashing (Windows version untested) 2009-09-05 22:45:53 +00:00
henryk@ploetzli.ch 83288efc7d Remove unused code from hitag2.c
Mark intermittently used code in iso15693.c as attribute unused
Change CFLAGS to -Werror to enforce warning free code
2009-09-05 22:17:18 +00:00
adam@algroup.co.uk 7cea81eea6 oops, missed a bit! 2009-09-05 13:11:31 +00:00
adam@algroup.co.uk 98af9ddf8c fix wrong terminology - LRC/CRC and calulate result instead of matching (thanks Henryk!) 2009-09-05 13:10:17 +00:00
adam@algroup.co.uk c5847014fd clarify output 2009-09-05 08:46:59 +00:00
adam@algroup.co.uk 4962d41420 tool to find correct byte for 8-bit XOR CRC 2009-09-05 07:14:35 +00:00
adam@algroup.co.uk c2c80de8ab enforce askdemod argument 0 or 1 2009-09-02 09:17:34 +00:00
d18c7db 3cc63bdf91 Updated windows client to handle new flashing method 2009-09-02 08:30:22 +00:00
adam@algroup.co.uk 523f4c90a1 amp command - amplify sample peaks 2009-09-01 23:17:57 +00:00
henryk@ploetzli.ch 4f3bd9738f Fix mkversion.pl for the case where the global svn revision is different from the last changed revision 2009-09-01 22:56:07 +00:00
henryk@ploetzli.ch 8fcbf652da New bootrom
+ Add common area at end of RAM to communicate between main os and bootrom
+ Lower stack end to make room for common area
+ Implement CMD_DEVICE_INFO in both OS and bootrom to give information about the current state and supported features
+ Allow hands-free firmware update: When CMD_START_FLASH is received over USB in OS mode, the device will reset and enter the bootrom
  Pressing the button in hands-free update mode takes precedence: releasing the button will immediately abort firmware update and 
  perform a reset. Do not press the button.
+ Require each flash sequence to be preceded by a CMD_START_FLASH to set up the boundaries for the following flash sequence
  Not compatible with linux flasher before SVN revision 200
  Currently no compatible flasher for Windows. WINDOWS USERS: DO NOT UPDATE YOUR BOOTROM YET
+ Protect bootrom flash area unless magic unlock sequence is given in CMD_START_FLASH
2009-09-01 14:44:38 +00:00
henryk@ploetzli.ch a5b1ba2023 New flash tool, needs to be ported to Windows.
+ [f]ast is gone, current mode will be autodetected
+ uses hands-free firmware update if supported by the bootrom (to be committed)
+ uses new bootrom safety features against accidental misflashes (to be committed)
+ supports S19 files with base address 0x0 or base address 0x100000
+ supports old bootroms which expect 0x0 and new bootroms which expect 0x100000 (to be committed)
+ new argument style: first argument is comma-separated (no spaces!) list of partition names, remaining arguments are file names
  os and fpga may be abbreviated, bootrom must be given in full
  Examples:   ./flasher os ../armsrc/obj/osimage.s19
              ./flasher bootrom,o,f ../bootrom/obj/bootrom.s19 ../armsrc/obj/osimage.s19 ../armsrc/obj/fpgaimage.s19
2009-09-01 14:35:13 +00:00
henryk@ploetzli.ch d5d42c0a4b Add defines for reset type 2009-09-01 05:00:33 +00:00
henryk@ploetzli.ch 0c13c669cf Fix argument check for the case of both and not fast 2009-09-01 04:59:52 +00:00
henryk@ploetzli.ch e3ae025783 Eradicate all occurences of hardcoded memory addresses from all sources files, except for the FPGA bitstream fallback 2009-08-31 14:52:59 +00:00
henryk@ploetzli.ch 52b3d184ce Have the Windows batch files check for make 2009-08-31 03:12:45 +00:00
henryk@ploetzli.ch 3742d90563 Add forgotten file 2009-08-31 00:47:12 +00:00
henryk@ploetzli.ch 2e68bd4065 Add forgotten file 2009-08-31 00:37:29 +00:00
henryk@ploetzli.ch db335b3de0 Make objcopy call less verbose
Add master Makefile
2009-08-30 22:35:12 +00:00
adam@algroup.co.uk 269a820f9e maintain alphabetic order! 2009-08-30 18:57:28 +00:00
henryk@ploetzli.ch 4271e82d56 Only re-compile version.c as often as necessary
Make bootrom version information pointer a proper symbol (with hacky ld strangeness workaround)
2009-08-29 06:14:28 +00:00
henryk@ploetzli.ch 0fa9ca5b53 Add command and code for bidirectional LF emulation of Hitag2. Should be extended for other types of tags 2009-08-28 21:56:43 +00:00
henryk@ploetzli.ch 802a36162a New FPGA code for bidirectional LF emulation 2009-08-28 21:54:47 +00:00
henryk@ploetzli.ch aae8787c03 Add defines for the timer/counter peripheral 2009-08-28 21:53:54 +00:00
henryk@ploetzli.ch 3927b707bd Our windows perl doesn't like use strict 2009-08-28 07:31:36 +00:00
henryk@ploetzli.ch 8a6aec16d8 Implement version information storage and retrieval for the bootrom and the osimage.
Use perl to create the version information (thereby re-creating the perl dependency and adding an svn dependency) but fall back in case of missing perl or svn
2009-08-28 06:40:44 +00:00
henryk@ploetzli.ch 42bc3be31c Trying automagic version stuff 2009-08-28 02:40:22 +00:00
henryk@ploetzli.ch 8e19377db1 Send Stall in response to USB SET FEATURE or CLEAR FEATURE requests. Speeds up device enumeration on linux by 10s. 2009-08-28 00:44:09 +00:00
henryk@ploetzli.ch ba8a80b30c Add version command 2009-08-28 00:37:28 +00:00
henryk@ploetzli.ch 7af790aa03 Jump to the correct physical address in Flash. (The comment was wrong, it never used RAM) 2009-08-28 00:36:02 +00:00
henryk@ploetzli.ch 47c872f48f termcap is deprecated and doesn't seem to be needed anyway 2009-08-28 00:35:27 +00:00
henryk@ploetzli.ch e73e717239 Add Makefile for fpga directory (Windows codepath is untested, in any case, go.bat is still there)
Retire rbt2c.pl, instead use objcopy to directly convert the .bit file into an .o that can be linked with the flash image
Rename armsrc/fpga.c to armsrc/fpgaloader.c (since there is now a new fpga.o, created from fpga.bit)
Remove fpgaimg.c from subversion, add fpga.bit
Instead of creating fpgaimage.elf and osimage.elf separately, now create a joined fullimage.elf 
  first (obsoleting ldscript-full), then extract only the fpga and os sections with objcopy
  (This creates unspecific warnings about an empty segment, need to investigate)
Implement a rudimentary .bit parser in the firmware, use that to locate the bitstream in the new
  fpgaimage (which is just a plain copy of the fpga.bit file) and send it to the FPGA
  The code will check the format that's in flash and fall back to the legacy format
2009-08-27 23:29:49 +00:00
henryk@ploetzli.ch 391a974f53 (Our Windows ARM toolchain really likes its glue sections) 2009-08-27 16:12:00 +00:00
henryk@ploetzli.ch 2bfed17db2 Add a common linker script with the memory map for the complete project
Use the correct physical addresses in the memory map, and instead translate the addresses during postprocessing with objcopy
2009-08-27 16:07:35 +00:00
henryk@ploetzli.ch fb6e5aa863 The older gnuarm in the windows toolchain seems to need the glue_7t section 2009-08-27 04:46:31 +00:00