	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_rtl8821ae_init_sw_vars         ## -- Begin function rtl8821ae_init_sw_vars
	.p2align	4, 0x90
_rtl8821ae_init_sw_vars:                ## @rtl8821ae_init_sw_vars
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	subq	$40, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, %rbx
	callq	_rtl_priv
	movq	%rax, %r13
	movq	%rbx, %rdi
	callq	_rtl_pcipriv
	movl	%eax, %edi
	callq	_rtl_pcidev
	movq	%rax, -64(%rbp)                 ## 8-byte Spill
	movq	%rbx, %rdi
	callq	_rtl_priv
	movq	%rax, %rdi
	callq	_rtl_mac
	movq	%rax, %r12
	movq	%rbx, %rdi
	callq	_rtl_priv
	movq	%rax, %rdi
	callq	_rtl_hal
	movq	%rax, -56(%rbp)                 ## 8-byte Spill
	movq	%rbx, -48(%rbp)                 ## 8-byte Spill
	movq	%rbx, %rdi
	callq	_rtl8821ae_bt_reg_init
	xorl	%eax, %eax
	callq	_rtl_btc_get_ops_pointer
	movl	%eax, 112(%r13)
	movl	$1, 80(%r13)
	xorps	%xmm0, %xmm0
	movups	%xmm0, 88(%r13)
	movq	$0, 104(%r13)
	movq	_CFENDFORM@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
	movl	$15, %edi
	callq	_BIT
	movl	%eax, %r15d
	movl	$24, %edi
	callq	_BIT
	movl	%eax, %r14d
	orl	%r15d, %r14d
	movl	$25, %edi
	callq	_BIT
	orl	%r14d, %eax
	orl	%ebx, %eax
	movq	-64(%rbp), %rsi                 ## 8-byte Reload
	movl	%eax, (%rsi)
	movl	$1, (%r12)
	xorps	%xmm0, %xmm0
	movups	%xmm0, 40(%r12)
	movups	%xmm0, 24(%r12)
	movups	%xmm0, 8(%r12)
	movq	_BAND_ON_2_4G@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 32(%r13)
	movq	_BAND_ON_BOTH@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 28(%r13)
	movq	_SINGLEMAC_SINGLEPHY@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 24(%r13)
	movq	_RCR_APPFCS@GOTPCREL(%rip), %rcx
	movq	_RCR_APP_MIC@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	orl	(%rcx), %eax
	movq	_RCR_APP_ICV@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_RCR_APP_PHYST_RXFF@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_RCR_NONQOS_VHT@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_RCR_HTC_LOC_CTRL@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_RCR_AMF@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_RCR_ACF@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_RCR_ADF@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_RCR_AICV@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_RCR_ACRC32@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_RCR_AB@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_RCR_AM@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_RCR_APM@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movl	%eax, 4(%rsi)
	movq	_IMR_PSTIMEOUT@GOTPCREL(%rip), %rax
	movq	_IMR_GTINT3@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	orl	(%rax), %ecx
	movslq	%ecx, %rax
	movq	_IMR_HSISR_IND_ON_INT@GOTPCREL(%rip), %rcx
	movslq	(%rcx), %rcx
	movq	_IMR_C2HCMD@GOTPCREL(%rip), %rdx
	movslq	(%rdx), %rdx
	orq	%rcx, %rdx
	movq	_IMR_HIGHDOK@GOTPCREL(%rip), %rcx
	movslq	(%rcx), %rcx
	orq	%rdx, %rcx
	orq	%rax, %rcx
	movq	_IMR_MGNTDOK@GOTPCREL(%rip), %rax
	movslq	(%rax), %rax
	movq	_IMR_BKDOK@GOTPCREL(%rip), %rdx
	movslq	(%rdx), %rdx
	orq	%rax, %rdx
	movq	_IMR_BEDOK@GOTPCREL(%rip), %rax
	movslq	(%rax), %rax
	orq	%rdx, %rax
	movq	_IMR_VIDOK@GOTPCREL(%rip), %rdx
	movslq	(%rdx), %rdx
	orq	%rax, %rdx
	orq	%rcx, %rdx
	movq	_IMR_VODOK@GOTPCREL(%rip), %rax
	movslq	(%rax), %rax
	movq	_IMR_RDU@GOTPCREL(%rip), %rcx
	movslq	(%rcx), %rcx
	orq	%rax, %rcx
	movq	_IMR_ROK@GOTPCREL(%rip), %rax
	movslq	(%rax), %rax
	orq	%rcx, %rax
	orq	%rdx, %rax
	movq	%rsi, %rdx
	movq	24(%rsi), %rcx
	movq	%rax, (%rcx)
	movq	_IMR_RXFOVW@GOTPCREL(%rip), %rax
	movq	_IMR_TXFOVW@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	orl	(%rax), %ecx
	movslq	%ecx, %rax
	movq	24(%rsi), %rcx
	movq	%rax, 8(%rcx)
	movq	_HSIMR_PDN_INT_EN@GOTPCREL(%rip), %rax
	movq	_HSIMR_RON_INT_EN@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	orl	(%rax), %ecx
	movslq	%ecx, %rax
	movq	%rax, 16(%rsi)
	movq	_WAKE_ON_MAGIC_PACKET@GOTPCREL(%rip), %rax
	movq	_WAKE_ON_PATTERN_MATCH@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	orl	(%rax), %ecx
	movl	%ecx, 44(%r13)
	movq	72(%r13), %rax
	movq	(%rax), %rax
	movl	24(%rax), %ecx
	movl	%ecx, 68(%r13)
	movl	20(%rax), %ecx
	movl	%ecx, 64(%r13)
	movl	16(%rax), %ecx
	movl	%ecx, 60(%r13)
	movl	12(%rax), %ecx
	movl	%ecx, 12(%rsi)
	movl	8(%rax), %ecx
	movl	%ecx, 8(%rsi)
	cmpq	$0, (%rax)
	je	LBB0_2
