[DAQ-drivers] driver/fa125 branch, devel, updated. 92dd6e81ccaceb4c9dc48413cb0d861bae81f5a5
Bryan Moffit
moffit at jlab.org
Mon Feb 10 16:15:18 EST 2014
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "driver/fa125".
The branch, devel has been updated
via 92dd6e81ccaceb4c9dc48413cb0d861bae81f5a5 (commit)
via 34365be416c3a297337228fd437286394b35a509 (commit)
via f452bd4fcc45d0911a13388e6278c9e51a074ffb (commit)
via e522cfce4debc6fb3c8ea05becac2b2717005b96 (commit)
via 0de7738f1d02ab25ab5c0075d713391b799b0aa9 (commit)
via d5beadaa038f1a14ba6ea7de223d702740244dea (commit)
via 5d0f7f78ba024f3e0de996a9907bbe6c16f0806f (commit)
via 94849292dec977cefca3b8e469ff431f4b51d220 (commit)
via 19e606268fb501a48315bca0f2ae85fe2b62deb8 (commit)
via efb66ae3c63e2826b37f2b30ee9553002bced1cd (commit)
from 766380c649f76fd7530081daacaf0df5022956cd (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 92dd6e81ccaceb4c9dc48413cb0d861bae81f5a5
Merge: 766380c 34365be
Author: Bryan Moffit <moffit at jlab.org>
Date: Mon Feb 10 16:14:58 2014 -0500
Merge branch 'feature-fw_update' into devel
commit 34365be416c3a297337228fd437286394b35a509
Author: Bryan Moffit <moffit at jlab.org>
Date: Mon Feb 10 16:13:38 2014 -0500
Initial commit of
fa125GFirmwareUpdate.c
- Update all fADC125s in a crate
commit f452bd4fcc45d0911a13388e6278c9e51a074ffb
Author: Bryan Moffit <moffit at jlab.org>
Date: Mon Feb 10 16:11:05 2014 -0500
fa125Lib.{c,h}
- Add bit 18 to fa125Init to allow for disabling the firmware check
- If not disabled, invalid firmware will not initialize the module
in the library
- Change supported firmware to current values (1,0,0)
- Add fa125Init flag macros
commit e522cfce4debc6fb3c8ea05becac2b2717005b96
Author: Bryan Moffit <moffit at jlab.org>
Date: Mon Feb 10 15:14:46 2014 -0500
firmware/.currentfw
firmware/test_fcat8.mcs
- Initial import of current firmware
firmware/fa125GFirmwareUpdate.c
- Initial import of program to update firmware of all fADC125s found
in crate.
firmware/Makefile
- Add fa125GFirmwareUpdate to PROGS
Makefile
- Add install recipe
- Remove 'links' from 'all'
fa125Lib.{c,h}
- Better display of stdout messages during firmware updates
- Add a routine to print a page from the read in firmware file to
standard out.
- Proper ordering of loops over blocks/pages and fAD125s in global
firmware updating routines
- Increase taskDelay from 6 to 7 for global block erase routine
commit 0de7738f1d02ab25ab5c0075d713391b799b0aa9
Author: Bryan Moffit <moffit at jlab.org>
Date: Fri Feb 7 15:19:37 2014 -0500
fa125Lib.{c,h}
- Make static the firmware updating routines that should only be used
within the library.
- static firmware updating routine prototypes
- Add a "global" main memory erase routine... optimized timing for
erasing memory for multiple modules in a crate
- Add a "global" Write Full routine.. optimized timing for
writing firmware for multiple modules in a crate
- Remove routines prototypes from the header file that are now static
commit d5beadaa038f1a14ba6ea7de223d702740244dea
Author: Bryan Moffit <moffit at jlab.org>
Date: Thu Feb 6 16:20:05 2014 -0500
fa125Lib.{c,h}
- Introduce some global timing variables to keep track of
how much time each firmware updating process is taking.
- Introduce some routines to do addition and subtraction of
struct timespec's
- Make FirmwareDebug a bit more sophisticated so that you
can turn on debugging for specific aspects of the firmware
update
- Add a waitForDone flag to the PushToMain and BlockErase
routines to allow for quick return from the function.
(for use when updating multiple modules)
- Add a routine that waits for page push to conclude
- Remove code that was not needed or not used anymore
- Remove older routine that reads single byte from Main Memory
commit 5d0f7f78ba024f3e0de996a9907bbe6c16f0806f
Author: Bryan Moffit <moffit at jlab.org>
Date: Thu Feb 6 09:41:20 2014 -0500
fa125Lib.{c,h}
- Implement a structure that keeps record/track of the individual
FPGA firmware size and location
- Turn BlockErase function into one that erases individual blocks
- When hitting configAdrData, hit it with the address/data
then EXEC+address/data, then address/data
- Add routine to read a page from main memory
- Add routine to verify that a page has been erased
- Add routine to erase entire main memory
- Some formatting to make updating look a bit nicer.
firmware/fa125FirmwareUpdate.c
- Just about good for update for one module.
commit 94849292dec977cefca3b8e469ff431f4b51d220
Author: Bryan Moffit <moffit at jlab.org>
Date: Mon Jan 27 16:07:31 2014 -0500
fa125Lib.{c,h}
- Make static, the global variables handling the firmware updates.
- Make static the fa125FirmwareWaitForReady routine
- Change the logic polarity of the busy bit in the configCSR
- Add addition argument to fa125FirmwareWaitForReady to return
how many times it waited.
- - Implemented where used.
- Add a routine that sets the firmware debug mode
- Temporarity take out the use of fa125FirmwareWaitForReady when
make writes to configCSR. May end up removing this code completely.
- Add routine fa125FirmwareWriteFull that will be the routine that
handles the entire write to memory (with verification)
- Add routine that just handles verification of firmware written to
memory.
firmware/.currentfw
firmware/Makefile
firmware/fa125FirmwareUpdate.c
- Initial import of firmware updating tool.
commit 19e606268fb501a48315bca0f2ae85fe2b62deb8
Author: Bryan Moffit <moffit at jlab.org>
Date: Fri Jan 24 16:22:03 2014 -0500
firmware/test_fcat2.mcs
- Inital Import of firmware that supports this firmware updating
fa125Lib.{c,h}
- include ctype.h so we have access to toupper(...)
- add static function to convert from chars to numbers
static int hex2num(char c);
- Added global variables to support firmware updating:
#define MSC_MAX_SIZE
unsigned int MSC_dataSize = 0;
unsigned int MSC_pageSize = 0;
unsigned char MSC_DATA[FA125_FIRMWARE_MAX_PAGES][FA125_FIRMWARE_MAX_BYTE_PER_PAGE];
int MSC_loaded = 0;
unsigned char tmp_pageData[FA125_FIRMWARE_MAX_BYTE_PER_PAGE];
- Added routines to support firmware updating:
int fa125FirmwareBlockErase(int id);
int fa125FirmwareWriteToBuffer(int id, int ipage);
int fa125FirmwarePushBufferToMain(int id, int ipage);
int fa125FirmwareReadMainPage(int id, int ipage);
int fa125FirmwareReadBuffer(int id);
int fadcFirmwareReadMcsFile(char *filename);
commit efb66ae3c63e2826b37f2b30ee9553002bced1cd
Author: Bryan Moffit <moffit at jlab.org>
Date: Fri Jan 24 11:28:01 2014 -0500
fa125Lib.h
- New registers (0x58, 0x5C) for performing firmware update.
- New macros for defining bits and masks for firmware updating registers.
-----------------------------------------------------------------------
Summary of changes:
Makefile | 7 +-
fa125Lib.c | 1419 +-
fa125Lib.h | 108 +-
firmware/.currentfw |159560 +++++++++++++++++++++++++++++++++++++++
firmware/Makefile | 84 +
firmware/fa125FirmwareUpdate.c | 120 +
firmware/fa125GFirmwareUpdate.c | 125 +
firmware/test_fcat2.mcs |159560 +++++++++++++++++++++++++++++++++++++++
firmware/test_fcat8.mcs |159560 +++++++++++++++++++++++++++++++++++++++
9 files changed, 480488 insertions(+), 55 deletions(-)
create mode 100644 firmware/.currentfw
create mode 100644 firmware/Makefile
create mode 100644 firmware/fa125FirmwareUpdate.c
create mode 100644 firmware/fa125GFirmwareUpdate.c
create mode 100644 firmware/test_fcat2.mcs
create mode 100644 firmware/test_fcat8.mcs
hooks/post-receive
--
driver/fa125
More information about the Daq-drivers
mailing list