Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC: Fix external triggering #56

Closed
wants to merge 2 commits into from
Closed

RFC: Fix external triggering #56

wants to merge 2 commits into from

Conversation

krmpotic
Copy link
Contributor

@krmpotic krmpotic commented Oct 11, 2021

see commit messages and #55 for details.

Luka Krmpotić added 2 commits October 11, 2021 15:09
Not a critical fix, but I managed to trigger an exception while manually
testing the behaviour of Input Mapping registers.

There are 2 SEQ bits, not 4. Because of MASK being too big, if two bits left
of SEQ are set for some reason evgInput::setSeqTrigMap throws exception after
being called from EvgSeqManager::mapTriggerSrc.
mapTriggerSrc goes through all evgInput-s, and sets the SEQx bit for
one evgInput, and *unsets* it for all other evgInputs. On mtca-EVM-300
32bit registers 0x500 through 0x51C refer to the same register.
So unsetting/setting the SEQ0 bit at 0x500, will unset/set it at
0x504, 0x508... 0x50C.

Because conf_mtca_evm_300 sets numFrontInp=3,
EvgSeqManager::mapTriggerSrc will go through registers 0x500, 0x504 and
0x508 (among others) treating them as if they were separate registers.
After setting the SEQ bit at 0x500, it will unset it at 0x504, thus
undoing its work.
@krmpotic
Copy link
Contributor Author

there is problem with two database files, which have FrontInp0 & FrontInp1 hardcoded
evgMrmApp/Db/evgDbus.db
evgMrmApp/Db/evgTrigEvt.db

@krmpotic krmpotic changed the title Fix external triggering RFC: Fix external triggering Oct 11, 2021
@krmpotic krmpotic closed this by deleting the head repository Sep 21, 2022
jerzyjamroz pushed a commit to jerzyjamroz/mrfioc2 that referenced this pull request Oct 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant