SWCU192 November 2021 CC1312R7 , CC1352P7 , CC2652P7 , CC2652R7
A data entry queue contains data entries of the type listed in Table 26-11. These entries are organized in a linked list. The first entry of the queue is pointed to by the pCurrEntry field of the queue structure (see Table 26-10). Each pNextEntry field points to the next entry. The last entry in the queue is also pointed to by the pLastEntry field of the queue structure.
Byte Index | Field Name | Bits | Bit Field Name | Type | Description |
---|---|---|---|---|---|
0–3 | pNextEntry | R/W | Pointer to next entry in the queue, NULL if this is the last entry | ||
4 | status | R/W | Indicates status of entry, including whether it is free to receive a write from the system CPU | ||
5 | config | 0–1 | type | W | Type of data entry structure 0: General data entry 1: Reserved 2: Pointer entry 3: Partial read RX entry |
2–3 | lenSz | W | Size of length word in start of each RX entry element 0: No length indicator 1: 1-byte length indicator 2: 2-byte length indicator 3: Reserved | ||
4–7 | irqIntv | W | For partial read RX entry only: The number of bytes between interrupt generated by the radio CPU (0000: 16 bytes) | ||
6–7 | length | W | Length of data field, or for pointer entries, of the data buffer. For TX entries, this corresponds to one entry element (packet). For RX entries, this gives the total available storage space. | ||
8–(7+n) | data | R/W | Array of data to be received or transmitted (n = length) |
The status field can take the following values:
For data entries, the system CPU sets up the required data structure, either in system RAM or in the available part of the radio RAM. If the data structure is dynamically allocated, the system CPU frees the memory after use.
In an entry is being used for received data, the radio CPU may start the entry element with a length indicator. If config.lenSz is 00, no such indicator is written. This option must only be used if the length of the received packet can be determined by other means. If config.lenSz is 01, 1 byte indicates the number of bytes following the length byte. This may only be used if no element of more than 255 bytes is written to the entry. If config.lenSz is 10, a 16-bit word indicates the number of bytes following the length word.