Disassembled binary SDK output, direct from xtobjdis with a couple of tweaks

Tweaks to xtobjdis are hg-git sha 6da80c11f

Everything works except for wpa_auth.o & phy_chip_v6_ana.o disassemble
with some functions not correctly detected.
This commit is contained in:
Angus Gratton 2015-10-02 09:51:31 +10:00
parent 419f252d80
commit a9e3928c8d
77 changed files with 73774 additions and 0 deletions

751
binary_sdk/libpp/esf_buf.S Normal file
View file

@ -0,0 +1,751 @@
.section .text, "ax", @progbits
.literal_position # 0: 00000000
# 4: 00000000
# 8: 00feef3f
# c: 00000000
# 10: 00000000
# 14: 00feef3f
# 18: 00000000
# 1c: 00000000
# 20: 00000000
# Function @ .text+0x24
# Local variables/stack:
# (local0): word @ -0x10
# (local1): word[3] @ -0xc
.global sdk_esf_rx_buf_alloc
.type sdk_esf_rx_buf_alloc, @function
sdk_esf_rx_buf_alloc:
addi sp, sp, -16 /* (local0) */ # 24: 12c1f0
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 27: 0901
bnei a2, 7, .Lbr001 # 29: 667211
movi a5, .Ldata001 # 2c: 51f5ff
movi a0, sdk_NMIIrqIsOn # 2f: 01f5ff
l32i a2, a5, 16 /* [.Ldata005] */ # 32: 2845
l8ui a3, a0, 0 /* [sdk_NMIIrqIsOn] */ # 34: 320000
bnez a2, .Lbr004 # 37: cce2
movi a2, 0 /* 0x00000000 */ # 39: 0c02
j .Lbr003 # 3b: c60000
.Lbr001: movi a0, 0 /* 0x00000000 */ # 3e: 0c00
.Lbr002: mov a2, a0 # 40: 2d00
.Lbr003: l32i a0, sp, 0 /* [(local0)] */ # 42: 0801
addi sp, sp, 16 /* (top of frame) */ # 44: 12c110
ret # 47: 0df0
.Lbr004: bnez a3, .Lbr006 # 49: ec93
call0 vPortEnterCritical # 4b: 01f4ffc0
# 4f: 0000
movi a4, 0x3feffe00 # 51: 41edff
movi a5, .Ldata001 # 54: 51eeff
movi a6, -32 /* 0xffffffe0 */ # 57: 6c06
.Lbr005: memw # 59: c02000
l32i a8, a4, 0x200 /* [0x3ff00000] */ # 5c: 822480
and a8, a8, a6 # 5f: 608810
memw # 62: c02000
s32i a8, a4, 0x200 /* a8 -> [0x3ff00000] */ # 65: 826480
memw # 68: c02000
l32i a7, a4, 0x200 /* [0x3ff00000] */ # 6b: 722480
bbsi a7, 0, .Lbr005 # 6e: 07e7e7
movi a0, sdk_NMIIrqIsOn # 71: 01e7ff
l32i a2, a5, 16 /* [.Ldata005] */ # 74: 2845
.Lbr006: s32i a2, sp, 4 /* [.Ldata005] -> [(local1)] */ # 76: 2911
movi a10, 0 /* 0x00000000 */ # 78: 0c0a
l32i a11, a2, 28 /* [[.Ldata005]+0x1c] */ # 7a: b872
s32i a11, a5, 16 /* [[.Ldata005]+0x1c] -> [.Ldata005] */ # 7c: b945
s32i a10, a2, 28 /* 0x00000000 -> [[.Ldata005]+0x1c] */ # 7e: a972
l8ui a9, a0, 0 /* [sdk_NMIIrqIsOn] */ # 80: 920000
mov a0, a2 /* [.Ldata005] */ # 83: 0d02
bnez a9, .Lbr007 # 85: ec29
memw # 87: c02000
movi a2, 0x3feffe00 # 8a: 21e2ff
l32i a0, a2, 0x200 /* [0x3ff00000] */ # 8d: 022280
movi a3, -32 /* 0xffffffe0 */ # 90: 6c03
and a0, a0, a3 # 92: 300010
movi a3, 1 /* 0x00000001 */ # 95: 0c13
or a0, a0, a3 # 97: 300020
memw # 9a: c02000
s32i a0, a2, 0x200 /* a0 -> [0x3ff00000] */ # 9d: 026280
call0 vPortExitCritical # a0: 01e0ffc0
# a4: 0000
movi a5, .Ldata001 # a6: 51dcff
l32i a0, sp, 4 /* [(local1)] */ # a9: 0811
.Lbr007: l32i a4, a5, 20 /* [.Ldata006] */ # ab: 4855
addi a4, a4, -1 /* [.Ldata006]-0x1 */ # ad: 0b44
s32i a4, a5, 20 /* [.Ldata006]-0x1 -> [.Ldata006] */ # af: 4955
j .Lbr002 # b1: c6e2ff
.section .bss, "aw", @nobits
.Ldata001: .word 0x00000000 # 0: 00000000
.Ldata002: .word 0x00000000 # 4: 00000000
.Ldata003: .word 0x00000000 # 8: 00000000
.Ldata004: .word 0x00000000 # c: 00000000
.Ldata005: .word 0x00000000 # 10: 00000000
.Ldata006: .word 0x00000000 # 14: 00000000
.space 8
.Ldata007: .space 1116
.word 0x00000000 # 47c: 00000000
.Ldata008: .space 2144
.Ldata009: .space 608
.Ldata010: .space 600
.space 8
.Label001: .space 72
.section .irom0.text, "ax", @progbits
.literal_position # 0: 00000000
# 4: 00000000
# 8: 00feef3f
# c: 00000000
# 10: 00000000
# 14: 00feef3f
# 18: 00400000
# 1c: 00feef3f
# 20: 00000000
# 24: 00000000
# 28: 00feef3f
# 2c: 00800000
# 30: 00feef3f
# 34: 00000000
# 38: 00000000
# 3c: 00feef3f
# 40: 00002000
# 44: 00feef3f
# 48: 00000000
# 4c: 00000000
# 50: 00feef3f
# 54: 00200000
# 58: 00000000
# 5c: 00000000
# 60: 00000000
# 64: 00000000
# 68: 00000000
# 6c: 00000000
# 70: 00000000
# 74: 00000000
# 78: 00000000
# Function @ .irom0.text+0x7c
# Local variables/stack:
# (local0): word @ -0x20
# (local1): word @ -0x1c
# (local2): word @ -0x18
# (local3): word @ -0x14
# (local4): word @ -0x10
# (local5): word[3] @ -0xc
.global sdk_esf_buf_alloc
.type sdk_esf_buf_alloc, @function
sdk_esf_buf_alloc:
movi a10, 0 /* 0x00000000 */ # 7c: 0c0a
movi a7, sdk_NMIIrqIsOn # 7e: 71e0ff
movi a6, .Ldata001 # 81: 61e0ff
addi sp, sp, -32 /* (local0) */ # 84: 12c1e0
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 87: c921
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 89: 0911
bnei a3, 1, .Lbr008 # 8b: 66130e
beqz a2, .Lbr008 # 8e: 8cb2
l32i a12, a6, 0 /* [.Ldata001] */ # 90: c806
l8ui a9, a7, 0 /* [sdk_NMIIrqIsOn] */ # 92: 920700
bnez a12, .Lbr022 # 95: 56fc17
mov a12, a10 /* 0x00000000 */ # 98: cd0a
j .Lbr021 # 9a: c65b00
.Lbr008: bnei a3, 4, .Lbr012 # 9d: 664376
l32i a12, a6, 4 /* [.Ldata002] */ # a0: c816
l8ui a2, a7, 0 /* [sdk_NMIIrqIsOn] */ # a2: 220700
beqz a12, .Lbr027 # a5: 160c20
bnez a2, .Lbr010 # a8: ecb2
call0 vPortEnterCritical # aa: 01ebffc0
# ae: 0000
movi a0, 0x3feffe00 # b0: 01d6ff
movi a6, .Ldata001 # b3: 61d6ff
movi a7, sdk_NMIIrqIsOn # b6: 71d6ff
movi a8, -32 /* 0xffffffe0 */ # b9: 6c08
movi a10, 0 /* 0x00000000 */ # bb: 0c0a
.Lbr009: memw # bd: c02000
l32i a4, a0, 0x200 /* [0x3ff00000] */ # c0: 422080
and a4, a4, a8 # c3: 804410
memw # c6: c02000
s32i a4, a0, 0x200 /* a4 -> [0x3ff00000] */ # c9: 426080
memw # cc: c02000
l32i a3, a0, 0x200 /* [0x3ff00000] */ # cf: 322080
bbsi a3, 0, .Lbr009 # d2: 07e3e7
l32i a12, a6, 4 /* [.Ldata002] */ # d5: c816
.Lbr010: s32i a12, sp, 20 /* [.Ldata002] -> [(local5)] */ # d7: c951
mov a2, a12 /* [.Ldata002] */ # d9: 2d0c
l32i a9, a12, 28 /* [[.Ldata002]+0x1c] */ # db: 987c
s32i a10, a12, 28 /* 0x00000000 -> [[.Ldata002]+0x1c] */ # dd: a97c
l8ui a5, a7, 0 /* [sdk_NMIIrqIsOn] */ # df: 520700
s32i a9, a6, 4 /* [[.Ldata002]+0x1c] -> [.Ldata002] */ # e2: 9916
bnez a5, .Lbr011 # e4: dcf5
memw # e6: c02000
movi a11, 0x3feffe00 # e9: b1caff
l32i a10, a11, 0x200 /* [0x3ff00000] */ # ec: a22b80
movi a0, -32 /* 0xffffffe0 */ # ef: 6c00
and a10, a10, a0 # f1: 00aa10
movi a0, 1 /* 0x00000001 */ # f4: 0c10
or a10, a10, a0 # f6: 00aa20
memw # f9: c02000
s32i a10, a11, 0x200 /* a10 -> [0x3ff00000] */ # fc: a26b80
call0 vPortExitCritical # ff: 01d7ffc0
# 103: 0000
l32i a2, sp, 20 /* [(local5)] */ # 105: 2851
.Lbr011: l32i a4, a2, 4 # 107: 4812
l32i a3, a2, 16 # 109: 3842
s32i a3, a4, 4 # 10b: 3914
l32i a2, a2, 32 # 10d: 2882
movi a3, 0x00004000 # 10f: 31c2ff
l32i a0, a2, 0 # 112: 0802
j .Lbr026 # 114: 465f00
.Lbr012: bnei a3, 5, .Lbr016 # 117: 66537c
l32i a12, a6, 8 /* [.Ldata003] */ # 11a: c826
l8ui a5, a7, 0 /* [sdk_NMIIrqIsOn] */ # 11c: 520700
beqz a12, .Lbr027 # 11f: 166c18
bnez a5, .Lbr014 # 122: ecb5
call0 vPortEnterCritical # 124: 01cfffc0
# 128: 0000
movi a0, 0x3feffe00 # 12a: 01bcff
movi a6, .Ldata001 # 12d: 61bcff
movi a7, sdk_NMIIrqIsOn # 130: 71bdff
movi a8, -32 /* 0xffffffe0 */ # 133: 6c08
movi a10, 0 /* 0x00000000 */ # 135: 0c0a
.Lbr013: memw # 137: c02000
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 13a: b22080
and a11, a11, a8 # 13d: 80bb10
memw # 140: c02000
s32i a11, a0, 0x200 /* a11 -> [0x3ff00000] */ # 143: b26080
memw # 146: c02000
l32i a9, a0, 0x200 /* [0x3ff00000] */ # 149: 922080
bbsi a9, 0, .Lbr013 # 14c: 07e9e7
l32i a12, a6, 8 /* [.Ldata003] */ # 14f: c826
.Lbr014: l32i a3, a12, 28 /* [[.Ldata003]+0x1c] */ # 151: 387c
s32i a10, a12, 28 /* 0x00000000 -> [[.Ldata003]+0x1c] */ # 153: a97c
l8ui a2, a7, 0 /* [sdk_NMIIrqIsOn] */ # 155: 220700
s32i a3, a6, 8 /* [[.Ldata003]+0x1c] -> [.Ldata003] */ # 158: 3926
bnez a2, .Lbr015 # 15a: dcd2
memw # 15c: c02000
movi a5, 0x3feffe00 # 15f: 51b2ff
l32i a4, a5, 0x200 /* [0x3ff00000] */ # 162: 422580
movi a6, -32 /* 0xffffffe0 */ # 165: 6c06
and a4, a4, a6 # 167: 604410
movi a6, 1 /* 0x00000001 */ # 16a: 0c16
or a4, a4, a6 # 16c: 604420
memw # 16f: c02000
s32i a4, a5, 0x200 /* a4 -> [0x3ff00000] */ # 172: 426580
call0 vPortExitCritical # 175: 01bbffc0
# 179: 0000
.Lbr015: l32i a2, a12, 32 /* [[.Ldata003]+0x20] */ # 17b: 288c
movi a3, 0 /* 0x00000000 */ # 17d: 0c03
movi a4, 24 /* 0x00000018 */ # 17f: 1c84
call0 memset # 181: 01b9ffc0
# 185: 0000
l32i a8, a12, 4 /* [[.Ldata003]+0x4] */ # 187: 881c
l32i a7, a12, 16 /* [[.Ldata003]+0x10] */ # 189: 784c
s32i a7, a8, 4 /* [[.Ldata003]+0x10] -> [[[.Ldata003]+0x4]+0x4] */ # 18b: 7918
l32i a2, a12, 32 /* [[.Ldata003]+0x20] */ # 18d: 288c
movi a3, 0x00008000 # 18f: 31a7ff
l32i a0, a2, 0 /* [[[.Ldata003]+0x20]] */ # 192: 0802
j .Lbr026 # 194: 463f00
.Lbr016: bnei a3, 6, .Lbr020 # 197: 666370
l32i a12, a6, 12 /* [.Ldata004] */ # 19a: c836
l8ui a9, a7, 0 /* [sdk_NMIIrqIsOn] */ # 19c: 920700
beqz a12, .Lbr027 # 19f: 166c10
bnez a9, .Lbr018 # 1a2: ecb9
call0 vPortEnterCritical # 1a4: 01b2ffc0
# 1a8: 0000
movi a0, 0x3feffe00 # 1aa: 01a1ff
movi a6, .Ldata001 # 1ad: 61a1ff
movi a7, sdk_NMIIrqIsOn # 1b0: 71a2ff
movi a8, -32 /* 0xffffffe0 */ # 1b3: 6c08
movi a10, 0 /* 0x00000000 */ # 1b5: 0c0a
.Lbr017: memw # 1b7: c02000
l32i a12, a0, 0x200 /* [0x3ff00000] */ # 1ba: c22080
and a12, a12, a8 # 1bd: 80cc10
memw # 1c0: c02000
s32i a12, a0, 0x200 /* a12 -> [0x3ff00000] */ # 1c3: c26080
memw # 1c6: c02000
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 1c9: b22080
bbsi a11, 0, .Lbr017 # 1cc: 07ebe7
l32i a12, a6, 12 /* [.Ldata004] */ # 1cf: c836
.Lbr018: s32i a12, sp, 16 /* [.Ldata004] -> [(local4)] */ # 1d1: c941
mov a2, a12 /* [.Ldata004] */ # 1d3: 2d0c
l32i a4, a12, 28 /* [[.Ldata004]+0x1c] */ # 1d5: 487c
s32i a10, a12, 28 /* 0x00000000 -> [[.Ldata004]+0x1c] */ # 1d7: a97c
l8ui a3, a7, 0 /* [sdk_NMIIrqIsOn] */ # 1d9: 320700
s32i a4, a6, 12 /* [[.Ldata004]+0x1c] -> [.Ldata004] */ # 1dc: 4936
bnez a3, .Lbr019 # 1de: dcf3
memw # 1e0: c02000
movi a6, 0x3feffe00 # 1e3: 6196ff
l32i a5, a6, 0x200 /* [0x3ff00000] */ # 1e6: 522680
movi a7, -32 /* 0xffffffe0 */ # 1e9: 6c07
and a5, a5, a7 # 1eb: 705510
movi a7, 1 /* 0x00000001 */ # 1ee: 0c17
or a5, a5, a7 # 1f0: 705520
memw # 1f3: c02000
s32i a5, a6, 0x200 /* a5 -> [0x3ff00000] */ # 1f6: 526680
call0 vPortExitCritical # 1f9: 019dffc0
# 1fd: 0000
l32i a2, sp, 16 /* [(local4)] */ # 1ff: 2841
.Lbr019: l32i a2, a2, 32 # 201: 2882
movi a3, 0x00200000 # 203: 318fff
l32i a0, a2, 0 # 206: 0802
j .Lbr026 # 208: 462200
.Lbr020: movi a12, 0 /* 0x00000000 */ # 20b: 0c0c
.Lbr021: mov a2, a12 # 20d: 2d0c
l32i a0, sp, 4 /* [(local1)] */ # 20f: 0811
l32i a12, sp, 8 /* [(local2)] */ # 211: c821
addi sp, sp, 32 /* (top of frame) */ # 213: 12c120
ret # 216: 0df0
.Lbr022: s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 218: 2901
bnez a9, .Lbr024 # 21a: ecb9
call0 vPortEnterCritical # 21c: 0196ffc0
# 220: 0000
movi a0, 0x3feffe00 # 222: 0188ff
movi a8, -32 /* 0xffffffe0 */ # 225: 6c08
movi a10, 0 /* 0x00000000 */ # 227: 0c0a
.Lbr023: memw # 229: c02000
l32i a12, a0, 0x200 /* [0x3ff00000] */ # 22c: c22080
and a12, a12, a8 # 22f: 80cc10
memw # 232: c02000
s32i a12, a0, 0x200 /* a12 -> [0x3ff00000] */ # 235: c26080
memw # 238: c02000
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 23b: b22080
bbsi a11, 0, .Lbr023 # 23e: 07ebe7
movi a6, .Ldata001 # 241: 6182ff
movi a7, sdk_NMIIrqIsOn # 244: 7181ff
l32i a12, a6, 0 /* [.Ldata001] */ # 247: c806
.Lbr024: s32i a12, sp, 12 /* [.Ldata001] -> [(local3)] */ # 249: c931
l32i a3, a12, 28 /* [[.Ldata001]+0x1c] */ # 24b: 387c
s32i a3, a6, 0 /* [[.Ldata001]+0x1c] -> [.Ldata001] */ # 24d: 3906
s32i a10, a12, 28 /* 0x00000000 -> [[.Ldata001]+0x1c] */ # 24f: a97c
l8ui a2, a7, 0 /* [sdk_NMIIrqIsOn] */ # 251: 220700
mov a3, a12 /* [.Ldata001] */ # 254: 3d0c
bnez a2, .Lbr025 # 256: dcf2
memw # 258: c02000
movi a5, 0x3feffe00 # 25b: 517dff
l32i a4, a5, 0x200 /* [0x3ff00000] */ # 25e: 422580
movi a6, -32 /* 0xffffffe0 */ # 261: 6c06
and a4, a4, a6 # 263: 604410
movi a6, 1 /* 0x00000001 */ # 266: 0c16
or a4, a4, a6 # 268: 604420
memw # 26b: c02000
s32i a4, a5, 0x200 /* a4 -> [0x3ff00000] */ # 26e: 426580
call0 vPortExitCritical # 271: 0181ffc0
# 275: 0000
l32i a3, sp, 12 /* [(local3)] */ # 277: 3831
.Lbr025: l32i a7, sp, 0 /* [(local0)] */ # 279: 7801
l32i a9, a3, 4 # 27b: 9813
s32i a7, a3, 0 # 27d: 7903
l16ui a8, a7, 10 /* [[(local0)]+0xa] */ # 27f: 821705
l32i a7, a7, 4 /* [[(local0)]+0x4] */ # 282: 7817
s32i a7, a9, 4 # 284: 7919
s16i a8, a3, 22 # 286: 82530b
addi a7, a7, -36 /* [[(local0)]+0x4]-0x24 */ # 289: 72c7dc
l32i a2, a3, 32 # 28c: 2883
s32i a7, a3, 16 # 28e: 7943
l32i a0, a2, 0 # 290: 0802
movi a3, 0x00002000 # 292: 3170ff
.Lbr026: extui a8, a0, 0, 6 # 295: 008054
srli a9, a0, 6 # 298: 009641
or a9, a9, a3 # 29b: 309920
slli a9, a9, 6 # 29e: a09911
or a8, a8, a9 # 2a1: 908820
s32i a8, a2, 0 # 2a4: 8902
j .Lbr021 # 2a6: c6d8ff
.Lbr027: movi a12, 0 /* 0x00000000 */ # 2a9: 0c0c
j .Lbr021 # 2ab: 86d7ff
.literal_position # 2b0: 00000000
# 2b4: 00feef3f
# 2b8: 00000000
# 2bc: 00000000
# 2c0: 00feef3f
# 2c4: 00000000
# 2c8: 00feef3f
# 2cc: 00000000
# 2d0: 00000000
# 2d4: 00feef3f
# 2d8: 00000000
# 2dc: 00feef3f
# 2e0: 00000000
# 2e4: 00000000
# 2e8: 00feef3f
# 2ec: 00000000
# 2f0: 00feef3f
# 2f4: 00000000
# 2f8: 00000000
# 2fc: 00feef3f
# 300: 00feef3f
# 304: 00000000
# 308: 00feef3f
# 30c: 00000000
# 310: 00000000
# 314: 00000000
# 318: 00000000
# 31c: 00000000
# 320: 00000000
# 324: 00000000
# 328: 00000000
# 32c: 00000000
# 330: 00000000
# 334: 00000000
# 338: 00000000
# 33c: 00000000
# 340: 00000000
# 344: 00000000
# 348: 00000000
# 34c: 00000000
# Function @ .irom0.text+0x350
# Local variables/stack:
# (local0): word @ -0x10
# (local1): word[3] @ -0xc
.global sdk_esf_buf_recycle
.type sdk_esf_buf_recycle, @function
sdk_esf_buf_recycle:
addi a4, a3, -1 /* arg1-0x1 */ # 350: 0b43
addi sp, sp, -16 /* (local0) */ # 352: 12c1f0
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 355: 0911
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 357: 2901
beqz a4, .Lbr039 # 359: 16841c
addi a9, a3, -2 /* arg1-0x2 */ # 35c: 92c3fe
beqz a9, .Lbr039 # 35f: 16291c
bnei a3, 4, .Lbr030 # 362: 66436c
l32i a2, a2, 32 /* [arg0+0x20] */ # 365: 2882
movi a3, 0 /* 0x00000000 */ # 367: 0c03
movi a4, 24 /* 0x00000018 */ # 369: 1c84
call0 memset # 36b: 01eaffc0
# 36f: 0000
movi a5, sdk_NMIIrqIsOn # 371: 51cfff
l8ui a3, a5, 0 /* [sdk_NMIIrqIsOn] */ # 374: 320500
bnez a3, .Lbr029 # 377: ec43
call0 vPortEnterCritical # 379: 01e7ffc0
# 37d: 0000
.Lbr028: memw # 37f: c02000
movi a3, 0x3feffe00 # 382: 31ccff
l32i a5, a3, 0x200 /* [0x3ff00000] */ # 385: 522380
movi a0, -32 /* 0xffffffe0 */ # 388: 6c00
and a5, a5, a0 # 38a: 005510
memw # 38d: c02000
s32i a5, a3, 0x200 /* a5 -> [0x3ff00000] */ # 390: 526380
memw # 393: c02000
l32i a4, a3, 0x200 /* [0x3ff00000] */ # 396: 422380
bbsi a4, 0, .Lbr028 # 399: 07e4e2
movi a5, sdk_NMIIrqIsOn # 39c: 51c7ff
.Lbr029: movi a8, .Ldata001 # 39f: 81c7ff
l32i a7, sp, 0 /* [(local0)] */ # 3a2: 7801
l32i a9, a8, 4 /* [.Ldata002] */ # 3a4: 9818
s32i a9, a7, 28 /* [.Ldata002] -> [[(local0)]+0x1c] */ # 3a6: 9977
l8ui a6, a5, 0 /* [sdk_NMIIrqIsOn] */ # 3a8: 620500
s32i a7, a8, 4 /* [(local0)] -> [.Ldata002] */ # 3ab: 7918
bnez a6, .Lbr042 # 3ad: 56f61d
memw # 3b0: c02000
movi a11, 0x3feffe00 # 3b3: b1c3ff
l32i a10, a11, 0x200 /* [0x3ff00000] */ # 3b6: a22b80
movi a0, -32 /* 0xffffffe0 */ # 3b9: 6c00
and a10, a10, a0 # 3bb: 00aa10
movi a0, 1 /* 0x00000001 */ # 3be: 0c10
or a10, a10, a0 # 3c0: 00aa20
memw # 3c3: c02000
s32i a10, a11, 0x200 /* a10 -> [0x3ff00000] */ # 3c6: a26b80
call0 vPortExitCritical # 3c9: 01d4ffc0
# 3cd: 0000
j .Lbr042 # 3cf: 466f00
.Lbr030: bnei a3, 5, .Lbr033 # 3d2: 66536c
l32i a2, a2, 32 /* [arg0+0x20] */ # 3d5: 2882
movi a3, 0 /* 0x00000000 */ # 3d7: 0c03
movi a4, 24 /* 0x00000018 */ # 3d9: 1c84
call0 memset # 3db: 01d1ffc0
# 3df: 0000
movi a3, sdk_NMIIrqIsOn # 3e1: 31b8ff
l8ui a3, a3, 0 /* [sdk_NMIIrqIsOn] */ # 3e4: 320300
bnez a3, .Lbr032 # 3e7: ec13
call0 vPortEnterCritical # 3e9: 01ceffc0
# 3ed: 0000
.Lbr031: memw # 3ef: c02000
movi a4, 0x3feffe00 # 3f2: 41b5ff
l32i a5, a4, 0x200 /* [0x3ff00000] */ # 3f5: 522480
movi a6, -32 /* 0xffffffe0 */ # 3f8: 6c06
and a5, a5, a6 # 3fa: 605510
memw # 3fd: c02000
s32i a5, a4, 0x200 /* a5 -> [0x3ff00000] */ # 400: 526480
memw # 403: c02000
l32i a4, a4, 0x200 /* [0x3ff00000] */ # 406: 422480
bbsi a4, 0, .Lbr031 # 409: 07e4e2
.Lbr032: movi a7, sdk_NMIIrqIsOn # 40c: 71b1ff
movi a9, .Ldata001 # 40f: 91afff
l32i a8, sp, 0 /* [(local0)] */ # 412: 8801
l32i a10, a9, 8 /* [.Ldata003] */ # 414: a829
s32i a10, a8, 28 /* [.Ldata003] -> [[(local0)]+0x1c] */ # 416: a978
l8ui a7, a7, 0 /* [sdk_NMIIrqIsOn] */ # 418: 720700
s32i a8, a9, 8 /* [(local0)] -> [.Ldata003] */ # 41b: 8929
bnez a7, .Lbr042 # 41d: 56f716
memw # 420: c02000
movi a0, 0x3feffe00 # 423: 01acff
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 426: b22080
movi a2, -32 /* 0xffffffe0 */ # 429: 6c02
and a11, a11, a2 # 42b: 20bb10
movi a2, 1 /* 0x00000001 */ # 42e: 0c12
or a11, a11, a2 # 430: 20bb20
memw # 433: c02000
s32i a11, a0, 0x200 /* a11 -> [0x3ff00000] */ # 436: b26080
call0 vPortExitCritical # 439: 01bbffc0
# 43d: 0000
j .Lbr042 # 43f: 465300
.Lbr033: bnei a3, 6, .Lbr036 # 442: 66636c
l32i a2, a2, 32 /* [arg0+0x20] */ # 445: 2882
movi a3, 0 /* 0x00000000 */ # 447: 0c03
movi a4, 24 /* 0x00000018 */ # 449: 1c84
call0 memset # 44b: 01b8ffc0
# 44f: 0000
movi a3, sdk_NMIIrqIsOn # 451: 31a1ff
l8ui a3, a3, 0 /* [sdk_NMIIrqIsOn] */ # 454: 320300
bnez a3, .Lbr035 # 457: ec13
call0 vPortEnterCritical # 459: 01b5ffc0
# 45d: 0000
.Lbr034: memw # 45f: c02000
movi a4, 0x3feffe00 # 462: 419eff
l32i a5, a4, 0x200 /* [0x3ff00000] */ # 465: 522480
movi a6, -32 /* 0xffffffe0 */ # 468: 6c06
and a5, a5, a6 # 46a: 605510
memw # 46d: c02000
s32i a5, a4, 0x200 /* a5 -> [0x3ff00000] */ # 470: 526480
memw # 473: c02000
l32i a4, a4, 0x200 /* [0x3ff00000] */ # 476: 422480
bbsi a4, 0, .Lbr034 # 479: 07e4e2
.Lbr035: movi a7, sdk_NMIIrqIsOn # 47c: 719aff
movi a9, .Ldata001 # 47f: 9198ff
l32i a8, sp, 0 /* [(local0)] */ # 482: 8801
l32i a10, a9, 12 /* [.Ldata004] */ # 484: a839
s32i a10, a8, 28 /* [.Ldata004] -> [[(local0)]+0x1c] */ # 486: a978
l8ui a7, a7, 0 /* [sdk_NMIIrqIsOn] */ # 488: 720700
s32i a8, a9, 12 /* [(local0)] -> [.Ldata004] */ # 48b: 8939
bnez a7, .Lbr042 # 48d: 56f70f
memw # 490: c02000
movi a0, 0x3feffe00 # 493: 0195ff
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 496: b22080
movi a2, -32 /* 0xffffffe0 */ # 499: 6c02
and a11, a11, a2 # 49b: 20bb10
movi a2, 1 /* 0x00000001 */ # 49e: 0c12
or a11, a11, a2 # 4a0: 20bb20
memw # 4a3: c02000
s32i a11, a0, 0x200 /* a11 -> [0x3ff00000] */ # 4a6: b26080
call0 vPortExitCritical # 4a9: 01a2ffc0
# 4ad: 0000
j .Lbr042 # 4af: 463700
.Lbr036: addi a4, a3, -7 /* arg1-0x7 */ # 4b2: 42c3f9
bnez a4, .Lbr042 # 4b5: 56740d
l32i a2, a2, 32 /* [arg0+0x20] */ # 4b8: 2882
movi a3, 0 /* 0x00000000 */ # 4ba: 0c03
movi a4, 12 /* 0x0000000c */ # 4bc: 0cc4
call0 memset # 4be: 019effc0
# 4c2: 0000
movi a3, sdk_NMIIrqIsOn # 4c4: 318aff
l8ui a4, a3, 0 /* [sdk_NMIIrqIsOn] */ # 4c7: 420300
bnez a4, .Lbr038 # 4ca: ec44
call0 vPortEnterCritical # 4cc: 019cffc0
# 4d0: 0000
.Lbr037: memw # 4d2: c02000
movi a0, 0x3feffe00 # 4d5: 0186ff
l32i a7, a0, 0x200 /* [0x3ff00000] */ # 4d8: 722080
movi a5, -32 /* 0xffffffe0 */ # 4db: 6c05
and a7, a7, a5 # 4dd: 507710
memw # 4e0: c02000
s32i a7, a0, 0x200 /* a7 -> [0x3ff00000] */ # 4e3: 726080
memw # 4e6: c02000
l32i a6, a0, 0x200 /* [0x3ff00000] */ # 4e9: 622080
bbsi a6, 0, .Lbr037 # 4ec: 07e6e2
movi a3, sdk_NMIIrqIsOn # 4ef: 3181ff
.Lbr038: movi a10, .Ldata001 # 4f2: a181ff
l32i a9, sp, 0 /* [(local0)] */ # 4f5: 9801
l32i a11, a10, 16 /* [.Ldata005] */ # 4f7: b84a
s32i a11, a9, 28 /* [.Ldata005] -> [[(local0)]+0x1c] */ # 4f9: b979
l8ui a8, a3, 0 /* [sdk_NMIIrqIsOn] */ # 4fb: 820300
s32i a9, a10, 16 /* [(local0)] -> [.Ldata005] */ # 4fe: 994a
bnez a8, .Lbr042 # 500: 56c808
memw # 503: c02000
movi a2, 0x3feffe00 # 506: 217dff
l32i a0, a2, 0x200 /* [0x3ff00000] */ # 509: 022280
movi a3, -32 /* 0xffffffe0 */ # 50c: 6c03
and a0, a0, a3 # 50e: 300010
movi a3, 1 /* 0x00000001 */ # 511: 0c13
or a0, a0, a3 # 513: 300020
memw # 516: c02000
s32i a0, a2, 0x200 /* a0 -> [0x3ff00000] */ # 519: 026280
call0 vPortExitCritical # 51c: 0189ffc0
# 520: 0000
j .Lbr042 # 522: 861a00
.Lbr039: movi a3, 0 /* 0x00000000 */ # 525: 0c03
l32i a2, sp, 0 /* [(local0)] */ # 527: 2801
movi a4, 24 /* 0x00000018 */ # 529: 1c84
l32i a2, a2, 32 /* [[(local0)]+0x20] */ # 52b: 2882
call0 memset # 52d: 0185ffc0
# 531: 0000
movi a5, sdk_NMIIrqIsOn # 533: 5174ff
movi a0, 0x3feffe00 # 536: 0172ff
l8ui a4, a5, 0 /* [sdk_NMIIrqIsOn] */ # 539: 420500
movi a3, -32 /* 0xffffffe0 */ # 53c: 6c03
bnez a4, .Lbr041 # 53e: ec44
call0 vPortEnterCritical # 540: 0182ffc0
# 544: 0000
movi a0, 0x3feffe00 # 546: 0170ff
movi a3, -32 /* 0xffffffe0 */ # 549: 6c03
.Lbr040: memw # 54b: c02000
l32i a6, a0, 0x200 /* [0x3ff00000] */ # 54e: 622080
and a6, a6, a3 # 551: 306610
memw # 554: c02000
s32i a6, a0, 0x200 /* a6 -> [0x3ff00000] */ # 557: 626080
memw # 55a: c02000
l32i a5, a0, 0x200 /* [0x3ff00000] */ # 55d: 522080
bbsi a5, 0, .Lbr040 # 560: 07e5e7
movi a5, sdk_NMIIrqIsOn # 563: 516aff
.Lbr041: movi a9, .Ldata001 # 566: 916aff
l32i a8, sp, 0 /* [(local0)] */ # 569: 8801
l32i a10, a9, 0 /* [.Ldata001] */ # 56b: a809
s32i a10, a8, 28 /* [.Ldata001] -> [[(local0)]+0x1c] */ # 56d: a978
l8ui a7, a5, 0 /* [sdk_NMIIrqIsOn] */ # 56f: 720500
s32i a8, a9, 0 /* [(local0)] -> [.Ldata001] */ # 572: 8909
bnez a7, .Lbr042 # 574: dc87
memw # 576: c02000
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 579: b22080
movi a2, 1 /* 0x00000001 */ # 57c: 0c12
and a11, a11, a3 # 57e: 30bb10
or a11, a11, a2 # 581: 20bb20
memw # 584: c02000
s32i a11, a0, 0x200 /* a11 -> [0x3ff00000] */ # 587: b26080
call0 vPortExitCritical # 58a: 0170ffc0
# 58e: 0000
.Lbr042: l32i a0, sp, 4 /* [(local1)] */ # 590: 0811
addi sp, sp, 16 /* (top of frame) */ # 592: 12c110
ret # 595: 0df0
.literal_position # 598: 400f0000
# 59c: 20000000
# 5a0: 00000000
# 5a4: 80040000
# 5a8: 00f00000
# 5ac: e00c0000
# 5b0: a0110000
# Function @ .irom0.text+0x5b4
# Local variables/stack:
# (local0): word @ -0x20
# (local1): word @ -0x1c
# (local2): word @ -0x18
# (local3): word @ -0x14
# (local4): word @ -0x10
# (local5): word @ -0xc
# (local6): word[2] @ -0x8
.global sdk_esf_buf_setup
.type sdk_esf_buf_setup, @function
sdk_esf_buf_setup:
addi sp, sp, -32 /* (local0) */ # 5b4: 12c1e0
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 5b7: 0901
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 5b9: e931
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 5bb: c911
s32i a15, sp, 16 /* a15 -> [(local4)] */ # 5bd: f941
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 5bf: d921
movi a15, 60 /* 0x0000003c */ # 5c1: 3ccf
movi a13, .Ldata010 # 5c3: d1f5ff
movi a12, .Ldata007 # 5c6: c1f5ff
movi a14, 1 /* 0x00000001 */ # 5c9: 0c1e
.Lbr043: movi a4, sdk_wDevCtrl # 5cb: 41f5ff
mov a2, a12 # 5ce: 2d0c
l32i a4, a4, 40 /* [sdk_wDevCtrl+0x28] */ # 5d0: 48a4
movi a3, 1 /* 0x00000001 */ # 5d2: 0c13
add a5, a15, a4 # 5d4: 4a5f
s32i a5, a12, 4 # 5d6: 591c
s32i a5, a12, 8 # 5d8: 592c
l32i a4, a4, 4 /* [[sdk_wDevCtrl+0x28]+0x4] */ # 5da: 4814
s32i a4, a12, 16 # 5dc: 494c
s16i a14, a12, 12 # 5de: e25c06
s32i a13, a12, 32 # 5e1: d98c
call0 sdk_esf_buf_recycle # 5e3: 050000
addi a12, a12, 36 # 5e6: c2cc24
addi a13, a13, 24 # 5e9: d2cd18
addi a15, a15, -12 # 5ec: f2cff4
bgei a15, 1, .Lbr043 # 5ef: e61fd8
movi a14, 8 /* 0x00000008 */ # 5f2: 0c8e
movi a15, 0x0000f000 # 5f4: f1edff
movi a7, .Ldata008 # 5f7: 71ebff
s32i a7, sp, 20 /* .Ldata008 -> [(local5)] */ # 5fa: 7951
.Lbr044: memw # 5fc: c02000
l32i a8, sp, 20 /* [(local5)] */ # 5ff: 8851
l16ui a10, a8, 0 /* [[(local5)]] */ # 601: a21800
movi a11, 256 /* 0x00000100 */ # 604: b2a100
and a10, a10, a15 # 607: f0aa10
or a10, a10, a11 # 60a: b0aa20
memw # 60d: c02000
s32i a13, a12, 32 # 610: d98c
mov a2, a12 # 612: 2d0c
movi a3, 4 /* 0x00000004 */ # 614: 0c43
s16i a10, a8, 0 /* a10 -> [[(local5)]] */ # 616: a25800
s32i a8, a12, 4 # 619: 891c
s32i a8, a12, 8 # 61b: 892c
movi a9, 1 /* 0x00000001 */ # 61d: 0c19
s16i a9, a12, 12 # 61f: 925c06
addi a8, a8, 12 /* [(local5)]+0xc */ # 622: cb88
s32i a8, a12, 16 # 624: 894c
call0 sdk_esf_buf_recycle # 626: 050000
addi a12, a12, 36 # 629: c2cc24
addi a13, a13, 24 # 62c: d2cd18
addi a14, a14, -1 # 62f: 0bee
l32i a11, sp, 20 /* [(local5)] */ # 631: b851
movi a0, 268 /* 0x0000010c */ # 633: 02a10c
add a11, a11, a0 /* [(local5)]+0x10c */ # 636: 0abb
s32i a11, sp, 20 /* [(local5)]+0x10c -> [(local5)] */ # 638: b951
bgei a14, 1, .Lbr044 # 63a: e61ebe
movi a14, 8 /* 0x00000008 */ # 63d: 0c8e
movi a3, .Ldata009 # 63f: 31dbff
s32i a3, sp, 24 /* .Ldata009 -> [(local6)] */ # 642: 3961
.Lbr045: memw # 644: c02000
l32i a4, sp, 24 /* [(local6)] */ # 647: 4861
l16ui a6, a4, 0 /* [[(local6)]] */ # 649: 621400
movi a7, 64 /* 0x00000040 */ # 64c: 4c07
and a6, a6, a15 # 64e: f06610
or a6, a6, a7 # 651: 706620
memw # 654: c02000
s32i a13, a12, 32 # 657: d98c
mov a2, a12 # 659: 2d0c
movi a3, 5 /* 0x00000005 */ # 65b: 0c53
s16i a6, a4, 0 /* a6 -> [[(local6)]] */ # 65d: 625400
s32i a4, a12, 4 # 660: 491c
s32i a4, a12, 8 # 662: 492c
movi a5, 1 /* 0x00000001 */ # 664: 0c15
s16i a5, a12, 12 # 666: 525c06
addi a4, a4, 12 /* [(local6)]+0xc */ # 669: cb44
s32i a4, a12, 16 # 66b: 494c
call0 sdk_esf_buf_recycle # 66d: 050000
addi a12, a12, 36 # 670: c2cc24
addi a13, a13, 24 # 673: d2cd18
l32i a7, sp, 24 /* [(local6)] */ # 676: 7861
addi a14, a14, -1 # 678: 0bee
addi a7, a7, 76 /* [(local6)]+0x4c */ # 67a: 72c74c
s32i a7, sp, 24 /* [(local6)]+0x4c -> [(local6)] */ # 67d: 7961
bgei a14, 1, .Lbr045 # 67f: e61ec1
movi a14, 4 /* 0x00000004 */ # 682: 0c4e
.Lbr046: s32i a13, a12, 32 # 684: d98c
mov a2, a12 # 686: 2d0c
movi a3, 6 /* 0x00000006 */ # 688: 0c63
call0 sdk_esf_buf_recycle # 68a: 050000
addi a12, a12, 36 # 68d: c2cc24
addi a13, a13, 24 # 690: d2cd18
addi a14, a14, -1 # 693: 0bee
bgei a14, 1, .Lbr046 # 695: e61eeb
movi a14, 6 /* 0x00000006 */ # 698: 0c6e
movi a13, .Label001 # 69a: d1c5ff
.Lbr047: s32i a13, a12, 32 # 69d: d98c
mov a2, a12 # 69f: 2d0c
movi a3, 7 /* 0x00000007 */ # 6a1: 0c73
call0 sdk_esf_buf_recycle # 6a3: 050000
addi a12, a12, 36 # 6a6: c2cc24
addi a13, a13, 12 # 6a9: cbdd
addi a14, a14, -1 # 6ab: 0bee
bgei a14, 1, .Lbr047 # 6ad: e61eec
l32i a12, sp, 4 /* [(local1)] */ # 6b0: c811
l32i a13, sp, 8 /* [(local2)] */ # 6b2: d821
l32i a14, sp, 12 /* [(local3)] */ # 6b4: e831
l32i a15, sp, 16 /* [(local4)] */ # 6b6: f841
l32i a0, sp, 0 /* [(local0)] */ # 6b8: 0801
addi sp, sp, 32 /* (top of frame) */ # 6ba: 12c120
ret # 6bd: 0df0

View file

@ -0,0 +1,582 @@
.section .bss, "aw", @nobits
.global sdk_interface_mask
.type sdk_interface_mask, @object
sdk_interface_mask:
.byte 0x00
.space 15
.global sdk_if_ctrl
.type sdk_if_ctrl, @object
sdk_if_ctrl:
.space 32
.section .irom0.text, "ax", @progbits
.literal_position # 0: 10000000
# Function @ .irom0.text+0x4
.global sdk_ic_get_addr
.type sdk_ic_get_addr, @function
sdk_ic_get_addr:
movi a3, sdk_if_ctrl # 4: 31ffff
slli a2, a2, 4 # 7: c02211
add a2, a3, a2 # a: 2a23
ret # c: 0df0
.literal_position # 10: 10000000
# Function @ .irom0.text+0x14
.global sdk_ic_set_opmode
.type sdk_ic_set_opmode, @function
sdk_ic_set_opmode:
movi a5, sdk_if_ctrl # 14: 51ffff
slli a6, a2, 4 # 17: c06211
add a5, a5, a6 # 1a: 6a55
s32i a3, a5, 8 # 1c: 3925
s8i a4, a5, 12 # 1e: 42450c
ret /* arg0 */ # 21: 0df0
.literal_position # 24: 10000000
# 28: 00000000
# 2c: 00000000
# 30: 00000000
# Function @ .irom0.text+0x34
# Local variables/stack:
# (local0): word @ -0x10
# (local1): word @ -0xc
# (local2): word @ -0x8
# (local3): word @ -0x4
.global sdk_ic_enable_interface
.type sdk_ic_enable_interface, @function
sdk_ic_enable_interface:
addi sp, sp, -16 /* (local0) */ # 34: 12c1f0
s32i a5, sp, 4 /* arg3 -> [(local1)] */ # 37: 5911
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 39: 0921
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 3b: c931
s32i a4, sp, 0 /* arg2 -> [(local0)] */ # 3d: 4901
mov a12, a2 /* arg0 */ # 3f: cd02
movi a2, sdk_if_ctrl # 41: 21f8ff
slli a4, a12, 4 # 44: c04c11
add a2, a2, a4 # 47: 4a22
movi a4, 6 /* 0x00000006 */ # 49: 0c64
call0 memcpy # 4b: 01f8ffc0
# 4f: 0000
mov a2, a12 /* arg0 */ # 51: 2d0c
l32i a3, sp, 0 /* [(local0)] */ # 53: 3801
l32i a4, sp, 4 /* [(local1)] */ # 55: 4811
call0 sdk_ic_set_opmode # 57: 050000
ssl a12 # 5a: 001c40
movi a5, sdk_interface_mask # 5d: 51f2ff
movi a3, 1 /* 0x00000001 */ # 60: 0c13
l8ui a2, a5, 0 /* [sdk_interface_mask] */ # 62: 220500
sll a3, a3 # 65: 0033a1
or a2, a2, a3 # 68: 302220
extui a2, a2, 0, 8 # 6b: 202074
s8i a2, a5, 0 /* a2 -> [sdk_interface_mask] */ # 6e: 224500
call0 __popcountsi2 # 71: 01efffc0
# 75: 0000
extui a2, a2, 0, 8 # 77: 202074
l32i a12, sp, 12 /* [(local3)] */ # 7a: c831
l32i a0, sp, 8 /* [(local2)] */ # 7c: 0821
addi sp, sp, 16 /* (top of frame) */ # 7e: 12c110
ret # 81: 0df0
.literal_position # 84: 00000000
# Function @ .irom0.text+0x88
.global sdk_ic_interface_enabled
.type sdk_ic_interface_enabled, @function
sdk_ic_interface_enabled:
movi a3, sdk_interface_mask # 88: 31ffff
l8ui a3, a3, 0 /* [sdk_interface_mask] */ # 8b: 320300
ssr a2 # 8e: 000240
srl a2, a3 # 91: 302091
extui a2, a2, 0, 1 # 94: 202004
ret # 97: 0df0
.literal_position # 9c: 00000000
# a0: 00000000
# a4: 00000000
# a8: 00000000
# ac: 00000000
# Function @ .irom0.text+0xb0
# Local variables/stack:
# (local0): word[4] @ -0x10
.global sdk_ic_disable_interface
.type sdk_ic_disable_interface, @function
sdk_ic_disable_interface:
addi sp, sp, -16 /* (local0) */ # b0: 12c1f0
s32i a0, sp, 0 /* a0 -> [(local0)] */ # b3: 0901
movi a0, sdk_interface_mask # b5: 01f9ff
movi a4, 1 /* 0x00000001 */ # b8: 0c14
l8ui a0, a0, 0 /* [sdk_interface_mask] */ # ba: 020000
ssr a2 # bd: 000240
srl a3, a0 # c0: 003091
bbci a3, 0, .Lbr001 # c3: 07631f
ssl a2 # c6: 001240
sll a3, a4 # c9: 0034a1
movi a4, -1 /* 0xffffffff */ # cc: 7cf4
xor a3, a3, a4 # ce: 403330
movi a4, sdk_interface_mask # d1: 41f3ff
and a3, a0, a3 # d4: 303010
s8i a3, a4, 0 /* a3 -> [sdk_interface_mask] */ # d7: 324400
call0 sdk_rc_disable_trc_by_interface # da: 01f3ffc0
# de: 0000
movi a0, sdk_interface_mask # e0: 01f1ff
l8ui a0, a0, 0 /* [sdk_interface_mask] */ # e3: 020000
.Lbr001: mov a2, a0 /* [sdk_interface_mask] */ # e6: 2d00
call0 __popcountsi2 # e8: 01f1ffc0
# ec: 0000
extui a2, a2, 0, 8 # ee: 202074
l32i a0, sp, 0 /* [(local0)] */ # f1: 0801
addi sp, sp, 16 /* (top of frame) */ # f3: 12c110
ret # f6: 0df0
.literal_position # f8: 10000000
# Function @ .irom0.text+0xfc
.global sdk_ic_is_pure_sta
.type sdk_ic_is_pure_sta, @function
sdk_ic_is_pure_sta:
movi a4, sdk_if_ctrl # fc: 41ffff
slli a5, a2, 4 # ff: c05211
add a4, a4, a5 # 102: 5a44
l32i a3, a4, 8 # 104: 3824
movi a2, 0 /* 0x00000000 */ # 106: 0c02
beqi a3, 1, .Lbr002 # 108: 261307
l8ui a7, a4, 12 # 10b: 72040c
movi a6, 1 /* 0x00000001 */ # 10e: 0c16
moveqz a2, a6, a7 # 110: 702683
.Lbr002: extui a2, a2, 0, 8 # 113: 202074
ret # 116: 0df0
.literal_position # 118: 10000000
# Function @ .irom0.text+0x11c
.global sdk_ic_get_ptk_alg
.type sdk_ic_get_ptk_alg, @function
sdk_ic_get_ptk_alg:
movi a3, sdk_if_ctrl # 11c: 31ffff
slli a2, a2, 4 # 11f: c02211
add a2, a3, a2 # 122: 2a23
l8ui a2, a2, 13 # 124: 22020d
ret # 127: 0df0
.literal_position # 12c: 10000000
# Function @ .irom0.text+0x130
.global sdk_ic_get_gtk_alg
.type sdk_ic_get_gtk_alg, @function
sdk_ic_get_gtk_alg:
movi a3, sdk_if_ctrl # 130: 31ffff
slli a2, a2, 4 # 133: c02211
add a2, a3, a2 # 136: 2a23
l8ui a2, a2, 14 # 138: 22020e
ret # 13b: 0df0
.literal_position # 140: 10000000
# Function @ .irom0.text+0x144
.global sdk_ic_set_ptk_alg
.type sdk_ic_set_ptk_alg, @function
sdk_ic_set_ptk_alg:
movi a4, sdk_if_ctrl # 144: 41ffff
slli a5, a2, 4 # 147: c05211
add a4, a4, a5 # 14a: 5a44
s8i a3, a4, 13 # 14c: 32440d
ret /* arg0 */ # 14f: 0df0
.literal_position # 154: 10000000
# Function @ .irom0.text+0x158
.global sdk_ic_set_gtk_alg
.type sdk_ic_set_gtk_alg, @function
sdk_ic_set_gtk_alg:
movi a4, sdk_if_ctrl # 158: 41ffff
slli a5, a2, 4 # 15b: c05211
add a4, a4, a5 # 15e: 5a44
s8i a3, a4, 14 # 160: 32440e
ret /* arg0 */ # 163: 0df0
.literal_position # 168: 10000000
# Function @ .irom0.text+0x16c
.global sdk_ic_interface_is_p2p
.type sdk_ic_interface_is_p2p, @function
sdk_ic_interface_is_p2p:
movi a3, sdk_if_ctrl # 16c: 31ffff
slli a2, a2, 4 # 16f: c02211
add a2, a3, a2 # 172: 2a23
l8ui a2, a2, 12 # 174: 22020c
ret # 177: 0df0
.literal_position # 17c: 00000000
# 180: 00000000
# Function @ .irom0.text+0x184
# Local variables/stack:
# (local0): word @ -0x10
# (local1): word[3] @ -0xc
.Lfunc001: movi a3, 0 /* 0x00000000 */ # 184: 0c03
addi sp, sp, -16 /* (local0) */ # 186: 12c1f0
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 189: c911
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 18b: 0901
mov a12, a2 /* arg0 */ # 18d: cd02
call0 sdk_ic_set_ptk_alg # 18f: 050000
mov a2, a12 /* arg0 */ # 192: 2d0c
movi a3, 0 /* 0x00000000 */ # 194: 0c03
call0 sdk_ic_set_gtk_alg # 196: 050000
mov a2, a12 /* arg0 */ # 199: 2d0c
call0 sdk_wDev_Crypto_Disable # 19b: 01f8ffc0
# 19f: 0000
mov a3, a12 /* arg0 */ # 1a1: 3d0c
movi a2, 1 /* 0x00000001 */ # 1a3: 0c12
movi a4, 0 /* 0x00000000 */ # 1a5: 0c04
call0 sdk_wDev_SetRxPolicy # 1a7: 01f6ffc0
# 1ab: 0000
l32i a12, sp, 4 /* [(local1)] */ # 1ad: c811
l32i a0, sp, 0 /* [(local0)] */ # 1af: 0801
addi sp, sp, 16 /* (top of frame) */ # 1b1: 12c110
ret # 1b4: 0df0
.literal_position # 1b8: 00000000
# 1bc: 00000000
# 1c0: 00000000
# 1c4: 00000000
# 1c8: 00000000
# Function @ .irom0.text+0x1cc
# Local variables/stack:
# (local0): word @ -0x10
# (local1): word[3] @ -0xc
.Lfunc002: addi sp, sp, -16 /* (local0) */ # 1cc: 12c1f0
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 1cf: c911
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 1d1: 0901
mov a12, a2 /* arg0 */ # 1d3: cd02
movi a2, .Lstr001 # 1d5: 21f8ff
mov a3, a12 /* arg0 */ # 1d8: 3d0c
call0 printf # 1da: 01f8ffc0
# 1de: 0000
movi a2, 0 /* 0x00000000 */ # 1e0: 0c02
mov a3, a12 /* arg0 */ # 1e2: 3d0c
movi a4, 0 /* 0x00000000 */ # 1e4: 0c04
call0 sdk_wDev_SetRxPolicy # 1e6: 01f6ffc0
# 1ea: 0000
mov a2, a12 /* arg0 */ # 1ec: 2d0c
call0 sdk_ic_disable_interface # 1ee: 050000
bnez a2, .Lbr003 # 1f1: cca2
call0 sdk_wDevDisableRx # 1f3: 01f4ffc0
# 1f7: 0000
call0 sdk_pm_force_scan_unlock # 1f9: 01f3ffc0
# 1fd: 0000
.Lbr003: l32i a12, sp, 4 /* [(local1)] */ # 1ff: c811
l32i a0, sp, 0 /* [(local0)] */ # 201: 0801
addi sp, sp, 16 /* (top of frame) */ # 203: 12c110
ret # 206: 0df0
.literal_position # 208: 0c000000
# 20c: 18000000
# 210: 00000000
# 214: 00000000
# 218: 00000000
# 21c: 00000000
# Function @ .irom0.text+0x220
# Local variables/stack:
# (local0): word @ -0x20
# (local1): word @ -0x1c
# (local2): word @ -0x18
# (local3): word @ -0x14
# (local4): word[4] @ -0x10
.global sdk_ic_set_vif
.type sdk_ic_set_vif, @function
sdk_ic_set_vif:
addi sp, sp, -32 /* (local0) */ # 220: 12c1e0
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 223: 0921
s32i a5, sp, 4 /* arg3 -> [(local1)] */ # 225: 5911
s32i a6, sp, 0 /* arg4 -> [(local0)] */ # 227: 6901
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 229: c931
s32i a13, sp, 16 /* a13 -> [(local4)] */ # 22b: d941
mov a12, a2 /* arg0 */ # 22d: cd02
mov a13, a4 /* arg2 */ # 22f: dd04
bnei a3, 2, .Lbr004 # 231: 662316
movi a2, .Lstr002 # 234: 21f5ff
mov a3, a12 /* arg0 */ # 237: 3d0c
call0 printf # 239: 01f5ffc0
# 23d: 0000
mov a2, a12 /* arg0 */ # 23f: 2d0c
l32i a3, sp, 4 /* [(local1)] */ # 241: 3811
l32i a4, sp, 0 /* [(local0)] */ # 243: 4801
call0 sdk_ic_set_opmode # 245: 050000
j .Lbr007 # 248: 860d00
.Lbr004: bnei a3, 1, .Lbr006 # 24b: 661330
movi a2, .Lstr003 # 24e: 21efff
mov a3, a12 /* arg0 */ # 251: 3d0c
call0 printf # 253: 01f0ffc0
# 257: 0000
mov a2, a12 /* arg0 */ # 259: 2d0c
mov a3, a13 /* arg2 */ # 25b: 3d0d
call0 sdk_wDev_SetMacAddress # 25d: 01eeffc0
# 261: 0000
mov a3, a13 /* arg2 */ # 263: 3d0d
mov a2, a12 /* arg0 */ # 265: 2d0c
l32i a4, sp, 4 /* [(local1)] */ # 267: 4811
l32i a5, sp, 0 /* [(local0)] */ # 269: 5801
call0 sdk_ic_enable_interface # 26b: 050000
bnei a2, 1, .Lbr005 # 26e: 661205
call0 sdk_wDevEnableRx # 271: 01eaffc0
# 275: 0000
.Lbr005: mov a2, a12 /* arg0 */ # 277: 2d0c
call0 .Lfunc001 # 279: 85f0ff
j .Lbr007 # 27c: 860000
.Lbr006: call0 .Lfunc002 # 27f: c5f4ff
.Lbr007: l32i a12, sp, 12 /* [(local3)] */ # 282: c831
l32i a13, sp, 16 /* [(local4)] */ # 284: d841
l32i a0, sp, 8 /* [(local2)] */ # 286: 0821
addi sp, sp, 32 /* (top of frame) */ # 288: 12c120
ret # 28b: 0df0
.literal_position # 290: 24000000
# 294: 00000000
# 298: 00feef3f
# 29c: 00000000
# 2a0: 00000000
# 2a4: 00000000
# 2a8: 00000000
# 2ac: 00000000
# 2b0: 00000000
# 2b4: 00000000
# Function @ .irom0.text+0x2b8
# Local variables/stack:
# (local0): word @ -0x20
# (local1): word @ -0x1c
# (local2): word @ -0x18
# (local3): word @ -0x14
# (local4): word @ -0x10
# (local5): word[3] @ -0xc
.global sdk_ic_set_sta
.type sdk_ic_set_sta, @function
sdk_ic_set_sta:
addi sp, sp, -32 /* (local0) */ # 2b8: 12c1e0
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 2bb: c921
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 2bd: 0911
s32i a14, sp, 16 /* a14 -> [(local4)] */ # 2bf: e941
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 2c1: d931
mov a14, a6 /* arg4 */ # 2c3: ed06
mov a13, a2 /* arg0 */ # 2c5: dd02
beqz a3, .Lbr010 # 2c7: 169308
mov a3, a4 /* arg2 */ # 2ca: 3d04
s32i a7, sp, 0 /* arg5 -> [(local0)] */ # 2cc: 7901
mov a4, a5 /* arg3 */ # 2ce: 4d05
mov a5, a6 /* arg4 */ # 2d0: 5d06
call0 sdk_rc_enable_trc # 2d2: 01f3ffc0
# 2d6: 0000
mov a12, a2 # 2d8: cd02
mov a3, a14 /* arg4 */ # 2da: 3d0e
movi a2, .Lstr004 # 2dc: 21edff
call0 printf # 2df: 01f1ffc0
# 2e3: 0000
beqz a12, .Lbr011 # 2e5: 165c07
mov a2, a13 /* arg0 */ # 2e8: 2d0d
call0 sdk_ic_interface_is_p2p # 2ea: 050000
movi a14, -32 /* 0xffffffe0 */ # 2ed: 6c0e
l32i a4, sp, 0 /* [(local0)] */ # 2ef: 4801
mov a0, a2 # 2f1: 0d02
s32i a2, sp, 20 /* a2 -> [(local5)] */ # 2f3: 2951
movi a2, sdk_NMIIrqIsOn # 2f5: 21e7ff
s32i a4, a12, 92 # 2f8: 426c17
l8ui a2, a2, 0 /* [sdk_NMIIrqIsOn] */ # 2fb: 220200
movi a13, 0x3feffe00 # 2fe: d1e6ff
bnez a2, .Lbr009 # 301: dce2
call0 vPortEnterCritical # 303: 01e9ffc0
# 307: 0000
.Lbr008: memw # 309: c02000
l32i a6, a13, 0x200 /* [0x3ff00000] */ # 30c: 622d80
and a6, a6, a14 # 30f: e06610
memw # 312: c02000
s32i a6, a13, 0x200 /* a6 -> [0x3ff00000] */ # 315: 626d80
memw # 318: c02000
l32i a5, a13, 0x200 /* [0x3ff00000] */ # 31b: 522d80
bbsi a5, 0, .Lbr008 # 31e: 07e5e7
l32i a0, sp, 20 /* [(local5)] */ # 321: 0851
.Lbr009: mov a2, a12 # 323: 2d0c
movi a3, 0 /* 0x00000000 */ # 325: 0c03
mov a4, a0 # 327: 4d00
call0 sdk_rcUpdatePhyMode # 329: 01e0ffc0
# 32d: 0000
movi a7, sdk_NMIIrqIsOn # 32f: 71dbff
l8ui a7, a7, 0 /* [sdk_NMIIrqIsOn] */ # 332: 720700
bnez a7, .Lbr011 # 335: ec57
memw # 337: c02000
l32i a8, a13, 0x200 /* [0x3ff00000] */ # 33a: 822d80
movi a9, 1 /* 0x00000001 */ # 33d: 0c19
and a8, a8, a14 # 33f: e08810
or a8, a8, a9 # 342: 908820
memw # 345: c02000
s32i a8, a13, 0x200 /* a8 -> [0x3ff00000] */ # 348: 826d80
call0 vPortExitCritical # 34b: 01d9ffc0
# 34f: 0000
j .Lbr011 # 351: 460200
.Lbr010: mov a3, a4 /* arg2 */ # 354: 3d04
mov a4, a5 /* arg3 */ # 356: 4d05
call0 sdk_rc_disable_trc # 358: 01d7ffc0
# 35c: 0000
.Lbr011: l32i a12, sp, 8 /* [(local2)] */ # 35e: c821
l32i a13, sp, 12 /* [(local3)] */ # 360: d831
l32i a14, sp, 16 /* [(local4)] */ # 362: e841
l32i a0, sp, 4 /* [(local1)] */ # 364: 0811
addi sp, sp, 32 /* (top of frame) */ # 366: 12c120
ret # 369: 0df0
.literal_position # 36c: 34000000
# 370: 3c000000
# 374: 2c000000
# 378: 00000000
# 37c: 00000000
# 380: 00000000
# 384: 00000000
# 388: 00000000
# Function @ .irom0.text+0x38c
# Local variables/stack:
# (local0): word @ -0x10
# (local1): word[3] @ -0xc
.global sdk_ic_bss_info_update
.type sdk_ic_bss_info_update, @function
sdk_ic_bss_info_update:
addi sp, sp, -16 /* (local0) */ # 38c: 12c1f0
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 38f: 0911
bnei a4, 2, .Lbr012 # 391: 662412
s32i a5, sp, 0 /* arg3 -> [(local0)] */ # 394: 5901
beqz a5, .Lbr015 # 396: bcb5
mov a4, a3 /* arg1 */ # 398: 4d03
mov a3, a2 /* arg0 */ # 39a: 3d02
movi a2, 2 /* 0x00000002 */ # 39c: 0c22
call0 sdk_wDev_SetRxPolicy # 39e: 01f6ffc0
# 3a2: 0000
j .Lbr016 # 3a4: 060c00
.Lbr012: bnei a4, 1, .Lbr013 # 3a7: 661417
mov a4, a3 /* arg1 */ # 3aa: 4d03
mov a3, a2 /* arg0 */ # 3ac: 3d02
movi a2, 2 /* 0x00000002 */ # 3ae: 0c22
call0 sdk_wDev_SetRxPolicy # 3b0: 01f3ffc0
# 3b4: 0000
movi a2, .Lstr006 # 3b6: 21edff
call0 printf # 3b9: 01f1ffc0
# 3bd: 0000
j .Lbr014 # 3bf: c60200
.Lbr013: call0 .Lfunc001 # 3c2: 05dcff
movi a2, .Lstr007 # 3c5: 21eaff
call0 printf # 3c8: 01efffc0
# 3cc: 0000
.Lbr014: l32i a0, sp, 4 /* [(local1)] */ # 3ce: 0811
addi sp, sp, 16 /* (top of frame) */ # 3d0: 12c110
ret # 3d3: 0df0
.Lbr015: call0 .Lfunc001 # 3d5: c5daff
.Lbr016: movi a2, .Lstr005 # 3d8: 21e7ff
l32i a3, sp, 0 /* [(local0)] */ # 3db: 3801
call0 printf # 3dd: 01eaffc0
# 3e1: 0000
j .Lbr014 # 3e3: c6f9ff
.literal_position # 3e8: 00000000
# 3ec: 00000000
# Function @ .irom0.text+0x3f0
# Local variables/stack:
# (local0): word[4] @ -0x30
# (local1): word @ -0x20
# (local2): word @ -0x1c
# (local3): word @ -0x18
# (local4): word @ -0x14
# (local5): word @ -0x10
# (local6): word @ -0xc
# (local7): word[2] @ -0x8
.global sdk_ic_set_key
.type sdk_ic_set_key, @function
sdk_ic_set_key:
addi sp, sp, -48 /* (local0) */ # 3f0: 12c1d0
s32i a0, sp, 28 /* a0 -> [(local4)] */ # 3f3: 0971
s32i a4, sp, 16 /* arg2 -> [(local1)] */ # 3f5: 4941
s32i a5, sp, 20 /* arg3 -> [(local2)] */ # 3f7: 5951
s32i a7, sp, 24 /* arg5 -> [(local3)] */ # 3f9: 7961
s32i a14, sp, 40 /* a14 -> [(local7)] */ # 3fb: e9a1
s32i a13, sp, 36 /* a13 -> [(local6)] */ # 3fd: d991
s32i a12, sp, 32 /* a12 -> [(local5)] */ # 3ff: c981
mov a13, a2 /* arg0 */ # 401: dd02
mov a12, a3 /* arg1 */ # 403: cd03
mov a14, a6 /* arg4 */ # 405: ed06
bltui a6, 6, .Lbr017 # 407: b66605
call0 sdk_ic_set_ptk_alg # 40a: 050000
j .Lbr019 # 40d: 460400
.Lbr017: bnez a3, .Lbr018 # 410: ccb3
call0 sdk_ic_set_ptk_alg # 412: 050000
mov a2, a13 /* arg0 */ # 415: 2d0d
mov a3, a12 /* arg1 */ # 417: 3d0c
call0 sdk_ic_set_gtk_alg # 419: 050000
j .Lbr019 # 41c: 860000
.Lbr018: call0 sdk_ic_set_gtk_alg # 41f: 050000
.Lbr019: mov a6, a14 /* arg4 */ # 422: 6d0e
l32i a4, sp, 16 /* [(local1)] */ # 424: 4841
l32i a5, sp, 20 /* [(local2)] */ # 426: 5851
l32i a7, sp, 24 /* [(local3)] */ # 428: 7861
mov a2, a12 /* arg1 */ # 42a: 2d0c
mov a3, a13 /* arg0 */ # 42c: 3d0d
l8ui a0, sp, 48 /* [(local8)] */ # 42e: 020130
s32i a0, sp, 0 /* [(local8)] -> [(local0)] */ # 431: 0901
call0 sdk_wDev_Insert_KeyEntry # 433: 01edffc0
# 437: 0000
mov a3, a12 /* arg1 */ # 439: 3d0c
mov a2, a13 /* arg0 */ # 43b: 2d0d
call0 sdk_wDev_Crypto_Conf # 43d: 01ebffc0
# 441: 0000
l32i a12, sp, 32 /* [(local5)] */ # 443: c881
l32i a13, sp, 36 /* [(local6)] */ # 445: d891
l32i a14, sp, 40 /* [(local7)] */ # 447: e8a1
l32i a0, sp, 28 /* [(local4)] */ # 449: 0871
addi sp, sp, 48 /* (local8) */ # 44b: 12c130
ret # 44e: 0df0
.literal_position # 450: 00000000
# Function @ .irom0.text+0x454
# Local variables/stack:
# (local0): word[4] @ -0x10
.global sdk_ic_remove_key
.type sdk_ic_remove_key, @function
sdk_ic_remove_key:
addi sp, sp, -16 /* (local0) */ # 454: 12c1f0
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 457: 0901
call0 sdk_wDev_remove_KeyEntry # 459: 01fdffc0
# 45d: 0000
l32i a0, sp, 0 /* [(local0)] */ # 45f: 0801
addi sp, sp, 16 /* (top of frame) */ # 461: 12c110
ret # 464: 0df0
.section .rodata.str1.4, "MSa", @progbits, 1
.Lstr001: .asciz "del if%d\n" # 0: 64656c20
# 4: 69662564
# 8: 0a00
.balign 4
.Lstr002: .asciz "chg if%d\n" # c: 63686720
# 10: 69662564
# 14: 0a00
.balign 4
.Lstr003: .asciz "add if%d\n" # 18: 61646420
# 1c: 69662564
# 20: 0a00
.balign 4
.Lstr004: .asciz "aid %d\n" # 24: 61696420
# 28: 25640a00
.Lstr005: .asciz "bcn %d\n" # 2c: 62636e20
# 30: 25640a00
.Lstr006: .asciz "cnt \n" # 34: 636e7420
# 38: 0a00
.balign 4
.Lstr007: .asciz "uncnt \n" # 3c: 756e636e
# 40: 74200a00

2683
binary_sdk/libpp/lmac.S Normal file

File diff suppressed because it is too large Load diff

View file

3123
binary_sdk/libpp/pm.S Normal file

File diff suppressed because it is too large Load diff

3980
binary_sdk/libpp/pp.S Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,557 @@
.section .text, "ax", @progbits
# Function @ .text+0x0
.Lfunc001: bltui a2, 5, .Lbr003 # 0: b65213
bltui a2, 8, .Lbr001 # 3: b68209
movi a4, 36 /* 0x00000024 */ # 6: 2c44
bgeui a2, 16, .Lbr002 # 8: f6b207
movi a4, 20 /* 0x00000014 */ # b: 1c44
j .Lbr002 # d: 860000
.Lbr001: movi a4, 96 /* 0x00000060 */ # 10: 42a060
.Lbr002: mov a2, a4 # 13: 2d04
ret # 15: 0df0
.Lbr003: movi a2, 192 /* 0x000000c0 */ # 17: 22a0c0
ret /* 0x000000c0 */ # 1a: 0df0
.literal_position # 1c: 00000000
# Function @ .text+0x20
.global sdk_RC_GetAckRate
.type sdk_RC_GetAckRate, @function
sdk_RC_GetAckRate:
movi a3, .Ldata002 # 20: 31ffff
addx8 a2, a2, a3 # 23: 3022b0
l8ui a2, a2, 5 # 26: 220205
ret # 29: 0df0
.literal_position # 2c: 00000000
# Function @ .text+0x30
.global sdk_RC_GetRtsRate
.type sdk_RC_GetRtsRate, @function
sdk_RC_GetRtsRate:
movi a3, .Ldata002 # 30: 31ffff
addx8 a2, a2, a3 # 33: 3022b0
l8ui a2, a2, 4 # 36: 220204
ret # 39: 0df0
.literal_position # 3c: 00000000
# 40: 00000000
# Function @ .text+0x44
.global sdk_RC_GetAckTime
.type sdk_RC_GetAckTime, @function
sdk_RC_GetAckTime:
movi a3, .Ldata002 # 44: 31feff
addx8 a2, a2, a3 # 47: 3022b0
movi a3, .Ldata001 # 4a: 31fdff
l8ui a2, a2, 5 # 4d: 220205
addx2 a2, a2, a3 # 50: 302290
l16ui a2, a2, 0 # 53: 221200
ret # 56: 0df0
# Function @ .text+0x58
# Local variables/stack:
# (local0): word @ -0x20
# (local1): word @ -0x1c
# (local2): word @ -0x18
# (local3): word @ -0x14
# (local4): word[4] @ -0x10
.global sdk_RC_GetCtsTime
.type sdk_RC_GetCtsTime, @function
sdk_RC_GetCtsTime:
addi sp, sp, -32 /* (local0) */ # 58: 12c1e0
s32i a3, sp, 0 /* arg1 -> [(local0)] */ # 5b: 3901
s32i a4, sp, 4 /* arg2 -> [(local1)] */ # 5d: 4911
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 5f: c931
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 61: 0921
mov a12, a2 /* arg0 */ # 63: cd02
call0 .Lfunc001 # 65: 85f9ff
s32i a2, sp, 16 /* a2 -> [(local4)] */ # 68: 2941
l32i a3, sp, 0 /* [(local0)] */ # 6a: 3801
mov a2, a12 /* arg0 */ # 6c: 2d0c
call0 .Lfunc002 # 6e: 850600
l32i a0, sp, 16 /* [(local4)] */ # 71: 0841
l32i a3, sp, 4 /* [(local1)] */ # 73: 3811
movi a4, 10 /* 0x0000000a */ # 75: 0ca4
add a2, a3, a2 # 77: 2a23
bltui a12, 8, .Lbr004 # 79: b68c01
movi a4, 16 /* 0x00000010 */ # 7c: 1c04
.Lbr004: l32i a12, sp, 12 /* [(local3)] */ # 7e: c831
add a5, a0, a4 # 80: 4a50
add a2, a2, a5 # 82: 5a22
l32i a0, sp, 8 /* [(local2)] */ # 84: 0821
addi sp, sp, 32 /* (top of frame) */ # 86: 12c120
extui a2, a2, 0, 16 # 89: 2020f4
ret # 8c: 0df0
.literal_position # 90: 00000000
# Function @ .text+0x94
# Local variables/stack:
# (local0): word @ -0x10
# (local1): word @ -0xc
# (local2): word @ -0x8
# (local3): word @ -0x4
.global sdk_RC_GetBlockAckTime
.type sdk_RC_GetBlockAckTime, @function
sdk_RC_GetBlockAckTime:
addi sp, sp, -16 /* (local0) */ # 94: 12c1f0
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 97: c931
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 99: 0921
movi a0, .Ldata002 # 9b: 01fdff
movi a12, 10 /* 0x0000000a */ # 9e: 0cac
addx8 a0, a2, a0 # a0: 0002b0
l8ui a2, a0, 5 # a3: 220005
s32i a0, sp, 0 /* a0 -> [(local0)] */ # a6: 0901
bltui a2, 8, .Lbr005 # a8: b68201
movi a12, 16 /* 0x00000010 */ # ab: 1c0c
.Lbr005: call0 .Lfunc001 # ad: 05f5ff
s32i a2, sp, 4 /* a2 -> [(local1)] */ # b0: 2911
l32i a2, sp, 0 /* [(local0)] */ # b2: 2801
movi a3, 32 /* 0x00000020 */ # b4: 2c03
l8ui a2, a2, 5 /* [[(local0)]+0x5] */ # b6: 220205
call0 .Lfunc002 # b9: c50100
l32i a3, sp, 4 /* [(local1)] */ # bc: 3811
l32i a0, sp, 8 /* [(local2)] */ # be: 0821
add a3, a12, a3 # c0: 3a3c
l32i a12, sp, 12 /* [(local3)] */ # c2: c831
add a2, a2, a3 # c4: 3a22
extui a2, a2, 0, 16 # c6: 2020f4
addi sp, sp, 16 /* (top of frame) */ # c9: 12c110
ret # cc: 0df0
.literal_position # d0: 00000000
# d4: ffff0300
# Function @ .text+0xd8
.Lfunc002: slli a4, a3, 3 # d8: d04311
movi a5, .Ldata002 # db: 51fdff
extui a3, a4, 0, 16 # de: 4030f4
movi a4, 0x0003ffff # e1: 41fcff
addx8 a5, a2, a5 # e4: 5052b0
l32i a5, a5, 0 # e7: 5805
bltui a2, 8, .Lbr006 # e9: b68205
addi a3, a3, 22 # ec: 32c316
extui a3, a3, 0, 16 # ef: 3030f4
.Lbr006: mull a3, a5, a3 # f2: 303582
add a3, a3, a4 # f5: 4a33
extui a3, a3, 18, 14 # f7: 3032d5
bltui a2, 8, .Lbr007 # fa: b68206
movi a4, -4 /* 0xfffffffc */ # fd: 7cc4
addi a3, a3, 3 # ff: 3b33
and a3, a3, a4 # 101: 403310
.Lbr007: extui a2, a3, 0, 16 # 104: 3020f4
ret # 107: 0df0
.section .data, "aw", @progbits
.Ldata001: .byte 0x3a, 0x01, 0x02, 0x01, 0xdf, 0x00, 0xd5, 0x00
.byte 0x3a, 0x01, 0xa2, 0x00, 0x7f, 0x00, 0x75, 0x00
.byte 0x2c, 0x00, 0x2c, 0x00, 0x30, 0x00, 0x3c, 0x00
.byte 0x2c, 0x00, 0x2c, 0x00, 0x30, 0x00, 0x3c, 0x00
.byte 0x3c, 0x00, 0x30, 0x00, 0x30, 0x00, 0x2c, 0x00
.byte 0x2c, 0x00, 0x2c, 0x00, 0x2c, 0x00, 0x2c, 0x00
.byte 0x3c, 0x00, 0x30, 0x00, 0x30, 0x00, 0x2c, 0x00
.byte 0x2c, 0x00, 0x2c, 0x00, 0x2c, 0x00, 0x2c, 0x00
.section .bss, "aw", @nobits
.Ldata002: .word 0x00000000 # 0: 00000000
.Ldata003: .byte 0x00
.Ldata004: .byte 0x00
.Ldata005: .byte 0x00
.balign 4
.Ldata006: .word 0x00000000 # 8: 00000000
.Ldata007: .byte 0x00
.Ldata008: .byte 0x00
.Ldata009: .byte 0x00
.balign 4
.Ldata010: .word 0x00000000 # 10: 00000000
.Ldata011: .byte 0x00
.Ldata012: .byte 0x00
.Ldata013: .byte 0x00
.balign 4
.Ldata014: .word 0x00000000 # 18: 00000000
.Ldata015: .byte 0x00
.Ldata016: .byte 0x00
.Ldata017: .byte 0x00
.balign 4
.Ldata018: .word 0x00000000 # 20: 00000000
.Ldata019: .byte 0x00
.Ldata020: .byte 0x00
.Ldata021: .byte 0x00
.balign 4
.Ldata022: .word 0x00000000 # 28: 00000000
.Ldata023: .byte 0x00
.Ldata024: .byte 0x00
.Ldata025: .byte 0x00
.balign 4
.Ldata026: .word 0x00000000 # 30: 00000000
.Ldata027: .byte 0x00
.Ldata028: .byte 0x00
.Ldata029: .byte 0x00
.balign 4
.Ldata030: .word 0x00000000 # 38: 00000000
.Ldata031: .byte 0x00
.Ldata032: .byte 0x00
.Ldata033: .byte 0x00
.balign 4
.Ldata034: .word 0x00000000 # 40: 00000000
.Ldata035: .byte 0x00
.Ldata036: .byte 0x00
.Ldata037: .byte 0x00
.balign 4
.Ldata038: .word 0x00000000 # 48: 00000000
.Ldata039: .byte 0x00
.Ldata040: .byte 0x00
.Ldata041: .byte 0x00
.balign 4
.Ldata042: .word 0x00000000 # 50: 00000000
.Ldata043: .byte 0x00
.Ldata044: .byte 0x00
.Ldata045: .byte 0x00
.balign 4
.Ldata046: .word 0x00000000 # 58: 00000000
.Ldata047: .byte 0x00
.Ldata048: .byte 0x00
.Ldata049: .byte 0x00
.balign 4
.Ldata050: .word 0x00000000 # 60: 00000000
.Ldata051: .byte 0x00
.Ldata052: .byte 0x00
.Ldata053: .byte 0x00
.balign 4
.Ldata054: .word 0x00000000 # 68: 00000000
.Ldata055: .byte 0x00
.Ldata056: .byte 0x00
.Ldata057: .byte 0x00
.balign 4
.Ldata058: .word 0x00000000 # 70: 00000000
.Ldata059: .byte 0x00
.Ldata060: .byte 0x00
.Ldata061: .byte 0x00
.balign 4
.Ldata062: .word 0x00000000 # 78: 00000000
.Ldata063: .byte 0x00
.Ldata064: .byte 0x00
.Ldata065: .byte 0x00
.balign 4
.Ldata066: .word 0x00000000 # 80: 00000000
.Ldata067: .byte 0x00
.Ldata068: .byte 0x00
.Ldata069: .byte 0x00
.balign 4
.Ldata070: .word 0x00000000 # 88: 00000000
.Ldata071: .byte 0x00
.Ldata072: .byte 0x00
.Ldata073: .byte 0x00
.balign 4
.Ldata074: .word 0x00000000 # 90: 00000000
.Ldata075: .byte 0x00
.Ldata076: .byte 0x00
.Ldata077: .byte 0x00
.balign 4
.Ldata078: .word 0x00000000 # 98: 00000000
.Ldata079: .byte 0x00
.Ldata080: .byte 0x00
.Ldata081: .byte 0x00
.balign 4
.Ldata082: .word 0x00000000 # a0: 00000000
.Ldata083: .byte 0x00
.Ldata084: .byte 0x00
.Ldata085: .byte 0x00
.balign 4
.Ldata086: .word 0x00000000 # a8: 00000000
.Ldata087: .byte 0x00
.Ldata088: .byte 0x00
.Ldata089: .byte 0x00
.balign 4
.Ldata090: .word 0x00000000 # b0: 00000000
.Ldata091: .byte 0x00
.Ldata092: .byte 0x00
.Ldata093: .byte 0x00
.balign 4
.Ldata094: .word 0x00000000 # b8: 00000000
.Ldata095: .byte 0x00
.Ldata096: .byte 0x00
.Ldata097: .byte 0x00
.balign 4
.Ldata098: .word 0x00000000 # c0: 00000000
.Ldata099: .byte 0x00
.Ldata100: .byte 0x00
.Ldata101: .byte 0x00
.balign 4
.Ldata102: .word 0x00000000 # c8: 00000000
.Ldata103: .byte 0x00
.Ldata104: .byte 0x00
.Ldata105: .byte 0x00
.balign 4
.Ldata106: .word 0x00000000 # d0: 00000000
.Ldata107: .byte 0x00
.Ldata108: .byte 0x00
.Ldata109: .byte 0x00
.balign 4
.Ldata110: .word 0x00000000 # d8: 00000000
.Ldata111: .byte 0x00
.Ldata112: .byte 0x00
.Ldata113: .byte 0x00
.balign 4
.Ldata114: .word 0x00000000 # e0: 00000000
.Ldata115: .byte 0x00
.Ldata116: .byte 0x00
.Ldata117: .byte 0x00
.balign 4
.Ldata118: .word 0x00000000 # e8: 00000000
.Ldata119: .byte 0x00
.Ldata120: .byte 0x00
.Ldata121: .byte 0x00
.balign 4
.Ldata122: .word 0x00000000 # f0: 00000000
.Ldata123: .byte 0x00
.Ldata124: .byte 0x00
.Ldata125: .byte 0x00
.balign 4
.Ldata126: .word 0x00000000 # f8: 00000000
.Ldata127: .byte 0x00
.Ldata128: .byte 0x00
.Ldata129: .byte 0x00
.section .irom0.text, "ax", @progbits
.literal_position # 0: 00000000
# 4: 00000400
# 8: 00000200
# c: 2eba0000
# 10: 175d0000
# 14: c00f0000
# 18: aaaa0000
# 1c: c7710000
# 20: 55550000
# 24: e3380000
# 28: aa2a0000
# 2c: 711c0000
# 30: 55150000
# 34: f6120000
# 38: 899d0000
# 3c: c44e0000
# 40: 83340000
# 44: 62270000
# 48: 411a0000
# 4c: b1130000
# 50: 81110000
# 54: c88d0000
# 58: e4460000
# 5c: 422f0000
# 60: 72230000
# 64: a1170000
# 68: b9110000
# 6c: 2d0e0000
# Function @ .irom0.text+0x70
.Lfunc003: movi a9, 0x0000ba2e # 70: 91e7ff
movi a4, 0x00040000 # 73: 41e4ff
movi a11, 0x00020000 # 76: b1e4ff
movi a7, 0x00005d17 # 79: 71e5ff
movi a5, 7 /* 0x00000007 */ # 7c: 0c75
movi a6, 3 /* 0x00000003 */ # 7e: 0c36
movi a2, 0 /* 0x00000000 */ # 80: 0c02
movi a10, 1 /* 0x00000001 */ # 82: 0c1a
movi a3, .Ldata002 # 84: 31dfff
movi a8, 2 /* 0x00000002 */ # 87: 0c28
s8i a8, a3, 54 /* 0x02 -> [.Ldata029] */ # 89: 824336
s8i a8, a3, 20 /* 0x02 -> [.Ldata011] */ # 8c: 824314
s8i a8, a3, 21 /* 0x02 -> [.Ldata012] */ # 8f: 824315
s8i a8, a3, 22 /* 0x02 -> [.Ldata013] */ # 92: 824316
s8i a10, a3, 46 /* 0x01 -> [.Ldata025] */ # 95: a2432e
s8i a10, a3, 12 /* 0x01 -> [.Ldata007] */ # 98: a2430c
s8i a10, a3, 13 /* 0x01 -> [.Ldata008] */ # 9b: a2430d
s8i a10, a3, 14 /* 0x01 -> [.Ldata009] */ # 9e: a2430e
s8i a2, a3, 4 /* 0x00 -> [.Ldata003] */ # a1: 224304
s8i a2, a3, 5 /* 0x00 -> [.Ldata004] */ # a4: 224305
s8i a2, a3, 6 /* 0x00 -> [.Ldata005] */ # a7: 224306
s8i a2, a3, 38 /* 0x00 -> [.Ldata021] */ # aa: 224326
s8i a6, a3, 62 /* 0x03 -> [.Ldata033] */ # ad: 62433e
s8i a6, a3, 28 /* 0x03 -> [.Ldata015] */ # b0: 62431c
s8i a6, a3, 29 /* 0x03 -> [.Ldata016] */ # b3: 62431d
s8i a6, a3, 30 /* 0x03 -> [.Ldata017] */ # b6: 62431e
s8i a5, a3, 60 /* 0x07 -> [.Ldata031] */ # b9: 52433c
s8i a5, a3, 61 /* 0x07 -> [.Ldata032] */ # bc: 52433d
s8i a5, a3, 70 /* 0x07 -> [.Ldata037] */ # bf: 524346
s8i a5, a3, 102 /* 0x07 -> [.Ldata053] */ # c2: 524366
s32i a7, a3, 56 /* 0x00005d17 -> [.Ldata030] */ # c5: 79e3
s32i a7, a3, 24 /* 0x00005d17 -> [.Ldata014] */ # c7: 7963
s32i a11, a3, 40 /* 0x00020000 -> [.Ldata022] */ # c9: b9a3
s32i a11, a3, 8 /* 0x00020000 -> [.Ldata006] */ # cb: b923
s32i a4, a3, 0 /* 0x00040000 -> [.Ldata002] */ # cd: 4903
s32i a9, a3, 48 /* 0x0000ba2e -> [.Ldata026] */ # cf: 99c3
s32i a9, a3, 16 /* 0x0000ba2e -> [.Ldata010] */ # d1: 9943
s32i a4, a3, 32 /* 0x00040000 -> [.Ldata018] */ # d3: 4983
movi a9, 0x00000fc0 # d5: 91cfff
movi a4, 11 /* 0x0000000b */ # d8: 0cb4
movi a11, 10 /* 0x0000000a */ # da: 0cab
movi a7, 6 /* 0x00000006 */ # dc: 0c67
s8i a7, a3, 52 /* 0x06 -> [.Ldata027] */ # de: 724334
s8i a7, a3, 53 /* 0x06 -> [.Ldata028] */ # e1: 724335
s8i a7, a3, 78 /* 0x06 -> [.Ldata041] */ # e4: 72434e
s8i a7, a3, 110 /* 0x06 -> [.Ldata057] */ # e7: 72436e
s8i a7, a3, 158 /* 0x06 -> [.Ldata081] */ # ea: 72439e
s8i a7, a3, 166 /* 0x06 -> [.Ldata085] */ # ed: 7243a6
s8i a7, a3, 174 /* 0x06 -> [.Ldata089] */ # f0: 7243ae
s8i a7, a3, 182 /* 0x06 -> [.Ldata093] */ # f3: 7243b6
s8i a7, a3, 190 /* 0x06 -> [.Ldata097] */ # f6: 7243be
s8i a7, a3, 222 /* 0x06 -> [.Ldata113] */ # f9: 7243de
s8i a7, a3, 230 /* 0x06 -> [.Ldata117] */ # fc: 7243e6
s8i a7, a3, 238 /* 0x06 -> [.Ldata121] */ # ff: 7243ee
s8i a7, a3, 246 /* 0x06 -> [.Ldata125] */ # 102: 7243f6
s8i a7, a3, 254 /* 0x06 -> [.Ldata129] */ # 105: 7243fe
s8i a11, a3, 84 /* 0x0a -> [.Ldata043] */ # 108: b24354
s8i a11, a3, 85 /* 0x0a -> [.Ldata044] */ # 10b: b24355
s8i a11, a3, 116 /* 0x0a -> [.Ldata059] */ # 10e: b24374
s8i a11, a3, 117 /* 0x0a -> [.Ldata060] */ # 111: b24375
s8i a11, a3, 140 /* 0x0a -> [.Ldata071] */ # 114: b2438c
s8i a11, a3, 141 /* 0x0a -> [.Ldata072] */ # 117: b2438d
s8i a11, a3, 148 /* 0x0a -> [.Ldata075] */ # 11a: b24394
s8i a11, a3, 149 /* 0x0a -> [.Ldata076] */ # 11d: b24395
s8i a11, a3, 204 /* 0x0a -> [.Ldata103] */ # 120: b243cc
s8i a11, a3, 205 /* 0x0a -> [.Ldata104] */ # 123: b243cd
s8i a11, a3, 212 /* 0x0a -> [.Ldata107] */ # 126: b243d4
s8i a11, a3, 213 /* 0x0a -> [.Ldata108] */ # 129: b243d5
s8i a4, a3, 92 /* 0x0b -> [.Ldata047] */ # 12c: 42435c
s8i a4, a3, 93 /* 0x0b -> [.Ldata048] */ # 12f: 42435d
s8i a4, a3, 124 /* 0x0b -> [.Ldata063] */ # 132: 42437c
s8i a4, a3, 125 /* 0x0b -> [.Ldata064] */ # 135: 42437d
s8i a4, a3, 132 /* 0x0b -> [.Ldata067] */ # 138: 424384
s8i a4, a3, 133 /* 0x0b -> [.Ldata068] */ # 13b: 424385
s8i a4, a3, 196 /* 0x0b -> [.Ldata099] */ # 13e: 4243c4
s8i a4, a3, 197 /* 0x0b -> [.Ldata100] */ # 141: 4243c5
s32i a9, a3, 184 /* 0x00000fc0 -> [.Ldata094] */ # 144: 92632e
s32i a9, a3, 240 /* 0x00000fc0 -> [.Ldata122] */ # 147: 92633c
movi a5, 0x000071c7 # 14a: 51b4ff
movi a6, 0x0000aaaa # 14d: 61b2ff
movi a2, 4 /* 0x00000004 */ # 150: 0c42
movi a10, 5 /* 0x00000005 */ # 152: 0c5a
movi a8, 9 /* 0x00000009 */ # 154: 0c98
s8i a8, a3, 76 /* 0x09 -> [.Ldata039] */ # 156: 82434c
s8i a8, a3, 77 /* 0x09 -> [.Ldata040] */ # 159: 82434d
s8i a8, a3, 108 /* 0x09 -> [.Ldata055] */ # 15c: 82436c
s8i a8, a3, 109 /* 0x09 -> [.Ldata056] */ # 15f: 82436d
s8i a8, a3, 68 /* 0x09 -> [.Ldata035] */ # 162: 824344
s8i a8, a3, 69 /* 0x09 -> [.Ldata036] */ # 165: 824345
s8i a8, a3, 100 /* 0x09 -> [.Ldata051] */ # 168: 824364
s8i a8, a3, 101 /* 0x09 -> [.Ldata052] */ # 16b: 824365
s8i a8, a3, 156 /* 0x09 -> [.Ldata079] */ # 16e: 82439c
s8i a8, a3, 157 /* 0x09 -> [.Ldata080] */ # 171: 82439d
s8i a8, a3, 164 /* 0x09 -> [.Ldata083] */ # 174: 8243a4
s8i a8, a3, 165 /* 0x09 -> [.Ldata084] */ # 177: 8243a5
s8i a8, a3, 172 /* 0x09 -> [.Ldata087] */ # 17a: 8243ac
s8i a8, a3, 173 /* 0x09 -> [.Ldata088] */ # 17d: 8243ad
s8i a8, a3, 180 /* 0x09 -> [.Ldata091] */ # 180: 8243b4
s8i a8, a3, 181 /* 0x09 -> [.Ldata092] */ # 183: 8243b5
s8i a8, a3, 188 /* 0x09 -> [.Ldata095] */ # 186: 8243bc
s8i a8, a3, 189 /* 0x09 -> [.Ldata096] */ # 189: 8243bd
s8i a8, a3, 220 /* 0x09 -> [.Ldata111] */ # 18c: 8243dc
s8i a8, a3, 221 /* 0x09 -> [.Ldata112] */ # 18f: 8243dd
s8i a8, a3, 228 /* 0x09 -> [.Ldata115] */ # 192: 8243e4
s8i a8, a3, 229 /* 0x09 -> [.Ldata116] */ # 195: 8243e5
s8i a8, a3, 236 /* 0x09 -> [.Ldata119] */ # 198: 8243ec
s8i a8, a3, 237 /* 0x09 -> [.Ldata120] */ # 19b: 8243ed
s8i a8, a3, 244 /* 0x09 -> [.Ldata123] */ # 19e: 8243f4
s8i a8, a3, 245 /* 0x09 -> [.Ldata124] */ # 1a1: 8243f5
s8i a8, a3, 252 /* 0x09 -> [.Ldata127] */ # 1a4: 8243fc
s8i a8, a3, 253 /* 0x09 -> [.Ldata128] */ # 1a7: 8243fd
s8i a10, a3, 44 /* 0x05 -> [.Ldata023] */ # 1aa: a2432c
s8i a10, a3, 45 /* 0x05 -> [.Ldata024] */ # 1ad: a2432d
s8i a10, a3, 86 /* 0x05 -> [.Ldata045] */ # 1b0: a24356
s8i a10, a3, 118 /* 0x05 -> [.Ldata061] */ # 1b3: a24376
s8i a10, a3, 142 /* 0x05 -> [.Ldata073] */ # 1b6: a2438e
s8i a10, a3, 150 /* 0x05 -> [.Ldata077] */ # 1b9: a24396
s8i a10, a3, 206 /* 0x05 -> [.Ldata105] */ # 1bc: a243ce
s8i a10, a3, 214 /* 0x05 -> [.Ldata109] */ # 1bf: a243d6
s8i a2, a3, 36 /* 0x04 -> [.Ldata019] */ # 1c2: 224324
s8i a2, a3, 37 /* 0x04 -> [.Ldata020] */ # 1c5: 224325
s8i a2, a3, 94 /* 0x04 -> [.Ldata049] */ # 1c8: 22435e
s8i a2, a3, 126 /* 0x04 -> [.Ldata065] */ # 1cb: 22437e
s8i a2, a3, 134 /* 0x04 -> [.Ldata069] */ # 1ce: 224386
s8i a2, a3, 198 /* 0x04 -> [.Ldata101] */ # 1d1: 2243c6
s32i a6, a3, 88 /* 0x0000aaaa -> [.Ldata046] */ # 1d4: 626316
s32i a5, a3, 120 /* 0x000071c7 -> [.Ldata062] */ # 1d7: 52631e
movi a9, 0x00001555 # 1da: 9195ff
s32i a9, a3, 64 /* 0x00001555 -> [.Ldata034] */ # 1dd: 926310
movi a5, 0x00003483 # 1e0: 5198ff
movi a6, 0x00004ec4 # 1e3: 6196ff
s32i a6, a3, 136 /* 0x00004ec4 -> [.Ldata070] */ # 1e6: 626322
s32i a5, a3, 144 /* 0x00003483 -> [.Ldata074] */ # 1e9: 526324
movi a9, 0x00008dc8 # 1ec: 919aff
s32i a9, a3, 192 /* 0x00008dc8 -> [.Ldata098] */ # 1ef: 926330
movi a5, 0x000017a1 # 1f2: 519cff
movi a6, 0x00002372 # 1f5: 619aff
s32i a6, a3, 216 /* 0x00002372 -> [.Ldata110] */ # 1f8: 626336
s32i a5, a3, 224 /* 0x000017a1 -> [.Ldata114] */ # 1fb: 526338
movi a2, 0x000038e3 # 1fe: 2189ff
movi a4, 0x00005555 # 201: 4187ff
s32i a4, a3, 80 /* 0x00005555 -> [.Ldata042] */ # 204: 426314
s32i a2, a3, 112 /* 0x000038e3 -> [.Ldata058] */ # 207: 22631c
movi a4, 0x00002762 # 20a: 418eff
movi a2, 0x00001a41 # 20d: 218eff
movi a10, 0x00001c71 # 210: a187ff
s32i a10, a3, 104 /* 0x00001c71 -> [.Ldata054] */ # 213: a2631a
s32i a2, a3, 160 /* 0x00001a41 -> [.Ldata082] */ # 216: 226328
s32i a4, a3, 152 /* 0x00002762 -> [.Ldata078] */ # 219: 426326
movi a2, 0x00000e2d # 21c: 2194ff
movi a11, 0x00002aaa # 21f: b182ff
movi a4, 0x000011b9 # 222: 4191ff
movi a10, 0x00001181 # 225: a18aff
s32i a10, a3, 176 /* 0x00001181 -> [.Ldata090] */ # 228: a2632c
s32i a4, a3, 232 /* 0x000011b9 -> [.Ldata118] */ # 22b: 42633a
s32i a11, a3, 72 /* 0x00002aaa -> [.Ldata038] */ # 22e: b26312
s32i a2, a3, 248 /* 0x00000e2d -> [.Ldata126] */ # 231: 22633e
movi a11, 0x000013b1 # 234: b186ff
movi a7, 0x00009d89 # 237: 7180ff
s32i a7, a3, 128 /* 0x00009d89 -> [.Ldata066] */ # 23a: 726320
s32i a11, a3, 168 /* 0x000013b1 -> [.Ldata086] */ # 23d: b2632a
movi a7, 0x00002f42 # 240: 7187ff
s32i a7, a3, 208 /* 0x00002f42 -> [.Ldata106] */ # 243: 726334
movi a8, 0x000012f6 # 246: 817bff
s32i a8, a3, 96 /* 0x000012f6 -> [.Ldata050] */ # 249: 826318
movi a8, 0x000046e4 # 24c: 8183ff
s32i a8, a3, 200 /* 0x000046e4 -> [.Ldata102] */ # 24f: 826332
ret /* 0x00000e2d */ # 252: 0df0
.literal_position # 254: 00000000
# Function @ .irom0.text+0x258
# Local variables/stack:
# (local0): word[4] @ -0x10
.global sdk_RC_SetBasicRate
.type sdk_RC_SetBasicRate, @function
sdk_RC_SetBasicRate:
addi sp, sp, -16 /* (local0) */ # 258: 12c1f0
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 25b: 0901
movi a0, 351 /* 0x0000015f */ # 25d: 02a15f
bnall a2, a0, .Lbr008 # 260: 07c205
call0 .Lfunc003 # 263: c5e0ff
j .Lbr009 # 266: c60b00
.Lbr008: movi a4, .Ldata002 # 269: 41faff
movi a8, 5 /* 0x00000005 */ # 26c: 0c58
movi a5, 7 /* 0x00000007 */ # 26e: 0c75
movi a2, 3 /* 0x00000003 */ # 270: 0c32
addi a9, a3, -1 /* arg1-0x1 */ # 272: 0b93
movi a7, 1 /* 0x00000001 */ # 274: 0c17
movi a6, 0 /* 0x00000000 */ # 276: 0c06
moveqz a6, a7, a9 # 278: 906783
movnez a2, a5, a6 # 27b: 602593
movnez a7, a8, a6 # 27e: 607893
s8i a7, a4, 92 /* a7 -> [.Ldata047] */ # 281: 72445c
s8i a7, a4, 124 /* a7 -> [.Ldata063] */ # 284: 72447c
s8i a7, a4, 84 /* a7 -> [.Ldata043] */ # 287: 724454
s8i a2, a4, 116 /* a2 -> [.Ldata059] */ # 28a: 224474
s8i a2, a4, 76 /* a2 -> [.Ldata039] */ # 28d: 22444c
s8i a2, a4, 108 /* a2 -> [.Ldata055] */ # 290: 22446c
s8i a2, a4, 68 /* a2 -> [.Ldata035] */ # 293: 224444
s8i a2, a4, 100 /* a2 -> [.Ldata051] */ # 296: 224464
.Lbr009: movi a2, 0 /* 0x00000000 */ # 299: 0c02
l32i a0, sp, 0 /* [(local0)] */ # 29b: 0801
addi sp, sp, 16 /* (top of frame) */ # 29d: 12c110
ret /* 0x00000000 */ # 2a0: 0df0

1471
binary_sdk/libpp/trc.S Normal file

File diff suppressed because it is too large Load diff

3274
binary_sdk/libpp/wdev.S Normal file

File diff suppressed because it is too large Load diff