2014-06-17, hazen, dzou:

Add FLASH programming. (Needs to be done before initial release)

2014-06-13, hazen, dzou:

1. I think you have left out parts of the register names in many cases.

For example, below you want I believe "CONF.EVB.ENABLE_DAQLSC". EDIT 1: Fixed

2. void AMC13::daqLinkEnable(bool b) { if(b) write(T1, "EVB.ENABLE_DAQLSC", 1); else write(T1, "EVB.ENABLE_DAQLSC", 0); }

This is a small thing, but I'd suggest the more concise:

void AMC13::daqLinkEnable(bool b) { write(T1, "EVB.ENABLE_DAQLSC", b); }

EDIT 2: Fixed

3. Please change the AMCInputEnable to take a bit mask instead of a list. EDIT 3: FIXED

4. Please add an SFPOutputEnable to enable SFPs, taking a 3-bit mask (writes to CONF.SFP.ENABLE_MASK). EDIT 4: FIXED

2014-06-10, dzou:

1. A number of control functions implemented with hard coded addresses (due to no equivalent register). Should add relevant registers to new address table and use named registers in control functions.

EDIT 1: Fixed

2014-06-10, hazen:

Add 64-bit versions of read and write methods. Apparently under some new C++ rules you aren't allowed to convert uint32_t* to uint64_t* without using a union or something.

(for now, maybe just add -fno-strict-aliasing to Makefile!)

2014-06-10, hazen:

Check for block read capability and automatically choose between block read and single-word reads. e.g.:

 
  if( m_T1 -> getNode(reg).getMode() == uhal::defs::INCREMENTAL))
    // do block read
  else
    // do single reads
That is fine if a register name is used. For the address-based block reads, it is more

FIXED(2014-06-10, dzou): Address block read do not require register to have incremental mode. Register block read now checks for mode==incremental and will do a address block read if there is no mode == incremental

2041-06-10, hazen:

Break up block reads greater than 0x400 32-bit words into multiple reads. File a bug report to UHAL developers that reads greater than about 0x500 words causes the following exception:

terminate called after throwing an instance of 'uhal::exception::IPbusCoreResponseCodeSet'
  what():  Returned Header, 0x20180706 ( transaction id = 0x00000018, transaction type = 0x00, word count = 7 ) \
  had response field = 0x06 indicating an error (1025 bytes into IPbus reply payload)
Original sent header was 0x2018080F, 9 bytes into IPbus send payload

A similar ticket has been submitted https://svnweb.cern.ch/trac/cactus/ticket/635

-- EricHazen - 10 Jun 2014

Edit | Attach | Watch | Print version | History: r34 | r8 < r7 < r6 < r5 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r6 - 17 Jun 2014 - DavidZou
 
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2023 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback