	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function wl18xx_identify_chip
_wl18xx_identify_chip:                  ## @wl18xx_identify_chip
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%rbx
	pushq	%rax
	.cfi_offset %rbx, -24
	movl	36(%rdi), %esi
	cmpl	$129, %esi
	je	LBB0_3
## %bb.1:
	cmpl	$128, %esi
	jne	LBB0_4
## %bb.2:
	movq	%rdi, %rbx
	movq	_DEBUG_BOOT@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str(%rip), %rsi
	movl	$128, %edx
	callq	_wl1271_debug
	movq	_WL18XX_FW_NAME@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 48(%rbx)
	movq	%rax, 40(%rbx)
	movq	_WLCORE_QUIRK_RX_BLOCKSIZE_ALIGN@GOTPCREL(%rip), %rax
	movq	_WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	orl	(%rax), %ecx
	movq	_WLCORE_QUIRK_NO_SCHED_SCAN_WHILE_CONN@GOTPCREL(%rip), %rax
	orl	(%rax), %ecx
	movq	_WLCORE_QUIRK_TX_PAD_LAST_FRAME@GOTPCREL(%rip), %rax
	orl	(%rax), %ecx
	movq	_WLCORE_QUIRK_REGDOMAIN_CONF@GOTPCREL(%rip), %rax
	orl	(%rax), %ecx
	movq	_WLCORE_QUIRK_DUAL_PROBE_TMPL@GOTPCREL(%rip), %rax
	orl	(%rax), %ecx
	orl	%ecx, (%rbx)
	movq	_WL18XX_CHIP_VER@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_WL18XX_IFTYPE_VER@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	_WL18XX_MAJOR_VER@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	movq	_WL18XX_SUBTYPE_VER@GOTPCREL(%rip), %rax
	movl	(%rax), %r8d
	movq	_WL18XX_MINOR_VER@GOTPCREL(%rip), %rax
	movl	(%rax), %r9d
	movq	%rbx, %rdi
	pushq	$0
	pushq	$0
	pushq	$0
	pushq	$0
	callq	_wlcore_set_min_fw_ver
	addq	$32, %rsp
	movabsq	$4611686018427388176, %rax      ## imm = 0x4000000000000110
	movq	%rax, 4(%rbx)
	movq	_CMD_TEMPL_CFG_PROBE_REQ_2_4@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 32(%rbx)
	movq	_CMD_TEMPL_CFG_PROBE_REQ_5@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 28(%rbx)
	movq	_CMD_TEMPL_PROBE_REQ_2_4_PERIODIC@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 24(%rbx)
	movq	_CMD_TEMPL_PROBE_REQ_5_PERIODIC@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 20(%rbx)
	movq	_WL18XX_MAX_CHANNELS_5GHZ@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 16(%rbx)
	movq	_WL18XX_RX_BA_MAX_SESSIONS@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 12(%rbx)
	xorl	%eax, %eax
	jmp	LBB0_6
LBB0_3:
	leaq	L_.str.1(%rip), %rdi
	movl	$129, %esi
	jmp	LBB0_5
LBB0_4:
	leaq	L_.str.2(%rip), %rdi
LBB0_5:
	callq	_wl1271_warning
	movq	_ENODEV@GOTPCREL(%rip), %rcx
	xorl	%eax, %eax
	subl	(%rcx), %eax
LBB0_6:
	addq	$8, %rsp
	popq	%rbx
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_DEBUG_BOOT,4,2                 ## @DEBUG_BOOT
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"chip id 0x%x (185x PG20)"

	.comm	_WL18XX_FW_NAME,8,3             ## @WL18XX_FW_NAME
	.comm	_WLCORE_QUIRK_RX_BLOCKSIZE_ALIGN,4,2 ## @WLCORE_QUIRK_RX_BLOCKSIZE_ALIGN
	.comm	_WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN,4,2 ## @WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN
	.comm	_WLCORE_QUIRK_NO_SCHED_SCAN_WHILE_CONN,4,2 ## @WLCORE_QUIRK_NO_SCHED_SCAN_WHILE_CONN
	.comm	_WLCORE_QUIRK_TX_PAD_LAST_FRAME,4,2 ## @WLCORE_QUIRK_TX_PAD_LAST_FRAME
	.comm	_WLCORE_QUIRK_REGDOMAIN_CONF,4,2 ## @WLCORE_QUIRK_REGDOMAIN_CONF
	.comm	_WLCORE_QUIRK_DUAL_PROBE_TMPL,4,2 ## @WLCORE_QUIRK_DUAL_PROBE_TMPL
	.comm	_WL18XX_CHIP_VER,4,2            ## @WL18XX_CHIP_VER
	.comm	_WL18XX_IFTYPE_VER,4,2          ## @WL18XX_IFTYPE_VER
	.comm	_WL18XX_MAJOR_VER,4,2           ## @WL18XX_MAJOR_VER
	.comm	_WL18XX_SUBTYPE_VER,4,2         ## @WL18XX_SUBTYPE_VER
	.comm	_WL18XX_MINOR_VER,4,2           ## @WL18XX_MINOR_VER
L_.str.1:                               ## @.str.1
	.asciz	"chip id 0x%x (185x PG10) is deprecated"

	.comm	_ENODEV,4,2                     ## @ENODEV
L_.str.2:                               ## @.str.2
	.asciz	"unsupported chip id: 0x%x"

	.comm	_CMD_TEMPL_CFG_PROBE_REQ_2_4,4,2 ## @CMD_TEMPL_CFG_PROBE_REQ_2_4
	.comm	_CMD_TEMPL_CFG_PROBE_REQ_5,4,2  ## @CMD_TEMPL_CFG_PROBE_REQ_5
	.comm	_CMD_TEMPL_PROBE_REQ_2_4_PERIODIC,4,2 ## @CMD_TEMPL_PROBE_REQ_2_4_PERIODIC
	.comm	_CMD_TEMPL_PROBE_REQ_5_PERIODIC,4,2 ## @CMD_TEMPL_PROBE_REQ_5_PERIODIC
	.comm	_WL18XX_MAX_CHANNELS_5GHZ,4,2   ## @WL18XX_MAX_CHANNELS_5GHZ
	.comm	_WL18XX_RX_BA_MAX_SESSIONS,4,2  ## @WL18XX_RX_BA_MAX_SESSIONS
	.no_dead_strip	_wl18xx_identify_chip
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ; -- Begin function wl18xx_identify_chip
lCPI0_0:
	.long	272                             ; 0x110
	.long	1073741824                      ; 0x40000000
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_wl18xx_identify_chip:                  ; @wl18xx_identify_chip
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #48
	.cfi_def_cfa_offset 48
	stp	x20, x19, [sp, #16]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #32]             ; 16-byte Folded Spill
	add	x29, sp, #32
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	ldr	w1, [x0, #36]
	cmp	w1, #129
	b.eq	LBB0_3
; %bb.1:
	cmp	w1, #128
	b.ne	LBB0_4
; %bb.2:
	mov	x19, x0
Lloh0:
	adrp	x8, _DEBUG_BOOT@GOTPAGE
Lloh1:
	ldr	x8, [x8, _DEBUG_BOOT@GOTPAGEOFF]
Lloh2:
	ldr	w0, [x8]
Lloh3:
	adrp	x1, l_.str@PAGE
Lloh4:
	add	x1, x1, l_.str@PAGEOFF
	mov	w2, #128
	bl	_wl1271_debug
Lloh5:
	adrp	x8, _WL18XX_FW_NAME@GOTPAGE
Lloh6:
	ldr	x8, [x8, _WL18XX_FW_NAME@GOTPAGEOFF]
Lloh7:
	ldr	x8, [x8]
	stp	x8, x8, [x19, #40]
Lloh8:
	adrp	x8, _WLCORE_QUIRK_RX_BLOCKSIZE_ALIGN@GOTPAGE
Lloh9:
	ldr	x8, [x8, _WLCORE_QUIRK_RX_BLOCKSIZE_ALIGN@GOTPAGEOFF]
Lloh10:
	ldr	w8, [x8]
Lloh11:
	adrp	x9, _WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN@GOTPAGE
Lloh12:
	ldr	x9, [x9, _WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN@GOTPAGEOFF]
Lloh13:
	ldr	w9, [x9]
	orr	w8, w9, w8
Lloh14:
	adrp	x9, _WLCORE_QUIRK_NO_SCHED_SCAN_WHILE_CONN@GOTPAGE
Lloh15:
	ldr	x9, [x9, _WLCORE_QUIRK_NO_SCHED_SCAN_WHILE_CONN@GOTPAGEOFF]
Lloh16:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh17:
	adrp	x9, _WLCORE_QUIRK_TX_PAD_LAST_FRAME@GOTPAGE
Lloh18:
	ldr	x9, [x9, _WLCORE_QUIRK_TX_PAD_LAST_FRAME@GOTPAGEOFF]
Lloh19:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh20:
	adrp	x9, _WLCORE_QUIRK_REGDOMAIN_CONF@GOTPAGE
Lloh21:
	ldr	x9, [x9, _WLCORE_QUIRK_REGDOMAIN_CONF@GOTPAGEOFF]
Lloh22:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh23:
	adrp	x9, _WLCORE_QUIRK_DUAL_PROBE_TMPL@GOTPAGE
Lloh24:
	ldr	x9, [x9, _WLCORE_QUIRK_DUAL_PROBE_TMPL@GOTPAGEOFF]
Lloh25:
	ldr	w9, [x9]
	orr	w8, w8, w9
	ldr	w9, [x19]
	orr	w8, w8, w9
	str	w8, [x19]
Lloh26:
	adrp	x8, _WL18XX_CHIP_VER@GOTPAGE
Lloh27:
	ldr	x8, [x8, _WL18XX_CHIP_VER@GOTPAGEOFF]
Lloh28:
	ldr	w1, [x8]
Lloh29:
	adrp	x8, _WL18XX_IFTYPE_VER@GOTPAGE
Lloh30:
	ldr	x8, [x8, _WL18XX_IFTYPE_VER@GOTPAGEOFF]
Lloh31:
	ldr	w2, [x8]
Lloh32:
	adrp	x8, _WL18XX_MAJOR_VER@GOTPAGE
Lloh33:
	ldr	x8, [x8, _WL18XX_MAJOR_VER@GOTPAGEOFF]
Lloh34:
	ldr	w3, [x8]
Lloh35:
	adrp	x8, _WL18XX_SUBTYPE_VER@GOTPAGE
Lloh36:
	ldr	x8, [x8, _WL18XX_SUBTYPE_VER@GOTPAGEOFF]
Lloh37:
	ldr	w4, [x8]
Lloh38:
	adrp	x8, _WL18XX_MINOR_VER@GOTPAGE
Lloh39:
	ldr	x8, [x8, _WL18XX_MINOR_VER@GOTPAGEOFF]
Lloh40:
	ldr	w5, [x8]
	str	xzr, [sp]
	mov	x0, x19
	mov	w6, #0
	mov	w7, #0
	bl	_wlcore_set_min_fw_ver
	mov	w0, #0
Lloh41:
	adrp	x8, _CMD_TEMPL_CFG_PROBE_REQ_2_4@GOTPAGE
Lloh42:
	ldr	x8, [x8, _CMD_TEMPL_CFG_PROBE_REQ_2_4@GOTPAGEOFF]
Lloh43:
	adrp	x9, lCPI0_0@PAGE
Lloh44:
	ldr	d0, [x9, lCPI0_0@PAGEOFF]
Lloh45:
	ldr	w8, [x8]
Lloh46:
	adrp	x9, _CMD_TEMPL_CFG_PROBE_REQ_5@GOTPAGE
Lloh47:
	ldr	x9, [x9, _CMD_TEMPL_CFG_PROBE_REQ_5@GOTPAGEOFF]
Lloh48:
	ldr	w9, [x9]
	stp	w9, w8, [x19, #28]
Lloh49:
	adrp	x8, _CMD_TEMPL_PROBE_REQ_2_4_PERIODIC@GOTPAGE
Lloh50:
	ldr	x8, [x8, _CMD_TEMPL_PROBE_REQ_2_4_PERIODIC@GOTPAGEOFF]
Lloh51:
	ldr	w8, [x8]
Lloh52:
	adrp	x9, _CMD_TEMPL_PROBE_REQ_5_PERIODIC@GOTPAGE
Lloh53:
	ldr	x9, [x9, _CMD_TEMPL_PROBE_REQ_5_PERIODIC@GOTPAGEOFF]
Lloh54:
	ldr	w9, [x9]
	stp	w9, w8, [x19, #20]
Lloh55:
	adrp	x8, _WL18XX_MAX_CHANNELS_5GHZ@GOTPAGE
Lloh56:
	ldr	x8, [x8, _WL18XX_MAX_CHANNELS_5GHZ@GOTPAGEOFF]
Lloh57:
	ldr	w8, [x8]
Lloh58:
	adrp	x9, _WL18XX_RX_BA_MAX_SESSIONS@GOTPAGE
Lloh59:
	ldr	x9, [x9, _WL18XX_RX_BA_MAX_SESSIONS@GOTPAGEOFF]
Lloh60:
	ldr	w9, [x9]
	stp	w9, w8, [x19, #12]
	stur	d0, [x19, #4]
	b	LBB0_6
LBB0_3:
Lloh61:
	adrp	x0, l_.str.1@PAGE
Lloh62:
	add	x0, x0, l_.str.1@PAGEOFF
	b	LBB0_5
LBB0_4:
Lloh63:
	adrp	x0, l_.str.2@PAGE
Lloh64:
	add	x0, x0, l_.str.2@PAGEOFF
LBB0_5:
	bl	_wl1271_warning
Lloh65:
	adrp	x8, _ENODEV@GOTPAGE
Lloh66:
	ldr	x8, [x8, _ENODEV@GOTPAGEOFF]
Lloh67:
	ldr	w8, [x8]
	neg	w0, w8
LBB0_6:
	ldp	x29, x30, [sp, #32]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #16]             ; 16-byte Folded Reload
	add	sp, sp, #48
	ret
	.loh AdrpLdrGotLdr	Lloh58, Lloh59, Lloh60
	.loh AdrpLdrGotLdr	Lloh55, Lloh56, Lloh57
	.loh AdrpLdrGotLdr	Lloh52, Lloh53, Lloh54
	.loh AdrpLdrGotLdr	Lloh49, Lloh50, Lloh51
	.loh AdrpLdrGotLdr	Lloh46, Lloh47, Lloh48
	.loh AdrpAdrp	Lloh43, Lloh46
	.loh AdrpLdr	Lloh43, Lloh44
	.loh AdrpLdrGotLdr	Lloh41, Lloh42, Lloh45
	.loh AdrpLdrGotLdr	Lloh38, Lloh39, Lloh40
	.loh AdrpLdrGotLdr	Lloh35, Lloh36, Lloh37
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh29, Lloh30, Lloh31
	.loh AdrpLdrGotLdr	Lloh26, Lloh27, Lloh28
	.loh AdrpLdrGotLdr	Lloh23, Lloh24, Lloh25
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpAdd	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh61, Lloh62
	.loh AdrpAdd	Lloh63, Lloh64
	.loh AdrpLdrGotLdr	Lloh65, Lloh66, Lloh67
	.cfi_endproc
                                        ; -- End function
	.comm	_DEBUG_BOOT,4,2                 ; @DEBUG_BOOT
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"chip id 0x%x (185x PG20)"

	.comm	_WL18XX_FW_NAME,8,3             ; @WL18XX_FW_NAME
	.comm	_WLCORE_QUIRK_RX_BLOCKSIZE_ALIGN,4,2 ; @WLCORE_QUIRK_RX_BLOCKSIZE_ALIGN
	.comm	_WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN,4,2 ; @WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN
	.comm	_WLCORE_QUIRK_NO_SCHED_SCAN_WHILE_CONN,4,2 ; @WLCORE_QUIRK_NO_SCHED_SCAN_WHILE_CONN
	.comm	_WLCORE_QUIRK_TX_PAD_LAST_FRAME,4,2 ; @WLCORE_QUIRK_TX_PAD_LAST_FRAME
	.comm	_WLCORE_QUIRK_REGDOMAIN_CONF,4,2 ; @WLCORE_QUIRK_REGDOMAIN_CONF
	.comm	_WLCORE_QUIRK_DUAL_PROBE_TMPL,4,2 ; @WLCORE_QUIRK_DUAL_PROBE_TMPL
	.comm	_WL18XX_CHIP_VER,4,2            ; @WL18XX_CHIP_VER
	.comm	_WL18XX_IFTYPE_VER,4,2          ; @WL18XX_IFTYPE_VER
	.comm	_WL18XX_MAJOR_VER,4,2           ; @WL18XX_MAJOR_VER
	.comm	_WL18XX_SUBTYPE_VER,4,2         ; @WL18XX_SUBTYPE_VER
	.comm	_WL18XX_MINOR_VER,4,2           ; @WL18XX_MINOR_VER
l_.str.1:                               ; @.str.1
	.asciz	"chip id 0x%x (185x PG10) is deprecated"

	.comm	_ENODEV,4,2                     ; @ENODEV
l_.str.2:                               ; @.str.2
	.asciz	"unsupported chip id: 0x%x"

	.comm	_CMD_TEMPL_CFG_PROBE_REQ_2_4,4,2 ; @CMD_TEMPL_CFG_PROBE_REQ_2_4
	.comm	_CMD_TEMPL_CFG_PROBE_REQ_5,4,2  ; @CMD_TEMPL_CFG_PROBE_REQ_5
	.comm	_CMD_TEMPL_PROBE_REQ_2_4_PERIODIC,4,2 ; @CMD_TEMPL_PROBE_REQ_2_4_PERIODIC
	.comm	_CMD_TEMPL_PROBE_REQ_5_PERIODIC,4,2 ; @CMD_TEMPL_PROBE_REQ_5_PERIODIC
	.comm	_WL18XX_MAX_CHANNELS_5GHZ,4,2   ; @WL18XX_MAX_CHANNELS_5GHZ
	.comm	_WL18XX_RX_BA_MAX_SESSIONS,4,2  ; @WL18XX_RX_BA_MAX_SESSIONS
	.no_dead_strip	_wl18xx_identify_chip
.subsections_via_symbols