## %bb.1:
	leaq	L_.str(%rip), %rdi
	xorl	%eax, %eax
	callq	_pr_info
LBB0_2:
	movabsq	$8589934594, %rax               ## imm = 0x200000002
	movq	%rax, 48(%r13)
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	callq	_rtl8821ae_init_aspm_vars
	movl	48(%r13), %eax
	decl	%eax
	cmpl	$2, %eax
	ja	LBB0_4
## %bb.3:
	cltq
	leaq	l_switch.table.rtl8821ae_init_sw_vars(%rip), %rcx
	movq	(%rcx,%rax,8), %rax
	movl	(%rax), %eax
	movl	%eax, 56(%r13)
LBB0_4:
	movl	$32768, %edi                    ## imm = 0x8000
	callq	_vzalloc
	movq	%rax, 8(%r13)
	testq	%rax, %rax
	je	LBB0_5
## %bb.6:
	movl	$32768, %edi                    ## imm = 0x8000
	callq	_vzalloc
	movq	%rax, 16(%r13)
	testq	%rax, %rax
	je	LBB0_7
## %bb.8:
	movq	-56(%rbp), %rax                 ## 8-byte Reload
	movq	(%rax), %r14
	movq	_HARDWARE_TYPE_RTL8812AE@GOTPCREL(%rip), %rax
	movq	(%rax), %r12
	cmpq	%r12, %r14
	leaq	L_.str.3(%rip), %rax
	leaq	L_.str.5(%rip), %rbx
	cmoveq	%rax, %rbx
	movl	$32768, (%r13)                  ## imm = 0x8000
	leaq	L_.str.7(%rip), %rdi
	xorl	%r15d, %r15d
	movq	%rbx, %rsi
	xorl	%eax, %eax
	callq	_pr_info
	movq	_THIS_MODULE@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	40(%r13), %ecx
	movq	_GFP_KERNEL@GOTPCREL(%rip), %rax
	movl	(%rax), %r8d
	movq	_rtl_fw_cb@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, (%rsp)
	movl	$1, %esi
	movq	%rbx, %rdx
	movq	-48(%rbp), %rbx                 ## 8-byte Reload
	movq	%rbx, %r9
	callq	_request_firmware_nowait
	testl	%eax, %eax
	je	LBB0_10
## %bb.9:
	leaq	L_.str.8(%rip), %rdi
	jmp	LBB0_12
LBB0_5:
	leaq	L_.str.1(%rip), %rdi
	callq	_pr_err
	jmp	LBB0_13
LBB0_7:
	leaq	L_.str.2(%rip), %rdi
	callq	_pr_err
	movq	8(%r13), %rdi
	callq	_vfree
	movq	$0, 8(%r13)
	jmp	LBB0_13
LBB0_10:
	cmpq	%r12, %r14
	leaq	L_.str.4(%rip), %rax
	movq	%rbx, %r14
	leaq	L_.str.6(%rip), %rbx
	cmoveq	%rax, %rbx
	leaq	L_.str.7(%rip), %rdi
	movq	%rbx, %rsi
	xorl	%eax, %eax
	callq	_pr_info
	movq	_THIS_MODULE@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	40(%r13), %ecx
	movq	_GFP_KERNEL@GOTPCREL(%rip), %rax
	movl	(%rax), %r8d
	movq	_rtl_wowlan_fw_cb@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, (%rsp)
	movl	$1, %esi
	movq	%rbx, %rdx
	movq	%r14, %r9
	callq	_request_firmware_nowait
	testl	%eax, %eax
	je	LBB0_14
## %bb.11:
	leaq	L_.str.9(%rip), %rdi
LBB0_12:
	callq	_pr_err
	movq	16(%r13), %rdi
	callq	_vfree
	movq	8(%r13), %rdi
	callq	_vfree
LBB0_13:
	movl	$1, %r15d
