donut-decomp/asm/bte/l2c_api_800901e0.s

937 lines
42 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 0x80006A00 - 0x80406260 ; 0x003FF860
.global L2CA_Register
L2CA_Register:
/* 800901E0 0008C020 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 800901E4 0008C024 7C 08 02 A6 */ mflr r0
/* 800901E8 0008C028 3C A0 80 50 */ lis r5, l2cb@ha
/* 800901EC 0008C02C 90 01 00 24 */ stw r0, 0x24(r1)
/* 800901F0 0008C030 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 800901F4 0008C034 3F E0 80 44 */ lis r31, "@1653"@ha
/* 800901F8 0008C038 3B FF D6 30 */ addi r31, r31, "@1653"@l
/* 800901FC 0008C03C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80090200 0008C040 7C 9E 23 78 */ mr r30, r4
/* 80090204 0008C044 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80090208 0008C048 7C 7D 1B 78 */ mr r29, r3
/* 8009020C 0008C04C 88 05 90 20 */ lbz r0, l2cb@l(r5)
/* 80090210 0008C050 28 00 00 03 */ cmplwi r0, 0x3
/* 80090214 0008C054 41 80 00 18 */ blt lbl_8009022C
/* 80090218 0008C058 3C 60 00 08 */ lis r3, 0x8
/* 8009021C 0008C05C 7F A5 EB 78 */ mr r5, r29
/* 80090220 0008C060 38 63 00 02 */ addi r3, r3, 0x2
/* 80090224 0008C064 38 9F 00 00 */ addi r4, r31, 0x0
/* 80090228 0008C068 4B FE 77 39 */ bl LogMsg_0
.global lbl_8009022C
lbl_8009022C:
/* 8009022C 0008C06C 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 80090230 0008C070 2C 00 00 00 */ cmpwi r0, 0x0
/* 80090234 0008C074 41 82 00 28 */ beq lbl_8009025C
/* 80090238 0008C078 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 8009023C 0008C07C 2C 00 00 00 */ cmpwi r0, 0x0
/* 80090240 0008C080 41 82 00 1C */ beq lbl_8009025C
/* 80090244 0008C084 80 1E 00 20 */ lwz r0, 0x20(r30)
/* 80090248 0008C088 2C 00 00 00 */ cmpwi r0, 0x0
/* 8009024C 0008C08C 41 82 00 10 */ beq lbl_8009025C
/* 80090250 0008C090 80 1E 00 14 */ lwz r0, 0x14(r30)
/* 80090254 0008C094 2C 00 00 00 */ cmpwi r0, 0x0
/* 80090258 0008C098 40 82 00 2C */ bne lbl_80090284
.global lbl_8009025C
lbl_8009025C:
/* 8009025C 0008C09C 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090260 0008C0A0 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090264 0008C0A4 28 00 00 01 */ cmplwi r0, 0x1
/* 80090268 0008C0A8 41 80 00 14 */ blt lbl_8009027C
/* 8009026C 0008C0AC 7F A5 EB 78 */ mr r5, r29
/* 80090270 0008C0B0 38 9F 00 30 */ addi r4, r31, 0x30
/* 80090274 0008C0B4 3C 60 00 08 */ lis r3, 0x8
/* 80090278 0008C0B8 4B FE 76 E9 */ bl LogMsg_0
.global lbl_8009027C
lbl_8009027C:
/* 8009027C 0008C0BC 38 60 00 00 */ li r3, 0x0
/* 80090280 0008C0C0 48 00 00 E0 */ b lbl_80090360
.global lbl_80090284
lbl_80090284:
/* 80090284 0008C0C4 73 A0 01 01 */ andi. r0, r29, 0x101
/* 80090288 0008C0C8 2C 00 00 01 */ cmpwi r0, 0x1
/* 8009028C 0008C0CC 41 82 00 2C */ beq lbl_800902B8
/* 80090290 0008C0D0 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090294 0008C0D4 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090298 0008C0D8 28 00 00 01 */ cmplwi r0, 0x1
/* 8009029C 0008C0DC 41 80 00 14 */ blt lbl_800902B0
/* 800902A0 0008C0E0 7F A5 EB 78 */ mr r5, r29
/* 800902A4 0008C0E4 38 9F 00 58 */ addi r4, r31, 0x58
/* 800902A8 0008C0E8 3C 60 00 08 */ lis r3, 0x8
/* 800902AC 0008C0EC 4B FE 76 B5 */ bl LogMsg_0
.global lbl_800902B0
lbl_800902B0:
/* 800902B0 0008C0F0 38 60 00 00 */ li r3, 0x0
/* 800902B4 0008C0F4 48 00 00 AC */ b lbl_80090360
.global lbl_800902B8
lbl_800902B8:
/* 800902B8 0008C0F8 7F A3 EB 78 */ mr r3, r29
/* 800902BC 0008C0FC 48 00 58 ED */ bl l2cu_find_rcb_by_psm
/* 800902C0 0008C100 2C 03 00 00 */ cmpwi r3, 0x0
/* 800902C4 0008C104 7C 65 1B 78 */ mr r5, r3
/* 800902C8 0008C108 40 82 00 44 */ bne lbl_8009030C
/* 800902CC 0008C10C 7F A3 EB 78 */ mr r3, r29
/* 800902D0 0008C110 48 00 58 7D */ bl l2cu_allocate_rcb
/* 800902D4 0008C114 2C 03 00 00 */ cmpwi r3, 0x0
/* 800902D8 0008C118 7C 65 1B 78 */ mr r5, r3
/* 800902DC 0008C11C 40 82 00 30 */ bne lbl_8009030C
/* 800902E0 0008C120 3C 60 80 50 */ lis r3, l2cb@ha
/* 800902E4 0008C124 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 800902E8 0008C128 28 00 00 02 */ cmplwi r0, 0x2
/* 800902EC 0008C12C 41 80 00 18 */ blt lbl_80090304
/* 800902F0 0008C130 3C 60 00 08 */ lis r3, 0x8
/* 800902F4 0008C134 7F A5 EB 78 */ mr r5, r29
/* 800902F8 0008C138 38 63 00 01 */ addi r3, r3, 0x1
/* 800902FC 0008C13C 38 9F 00 80 */ addi r4, r31, 0x80
/* 80090300 0008C140 4B FE 76 61 */ bl LogMsg_0
.global lbl_80090304
lbl_80090304:
/* 80090304 0008C144 38 60 00 00 */ li r3, 0x0
/* 80090308 0008C148 48 00 00 58 */ b lbl_80090360
.global lbl_8009030C
lbl_8009030C:
/* 8009030C 0008C14C 80 9E 00 00 */ lwz r4, 0x0(r30)
/* 80090310 0008C150 38 60 00 01 */ li r3, 0x1
/* 80090314 0008C154 80 1E 00 04 */ lwz r0, 0x4(r30)
/* 80090318 0008C158 90 85 00 04 */ stw r4, 0x4(r5)
/* 8009031C 0008C15C 90 05 00 08 */ stw r0, 0x8(r5)
/* 80090320 0008C160 80 9E 00 08 */ lwz r4, 0x8(r30)
/* 80090324 0008C164 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 80090328 0008C168 90 85 00 0C */ stw r4, 0xc(r5)
/* 8009032C 0008C16C 90 05 00 10 */ stw r0, 0x10(r5)
/* 80090330 0008C170 80 9E 00 10 */ lwz r4, 0x10(r30)
/* 80090334 0008C174 80 1E 00 14 */ lwz r0, 0x14(r30)
/* 80090338 0008C178 90 85 00 14 */ stw r4, 0x14(r5)
/* 8009033C 0008C17C 90 05 00 18 */ stw r0, 0x18(r5)
/* 80090340 0008C180 80 9E 00 18 */ lwz r4, 0x18(r30)
/* 80090344 0008C184 80 1E 00 1C */ lwz r0, 0x1c(r30)
/* 80090348 0008C188 90 85 00 1C */ stw r4, 0x1c(r5)
/* 8009034C 0008C18C 90 05 00 20 */ stw r0, 0x20(r5)
/* 80090350 0008C190 80 9E 00 20 */ lwz r4, 0x20(r30)
/* 80090354 0008C194 80 1E 00 24 */ lwz r0, 0x24(r30)
/* 80090358 0008C198 90 85 00 24 */ stw r4, 0x24(r5)
/* 8009035C 0008C19C 90 05 00 28 */ stw r0, 0x28(r5)
.global lbl_80090360
lbl_80090360:
/* 80090360 0008C1A0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80090364 0008C1A4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80090368 0008C1A8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8009036C 0008C1AC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80090370 0008C1B0 7C 08 03 A6 */ mtlr r0
/* 80090374 0008C1B4 38 21 00 20 */ addi r1, r1, 0x20
/* 80090378 0008C1B8 4E 80 00 20 */ blr
.global L2CA_Deregister
L2CA_Deregister:
/* 8009037C 0008C1BC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80090380 0008C1C0 7C 08 02 A6 */ mflr r0
/* 80090384 0008C1C4 3C 80 80 50 */ lis r4, l2cb@ha
/* 80090388 0008C1C8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8009038C 0008C1CC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80090390 0008C1D0 7C 7F 1B 78 */ mr r31, r3
/* 80090394 0008C1D4 88 04 90 20 */ lbz r0, l2cb@l(r4)
/* 80090398 0008C1D8 28 00 00 03 */ cmplwi r0, 0x3
/* 8009039C 0008C1DC 41 80 00 1C */ blt lbl_800903B8
/* 800903A0 0008C1E0 3C 60 00 08 */ lis r3, 0x8
/* 800903A4 0008C1E4 3C 80 80 44 */ lis r4, "@1663_8043D6D8"@ha
/* 800903A8 0008C1E8 7F E5 FB 78 */ mr r5, r31
/* 800903AC 0008C1EC 38 63 00 02 */ addi r3, r3, 0x2
/* 800903B0 0008C1F0 38 84 D6 D8 */ addi r4, r4, "@1663_8043D6D8"@l
/* 800903B4 0008C1F4 4B FE 75 AD */ bl LogMsg_0
.global lbl_800903B8
lbl_800903B8:
/* 800903B8 0008C1F8 7F E3 FB 78 */ mr r3, r31
/* 800903BC 0008C1FC 48 00 57 ED */ bl l2cu_find_rcb_by_psm
/* 800903C0 0008C200 2C 03 00 00 */ cmpwi r3, 0x0
/* 800903C4 0008C204 41 82 00 0C */ beq lbl_800903D0
/* 800903C8 0008C208 48 00 57 D1 */ bl l2cu_release_rcb
/* 800903CC 0008C20C 48 00 00 2C */ b lbl_800903F8
.global lbl_800903D0
lbl_800903D0:
/* 800903D0 0008C210 3C 60 80 50 */ lis r3, l2cb@ha
/* 800903D4 0008C214 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 800903D8 0008C218 28 00 00 02 */ cmplwi r0, 0x2
/* 800903DC 0008C21C 41 80 00 1C */ blt lbl_800903F8
/* 800903E0 0008C220 3C 60 00 08 */ lis r3, 0x8
/* 800903E4 0008C224 3C 80 80 44 */ lis r4, "@1664_8043D70C"@ha
/* 800903E8 0008C228 7F E5 FB 78 */ mr r5, r31
/* 800903EC 0008C22C 38 63 00 01 */ addi r3, r3, 0x1
/* 800903F0 0008C230 38 84 D7 0C */ addi r4, r4, "@1664_8043D70C"@l
/* 800903F4 0008C234 4B FE 75 6D */ bl LogMsg_0
.global lbl_800903F8
lbl_800903F8:
/* 800903F8 0008C238 80 01 00 14 */ lwz r0, 0x14(r1)
/* 800903FC 0008C23C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80090400 0008C240 7C 08 03 A6 */ mtlr r0
/* 80090404 0008C244 38 21 00 10 */ addi r1, r1, 0x10
/* 80090408 0008C248 4E 80 00 20 */ blr
.global L2CA_ConnectReq
L2CA_ConnectReq:
/* 8009040C 0008C24C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80090410 0008C250 7C 08 02 A6 */ mflr r0
/* 80090414 0008C254 3C A0 80 50 */ lis r5, l2cb@ha
/* 80090418 0008C258 90 01 00 24 */ stw r0, 0x24(r1)
/* 8009041C 0008C25C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80090420 0008C260 3F E0 80 44 */ lis r31, "@1653"@ha
/* 80090424 0008C264 3B FF D6 30 */ addi r31, r31, "@1653"@l
/* 80090428 0008C268 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8009042C 0008C26C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80090430 0008C270 7C 7D 1B 78 */ mr r29, r3
/* 80090434 0008C274 93 81 00 10 */ stw r28, 0x10(r1)
/* 80090438 0008C278 7C 9C 23 78 */ mr r28, r4
/* 8009043C 0008C27C 88 05 90 20 */ lbz r0, l2cb@l(r5)
/* 80090440 0008C280 28 00 00 03 */ cmplwi r0, 0x3
/* 80090444 0008C284 41 80 00 18 */ blt lbl_8009045C
/* 80090448 0008C288 3C 60 00 08 */ lis r3, 0x8
/* 8009044C 0008C28C 7F A5 EB 78 */ mr r5, r29
/* 80090450 0008C290 38 63 00 02 */ addi r3, r3, 0x2
/* 80090454 0008C294 38 9F 01 10 */ addi r4, r31, 0x110
/* 80090458 0008C298 4B FE 75 09 */ bl LogMsg_0
.global lbl_8009045C
lbl_8009045C:
/* 8009045C 0008C29C 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090460 0008C2A0 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090464 0008C2A4 28 00 00 03 */ cmplwi r0, 0x3
/* 80090468 0008C2A8 41 80 00 2C */ blt lbl_80090494
/* 8009046C 0008C2AC 3C 60 00 08 */ lis r3, 0x8
/* 80090470 0008C2B0 88 BC 00 00 */ lbz r5, 0x0(r28)
/* 80090474 0008C2B4 88 DC 00 01 */ lbz r6, 0x1(r28)
/* 80090478 0008C2B8 38 63 00 02 */ addi r3, r3, 0x2
/* 8009047C 0008C2BC 88 FC 00 02 */ lbz r7, 0x2(r28)
/* 80090480 0008C2C0 38 9F 01 30 */ addi r4, r31, 0x130
/* 80090484 0008C2C4 89 1C 00 03 */ lbz r8, 0x3(r28)
/* 80090488 0008C2C8 89 3C 00 04 */ lbz r9, 0x4(r28)
/* 8009048C 0008C2CC 89 5C 00 05 */ lbz r10, 0x5(r28)
/* 80090490 0008C2D0 4B FE 74 D1 */ bl LogMsg_0
.global lbl_80090494
lbl_80090494:
/* 80090494 0008C2D4 4B FE FF F5 */ bl BTM_IsDeviceUp
/* 80090498 0008C2D8 54 60 06 3F */ clrlwi. r0, r3, 24
/* 8009049C 0008C2DC 40 82 00 2C */ bne lbl_800904C8
/* 800904A0 0008C2E0 3C 60 80 50 */ lis r3, l2cb@ha
/* 800904A4 0008C2E4 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 800904A8 0008C2E8 28 00 00 02 */ cmplwi r0, 0x2
/* 800904AC 0008C2EC 41 80 00 14 */ blt lbl_800904C0
/* 800904B0 0008C2F0 3C 60 00 08 */ lis r3, 0x8
/* 800904B4 0008C2F4 38 9F 01 68 */ addi r4, r31, 0x168
/* 800904B8 0008C2F8 38 63 00 01 */ addi r3, r3, 0x1
/* 800904BC 0008C2FC 4B FE 74 A5 */ bl LogMsg_0
.global lbl_800904C0
lbl_800904C0:
/* 800904C0 0008C300 38 60 00 00 */ li r3, 0x0
/* 800904C4 0008C304 48 00 01 5C */ b lbl_80090620
.global lbl_800904C8
lbl_800904C8:
/* 800904C8 0008C308 7F A3 EB 78 */ mr r3, r29
/* 800904CC 0008C30C 48 00 56 DD */ bl l2cu_find_rcb_by_psm
/* 800904D0 0008C310 2C 03 00 00 */ cmpwi r3, 0x0
/* 800904D4 0008C314 7C 7E 1B 78 */ mr r30, r3
/* 800904D8 0008C318 40 82 00 30 */ bne lbl_80090508
/* 800904DC 0008C31C 3C 60 80 50 */ lis r3, l2cb@ha
/* 800904E0 0008C320 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 800904E4 0008C324 28 00 00 02 */ cmplwi r0, 0x2
/* 800904E8 0008C328 41 80 00 18 */ blt lbl_80090500
/* 800904EC 0008C32C 3C 60 00 08 */ lis r3, 0x8
/* 800904F0 0008C330 7F A5 EB 78 */ mr r5, r29
/* 800904F4 0008C334 38 63 00 01 */ addi r3, r3, 0x1
/* 800904F8 0008C338 38 9F 01 8C */ addi r4, r31, 0x18c
/* 800904FC 0008C33C 4B FE 74 65 */ bl LogMsg_0
.global lbl_80090500
lbl_80090500:
/* 80090500 0008C340 38 60 00 00 */ li r3, 0x0
/* 80090504 0008C344 48 00 01 1C */ b lbl_80090620
.global lbl_80090508
lbl_80090508:
/* 80090508 0008C348 7F 83 E3 78 */ mr r3, r28
/* 8009050C 0008C34C 48 00 41 09 */ bl l2cu_find_lcb_by_bd_addr
/* 80090510 0008C350 2C 03 00 00 */ cmpwi r3, 0x0
/* 80090514 0008C354 7C 7D 1B 78 */ mr r29, r3
/* 80090518 0008C358 40 82 00 54 */ bne lbl_8009056C
/* 8009051C 0008C35C 7F 83 E3 78 */ mr r3, r28
/* 80090520 0008C360 48 00 3F 21 */ bl l2cu_allocate_lcb
/* 80090524 0008C364 2C 03 00 00 */ cmpwi r3, 0x0
/* 80090528 0008C368 7C 7D 1B 78 */ mr r29, r3
/* 8009052C 0008C36C 40 82 00 2C */ bne lbl_80090558
/* 80090530 0008C370 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090534 0008C374 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090538 0008C378 28 00 00 02 */ cmplwi r0, 0x2
/* 8009053C 0008C37C 41 80 00 14 */ blt lbl_80090550
/* 80090540 0008C380 3C 60 00 08 */ lis r3, 0x8
/* 80090544 0008C384 38 9F 01 BC */ addi r4, r31, 0x1bc
/* 80090548 0008C388 38 63 00 01 */ addi r3, r3, 0x1
/* 8009054C 0008C38C 4B FE 74 15 */ bl LogMsg_0
.global lbl_80090550
lbl_80090550:
/* 80090550 0008C390 38 60 00 00 */ li r3, 0x0
/* 80090554 0008C394 48 00 00 CC */ b lbl_80090620
.global lbl_80090558
lbl_80090558:
/* 80090558 0008C398 48 00 5A 4D */ bl l2cu_create_conn
/* 8009055C 0008C39C 54 60 06 3F */ clrlwi. r0, r3, 24
/* 80090560 0008C3A0 40 82 00 0C */ bne lbl_8009056C
/* 80090564 0008C3A4 38 60 00 00 */ li r3, 0x0
/* 80090568 0008C3A8 48 00 00 B8 */ b lbl_80090620
.global lbl_8009056C
lbl_8009056C:
/* 8009056C 0008C3AC 80 1D 00 04 */ lwz r0, 0x4(r29)
/* 80090570 0008C3B0 2C 00 00 05 */ cmpwi r0, 0x5
/* 80090574 0008C3B4 40 82 00 2C */ bne lbl_800905A0
/* 80090578 0008C3B8 3C 60 80 50 */ lis r3, l2cb@ha
/* 8009057C 0008C3BC 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090580 0008C3C0 28 00 00 03 */ cmplwi r0, 0x3
/* 80090584 0008C3C4 41 80 00 14 */ blt lbl_80090598
/* 80090588 0008C3C8 3C 60 00 08 */ lis r3, 0x8
/* 8009058C 0008C3CC 38 9F 01 E0 */ addi r4, r31, 0x1e0
/* 80090590 0008C3D0 38 63 00 02 */ addi r3, r3, 0x2
/* 80090594 0008C3D4 4B FE 73 CD */ bl LogMsg_0
.global lbl_80090598
lbl_80090598:
/* 80090598 0008C3D8 38 60 00 00 */ li r3, 0x0
/* 8009059C 0008C3DC 48 00 00 84 */ b lbl_80090620
.global lbl_800905A0
lbl_800905A0:
/* 800905A0 0008C3E0 7F A3 EB 78 */ mr r3, r29
/* 800905A4 0008C3E4 48 00 52 9D */ bl l2cu_allocate_ccb
/* 800905A8 0008C3E8 2C 03 00 00 */ cmpwi r3, 0x0
/* 800905AC 0008C3EC 7C 7C 1B 78 */ mr r28, r3
/* 800905B0 0008C3F0 40 82 00 2C */ bne lbl_800905DC
/* 800905B4 0008C3F4 3C 60 80 50 */ lis r3, l2cb@ha
/* 800905B8 0008C3F8 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 800905BC 0008C3FC 28 00 00 02 */ cmplwi r0, 0x2
/* 800905C0 0008C400 41 80 00 14 */ blt lbl_800905D4
/* 800905C4 0008C404 3C 60 00 08 */ lis r3, 0x8
/* 800905C8 0008C408 38 9F 02 18 */ addi r4, r31, 0x218
/* 800905CC 0008C40C 38 63 00 01 */ addi r3, r3, 0x1
/* 800905D0 0008C410 4B FE 73 91 */ bl LogMsg_0
.global lbl_800905D4
lbl_800905D4:
/* 800905D4 0008C414 38 60 00 00 */ li r3, 0x0
/* 800905D8 0008C418 48 00 00 48 */ b lbl_80090620
.global lbl_800905DC
lbl_800905DC:
/* 800905DC 0008C41C 93 C3 00 30 */ stw r30, 0x30(r3)
/* 800905E0 0008C420 80 1D 00 04 */ lwz r0, 0x4(r29)
/* 800905E4 0008C424 2C 00 00 04 */ cmpwi r0, 0x4
/* 800905E8 0008C428 40 82 00 10 */ bne lbl_800905F8
/* 800905EC 0008C42C 38 80 00 14 */ li r4, 0x14
/* 800905F0 0008C430 38 A0 00 00 */ li r5, 0x0
/* 800905F4 0008C434 48 00 07 B5 */ bl l2c_csm_execute
.global lbl_800905F8
lbl_800905F8:
/* 800905F8 0008C438 3C 60 80 50 */ lis r3, l2cb@ha
/* 800905FC 0008C43C 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090600 0008C440 28 00 00 03 */ cmplwi r0, 0x3
/* 80090604 0008C444 41 80 00 18 */ blt lbl_8009061C
/* 80090608 0008C448 3C 60 00 08 */ lis r3, 0x8
/* 8009060C 0008C44C A0 BC 00 14 */ lhz r5, 0x14(r28)
/* 80090610 0008C450 38 63 00 02 */ addi r3, r3, 0x2
/* 80090614 0008C454 38 9F 02 3C */ addi r4, r31, 0x23c
/* 80090618 0008C458 4B FE 73 49 */ bl LogMsg_0
.global lbl_8009061C
lbl_8009061C:
/* 8009061C 0008C45C A0 7C 00 14 */ lhz r3, 0x14(r28)
.global lbl_80090620
lbl_80090620:
/* 80090620 0008C460 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80090624 0008C464 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80090628 0008C468 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8009062C 0008C46C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80090630 0008C470 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80090634 0008C474 7C 08 03 A6 */ mtlr r0
/* 80090638 0008C478 38 21 00 20 */ addi r1, r1, 0x20
/* 8009063C 0008C47C 4E 80 00 20 */ blr
.global L2CA_ConnectRsp
L2CA_ConnectRsp:
/* 80090640 0008C480 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80090644 0008C484 7C 08 02 A6 */ mflr r0
/* 80090648 0008C488 90 01 00 34 */ stw r0, 0x34(r1)
/* 8009064C 0008C48C 39 61 00 30 */ addi r11, r1, 0x30
/* 80090650 0008C490 4B F7 6C E9 */ bl lbl_80007338
/* 80090654 0008C494 3D 00 80 50 */ lis r8, l2cb@ha
/* 80090658 0008C498 3F E0 80 44 */ lis r31, "@1653"@ha
/* 8009065C 0008C49C 88 08 90 20 */ lbz r0, l2cb@l(r8)
/* 80090660 0008C4A0 7C 7A 1B 78 */ mr r26, r3
/* 80090664 0008C4A4 7C 9B 23 78 */ mr r27, r4
/* 80090668 0008C4A8 7C BC 2B 78 */ mr r28, r5
/* 8009066C 0008C4AC 28 00 00 03 */ cmplwi r0, 0x3
/* 80090670 0008C4B0 7C DD 33 78 */ mr r29, r6
/* 80090674 0008C4B4 7C FE 3B 78 */ mr r30, r7
/* 80090678 0008C4B8 3B FF D6 30 */ addi r31, r31, "@1653"@l
/* 8009067C 0008C4BC 41 80 00 14 */ blt lbl_80090690
/* 80090680 0008C4C0 3C 60 00 08 */ lis r3, 0x8
/* 80090684 0008C4C4 38 9F 02 6C */ addi r4, r31, 0x26c
/* 80090688 0008C4C8 38 63 00 02 */ addi r3, r3, 0x2
/* 8009068C 0008C4CC 4B FE 72 D5 */ bl LogMsg_0
.global lbl_80090690
lbl_80090690:
/* 80090690 0008C4D0 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090694 0008C4D4 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090698 0008C4D8 28 00 00 03 */ cmplwi r0, 0x3
/* 8009069C 0008C4DC 41 80 00 2C */ blt lbl_800906C8
/* 800906A0 0008C4E0 3C 60 00 08 */ lis r3, 0x8
/* 800906A4 0008C4E4 88 BA 00 00 */ lbz r5, 0x0(r26)
/* 800906A8 0008C4E8 88 DA 00 01 */ lbz r6, 0x1(r26)
/* 800906AC 0008C4EC 38 63 00 02 */ addi r3, r3, 0x2
/* 800906B0 0008C4F0 88 FA 00 02 */ lbz r7, 0x2(r26)
/* 800906B4 0008C4F4 38 9F 02 A4 */ addi r4, r31, 0x2a4
/* 800906B8 0008C4F8 89 1A 00 03 */ lbz r8, 0x3(r26)
/* 800906BC 0008C4FC 89 3A 00 04 */ lbz r9, 0x4(r26)
/* 800906C0 0008C500 89 5A 00 05 */ lbz r10, 0x5(r26)
/* 800906C4 0008C504 4B FE 72 9D */ bl LogMsg_0
.global lbl_800906C8
lbl_800906C8:
/* 800906C8 0008C508 7F 43 D3 78 */ mr r3, r26
/* 800906CC 0008C50C 48 00 3F 49 */ bl l2cu_find_lcb_by_bd_addr
/* 800906D0 0008C510 2C 03 00 00 */ cmpwi r3, 0x0
/* 800906D4 0008C514 40 82 00 2C */ bne lbl_80090700
/* 800906D8 0008C518 3C 60 80 50 */ lis r3, l2cb@ha
/* 800906DC 0008C51C 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 800906E0 0008C520 28 00 00 02 */ cmplwi r0, 0x2
/* 800906E4 0008C524 41 80 00 14 */ blt lbl_800906F8
/* 800906E8 0008C528 3C 60 00 08 */ lis r3, 0x8
/* 800906EC 0008C52C 38 9F 02 DC */ addi r4, r31, 0x2dc
/* 800906F0 0008C530 38 63 00 01 */ addi r3, r3, 0x1
/* 800906F4 0008C534 4B FE 72 6D */ bl LogMsg_0
.global lbl_800906F8
lbl_800906F8:
/* 800906F8 0008C538 38 60 00 00 */ li r3, 0x0
/* 800906FC 0008C53C 48 00 00 BC */ b lbl_800907B8
.global lbl_80090700
lbl_80090700:
/* 80090700 0008C540 7F 84 E3 78 */ mr r4, r28
/* 80090704 0008C544 48 00 53 ED */ bl l2cu_find_ccb_by_cid
/* 80090708 0008C548 2C 03 00 00 */ cmpwi r3, 0x0
/* 8009070C 0008C54C 40 82 00 2C */ bne lbl_80090738
/* 80090710 0008C550 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090714 0008C554 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090718 0008C558 28 00 00 02 */ cmplwi r0, 0x2
/* 8009071C 0008C55C 41 80 00 14 */ blt lbl_80090730
/* 80090720 0008C560 3C 60 00 08 */ lis r3, 0x8
/* 80090724 0008C564 38 9F 03 00 */ addi r4, r31, 0x300
/* 80090728 0008C568 38 63 00 01 */ addi r3, r3, 0x1
/* 8009072C 0008C56C 4B FE 72 35 */ bl LogMsg_0
.global lbl_80090730
lbl_80090730:
/* 80090730 0008C570 38 60 00 00 */ li r3, 0x0
/* 80090734 0008C574 48 00 00 84 */ b lbl_800907B8
.global lbl_80090738
lbl_80090738:
/* 80090738 0008C578 88 A3 00 36 */ lbz r5, 0x36(r3)
/* 8009073C 0008C57C 7C 05 D8 40 */ cmplw r5, r27
/* 80090740 0008C580 41 82 00 30 */ beq lbl_80090770
/* 80090744 0008C584 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090748 0008C588 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 8009074C 0008C58C 28 00 00 02 */ cmplwi r0, 0x2
/* 80090750 0008C590 41 80 00 18 */ blt lbl_80090768
/* 80090754 0008C594 3C 60 00 08 */ lis r3, 0x8
/* 80090758 0008C598 7F 66 DB 78 */ mr r6, r27
/* 8009075C 0008C59C 38 9F 03 24 */ addi r4, r31, 0x324
/* 80090760 0008C5A0 38 63 00 01 */ addi r3, r3, 0x1
/* 80090764 0008C5A4 4B FE 71 FD */ bl LogMsg_0
.global lbl_80090768
lbl_80090768:
/* 80090768 0008C5A8 38 60 00 00 */ li r3, 0x0
/* 8009076C 0008C5AC 48 00 00 4C */ b lbl_800907B8
.global lbl_80090770
lbl_80090770:
/* 80090770 0008C5B0 2C 1D 00 00 */ cmpwi r29, 0x0
/* 80090774 0008C5B4 40 82 00 14 */ bne lbl_80090788
/* 80090778 0008C5B8 38 80 00 15 */ li r4, 0x15
/* 8009077C 0008C5BC 38 A0 00 00 */ li r5, 0x0
/* 80090780 0008C5C0 48 00 06 29 */ bl l2c_csm_execute
/* 80090784 0008C5C4 48 00 00 30 */ b lbl_800907B4
.global lbl_80090788
lbl_80090788:
/* 80090788 0008C5C8 28 1D 00 01 */ cmplwi r29, 0x1
/* 8009078C 0008C5CC B3 A1 00 12 */ sth r29, 0x12(r1)
/* 80090790 0008C5D0 B3 C1 00 14 */ sth r30, 0x14(r1)
/* 80090794 0008C5D4 40 82 00 14 */ bne lbl_800907A8
/* 80090798 0008C5D8 38 A1 00 08 */ addi r5, r1, 0x8
/* 8009079C 0008C5DC 38 80 00 15 */ li r4, 0x15
/* 800907A0 0008C5E0 48 00 06 09 */ bl l2c_csm_execute
/* 800907A4 0008C5E4 48 00 00 10 */ b lbl_800907B4
.global lbl_800907A8
lbl_800907A8:
/* 800907A8 0008C5E8 38 A1 00 08 */ addi r5, r1, 0x8
/* 800907AC 0008C5EC 38 80 00 16 */ li r4, 0x16
/* 800907B0 0008C5F0 48 00 05 F9 */ bl l2c_csm_execute
.global lbl_800907B4
lbl_800907B4:
/* 800907B4 0008C5F4 38 60 00 01 */ li r3, 0x1
.global lbl_800907B8
lbl_800907B8:
/* 800907B8 0008C5F8 39 61 00 30 */ addi r11, r1, 0x30
/* 800907BC 0008C5FC 4B F7 6B C9 */ bl lbl_80007384
/* 800907C0 0008C600 80 01 00 34 */ lwz r0, 0x34(r1)
/* 800907C4 0008C604 7C 08 03 A6 */ mtlr r0
/* 800907C8 0008C608 38 21 00 30 */ addi r1, r1, 0x30
/* 800907CC 0008C60C 4E 80 00 20 */ blr
.global L2CA_ConfigReq
L2CA_ConfigReq:
/* 800907D0 0008C610 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 800907D4 0008C614 7C 08 02 A6 */ mflr r0
/* 800907D8 0008C618 3C A0 80 50 */ lis r5, l2cb@ha
/* 800907DC 0008C61C 90 01 00 14 */ stw r0, 0x14(r1)
/* 800907E0 0008C620 93 E1 00 0C */ stw r31, 0xc(r1)
/* 800907E4 0008C624 7C 9F 23 78 */ mr r31, r4
/* 800907E8 0008C628 93 C1 00 08 */ stw r30, 0x8(r1)
/* 800907EC 0008C62C 7C 7E 1B 78 */ mr r30, r3
/* 800907F0 0008C630 88 05 90 20 */ lbz r0, l2cb@l(r5)
/* 800907F4 0008C634 28 00 00 03 */ cmplwi r0, 0x3
/* 800907F8 0008C638 41 80 00 1C */ blt lbl_80090814
/* 800907FC 0008C63C 3C 60 00 08 */ lis r3, 0x8
/* 80090800 0008C640 3C 80 80 44 */ lis r4, "@1716_8043D988"@ha
/* 80090804 0008C644 7F C5 F3 78 */ mr r5, r30
/* 80090808 0008C648 38 63 00 02 */ addi r3, r3, 0x2
/* 8009080C 0008C64C 38 84 D9 88 */ addi r4, r4, "@1716_8043D988"@l
/* 80090810 0008C650 4B FE 71 51 */ bl LogMsg_0
.global lbl_80090814
lbl_80090814:
/* 80090814 0008C654 7F C4 F3 78 */ mr r4, r30
/* 80090818 0008C658 38 60 00 00 */ li r3, 0x0
/* 8009081C 0008C65C 48 00 52 D5 */ bl l2cu_find_ccb_by_cid
/* 80090820 0008C660 2C 03 00 00 */ cmpwi r3, 0x0
/* 80090824 0008C664 40 82 00 34 */ bne lbl_80090858
/* 80090828 0008C668 3C 60 80 50 */ lis r3, l2cb@ha
/* 8009082C 0008C66C 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090830 0008C670 28 00 00 02 */ cmplwi r0, 0x2
/* 80090834 0008C674 41 80 00 1C */ blt lbl_80090850
/* 80090838 0008C678 3C 60 00 08 */ lis r3, 0x8
/* 8009083C 0008C67C 3C 80 80 44 */ lis r4, "@1717_8043D9A8"@ha
/* 80090840 0008C680 7F C5 F3 78 */ mr r5, r30
/* 80090844 0008C684 38 63 00 01 */ addi r3, r3, 0x1
/* 80090848 0008C688 38 84 D9 A8 */ addi r4, r4, "@1717_8043D9A8"@l
/* 8009084C 0008C68C 4B FE 71 15 */ bl LogMsg_0
.global lbl_80090850
lbl_80090850:
/* 80090850 0008C690 38 60 00 00 */ li r3, 0x0
/* 80090854 0008C694 48 00 00 1C */ b lbl_80090870
.global lbl_80090858
lbl_80090858:
/* 80090858 0008C698 38 00 00 00 */ li r0, 0x0
/* 8009085C 0008C69C 7F E5 FB 78 */ mr r5, r31
/* 80090860 0008C6A0 98 1F 00 24 */ stb r0, 0x24(r31)
/* 80090864 0008C6A4 38 80 00 17 */ li r4, 0x17
/* 80090868 0008C6A8 48 00 05 41 */ bl l2c_csm_execute
/* 8009086C 0008C6AC 38 60 00 01 */ li r3, 0x1
.global lbl_80090870
lbl_80090870:
/* 80090870 0008C6B0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80090874 0008C6B4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80090878 0008C6B8 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8009087C 0008C6BC 7C 08 03 A6 */ mtlr r0
/* 80090880 0008C6C0 38 21 00 10 */ addi r1, r1, 0x10
/* 80090884 0008C6C4 4E 80 00 20 */ blr
.global L2CA_ConfigRsp
L2CA_ConfigRsp:
/* 80090888 0008C6C8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8009088C 0008C6CC 7C 08 02 A6 */ mflr r0
/* 80090890 0008C6D0 3C A0 80 50 */ lis r5, l2cb@ha
/* 80090894 0008C6D4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80090898 0008C6D8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8009089C 0008C6DC 7C 9F 23 78 */ mr r31, r4
/* 800908A0 0008C6E0 93 C1 00 08 */ stw r30, 0x8(r1)
/* 800908A4 0008C6E4 7C 7E 1B 78 */ mr r30, r3
/* 800908A8 0008C6E8 88 05 90 20 */ lbz r0, l2cb@l(r5)
/* 800908AC 0008C6EC 28 00 00 03 */ cmplwi r0, 0x3
/* 800908B0 0008C6F0 41 80 00 20 */ blt lbl_800908D0
/* 800908B4 0008C6F4 3C 60 00 08 */ lis r3, 0x8
/* 800908B8 0008C6F8 3C 80 80 44 */ lis r4, "@1725_8043D9D4"@ha
/* 800908BC 0008C6FC A0 DF 00 00 */ lhz r6, 0x0(r31)
/* 800908C0 0008C700 7F C5 F3 78 */ mr r5, r30
/* 800908C4 0008C704 38 63 00 02 */ addi r3, r3, 0x2
/* 800908C8 0008C708 38 84 D9 D4 */ addi r4, r4, "@1725_8043D9D4"@l
/* 800908CC 0008C70C 4B FE 70 95 */ bl LogMsg_0
.global lbl_800908D0
lbl_800908D0:
/* 800908D0 0008C710 7F C4 F3 78 */ mr r4, r30
/* 800908D4 0008C714 38 60 00 00 */ li r3, 0x0
/* 800908D8 0008C718 48 00 52 19 */ bl l2cu_find_ccb_by_cid
/* 800908DC 0008C71C 2C 03 00 00 */ cmpwi r3, 0x0
/* 800908E0 0008C720 40 82 00 34 */ bne lbl_80090914
/* 800908E4 0008C724 3C 60 80 50 */ lis r3, l2cb@ha
/* 800908E8 0008C728 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 800908EC 0008C72C 28 00 00 02 */ cmplwi r0, 0x2
/* 800908F0 0008C730 41 80 00 1C */ blt lbl_8009090C
/* 800908F4 0008C734 3C 60 00 08 */ lis r3, 0x8
/* 800908F8 0008C738 3C 80 80 44 */ lis r4, "@1726"@ha
/* 800908FC 0008C73C 7F C5 F3 78 */ mr r5, r30
/* 80090900 0008C740 38 63 00 01 */ addi r3, r3, 0x1
/* 80090904 0008C744 38 84 DA 00 */ addi r4, r4, "@1726"@l
/* 80090908 0008C748 4B FE 70 59 */ bl LogMsg_0
.global lbl_8009090C
lbl_8009090C:
/* 8009090C 0008C74C 38 60 00 00 */ li r3, 0x0
/* 80090910 0008C750 48 00 00 30 */ b lbl_80090940
.global lbl_80090914
lbl_80090914:
/* 80090914 0008C754 A0 1F 00 00 */ lhz r0, 0x0(r31)
/* 80090918 0008C758 2C 00 00 00 */ cmpwi r0, 0x0
/* 8009091C 0008C75C 40 82 00 14 */ bne lbl_80090930
/* 80090920 0008C760 7F E5 FB 78 */ mr r5, r31
/* 80090924 0008C764 38 80 00 18 */ li r4, 0x18
/* 80090928 0008C768 48 00 04 81 */ bl l2c_csm_execute
/* 8009092C 0008C76C 48 00 00 10 */ b lbl_8009093C
.global lbl_80090930
lbl_80090930:
/* 80090930 0008C770 7F E5 FB 78 */ mr r5, r31
/* 80090934 0008C774 38 80 00 19 */ li r4, 0x19
/* 80090938 0008C778 48 00 04 71 */ bl l2c_csm_execute
.global lbl_8009093C
lbl_8009093C:
/* 8009093C 0008C77C 38 60 00 01 */ li r3, 0x1
.global lbl_80090940
lbl_80090940:
/* 80090940 0008C780 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80090944 0008C784 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80090948 0008C788 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8009094C 0008C78C 7C 08 03 A6 */ mtlr r0
/* 80090950 0008C790 38 21 00 10 */ addi r1, r1, 0x10
/* 80090954 0008C794 4E 80 00 20 */ blr
.global L2CA_DisconnectReq
L2CA_DisconnectReq:
/* 80090958 0008C798 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8009095C 0008C79C 7C 08 02 A6 */ mflr r0
/* 80090960 0008C7A0 3C 80 80 50 */ lis r4, l2cb@ha
/* 80090964 0008C7A4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80090968 0008C7A8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8009096C 0008C7AC 7C 7F 1B 78 */ mr r31, r3
/* 80090970 0008C7B0 88 04 90 20 */ lbz r0, l2cb@l(r4)
/* 80090974 0008C7B4 28 00 00 03 */ cmplwi r0, 0x3
/* 80090978 0008C7B8 41 80 00 1C */ blt lbl_80090994
/* 8009097C 0008C7BC 3C 60 00 08 */ lis r3, 0x8
/* 80090980 0008C7C0 3C 80 80 44 */ lis r4, "@1732_8043DA2C"@ha
/* 80090984 0008C7C4 7F E5 FB 78 */ mr r5, r31
/* 80090988 0008C7C8 38 63 00 02 */ addi r3, r3, 0x2
/* 8009098C 0008C7CC 38 84 DA 2C */ addi r4, r4, "@1732_8043DA2C"@l
/* 80090990 0008C7D0 4B FE 6F D1 */ bl LogMsg_0
.global lbl_80090994
lbl_80090994:
/* 80090994 0008C7D4 7F E4 FB 78 */ mr r4, r31
/* 80090998 0008C7D8 38 60 00 00 */ li r3, 0x0
/* 8009099C 0008C7DC 48 00 51 55 */ bl l2cu_find_ccb_by_cid
/* 800909A0 0008C7E0 2C 03 00 00 */ cmpwi r3, 0x0
/* 800909A4 0008C7E4 40 82 00 34 */ bne lbl_800909D8
/* 800909A8 0008C7E8 3C 60 80 50 */ lis r3, l2cb@ha
/* 800909AC 0008C7EC 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 800909B0 0008C7F0 28 00 00 02 */ cmplwi r0, 0x2
/* 800909B4 0008C7F4 41 80 00 1C */ blt lbl_800909D0
/* 800909B8 0008C7F8 3C 60 00 08 */ lis r3, 0x8
/* 800909BC 0008C7FC 3C 80 80 44 */ lis r4, "@1733"@ha
/* 800909C0 0008C800 7F E5 FB 78 */ mr r5, r31
/* 800909C4 0008C804 38 63 00 01 */ addi r3, r3, 0x1
/* 800909C8 0008C808 38 84 DA 50 */ addi r4, r4, "@1733"@l
/* 800909CC 0008C80C 4B FE 6F 95 */ bl LogMsg_0
.global lbl_800909D0
lbl_800909D0:
/* 800909D0 0008C810 38 60 00 00 */ li r3, 0x0
/* 800909D4 0008C814 48 00 00 14 */ b lbl_800909E8
.global lbl_800909D8
lbl_800909D8:
/* 800909D8 0008C818 38 80 00 1A */ li r4, 0x1a
/* 800909DC 0008C81C 38 A0 00 00 */ li r5, 0x0
/* 800909E0 0008C820 48 00 03 C9 */ bl l2c_csm_execute
/* 800909E4 0008C824 38 60 00 01 */ li r3, 0x1
.global lbl_800909E8
lbl_800909E8:
/* 800909E8 0008C828 80 01 00 14 */ lwz r0, 0x14(r1)
/* 800909EC 0008C82C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 800909F0 0008C830 7C 08 03 A6 */ mtlr r0
/* 800909F4 0008C834 38 21 00 10 */ addi r1, r1, 0x10
/* 800909F8 0008C838 4E 80 00 20 */ blr
.global L2CA_DisconnectRsp
L2CA_DisconnectRsp:
/* 800909FC 0008C83C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80090A00 0008C840 7C 08 02 A6 */ mflr r0
/* 80090A04 0008C844 3C 80 80 50 */ lis r4, l2cb@ha
/* 80090A08 0008C848 90 01 00 14 */ stw r0, 0x14(r1)
/* 80090A0C 0008C84C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80090A10 0008C850 7C 7F 1B 78 */ mr r31, r3
/* 80090A14 0008C854 88 04 90 20 */ lbz r0, l2cb@l(r4)
/* 80090A18 0008C858 28 00 00 03 */ cmplwi r0, 0x3
/* 80090A1C 0008C85C 41 80 00 1C */ blt lbl_80090A38
/* 80090A20 0008C860 3C 60 00 08 */ lis r3, 0x8
/* 80090A24 0008C864 3C 80 80 44 */ lis r4, "@1738"@ha
/* 80090A28 0008C868 7F E5 FB 78 */ mr r5, r31
/* 80090A2C 0008C86C 38 63 00 02 */ addi r3, r3, 0x2
/* 80090A30 0008C870 38 84 DA 7C */ addi r4, r4, "@1738"@l
/* 80090A34 0008C874 4B FE 6F 2D */ bl LogMsg_0
.global lbl_80090A38
lbl_80090A38:
/* 80090A38 0008C878 7F E4 FB 78 */ mr r4, r31
/* 80090A3C 0008C87C 38 60 00 00 */ li r3, 0x0
/* 80090A40 0008C880 48 00 50 B1 */ bl l2cu_find_ccb_by_cid
/* 80090A44 0008C884 2C 03 00 00 */ cmpwi r3, 0x0
/* 80090A48 0008C888 40 82 00 34 */ bne lbl_80090A7C
/* 80090A4C 0008C88C 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090A50 0008C890 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090A54 0008C894 28 00 00 02 */ cmplwi r0, 0x2
/* 80090A58 0008C898 41 80 00 1C */ blt lbl_80090A74
/* 80090A5C 0008C89C 3C 60 00 08 */ lis r3, 0x8
/* 80090A60 0008C8A0 3C 80 80 44 */ lis r4, "@1739"@ha
/* 80090A64 0008C8A4 7F E5 FB 78 */ mr r5, r31
/* 80090A68 0008C8A8 38 63 00 01 */ addi r3, r3, 0x1
/* 80090A6C 0008C8AC 38 84 DA A0 */ addi r4, r4, "@1739"@l
/* 80090A70 0008C8B0 4B FE 6E F1 */ bl LogMsg_0
.global lbl_80090A74
lbl_80090A74:
/* 80090A74 0008C8B4 38 60 00 00 */ li r3, 0x0
/* 80090A78 0008C8B8 48 00 00 14 */ b lbl_80090A8C
.global lbl_80090A7C
lbl_80090A7C:
/* 80090A7C 0008C8BC 38 80 00 1B */ li r4, 0x1b
/* 80090A80 0008C8C0 38 A0 00 00 */ li r5, 0x0
/* 80090A84 0008C8C4 48 00 03 25 */ bl l2c_csm_execute
/* 80090A88 0008C8C8 38 60 00 01 */ li r3, 0x1
.global lbl_80090A8C
lbl_80090A8C:
/* 80090A8C 0008C8CC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80090A90 0008C8D0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80090A94 0008C8D4 7C 08 03 A6 */ mtlr r0
/* 80090A98 0008C8D8 38 21 00 10 */ addi r1, r1, 0x10
/* 80090A9C 0008C8DC 4E 80 00 20 */ blr
.global L2CA_DataWrite
L2CA_DataWrite:
/* 80090AA0 0008C8E0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80090AA4 0008C8E4 7C 08 02 A6 */ mflr r0
/* 80090AA8 0008C8E8 3C A0 80 50 */ lis r5, l2cb@ha
/* 80090AAC 0008C8EC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80090AB0 0008C8F0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80090AB4 0008C8F4 3F E0 80 44 */ lis r31, "@1653"@ha
/* 80090AB8 0008C8F8 3B FF D6 30 */ addi r31, r31, "@1653"@l
/* 80090ABC 0008C8FC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80090AC0 0008C900 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80090AC4 0008C904 7C 9D 23 78 */ mr r29, r4
/* 80090AC8 0008C908 93 81 00 10 */ stw r28, 0x10(r1)
/* 80090ACC 0008C90C 7C 7C 1B 78 */ mr r28, r3
/* 80090AD0 0008C910 88 05 90 20 */ lbz r0, l2cb@l(r5)
/* 80090AD4 0008C914 28 00 00 03 */ cmplwi r0, 0x3
/* 80090AD8 0008C918 41 80 00 1C */ blt lbl_80090AF4
/* 80090ADC 0008C91C 3C 60 00 08 */ lis r3, 0x8
/* 80090AE0 0008C920 A0 DD 00 02 */ lhz r6, 0x2(r29)
/* 80090AE4 0008C924 7F 85 E3 78 */ mr r5, r28
/* 80090AE8 0008C928 38 9F 04 9C */ addi r4, r31, 0x49c
/* 80090AEC 0008C92C 38 63 00 02 */ addi r3, r3, 0x2
/* 80090AF0 0008C930 4B FE 6E 71 */ bl LogMsg_0
.global lbl_80090AF4
lbl_80090AF4:
/* 80090AF4 0008C934 7F 84 E3 78 */ mr r4, r28
/* 80090AF8 0008C938 38 60 00 00 */ li r3, 0x0
/* 80090AFC 0008C93C 48 00 4F F5 */ bl l2cu_find_ccb_by_cid
/* 80090B00 0008C940 2C 03 00 00 */ cmpwi r3, 0x0
/* 80090B04 0008C944 7C 7E 1B 78 */ mr r30, r3
/* 80090B08 0008C948 40 82 00 38 */ bne lbl_80090B40
/* 80090B0C 0008C94C 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090B10 0008C950 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090B14 0008C954 28 00 00 02 */ cmplwi r0, 0x2
/* 80090B18 0008C958 41 80 00 18 */ blt lbl_80090B30
/* 80090B1C 0008C95C 3C 60 00 08 */ lis r3, 0x8
/* 80090B20 0008C960 7F 85 E3 78 */ mr r5, r28
/* 80090B24 0008C964 38 63 00 01 */ addi r3, r3, 0x1
/* 80090B28 0008C968 38 9F 04 C4 */ addi r4, r31, 0x4c4
/* 80090B2C 0008C96C 4B FE 6E 35 */ bl LogMsg_0
.global lbl_80090B30
lbl_80090B30:
/* 80090B30 0008C970 7F A3 EB 78 */ mr r3, r29
/* 80090B34 0008C974 4B FE 43 DD */ bl GKI_freebuf
/* 80090B38 0008C978 38 60 00 00 */ li r3, 0x0
/* 80090B3C 0008C97C 48 00 00 68 */ b lbl_80090BA4
.global lbl_80090B40
lbl_80090B40:
/* 80090B40 0008C980 A0 9D 00 02 */ lhz r4, 0x2(r29)
/* 80090B44 0008C984 A0 03 00 3A */ lhz r0, 0x3a(r3)
/* 80090B48 0008C988 7C 04 00 40 */ cmplw r4, r0
/* 80090B4C 0008C98C 41 81 00 2C */ bgt lbl_80090B78
/* 80090B50 0008C990 7F A5 EB 78 */ mr r5, r29
/* 80090B54 0008C994 38 80 00 1D */ li r4, 0x1d
/* 80090B58 0008C998 48 00 02 51 */ bl l2c_csm_execute
/* 80090B5C 0008C99C 80 7E 00 10 */ lwz r3, 0x10(r30)
/* 80090B60 0008C9A0 88 63 00 41 */ lbz r3, 0x41(r3)
/* 80090B64 0008C9A4 7C 03 00 D0 */ neg r0, r3
/* 80090B68 0008C9A8 7C 00 1B 78 */ or r0, r0, r3
/* 80090B6C 0008C9AC 54 03 0F FE */ srwi r3, r0, 31
/* 80090B70 0008C9B0 38 63 00 01 */ addi r3, r3, 0x1
/* 80090B74 0008C9B4 48 00 00 30 */ b lbl_80090BA4
.global lbl_80090B78
lbl_80090B78:
/* 80090B78 0008C9B8 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090B7C 0008C9BC 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090B80 0008C9C0 28 00 00 02 */ cmplwi r0, 0x2
/* 80090B84 0008C9C4 41 80 00 14 */ blt lbl_80090B98
/* 80090B88 0008C9C8 3C 60 00 08 */ lis r3, 0x8
/* 80090B8C 0008C9CC 38 9F 04 F0 */ addi r4, r31, 0x4f0
/* 80090B90 0008C9D0 38 63 00 01 */ addi r3, r3, 0x1
/* 80090B94 0008C9D4 4B FE 6D CD */ bl LogMsg_0
.global lbl_80090B98
lbl_80090B98:
/* 80090B98 0008C9D8 7F A3 EB 78 */ mr r3, r29
/* 80090B9C 0008C9DC 4B FE 43 75 */ bl GKI_freebuf
/* 80090BA0 0008C9E0 38 60 00 00 */ li r3, 0x0
.global lbl_80090BA4
lbl_80090BA4:
/* 80090BA4 0008C9E4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80090BA8 0008C9E8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80090BAC 0008C9EC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80090BB0 0008C9F0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80090BB4 0008C9F4 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80090BB8 0008C9F8 7C 08 03 A6 */ mtlr r0
/* 80090BBC 0008C9FC 38 21 00 20 */ addi r1, r1, 0x20
/* 80090BC0 0008CA00 4E 80 00 20 */ blr
.global L2CA_SetIdleTimeout
L2CA_SetIdleTimeout:
/* 80090BC4 0008CA04 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80090BC8 0008CA08 7C 08 02 A6 */ mflr r0
/* 80090BCC 0008CA0C 2C 05 00 00 */ cmpwi r5, 0x0
/* 80090BD0 0008CA10 90 01 00 14 */ stw r0, 0x14(r1)
/* 80090BD4 0008CA14 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80090BD8 0008CA18 7C 9F 23 78 */ mr r31, r4
/* 80090BDC 0008CA1C 93 C1 00 08 */ stw r30, 0x8(r1)
/* 80090BE0 0008CA20 7C 7E 1B 78 */ mr r30, r3
/* 80090BE4 0008CA24 41 82 00 14 */ beq lbl_80090BF8
/* 80090BE8 0008CA28 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090BEC 0008CA2C 38 63 90 20 */ addi r3, r3, l2cb@l
/* 80090BF0 0008CA30 B0 83 07 BA */ sth r4, 0x7ba(r3)
/* 80090BF4 0008CA34 48 00 00 7C */ b lbl_80090C70
.global lbl_80090BF8
lbl_80090BF8:
/* 80090BF8 0008CA38 7F C4 F3 78 */ mr r4, r30
/* 80090BFC 0008CA3C 38 60 00 00 */ li r3, 0x0
/* 80090C00 0008CA40 48 00 4E F1 */ bl l2cu_find_ccb_by_cid
/* 80090C04 0008CA44 2C 03 00 00 */ cmpwi r3, 0x0
/* 80090C08 0008CA48 40 82 00 34 */ bne lbl_80090C3C
/* 80090C0C 0008CA4C 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090C10 0008CA50 88 03 90 20 */ lbz r0, l2cb@l(r3)
/* 80090C14 0008CA54 28 00 00 02 */ cmplwi r0, 0x2
/* 80090C18 0008CA58 41 80 00 1C */ blt lbl_80090C34
/* 80090C1C 0008CA5C 3C 60 00 08 */ lis r3, 0x8
/* 80090C20 0008CA60 3C 80 80 44 */ lis r4, "@1778_8043DC00"@ha
/* 80090C24 0008CA64 7F C5 F3 78 */ mr r5, r30
/* 80090C28 0008CA68 38 63 00 01 */ addi r3, r3, 0x1
/* 80090C2C 0008CA6C 38 84 DC 00 */ addi r4, r4, "@1778_8043DC00"@l
/* 80090C30 0008CA70 4B FE 6D 31 */ bl LogMsg_0
.global lbl_80090C34
lbl_80090C34:
/* 80090C34 0008CA74 38 60 00 00 */ li r3, 0x0
/* 80090C38 0008CA78 48 00 00 3C */ b lbl_80090C74
.global lbl_80090C3C
lbl_80090C3C:
/* 80090C3C 0008CA7C 80 63 00 10 */ lwz r3, 0x10(r3)
/* 80090C40 0008CA80 2C 03 00 00 */ cmpwi r3, 0x0
/* 80090C44 0008CA84 41 82 00 24 */ beq lbl_80090C68
/* 80090C48 0008CA88 88 03 00 00 */ lbz r0, 0x0(r3)
/* 80090C4C 0008CA8C 2C 00 00 00 */ cmpwi r0, 0x0
/* 80090C50 0008CA90 41 82 00 18 */ beq lbl_80090C68
/* 80090C54 0008CA94 80 03 00 04 */ lwz r0, 0x4(r3)
/* 80090C58 0008CA98 2C 00 00 04 */ cmpwi r0, 0x4
/* 80090C5C 0008CA9C 40 82 00 0C */ bne lbl_80090C68
/* 80090C60 0008CAA0 B3 E3 00 58 */ sth r31, 0x58(r3)
/* 80090C64 0008CAA4 48 00 00 0C */ b lbl_80090C70
.global lbl_80090C68
lbl_80090C68:
/* 80090C68 0008CAA8 38 60 00 00 */ li r3, 0x0
/* 80090C6C 0008CAAC 48 00 00 08 */ b lbl_80090C74
.global lbl_80090C70
lbl_80090C70:
/* 80090C70 0008CAB0 38 60 00 01 */ li r3, 0x1
.global lbl_80090C74
lbl_80090C74:
/* 80090C74 0008CAB4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80090C78 0008CAB8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80090C7C 0008CABC 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 80090C80 0008CAC0 7C 08 03 A6 */ mtlr r0
/* 80090C84 0008CAC4 38 21 00 10 */ addi r1, r1, 0x10
/* 80090C88 0008CAC8 4E 80 00 20 */ blr
.global L2CA_SetIdleTimeoutByBdAddr
L2CA_SetIdleTimeoutByBdAddr:
/* 80090C8C 0008CACC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80090C90 0008CAD0 7C 08 02 A6 */ mflr r0
/* 80090C94 0008CAD4 38 A0 00 06 */ li r5, 0x6
/* 80090C98 0008CAD8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80090C9C 0008CADC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80090CA0 0008CAE0 7C 9F 23 78 */ mr r31, r4
/* 80090CA4 0008CAE4 93 C1 00 08 */ stw r30, 0x8(r1)
/* 80090CA8 0008CAE8 7C 7E 1B 78 */ mr r30, r3
/* 80090CAC 0008CAEC 7F C4 F3 78 */ mr r4, r30
/* 80090CB0 0008CAF0 38 62 89 D8 */ addi r3, r2, BT_BD_ANY@sda21
/* 80090CB4 0008CAF4 4B F7 A1 BD */ bl memcmp
/* 80090CB8 0008CAF8 2C 03 00 00 */ cmpwi r3, 0x0
/* 80090CBC 0008CAFC 41 82 00 3C */ beq lbl_80090CF8
/* 80090CC0 0008CB00 7F C3 F3 78 */ mr r3, r30
/* 80090CC4 0008CB04 48 00 39 51 */ bl l2cu_find_lcb_by_bd_addr
/* 80090CC8 0008CB08 2C 03 00 00 */ cmpwi r3, 0x0
/* 80090CCC 0008CB0C 41 82 00 24 */ beq lbl_80090CF0
/* 80090CD0 0008CB10 88 03 00 00 */ lbz r0, 0x0(r3)
/* 80090CD4 0008CB14 2C 00 00 00 */ cmpwi r0, 0x0
/* 80090CD8 0008CB18 41 82 00 18 */ beq lbl_80090CF0
/* 80090CDC 0008CB1C 80 03 00 04 */ lwz r0, 0x4(r3)
/* 80090CE0 0008CB20 2C 00 00 04 */ cmpwi r0, 0x4
/* 80090CE4 0008CB24 40 82 00 0C */ bne lbl_80090CF0
/* 80090CE8 0008CB28 B3 E3 00 58 */ sth r31, 0x58(r3)
/* 80090CEC 0008CB2C 48 00 00 84 */ b lbl_80090D70
.global lbl_80090CF0
lbl_80090CF0:
/* 80090CF0 0008CB30 38 60 00 00 */ li r3, 0x0
/* 80090CF4 0008CB34 48 00 00 80 */ b lbl_80090D74
.global lbl_80090CF8
lbl_80090CF8:
/* 80090CF8 0008CB38 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090CFC 0008CB3C 38 63 90 20 */ addi r3, r3, l2cb@l
/* 80090D00 0008CB40 88 03 00 08 */ lbz r0, 0x8(r3)
/* 80090D04 0008CB44 2C 00 00 00 */ cmpwi r0, 0x0
/* 80090D08 0008CB48 41 82 00 14 */ beq lbl_80090D1C
/* 80090D0C 0008CB4C 80 03 00 0C */ lwz r0, 0xc(r3)
/* 80090D10 0008CB50 2C 00 00 04 */ cmpwi r0, 0x4
/* 80090D14 0008CB54 40 82 00 08 */ bne lbl_80090D1C
/* 80090D18 0008CB58 B3 E3 00 60 */ sth r31, 0x60(r3)
.global lbl_80090D1C
lbl_80090D1C:
/* 80090D1C 0008CB5C 8C 03 00 64 */ lbzu r0, 0x64(r3)
/* 80090D20 0008CB60 2C 00 00 00 */ cmpwi r0, 0x0
/* 80090D24 0008CB64 41 82 00 14 */ beq lbl_80090D38
/* 80090D28 0008CB68 80 03 00 04 */ lwz r0, 0x4(r3)
/* 80090D2C 0008CB6C 2C 00 00 04 */ cmpwi r0, 0x4
/* 80090D30 0008CB70 40 82 00 08 */ bne lbl_80090D38
/* 80090D34 0008CB74 B3 E3 00 58 */ sth r31, 0x58(r3)
.global lbl_80090D38
lbl_80090D38:
/* 80090D38 0008CB78 88 03 00 5C */ lbz r0, 0x5c(r3)
/* 80090D3C 0008CB7C 2C 00 00 00 */ cmpwi r0, 0x0
/* 80090D40 0008CB80 41 82 00 14 */ beq lbl_80090D54
/* 80090D44 0008CB84 80 03 00 60 */ lwz r0, 0x60(r3)
/* 80090D48 0008CB88 2C 00 00 04 */ cmpwi r0, 0x4
/* 80090D4C 0008CB8C 40 82 00 08 */ bne lbl_80090D54
/* 80090D50 0008CB90 B3 E3 00 B4 */ sth r31, 0xb4(r3)
.global lbl_80090D54
lbl_80090D54:
/* 80090D54 0008CB94 88 03 00 B8 */ lbz r0, 0xb8(r3)
/* 80090D58 0008CB98 2C 00 00 00 */ cmpwi r0, 0x0
/* 80090D5C 0008CB9C 41 82 00 14 */ beq lbl_80090D70
/* 80090D60 0008CBA0 80 03 00 BC */ lwz r0, 0xbc(r3)
/* 80090D64 0008CBA4 2C 00 00 04 */ cmpwi r0, 0x4
/* 80090D68 0008CBA8 40 82 00 08 */ bne lbl_80090D70
/* 80090D6C 0008CBAC B3 E3 01 10 */ sth r31, 0x110(r3)
.global lbl_80090D70
lbl_80090D70:
/* 80090D70 0008CBB0 38 60 00 01 */ li r3, 0x1
.global lbl_80090D74
lbl_80090D74:
/* 80090D74 0008CBB4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80090D78 0008CBB8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80090D7C 0008CBBC 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 80090D80 0008CBC0 7C 08 03 A6 */ mtlr r0
/* 80090D84 0008CBC4 38 21 00 10 */ addi r1, r1, 0x10
/* 80090D88 0008CBC8 4E 80 00 20 */ blr
.global L2CA_SetTraceLevel
L2CA_SetTraceLevel:
/* 80090D8C 0008CBCC 28 03 00 FF */ cmplwi r3, 0xff
/* 80090D90 0008CBD0 41 82 00 0C */ beq lbl_80090D9C
/* 80090D94 0008CBD4 3C 80 80 50 */ lis r4, l2cb@ha
/* 80090D98 0008CBD8 98 64 90 20 */ stb r3, l2cb@l(r4)
.global lbl_80090D9C
lbl_80090D9C:
/* 80090D9C 0008CBDC 3C 60 80 50 */ lis r3, l2cb@ha
/* 80090DA0 0008CBE0 88 63 90 20 */ lbz r3, l2cb@l(r3)
/* 80090DA4 0008CBE4 4E 80 00 20 */ blr