This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM625: DMSS QMODE Field Definition

Part Number: AM625

The QMODE fields of the DMSS ring size registers are not fully defined in SPRUIV7 – MAY 2022:

  • Table 11-125 describes the 3-bit QMODE field of the DMASS0_PKTDMA_0_RING_SIZE_J registers as "Defines the mode for this ring or queue. 1 | DRING_MODE | exposed
    ring mode with dual queues (forward/reverse) for SW direct access".
  • Table 11-458 describes the 2-bit QMODE field of the MASS0_RINGACC_0_RING_SIZE_J registers as "Defines the mode for this ring or queue. 2 | CREDENTIALS_MODE | credentials mode is message mode plus stores credentials with each message, requiring the ring size to be doubled to fit the credentialsalong with the same number of elements when using the first 2 modes. Any exposed memory should be protected by a firewall from unwanted access. 1 | MESSAGE_MODE | messaging mode when all operations are through bus accesses, allowing multiple producers or consumers."

Additionally, the terms "DRING_MODE" and "CREDENTIALS_MODE" are not explicitly defined. (Do those maybe correspond to "11.2.2.2.2.1.1 Ring Mode" and "11.2.2.2.2.1.3 Credentials Mode", respectively?)

Please provide definitions for all possible QMODE bit values in both ring size register types, and provide explicit definitions for all valid queue modes.

  • Hello,

    Thank you for the query

    I am working internally to assign it to the DMSS expert

    Regards

    Rajashri

  • Hello Grant Griffin

    Please refer below 

    Bit

    Name

    Type

    Reset

    Description

    31:29

    qmode

    r

    0x1

    Defines the mode for this ring or queue.

    Field values:

      DUAL_RING_MODE(0): exposed ring mode for SW direct access

    26:24

    ring_elsize

    r

    0x1

    Ring element size.  This field is hardcoded as:

    1 = 8 bytes

    15:0

    ring_size

    rw

    0x0

    Ring size.  This field configures the size of the ring in elements.

      

    • DRING_MODE = dual ring mode = ring mode
    • CREDENTIALS_MODE = credentials mode
    • MESSAGE_MODE = messaging mode

     All of these modes correspond to the queue modes defined in section 11.2.2.2.2 of the TRM.

    Please note that in section 4.5.1.1 it is specified that Credentials mode is not supported for AM62 ringacc.

    Section 11 is intended to be DMSS generic section and reused across multiple SoC platforms (reason for including the register information in chapter 11).

    Regards,

    Sreenivasa

  • Thanks for the reply. From my understanding of that, it looks like only the "Ring Mode" specified in section 11.2.2.2.2.1.1 of SPRUIV7 is supported on the AM625. Therefore, the reset value of 0x1 indicated in your reply should always be set in the QMODE field of bits 31:29. Can you verify that?

  • Hello Grant Griffin

    Thank you for the note.

    Based on the above register configuration, your understanding seems correct.

    I can reconfirm if required for you.

    Regards,

    Sreenivasa

  • Hello Grant Griffin

    Thank you for the note.

    Based on the above register configuration, your understanding seems correct.

    Regards,

    Sreenivasa