LBB0_14:
	movl	%r15d, %eax
	addq	$40, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_CFENDFORM,4,2                  ## @CFENDFORM
	.comm	_BAND_ON_2_4G,4,2               ## @BAND_ON_2_4G
	.comm	_BAND_ON_BOTH,4,2               ## @BAND_ON_BOTH
	.comm	_SINGLEMAC_SINGLEPHY,4,2        ## @SINGLEMAC_SINGLEPHY
	.comm	_RCR_APPFCS,4,2                 ## @RCR_APPFCS
	.comm	_RCR_APP_MIC,4,2                ## @RCR_APP_MIC
	.comm	_RCR_APP_ICV,4,2                ## @RCR_APP_ICV
	.comm	_RCR_APP_PHYST_RXFF,4,2         ## @RCR_APP_PHYST_RXFF
	.comm	_RCR_NONQOS_VHT,4,2             ## @RCR_NONQOS_VHT
	.comm	_RCR_HTC_LOC_CTRL,4,2           ## @RCR_HTC_LOC_CTRL
	.comm	_RCR_AMF,4,2                    ## @RCR_AMF
	.comm	_RCR_ACF,4,2                    ## @RCR_ACF
	.comm	_RCR_ADF,4,2                    ## @RCR_ADF
	.comm	_RCR_AICV,4,2                   ## @RCR_AICV
	.comm	_RCR_ACRC32,4,2                 ## @RCR_ACRC32
	.comm	_RCR_AB,4,2                     ## @RCR_AB
	.comm	_RCR_AM,4,2                     ## @RCR_AM
	.comm	_RCR_APM,4,2                    ## @RCR_APM
	.comm	_IMR_PSTIMEOUT,4,2              ## @IMR_PSTIMEOUT
	.comm	_IMR_GTINT3,4,2                 ## @IMR_GTINT3
	.comm	_IMR_HSISR_IND_ON_INT,4,2       ## @IMR_HSISR_IND_ON_INT
	.comm	_IMR_C2HCMD,4,2                 ## @IMR_C2HCMD
	.comm	_IMR_HIGHDOK,4,2                ## @IMR_HIGHDOK
	.comm	_IMR_MGNTDOK,4,2                ## @IMR_MGNTDOK
	.comm	_IMR_BKDOK,4,2                  ## @IMR_BKDOK
	.comm	_IMR_BEDOK,4,2                  ## @IMR_BEDOK
	.comm	_IMR_VIDOK,4,2                  ## @IMR_VIDOK
	.comm	_IMR_VODOK,4,2                  ## @IMR_VODOK
	.comm	_IMR_RDU,4,2                    ## @IMR_RDU
	.comm	_IMR_ROK,4,2                    ## @IMR_ROK
	.comm	_IMR_RXFOVW,4,2                 ## @IMR_RXFOVW
	.comm	_IMR_TXFOVW,4,2                 ## @IMR_TXFOVW
	.comm	_HSIMR_PDN_INT_EN,4,2           ## @HSIMR_PDN_INT_EN
	.comm	_HSIMR_RON_INT_EN,4,2           ## @HSIMR_RON_INT_EN
	.comm	_WAKE_ON_MAGIC_PACKET,4,2       ## @WAKE_ON_MAGIC_PACKET
	.comm	_WAKE_ON_PATTERN_MATCH,4,2      ## @WAKE_ON_PATTERN_MATCH
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"watchdog disabled\n"

	.comm	_FW_PS_MIN_MODE,4,2             ## @FW_PS_MIN_MODE
	.comm	_FW_PS_MAX_MODE,4,2             ## @FW_PS_MAX_MODE
	.comm	_FW_PS_DTIM_MODE,4,2            ## @FW_PS_DTIM_MODE
L_.str.1:                               ## @.str.1
	.asciz	"Can't alloc buffer for fw.\n"

L_.str.2:                               ## @.str.2
	.asciz	"Can't alloc buffer for wowlan fw.\n"

	.comm	_HARDWARE_TYPE_RTL8812AE,8,3    ## @HARDWARE_TYPE_RTL8812AE
L_.str.3:                               ## @.str.3
	.asciz	"rtlwifi/rtl8812aefw.bin"

L_.str.4:                               ## @.str.4
	.asciz	"rtlwifi/rtl8812aefw_wowlan.bin"

L_.str.5:                               ## @.str.5
	.asciz	"rtlwifi/rtl8821aefw_29.bin"

L_.str.6:                               ## @.str.6
	.asciz	"rtlwifi/rtl8821aefw_wowlan.bin"

L_.str.7:                               ## @.str.7
	.asciz	"Using firmware %s\n"

	.comm	_THIS_MODULE,4,2                ## @THIS_MODULE
	.comm	_GFP_KERNEL,4,2                 ## @GFP_KERNEL
	.comm	_rtl_fw_cb,4,2                  ## @rtl_fw_cb
L_.str.8:                               ## @.str.8
	.asciz	"Failed to request normal firmware!\n"

	.comm	_rtl_wowlan_fw_cb,4,2           ## @rtl_wowlan_fw_cb
L_.str.9:                               ## @.str.9
	.asciz	"Failed to request wowlan firmware!\n"

	.section	__DATA,__const
	.p2align	3                               ## @switch.table.rtl8821ae_init_sw_vars
l_switch.table.rtl8821ae_init_sw_vars:
	.quad	_FW_PS_MIN_MODE
	.quad	_FW_PS_MAX_MODE
	.quad	_FW_PS_DTIM_MODE

.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_rtl8821ae_init_sw_vars         ; -- Begin function rtl8821ae_init_sw_vars
	.p2align	2
_rtl8821ae_init_sw_vars:                ; @rtl8821ae_init_sw_vars
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #96
	.cfi_def_cfa_offset 96
	stp	x26, x25, [sp, #16]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #32]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #48]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #64]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #80]             ; 16-byte Folded Spill
	add	x29, sp, #80
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	mov	x20, x0
	bl	_rtl_priv
	mov	x19, x0
	mov	x0, x20
	bl	_rtl_pcipriv
	bl	_rtl_pcidev
	mov	x22, x0
	mov	x0, x20
	bl	_rtl_priv
	bl	_rtl_mac
	mov	x23, x0
	mov	x0, x20
	bl	_rtl_priv
	bl	_rtl_hal
	mov	x21, x0
	mov	x0, x20
	bl	_rtl8821ae_bt_reg_init
	bl	_rtl_btc_get_ops_pointer
	str	w0, [x19, #112]
	mov	w24, #1
	str	w24, [x19, #80]
	stp	xzr, xzr, [x19, #96]
	str	xzr, [x19, #88]
Lloh0:
	adrp	x8, _CFENDFORM@GOTPAGE
Lloh1:
	ldr	x8, [x8, _CFENDFORM@GOTPAGEOFF]
Lloh2:
	ldr	w25, [x8]
	mov	w0, #15
	bl	_BIT
	orr	w25, w0, w25
	mov	w0, #24
	bl	_BIT
	orr	w25, w25, w0
	mov	w0, #25
	bl	_BIT
	orr	w8, w25, w0
	str	w8, [x22]
	str	w24, [x23]
	movi.2d	v0, #0000000000000000
	stur	q0, [x23, #40]
	stur	q0, [x23, #24]
	stur	q0, [x23, #8]
Lloh3:
	adrp	x8, _BAND_ON_2_4G@GOTPAGE
Lloh4:
	ldr	x8, [x8, _BAND_ON_2_4G@GOTPAGEOFF]
Lloh5:
	ldr	w8, [x8]
	str	w8, [x19, #32]
Lloh6:
	adrp	x8, _BAND_ON_BOTH@GOTPAGE
Lloh7:
	ldr	x8, [x8, _BAND_ON_BOTH@GOTPAGEOFF]
Lloh8:
	ldr	w8, [x8]
Lloh9:
	adrp	x9, _SINGLEMAC_SINGLEPHY@GOTPAGE
Lloh10:
	ldr	x9, [x9, _SINGLEMAC_SINGLEPHY@GOTPAGEOFF]
Lloh11:
	ldr	w9, [x9]
	stp	w9, w8, [x19, #24]
Lloh12:
	adrp	x8, _RCR_APPFCS@GOTPAGE
Lloh13:
	ldr	x8, [x8, _RCR_APPFCS@GOTPAGEOFF]
Lloh14:
	adrp	x9, _RCR_APP_MIC@GOTPAGE
Lloh15:
	ldr	x9, [x9, _RCR_APP_MIC@GOTPAGEOFF]
Lloh16:
	ldr	w8, [x8]
Lloh17:
	ldr	w9, [x9]
	orr	w8, w9, w8
Lloh18:
	adrp	x9, _RCR_APP_ICV@GOTPAGE
Lloh19:
	ldr	x9, [x9, _RCR_APP_ICV@GOTPAGEOFF]
Lloh20:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh21:
	adrp	x9, _RCR_APP_PHYST_RXFF@GOTPAGE
Lloh22:
	ldr	x9, [x9, _RCR_APP_PHYST_RXFF@GOTPAGEOFF]
Lloh23:
	ldr	w9, [x9]
Lloh24:
	adrp	x10, _RCR_NONQOS_VHT@GOTPAGE
Lloh25:
	ldr	x10, [x10, _RCR_NONQOS_VHT@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh26:
	ldr	w9, [x10]
	orr	w8, w8, w9
Lloh27:
	adrp	x9, _RCR_HTC_LOC_CTRL@GOTPAGE
Lloh28:
	ldr	x9, [x9, _RCR_HTC_LOC_CTRL@GOTPAGEOFF]
Lloh29:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh30:
	adrp	x9, _RCR_AMF@GOTPAGE
Lloh31:
	ldr	x9, [x9, _RCR_AMF@GOTPAGEOFF]
Lloh32:
	ldr	w9, [x9]
Lloh33:
	adrp	x10, _RCR_ACF@GOTPAGE
Lloh34:
	ldr	x10, [x10, _RCR_ACF@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh35:
	ldr	w9, [x10]
	orr	w8, w8, w9
Lloh36:
	adrp	x9, _RCR_ADF@GOTPAGE
Lloh37:
	ldr	x9, [x9, _RCR_ADF@GOTPAGEOFF]
Lloh38:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh39:
	adrp	x9, _RCR_AICV@GOTPAGE
Lloh40:
	ldr	x9, [x9, _RCR_AICV@GOTPAGEOFF]
Lloh41:
	ldr	w9, [x9]
Lloh42:
	adrp	x10, _RCR_ACRC32@GOTPAGE
Lloh43:
	ldr	x10, [x10, _RCR_ACRC32@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh44:
	ldr	w9, [x10]
	orr	w8, w8, w9
Lloh45:
	adrp	x9, _RCR_AB@GOTPAGE
Lloh46:
	ldr	x9, [x9, _RCR_AB@GOTPAGEOFF]
Lloh47:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh48:
	adrp	x9, _RCR_AM@GOTPAGE
Lloh49:
	ldr	x9, [x9, _RCR_AM@GOTPAGEOFF]
Lloh50:
	ldr	w9, [x9]
Lloh51:
	adrp	x10, _RCR_APM@GOTPAGE
Lloh52:
	ldr	x10, [x10, _RCR_APM@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh53:
	ldr	w9, [x10]
	orr	w8, w8, w9
	str	w8, [x22, #4]
Lloh54:
	adrp	x8, _IMR_PSTIMEOUT@GOTPAGE
Lloh55:
	ldr	x8, [x8, _IMR_PSTIMEOUT@GOTPAGEOFF]
Lloh56:
	ldr	w8, [x8]
Lloh57:
	adrp	x9, _IMR_GTINT3@GOTPAGE
Lloh58:
	ldr	x9, [x9, _IMR_GTINT3@GOTPAGEOFF]
Lloh59:
	ldr	w9, [x9]
	orr	w8, w9, w8
	sxtw	x8, w8
Lloh60:
	adrp	x9, _IMR_HSISR_IND_ON_INT@GOTPAGE
Lloh61:
	ldr	x9, [x9, _IMR_HSISR_IND_ON_INT@GOTPAGEOFF]
Lloh62:
	ldrsw	x9, [x9]
	orr	x8, x8, x9
Lloh63:
	adrp	x9, _IMR_C2HCMD@GOTPAGE
Lloh64:
	ldr	x9, [x9, _IMR_C2HCMD@GOTPAGEOFF]
Lloh65:
	ldrsw	x9, [x9]
	orr	x8, x8, x9
Lloh66:
	adrp	x9, _IMR_HIGHDOK@GOTPAGE
Lloh67:
	ldr	x9, [x9, _IMR_HIGHDOK@GOTPAGEOFF]
Lloh68:
	ldrsw	x9, [x9]
	orr	x8, x8, x9
Lloh69:
	adrp	x9, _IMR_MGNTDOK@GOTPAGE
Lloh70:
	ldr	x9, [x9, _IMR_MGNTDOK@GOTPAGEOFF]
Lloh71:
	ldrsw	x9, [x9]
	orr	x8, x8, x9
Lloh72:
	adrp	x9, _IMR_BKDOK@GOTPAGE
Lloh73:
	ldr	x9, [x9, _IMR_BKDOK@GOTPAGEOFF]
Lloh74:
	ldrsw	x9, [x9]
	orr	x8, x8, x9
Lloh75:
	adrp	x9, _IMR_BEDOK@GOTPAGE
Lloh76:
	ldr	x9, [x9, _IMR_BEDOK@GOTPAGEOFF]
Lloh77:
	ldrsw	x9, [x9]
	orr	x8, x8, x9
Lloh78:
	adrp	x9, _IMR_VIDOK@GOTPAGE
Lloh79:
	ldr	x9, [x9, _IMR_VIDOK@GOTPAGEOFF]
Lloh80:
	ldrsw	x9, [x9]
	orr	x8, x8, x9
Lloh81:
	adrp	x9, _IMR_VODOK@GOTPAGE
Lloh82:
	ldr	x9, [x9, _IMR_VODOK@GOTPAGEOFF]
Lloh83:
	ldrsw	x9, [x9]
	orr	x8, x8, x9
Lloh84:
	adrp	x9, _IMR_RDU@GOTPAGE
Lloh85:
	ldr	x9, [x9, _IMR_RDU@GOTPAGEOFF]
Lloh86:
	ldrsw	x9, [x9]
	orr	x8, x8, x9
Lloh87:
	adrp	x9, _IMR_ROK@GOTPAGE
Lloh88:
	ldr	x9, [x9, _IMR_ROK@GOTPAGEOFF]
Lloh89:
	ldrsw	x9, [x9]
	orr	x8, x8, x9
	ldr	x9, [x22, #24]
	str	x8, [x9]
Lloh90:
	adrp	x8, _IMR_RXFOVW@GOTPAGE
Lloh91:
	ldr	x8, [x8, _IMR_RXFOVW@GOTPAGEOFF]
Lloh92:
	ldr	w8, [x8]
Lloh93:
	adrp	x9, _IMR_TXFOVW@GOTPAGE
Lloh94:
	ldr	x9, [x9, _IMR_TXFOVW@GOTPAGEOFF]
Lloh95:
	ldr	w9, [x9]
	orr	w8, w9, w8
	sxtw	x8, w8
	ldr	x9, [x22, #24]
	str	x8, [x9, #8]
Lloh96:
	adrp	x8, _HSIMR_PDN_INT_EN@GOTPAGE
Lloh97:
	ldr	x8, [x8, _HSIMR_PDN_INT_EN@GOTPAGEOFF]
Lloh98:
	ldr	w8, [x8]
Lloh99:
	adrp	x9, _HSIMR_RON_INT_EN@GOTPAGE
Lloh100:
	ldr	x9, [x9, _HSIMR_RON_INT_EN@GOTPAGEOFF]
Lloh101:
	ldr	w9, [x9]
	orr	w8, w9, w8
	sxtw	x8, w8
	str	x8, [x22, #16]
Lloh102:
	adrp	x8, _WAKE_ON_MAGIC_PACKET@GOTPAGE
Lloh103:
	ldr	x8, [x8, _WAKE_ON_MAGIC_PACKET@GOTPAGEOFF]
Lloh104:
	ldr	w8, [x8]
Lloh105:
	adrp	x9, _WAKE_ON_PATTERN_MATCH@GOTPAGE
Lloh106:
	ldr	x9, [x9, _WAKE_ON_PATTERN_MATCH@GOTPAGEOFF]
Lloh107:
	ldr	w9, [x9]
	orr	w8, w9, w8
	str	w8, [x19, #44]
	ldr	x8, [x19, #72]
	ldr	x8, [x8]
	ldr	w9, [x8, #24]
	str	w9, [x19, #68]
	ldr	d0, [x8, #16]
	stur	d0, [x19, #60]
	ldr	d0, [x8, #8]
	str	d0, [x22, #8]
	ldr	x8, [x8]
	cbz	x8, LBB0_2
; %bb.1:
Lloh108:
	adrp	x0, l_.str@PAGE
Lloh109:
	add	x0, x0, l_.str@PAGEOFF
	bl	_pr_info
LBB0_2:
	movi.2s	v0, #2
	str	d0, [x19, #48]
	mov	x0, x20
	bl	_rtl8821ae_init_aspm_vars
	ldr	w8, [x19, #48]
	sub	w8, w8, #1
	cmp	w8, #2
	b.hi	LBB0_4
; %bb.3:
Lloh110:
	adrp	x9, l_switch.table.rtl8821ae_init_sw_vars@PAGE
Lloh111:
	add	x9, x9, l_switch.table.rtl8821ae_init_sw_vars@PAGEOFF
	ldr	x8, [x9, w8, sxtw #3]
	ldr	w8, [x8]
	str	w8, [x19, #56]
LBB0_4:
	mov	w0, #32768
	bl	_vzalloc
	str	x0, [x19, #8]
	cbz	x0, LBB0_8
; %bb.5:
	mov	w24, #32768
	mov	w0, #32768
	bl	_vzalloc
	str	x0, [x19, #16]
	cbz	x0, LBB0_9
; %bb.6:
	ldr	x22, [x21]
Lloh112:
	adrp	x8, _HARDWARE_TYPE_RTL8812AE@GOTPAGE
Lloh113:
	ldr	x8, [x8, _HARDWARE_TYPE_RTL8812AE@GOTPAGEOFF]
Lloh114:
	adrp	x9, l_.str.5@PAGE
Lloh115:
	add	x9, x9, l_.str.5@PAGEOFF
Lloh116:
	ldr	x23, [x8]
Lloh117:
	adrp	x8, l_.str.3@PAGE
Lloh118:
	add	x8, x8, l_.str.3@PAGEOFF
	cmp	x22, x23
	csel	x21, x8, x9, eq
	str	w24, [x19]
	str	x21, [sp]
Lloh119:
	adrp	x0, l_.str.7@PAGE
Lloh120:
	add	x0, x0, l_.str.7@PAGEOFF
	bl	_pr_info
Lloh121:
	adrp	x24, _THIS_MODULE@GOTPAGE
Lloh122:
	ldr	x24, [x24, _THIS_MODULE@GOTPAGEOFF]
	ldr	w0, [x24]
	ldr	w3, [x19, #40]
Lloh123:
	adrp	x25, _GFP_KERNEL@GOTPAGE
Lloh124:
	ldr	x25, [x25, _GFP_KERNEL@GOTPAGEOFF]
	ldr	w4, [x25]
Lloh125:
	adrp	x8, _rtl_fw_cb@GOTPAGE
Lloh126:
	ldr	x8, [x8, _rtl_fw_cb@GOTPAGEOFF]
Lloh127:
	ldr	w6, [x8]
	mov	w1, #1
	mov	x2, x21
	mov	x5, x20
	bl	_request_firmware_nowait
	cbz	w0, LBB0_10
; %bb.7:
Lloh128:
	adrp	x0, l_.str.8@PAGE
Lloh129:
	add	x0, x0, l_.str.8@PAGEOFF
	b	LBB0_12
LBB0_8:
Lloh130:
	adrp	x0, l_.str.1@PAGE
Lloh131:
	add	x0, x0, l_.str.1@PAGEOFF
	bl	_pr_err
	b	LBB0_13
LBB0_9:
Lloh132:
	adrp	x0, l_.str.2@PAGE
Lloh133:
	add	x0, x0, l_.str.2@PAGEOFF
	bl	_pr_err
	ldr	x0, [x19, #8]
	bl	_vfree
	str	xzr, [x19, #8]
	b	LBB0_13
LBB0_10:
Lloh134:
	adrp	x8, l_.str.6@PAGE
Lloh135:
	add	x8, x8, l_.str.6@PAGEOFF
Lloh136:
	adrp	x9, l_.str.4@PAGE
Lloh137:
	add	x9, x9, l_.str.4@PAGEOFF
	cmp	x22, x23
	csel	x21, x9, x8, eq
	str	x21, [sp]
Lloh138:
	adrp	x0, l_.str.7@PAGE
Lloh139:
	add	x0, x0, l_.str.7@PAGEOFF
	bl	_pr_info
	ldr	w0, [x24]
	ldr	w3, [x19, #40]
	ldr	w4, [x25]
Lloh140:
	adrp	x8, _rtl_wowlan_fw_cb@GOTPAGE
Lloh141:
	ldr	x8, [x8, _rtl_wowlan_fw_cb@GOTPAGEOFF]
Lloh142:
	ldr	w6, [x8]
	mov	w1, #1
	mov	x2, x21
	mov	x5, x20
	bl	_request_firmware_nowait
	cbz	w0, LBB0_14
; %bb.11:
Lloh143:
	adrp	x0, l_.str.9@PAGE
Lloh144:
	add	x0, x0, l_.str.9@PAGEOFF
LBB0_12:
	bl	_pr_err
	ldr	x0, [x19, #16]
	bl	_vfree
	ldr	x0, [x19, #8]
	bl	_vfree
LBB0_13:
	mov	w0, #1
LBB0_14:
	ldp	x29, x30, [sp, #80]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #64]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #48]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #32]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #16]             ; 16-byte Folded Reload
	add	sp, sp, #96
	ret
	.loh AdrpLdrGotLdr	Lloh105, Lloh106, Lloh107
	.loh AdrpLdrGotLdr	Lloh102, Lloh103, Lloh104
	.loh AdrpLdrGotLdr	Lloh99, Lloh100, Lloh101
	.loh AdrpLdrGotLdr	Lloh96, Lloh97, Lloh98
	.loh AdrpLdrGotLdr	Lloh93, Lloh94, Lloh95
	.loh AdrpLdrGotLdr	Lloh90, Lloh91, Lloh92
	.loh AdrpLdrGotLdr	Lloh87, Lloh88, Lloh89
	.loh AdrpLdrGotLdr	Lloh84, Lloh85, Lloh86
	.loh AdrpLdrGotLdr	Lloh81, Lloh82, Lloh83
	.loh AdrpLdrGotLdr	Lloh78, Lloh79, Lloh80
	.loh AdrpLdrGotLdr	Lloh75, Lloh76, Lloh77
	.loh AdrpLdrGotLdr	Lloh72, Lloh73, Lloh74
	.loh AdrpLdrGotLdr	Lloh69, Lloh70, Lloh71
	.loh AdrpLdrGotLdr	Lloh66, Lloh67, Lloh68
	.loh AdrpLdrGotLdr	Lloh63, Lloh64, Lloh65
	.loh AdrpLdrGotLdr	Lloh60, Lloh61, Lloh62
	.loh AdrpLdrGotLdr	Lloh57, Lloh58, Lloh59
	.loh AdrpLdrGotLdr	Lloh54, Lloh55, Lloh56
	.loh AdrpLdrGotLdr	Lloh51, Lloh52, Lloh53
	.loh AdrpLdrGotLdr	Lloh48, Lloh49, Lloh50
	.loh AdrpLdrGotLdr	Lloh45, Lloh46, Lloh47
	.loh AdrpLdrGotLdr	Lloh42, Lloh43, Lloh44
	.loh AdrpLdrGotLdr	Lloh39, Lloh40, Lloh41
	.loh AdrpLdrGotLdr	Lloh36, Lloh37, Lloh38
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh17
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh16
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh108, Lloh109
	.loh AdrpAdd	Lloh110, Lloh111
	.loh AdrpLdrGotLdr	Lloh125, Lloh126, Lloh127
	.loh AdrpLdrGot	Lloh123, Lloh124
	.loh AdrpLdrGot	Lloh121, Lloh122
	.loh AdrpAdd	Lloh119, Lloh120
	.loh AdrpAdd	Lloh117, Lloh118
	.loh AdrpAdd	Lloh114, Lloh115
	.loh AdrpLdrGotLdr	Lloh112, Lloh113, Lloh116
	.loh AdrpAdd	Lloh128, Lloh129
	.loh AdrpAdd	Lloh130, Lloh131
	.loh AdrpAdd	Lloh132, Lloh133
	.loh AdrpLdrGotLdr	Lloh140, Lloh141, Lloh142
	.loh AdrpAdd	Lloh138, Lloh139
	.loh AdrpAdd	Lloh136, Lloh137
	.loh AdrpAdd	Lloh134, Lloh135
	.loh AdrpAdd	Lloh143, Lloh144
	.cfi_endproc
                                        ; -- End function
	.comm	_CFENDFORM,4,2                  ; @CFENDFORM
	.comm	_BAND_ON_2_4G,4,2               ; @BAND_ON_2_4G
	.comm	_BAND_ON_BOTH,4,2               ; @BAND_ON_BOTH
	.comm	_SINGLEMAC_SINGLEPHY,4,2        ; @SINGLEMAC_SINGLEPHY
	.comm	_RCR_APPFCS,4,2                 ; @RCR_APPFCS
	.comm	_RCR_APP_MIC,4,2                ; @RCR_APP_MIC
	.comm	_RCR_APP_ICV,4,2                ; @RCR_APP_ICV
	.comm	_RCR_APP_PHYST_RXFF,4,2         ; @RCR_APP_PHYST_RXFF
	.comm	_RCR_NONQOS_VHT,4,2             ; @RCR_NONQOS_VHT
	.comm	_RCR_HTC_LOC_CTRL,4,2           ; @RCR_HTC_LOC_CTRL
	.comm	_RCR_AMF,4,2                    ; @RCR_AMF
	.comm	_RCR_ACF,4,2                    ; @RCR_ACF
	.comm	_RCR_ADF,4,2                    ; @RCR_ADF
	.comm	_RCR_AICV,4,2                   ; @RCR_AICV
	.comm	_RCR_ACRC32,4,2                 ; @RCR_ACRC32
	.comm	_RCR_AB,4,2                     ; @RCR_AB
	.comm	_RCR_AM,4,2                     ; @RCR_AM
	.comm	_RCR_APM,4,2                    ; @RCR_APM
	.comm	_IMR_PSTIMEOUT,4,2              ; @IMR_PSTIMEOUT
	.comm	_IMR_GTINT3,4,2                 ; @IMR_GTINT3
	.comm	_IMR_HSISR_IND_ON_INT,4,2       ; @IMR_HSISR_IND_ON_INT
	.comm	_IMR_C2HCMD,4,2                 ; @IMR_C2HCMD
	.comm	_IMR_HIGHDOK,4,2                ; @IMR_HIGHDOK
	.comm	_IMR_MGNTDOK,4,2                ; @IMR_MGNTDOK
	.comm	_IMR_BKDOK,4,2                  ; @IMR_BKDOK
	.comm	_IMR_BEDOK,4,2                  ; @IMR_BEDOK
	.comm	_IMR_VIDOK,4,2                  ; @IMR_VIDOK
	.comm	_IMR_VODOK,4,2                  ; @IMR_VODOK
	.comm	_IMR_RDU,4,2                    ; @IMR_RDU
	.comm	_IMR_ROK,4,2                    ; @IMR_ROK
	.comm	_IMR_RXFOVW,4,2                 ; @IMR_RXFOVW
	.comm	_IMR_TXFOVW,4,2                 ; @IMR_TXFOVW
	.comm	_HSIMR_PDN_INT_EN,4,2           ; @HSIMR_PDN_INT_EN
	.comm	_HSIMR_RON_INT_EN,4,2           ; @HSIMR_RON_INT_EN
	.comm	_WAKE_ON_MAGIC_PACKET,4,2       ; @WAKE_ON_MAGIC_PACKET
	.comm	_WAKE_ON_PATTERN_MATCH,4,2      ; @WAKE_ON_PATTERN_MATCH
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"watchdog disabled\n"

	.comm	_FW_PS_MIN_MODE,4,2             ; @FW_PS_MIN_MODE
	.comm	_FW_PS_MAX_MODE,4,2             ; @FW_PS_MAX_MODE
	.comm	_FW_PS_DTIM_MODE,4,2            ; @FW_PS_DTIM_MODE
l_.str.1:                               ; @.str.1
	.asciz	"Can't alloc buffer for fw.\n"

l_.str.2:                               ; @.str.2
	.asciz	"Can't alloc buffer for wowlan fw.\n"

	.comm	_HARDWARE_TYPE_RTL8812AE,8,3    ; @HARDWARE_TYPE_RTL8812AE
l_.str.3:                               ; @.str.3
	.asciz	"rtlwifi/rtl8812aefw.bin"

l_.str.4:                               ; @.str.4
	.asciz	"rtlwifi/rtl8812aefw_wowlan.bin"

l_.str.5:                               ; @.str.5
	.asciz	"rtlwifi/rtl8821aefw_29.bin"

l_.str.6:                               ; @.str.6
	.asciz	"rtlwifi/rtl8821aefw_wowlan.bin"

l_.str.7:                               ; @.str.7
	.asciz	"Using firmware %s\n"

	.comm	_THIS_MODULE,4,2                ; @THIS_MODULE
	.comm	_GFP_KERNEL,4,2                 ; @GFP_KERNEL
	.comm	_rtl_fw_cb,4,2                  ; @rtl_fw_cb
l_.str.8:                               ; @.str.8
	.asciz	"Failed to request normal firmware!\n"

	.comm	_rtl_wowlan_fw_cb,4,2           ; @rtl_wowlan_fw_cb
l_.str.9:                               ; @.str.9
	.asciz	"Failed to request wowlan firmware!\n"

	.section	__DATA,__const
	.p2align	3                               ; @switch.table.rtl8821ae_init_sw_vars
l_switch.table.rtl8821ae_init_sw_vars:
	.quad	_FW_PS_MIN_MODE
	.quad	_FW_PS_MAX_MODE
	.quad	_FW_PS_DTIM_MODE

.subsections_via_symbols
