cms-gem-daq-project / reg_utils

0 stars 9 forks source link

New Feature: SCA reset follows enable mask if present #30

Closed bdorney closed 6 years ago

bdorney commented 6 years ago

Description

In CTP7 firmware 3.5.3 and higher the sca block comes with a reset enable register.

This enables the sca.py tool to only apply the SCA reset to the OH's defined in ohMask.

The sca_reset() function will now check if the node for the sca reset enable mask exists. If it does it will read the existing mask, apply the provided ohMask, issue the sca reset, and then revert the sca reset enable mask to the original value.

If the node does not exist (e.g. CTP7 firmware versions pre 3.5.3) the current behavior will be maintained.

Change is backwards compatible.

Types of changes

Motivation and Context

In v3 electronics the CTP7 firmware now enables the sca reset to be applied to a specific set of links rather than all links. This is of interest to test stands with multiple OH's connected (gem sustained operation, QC8, 904 coffin) as an sca reset will:

If the SCA reset enable mask is not applied this will reset all links and require the operator to painfully recover all links.

How Has This Been Tested?

Testing on a FW release that does not have the enable mask: http://cmsonline.cern.ch/cms-elog/1056673 Testing on a FW release that does have the enable mask: http://cmsonline.cern.ch/cms-elog/1056677

Screenshots (if appropriate):

Checklist: