Skip to content

Add soft reset / register read to controller interface

Luc Tomas Le Pottier requested to merge luc-addControllerRegisterMonitoring into devel

Adds the following controller interface changes, with default values having no effect:

  • const json readStatusRegs()
  • void sendSoftReset()

Also adds implementation for SPEC class which allows the following controller configuration file parameters:

  • resetOption: integer, 0xE by default for "all except control register"
  • statusRegisters: list of dictionaries containing
    • addr: integer, register address
    • base: integer, base address (e.g. 16384 for TX_CORE in Spec). Limited to maximum of SPEC_GREG base address (0x7 << 14) to prevent reading from unallocated memory in SPEC
    • name: string, name for register in software
    • value: integer, optional, value to write to register. If specified, will write this value in order of list provided in configuration file. for e.g. registers which must be specified before being read.

This has been tested with both quad and SCC and works, but unit tests are difficult to write in this case since it seems to require a spec object to be instantiated. If anyone has ideas to this end I am happy to implement them.

Edited by Luc Tomas Le Pottier

Merge request reports

Loading