Register access for SJA1110 Switch

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Register access for SJA1110 Switch

10,541 次查看
Atkinson
Contributor V

Hello @PavelL, @chenyin_h 

I would like to access the registers for accessing the L2 Table, VLAN Table via Dynamic 

Address Name Access Reset Description
8Ch DYN_BE_LKP_
ENTRY0
R/W 0h
(FFFFFFFEh)
90h DYN_BE_LKP_
ENTRY1
R/W 0h
94h DYN_BE_LKP_
ENTRY2
R/W 0h
98h DYN_BE_LKP_
ENTRY3
R/W 0h
9Ch DYN_BE_LKP_
ENTRY4
R/W 0h
A0h DYN_BE_LKP_
ENTRY5
R/W 0h
A4h DYN_BE_LKP_CTRL R/W 0h
(FF800000h)

How to access the register to configure change it ?
How to change the values of the registers during run Time??
Using Programming Interface we can change it Dynamically (as mentioned in Document) is there any external tool need to configure ??

Regards 
Atkinson 

标记 (1)
0 项奖励
回复
28 回复数

1,949 次查看
Atkinson
Contributor V

Hi @PavelL 

The below is the code which create a Dynamic entry for CB_Sequence Generation and Recovery Table can you check whether the entry is in a Correct order if at all any changes in the order of CB_SGIR_ENtry[0],[1],[2],[3],[4] can you provide me the changes of the order because its not mentioned cb_sg_ir.py 

And one more thing cb_sg_ir.py file there is not order for creating a entry its like a parsing of data getentry, setentry can you confirm me the order of array which I have created to make a dynamic entry 

what are the changes need to be mentioned in below code can you provide me the valid changes that would be more helpful

int WriteCB_SG_IR(uint32_t index) {
 
int cs = 0;
uint32_t CBSGIR_OFFSET     = 142;
uint32_t CBSGIR_CTRL_OFFSET = 147;
const uint32_t SWREG_BASE    = 0;
 
uint32_t CB_SG_IR_ADDRESS      = SWREG_BASE + CBSGIR_OFFSET;
uint32_t CB_SG_IR_ADDRESS_CTL  = SWREG_BASE + CBSGIR_CTRL_OFFSET;
 
if (index >= 64) {
        return -1;
    }
 
    uint32_t RTAGOFFSET_0 = 0;
    uint32_t RTAGOFFSET_1 = 0;
    uint32_t RTAGOFFSET_2 = 0;
    uint32_t RTAGOFFSET_3 = 0;
    uint32_t RTAGOFFSET_4 = 0;
    uint32_t RTAGOFFSET_5 = 0;
    uint32_t RTAGOFFSET_6 = 0;
    uint32_t RTAGOFFSET_7 = 0;
    uint32_t RTAGOFFSET_8 = 0;
    uint32_t RTAGOFFSET_9 = 0;
    uint32_t RTAGOFFSET_10 = 0;
 
    uint32_t REPLACE_PORTS = 0;
    uint32_t TAG_PORTS = 0x006;
    uint32_t SEQ_REC_PORTS = 0;
    uint32_t IND_REC_PORTS = 0;
    uint32_t IND_REC_TIMEOUT = 0;
    uint32_t SEQRECOFFSET = 0;
    uint32_t GENSEQNUM = 0x1;
    uint32_t SEQGENRST = 0;
 
    uint32_t VALID = 1U;
    uint32_t RDWRSET = 1U;
    uint32_t TARGETEDTBL = 0;
 
    uint32_t CB_SG_IR_Entry[CB_SGIR_ADDR_RANGE] = {0};
 
    CB_SG_IR_Entry[0] =(((GENSEQNUM & 0x1) << (1 % 32)) +
        ((SEQRECOFFSET & 0x1F) << (2 % 32)) +
        ((IND_REC_TIMEOUT & 0xFFFF) << (7 % 32)));
 
    CB_SG_IR_Entry[1] =
        ((SEQ_REC_PORTS & 0x7FF) << 0) |
        ((IND_REC_PORTS & 0x7FF) << 11);
 
    CB_SG_IR_Entry[2] =
        (((TAG_PORTS & 0x7FF) << (0 % 32)) +
            ((REPLACE_PORTS & 0x7FF) << (11 % 32)));
 
    CB_SG_IR_Entry[3] =
        (((RTAGOFFSET_0 & 0x3F) << (0 % 32)) +
            ((RTAGOFFSET_1 & 0x3F) << (6 % 32)) +
            ((RTAGOFFSET_2 & 0x3F) << (12 % 32)) +
            ((RTAGOFFSET_3 & 0x3F) << (18 % 32)) +
            ((RTAGOFFSET_4 & 0x3F) << (24 % 32)));
 
    CB_SG_IR_Entry[4] =
        (((RTAGOFFSET_5 & 0x3F) << (0 % 32)) +
            ((RTAGOFFSET_6 & 0x3F) << (6 % 32)) +
            ((RTAGOFFSET_7 & 0x3F) << (12 % 32)) +
            ((RTAGOFFSET_8 & 0x3F) << (18 % 32)) +
            ((RTAGOFFSET_9 & 0x3F) << (24 % 32)) +
            ((RTAGOFFSET_10 & 0x3F) << (30 % 32)));
 
    uint32_t status = 0;
 
    status = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, cs);
    uint8_t counter = 0;
    while ((status & (1 << 31)) != 0){
       counter++;
       status = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, cs);
    }
 
    for (int i = 0; i < CB_SGIR_ADDR_RANGE; i++) {
    Std_ReturnType ret = spi_write_DynamicEntry(CB_SG_IR_ADDRESS + i, CB_SG_IR_Entry[i]);
    if (ret != E_OK) {
    return -2;
    }
 
    uint32_t readBack = 0;
    ret = spi_read_DynamicEntry(CB_SG_IR_ADDRESS + i, &readBack);
    if (ret != E_OK || readBack != CB_SG_IR_Entry[i]) {
    return -3;
    }
    }
 
    uint32_t CTRL_VALUE = (VALID << 31) |
                          (RDWRSET << 30) |
                          (SEQGENRST << 9) |
                          (TARGETEDTBL << 6) |
                          (index & 0x3F);
 
    Std_ReturnType ret = spi_write_DynamicEntry(CB_SG_IR_ADDRESS_CTL, CTRL_VALUE);
        if (ret != E_OK) {
            return -4;
        }
 
        do {
            ret = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, &status);
            if (ret != E_OK) {
                return -5;
            }
        } while ((status >> 31) & 1U);
 
 
    return 0;  // Success
}
标记 (1)
0 项奖励
回复

1,943 次查看
PavelL
NXP Employee
NXP Employee

Hello @Atkinson ,

Based on the official layout of the CB Sequence Generation and Recovery Table (Table 1148) and the Python implementation (cb_sg_ir.py), your field mapping inside each word is correct — but the order of the words in the array CB_SG_IR_Entry[] needs to be reversed.

The correct order is:

Word Index Fields
entry[0] IND_REC_TIMEOUT, SEQRECOFFSET, GENSEQNUM
entry[1] SEQ_REC_PORTS, IND_REC_PORTS
entry[2] TAG_PORTS, REPLACE_PORTS
entry[3] RTAGOFFSET_0 to RTAGOFFSET_4
entry[4] RTAGOFFSET_5 to RTAGOFFSET_10

 

Best regards,

Pavel

0 项奖励
回复

1,940 次查看
Atkinson
Contributor V

Hi @PavelL 

I tried changing the entry order as you mentioned but there is no positive response in creation of CB_Sequence Generation and Recovery Table 
so is that any other changes need to be made in the code ?

I am trying to bring Dynamic L2 Lookup entry which is working fine but the CB_Sequence and Generation and Recovery table is not reflecting in a way that i am unable to tag Port 1 & Port 2 and also GENSEQNUM is not turning up 

so what could be the other cause of the issue can you double confirm me whether any other changes need to be made or not 

int WriteCB_SG_IR(uint32_t index) {
 
int cs = 0;
uint32_t CBSGIR_OFFSET     = 142;
uint32_t CBSGIR_CTRL_OFFSET = 147;
const uint32_t SWREG_BASE    = 0;
 
uint32_t CB_SG_IR_ADDRESS      = SWREG_BASE + CBSGIR_OFFSET;
uint32_t CB_SG_IR_ADDRESS_CTL  = SWREG_BASE + CBSGIR_CTRL_OFFSET;
 
if (index >= 64) {
        return -1;
    }
 
    uint32_t RTAGOFFSET_0 = 0;
    uint32_t RTAGOFFSET_1 = 0;
    uint32_t RTAGOFFSET_2 = 0;
    uint32_t RTAGOFFSET_3 = 0;
    uint32_t RTAGOFFSET_4 = 0;
    uint32_t RTAGOFFSET_5 = 0;
    uint32_t RTAGOFFSET_6 = 0;
    uint32_t RTAGOFFSET_7 = 0;
    uint32_t RTAGOFFSET_8 = 0;
    uint32_t RTAGOFFSET_9 = 0;
    uint32_t RTAGOFFSET_10 = 0;
 
    uint32_t REPLACE_PORTS = 0;
    uint32_t TAG_PORTS = 0x006;
    uint32_t SEQ_REC_PORTS = 0;
    uint32_t IND_REC_PORTS = 0;
    uint32_t IND_REC_TIMEOUT = 0;
    uint32_t SEQRECOFFSET = 0;
    uint32_t GENSEQNUM = 0x1;
    uint32_t SEQGENRST = 0;
 
    uint32_t VALID = 1U;
    uint32_t RDWRSET = 1U;
    uint32_t TARGETEDTBL = 0;
 
    uint32_t CB_SG_IR_Entry[CB_SGIR_ADDR_RANGE] = {0};
 
    CB_SG_IR_Entry[0] = (((IND_REC_TIMEOUT & 0xFFFF) << (1 % 32)) +
                        ((SEQRECOFFSET & 0x1F) << (17 % 32)) +
                        ((GENSEQNUM & 0x1) << (22 % 32)));
 
    CB_SG_IR_Entry[1] =
        ((SEQ_REC_PORTS & 0x7FF) << 0) |
        ((IND_REC_PORTS & 0x7FF) << 11);
 
    CB_SG_IR_Entry[2] =
        (((TAG_PORTS & 0x7FF) << (0 % 32)) +
            ((REPLACE_PORTS & 0x7FF) << (11 % 32)));
 
    CB_SG_IR_Entry[3] =
        (((RTAGOFFSET_0 & 0x3F) << (0 % 32)) +
            ((RTAGOFFSET_1 & 0x3F) << (6 % 32)) +
            ((RTAGOFFSET_2 & 0x3F) << (12 % 32)) +
            ((RTAGOFFSET_3 & 0x3F) << (18 % 32)) +
            ((RTAGOFFSET_4 & 0x3F) << (24 % 32)));
 
    CB_SG_IR_Entry[4] =
        (((RTAGOFFSET_5 & 0x3F) << (0 % 32)) +
            ((RTAGOFFSET_6 & 0x3F) << (6 % 32)) +
            ((RTAGOFFSET_7 & 0x3F) << (12 % 32)) +
            ((RTAGOFFSET_8 & 0x3F) << (18 % 32)) +
            ((RTAGOFFSET_9 & 0x3F) << (24 % 32)) +
            ((RTAGOFFSET_10 & 0x3F) << (30 % 32)));
 
    uint32_t status = 0;
 
    status = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, cs);
    uint8_t counter = 0;
    while ((status & (1 << 31)) != 0){
       counter++;
       status = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, cs);
    }
 
    for (int i = 0; i < CB_SGIR_ADDR_RANGE; i++) {
    Std_ReturnType ret = spi_write_DynamicEntry(CB_SG_IR_ADDRESS + i, CB_SG_IR_Entry[i]);
    if (ret != E_OK) {
    return -2;
    }
 
    uint32_t readBack = 0;
    ret = spi_read_DynamicEntry(CB_SG_IR_ADDRESS + i, &readBack);
    if (ret != E_OK || readBack != CB_SG_IR_Entry[i]) {
    return -3;
    }
    }
 
    uint32_t CTRL_VALUE = (VALID << 31) |
                          (RDWRSET << 30) |
                          (SEQGENRST << 9) |
                          (TARGETEDTBL << 6) |
                          (index & 0x3F);
 
    Std_ReturnType ret = spi_write_DynamicEntry(CB_SG_IR_ADDRESS_CTL, CTRL_VALUE);
        if (ret != E_OK) {
            return -4;
        }
 
        do {
            ret = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, &status);
            if (ret != E_OK) {
                return -5;
            }
        } while ((status >> 31) & 1U);
 
 
    return 0;  // Success
}

 

标记 (1)
0 项奖励
回复

1,936 次查看
PavelL
NXP Employee
NXP Employee

Hello @Atkinson ,

I reviewed your latest code, and the structure and word order of the CB_SG_IR_Entry[] array is now correct. However, I noticed a critical issue in the bit shifts used in CB_SG_IR_Entry[0].

According to the hardware specification (Table 1148), the bit positions are:

  • GENSEQNUM: bit 28
  • SEQRECOFFSET: bits 29–33
  • IND_REC_TIMEOUT: bits 34–49

In your current code, these fields are shifted too low. Please update the line as follows:

CB_SG_IR_Entry[0] =
    ((GENSEQNUM & 0x1) << 28) |
    ((SEQRECOFFSET & 0x1F) << 29) |
    ((IND_REC_TIMEOUT & 0xFFFF) << 34);

This should ensure that the GENSEQNUM bit is correctly set and interpreted by the switch.

Also, please double-check that:

  • REPLACE_PORTS is not overriding TAG_PORTS for ports 1 and 2
  • The ports are enabled and not filtered by other tables (e.g., ingress/egress filtering)

Best regards,

Pavel

0 项奖励
回复

1,927 次查看
Atkinson
Contributor V

Hi @PavelL 

int WriteCB_SG_IR(uint32_t index) {
 
int cs = 0;
uint32_t CBSGIR_OFFSET     = 142;
uint32_t CBSGIR_CTRL_OFFSET = 147;
const uint32_t SWREG_BASE    = 0;
 
uint32_t CB_SG_IR_ADDRESS      = SWREG_BASE + CBSGIR_OFFSET;
uint32_t CB_SG_IR_ADDRESS_CTL  = SWREG_BASE + CBSGIR_CTRL_OFFSET;
 
if (index >= 64) {
        return -1;
    }
 
    uint32_t RTAGOFFSET_0 = 0;
    uint32_t RTAGOFFSET_1 = 0;
    uint32_t RTAGOFFSET_2 = 0;
    uint32_t RTAGOFFSET_3 = 0;
    uint32_t RTAGOFFSET_4 = 0;
    uint32_t RTAGOFFSET_5 = 0;
    uint32_t RTAGOFFSET_6 = 0;
    uint32_t RTAGOFFSET_7 = 0;
    uint32_t RTAGOFFSET_8 = 0;
    uint32_t RTAGOFFSET_9 = 0;
    uint32_t RTAGOFFSET_10 = 0;
 
    uint32_t REPLACE_PORTS = 0;
    uint32_t TAG_PORTS = 0x7FF;
    uint32_t SEQ_REC_PORTS = 0;
    uint32_t IND_REC_PORTS = 0;
    uint32_t IND_REC_TIMEOUT = 0;
    uint32_t SEQRECOFFSET = 0;
    uint32_t GENSEQNUM = 0x1;
    uint32_t SEQGENRST = 0;
 
    uint32_t VALID = 1U;
    uint32_t RDWRSET = 1U;
    uint32_t TARGETEDTBL = 0;
 
    uint64_t CB_SG_IR_Entry[CB_SGIR_ADDR_RANGE] = {0};
 
 
    CB_SG_IR_Entry[0] =
    ((GENSEQNUM & 0x1) << 28) |
    ((SEQRECOFFSET & 0x1F) << 29) |
    ((IND_REC_TIMEOUT & 0xFFFF) << 34);
 
    CB_SG_IR_Entry[1] =
    ((SEQ_REC_PORTS & 0x7FF) << 0) |
        ((IND_REC_PORTS & 0x7FF) << 11);
 
    CB_SG_IR_Entry[2] =
        ((TAG_PORTS & 0x7FF) << 0) |
        ((REPLACE_PORTS & 0x7FF) << 11);
 
    CB_SG_IR_Entry[3] =
        ((RTAGOFFSET_0 & 0x3F) << 0)  |
        ((RTAGOFFSET_1 & 0x3F) << 6) |
        ((RTAGOFFSET_2 & 0x3F) << 12) |
        ((RTAGOFFSET_3 & 0x3F) << 18) |
        ((RTAGOFFSET_4 & 0x3F) << 24);
 
    CB_SG_IR_Entry[4] =
        ((RTAGOFFSET_5 & 0x3F) << 0) |
        ((RTAGOFFSET_6 & 0x3F) << 6) |
        ((RTAGOFFSET_7 & 0x3F) << 12) |
        ((RTAGOFFSET_8 & 0x3F) << 18) |
        ((RTAGOFFSET_9 & 0x3F) << 24) |
        ((RTAGOFFSET_10 & 0x3F) << 30);
 
    uint32_t status = 0;
 
    status = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, cs);
    uint8_t counter = 0;
    while ((status & (1 << 31)) != 0){
       counter++;
       status = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, cs);
    }
 
    for (int i = 0; i < CB_SGIR_ADDR_RANGE; i++) {
    Std_ReturnType ret = spi_write_DynamicEntry(CB_SG_IR_ADDRESS + i, CB_SG_IR_Entry[i]);
    if (ret != E_OK) {
    return -2;
    }
 
    uint32_t readBack = 0;
    ret = spi_read_DynamicEntry(CB_SG_IR_ADDRESS + i, &readBack);
    if (ret != E_OK || readBack != CB_SG_IR_Entry[i]) {
    return -3;
    }
    }
 
    uint32_t CTRL_VALUE = (VALID << 31) |
                          (RDWRSET << 30) |
                          (SEQGENRST << 9) |
                          (TARGETEDTBL << 6) |
                          (index & 0x3F);
 
    Std_ReturnType ret = spi_write_DynamicEntry(CB_SG_IR_ADDRESS_CTL, CTRL_VALUE);
        if (ret != E_OK) {
            return -4;
        }
 
        do {
            ret = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, &status);
            if (ret != E_OK) {
                return -5;
            }
        } while ((status >> 31) & 1U);
 
 
    return 0;  // Success
}


I have modified the code respective to advise 
Still i am facing the issue with creation of Dynamic Entry in CB Sequence Generation and Recovery Table can you  double check once which might be helpful
and one more thing whether we need to create 5 entry with 64 bit in size or 5 entry with 32 bit in size 
i am thinking the issue might be root cause of entry creation 
IND_REC_TIMEOUT is getting overwhelmed with 34

so can i provide me the complete entry 0 to 4 which will be creating a Dynamic Entry 

标记 (1)
0 项奖励
回复

1,896 次查看
PavelL
NXP Employee
NXP Employee

Hello @Atkinson ,

Thank you for the updated code. I reviewed your implementation and the field mapping and bit shifts are now correct. However, I noticed a critical issue that may be the root cause:

You are currently using:

uint64_t CB_SG_IR_Entry[5];

But according to the hardware specification and the reference Python implementation, each entry word should be 32 bits, not 64 bits. The switch expects 5 × 32-bit words for each CB_SG_IR entry.

Please change this to:

uint32_t CB_SG_IR_Entry[5];

Using 64-bit values may cause incorrect register writes or misalignment in SPI communication. Also, make sure that your spi_write_DynamicEntry() and spi_read_DynamicEntry() functions operate on 32-bit values.

Additionally, when validating the write-back values, ensure that the comparison is done correctly:

uint32_t readBack = 0;
ret = spi_read_DynamicEntry(CB_SG_IR_ADDRESS + i, &readBack);
if (ret != E_OK || readBack != CB_SG_IR_Entry[i]) {
    return -3;
}

 

Best regards,

Pavel

0 项奖励
回复

1,888 次查看
Atkinson
Contributor V

Hi @PavelL 

int WriteCB_SG_IR(uint32_t index) {
 
int cs = 0;
uint32_t CBSGIR_OFFSET     = 142;
uint32_t CBSGIR_CTRL_OFFSET = 147;
const uint32_t SWREG_BASE    = 0;
 
uint32_t CB_SG_IR_ADDRESS      = SWREG_BASE + CBSGIR_OFFSET;
uint32_t CB_SG_IR_ADDRESS_CTL  = SWREG_BASE + CBSGIR_CTRL_OFFSET;
 
if (index >= 64) {
        return -1;
    }
 
    uint32_t RTAGOFFSET_0 = 0;
    uint32_t RTAGOFFSET_1 = 0;
    uint32_t RTAGOFFSET_2 = 0;
    uint32_t RTAGOFFSET_3 = 0;
    uint32_t RTAGOFFSET_4 = 0;
    uint32_t RTAGOFFSET_5 = 0;
    uint32_t RTAGOFFSET_6 = 0;
    uint32_t RTAGOFFSET_7 = 0;
    uint32_t RTAGOFFSET_8 = 0;
    uint32_t RTAGOFFSET_9 = 0;
    uint32_t RTAGOFFSET_10 = 0;
 
    uint32_t REPLACE_PORTS = 0;
    uint32_t TAG_PORTS = 0x7FF;
    uint32_t SEQ_REC_PORTS = 0;
    uint32_t IND_REC_PORTS = 0;
    uint32_t IND_REC_TIMEOUT = 0;
    uint32_t SEQRECOFFSET = 0;
    uint32_t GENSEQNUM = 0x1;
    uint32_t SEQGENRST = 0;
 
    uint32_t VALID = 1U;
    uint32_t RDWRSET = 1U;
    uint32_t TARGETEDTBL = 0;
 
    uint32_t CB_SG_IR_Entry[CB_SGIR_ADDR_RANGE] = {0};
 
 
    CB_SG_IR_Entry[0] =
    ((GENSEQNUM & 0x1) << 28) |
    ((SEQRECOFFSET & 0x1F) << 29) |
    ((IND_REC_TIMEOUT & 0xFFFF) << 34);
 
    CB_SG_IR_Entry[1] =
    ((SEQ_REC_PORTS & 0x7FF) << 0) |
        ((IND_REC_PORTS & 0x7FF) << 11);
 
    CB_SG_IR_Entry[2] =
        ((TAG_PORTS & 0x7FF) << 0) |
        ((REPLACE_PORTS & 0x7FF) << 11);
 
    CB_SG_IR_Entry[3] =
        ((RTAGOFFSET_0 & 0x3F) << 0)  |
        ((RTAGOFFSET_1 & 0x3F) << 6) |
        ((RTAGOFFSET_2 & 0x3F) << 12) |
        ((RTAGOFFSET_3 & 0x3F) << 18) |
        ((RTAGOFFSET_4 & 0x3F) << 24);
 
    CB_SG_IR_Entry[4] =
        ((RTAGOFFSET_5 & 0x3F) << 0) |
        ((RTAGOFFSET_6 & 0x3F) << 6) |
        ((RTAGOFFSET_7 & 0x3F) << 12) |
        ((RTAGOFFSET_8 & 0x3F) << 18) |
        ((RTAGOFFSET_9 & 0x3F) << 24) |
        ((RTAGOFFSET_10 & 0x3F) << 30);
 
    uint32_t status = 0;
 
    status = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, cs);
    uint8_t counter = 0;
    while ((status & (1 << 31)) != 0){
       counter++;
       status = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, cs);
    }
 
    for (int i = 0; i < CB_SGIR_ADDR_RANGE; i++) {
    Std_ReturnType ret = spi_write_DynamicEntry(CB_SG_IR_ADDRESS + i, CB_SG_IR_Entry[i]);
    if (ret != E_OK) {
    return -2;
    }
 
    uint32_t readBack = 0;
    ret = spi_read_DynamicEntry(CB_SG_IR_ADDRESS + i, &readBack);
    if (ret != E_OK || readBack != CB_SG_IR_Entry[i]) {
    return -3;
    }
    }
 
    uint32_t CTRL_VALUE = (VALID << 31) |
                          (RDWRSET << 30) |
                          (SEQGENRST << 9) |
                          (TARGETEDTBL << 6) |
                          (index & 0x3F);
 
    Std_ReturnType ret = spi_write_DynamicEntry(CB_SG_IR_ADDRESS_CTL, CTRL_VALUE);
        if (ret != E_OK) {
            return -4;
        }
 
        do {
            ret = spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL, &status);
            if (ret != E_OK) {
                return -5;
            }
        } while ((status >> 31) & 1U);
 
 
    return 0;  // Success
}


So i changed the configuration as you mentioned but still its not able to create a Dynamic Entry.
Add on to that, see when we are configuring this 
((GENSEQNUM & 0x1) << 28) |
((SEQRECOFFSET & 0x1F) << 29) |
((IND_REC_TIMEOUT & 0xFFFF) << 34);

IND_REC_TIMEOUT value is written after 32 bit register value which is we are exceeding the 32 bits where the values will be written into the wrong register ryt?? can you double check whether it will be written within 32bit register 

One more thing when i debug, i could see the CB_SG_IR_Entry[0] is written with some values what we are expecting to write but in the case of other CB_SG_IR_Entr[1],[2],[3] there is no value written 
I am thinking the root cause of the issue is due to bit change ??

As you mentioned the spi_read and spi_write is as same as L2 Lookup table which i used to configure dynamically which is working fine in L2 Lookup table. 
Is there any other thing we are missing out ??


标记 (1)
0 项奖励
回复

1,869 次查看
PavelL
NXP Employee
NXP Employee

Hello @Atkinson ,

I apologize for the delayed response — I was on vacation.

Thank you for creating a new query, so this thread will continue there:

How to create a Dynamic Entry for CB_SG_IR in S32G-VNP-RDB - NXP Community

I will do my best to answer within this week.

Best regards,

Pavel

0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2115086%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E6%B3%A8%E5%86%8C%E8%AE%BF%E9%97%AE%20SJA1110%20%E5%BC%80%E5%85%B3%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2115086%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%20%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%EF%BC%8C%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F24163%22%20target%3D%22_blank%22%3E%40chenyin_h%3C%2FA%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%E6%88%91%E6%83%B3%E9%80%9A%E8%BF%87%E5%8A%A8%E6%80%81%3CBR%20%2F%3E%3CBR%20%2F%3E%E5%9C%B0%E5%9D%80%E5%90%8D%E7%A7%B0%E8%AE%BF%E9%97%AE%20RESET%20%E6%8F%8F%E8%BF%B0%20%3CBR%20%2F%3E%208Ch%20DYN_BE_LKP_%20%3CBR%20%2F%3E%20ENTRY0%20%3CBR%20%2F%3E%20R%2FW%200h%20%3CBR%20%2F%3E%20(fffffFeH)%2090h%20DYN_BE_LKP_%20%3CBR%20%2F%3E%2090h%20DYN_BE_LKP_%20ENTRY1%20R%2FW%200h%2094h%20DYN_BE_LKP_%20%3CBR%20%2F%3E%20R%2FW%200h%2094h%20ENTRY2%20R%2FW%200h%2098h%20DYN_BE_LKP_%20ENTRY3%20R%2FW%200h%2094h%20DYN_BE_LKP_%20R%2FW%200h%20%3CBR%20%2F%3E%2094h%20CH%20DYN_BE_LKP_%20ENTRY4%20R%2FW%200h%20a0h%20a0h%20DYN_BE_LKP_%20ENTRY5%20R%2FW%200h%20a4H%20DYN%20%3CBR%20%2F%3E%20_BE_LKP_CTRL%20%3CBR%20%2F%3E%20R%2FW%200h%20(FF800000H)%20%E6%80%8E%E4%B9%88%E5%81%9A%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%E8%AE%BF%E9%97%AE%E6%B3%A8%E5%86%8C%E8%A1%A8%E8%BF%9B%E8%A1%8C%E9%85%8D%E7%BD%AE%E6%9B%B4%E6%94%B9%E5%90%97%EF%BC%9F%3CBR%20%2F%3E%E5%A6%82%E4%BD%95%E5%9C%A8%E8%BF%90%E8%A1%8C%E6%9C%9F%E9%97%B4%E6%9B%B4%E6%94%B9%E5%AF%84%E5%AD%98%E5%99%A8%E7%9A%84%E5%80%BC%EF%BC%9F%3CBR%20%2F%3E%E4%BD%BF%E7%94%A8%E7%BC%96%E7%A8%8B%E6%8E%A5%E5%8F%A3%EF%BC%8C%E6%88%91%E4%BB%AC%E5%8F%AF%E4%BB%A5%E5%8A%A8%E6%80%81%E6%9B%B4%E6%94%B9%E5%AF%84%E5%AD%98%E5%99%A8%E7%9A%84%E5%80%BC%EF%BC%88%E5%A6%82%E6%96%87%E4%BB%B6%E6%89%80%E8%BF%B0%EF%BC%89%EF%BC%8C%E6%98%AF%E5%90%A6%E9%9C%80%E8%A6%81%E9%85%8D%E7%BD%AE%E4%BB%BB%E4%BD%95%E5%A4%96%E9%83%A8%E5%B7%A5%E5%85%B7%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20Atkinson%20Regards%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2152105%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2152105%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E5%BE%88%E6%8A%B1%E6%AD%89%E5%BB%B6%E8%BF%9F%E5%9B%9E%E5%A4%8D--%E6%88%91%E5%9C%A8%E5%BA%A6%E5%81%87%E3%80%82%3C%2FP%3E%0A%3CP%3E%E6%84%9F%E8%B0%A2%E6%82%A8%E5%88%9B%E5%BB%BA%E6%96%B0%E7%9A%84%E6%9F%A5%E8%AF%A2%EF%BC%8C%E5%9B%A0%E6%AD%A4%E6%9C%AC%E4%B8%BB%E9%A2%98%E5%B0%86%E5%9C%A8%E9%82%A3%E9%87%8C%E7%BB%A7%E7%BB%AD%EF%BC%9A%3C%2FP%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2FS32G%2FHow-to-create-a-Dynamic-Entry-for-CB-SG-IR-in-S32G-VNP-RDB%2Ftd-p%2F2152047%22%20target%3D%22_blank%22%3E%E5%A6%82%E4%BD%95%E5%9C%A8%20S32G-VNP-RDB%20%E4%B8%AD%E4%B8%BA%20CB_SG_IR%20%E5%88%9B%E5%BB%BA%E5%8A%A8%E6%80%81%E6%9D%A1%E7%9B%AE%20-%20NXP%20Community%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%E6%88%91%E4%BC%9A%E5%B0%BD%E5%8A%9B%E5%9C%A8%E6%9C%AC%E5%91%A8%E5%86%85%E7%AD%94%E5%A4%8D%E3%80%82%3C%2FP%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2146018%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2146018%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E6%84%9F%E8%B0%A2%E6%82%A8%E6%9B%B4%E6%96%B0%E4%BA%86%E4%BB%A3%E7%A0%81%E3%80%82%E6%88%91%E6%A3%80%E6%9F%A5%E4%BA%86%E4%BD%A0%E7%9A%84%E6%89%A7%E8%A1%8C%E6%83%85%E5%86%B5%EF%BC%8C%E7%8E%B0%E5%9C%A8%E5%AD%97%E6%AE%B5%E6%98%A0%E5%B0%84%E5%92%8C%E4%BD%8D%E7%A7%BB%E9%83%BD%E6%98%AF%E6%AD%A3%E7%A1%AE%E7%9A%84%E3%80%82%E4%B8%8D%E8%BF%87%EF%BC%8C%E6%88%91%E6%B3%A8%E6%84%8F%E5%88%B0%E4%B8%80%E4%B8%AA%E5%85%B3%E9%94%AE%E9%97%AE%E9%A2%98%EF%BC%8C%E5%AE%83%E5%8F%AF%E8%83%BD%E6%98%AF%E6%A0%B9%E6%9C%AC%E5%8E%9F%E5%9B%A0%EF%BC%9A%3C%2FP%3E%0A%3CP%3E%E6%82%A8%E5%BD%93%E5%89%8D%E6%AD%A3%E5%9C%A8%E4%BD%BF%E7%94%A8%3C%2FP%3E%0A%3CP%3E%3CSPAN%3E%3C!--ScriptorStartFragment--%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3Euint64_t%3C%2FSPAN%3E%20%3CSPAN%3ECB_SG_IR_Entry%3C%2FSPAN%3E%3CSPAN%3E%5B%3C%2FSPAN%3E%3CSPAN%3E5%3C%2FSPAN%3E%3CSPAN%3E%5D%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CP%3E%3CLI-WRAPPER%3E%3CSPAN%3E%3C!--ScriptorEndFragment--%3E%3C%2FSPAN%3E%3C%2FLI-WRAPPER%3E%3C%2FP%3E%0A%3CP%3E%E4%BD%86%E6%98%AF%E6%A0%B9%E6%8D%AE%E7%A1%AC%E4%BB%B6%E8%A7%84%E8%8C%83%E5%92%8C%E5%8F%82%E8%80%83%20Python%20%E5%AE%9E%E7%8E%B0%EF%BC%8C%E6%AF%8F%E4%B8%AA%E8%BE%93%E5%85%A5%E5%AD%97%E5%BA%94%20%E4%B8%BA%3CSPAN%3E%3C%2FSPAN%3E%3CSTRONG%3E%2032%20%E4%BD%8D%3C%2FSTRONG%3E%20%EF%BC%8C%E8%80%8C%E4%B8%8D%E6%98%AF%2064%20%E4%BD%8D%E3%80%82%E4%BA%A4%E6%8D%A2%E6%9C%BA%E5%B8%8C%E6%9C%9B%E6%AF%8F%E4%B8%AA%20CB_SG_IR%20%E6%9D%A1%E7%9B%AE%E6%9C%89%205%20%C3%97%2032%20%E4%BD%8D%E5%AD%97%E3%80%82%3C%2FP%3E%0A%3CP%3E%E8%AF%B7%E6%94%B9%E4%B8%BA%3C%2FP%3E%0A%3CP%3E%3CSPAN%3E%3C!--ScriptorStartFragment--%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3Euint32_t%3C%2FSPAN%3E%20%3CSPAN%3ECB_SG_IR_Entry%3C%2FSPAN%3E%3CSPAN%3E%5B%3C%2FSPAN%3E%3CSPAN%3E5%3C%2FSPAN%3E%3CSPAN%3E%5D%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CP%3E%3CLI-WRAPPER%3E%3CSPAN%3E%3C!--ScriptorEndFragment--%3E%3C%2FSPAN%3E%3C%2FLI-WRAPPER%3E%3C%2FP%3E%0A%3CP%3E%E4%BD%BF%E7%94%A8%2064%20%E4%BD%8D%E5%80%BC%E5%8F%AF%E8%83%BD%E4%BC%9A%E5%AF%BC%E8%87%B4%E5%AF%84%E5%AD%98%E5%99%A8%E5%86%99%E5%85%A5%E9%94%99%E8%AF%AF%E6%88%96%20SPI%20%E9%80%9A%E4%BF%A1%E9%94%99%E4%BD%8D%E3%80%82%E6%AD%A4%E5%A4%96%EF%BC%8C%E8%AF%B7%E7%A1%AE%E4%BF%9D%E6%82%A8%E7%9A%84%3CSPAN%3E%20%3C%2FSPAN%3E%3CCODE%20translate%3D%22no%22%3Espi_write_DynamicEntry()%3C%2FCODE%3E%20%3CSPAN%3E%20%3C%2FSPAN%3E%20%E5%92%8C%3CSPAN%3E%20%3C%2FSPAN%3E%3CCODE%20translate%3D%22no%22%3Espi_read_DynamicEntry()%3C%2FCODE%3E%20%3CSPAN%3E%20%3C%2FSPAN%3E%20%E5%87%BD%E6%95%B0%E5%9C%A8%2032%20%E4%BD%8D%E6%95%B0%E5%80%BC%E4%B8%8A%E8%BF%90%E8%A1%8C%E3%80%82%3C%2FP%3E%0A%3CP%3E%E6%AD%A4%E5%A4%96%EF%BC%8C%E5%9C%A8%E9%AA%8C%E8%AF%81%E5%9B%9E%E5%86%99%E5%80%BC%E6%97%B6%EF%BC%8C%E8%A6%81%E7%A1%AE%E4%BF%9D%E6%AF%94%E8%BE%83%E6%AD%A3%E7%A1%AE%E6%97%A0%E8%AF%AF%EF%BC%9A%3C%2FP%3E%0A%3CP%3E%3CSPAN%3E%3C!--ScriptorStartFragment--%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3Euint32_t%3C%2FSPAN%3E%20%3CSPAN%3E%E8%AF%BB%E5%9B%9E%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%E4%BF%9D%E7%95%99%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3Espi_read_DynamicEntry%3C%2FSPAN%3E%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Ecb_sg_ir_address%3C%2FSPAN%3E%20%3CSPAN%3E%2B%3C%2FSPAN%3E%20%3CSPAN%3Ei%3C%2FSPAN%3E%3CSPAN%3E%2C%3C%2FSPAN%3E%20%3CSPAN%3E%26amp%3B%3C%2FSPAN%3E%3CSPAN%3E%E8%AF%BB%E5%9B%9E%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%E5%A6%82%E6%9E%9C%3C%2FSPAN%3E%20%3CSPAN%3E(%3C%2FSPAN%3E%3CSPAN%3Eret%3C%2FSPAN%3E%20%3CSPAN%3E!%3C%2FSPAN%3E%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3EE_OK%3C%2FSPAN%3E%20%3CSPAN%3E%7C%3C%2FSPAN%3E%3CSPAN%3E%7C%3C%2FSPAN%3E%20%3CSPAN%3E%E8%AF%BB%E5%9B%9E%3C%2FSPAN%3E%20%3CSPAN%3E!%3C%2FSPAN%3E%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3ECB_SG_IR_Entry%3C%2FSPAN%3E%3CSPAN%3E%5B%3C%2FSPAN%3E%3CSPAN%3Ei%3C%2FSPAN%3E%3CSPAN%3E%5D%3C%2FSPAN%3E%3CSPAN%3E)%3C%2FSPAN%3E%20%3CSPAN%3E%7B%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%BF%94%E5%9B%9E%3C%2FSPAN%3E%20%3CSPAN%3E-%3C%2FSPAN%3E%3CSPAN%3E3%3C%2FSPAN%3E%3CSPAN%3E%3B%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%7D%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2144255%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2144255%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E6%88%91%E6%9F%A5%E7%9C%8B%E4%BA%86%E6%82%A8%E7%9A%84%E6%9C%80%E6%96%B0%E4%BB%A3%E7%A0%81%EF%BC%8CCB_SG_IR_Entry%5B%5D%20%E6%95%B0%E7%BB%84%E7%9A%84%E7%BB%93%E6%9E%84%E5%92%8C%E5%AD%97%E5%BA%8F%E7%8E%B0%E5%9C%A8%E9%83%BD%E6%AD%A3%E7%A1%AE%E4%BA%86%E3%80%82%E4%B8%8D%E8%BF%87%EF%BC%8C%E6%88%91%E6%B3%A8%E6%84%8F%E5%88%B0%20CB_SG_IR_Entry%5B0%5D%20%E4%B8%AD%E4%BD%BF%E7%94%A8%E7%9A%84%E4%BD%8D%E7%A7%BB%E5%AD%98%E5%9C%A8%E4%B8%80%E4%B8%AA%E5%85%B3%E9%94%AE%E9%97%AE%E9%A2%98%E3%80%82%3C%2FP%3E%0A%3CP%3E%E6%A0%B9%E6%8D%AE%E7%A1%AC%E4%BB%B6%E8%A7%84%E6%A0%BC%EF%BC%88%E8%A1%A8%201148%EF%BC%89%EF%BC%8C%E8%BF%99%E4%BA%9B%E4%BD%8D%E7%9A%84%E4%BD%8D%E7%BD%AE%E6%98%AF%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3EGENSEQNUM%EF%BC%9A%E7%AC%AC%2028%20%E4%BD%8D%3C%2FLI%3E%0A%3CLI%3ESEQRECOFFSET%EF%BC%9A%E7%AC%AC%2029-33%20%E4%BD%8D%3C%2FLI%3E%0A%3CLI%3EIND_REC_TIMEOUT%EF%BC%9A%E7%AC%AC%2034-49%20%E4%BD%8D%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3E%E5%9C%A8%E6%82%A8%E5%BD%93%E5%89%8D%E7%9A%84%E4%BB%A3%E7%A0%81%E4%B8%AD%EF%BC%8C%E8%BF%99%E4%BA%9B%E5%AD%97%E6%AE%B5%E7%9A%84%E4%BD%8D%E7%A7%BB%E5%A4%AA%E4%BD%8E%E3%80%82%E8%AF%B7%E5%B0%86%E8%AF%A5%E8%A1%8C%E6%9B%B4%E6%96%B0%E5%A6%82%E4%B8%8B%EF%BC%9A%3C%2FP%3E%0A%3CP%3E%3CSPAN%3E%3C!--ScriptorStartFragment--%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CEM%3ECB_SG_IR_Entry%5B0%5D%20%3D%3C%2FEM%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CEM%3E%20%20%20%20((GENSEQNUM%26amp%3B%200x1)%26lt%3B%26lt%3B%2028)%7C%3C%2FEM%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CEM%3E%20%20%20%20((SEQRECOFFSET%26amp%3B%200x1F)%26lt%3B%26lt%3B%2029)%7C%3C%2FEM%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CEM%3E%20%20%20%20((IND_REC_TIMEOUT%26amp%3B%200xFFFF)%26lt%3B%26lt%3B%2034)%EF%BC%9B%3C%2FEM%3E%3C%2FDIV%3E%0A%3CP%3E%3CLI-WRAPPER%3E%3CSPAN%3E%3C!--ScriptorEndFragment--%3E%3C%2FSPAN%3E%3C%2FLI-WRAPPER%3E%3C%2FP%3E%0A%3CP%3E%E8%BF%99%E5%B0%86%E7%A1%AE%E4%BF%9D%20GENSEQNUM%20%E4%BD%8D%E8%A2%AB%E6%AD%A3%E7%A1%AE%E8%AE%BE%E7%BD%AE%E5%B9%B6%E7%94%B1%E4%BA%A4%E6%8D%A2%E6%9C%BA%E8%A7%A3%E9%87%8A%E3%80%82%3C%2FP%3E%0A%3CP%3E%E5%8F%A6%E5%A4%96%EF%BC%8C%E8%AF%B7%E4%BB%94%E7%BB%86%E6%A3%80%E6%9F%A5%EF%BC%9A%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3EREPLACE_PORTS%20%E6%9C%AA%E8%A6%86%E7%9B%96%E7%AB%AF%E5%8F%A3%201%20%E5%92%8C%202%20%E7%9A%84%20TAG_PORTS%3C%2FLI%3E%0A%3CLI%3E%E7%AB%AF%E5%8F%A3%E5%B7%B2%E5%90%AF%E7%94%A8%EF%BC%8C%E4%B8%94%E6%9C%AA%E8%A2%AB%E5%85%B6%E4%BB%96%E8%A1%A8%E8%BF%87%E6%BB%A4%EF%BC%88%E5%A6%82%E5%85%A5%E5%8F%A3%2F%E5%87%BA%E5%8F%A3%E8%BF%87%E6%BB%A4%EF%BC%89%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2143367%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2143367%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%82%A8%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%20%3CBR%20%2F%3E%3CBR%20%2F%3E%EF%BC%8C%E6%88%91%E8%AF%95%E7%9D%80%E6%8C%89%E6%82%A8%E8%AF%B4%E7%9A%84%E6%9B%B4%E6%94%B9%E4%BA%86%E8%BE%93%E5%85%A5%E9%A1%BA%E5%BA%8F%EF%BC%8C%E4%BD%86%E5%9C%A8%E5%88%9B%E5%BB%BA%20CB_Sequence%20Generation%20%E5%92%8C%20Recovery%20Table%3CBR%20%2F%3E%E6%97%B6%E6%B2%A1%E6%9C%89%E5%BE%97%E5%88%B0%E7%A7%AF%E6%9E%81%E5%9B%9E%E5%BA%94%EF%BC%8C%E6%98%AF%E5%90%A6%E9%9C%80%E8%A6%81%E5%9C%A8%E4%BB%A3%E7%A0%81%E4%B8%AD%E5%81%9A%E5%85%B6%E4%BB%96%E6%9B%B4%E6%94%B9%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%E6%88%91%E6%AD%A3%E5%9C%A8%E5%B0%9D%E8%AF%95%E5%BC%95%E5%85%A5%E5%8A%A8%E6%80%81%20L2%20%E6%9F%A5%E6%89%BE%E6%9D%A1%E7%9B%AE%EF%BC%8C%E8%AF%A5%E6%9D%A1%E7%9B%AE%E8%BF%90%E8%A1%8C%E6%AD%A3%E5%B8%B8%EF%BC%8C%E4%BD%86%20CB_Sequence%20%E5%92%8C%E7%94%9F%E6%88%90%E4%B8%8E%E6%81%A2%E5%A4%8D%E8%A1%A8%E6%B2%A1%E6%9C%89%E5%8F%8D%E6%98%A0%E5%87%BA%E6%88%91%E6%97%A0%E6%B3%95%E6%A0%87%E8%AE%B0%E7%AB%AF%E5%8F%A3%201%26amp%3B%20%E7%AB%AF%E5%8F%A3%202%EF%BC%8C%E8%80%8C%E4%B8%94%20GENSEQNUM%20%E4%B9%9F%E6%B2%A1%E6%9C%89%E6%98%BE%E7%A4%BA%3CBR%20%2F%3E%3CBR%20%2F%3E%EF%BC%8C%E9%82%A3%E4%B9%88%E9%97%AE%E9%A2%98%E7%9A%84%E5%85%B6%E4%BB%96%E5%8E%9F%E5%9B%A0%E6%98%AF%E4%BB%80%E4%B9%88%E5%91%A2%EF%BC%9F%E6%82%A8%E8%83%BD%E5%90%A6%E7%A1%AE%E8%AE%A4%E6%98%AF%E5%90%A6%E9%9C%80%E8%A6%81%E8%BF%9B%E8%A1%8C%E5%85%B6%E4%BB%96%E6%9B%B4%E6%94%B9%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%3CDIV%3Eint%20WriteCB_SG_IR(uint32_t%20index)%20%7B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Eint%20cs%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CBSGIR_OFFSET%20%3D%20142%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CBSGIR_CTRL_OFFSET%20%3D%20147%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Econst%20uint32_t%20SWREG_BASE%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CB_SG_IR_ADDRESS%20%3D%20SWREG_BASE%20%2B%20CBSGIR_OFFSET%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CB_SG_IR_ADDRESS_CTL%20%3D%20SWREG_BASE%20%2B%20CBSGIR_CTRL_OFFSET%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%E5%A6%82%E6%9E%9C%20(index%26gt%3B%3D%2064)%20%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%E8%BF%94%E5%9B%9E%20-1%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_0%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_1%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_2%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_3%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_4%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_5%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_6%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_7%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_8%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_9%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_10%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20REPLACE_PORTS%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20TAG_PORTS%20%3D%200x006%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20SEQ_REC_PORTS%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20IND_REC_PORTS%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20IND_REC_TIMEOUT%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20SEQRECOFFSET%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20GENSEQNUM%20%3D%200x1%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20SEQGENRST%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20VALID%20%3D%201U%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RDWRSET%20%3D%201U%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20TARGETEDTBL%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20CB_SG_IR_Entry%5BCB_SGIR_ADDR_RANGE%5D%20%3D%20%7B0%7D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20CB_SG_IR_Entry%5B0%5D%20%3D%20(((IND_REC_TIMEOUT%26amp%3B%200xFFFF)%26lt%3B%26lt%3B%20(1%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20((SEQRECOFFSET%26amp%3B%200x1F)%26lt%3B%26lt%3B%20(17%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20((GENSEQNUM%26amp%3B%200x1)%26lt%3B%26lt%3B%20(22%25%2032)))%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20CB_SG_IR_Entry%5B1%5D%20%3D%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20((SEQ_REC_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%200)%7C%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20((IND_REC_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%2011)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20CB_SG_IR_Entry%5B2%5D%20%3D%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20(((TAG_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%20(0%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((REPLACE_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%20(11%25%2032)))%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20CB_SG_IR_Entry%5B3%5D%20%3D%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20(((RTAGOFFSET_0%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(0%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_1%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(6%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_2%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(12%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_3%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(18%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_4%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(24%25%2032)))%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20CB_SG_IR_Entry%5B4%5D%20%3D%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20(((RTAGOFFSET_5%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(0%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_6%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(6%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_7%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(12%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_8%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(18%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_9%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(24%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_10%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(30%25%2032)))%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20status%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20status%20%3D%20spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL%2C%20cs)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20%E8%AE%A1%E6%95%B0%E5%99%A8%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20while%20((status%26amp%3B%20(1%26lt%3B%26lt%3B%2031))%20!%3D%200)%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%E5%8F%8D%2B%2B%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20status%20%3D%20spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL%2C%20cs)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20for%20(int%20i%20%3D%200%3B%20i%26lt%3B%20CB_SGIR_ADDR_RANGE%3B%20i%2B%2B)%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20Std_ReturnType%20ret%20%3D%20spi_write_DynamicEntry(CB_SG_IR_ADDRESS%20%2B%20i%2C%20CB_SG_IR_Entry%5Bi%5D)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20if%20(ret%20!%3D%20E_OK)%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%E8%BF%94%E5%9B%9E%20-2%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20readBack%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20ret%20%3D%20spi_read_DynamicEntry(CB_SG_IR_ADDRESS%20%2B%20i%2C%26amp%3BreadBack)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20if%20(ret%20!%3D%20E_OK%20%7C%7C%20readBack%20!%3D%20CB_SG_IR_Entry%5Bi%5D)%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%E8%BF%94%E5%9B%9E%20-3%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20CTRL_VALUE%20%3D%20(VALID%26lt%3B%26lt%3B%2031)%20%7C%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(rdwrset%26lt%3B%26lt%3B%2030)%20%7C%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(seqgenrst%26lt%3B%26lt%3B%209)%20%7C%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(targetedtbl%26lt%3B%26lt%3B%206)%20%7C%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(%E7%B4%A2%E5%BC%95%26amp%3B%200x3F%EF%BC%89%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20Std_ReturnType%20ret%20%3D%20spi_write_DynamicEntry(CB_SG_IR_ADDRESS_CTL%2C%20CTRL_VALUE)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20if%20(ret%20!%3D%20E_OK)%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%E8%BF%94%E5%9B%9E%20-4%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%E5%81%9A%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20ret%20%3D%20spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL%2C%26amp%3Bstatus)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20if%20(ret%20!%3D%20E_OK)%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%E8%BF%94%E5%9B%9E%20-5%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%7D%20while%20((status%26gt%3B%26gt%3B%2031)%26amp%3B%201U)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20return%200%3B%20%2F%2F%20Success%3C%2FDIV%3E%3CDIV%3E%7D%3C%2FDIV%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2143278%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2143278%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E5%9F%BA%E4%BA%8E%20CB%20%E5%BA%8F%E5%88%97%E7%94%9F%E6%88%90%E5%92%8C%E6%81%A2%E5%A4%8D%E8%A1%A8%EF%BC%88%E8%A1%A8%201148%EF%BC%89%E7%9A%84%E5%AE%98%E6%96%B9%E5%B8%83%E5%B1%80%E5%92%8C%20Python%20%E5%AE%9E%E7%8E%B0%20(cb_sg_ir.py)%E3%80%81%E6%AF%8F%E4%B8%AA%E5%AD%97%E8%AF%8D%E5%86%85%E9%83%A8%E7%9A%84%E5%AD%97%E6%AE%B5%E6%98%A0%E5%B0%84%E6%98%AF%E6%AD%A3%E7%A1%AE%E7%9A%84%EF%BC%8C%E4%BD%86%20CB_SG_IR_Entry%5B%5D%20%E6%95%B0%E7%BB%84%E4%B8%AD%E5%AD%97%E8%AF%8D%E7%9A%84%E9%A1%BA%E5%BA%8F%E9%9C%80%E8%A6%81%E9%A2%A0%E5%80%92%E4%B8%80%E4%B8%8B%E3%80%82%3C%2FP%3E%0A%3CP%3E%E6%AD%A3%E7%A1%AE%E7%9A%84%E9%A1%BA%E5%BA%8F%E6%98%AF%3C%2FP%3E%0A%3CTABLE%20class%3D%22___1hm93bs%20f1ddd56o%20f16vktn6%20f1enuhaj%20fdclmfp%20f1ev3kgc%20ftgm304%20f1uinfot%20fibjyge%20fvueend%20f9yszdx%20f1fu4s3n%20f3l3pb3%20f1s2k7dp%20f8fmt76%20fjvbh62%20fysh76l%20fic4ptz%20f1yenhzu%20f1yn6nvh%20f14tj6oe%20f1jq587y%20f1el8yx3%20f1pymoxg%20f1ofu761%20fe6itr%20f7coize%20f1794535%20f70r78m%20f4zgifc%20fk1v6el%20f16pyhcb%20fo436u6%20fzy4j18%20fc43013%20f1hmrcvb%20fc4t9fq%20fgp09rh%20fjnyn6r%22%3E%0A%3CTHEAD%3E%0A%3CTR%3E%0A%3CTH%3E%E5%8D%95%E8%AF%8D%E7%B4%A2%E5%BC%95%3C%2FTH%3E%0A%3CTH%3E%E5%AD%97%E6%AE%B5%3C%2FTH%3E%0A%3C%2FTR%3E%0A%3C%2FTHEAD%3E%0A%3CTBODY%3E%0A%3CTR%3E%0A%3CTD%3E%E6%9D%A1%E7%9B%AE%5B0%EF%BC%BD%3C%2FTD%3E%0A%3CTD%3Eind_rec_timeout%2C%20seqrecoffset%2C%20genseqnum%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%3E%E6%9D%A1%E7%9B%AE%5B1%EF%BC%BD%3C%2FTD%3E%0A%3CTD%3Eseq_rec_ports%E3%80%81ind_rec_ports%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%3E%E6%9D%A1%E7%9B%AE%5B2%EF%BC%BD%3C%2FTD%3E%0A%3CTD%3E%E6%A0%87%E8%AE%B0%E7%AB%AF%E5%8F%A3%2C%20%E6%9B%BF%E6%8D%A2%E7%AB%AF%E5%8F%A3%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%3E%E6%9D%A1%E7%9B%AE%5B3%EF%BC%BD%3C%2FTD%3E%0A%3CTD%3ERTAGOFFSET_0%20%E8%87%B3%20RTAGOFFSET_4%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%3E%E6%9D%A1%E7%9B%AE%5B4%EF%BC%BD%3C%2FTD%3E%0A%3CTD%3ERTAGOFFSET_5%20%E8%87%B3%20RTAGOFFSET_10%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3C%2FTBODY%3E%0A%3C%2FTABLE%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2143274%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2143274%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E6%98%AF%E7%9A%84%EF%BC%8C%E6%82%A8%E5%9C%A8%20CB%20%E5%BA%8F%E5%88%97%E7%94%9F%E6%88%90%E5%92%8C%E5%8D%95%E4%B8%AA%E6%81%A2%E5%A4%8D%E8%A1%A8%20(CB_SG_IR)%20%E4%B8%AD%E5%8A%A8%E6%80%81%E5%88%9B%E5%BB%BA%E6%9D%A1%E7%9B%AE%E7%9A%84%E4%BB%A3%E7%A0%81%E6%98%AF%E6%9C%89%E6%95%88%E7%9A%84%E3%80%82%E8%BF%99%E4%B8%80%E7%BB%93%E8%AE%BA%E5%9F%BA%E4%BA%8E%20Python%20%E5%AE%98%E6%96%B9%E5%AE%9E%E7%8E%B0%20(cb_sg_ir.py)%E7%94%B1%E6%81%A9%E6%99%BA%E6%B5%A6%E6%8F%90%E4%BE%9B%EF%BC%8C%E9%87%87%E7%94%A8%E7%9B%B8%E5%90%8C%E7%9A%84%E5%B8%83%E5%B1%80%E5%92%8C%E9%80%BB%E8%BE%91%E8%BF%9B%E8%A1%8C%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%E3%80%82%3C%2FP%3E%0A%3CP%3E%E6%82%A8%E7%9A%84%E9%97%AE%E9%A2%98%EF%BC%9A%3CBR%20%2F%3E%22%20%E5%9C%A8%20entry%5B0%5D%5B1%5D%5B2%5D%5B3%5D%5B4%5D%20%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%EF%BC%8C%E6%88%91%E6%9C%89%E4%B8%80%E4%B8%AA%E7%96%91%E9%97%AE%EF%BC%8C%E6%82%A8%E8%83%BD%E5%90%A6%E6%8F%90%E4%BE%9B%E8%AE%A2%E5%8D%95%E7%9A%84%E7%A1%AE%E5%88%87%E7%89%88%E6%9C%AC%EF%BC%8C%E5%B8%AE%E5%8A%A9%E6%88%91%E4%BB%AC%E5%88%9B%E5%BB%BA%E5%8A%A8%E6%80%81%E6%9D%A1%E7%9B%AE%EF%BC%9F%22%3C%2FP%3E%0A%3CP%3E%E6%98%AF%20-%20CB_SG_IR_Entry%5B%5D%20%E6%95%B0%E7%BB%84%E4%B8%AD%205%20%E4%B8%AA%E5%AD%97%E7%9A%84%E9%A1%BA%E5%BA%8F%E9%9D%9E%E5%B8%B8%E9%87%8D%E8%A6%81%EF%BC%8C%E5%BF%85%E9%A1%BB%E9%81%B5%E5%BE%AA%E7%A1%AC%E4%BB%B6%E8%A7%84%E8%8C%83%EF%BC%88%E8%A1%A8%201148%EF%BC%89%E4%B8%AD%E5%AE%9A%E4%B9%89%E7%9A%84%E4%BD%8D%E5%B8%83%E5%B1%80%E3%80%82%E6%8D%AE%E6%AD%A4%EF%BC%8C%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%98%A0%E5%B0%84%E6%98%AF%3C%2FP%3E%0A%3CTABLE%20class%3D%22___1hm93bs%20f1ddd56o%20f16vktn6%20f1enuhaj%20fdclmfp%20f1ev3kgc%20ftgm304%20f1uinfot%20fibjyge%20fvueend%20f9yszdx%20f1fu4s3n%20f3l3pb3%20f1s2k7dp%20f8fmt76%20fjvbh62%20fysh76l%20fic4ptz%20f1yenhzu%20f1yn6nvh%20f14tj6oe%20f1jq587y%20f1el8yx3%20f1pymoxg%20f1ofu761%20fe6itr%20f7coize%20f1794535%20f70r78m%20f4zgifc%20fk1v6el%20f16pyhcb%20fo436u6%20fzy4j18%20fc43013%20f1hmrcvb%20fc4t9fq%20fgp09rh%20fjnyn6r%22%3E%0A%3CTHEAD%3E%0A%3CTR%3E%0A%3CTH%20width%3D%22104px%22%3E%E5%8D%95%E8%AF%8D%E7%B4%A2%E5%BC%95%3C%2FTH%3E%0A%3CTH%20width%3D%2291px%22%3E%E6%AF%94%E7%89%B9%E8%8C%83%E5%9B%B4%3C%2FTH%3E%0A%3CTH%20width%3D%22378px%22%3E%E5%8C%85%E6%8B%AC%E7%9A%84%E9%A2%86%E5%9F%9F%3C%2FTH%3E%0A%3C%2FTR%3E%0A%3C%2FTHEAD%3E%0A%3CTBODY%3E%0A%3CTR%3E%0A%3CTD%20width%3D%22104px%22%3E%E6%9D%A1%E7%9B%AE%5B4%EF%BC%BD%3C%2FTD%3E%0A%3CTD%20width%3D%2291px%22%3E159-124%3C%2FTD%3E%0A%3CTD%20width%3D%22378px%22%3ERTAGOFFSET_10%20%E8%87%B3%20RTAGOFFSET_5%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20width%3D%22104px%22%3E%E6%9D%A1%E7%9B%AE%5B3%EF%BC%BD%3C%2FTD%3E%0A%3CTD%20width%3D%2291px%22%3E123-94%3C%2FTD%3E%0A%3CTD%20width%3D%22378px%22%3ERTAGOFFSET_4%20%E8%87%B3%20RTAGOFFSET_0%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20width%3D%22104px%22%3E%E6%9D%A1%E7%9B%AE%5B2%EF%BC%BD%3C%2FTD%3E%0A%3CTD%20width%3D%2291px%22%3E93-72%3C%2FTD%3E%0A%3CTD%20width%3D%22378px%22%3E%E6%9B%BF%E6%8D%A2%E7%AB%AF%E5%8F%A3%2C%20%E6%A0%87%E7%AD%BE%E7%AB%AF%E5%8F%A3%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20width%3D%22104px%22%3E%E6%9D%A1%E7%9B%AE%5B1%EF%BC%BD%3C%2FTD%3E%0A%3CTD%20width%3D%2291px%22%3E71-50%3C%2FTD%3E%0A%3CTD%20width%3D%22378px%22%3Eind_rec_ports%2C%20seq_rec_ports%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3CTR%3E%0A%3CTD%20width%3D%22104px%22%3E%E6%9D%A1%E7%9B%AE%5B0%EF%BC%BD%3C%2FTD%3E%0A%3CTD%20width%3D%2291px%22%3E49-28%3C%2FTD%3E%0A%3CTD%20width%3D%22378px%22%3Eind_rec_timeout%2C%20seqrecoffset%2C%20genseqnum%3C%2FTD%3E%0A%3C%2FTR%3E%0A%3C%2FTBODY%3E%0A%3C%2FTABLE%3E%0A%3CP%3E%3CBR%20%2F%3E%E7%AC%AC%2027-0%20%E4%BD%8D%E4%B8%BA%E4%BF%9D%E7%95%99%E4%BD%8D%EF%BC%8C%E6%9C%AA%E4%BD%BF%E7%94%A8%E3%80%82%3C%2FP%3E%0A%3CP%3E%E8%BF%99%E4%B8%8E%20Python%20%E8%84%9A%E6%9C%AC%E5%86%85%E9%83%A8%E4%BD%BF%E7%94%A8%E7%9A%84%E5%B8%83%E5%B1%80%E7%9B%B8%E5%90%BB%E5%90%88%EF%BC%8C%E5%B9%B6%E7%A1%AE%E8%AE%A4%E4%BA%86%E6%82%A8%E6%89%8B%E5%8A%A8%E6%9E%84%E5%BB%BA%E7%9A%84%E5%85%A5%E5%8F%A3%E6%95%B0%E7%BB%84%E6%98%AF%E6%AD%A3%E7%A1%AE%E7%9A%84%E3%80%82%3C%2FP%3E%0A%3CP%3E%E6%82%A8%E7%9A%84%E9%97%AE%E9%A2%98%EF%BC%9A%3CBR%20%2F%3E%22%20%E8%BF%98%E6%9C%89%E4%B8%80%E4%BB%B6%E4%BA%8B%EF%BC%8Ccb_sg_ir.py%20%E6%96%87%E4%BB%B6%E4%B8%AD%E6%B2%A1%E6%9C%89%E5%88%9B%E5%BB%BA%E6%9D%A1%E7%9B%AE%E7%9A%84%E9%A1%BA%E5%BA%8F%EF%BC%8C%E8%BF%99%E5%B0%B1%E5%83%8F%E6%95%B0%E6%8D%AE%20getentry%E3%80%81setentry%20%E7%9A%84%E8%A7%A3%E6%9E%90%E4%B8%80%E6%A0%B7%EF%BC%8C%E6%82%A8%E8%83%BD%E7%A1%AE%E8%AE%A4%E6%88%91%E5%88%9B%E5%BB%BA%E7%9A%84%E6%95%B0%E7%BB%84%E9%A1%BA%E5%BA%8F%E5%90%97%EF%BC%9F%22%3C%2FP%3E%0A%3CP%3E%E6%AD%A3%E7%A1%AE--Python%20%E8%84%9A%E6%9C%AC%E4%BD%BF%E7%94%A8%E5%9F%BA%E4%BA%8E%E5%B8%83%E5%B1%80%E7%9A%84%E6%96%B9%E6%B3%95%EF%BC%8C%E8%87%AA%E5%8A%A8%E5%B0%86%E5%AD%97%E6%AE%B5%E6%89%93%E5%8C%85%E5%92%8C%E6%8B%86%E5%8C%85%EF%BC%8C%E5%B9%B6%E6%8C%89%E7%85%A7%E6%AD%A3%E7%A1%AE%E7%9A%84%E5%AD%97%E8%AF%8D%E9%A1%BA%E5%BA%8F%E6%8E%92%E5%88%97%E3%80%82%E8%99%BD%E7%84%B6%E8%84%9A%E6%9C%AC%E6%B2%A1%E6%9C%89%E6%98%8E%E7%A1%AE%E6%98%BE%E7%A4%BA%E5%8D%95%E8%AF%8D%E6%95%B0%E7%BB%84%EF%BC%8C%E4%BD%86%E5%AE%83%E5%9C%A8%E5%86%85%E9%83%A8%E6%89%A7%E8%A1%8C%E4%BA%86%E6%AD%A3%E7%A1%AE%E7%9A%84%E9%A1%BA%E5%BA%8F%E3%80%82%E6%82%A8%E6%89%8B%E5%8A%A8%E6%9E%84%E9%80%A0%205%20%E5%AD%97%E6%95%B0%E7%BB%84%E7%9A%84%20C%20%E8%AF%AD%E8%A8%80%E5%AE%9E%E7%8E%B0%E7%AC%A6%E5%90%88%E8%BF%99%E4%B8%80%E9%80%BB%E8%BE%91%EF%BC%8C%E5%B9%B6%E4%B8%94%E6%98%AF%E6%9C%89%E6%95%88%E7%9A%84%E3%80%82%3C%2FP%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2143254%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2143254%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%82%A8%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%20%3CBR%20%2F%3E%3CBR%20%2F%3E%E4%B8%8B%E9%9D%A2%E6%98%AF%E4%B8%BA%20CB_Sequence%20Generation%20and%20Recovery%20Table%EF%BC%88CB_%E5%BA%8F%E5%88%97%E7%94%9F%E6%88%90%E5%92%8C%E6%81%A2%E5%A4%8D%E8%A1%A8%EF%BC%89%E5%88%9B%E5%BB%BA%E5%8A%A8%E6%80%81%E6%9D%A1%E7%9B%AE%E7%9A%84%E4%BB%A3%E7%A0%81%EF%BC%8C%E5%A6%82%E6%9E%9C%20CB_SGIR_ENtry%5B0%5D%2C%5B1%5D%2C%5B2%5D%2C%5B3%5D%2C%5B4%5D%E7%9A%84%E9%A1%BA%E5%BA%8F%E6%9C%89%E4%BB%BB%E4%BD%95%E5%8F%98%E5%8C%96%EF%BC%8C%E8%AF%B7%E6%A3%80%E6%9F%A5%E6%9D%A1%E7%9B%AE%E7%9A%84%E9%A1%BA%E5%BA%8F%E6%98%AF%E5%90%A6%E6%AD%A3%E7%A1%AE%E3%80%82%20%3CBR%20%2F%3E%3CBR%20%2F%3E%3CSPAN%3E%E8%BF%98%E6%9C%89%E4%B8%80%E4%BB%B6%E4%BA%8B%EF%BC%8Ccb_sg_ir.py%20%E6%96%87%E4%BB%B6%E4%B8%AD%E6%B2%A1%E6%9C%89%E5%88%9B%E5%BB%BA%E6%9D%A1%E7%9B%AE%E7%9A%84%E9%A1%BA%E5%BA%8F%EF%BC%8C%E5%AE%83%E5%B0%B1%E5%83%8F%E6%95%B0%E6%8D%AE%E7%9A%84%E8%A7%A3%E6%9E%90%20getentry%E3%80%81setentry%EF%BC%8C%E4%BD%A0%E8%83%BD%E7%A1%AE%E8%AE%A4%E6%88%91%E5%88%9B%E5%BB%BA%E7%9A%84%E6%95%B0%E7%BB%84%E9%A1%BA%E5%BA%8F%E5%90%97%EF%BC%9F%E6%88%91%E5%88%9B%E5%BB%BA%E4%BA%86%E4%B8%80%E4%B8%AA%E5%8A%A8%E6%80%81%20%3C%2FSPAN%3E%E6%9D%A1%E7%9B%AE%3CBR%20%2F%3E%3CBR%20%2F%3E%EF%BC%8C%E4%B8%8B%E9%9D%A2%E7%9A%84%E4%BB%A3%E7%A0%81%E4%B8%AD%E9%9C%80%E8%A6%81%E6%8F%90%E5%8F%8A%E5%93%AA%E4%BA%9B%E6%9B%B4%E6%94%B9%EF%BC%9F%3C%2FP%3E%3CDIV%3Eint%20WriteCB_SG_IR(uint32_t%20index)%20%7B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Eint%20cs%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CBSGIR_OFFSET%20%3D%20142%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CBSGIR_CTRL_OFFSET%20%3D%20147%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Econst%20uint32_t%20SWREG_BASE%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CB_SG_IR_ADDRESS%20%3D%20SWREG_BASE%20%2B%20CBSGIR_OFFSET%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CB_SG_IR_ADDRESS_CTL%20%3D%20SWREG_BASE%20%2B%20CBSGIR_CTRL_OFFSET%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%E5%A6%82%E6%9E%9C%20(index%26gt%3B%3D%2064)%20%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%E8%BF%94%E5%9B%9E%20-1%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_0%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_1%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_2%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_3%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_4%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_5%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_6%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_7%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_8%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_9%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RTAGOFFSET_10%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20REPLACE_PORTS%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20TAG_PORTS%20%3D%200x006%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20SEQ_REC_PORTS%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20IND_REC_PORTS%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20IND_REC_TIMEOUT%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20SEQRECOFFSET%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20GENSEQNUM%20%3D%200x1%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20SEQGENRST%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20VALID%20%3D%201U%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20RDWRSET%20%3D%201U%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20TARGETEDTBL%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20CB_SG_IR_Entry%5BCB_SGIR_ADDR_RANGE%5D%20%3D%20%7B0%7D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20CB_SG_IR_Entry%5B0%5D%20%3D(((GENSEQNUM%26amp%3B%200x1)%26lt%3B%26lt%3B%20(1%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20((SEQRECOFFSET%26amp%3B%200x1F)%26lt%3B%26lt%3B%20(2%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20((IND_REC_TIMEOUT%26amp%3B%200xFFFF)%26lt%3B%26lt%3B%20(7%25%2032)))%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20CB_SG_IR_Entry%5B1%5D%20%3D%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20((SEQ_REC_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%200)%7C%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20((IND_REC_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%2011)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20CB_SG_IR_Entry%5B2%5D%20%3D%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20(((TAG_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%20(0%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((REPLACE_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%20(11%25%2032)))%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20CB_SG_IR_Entry%5B3%5D%20%3D%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20(((RTAGOFFSET_0%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(0%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_1%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(6%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_2%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(12%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_3%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(18%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_4%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(24%25%2032)))%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20CB_SG_IR_Entry%5B4%5D%20%3D%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20(((RTAGOFFSET_5%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(0%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_6%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(6%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_7%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(12%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_8%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(18%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_9%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(24%25%2032))%2B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20((RTAGOFFSET_10%26amp%3B%200x3F)%26lt%3B%26lt%3B%20(30%25%2032)))%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20status%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20status%20%3D%20spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL%2C%20cs)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20%E8%AE%A1%E6%95%B0%E5%99%A8%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20while%20((status%26amp%3B%20(1%26lt%3B%26lt%3B%2031))%20!%3D%200)%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%E5%8F%8D%2B%2B%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20status%20%3D%20spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL%2C%20cs)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20for%20(int%20i%20%3D%200%3B%20i%26lt%3B%20CB_SGIR_ADDR_RANGE%3B%20i%2B%2B)%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20Std_ReturnType%20ret%20%3D%20spi_write_DynamicEntry(CB_SG_IR_ADDRESS%20%2B%20i%2C%20CB_SG_IR_Entry%5Bi%5D)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20if%20(ret%20!%3D%20E_OK)%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%E8%BF%94%E5%9B%9E%20-2%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20readBack%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20ret%20%3D%20spi_read_DynamicEntry(CB_SG_IR_ADDRESS%20%2B%20i%2C%26amp%3BreadBack)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20if%20(ret%20!%3D%20E_OK%20%7C%7C%20readBack%20!%3D%20CB_SG_IR_Entry%5Bi%5D)%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%E8%BF%94%E5%9B%9E%20-3%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint32_t%20CTRL_VALUE%20%3D%20(VALID%26lt%3B%26lt%3B%2031)%20%7C%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(rdwrset%26lt%3B%26lt%3B%2030)%20%7C%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(seqgenrst%26lt%3B%26lt%3B%209)%20%7C%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(targetedtbl%26lt%3B%26lt%3B%206)%20%7C%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(%E7%B4%A2%E5%BC%95%26amp%3B%200x3F%EF%BC%89%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20Std_ReturnType%20ret%20%3D%20spi_write_DynamicEntry(CB_SG_IR_ADDRESS_CTL%2C%20CTRL_VALUE)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20if%20(ret%20!%3D%20E_OK)%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%E8%BF%94%E5%9B%9E%20-4%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%E5%81%9A%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20ret%20%3D%20spi_read_DynamicEntry(CB_SG_IR_ADDRESS_CTL%2C%26amp%3Bstatus)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20if%20(ret%20!%3D%20E_OK)%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%E8%BF%94%E5%9B%9E%20-5%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20%7D%3C%2FDIV%3E%3CDIV%3E%20%20%20%20%20%20%20%20%7D%20while%20((status%26gt%3B%26gt%3B%2031)%26amp%3B%201U)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20return%200%3B%20%2F%2F%20Success%3C%2FDIV%3E%3CDIV%3E%7D%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2142712%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2142712%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%3CEM%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%3C%2FEM%3E%3C%2FP%3E%3CP%3E%E6%84%9F%E8%B0%A2%E6%82%A8%E7%9A%84%E5%9B%9E%E5%A4%8D%E3%80%82%3C%2FP%3E%3CP%3E%E6%88%91%E6%8F%90%E4%BE%9B%E7%9A%84%E4%BB%A3%E7%A0%81%E6%98%AF%E4%BF%AE%E6%94%B9%E5%90%8E%E7%9A%84%E9%80%82%E7%94%A8%E7%89%88%E6%9C%AC%E3%80%82%E5%9C%A8%20CB%20%E5%BA%8F%E5%88%97%E7%94%9F%E6%88%90%E5%92%8C%E6%81%A2%E5%A4%8D%E8%A1%A8%E4%B8%AD%EF%BC%8C%E6%88%91%E7%BB%B4%E6%8A%A4%E4%BA%86%E5%88%9B%E5%BB%BA%E5%8A%A8%E6%80%81%E6%9D%A1%E7%9B%AE%E6%89%80%E9%9C%80%E7%9A%84%E6%A0%87%E5%87%86%E3%80%82%3C%2FP%3E%3CP%3ECa.%E6%82%A8%E5%8F%AA%E9%9C%80%E7%A1%AE%E8%AE%A4%E4%B8%BA%20CB%20%E5%BA%8F%E5%88%97%E7%94%9F%E6%88%90%E5%92%8C%E6%81%A2%E5%A4%8D%E8%A1%A8%E5%88%9B%E5%BB%BA%20Dynamci%20%E6%9D%A1%E7%9B%AE%E6%98%AF%E5%90%A6%E6%AD%A3%E7%A1%AE%E3%80%82%3C%2FP%3E%3CP%3E%E6%88%91%E5%AF%B9%E6%9D%A1%E7%9B%AE%5B0%5D%5B1%5D%5B2%5D%5B3%5D%5B4%5D%E6%9C%89%E7%96%91%E9%97%AE%EF%BC%8C%E8%83%BD%E5%90%A6%E8%AF%B7%E6%82%A8%E6%8F%90%E4%BE%9B%E8%AE%A2%E5%8D%95%E7%9A%84%E7%A1%AE%E5%88%87%E7%89%88%E6%9C%AC%EF%BC%8C%E4%BB%A5%E5%B8%AE%E5%8A%A9%E6%88%91%E4%BB%AC%E5%88%9B%E5%BB%BA%E5%8A%A8%E6%80%81%E6%9D%A1%E7%9B%AE%E3%80%82%3C%2FP%3E%3CP%3E%E8%BF%98%E6%9C%89%E4%B8%80%E4%BB%B6%E4%BA%8B%EF%BC%8Ccb_sg_ir.py%20%E6%96%87%E4%BB%B6%E4%B8%AD%E6%B2%A1%E6%9C%89%E5%88%9B%E5%BB%BA%E6%9D%A1%E7%9B%AE%E7%9A%84%E9%A1%BA%E5%BA%8F%EF%BC%8C%E5%AE%83%E5%B0%B1%E5%83%8F%E6%95%B0%E6%8D%AE%E7%9A%84%E8%A7%A3%E6%9E%90%20getentry%E3%80%81setentry%EF%BC%8C%E4%BD%A0%E8%83%BD%E7%A1%AE%E8%AE%A4%E6%88%91%E5%88%9B%E5%BB%BA%E7%9A%84%E6%95%B0%E7%BB%84%E7%9A%84%E9%A1%BA%E5%BA%8F%EF%BC%8C%E4%BB%A5%E4%BE%BF%E5%88%9B%E5%BB%BA%E5%8A%A8%E6%80%81%E6%9D%A1%E7%9B%AE%E5%90%97%EF%BC%9F%20%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2142694%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2142694%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E5%9C%A8%20CB%20%E5%BA%8F%E5%88%97%E7%94%9F%E6%88%90%2F%E5%8D%95%E4%B8%AA%E6%81%A2%E5%A4%8D%E8%A1%A8%EF%BC%88CB_SG_IR%EF%BC%89%E4%B8%AD%E5%8A%A8%E6%80%81%E5%88%9B%E5%BB%BA%E6%9D%A1%E7%9B%AE%E7%9A%84%E5%8E%9F%E7%90%86%E7%B1%BB%E4%BC%BC%E4%BA%8E%E5%9C%A8%20L2%20%E6%9F%A5%E6%89%BE%E8%A1%A8%EF%BC%88%E5%A6%82%20write_l2_lookup_table.py%20%E4%B8%AD%EF%BC%89%E4%B8%AD%E5%8A%A8%E6%80%81%E5%88%9B%E5%BB%BA%E6%9D%A1%E7%9B%AE%E7%9A%84%E6%96%B9%E6%B3%95%E3%80%82%E4%B8%8D%E8%BF%87%EF%BC%8C%E5%9C%A8%E8%A1%A8%E6%A0%BC%E5%B8%83%E5%B1%80%E3%80%81%E6%8E%A7%E5%88%B6%E5%AF%84%E5%AD%98%E5%99%A8%E9%85%8D%E7%BD%AE%E5%92%8C%E6%AF%8F%E4%B8%AA%E6%9D%A1%E7%9B%AE%E5%AD%97%E6%95%B0%E6%96%B9%E9%9D%A2%E5%AD%98%E5%9C%A8%E9%87%8D%E8%A6%81%E5%B7%AE%E5%BC%82%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E9%97%AE%E9%A2%98%201%EF%BC%9A%E6%88%91%E6%8F%90%E4%BE%9B%E7%9A%84%E4%B8%8A%E8%BF%B0%E8%84%9A%E6%9C%AC%E4%B8%8E%20write_l2_lookup_table.py%20%E7%9B%B8%E5%90%8C%EF%BC%8C%E4%BD%86%E6%9B%B4%E6%94%B9%E4%BA%86%E6%88%91%E5%88%9B%E5%BB%BA%E7%9A%84%E5%9C%B0%E5%9D%80%E5%92%8C%E6%8E%A7%E5%88%B6%E5%9C%B0%E5%9D%80%EF%BC%9F%E5%9B%A0%E6%AD%A4%EF%BC%8C%E4%B8%BA%E4%BA%86%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E5%8A%A8%E6%80%81%20Entry%EF%BC%8C%E6%88%91%E4%BB%AC%E5%8F%AF%E4%BB%A5%E5%83%8F%E8%BF%99%E6%A0%B7%E8%BF%9B%E8%A1%8C%E5%A4%8D%E5%88%B6%EF%BC%8C%E5%AF%B9%E5%90%97%EF%BC%9F%3C%2FP%3E%0A%3CP%3E%E6%98%AF%E7%9A%84%EF%BC%8C%E6%A6%82%E5%BF%B5%E6%98%AF%E7%9B%B8%E4%BC%BC%E7%9A%84%E3%80%82%E6%82%A8%E5%8F%AF%E4%BB%A5%E5%A4%8D%E5%88%B6%20write_l2_lookup_table.py%20%E4%B8%AD%E7%9A%84%E5%8A%A8%E6%80%81%E6%9D%A1%E7%9B%AE%E5%88%9B%E5%BB%BA%E9%80%BB%E8%BE%91%EF%BC%8C%E4%BD%86%E5%BF%85%E9%A1%BB%E6%A0%B9%E6%8D%AE%20CB_SG_IR%20%E8%A1%A8%E7%9A%84%E5%85%B7%E4%BD%93%E6%83%85%E5%86%B5%E8%BF%9B%E8%A1%8C%E8%B0%83%E6%95%B4%EF%BC%9A%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3E%0A%3CP%3E%E4%BD%BF%E7%94%A8%E6%AD%A3%E7%A1%AE%E7%9A%84%E5%9F%BA%E5%87%86%E5%92%8C%E6%8E%A7%E5%88%B6%E5%81%8F%E7%A7%BB%EF%BC%88CBSGIR_OFFSET%E3%80%81CBSGIR_CTRL_OFFSET%EF%BC%89%E3%80%82%3C%2FP%3E%0A%3C%2FLI%3E%0A%3CLI%3E%0A%3CP%3E%E7%A1%AE%E4%BF%9D%E8%BE%93%E5%85%A5%E6%A0%BC%E5%BC%8F%E7%AC%A6%E5%90%88%20CB_SG_IR%20%E5%B8%83%E5%B1%80%EF%BC%885%20%E4%B8%AA%E5%AD%97%EF%BC%89%3C%2FP%3E%0A%3C%2FLI%3E%0A%3CLI%3E%0A%3CP%3E%E4%B8%BA%20CB_SG_IR%20%E8%AE%BE%E7%BD%AE%20TARGETEDTBL%20%3D%200%EF%BC%88%E4%B8%8E%20L2%20%E4%B8%8D%E5%90%8C%EF%BC%8C%E5%90%8E%E8%80%85%E4%BD%BF%E7%94%A8%20TARGETEDTBL%20%3D%201%EF%BC%89%E3%80%82%3C%2FP%3E%0A%3C%2FLI%3E%0A%3CLI%3E%0A%3CP%3E%E4%BD%BF%E7%94%A8%E9%80%82%E5%BD%93%E7%9A%84%E6%8E%A7%E5%88%B6%E5%AD%97%E6%A0%BC%E5%BC%8F%EF%BC%8C%E5%8C%85%E6%8B%AC%20VALID%E3%80%81RDWRSET%E3%80%81SEQGENRST%20%E5%92%8C%20INDEX%3C%2FP%3E%0A%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3EPython%20%E8%84%9A%E6%9C%AC%20cb_sg_ir.py%20%E4%BD%BF%E7%94%A8%20CB_SGIR_Entry%20%E5%92%8C%20CB_SGIR_Table%20%E7%B1%BB%E6%AD%A3%E7%A1%AE%E5%AE%9E%E7%8E%B0%E4%BA%86%E8%BF%99%E4%B8%80%E9%80%BB%E8%BE%91%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E9%97%AE%E9%A2%98%202%EF%BC%9A%E7%B4%A2%E5%BC%95%E5%80%BC%E6%98%AF%E5%90%A6%E4%B9%9F%E9%9C%80%E8%A6%81%E7%BC%96%E7%A0%81%E5%88%B0%20CB_SG_IR_Entry%5B%5D%EF%BC%9F%3C%2FP%3E%0A%3CP%3E%E5%90%A6%EF%BC%8C%E7%B4%A2%E5%BC%95%E6%B2%A1%E6%9C%89%E7%BC%96%E7%A0%81%E5%88%B0%20CB_SG_IR_Entry%5B%5D%20%E6%95%B0%E6%8D%AE%E6%95%B0%E7%BB%84%E4%B8%AD%E3%80%82%E5%AE%83%E4%BB%85%E7%94%A8%E4%BA%8E%E5%86%99%E5%85%A5%E6%8E%A7%E5%88%B6%E5%AF%84%E5%AD%98%E5%99%A8%20(CB_SG_IR_ADDRESS_CTL)%20%E7%9A%84%E6%8E%A7%E5%88%B6%E5%AD%97%EF%BC%8C%E5%AE%83%E4%BC%9A%E8%A7%A6%E5%8F%91%E4%BF%A1%E5%8F%B7%E7%A1%AC%E4%BB%B6%E5%9C%A8%E6%8C%87%E5%AE%9A%E7%B4%A2%E5%BC%95%E5%A4%84%E5%BA%94%E7%94%A8%E8%AF%A5%E6%9D%A1%E7%9B%AE%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E9%97%AE%E9%A2%98%203%EF%BC%9A%20%E6%98%AF%E5%90%A6%E9%9C%80%E8%A6%81%E4%BF%9D%E6%8C%81%20CB_SG_IR_Entry%5B0%5D%E3%80%81%5B1%5D%E3%80%81%5B2%5D%E3%80%81%5B3%5D%20%E7%9A%84%E9%A1%BA%E5%BA%8F%EF%BC%8C%E5%9B%A0%E4%B8%BA%E5%86%85%E9%83%A8%E5%80%BC%E9%9C%80%E8%A6%81%E6%8C%89%E4%B8%80%E5%AE%9A%E9%A1%BA%E5%BA%8F%E4%BF%9D%E6%8C%81%EF%BC%9F%3C%2FP%3E%0A%3CP%3E%E6%98%AF%E7%9A%84%EF%BC%8CCB_SG_IR_Entry%5B%5D%20%E4%B8%AD%E7%9A%84%E5%AD%97%E8%AF%8D%E9%A1%BA%E5%BA%8F%E5%BF%85%E9%A1%BB%E4%B8%A5%E6%A0%BC%E9%81%B5%E5%AE%88%E3%80%82%E6%AF%8F%E4%B8%AA%E5%AD%97%E5%AF%B9%E5%BA%94%E5%B8%83%E5%B1%80%E4%B8%AD%E5%AE%9A%E4%B9%89%E7%9A%84%E7%A1%AC%E4%BB%B6%E8%A1%A8%E9%A1%B9%E7%9A%84%E7%89%B9%E5%AE%9A%E9%83%A8%E5%88%86%E3%80%82Python%20%E8%84%9A%E6%9C%AC%20cb_sg_ir.py%20%E4%BC%9A%E6%A0%B9%E6%8D%AE%E5%B8%83%E5%B1%80%E5%AE%9A%E4%B9%89%E8%87%AA%E5%8A%A8%E5%A4%84%E7%90%86%E8%BF%99%E7%A7%8D%E6%8E%92%E5%BA%8F%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E9%97%AE%E9%A2%98%204%EF%BC%9A%20%E6%88%91%E5%9C%A8%20TAG_PORTS%20%3D%200x006%20%E4%B8%AD%E7%BB%99%E5%87%BA%E7%9A%84%20TAG_PORTS%20%3D%20%E7%AB%AF%E5%8F%A3%201%26amp%3B%20%E7%AB%AF%E5%8F%A3%202%20%E6%98%AF%E5%90%A6%E6%AD%A3%E7%A1%AE%EF%BC%9F%3C%2FP%3E%0A%3CP%3E%E6%98%AF%E7%9A%84%EF%BC%8C%E6%B2%A1%E9%94%99%E3%80%82%E4%BA%8C%E8%BF%9B%E5%88%B6%E5%80%BC%200x006%20%E4%B8%BA%200000%200000%200110%EF%BC%8C%E5%AE%83%E8%AE%BE%E7%BD%AE%E4%BA%86%E4%BD%8D%201%20%E5%92%8C%202%EF%BC%8C%E5%AF%B9%E5%BA%94%E4%BA%8E%E7%AB%AF%E5%8F%A3%201%20%E5%92%8C%E7%AB%AF%E5%8F%A3%202%E3%80%82%E8%BF%99%E4%B8%8E%E7%AB%AF%E5%8F%A3%E9%80%89%E6%8B%A9%E7%9A%84%E9%A2%84%E6%9C%9F%E7%BC%96%E7%A0%81%E7%9B%B8%E5%8C%B9%E9%85%8D%E3%80%82%3C%2FP%3E%0A%3CP%3E%E9%97%AE%E5%80%99%E3%80%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2142475%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2142475%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%3C%2FP%3E%3CP%3E%E6%88%91%E4%BD%BF%E7%94%A8%E7%9A%84%E5%88%9B%E5%BB%BA%E5%8A%A8%E6%80%81%E6%9D%A1%E7%9B%AE%E7%9A%84%E5%9C%B0%E5%9D%80%E6%98%AF%E5%90%A6%E6%AD%A3%E7%A1%AE%EF%BC%8C%E8%BF%98%E6%98%AF%E9%9C%80%E8%A6%81%E4%BD%BF%E7%94%A8%E4%B8%8D%E5%90%8C%E7%9A%84%E5%9C%B0%E5%9D%80%EF%BC%9F%20%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2141452%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2141452%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%20%3CBR%20%2F%3E%3CBR%20%2F%3E%E4%B8%8B%E9%9D%A2%E7%9A%84%E8%84%9A%E6%9C%AC%E6%98%AF%E4%B8%80%E4%B8%AA%E7%A4%BA%E4%BE%8B%E8%84%9A%E6%9C%AC%EF%BC%8C%E7%94%A8%E4%BA%8E%E5%8A%A8%E6%80%81%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E6%9D%A1%E7%9B%AE%EF%BC%8C%E6%8C%89%E7%B4%A2%E5%BC%95%E6%93%8D%E4%BD%9C%20L2%20%E6%9F%A5%E6%89%BE%E8%A1%A8%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%3CDIV%3Eint%20WriteCB_SG_IR()%7B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CBSGIR_OFFSET%20%3D%200xFF000238%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CBSGIR_CTRL_OFFSET%20%3D%200xFF00024C%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Econst%20uint32_t%20SWREG_BASE%20%3D%200x00000000%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Evolatile%20uint32_t*%20CB_SG_IR_ADDRESS%20%3D%20(uint32_t*)(SWREG_BASE%20%2B%20CBSGIR_OFFSET)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Evolatile%20uint32_t*%20CB_SG_IR_ADDRESS_CTL%20%3D%20(uint32_t*)(SWREG_BASE%20%2B%20CBSGIR_CTRL_OFFSET)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RTAGOFFSET_10%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RTAGOFFSET_9%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RTAGOFFSET_8%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RTAGOFFSET_7%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RTAGOFFSET_6%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RTAGOFFSET_5%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RTAGOFFSET_4%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RTAGOFFSET_3%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RTAGOFFSET_2%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RTAGOFFSET_1%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RTAGOFFSET_0%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20REPLACE_PORTS%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20TAG_PORTS%20%3D%3CSTRONG%3E0x006%EF%BC%9B%3C%2FSTRONG%3E%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20SEQ_REC_PORTS%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20IND_REC_PORTS%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20IND_REC_TIMEOUT%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20SEQRECOFFSET%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20GENSEQNUM%20%3D%201%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20INDEX%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20SEQGENRST%20%3D%200%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20VALID%20%3D%201U%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RDWRSET%20%3D%201U%20%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20TARGETEDTBL%20%3D%200U%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20TABLE_SIZE%20%3D%2064%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CB_SG_IR_Entry%5BCB_SGIR_ADDR_RANGE%5D%20%3D%20%7B0%7D%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3ECB_SG_IR_Entry%5B0%5D%20%3D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((GENSEQNUM%26amp%3B%200x1)%26lt%3B%26lt%3B%201)%20%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((SEQRECOFFSET%26amp%3B%200x1F)%26lt%3B%26lt%3B%202)%20%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((IND_REC_TIMEOUT%26amp%3B%200xFFFF)%26lt%3B%26lt%3B%207)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3ECB_SG_IR_Entry%5B1%5D%20%3D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((SEQ_REC_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%200)%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((IND_REC_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%2011)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3ECB_SG_IR_Entry%5B2%5D%20%3D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((TAG_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%200)%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((REPLACE_PORTS%26amp%3B%200x7FF)%26lt%3B%26lt%3B%2011)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3ECB_SG_IR_Entry%5B3%5D%20%3D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((RTAGOFFSET_0%26amp%3B%200x3F)%26lt%3B%26lt%3B%200)%20%20%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((RTAGOFFSET_1%26amp%3B%200x3F)%26lt%3B%26lt%3B%206)%20%20%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((RTAGOFFSET_2%26amp%3B%200x3F)%26lt%3B%26lt%3B%2012)%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((RTAGOFFSET_3%26amp%3B%200x3F)%26lt%3B%26lt%3B%2018)%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((RTAGOFFSET_4%26amp%3B%200x3F)%26lt%3B%26lt%3B%2024)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3ECB_SG_IR_Entry%5B4%5D%20%3D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((RTAGOFFSET_5%26amp%3B%200x3F)%26lt%3B%26lt%3B%200)%20%20%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((RTAGOFFSET_6%26amp%3B%200x3F)%26lt%3B%26lt%3B%206)%20%20%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((RTAGOFFSET_7%26amp%3B%200x3F)%26lt%3B%26lt%3B%2012)%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((RTAGOFFSET_8%26amp%3B%200x3F)%26lt%3B%26lt%3B%2018)%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((RTAGOFFSET_9%26amp%3B%200x3F)%26lt%3B%26lt%3B%2024)%7C%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20((RTAGOFFSET_10%26amp%3B%200x3F)%26lt%3B%26lt%3B%2030)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20status%20%3D%20*CB_SG_IR_ADDRESS_CTL%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Ewhile%20((status%26amp%3B%20(1U%26lt%3B%26lt%3B%2031))%20!%3D%200)%20%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Estatus%20%3D%20*CB_SG_IR_ADDRESS_CTL%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%7D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Efor%20(int%20i%20%3D%200%3B%20i%26lt%3B%20CB_SGIR_ADDR_RANGE%3B%20i%2B%2B)%20%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3ECB_SG_IR_ADDRESS%5Bi%5D%20%3D%20CB_SG_IR_Entry%5Bi%5D%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%E5%A6%82%E6%9E%9C%20(CB_SG_IR_ADDRESS%5Bi%5D%20!%3D%20CB_SG_IR_Entry%5Bi%5D)%20%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%20%E8%BF%94%E5%9B%9E%20-3%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%26nbsp%3B%26nbsp%3B%20%7D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%7D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CTRL_VALUE%20%3D%20((VALID%26lt%3B%26lt%3B%2031)%20%2B%20(RDWRSET%26lt%3B%26lt%3B%2030)%20%2B%20(SEQGENRST%26lt%3B%26lt%3B%209)%20%2B%20(TARGETEDTBL%26lt%3B%26lt%3B%206)%20%2B%20(INDEX%26amp%3B%200b111111))%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E*cb_sg_ir_address_ctl%20%3D%20ctrl_value%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Edo%20%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Estatus%20%3D%20*CB_SG_IR_ADDRESS_CTL%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%7D%20while%20((status%26gt%3B%26gt%3B%2031)%26amp%3B%201U)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Ereturn%200%3B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%7D%3C%2FDIV%3E%3CP%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%E6%88%91%E6%8F%90%E4%BE%9B%E7%9A%84%E4%B8%8A%E8%BF%B0%E8%84%9A%E6%9C%AC%E4%B8%8E%20write_le_lookup_table.py%20%E7%9B%B8%E5%90%8C%EF%BC%8C%E4%BD%86%E6%9B%B4%E6%94%B9%E4%BA%86%E5%9C%B0%E5%9D%80%E5%92%8C%E6%88%91%E5%88%9B%E5%BB%BA%E7%9A%84%E6%8E%A7%E5%88%B6%E5%9C%B0%E5%9D%80%E3%80%82%3CBR%20%2F%3E%E8%BF%99%E6%98%AF%E5%90%A6%E5%8F%AF%E8%A1%8C%EF%BC%8C%E5%9B%A0%E4%B8%BA%20cb_sg_ir.py%20%E4%B8%8E%20write_l2_lookup_table.py%20%E5%AE%8C%E5%85%A8%E4%B8%8D%E5%90%8C%3CBR%20%2F%3E%3CBR%20%2F%3E%E7%B4%A2%E5%BC%95%E5%80%BC%E6%98%AF%E5%90%A6%E4%B9%9F%E9%9C%80%E8%A6%81%E7%BC%96%E7%A0%81%E5%88%B0%3CSPAN%3ECB_SG_IR_Entry%5B%5D%E4%B8%AD%EF%BC%9F%3CBR%20%2F%3E%20%E6%89%80%E4%BB%A5%E6%98%AF%E5%90%A6%E9%9C%80%E8%A6%81%E4%BF%9D%E6%8C%81%20CB_SG_IR_Entry%5B0%5D%E3%80%81%5B1%5D%E3%80%81%5B2%5D%E3%80%81%5B3%5D%3C%2FSPAN%3E%3CBR%20%2F%3E%E5%9B%A0%E4%B8%BA%E5%86%85%E9%83%A8%E5%80%BC%E9%9C%80%E8%A6%81%E4%BF%9D%E6%8C%81%E4%B8%80%E5%AE%9A%E7%9A%84%E9%A1%BA%E5%BA%8F%3CBR%20%2F%3E%3CBR%20%2F%3E%E5%9C%A8%20TAG_PORTS%20%3D%200x006%20%E4%B8%AD%EF%BC%8C%E6%88%91%E7%BB%99%E5%87%BA%E4%BA%86%20TAG_PORTS%20%3D%20%E7%AB%AF%E5%8F%A3%201%26amp%3B%20%E7%AB%AF%E5%8F%A3%202%20%E6%98%AF%E5%90%A6%E6%AD%A3%E7%A1%AE%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2140915%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2140915%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E5%88%9B%E5%BB%BA%E5%92%8C%E8%AF%84%E4%BC%B0%E8%BF%99%E6%A0%B7%E7%9A%84%E8%84%9A%E6%9C%AC%E4%B8%8D%E5%B1%9E%E4%BA%8E%E6%88%91%E4%BB%AC%E7%9A%84%E5%85%8D%E8%B4%B9%E6%94%AF%E6%8C%81%E8%8C%83%E5%9B%B4%E3%80%82%3C%2FP%3E%0A%3CP%3E%E6%84%9F%E8%B0%A2%E6%82%A8%E7%9A%84%E7%90%86%E8%A7%A3%E3%80%82%3C%2FP%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2140618%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2140618%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%20%3CBR%20%2F%3E%3CBR%20%2F%3E%EF%BC%8C%E8%83%BD%E5%90%A6%E6%8F%90%E4%BE%9B%E5%9C%A8%20CB_SG_IR%20%E8%A1%A8%E4%B8%AD%E5%88%9B%E5%BB%BA%E5%8A%A8%E6%80%81%E5%B1%9E%E6%80%A7%E7%9A%84%E7%A4%BA%E4%BE%8B%EF%BC%9F%20%3C%2FP%3E%3CDIV%3E%3CDIV%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ERTAGOFFSET_10%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ERTAGOFFSET_9%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ERTAGOFFSET_8%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ERTAGOFFSET_7%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ERTAGOFFSET_6%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ERTAGOFFSET_5%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ERTAGOFFSET_4%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ERTAGOFFSET_3%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ERTAGOFFSET_2%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ERTAGOFFSET_1%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ERTAGOFFSET_0%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EREPLACE_PORTS%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ETAG_PORTS%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EIND_REC_PORTS%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ESEQ_REC_PORTS%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3Eind_rec_timeout%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3ESEQRECOFFSET%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3EGENSEQNUM%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CBR%20%2F%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3Etstled%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3Erstled%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%20%20%20%20%20%20%3C%2FSPAN%3E%3CSPAN%3E%E8%87%AA%E6%88%91%3C%2FSPAN%3E%3CSPAN%3E.%3C%2FSPAN%3E%3CSPAN%3Eseqgenrst%3C%2FSPAN%3E%20%3CSPAN%3E%3D%3C%2FSPAN%3E%20%3CSPAN%3E0%3CBR%20%2F%3E%E5%9C%A8%E6%AD%A4%E7%A4%BA%E4%BE%8B%E4%B8%AD%E6%88%91%E5%BA%94%E5%A6%82%E4%BD%95%E6%8F%90%E5%8F%8A%3CBR%20%2F%3ETAG_PORTS%20%3D%20Port%201%26amp%3B%20Port%202%3CBR%20%2F%3EGENSEQNUM%20%3D%20ENABLE%3CBR%20%2F%3ESEQ_REC_PORTS%20%3D%20POrt%203%26amp%3B%20Port%204%3CBR%20%2F%3E%3CBR%20%2F%3E%E5%A6%82%E4%BD%95%E5%9C%A8%E6%AD%A4%E6%95%B0%E6%8D%AE%E4%B8%AD%E8%BE%93%E5%85%A5%E5%80%BC%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FSPAN%3E%3CDIV%3Etypedef%20struct%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20RTAGOFFSET_10%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20RTAGOFFSET_9%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20RTAGOFFSET_8%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20RTAGOFFSET_7%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20RTAGOFFSET_6%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20RTAGOFFSET_5%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20RTAGOFFSET_4%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20RTAGOFFSET_3%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20RTAGOFFSET_2%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20RTAGOFFSET_1%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20RTAGOFFSET_0%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint16_t%20REPLACE_PORTS%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint16_t%20TAG_PORTS%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint16_t%20IND_REC_PORTS%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint16_t%20SEQ_REC_PORTS%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint16_t%20IND_REC_TIMEOUT%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint16_t%20SEQRECOFFSET%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint16_t%20GENSEQNUM%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20tstled%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20rstled%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20seqgenrst%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20uint8_t%20%E7%B4%A2%E5%BC%95%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%7DCB_SGIR_Entry%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3Evoid%20SGIR_Entry(const%20CB_SGIR_Entry*%20entry%2C%20uint32_t*%20Write_SGIR_Entry)%20%7B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20int%20ADDR_RANGE%20%3D%205%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20for%20(int%20i%20%3D%200%3B%20i%26lt%3B%20ADDR_RANGE%3B%20i%2B%2B)%20Write_SGIR_Entry%5Bi%5D%20%3D%200%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20Write_SGIR_Entry%5B0%5D%20%3D%20((entry-%26gt%3BRTAGOFFSET_0%26amp%3B%200x1)%26lt%3B%26lt%3B%200)%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BRTAGOFFSET_1%26amp%3B%200x1)%26lt%3B%26lt%3B%201)%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BRTAGOFFSET_2%26amp%3B%200x1)%26lt%3B%26lt%3B%202)%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BRTAGOFFSET_3%26amp%3B%200x1)%26lt%3B%26lt%3B%203)%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BRTAGOFFSET_4%26amp%3B%200x1)%26lt%3B%26lt%3B%204)%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BRTAGOFFSET_5%26amp%3B%200x1)%26lt%3B%26lt%3B%205)%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BRTAGOFFSET_6%26amp%3B%200x1)%26lt%3B%26lt%3B%206)%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BRTAGOFFSET_7%26amp%3B%200x1)%26lt%3B%26lt%3B%207)%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%7C%20((entry-%26gt%3BRTAGOFFSET_8%26amp%3B%200x1)%26lt%3B%26lt%3B%20%3CLI-EMOJI%20id%3D%22lia_smiling-face-with-sunglasses%22%20title%3D%22%3Asmiling_face_with_sunglasses%3A%22%3E%3C%2FLI-EMOJI%3E%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BRTAGOFFSET_9%26amp%3B%200x1)%26lt%3B%26lt%3B%209)%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BRTAGOFFSET_10%26amp%3B%200x1)%26lt%3B%26lt%3B%2010)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20Write_SGIR_Entry%5B1%5D%20%3D%20((entry-%26gt%3BREPLACE_PORTS%26amp%3B%200xFFFF)%26lt%3B%26lt%3B%200)%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BTAG_PORTS%26amp%3B%200xFFFF)%26lt%3B%26lt%3B%2016)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20Write_SGIR_Entry%5B2%5D%20%3D%20((entry-%26gt%3BIND_REC_PORTS%26amp%3B%200xFFFF)%26lt%3B%26lt%3B%200)%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BSEQ_REC_PORTS%26amp%3B%200xFFFF)%26lt%3B%26lt%3B%2016)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20Write_SGIR_Entry%5B3%5D%20%3D%20((entry-%26gt%3BIND_REC_TIMEOUT%26amp%3B%200xFFFF)%26lt%3B%26lt%3B%200)%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3BSEQRECOFFSET%26amp%3B%200xFFFF)%26lt%3B%26lt%3B%2016)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20Write_SGIR_Entry%5B4%5D%20%3D%20((entry-%26gt%3BGENSEQNUM%26amp%3B%200xFFFF)%26lt%3B%26lt%3B%200)%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3Btstled%26amp%3B%200x1)%26lt%3B%26lt%3B%2016)%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3Brstled%26amp%3B%200x1)%26lt%3B%26lt%3B%2017)%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%20%20%7C%20((entry-%26gt%3Bseqgenrst%26amp%3B%200x1)%26lt%3B%26lt%3B%2018)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%7D%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Evoid%20write_SGIR(const%20CB_SGIR_Entry*%20entry)%20%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20SWREG_BASE%20%3D%200x00000000%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CB_SGIR_OFFSET%20%3D%200xFF000238%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20CB_SGIR_CTRL_OFFSET%20%3D%200xFF00024C%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20VALID%20%3D%20(1U%26lt%3B%26lt%3B%2031)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20RDWRSET%20%3D%20(1U%26lt%3B%26lt%3B%2030)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20TARGETEDTBL%20%3D%20(0U%26lt%3B%26lt%3B%206)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20ADDR_RANGE%20%3D%205%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20TABLE_SIZE%20%3D%2064%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Evolatile%20uint32_t*%20const%20CB_SGIR_TABLE%20%3D%20(uint32_t*)(SWREG_BASE%20%2B%20CB_SGIR_OFFSET)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Evolatile%20uint32_t*%20const%20CB_SGIR_CTRL%20%3D%20(uint32_t*)(SWREG_BASE%20%2B%20CB_SGIR_CTRL_OFFSET)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20Write_SGIR_Entry%5BADDR_RANGE%5D%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3ESGIR_Entry(entry%2C%20Write_SGIR_Entry)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint32_t%20control_word%20%3D%20VALID%20%7C%20RDWRSET%20%7C%20(TARGETEDTBL)%20%7C%20(entry-%26gt%3Bindex%26amp%3B%200x3F)%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Efor%20(int%20i%20%3D%200%3B%20i%26lt%3B%20ADDR_RANGE%3B%20i%2B%2B)%20%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3ECB_SGIR_TABLE%5Bi%5D%20%3D%20Write_SGIR_Entry%5Bi%5D%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%7D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E*CB_SGIR_CTRL%20%3D%20%E6%8E%A7%E5%88%B6%E5%AD%97%EF%BC%9B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3E%7D%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3Evoid%20ConfigSGIR(uint8_t%20index%2Cuint16_t%20tag_ports%2Cuint16_t%20replace_ports%2Cuint16_t%20ind_rec_ports%2Cuint16_t%20seq_rec_ports)%E3%80%81%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint16_t%20ind_rec_timeout%E3%80%81uint16_t%20seqrec_offset%E3%80%81uint16_t%20genseqnum%E3%80%81uint8_t%20seqgenrst%E3%80%81uint8_t%20tstled%E3%80%81uint8_t%20rstled%E3%80%81%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%3CSPAN%3Euint8_t%20rtagoffset%5B11%5D)%20%7B%3C%2FSPAN%3E%3C%2FDIV%3E%3CDIV%3E%20%20%20%20CB_SGIR_Entry%20entry%20%3D%20%7B0%7D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.index%20%3D%20%E7%B4%A2%E5%BC%95%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.TAG_PORTS%20%3D%20tag_ports%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.REPLACE_PORTS%20%3D%20replace_ports%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.IND_REC_PORTS%20%3D%20ind_rec_ports%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.SEQ_REC_PORTS%20%3D%20seq_rec_ports%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.IND_REC_TIMEOUT%20%3D%20ind_rec_timeout%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.SEQRECOFFSET%20%3D%20seqrec_offset%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.GENSEQNUM%20%3D%20genseqnum%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.seqgenrst%20%3D%20seqgenrst%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.tstled%20%3D%20tstled%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.rstled%20%3D%20rstled%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.RTAGOFFSET_0%20%3D%20rtagoffset%5B0%5D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.RTAGOFFSET_1%20%3D%20rtagoffset%5B1%5D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.RTAGOFFSET_2%20%3D%20rtagoffset%5B2%5D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.RTAGOFFSET_3%20%3D%20rtagoffset%5B3%5D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.RTAGOFFSET_4%20%3D%20rtagoffset%5B4%5D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.RTAGOFFSET_5%20%3D%20rtagoffset%5B5%5D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.RTAGOFFSET_6%20%3D%20rtagoffset%5B6%5D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.RTAGOFFSET_7%20%3D%20rtagoffset%5B7%5D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.RTAGOFFSET_8%20%3D%20rtagoffset%5B8%5D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.RTAGOFFSET_9%20%3D%20rtagoffset%5B9%5D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20entry.RTAGOFFSET_10%20%3D%20rtagoffset%5B10%5D%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%26nbsp%3B%3C%2FDIV%3E%3CDIV%3E%20%20%20%20write_SGIR(%26amp%3Bentry)%EF%BC%9B%3C%2FDIV%3E%3CDIV%3E%7D%3CBR%20%2F%3E%3CBR%20%2F%3Eint%20main()%7B%3CBR%20%2F%3EConfigSGIR(0%2C%20(1%26lt%3B%26lt%3B%201)%20%7C%20(1%26lt%3B%26lt%3B%202)%2C%200%2C%200%2C%200%2C%200%2C%201%2C%200%2C%200%2C%200%2C%20rtagoffsets0)%3B%3CBR%20%2F%3E%7D%3CBR%20%2F%3E%E5%9C%A8%E5%88%9B%E5%BB%BA%E5%8A%A8%E6%80%81%E6%9D%A1%E7%9B%AE%E6%97%B6%E6%89%A7%E8%A1%8C%E6%AD%A4%E4%BB%A3%E7%A0%81%E6%98%AF%E5%90%A6%E6%AD%A3%E7%A1%AE%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FDIV%3E%3C%2FDIV%3E%3C%2FDIV%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2140123%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2140123%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E5%A6%82%20UM11107%20%E7%AC%AC%205.6.5%20%E7%AB%A0%20-%20%E5%86%97%E4%BD%99%E9%87%8D%E6%96%B0%E9%85%8D%E7%BD%AE%E6%89%80%E8%BF%B0%EF%BC%8CCB%20%E5%BA%8F%E5%88%97%E7%94%9F%E6%88%90%E5%92%8C%E6%81%A2%E5%A4%8D%E8%A1%A8%E4%BB%A5%E5%8F%8A%20CB%20%E6%81%A2%E5%A4%8D%E8%A1%A8%E5%8F%AF%E4%BB%A5%E5%8A%A8%E6%80%81%E9%87%8D%E6%96%B0%E9%85%8D%E7%BD%AE%E3%80%82%3C%2FP%3E%0A%3CP%3ESJA1110%20EVM%20%E4%B8%BB%E6%9C%BA%E5%B7%A5%E5%85%B7%E6%94%AF%E6%8C%81%E8%AF%A5%E5%8A%9F%E8%83%BD%E3%80%82%20%E7%9B%B8%E5%85%B3%E7%9A%84%E5%AE%9E%E7%8E%B0%E7%BB%86%E8%8A%82%E5%8F%AF%E4%BB%A5%E5%9C%A8%E4%BB%A5%E4%B8%8B%20Python%20%E6%A8%A1%E5%9D%97%E4%B8%AD%E6%89%BE%E5%88%B0%EF%BC%9A%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3Ecb_sg_ir.py%3C%2FLI%3E%0A%3CLI%3Ecb_sr.py%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3E%E5%AE%83%E4%BB%AC%E4%BD%8D%E4%BA%8E%E4%BB%A5%E4%B8%8B%E8%B7%AF%E5%BE%84%EF%BC%9A%3CBR%20%2F%3Esja1110evm_hosttools_v1.2%5CSJA1110EVM%5CSJA1110%5CSJA1110%3C%2FP%3E%0A%3CP%3E%E8%AF%B7%E6%B3%A8%E6%84%8F%EF%BC%8C%E8%99%BD%E7%84%B6%E8%AF%A5%E5%8A%9F%E8%83%BD%E5%B7%B2%E7%BB%8F%E5%AE%9E%E7%8E%B0%EF%BC%8C%E4%BD%86%E5%B7%A5%E5%85%B7%E9%9B%86%E4%B8%AD%E5%B9%B6%E6%B2%A1%E6%9C%89%E6%8F%90%E4%BE%9B%E5%8F%AF%E7%9B%B4%E6%8E%A5%E6%89%A7%E8%A1%8C%E7%9A%84%E7%A4%BA%E4%BE%8B%E3%80%82%3C%2FP%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2140042%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2140042%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%20%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E9%85%8D%E7%BD%AE%20CB%20%E5%BA%8F%E5%88%97%E7%94%9F%E6%88%90%E5%92%8C%E6%81%A2%E5%A4%8D%E8%A1%A8%EF%BC%8C%E6%97%A0%E8%AE%BA%E6%88%91%E4%BB%AC%E6%9C%89%E7%9B%B8%E5%BA%94%E7%9A%84%E8%A7%84%E5%AE%9A%EF%BC%8C%E9%83%BD%E5%8F%AF%E4%BB%A5%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%20CB%20%E6%81%A2%E5%A4%8D%E8%A1%A8%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%E9%80%9A%E8%BF%87%E4%BD%BF%E7%94%A8%20SJA1110%20EVM%20%E4%B8%BB%E6%9C%BA%E5%B7%A5%E5%85%B7%EF%BC%8C%E6%88%91%E4%BB%AC%E6%98%AF%E5%90%A6%E6%94%AF%E6%8C%81%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%EF%BC%8C%E8%BF%98%E6%98%AF%E5%8F%AA%E8%83%BD%E5%9C%A8%20Switchcore%20%E4%B8%AD%E8%BF%9B%E8%A1%8C%E9%9D%99%E6%80%81%E9%85%8D%E7%BD%AE%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2128007%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2128007%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E8%AE%A9%E6%88%91%E6%80%BB%E7%BB%93%E4%B8%80%E4%B8%8B%E6%88%91%E4%BB%AC%E5%9C%A8%E6%9C%AC%E4%B8%BB%E9%A2%98%E4%B8%AD%E5%B7%B2%E7%BB%8F%E8%AE%A8%E8%AE%BA%E8%BF%87%E7%9A%84%E5%86%85%E5%AE%B9%EF%BC%8C%E5%B9%B6%E6%A6%82%E8%BF%B0%E4%B8%80%E4%B8%8B%E5%9C%A8%20SJA1110%20%E4%BA%A4%E6%8D%A2%E6%9C%BA%E4%B8%8A%E5%8A%A8%E6%80%81%E9%87%8D%E6%96%B0%E9%85%8D%E7%BD%AE%20L2%20%E6%9F%A5%E6%89%BE%E8%A1%A8%E7%9A%84%E5%8F%AF%E7%94%A8%E9%80%89%E9%A1%B9%EF%BC%9A%3C%2FP%3E%0A%3CP%3E1.ECT%EF%BC%88%E4%BB%A5%E5%A4%AA%E7%BD%91%E6%8E%A7%E5%88%B6%E5%B7%A5%E5%85%B7%EF%BC%89%3CBR%20%2F%3E%E9%80%9A%E8%BF%87%E5%A4%96%E9%83%A8%E4%BB%A5%E5%A4%AA%E7%BD%91%EF%BC%88UDP%EF%BC%89%E5%B8%A7%E8%BF%9B%E8%A1%8C%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%E3%80%82M7%20%E6%A0%B8%E5%BF%83%E4%B8%8A%E8%BF%90%E8%A1%8C%E7%9A%84%E5%86%85%E9%83%A8%E5%9B%BA%E4%BB%B6%E6%8E%A5%E6%94%B6%E9%85%8D%E7%BD%AE%E5%B9%B6%E5%B0%86%E5%85%B6%E5%BA%94%E7%94%A8%E5%88%B0%E4%BA%A4%E6%8D%A2%E6%9C%BA%E6%A0%B8%E5%BF%83%E3%80%82%3C%2FP%3E%0A%3CP%3E2.%E4%BF%AE%E6%94%B9%E5%90%8E%E7%9A%84%20ECT%3CBR%20%2F%3EECT%20%E6%BA%90%E4%BB%A3%E7%A0%81%E5%8F%AF%E8%BF%9B%E8%A1%8C%E8%B0%83%E6%95%B4%EF%BC%8C%E4%BB%A5%E6%8E%A5%E5%8F%97%E4%BB%BB%E4%BD%95%E4%BB%A5%E5%A4%AA%E7%BD%91%E5%B8%A7%E6%A0%BC%E5%BC%8F%EF%BC%88%E4%B8%8D%E4%BB%85%E4%BB%85%E6%98%AF%20UDP%EF%BC%89%E3%80%82%E8%BF%99%E6%A0%B7%E5%B0%B1%E5%8F%AF%E4%BB%A5%E9%9B%86%E6%88%90%E5%88%B0%E5%AE%9A%E5%88%B6%E5%8D%8F%E8%AE%AE%E6%88%96%E7%B3%BB%E7%BB%9F%E4%B8%AD%E3%80%82%E5%86%85%E9%83%A8%E9%80%BB%E8%BE%91%E4%BF%9D%E6%8C%81%E4%B8%8D%E5%8F%98--M7%20%E5%86%85%E6%A0%B8%E6%89%A7%E8%A1%8C%E5%AE%9E%E9%99%85%E7%9A%84%E5%AF%84%E5%AD%98%E5%99%A8%E6%9B%B4%E6%96%B0%E3%80%82%3C%2FP%3E%0A%3CP%3E3.SPI_HAP%EF%BC%88%E4%B8%BB%E6%9C%BA%E8%AE%BF%E9%97%AE%E5%8D%8F%E8%AE%AE%EF%BC%89%3CBR%20%2F%3E%E4%B8%BB%E6%9C%BA%E5%B7%A5%E5%85%B7%E4%B8%AD%E7%9A%84%20write_l2_lookup_table.py%20%E8%84%9A%E6%9C%AC%E6%BC%94%E7%A4%BA%E4%BA%86%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%20SPI%20%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%20L2%20%E8%A1%A8%E3%80%82%E4%BB%BB%E4%BD%95%E5%A4%96%E9%83%A8%20MCU%20%E6%88%96%E4%B8%BB%E5%A4%84%E7%90%86%E5%99%A8%E9%83%BD%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%E8%BF%99%E7%A7%8D%E6%96%B9%E6%B3%95%E3%80%82%E5%A6%82%E6%9E%9C%E9%9C%80%E8%A6%81%EF%BC%8C%E8%AF%A5%E8%84%9A%E6%9C%AC%E4%B8%AD%E7%9A%84%E9%80%BB%E8%BE%91%E4%B9%9F%E5%8F%AF%E4%BB%A5%E7%A7%BB%E6%A4%8D%E5%88%B0%20M7%20%E5%86%85%E6%A0%B8%E4%B8%8A%E7%9B%B4%E6%8E%A5%E8%BF%90%E8%A1%8C%E3%80%82%3C%2FP%3E%0A%3CP%3E%E4%B8%8A%E8%BF%B0%E6%89%80%E6%9C%89%E6%96%B9%E6%B3%95%E9%83%BD%E9%81%B5%E5%BE%AA%20AN12925%20%E7%AC%AC%205.1.3.2%20%E8%8A%82%E6%89%80%E8%BF%B0%E7%9A%84%E7%9B%B8%E5%90%8C%E5%8E%9F%E5%88%99%E3%80%82%E5%AF%84%E5%AD%98%E5%99%A8%E7%BA%A7%E5%88%AB%E7%9A%84%E6%B5%81%E7%A8%8B%E6%98%AF%E7%9B%B8%E5%90%8C%E7%9A%84%EF%BC%8C%E5%8C%85%E6%8B%AC%E8%BD%AE%E8%AF%A2%E6%8E%A7%E5%88%B6%E5%AF%84%E5%AD%98%E5%99%A8%E3%80%81%E5%86%99%E5%85%A5%E6%9D%A1%E7%9B%AE%E5%AF%84%E5%AD%98%E5%99%A8%E4%BB%A5%E5%8F%8A%E9%80%9A%E8%BF%87%E6%8E%A7%E5%88%B6%E5%AF%84%E5%AD%98%E5%99%A8%E8%A7%A6%E5%8F%91%E4%BF%A1%E5%8F%B7%E6%9B%B4%E6%96%B0%E3%80%82%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2126814%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2126814%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%20%3CBR%20%2F%3E%3CBR%20%2F%3E%E6%88%91%E6%83%B3%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%20L2%20%E6%9F%A5%E6%89%BE%E8%A1%A8%3CBR%20%2F%3E%E5%A6%82%E4%BD%95%E5%9C%A8%E6%B2%A1%E6%9C%89%20ECT%20%E5%B7%A5%E5%85%B7%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E9%85%8D%E7%BD%AE%20L2%20%E6%9F%A5%E6%89%BE%E8%A1%A8%EF%BC%9FL2%20%E6%9F%A5%E6%89%BE%E8%A1%A8%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87%20ECT%20%E5%B7%A5%E5%85%B7%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%EF%BC%9F%E5%A6%82%E4%BD%95%E6%89%A7%E8%A1%8C%E6%AD%A4%E6%93%8D%E4%BD%9C%EF%BC%9F%3CBR%20%2F%3E%E5%8F%AF%E4%BB%A5%E7%BB%99%E6%88%91%E4%B8%BE%E4%B8%AA%E4%BE%8B%E5%AD%90%E5%90%97%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3EAtkinson%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2122860%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2122860%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%3E%3C!--ScriptorStartFragment--%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%E8%AF%B7%E5%85%81%E8%AE%B8%E6%88%91%E9%80%90%E7%82%B9%E5%9B%9E%E7%AD%94%E6%82%A8%E7%9A%84%E9%97%AE%E9%A2%98%EF%BC%9A%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%26nbsp%3B%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E1.%22%E8%83%BD%E5%90%A6%E6%8F%90%E4%BE%9B%E9%9D%99%E6%80%81%E9%85%8D%E7%BD%AE%E7%9A%84%E6%B5%81%E7%A8%8B%E5%9B%BE%EF%BC%9F%22%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%E5%A6%82%E6%9E%9C%20AN12925%20%E6%88%96%20UM11107%20%E4%B8%AD%E6%B2%A1%E6%9C%89%E6%B6%89%E5%8F%8A%EF%BC%8C%E9%82%A3%E4%B9%88%E5%BE%88%E9%81%97%E6%86%BE%EF%BC%8C%E5%AE%83%E5%B0%B1%E4%B8%8D%E6%98%AF%E5%85%AC%E5%BC%80%E4%BF%A1%E6%81%AF%E3%80%82%E5%86%85%E9%83%A8%E6%B5%81%E7%A8%8B%E6%98%AF%E5%AE%9E%E6%96%BD%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86%EF%BC%8C%E4%B8%8D%E8%83%BD%E5%85%B1%E4%BA%AB%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CBR%20%2F%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E2.%22%E9%9D%99%E6%80%81%E9%85%8D%E7%BD%AE%E5%92%8C%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%E4%BD%BF%E7%94%A8%E7%9B%B8%E5%90%8C%E7%9A%84%E5%AF%84%E5%AD%98%E5%99%A8%E5%90%97%EF%BC%9F%22%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%E4%BB%8E%E7%94%A8%E6%88%B7%E5%B1%82%E9%9D%A2%E6%9D%A5%E7%9C%8B%EF%BC%8C%E8%BF%99%E6%98%AF%E4%B8%80%E4%B8%AA%E5%90%88%E7%90%86%E7%9A%84%E5%81%87%E8%AE%BE%E3%80%82%E4%B8%8D%E8%BF%87%EF%BC%8C%22%E5%AF%84%E5%AD%98%E5%99%A8%22%20%E8%BF%99%E4%B8%80%E6%9C%AF%E8%AF%AD%E5%8F%AA%E6%98%AF%E4%B8%80%E7%A7%8D%E7%AE%80%E5%8C%96--%E5%AE%9E%E9%99%85%E5%AE%9E%E7%8E%B0%E6%9B%B4%E4%B8%BA%E5%A4%8D%E6%9D%82%EF%BC%8C%E7%94%B1%E5%86%85%E9%83%A8%20IP%20%E5%9D%97%E5%A4%84%E7%90%86%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CP%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%3E3.%22%E5%9C%A8%E5%93%AA%E9%87%8C%E5%8F%AF%E4%BB%A5%E6%89%BE%E5%88%B0%E9%9D%99%E6%80%81%E9%85%8D%E7%BD%AE%E7%9A%84%E7%94%9F%E6%88%90%E4%BB%A3%E7%A0%81%EF%BC%9F%22%3C%2FSPAN%3E%3C%2FP%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%E5%A6%82%E6%9E%9C%E6%82%A8%E4%BD%BF%E7%94%A8%E7%9A%84%E6%98%AF%E5%B8%A6%E6%9C%89%20SJA1110%20SDK%20%E7%9A%84%20S32%20Design%20Studio%EF%BC%8C%E8%BE%93%E5%87%BA%E6%96%87%E4%BB%B6%E9%80%9A%E5%B8%B8%E4%B8%BA%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CUL%3E%0A%3CLI%3E%3CSPAN%3EDebug_FLASH%5Cflash_image.bin%20-%20%E5%8C%85%E5%90%AB%E4%BA%A4%E6%8D%A2%E6%9C%BA%E6%A0%B8%E5%BF%83%E9%85%8D%E7%BD%AE%E5%92%8C%20MCU%20%E5%86%85%E9%83%A8%E4%BB%A3%E7%A0%81%E3%80%82%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%3E%E6%9D%BF%5CswitchCore_0_config.hex%20%E2%80%94%20%E5%8C%85%E5%90%AB%E9%80%9A%E7%94%A8%E5%8A%A0%E8%BD%BD%E5%99%A8%E6%A0%BC%E5%BC%8F%E7%9A%84%E4%BA%A4%E6%8D%A2%E6%9C%BA%E6%A0%B8%E5%BF%83%E9%85%8D%E7%BD%AE%EF%BC%8C%E5%A6%82%20UM11107%20%E4%BF%AE%E8%AE%A2%E7%89%88%E5%9B%BE%20102%20%E6%89%80%E7%A4%BA%E3%80%822.0.%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3E%3CSPAN%3E%3C%2FSPAN%3E%3CSPAN%3E4%E3%80%82%22%20%E5%90%AF%E5%8A%A8%E6%97%B6%E9%85%8D%E7%BD%AE%E6%98%AF%E5%90%A6%E4%BD%9C%E4%B8%BA%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%E5%8A%A0%E8%BD%BD%EF%BC%9F%3C%2FSPAN%3E%22%3C%2FP%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%E6%98%AF%E7%9A%84%EF%BC%8C%E6%B2%A1%E9%94%99%E3%80%82%E8%AF%A5%E9%85%8D%E7%BD%AE%E8%A2%AB%E7%BC%96%E8%AF%91%E6%88%90%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%E5%B9%B6%E5%9C%A8%E7%B3%BB%E7%BB%9F%E5%90%AF%E5%8A%A8%E6%9C%9F%E9%97%B4%E5%8A%A0%E8%BD%BD%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CP%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2122215%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2122215%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%82%A8%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%20%3CBR%20%2F%3E%3CBR%20%2F%3E%E4%B8%BA%E4%BA%86%E6%B7%B1%E5%85%A5%E4%BA%86%E8%A7%A3%E9%9D%99%E6%80%81%E9%85%8D%E7%BD%AE%3CBR%20%2F%3E%EF%BC%8C%E6%82%A8%E8%83%BD%E5%90%A6%E6%8F%90%E4%BE%9B%E9%9D%99%E6%80%81%E9%85%8D%E7%BD%AE%E7%9A%84%E6%B5%81%E7%A8%8B%E5%9B%BE%EF%BC%9F%20%3C%2FP%3E%3CP%3E%E9%9D%99%E6%80%81%E5%92%8C%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%E6%98%AF%E5%90%A6%E4%BD%BF%E7%94%A8%E7%9B%B8%E5%90%8C%E7%9A%84%E5%AF%84%E5%AD%98%E5%99%A8%E6%9D%A5%E5%AD%98%E5%82%A8%E6%95%B0%E6%8D%AE%EF%BC%9F%3CBR%20%2F%3E%E5%9C%A8%E9%9D%99%E6%80%81%E9%85%8D%E7%BD%AE%E4%B8%AD%E7%94%9F%E6%88%90%E4%BB%A3%E7%A0%81%E5%90%8E%E6%88%91%E5%8F%AF%E4%BB%A5%E5%9C%A8%E5%93%AA%E4%B8%AA%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9C%8B%E5%88%B0%E4%BB%A3%E7%A0%81%EF%BC%9F%3CBR%20%2F%3E%E9%82%A3%E4%B9%88%E4%BD%A0%E6%98%AF%E8%AF%B4%E7%B3%BB%E7%BB%9F%E5%90%AF%E5%8A%A8%E6%97%B6%E7%94%9F%E6%88%90%E7%9A%84%E8%A1%A8%E9%85%8D%E7%BD%AE%E5%B0%86%E4%BD%9C%E4%B8%BA%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%E5%8A%A0%E8%BD%BD%E4%BB%A5%E4%BE%9B%E4%BD%BF%E7%94%A8%EF%BC%9F%E6%88%91%E8%AF%B4%E5%BE%97%E5%AF%B9%E5%90%97%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%E9%97%AE%E5%80%99%3CBR%20%2F%3E%E9%98%BF%E7%89%B9%E9%87%91%E6%A3%AE%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2122212%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2122212%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%3CSPAN%3E%3C!--ScriptorStartFragment--%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%E6%88%91%E7%9B%B8%E4%BF%A1%20AN12925%EF%BC%8C%E7%89%B9%E5%88%AB%E6%98%AF%E7%AC%AC%205.1%20%E7%AB%A0%20%3C%2FSPAN%3E%3CSPAN%3E%22%E9%9D%99%E6%80%81%E5%92%8C%E5%8A%A8%E6%80%81%E4%BA%A4%E6%8D%A2%E6%9C%BA%E9%85%8D%E7%BD%AE%22%3C%2FSPAN%3E%3CSPAN%3E%E5%BE%88%E5%A5%BD%E5%9C%B0%E6%A6%82%E8%BF%B0%E4%BA%86%20SJA1110%20%E7%B3%BB%E7%BB%9F%E5%A6%82%E4%BD%95%E5%A4%84%E7%90%86%E9%9D%99%E6%80%81%E5%92%8C%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CP%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%E7%AE%80%E5%8D%95%E8%AF%B4%E6%98%8E%E4%B8%80%E4%B8%8B%EF%BC%9A%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E-%20%E7%B3%BB%E7%BB%9F%E5%90%AF%E5%8A%A8%E6%97%B6%E5%A7%8B%E7%BB%88%E4%BD%BF%E7%94%A8%E7%BC%96%E8%AF%91%E5%88%B0%E5%9B%BA%E4%BB%B6%E6%98%A0%E5%83%8F%E4%B8%AD%E7%9A%84%E9%9D%99%E6%80%81%E9%85%8D%E7%BD%AE%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E-%20%E5%9C%A8%E5%88%9D%E5%A7%8B%E5%8C%96%E8%BF%87%E7%A8%8B%E4%B8%AD%EF%BC%8C%E8%AF%A5%E9%85%8D%E7%BD%AE%E8%A2%AB%E5%8A%A0%E8%BD%BD%E5%88%B0%E5%86%85%E9%83%A8%E5%AD%98%E5%82%A8%E5%99%A8%E4%B8%AD%EF%BC%8C%E5%B9%B6%E5%9C%A8%E9%82%A3%E9%87%8C%E8%BF%9B%E8%A1%8C%E5%A4%84%E7%90%86%E5%92%8C%E7%94%A8%E4%BA%8E%E9%85%8D%E7%BD%AE%E4%BA%A4%E6%8D%A2%E6%9C%BA%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E-%20%E5%A6%82%E6%9E%9C%E4%BD%BF%E7%94%A8%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%EF%BC%8C%E5%88%99%E5%9C%A8%E9%9D%99%E6%80%81%E8%AE%BE%E7%BD%AE%E7%9A%84%E5%9F%BA%E7%A1%80%E4%B8%8A%E8%BF%9B%E8%A1%8C%E6%93%8D%E4%BD%9C%EF%BC%88%E9%80%9A%E5%B8%B8%E9%80%9A%E8%BF%87%E4%B8%BB%E6%9C%BA%E5%B7%A5%E5%85%B7%E6%88%96%E8%84%9A%E6%9C%AC%EF%BC%89%EF%BC%8C%E5%B9%B6%E5%AD%98%E5%82%A8%E5%9C%A8%E5%86%85%E9%83%A8%E5%AD%98%E5%82%A8%E5%99%A8%E4%B8%AD%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CP%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CDIV%20class%3D%22scriptor-paragraph%22%3E%3CSPAN%3E%E5%86%85%E9%83%A8%E5%A6%82%E4%BD%95%E5%A4%84%E7%90%86%E9%85%8D%E7%BD%AE%E3%80%81%E9%9C%80%E8%A6%81%E5%A4%9A%E9%95%BF%E6%97%B6%E9%97%B4%E6%88%96%20IP%20%E5%A6%82%E4%BD%95%E5%A4%84%E7%90%86%E9%85%8D%E7%BD%AE%E7%AD%89%E7%BB%86%E8%8A%82%E5%B1%9E%E4%BA%8E%E5%86%85%E9%83%A8%E5%AE%9E%E6%96%BD%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86%EF%BC%8C%E4%B8%8D%E5%85%AC%E5%BC%80%E8%AE%B0%E5%BD%95%E3%80%82%3C%2FSPAN%3E%3C%2FDIV%3E%0A%3CP%3E%3CLI-WRAPPER%3E%3CSPAN%3E%3C!--ScriptorEndFragment--%3E%3C%2FSPAN%3E%3C%2FLI-WRAPPER%3E%3C%2FP%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2121364%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2121364%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%20%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%E6%88%91%E6%83%B3%E4%BA%86%E8%A7%A3%EF%BC%8C%3CBR%20%2F%3E%E5%BD%93%E6%88%91%E4%BB%AC%E4%BD%BF%E7%94%A8%E7%9B%B8%E5%BA%94%E7%9A%84%E9%85%8D%E7%BD%AE%EF%BC%88%E4%BE%8B%E5%A6%82%20MAC%E3%80%81SRCPORT%E3%80%81DSTPORT%E3%80%81CB_ON_DEST%E3%80%81CB_SID_IN%EF%BC%89%E9%85%8D%E7%BD%AE%20L2%20%E6%9F%A5%E8%AF%A2%E8%A1%A8%E6%97%B6%EF%BC%8C%E5%BD%93%E6%88%91%E4%BB%AC%E9%9D%99%E6%80%81%E9%85%8D%E7%BD%AE%E6%AD%A4%E9%85%8D%E7%BD%AE%E5%B9%B6%E6%9B%B4%E6%96%B0%E4%BB%A3%E7%A0%81%E6%97%B6%EF%BC%8C%E8%BF%99%E4%BA%9B%E9%85%8D%E7%BD%AE%E6%98%AF%3CBR%20%2F%3E%E5%A6%82%E4%BD%95%E5%86%85%E9%83%A8%E9%85%8D%E7%BD%AE%E7%9A%84%20%26amp%3B%20%E9%85%8D%E7%BD%AE%E5%9C%A8%E5%93%AA%E9%87%8C%E9%85%8D%E7%BD%AE%3CBR%20%2F%3E%E5%BD%93%E6%88%91%E4%BB%AC%E8%BF%99%E6%A0%B7%E9%85%8D%E7%BD%AE%E5%8A%A0%E8%BD%BD%E8%BF%99%E4%BA%9B%E9%85%8D%E7%BD%AE%E6%97%B6%E4%BE%8B%E5%A6%82%EF%BC%9A%E5%BD%93%E7%B3%BB%E7%BB%9F%E5%90%AF%E5%8A%A8%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%E6%97%B6%E8%BF%99%E4%B8%AA%E4%B8%9C%E8%A5%BF%E6%98%AF%E5%90%A6%E5%AD%98%E5%82%A8%E4%B8%BA%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%E6%96%87%E4%BB%B6%E9%9A%8F%E7%9D%80%E9%85%8D%E7%BD%AE%E7%9A%84%E5%8A%A0%E8%BD%BD%E6%88%96%E8%80%85%E4%BB%A5%E4%B8%8D%E5%90%8C%E7%9A%84%E6%96%B9%E5%BC%8F%3CBR%20%2F%3E%E5%A6%82%E4%BD%95%E5%9C%A8%E4%BB%A3%E7%A0%81%E4%B8%AD%E4%BD%BF%E7%94%A8%E8%BF%99%E4%B8%AA%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E4%BD%A0%3CBR%20%2F%3E%E8%83%BD%E7%BB%99%E6%88%91%E7%AE%80%E8%A6%81%E8%A7%A3%E9%87%8A%E4%B8%80%E4%B8%8B%E8%BF%99%E4%B8%AA%E9%9D%99%E6%80%81%E5%92%8C%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%E5%9C%A8%E8%BF%90%E8%A1%8C%E6%97%B6%E6%98%AF%3CBR%20%2F%3E%E5%A6%82%E4%BD%95%E5%B7%A5%E4%BD%9C%E7%9A%84%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3EAtkinson%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2115887%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2115887%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E6%9C%80%E5%BF%AB%E7%9A%84%E6%96%B9%E6%B3%95%E6%98%AF%E4%BB%8E%20SJA1110-EVM%20%E4%B8%AD%E6%B1%B2%E5%8F%96%E7%81%B5%E6%84%9F%EF%BC%8C%E5%8C%85%E6%8B%AC%E7%A1%AC%E4%BB%B6%EF%BC%88%E5%8E%9F%E7%90%86%E5%9B%BE%EF%BC%89%E5%92%8C%E8%BD%AF%E4%BB%B6%EF%BC%88%E6%9D%A5%E8%87%AA%20sja1110evm_hosttools%20%E7%9A%84%20Python%20%E5%B7%A5%E5%85%B7%EF%BC%89%E3%80%82%E8%BF%99%E5%8F%AF%E4%BB%A5%E4%BD%9C%E4%B8%BA%E5%8A%A0%E9%80%9F%E5%BC%80%E5%8F%91%E7%9A%84%E5%8F%AF%E9%9D%A0%E5%8F%82%E8%80%83%E7%82%B9%E3%80%82%3C%2FP%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2115864%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2115864%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%20%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233505%22%20target%3D%22_blank%22%3E%40PavelL%3C%2FA%3E%20%E4%BD%A0%3CBR%20%2F%3E%E8%83%BD%E4%B8%8D%E8%83%BD%E5%90%91%E6%88%91%E6%8F%90%E4%BE%9B%E6%9B%B4%E5%A4%9A%E5%85%B3%E4%BA%8E%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%20SPI%20%E8%AE%BF%E9%97%AE%E5%AF%84%E5%AD%98%E5%99%A8%E7%9A%84%E8%AF%A6%E7%BB%86%E4%BF%A1%E6%81%AF%3CBR%20%2F%3E%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%20SPI%20%E9%80%9A%E8%BF%87%E4%BB%BB%E4%BD%95%E5%A4%96%E9%83%A8%E8%AE%BE%E5%A4%87%E6%9B%B4%E6%94%B9%E5%80%BC%E6%88%91%E4%BB%AC%E9%9C%80%E8%A6%81%E6%9B%B4%E6%94%B9%E4%BB%B7%E5%80%BC%E8%A7%82%E7%9A%84%E6%9B%B4%E5%A4%9A%E7%BB%86%E8%8A%82%E9%97%AE%E5%80%99%E9%98%BF%E7%89%B9%E9%87%91%E6%A3%AE%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2115860%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2115860%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3EECT%20%E6%8C%87%E4%BB%A5%E5%A4%AA%E7%BD%91%E9%85%8D%E7%BD%AE%E5%B7%A5%E5%85%B7%E3%80%82%E5%AE%83%E5%85%81%E8%AE%B8%E6%82%A8%E5%9C%A8%E7%BA%BF%E9%85%8D%E7%BD%AE%20SJA1110%EF%BC%8C%E6%97%A0%E9%9C%80%E9%97%AA%E5%B1%8F%E3%80%82%3C%2FP%3E%0A%3CP%3E%E8%AE%BF%E9%97%AE%20SJA1110%20%E5%AF%84%E5%AD%98%E5%99%A8%E7%9A%84%E5%8F%A6%E4%B8%80%E7%A7%8D%E6%96%B9%E6%B3%95%E6%98%AF%E9%80%9A%E8%BF%87%20SPI%E3%80%82%3CSPAN%3E%E7%94%B1%E4%BA%8E%E5%AF%84%E5%AD%98%E5%99%A8%E8%AE%BF%E9%97%AE%E5%B9%B6%E4%B8%8D%E6%80%BB%E6%98%AF%E5%BE%88%E7%AE%80%E5%8D%95%EF%BC%8C%E6%82%A8%E4%B9%9F%E5%8F%AF%E4%BB%A5%E5%8F%82%E8%80%83%20SJA1110-EVM%20%E7%9A%84%E9%85%8D%E5%A5%97%20Python%20%E8%84%9A%E6%9C%AC%E3%80%82%E5%AE%83%E6%8F%90%E4%BE%9B%E4%BA%86%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%20SPI%20%E8%AE%BF%E9%97%AE%E5%90%84%E7%A7%8D%E5%AF%84%E5%AD%98%E5%99%A8%E7%9A%84%E6%B8%85%E6%99%B0%E8%A7%86%E5%9B%BE%E3%80%82%3C%2FSPAN%3E%3CBR%20clear%3D%22none%22%20%2F%3E%3CSPAN%3EPython%20%E5%B7%A5%E5%85%B7%E5%8F%AF%E5%9C%A8%20SJA1110-EVM%20%E4%B8%BB%E9%A1%B5%E7%9A%84%20%E2%80%9C%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fwww.nxp.com%2Fdesign%2Fdesign-center%2Fdevelopment-boards-and-designs%2FSJA1110-EVM%22%20target%3D%22_blank%22%20rel%3D%22noopener%20nofollow%20noreferrer%22%20shape%3D%22rect%22%3ESJA1110-EVM%20%E8%AF%84%E4%BC%B0%E6%9D%BF%20%7C%20%E6%81%A9%E6%99%BA%E6%B5%A6%E5%8D%8A%E5%AF%BC%E4%BD%93%3C%2FA%3E%E2%80%9D%20%E7%9A%84%20%3CSPAN%3E%E2%80%9C%E8%BD%AF%E4%BB%B6%EF%BC%8C%E5%AE%89%E5%85%A8%E6%96%87%E4%BB%B6%E2%80%9D%20%E4%B8%8B%E6%96%B9%3C%2FSPAN%3E%E6%89%BE%E5%88%B0%E3%80%82%3C%2FP%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2115829%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2115829%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CBR%20%2F%3EECT%3CBR%20%2F%3E%E7%9A%84%E5%85%A8%E7%A7%B0%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F%E6%98%AF%E5%90%A6%E6%9C%89%E5%85%B6%E4%BB%96%E6%96%B9%E6%B3%95%E6%9D%A5%E8%AE%BF%E9%97%AE%E5%AF%84%E5%AD%98%E5%99%A8%EF%BC%8C%E4%BB%A5%E8%AF%BB%E5%8F%96%E5%92%8C%E5%86%99%E5%85%A5%E5%AF%84%E5%AD%98%E5%99%A8%E4%B8%AD%E7%9A%84%E5%80%BC%EF%BC%8C%E8%80%8C%E4%B8%8D%E6%98%AF%20ECT%3CBR%20%2F%3E%3CBR%20%2F%3E%EF%BC%9F%3CBR%20%2F%3EAtkinson%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2115349%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Register%20access%20for%20SJA1110%20Switch%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2115349%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F248906%22%20target%3D%22_blank%22%3E%40Atkinson%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E8%AF%B7%E5%AE%A1%E9%98%85%EF%BC%9A%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3EAN12925%20-%20%E7%AC%AC%205.1.3%20%E7%AB%A0%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%E7%A4%BA%E4%BE%8B%3C%2FLI%3E%0A%3CLI%3EECT%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%E6%BA%90%E4%BB%A3%E7%A0%81%20-%20src%2Fdynamic_switch_configuration.c%20-%20%E4%BE%8B%E5%A6%82%20SJA1110_SetL2LookupTableEntry%3C%2FLI%3E%0A%3CLI%3Esja1110evm_hosttools_v1.2%5CSJA1110EVM%5Cwrite_l2_lookup_table.py%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3E%E9%A1%BA%E7%A5%9D%E5%95%86%E7%A5%BA%EF%BC%81%3C%2FP%3E%0A%3CP%3E%E5%B8%95%E7%BB%B4%E5%B0%94%3C%2FP%3E%3C%2FLINGO-BODY%3E