Stop rogue if DmaDriver Version mismatch

XMLWordPrintable

    • Type: Bug
    • Resolution: resolved
    • Priority: Blocker
    • Component/s: None
    • None

      Should check driver version and stop rogue. But I get a bunch of messages and have to look for "Error Memory transaction failed with error code -1, see driver error codes"

      Hi Larry,
      Trying to program the KCU1500 now.
      Any ideas on the following error:
      (rogue_v5.10.0) ernesto@bantu:/afs/slac/g/controls/development/users/ernesto/firmwareApps/HLS_Projects/snl-lenet-dev/v1.1.0/software$ python scripts/updatePcieFpga.py --path ../../assets/SnlLenetKcu1500Debug
      Rogue/pyrogue version v5.10.0. https://github.com/slaclab/rogue
      Basedir = /afs/slac.stanford.edu/g/controls/development/users/ernesto/firmwareApps/HLS_Projects/snl-lenet-dev/v1.1.0/firmware/submodules/axi-pcie-core/scripts
      Start: Started zmqServer on ports 9099-9101
      WARNING: PcieTop.AxiPcieCore.numDmaLanes = 1 != PcieTop.AxiPcieCore.AxiVersion.DMA_SIZE_G = 0
      #########################################
      Current Firmware Loaded on the PCIe card:
      #########################################
      Path         = PcieTop.AxiPcieCore.AxiVersion
      FwVersion    = 0x0
      UpTime       = 0:00:00
      GitHash      = dirty (uncommitted code)
      XilinxDnaId  = 0x0
      FwTarget     =
      BuildEnv     =
      BuildServer  =
      BuildDate    =
      Builder      =
      #########################################
      0 : ../../assets/SnlLenetKcu1500Debug/SnlLenetKcu1500Debug-0x01010000-20211209123326-ruckman-35cdbac
      1 : Exit
      Enter image to program into the PCIe card's PROM: 0
      PcieTop.AxiPcieCore.AxiMicronP30.LoadMcsFile: ../../assets/SnlLenetKcu1500Debug/SnlLenetKcu1500Debug-0x01010000-20211209123326-ruckman-35cdbac.mcs
      1639105449.834202:pyrogue.memory.block.PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus: Error on try 1 out of 6: Block::checkTransaction: General Error: Transaction error for block PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus with address 0x00030000. Error Memory transaction failed with error code -1, see driver error codes
      1639105449.834248:pyrogue.memory.block.PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus: Error on try 2 out of 6: Block::checkTransaction: General Error: Transaction error for block PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus with address 0x00030000. Error Memory transaction failed with error code -1, see driver error codes
      1639105449.834283:pyrogue.memory.block.PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus: Error on try 3 out of 6: Block::checkTransaction: General Error: Transaction error for block PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus with address 0x00030000. Error Memory transaction failed with error code -1, see driver error codes
      1639105449.834315:pyrogue.memory.block.PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus: Error on try 4 out of 6: Block::checkTransaction: General Error: Transaction error for block PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus with address 0x00030000. Error Memory transaction failed with error code -1, see driver error codes
      ERROR:pyrogue.Variable.RemoteVariable.PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus:Block::checkTransaction: General Error: Transaction error for block PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus with address 0x00030000. Error Memory transaction failed with error code -1, see driver error codes
      Traceback (most recent call last):
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Variable.py", line 729, in set
          self._parent.writeBlocks(force=True, recurse=False, variable=self, index=index)
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Device.py", line 328, in writeBlocks
          pr.startTransaction(variable._block, type=rim.Write, forceWr=force, checkEach=checkEach, variable=variable, index=index, **kwargs)
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Block.py", line 22, in startTransaction
          block._startTransaction(type, forceWr, checkEach, variable, index)
      rogue.GeneralError: Block::checkTransaction: General Error: Transaction error for block PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus with address 0x00030000. Error Memory transaction failed with error code -1, see driver error codes
      ERROR:pyrogue.Variable.RemoteVariable.PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus:Error setting value '6291459' to variable 'PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus' with type UInt32. Exception=Block::checkTransaction: General Error: Transaction error for block PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus with address 0x00030000. Error Memory transaction failed with error code -1, see driver error codes
      ERROR:pyrogue.Command.BaseCommand.PcieTop.AxiPcieCore.AxiMicronP30.LoadMcsFile:Block::checkTransaction: General Error: Transaction error for block PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus with address 0x00030000. Error Memory transaction failed with error code -1, see driver error codes
      Traceback (most recent call last):
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Command.py", line 116, in _doFunc
          return pr.functionHelper(self._function,pargs, self._log,self.path)
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_HelperFunctions.py", line 304, in functionHelper
          return func(**args)
        File "/afs/slac.stanford.edu/g/controls/development/users/ernesto/firmwareApps/HLS_Projects/snl-lenet-dev/v1.1.0/firmware/submodules/axi-pcie-core/scripts/../../surf/python/surf/devices/micron/_AxiMicronP30.py", line 132, in LoadMcsFile
          self._writeToFlash(0xFD4F,0x60,0x03)
        File "/afs/slac.stanford.edu/g/controls/development/users/ernesto/firmwareApps/HLS_Projects/snl-lenet-dev/v1.1.0/firmware/submodules/axi-pcie-core/scripts/../../surf/python/surf/devices/micron/_AxiMicronP30.py", line 334, in _writeToFlash
          self.DataWrBus.set(((cmd&0xFFFF)<< 16) | (data&0xFFFF))
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Variable.py", line 736, in set
          raise e
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Variable.py", line 729, in set
          self._parent.writeBlocks(force=True, recurse=False, variable=self, index=index)
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Device.py", line 328, in writeBlocks
          pr.startTransaction(variable._block, type=rim.Write, forceWr=force, checkEach=checkEach, variable=variable, index=index, **kwargs)
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Block.py", line 22, in startTransaction
          block._startTransaction(type, forceWr, checkEach, variable, index)
      rogue.GeneralError: Block::checkTransaction: General Error: Transaction error for block PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus with address 0x00030000. Error Memory transaction failed with error code -1, see driver error codes
      Traceback (most recent call last):
        File "scripts/updatePcieFpga.py", line 186, in <module>
          PROM_PRI.LoadMcsFile(pri)
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Command.py", line 98, in __call__
          return self._doFunc(arg)
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Command.py", line 120, in _doFunc
          raise e
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Command.py", line 116, in _doFunc
          return pr.functionHelper(self._function,pargs, self._log,self.path)
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_HelperFunctions.py", line 304, in functionHelper
          return func(**args)
        File "/afs/slac.stanford.edu/g/controls/development/users/ernesto/firmwareApps/HLS_Projects/snl-lenet-dev/v1.1.0/firmware/submodules/axi-pcie-core/scripts/../../surf/python/surf/devices/micron/_AxiMicronP30.py", line 132, in LoadMcsFile
          self._writeToFlash(0xFD4F,0x60,0x03)
        File "/afs/slac.stanford.edu/g/controls/development/users/ernesto/firmwareApps/HLS_Projects/snl-lenet-dev/v1.1.0/firmware/submodules/axi-pcie-core/scripts/../../surf/python/surf/devices/micron/_AxiMicronP30.py", line 334, in _writeToFlash
          self.DataWrBus.set(((cmd&0xFFFF)<< 16) | (data&0xFFFF))
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Variable.py", line 736, in set
          raise e
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Variable.py", line 729, in set
          self._parent.writeBlocks(force=True, recurse=False, variable=self, index=index)
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Device.py", line 328, in writeBlocks
          pr.startTransaction(variable._block, type=rim.Write, forceWr=force, checkEach=checkEach, variable=variable, index=index, **kwargs)
        File "/afs/slac.stanford.edu/g/reseng/vol26/anaconda/miniconda3/envs/rogue_v5.10.0/lib/python3.7/site-packages/pyrogue/_Block.py", line 22, in startTransaction
          block._startTransaction(type, forceWr, checkEach, variable, index)
      rogue.GeneralError: Block::checkTransaction: General Error: Transaction error for block PcieTop.AxiPcieCore.AxiMicronP30.DataWrBus with address 0x00030000. Error Memory transaction failed with error code -1, see driver error codes
      

              Assignee:
              Michael Skoufis
              Reporter:
              Larry Ruckman
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: