增加代码,测试增加的ebmmu * 16

This commit is contained in:
2025-08-06 18:46:04 +08:00
parent a66761f173
commit 278c98c3d1
2 changed files with 385 additions and 81 deletions

View File

@@ -18,7 +18,7 @@ if __name__ == '__main__':
#add_tc_2_runlist(base.tc4()) #add_tc_2_runlist(base.tc4())
#add_tc_2_runlist(base.tc5()) #add_tc_2_runlist(base.tc5())
#add_tc_2_runlist(base.tc6()) #add_tc_2_runlist(base.tc6())
add_tc_2_runlist(base.tc7()) #add_tc_2_runlist(base.tc7())
#add_tc_2_runlist(base.tc8()) #add_tc_2_runlist(base.tc8())
#add_tc_2_runlist(base.tc9()) #add_tc_2_runlist(base.tc9())
#add_tc_2_runlist(base.tc10()) #add_tc_2_runlist(base.tc10())
@@ -34,7 +34,7 @@ if __name__ == '__main__':
#add_tc_2_runlist(base.tc20()) #add_tc_2_runlist(base.tc20())
#add_tc_2_runlist(base.tc21()) #add_tc_2_runlist(base.tc21())
#add_tc_2_runlist(base.tc22()) #add_tc_2_runlist(base.tc22())
add_tc_2_runlist(base.tc23()) #add_tc_2_runlist(base.tc23())
@@ -63,7 +63,7 @@ if __name__ == '__main__':
#add_tc_2_runlist(ebmmu.tc12()) #add_tc_2_runlist(ebmmu.tc12())
#add_tc_2_runlist(ebmmu.tc13()) #add_tc_2_runlist(ebmmu.tc13())
#add_tc_2_runlist(ebmmu.tc14()) #add_tc_2_runlist(ebmmu.tc14())
#add_tc_2_runlist(ebmmu.tc15()) add_tc_2_runlist(ebmmu.tc15())
#add_tc_2_runlist(ebmmu.tc16()) #add_tc_2_runlist(ebmmu.tc16())

View File

@@ -1596,7 +1596,7 @@ def tc15():
gen_file_def = "ebmmu_tc15" gen_file_def = "ebmmu_tc15"
sm_idx = 0 sm_idx = 0
tc_des = "测试8个ebmmu全配置下运行每两个ebmmu对应一个sm。每个ebmmu必须对齐、足长的写入\\n" \ tc_des = "测试16个ebmmu全配置下运行每两个ebmmu对应一个sm。每个ebmmu必须对齐、足长的写入\\n" \
+ "对应的sm才能正常工作。QSPI/SPI侧能正常的读到相关的数据。" + "对应的sm才能正常工作。QSPI/SPI侧能正常的读到相关的数据。"
#-------------------------------------------------------------------------- #--------------------------------------------------------------------------
@@ -1612,50 +1612,124 @@ def tc15():
data = [0,] * 256 data = [0,] * 256
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 0, taddr, 0x0800, sm_size / 2, 0x2, 0x1) ebmmu_offset = 0
setting_ebmmu_regs(data, 1, taddr + sm_size / 2, 0x0800 + sm_size / 2, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x0800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 2, taddr, 0x1800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 3, taddr + sm_size / 2, 0x1800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x1800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 4, taddr, 0x2800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 5, taddr + sm_size / 2, 0x2800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x2800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 6, taddr, 0x3800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 7, taddr + sm_size / 2, 0x3800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x3800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
genPkt.addSubPkt(0x1, 0, 0x0200, 0x1, 80, data) genPkt.addSubPkt(0x1, 0, 0x0200, 0x1, 160, data)
#subPkt参数索引、索引类型、地址、命令、长度、数据 #subPkt参数索引、索引类型、地址、命令、长度、数据
data = [0,] * 256 data = [0,] * 256
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 0, taddr, 0x0800, sm_size / 2, 0x2, 0x1) ebmmu_offset = 0
setting_ebmmu_regs(data, 1, taddr + sm_size / 2, 0x0800 + sm_size / 2, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x0800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 2, taddr, 0x1800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 3, taddr + sm_size / 2, 0x1800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x1800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 4, taddr, 0x2800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 5, taddr + sm_size / 2, 0x2800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x2800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 6, taddr, 0x3800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 7, taddr + sm_size / 2, 0x3800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x3800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
genPkt.addSubPkt(0x2, 0, 0x0200, 0x1, 80, data) genPkt.addSubPkt(0x2, 0, 0x0200, 0x1, 160, data)
#subPkt参数索引、索引类型、地址、命令、长度、数据 #subPkt参数索引、索引类型、地址、命令、长度、数据
@@ -1663,25 +1737,62 @@ def tc15():
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 0, taddr, 0x0800, sm_size / 2, 0x2, 0x1) ebmmu_offset = 0
setting_ebmmu_regs(data, 1, taddr + sm_size / 2, 0x0800 + sm_size / 2, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x0800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 2, taddr, 0x1800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 3, taddr + sm_size / 2, 0x1800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x1800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 4, taddr, 0x2800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 5, taddr + sm_size / 2, 0x2800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x2800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 6, taddr, 0x3800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 7, taddr + sm_size / 2, 0x3800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x3800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
genPkt.addSubPkt(0x3, 0, 0x0200, 0x1, 80, data) genPkt.addSubPkt(0x3, 0, 0x0200, 0x1, 160, data)
#subPkt参数索引、索引类型、地址、命令、长度、数据 #subPkt参数索引、索引类型、地址、命令、长度、数据
@@ -1689,25 +1800,62 @@ def tc15():
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 0, taddr, 0x0800, sm_size / 2, 0x2, 0x1) ebmmu_offset = 0
setting_ebmmu_regs(data, 1, taddr + sm_size / 2, 0x0800 + sm_size / 2, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x0800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 2, taddr, 0x1800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 3, taddr + sm_size / 2, 0x1800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x1800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 4, taddr, 0x2800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 5, taddr + sm_size / 2, 0x2800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x2800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 6, taddr, 0x3800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 7, taddr + sm_size / 2, 0x3800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x3800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
genPkt.addSubPkt(0x4, 0, 0x0200, 0x1, 80, data) genPkt.addSubPkt(0x4, 0, 0x0200, 0x1, 160, data)
data = [0,] * 2 data = [0,] * 2
data[0] = (sm_size >> 0) & 0xff data[0] = (sm_size >> 0) & 0xff
@@ -1791,7 +1939,7 @@ def tc16():
gen_file_def = "ebmmu_tc16" gen_file_def = "ebmmu_tc16"
sm_idx = 0 sm_idx = 0
tc_des = "测试8个ebmmu全配置下运行每两个ebmmu对应一个sm。每个ebmmu必须对齐、足长的写入\\n" \ tc_des = "测试16个ebmmu全配置下运行每两个ebmmu对应一个sm。每个ebmmu必须对齐、足长的写入\\n" \
+ "对应的sm才能正常工作。两次写入数据复位设备1的SM1SM1状态复原不能读取到有效的数据。\\n"\ + "对应的sm才能正常工作。两次写入数据复位设备1的SM1SM1状态复原不能读取到有效的数据。\\n"\
+ "测试用例能成功运行完毕除设备1的SM1其余的SMx都能获得正确的数据。\\n\\n" \ + "测试用例能成功运行完毕除设备1的SM1其余的SMx都能获得正确的数据。\\n\\n" \
+ "检查内容ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序" + "检查内容ebmmu工作状态、回包工作计数、SMx的状态、中断状态、统计信息、相关时序"
@@ -1807,50 +1955,128 @@ def tc16():
data = [0,] * 256 data = [0,] * 256
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 0, taddr, 0x0800, sm_size / 2, 0x2, 0x1) ebmmu_offset = 0
setting_ebmmu_regs(data, 1, taddr + sm_size / 2, 0x0800 + sm_size / 2, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x0800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 2, taddr, 0x1800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 3, taddr + sm_size / 2, 0x1800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x1800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x1800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 4, taddr, 0x2800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 5, taddr + sm_size / 2, 0x2800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x2800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset + i, hex(taddr + i * int(sm_size / 4)), hex(0x2800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 6, taddr, 0x3800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 7, taddr + sm_size / 2, 0x3800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x3800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x3800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
genPkt.addSubPkt(0x1, 0, 0x0200, 0x1, 80, data) genPkt.addSubPkt(0x1, 0, 0x0200, 0x1, 160, data)
#subPkt参数索引、索引类型、地址、命令、长度、数据 #subPkt参数索引、索引类型、地址、命令、长度、数据
data = [0,] * 256 data = [0,] * 256
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 0, taddr, 0x0800, sm_size / 2, 0x2, 0x1) ebmmu_offset = 0
setting_ebmmu_regs(data, 1, taddr + sm_size / 2, 0x0800 + sm_size / 2, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x0800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 2, taddr, 0x1800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 3, taddr + sm_size / 2, 0x1800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x1800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x1800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 4, taddr, 0x2800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 5, taddr + sm_size / 2, 0x2800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x2800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset + i, hex(taddr + i * int(sm_size / 4)), hex(0x2800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 6, taddr, 0x3800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 7, taddr + sm_size / 2, 0x3800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x3800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x3800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
genPkt.addSubPkt(0x2, 0, 0x0200, 0x1, 80, data) genPkt.addSubPkt(0x2, 0, 0x0200, 0x1, 160, data)
#subPkt参数索引、索引类型、地址、命令、长度、数据 #subPkt参数索引、索引类型、地址、命令、长度、数据
@@ -1858,25 +2084,64 @@ def tc16():
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 0, taddr, 0x0800, sm_size / 2, 0x2, 0x1) ebmmu_offset = 0
setting_ebmmu_regs(data, 1, taddr + sm_size / 2, 0x0800 + sm_size / 2, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x0800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 2, taddr, 0x1800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 3, taddr + sm_size / 2, 0x1800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x1800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x1800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 4, taddr, 0x2800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 5, taddr + sm_size / 2, 0x2800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x2800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset + i, hex(taddr + i * int(sm_size / 4)), hex(0x2800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 6, taddr, 0x3800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 7, taddr + sm_size / 2, 0x3800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x3800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x3800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
genPkt.addSubPkt(0x3, 0, 0x0200, 0x1, 80, data) genPkt.addSubPkt(0x3, 0, 0x0200, 0x1, 160, data)
#subPkt参数索引、索引类型、地址、命令、长度、数据 #subPkt参数索引、索引类型、地址、命令、长度、数据
@@ -1884,25 +2149,64 @@ def tc16():
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 0, taddr, 0x0800, sm_size / 2, 0x2, 0x1) ebmmu_offset = 0
setting_ebmmu_regs(data, 1, taddr + sm_size / 2, 0x0800 + sm_size / 2, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x0800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x0800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 2, taddr, 0x1800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 3, taddr + sm_size / 2, 0x1800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x1800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x1800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 4, taddr, 0x2800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 5, taddr + sm_size / 2, 0x2800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x2800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset + i, hex(taddr + i * int(sm_size / 4)), hex(0x2800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
addr_off = addr_off + sm_size addr_off = addr_off + sm_size
taddr = addr + addr_off taddr = addr + addr_off
setting_ebmmu_regs(data, 6, taddr, 0x3800, sm_size / 2, 0x2, 0x1) for i in range(4):
setting_ebmmu_regs(data, 7, taddr + sm_size / 2, 0x3800 + sm_size / 2, sm_size / 2, 0x2, 0x1) setting_ebmmu_regs(data,
ebmmu_offset,
taddr + i * int(sm_size / 4),
0x3800 + i * int(sm_size / 4),
sm_size / 4,
0x2,
0x1
)
#print(ebmmu_offset, hex(taddr + i * int(sm_size / 4)), hex(0x3800 + i * int(sm_size / 4)))
ebmmu_offset = ebmmu_offset + 1
genPkt.addSubPkt(0x4, 0, 0x0200, 0x1, 80, data) genPkt.addSubPkt(0x4, 0, 0x0200, 0x1, 160, data)
data = [0,] * 2 data = [0,] * 2
data[0] = (sm_size >> 0) & 0xff data[0] = (sm_size >> 0) & 0xff