# Summary
* Added felix-direct-readout-interface and implementation
* Updated regmap, flxcard, elinkconfig, ftools to be on current master
* Updated felix-star
  * Fixed bug showing wrong sequence errors if block was parsed again
  * Fixed timeout unit for netio3 buffer timeout
  * Provide felix-stats2prometheus again
# Details
Package: elinkconfig
  Repository: https://gitlab.cern.ch/atlas-tdaq-felix/elinkconfig
  Old hash: 0bed27e219d09d060f89b2c3c39d90460eb7ff16
  New hash: e4243c55874f2703aebb7ed1f03a2d38f0b99f4d
  Commits:
    e4243c55 Update cmake_tdaq
    6d2aa1ef Update cmake_tdaq
    d42eb070 Update cmake_tdaq and python_env
    afa52954 Remove unused dependencies
    09a5e18d Update cmake_tdaq and python_env
    76609943 Adjust to new cmake_tdaq and fix linking
    5ceed849 Adjust to new cmake_tdaq
    535b1328 Merge branch 'FLX-2615' into 'master'
    da616e24 [elinkconfig] demo of single-DMA-select mode in changeEcToHostDmaMask() (requires still a checkbox to select this mode)
    90989f10 [elinkconfig] GUI tweak in configure dialog
    069f8c6f [elinkconfig] fix minor bug: e-link egroup0/epath0 mode combo appearing when it shouldn't ('DMA mask' mode)
    d4489718 [elinkconfig] GbtConfig::setDmaIndicesMask(): map an e-link DMA mask of 0x00 to 0x01 (DMA #0), just like the firmware does
    1324cdbb [elinkconfig] GenerateDialog.ui: tooltips
    74fa3d0f [elinkconfig] minor
    792e6507 [elinkconfig] update submodules
    43826e08 [elinkconfig] VERSION 4.10.0 24-JUL-2025: add support for DMA descriptor mask,
    0edb5040 [elinkconfig] ElinkConfig.h/cpp: rename _gbtNr to _linkNr and _gbtConfig to _linkConfig
    defef50d [elinkconfig] rename ElinkConfig::readLinkConfig() to readConfiguration()
    8e795e0f [elinkconfig] fix minor GUI issue: keep e-link enable checkbox disabled when not a single e-link width is supported (per e-group)
    623a51bb [elinkconfig] update submodules
    5d4b3884 Merge branch 'FLX-2520' into 'master'
    a7bcecae [elinkconfig] for ITk Strips firmware enable 'direct' e-link mode option independent of register bit CR_GENERICS.DIRECT_MODE_INCLUDED
Package: felix_star
  Repository: https://gitlab.cern.ch/atlas-tdaq-felix/felix-star
  Old hash: 67e7428736fb8462e9c92a669f25bade1f4f61f2
  New hash: 58d15ee06c324bbe75960d282d61baba77ddc1e7
  Commits:
    58d15ee0 Merge branch 'fix-netio3-timeout' into '5.2.x'
    bb5fda6e Fix netio3 buffer timeouts
    e275e9e9 Merge branch 'decoder_check_integrity_once/5.2.x' into '5.2.x'
    90701cc8 [Decoder] Check block integrity only first time
    e045a91f Merge branch 'prometheus-client/5.2.x' into '5.2.x'
    c48c12f8 [CMakeLists] felix-stats2prometheus is installed
Package: flxcard
  Repository: https://gitlab.cern.ch/atlas-tdaq-felix/flxcard
  Old hash: f0e7989dc24d82ad644b5dc1954594ba2dc0df46
  New hash: a334cb162d9551f81f9c27060f7f685b8b8b0388
  Commits:
    5a70d544 [flxcard] flx-info all: also display power sequencer info (for FLX_182 and FLX_155)
    ce2bc8f5 [flxcard] flx-i2c: minor
    2c150fa7 Merge branch 'FLX-2633' into 'master'
    991b0cdd [flxcard] reinstate function FlxCard::get_monitoring_data(), for reasons of backwards-compatibility
    fca7dbd0 Merge branch 'flxcard-i2c-headers' into 'master'
    1b04b7d7 [flxcard] prepend I2C device lists and device names with 'const'; move some more I2C-related stuff from FlxCard.h to I2CDevices.h
    df7d6022 Merge branch 'master' of https://gitlab.cern.ch/atlas-tdaq-felix/flxcard into flxcard-i2c-headers
    2b7262e9 moved i2c-devices to dedicated headerfile & minor refactoring
    cfcae63a [flxcard] LinkConfig.h: map an e-link DMA mask value (8 bits) of 0x00 to 0x01 (DMA #0), just like the firmware does implicitly
    08859dc5 [flxcard] add under/over-voltage limit readout to ADM1266 monitoring
    5f3d43c5 [flxcard] flx-info powerseq: move some ADM1066/1266 specific stuff from flx-info to FlxCard::powerseq_monitoring_adm1x66(), i.e. input names and ADM1066 ADC input fullscale values
    8bc2826b [flxcard] update submodule regmap
    6d4d14a6 Merge branch 'FLX-2633' into 'master'
    b1fb1b2b [flxcard] split up function FlxCard::get_monitoring_data() into monitoring functions dedicated to (sets of) a particular device type;
    03e104df Fix reading of connector id from primary device
    e21a3b1c [flxcard] LinkConfig.h: minor (layout, comments)
    82c006b1 [flxcard] LinkConfig.h: _streamIdBits can be 32-bit instead of 64-bit
    b54fea79 Merge branch 'master' of ssh://gitlab.cern.ch:7999/atlas-tdaq-felix/flxcard
    6a102475 Merge branch 'FLX-2615' into 'master'
    6bf813db [flxcard] minor comment
    421c1d42 [flxcard] fix comment, remove incorrect comment
    a551320b [flxcard] RM4 oops
    658e63c0 [flxcard] update submodule
    abf84810 [flxcard] update submodule regmap
    13f381a9 [flxcard] add support for a DMA indices mask rather than a single value per e-link, which is a firmware setting (value or mask); support both options for backwards-compatibility
    3e4ad2b7 Merge branch 'FLX-2622' into 'master'
    ead90c0a [flxcard] make 'flx-info fpga' available for 182 and 155 cards too
    03076534 Merge branch 'FLX-2596' into 'master'
    5b691e45 [flxcard] Added FlxCard::lockForConfiguration() to obtain newly defined lock bit; used (if necessary) when reading or writing the device e-links configuration (i.e. including e-link DMA indices);
    64ea204b [flxcard] FlxCard::elinks_toflx_broadcast(): only RM5 has broadcast e-links
    8df4705b [flxcard] update submodule regmap
    28902fc7 [flxcard] Add FlxCard::elinks_toflx_broadcast(): returns list of broadcast e-link numbers matching currently enabled e-links for broadcast
Package: ftools
  Repository: https://gitlab.cern.ch/atlas-tdaq-felix/ftools
  Old hash: 4d4dee07ac842d00b3e52439a9115289a5c5e5bd
  New hash: 1d31e20b774a559e9c9f535436ff56f26e3926a5
  Commits:
    909402f3 Merge branch 'FLX-2542' into 'master'
    435e4d05 [ftools] FlxChecker::checkTtcChunkData(): add support for Phase2 TTCtoHost message format (4)
    b4d79c54 [ftools] GbtConfig5.h: when applying setDmaIndicesMask() map an e-link DMA mask value (8 bits) equal to 0x00 to 0x01 (DMA #0), just like the firmware does implicitly
    3d43b1de [ftools] GbtConfig(5).h: minor in layout and comments
    aa6625c2 [ftools] GbtConfig(5).h: _streamIdBits can be 32-bits instead of 64-bits
    af8bb15c Merge branch 'FLX-2628' into 'master'
    7cbd8513 [ftools] add option -S to skip FLX-device soft-reset: fdaq, fdaqm, fedump and fice
    dfaa7f39 [ftools] FlxConfig.h/cpp: rename _gbtConfig[] to _linkConfig[]
    4cf14af3 Merge branch 'FLX-2615' into 'master'
    9bea06e7 [ftools] add support for a DMA indices mask in addition to the existing single value per e-link;
    c248f9aa [ftools] fdaq, fdaqm: add option -N to optionally select a NUMA id ('zone') to use for the cmem_rcc buffer
    1a6de096 Merge branch 'FLX-2568' into 'master'
    362734cf [ftools] remove 'speed_factor' parameter from FlxUpload::upload() and ::playback();
    f37d58f8 [ftools] FlxConfig::read/writeLinkConfig() renamed to read/writeConfiguration()
    755b6428 [ftools] fedma: should work for AUX e-link as well
    e0a2dc34 [ftools] fedma: should work for TTC2Host and EC/IC e-links as well; use new LOCK_READ_CONFIG lock bit
    5a886e28 [ftools] update submodule flxcard
    ee28730f [ftools] update submodule regmap
    b7fd45b1 [ftools] felink -d<n>: include list of applicable broadcast e-link numbers
    fcaf8f8f [ftools] fcheck/fedump: tweak displayTtcFrame() length-mismatch report
    f50fcf3c [ftools] fupload: now disable continuous-mode DMA afterwards by default; option -A to not disable (for DMA inspection purposes)
    8e11b6a0 Added warning for mismatched TTC frame sizes
Package: regmap
  Repository: https://gitlab.cern.ch/atlas-tdaq-felix/regmap
  Old hash: b604ca544ea9e1d3815143bd5322d4d6e0c30587
  New hash: 5d3d22ccd98bfbb69a711294eec7e8cc8d57bd1a
  Commits:
    2fa7f29e Merge branch 'FLX-2625' into 'master'
    3ddfbe39 Added PIX_MEM_CAPACITY register (see FLX-2625)
    09543c69 Merge branch 'FLX-2625' into 'master'
    c50f9089 FLX-2625: Enabled CBOPT register for FELIG Pixel
    abdd4575 Merge branch 'FLX-2616' into 'master'
    aca93419 Added a register DECODING_ADD_TIMESTAMP (1 bit) to enable timestamp in the decoder for ITk pixel (FLX-2616) and ITk strip (FLX-1888). Could be used for other decoders as well.
    328337ce Merge branch 'FLX-2623' into 'master'
    8f2ca279 Changed comment about FPGA_CORE_TEMP, see FLX-2623
    c64088fe Merge branch 'FLX-2619_knypaegje_regs' into 'master'
    45214628 Added KNYPAEGJE register with DONE (R) and START (W) bitfields
    01dc7fcd Merge branch 'FLX-2614' into 'master'
    c08cf215 Added bitfield CRTOHOST_DMA_DESCRIPTOR_MASK to indicate AXIS ID to DMA channel matching happens through mask
    33611216 Merge branch 'FLX-2614' into 'master'
    77b8fd7a Increased number of bits for the descriptor bitfield to 7 bits to be able to use 1 bit per bitfield for CRToHost to DMA channel fanout (FLX-2614)
