	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function bnx2x_set_xgxs_loopback
_bnx2x_set_xgxs_loopback:               ## @bnx2x_set_xgxs_loopback
	.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
	pushq	%rax
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, %rbx
	movq	8(%rsi), %r14
	movq	(%rdi), %rax
	movq	_SPEED_1000@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_1
## %bb.5:
	movq	_NETIF_MSG_LINK@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.1(%rip), %rsi
	callq	_DP
	movq	_MDIO_REG_BANK_COMBO_IEEE0@GOTPCREL(%rip), %r15
	movq	_MDIO_COMBO_IEEE0_MII_CONTROL@GOTPCREL(%rip), %r12
	movl	(%r12), %ecx
	andl	$15, %ecx
	addq	(%r15), %rcx
	leaq	-44(%rbp), %r8
	movq	%r14, %rdi
	movq	%rbx, %rsi
	movl	$5, %edx
	callq	_bnx2x_cl45_read
	movl	(%r12), %ecx
	andl	$15, %ecx
	addq	(%r15), %rcx
	movq	_MDIO_COMBO_IEEO_MII_CONTROL_LOOPBACK@GOTPCREL(%rip), %rax
	movl	(%rax), %r8d
	orl	-44(%rbp), %r8d
	movq	%r14, %rdi
	movq	%rbx, %rsi
	movl	$5, %edx
	callq	_bnx2x_cl45_write
	jmp	LBB0_6
LBB0_1:
	movq	%rsi, %r15
	movslq	(%rsi), %r12
	movq	_NETIF_MSG_LINK@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str(%rip), %rsi
	callq	_DP
	movq	%r14, %rdi
	callq	_CHIP_IS_E3
	xorl	%r13d, %r13d
	testl	%eax, %eax
	jne	LBB0_3
## %bb.2:
	movq	_NIG_REG_XGXS0_CTRL_MD_DEVAD@GOTPCREL(%rip), %rcx
	leaq	(,%r12,8), %rax
	leaq	(%rax,%rax,2), %r13
	movq	(%rcx), %rsi
	addq	%r13, %rsi
	movq	%r14, %rdi
	callq	_REG_RD
	movq	_NIG_REG_XGXS0_CTRL_MD_DEVAD@GOTPCREL(%rip), %rcx
	addq	(%rcx), %r13
	movq	%r14, %rdi
	movq	%r13, %rsi
	movl	%eax, %r13d
	movl	$5, %edx
	callq	_REG_WR
LBB0_3:
	movq	_MDIO_REG_BANK_AER_BLOCK@GOTPCREL(%rip), %rax
	movq	_MDIO_AER_BLOCK_AER_REG@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	andl	$15, %ecx
	addq	(%rax), %rcx
	movq	%r14, %rdi
	movq	%rbx, %rsi
	movl	$5, %edx
	movl	$10240, %r8d                    ## imm = 0x2800
	callq	_bnx2x_cl45_write
	movq	_MDIO_REG_BANK_CL73_IEEEB0@GOTPCREL(%rip), %rax
	movq	_MDIO_CL73_IEEEB0_CL73_AN_CONTROL@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	andl	$15, %ecx
	addq	(%rax), %rcx
	movq	%r14, %rdi
	movq	%rbx, %rsi
	movl	$5, %edx
	movl	$24641, %r8d                    ## imm = 0x6041
	callq	_bnx2x_cl45_write
	movl	$200, %edi
	callq	_msleep
	movq	%r15, %rdi
	movq	%rbx, %rsi
	callq	_bnx2x_set_aer_mmd
	movq	%r14, %rdi
	callq	_CHIP_IS_E3
	testl	%eax, %eax
	je	LBB0_4
LBB0_6:
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_4:
	movq	_NIG_REG_XGXS0_CTRL_MD_DEVAD@GOTPCREL(%rip), %rax
	shll	$3, %r12d
	leal	(%r12,%r12,2), %ecx
	movslq	%ecx, %rsi
	addq	(%rax), %rsi
	movq	%r14, %rdi
	movl	%r13d, %edx
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_REG_WR                         ## TAILCALL
	.cfi_endproc
                                        ## -- End function
	.comm	_SPEED_1000,8,3                 ## @SPEED_1000
	.comm	_NETIF_MSG_LINK,4,2             ## @NETIF_MSG_LINK
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"XGXS 10G loopback enable\n"

	.comm	_NIG_REG_XGXS0_CTRL_MD_DEVAD,8,3 ## @NIG_REG_XGXS0_CTRL_MD_DEVAD
	.comm	_MDIO_REG_BANK_AER_BLOCK,8,3    ## @MDIO_REG_BANK_AER_BLOCK
	.comm	_MDIO_AER_BLOCK_AER_REG,4,2     ## @MDIO_AER_BLOCK_AER_REG
	.comm	_MDIO_REG_BANK_CL73_IEEEB0,8,3  ## @MDIO_REG_BANK_CL73_IEEEB0
	.comm	_MDIO_CL73_IEEEB0_CL73_AN_CONTROL,4,2 ## @MDIO_CL73_IEEEB0_CL73_AN_CONTROL
L_.str.1:                               ## @.str.1
	.asciz	"XGXS 1G loopback enable\n"

	.comm	_MDIO_REG_BANK_COMBO_IEEE0,8,3  ## @MDIO_REG_BANK_COMBO_IEEE0
	.comm	_MDIO_COMBO_IEEE0_MII_CONTROL,4,2 ## @MDIO_COMBO_IEEE0_MII_CONTROL
	.comm	_MDIO_COMBO_IEEO_MII_CONTROL_LOOPBACK,4,2 ## @MDIO_COMBO_IEEO_MII_CONTROL_LOOPBACK
	.no_dead_strip	_bnx2x_set_xgxs_loopback
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function bnx2x_set_xgxs_loopback
_bnx2x_set_xgxs_loopback:               ; @bnx2x_set_xgxs_loopback
	.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
	ldr	x19, [x1, #8]
	ldr	x8, [x0]
Lloh0:
	adrp	x9, _SPEED_1000@GOTPAGE
Lloh1:
	ldr	x9, [x9, _SPEED_1000@GOTPAGEOFF]
Lloh2:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_2
; %bb.1:
Lloh3:
	adrp	x8, _NETIF_MSG_LINK@GOTPAGE
Lloh4:
	ldr	x8, [x8, _NETIF_MSG_LINK@GOTPAGEOFF]
Lloh5:
	ldr	w0, [x8]
Lloh6:
	adrp	x1, l_.str.1@PAGE
Lloh7:
	add	x1, x1, l_.str.1@PAGEOFF
	bl	_DP
Lloh8:
	adrp	x21, _MDIO_REG_BANK_COMBO_IEEE0@GOTPAGE
Lloh9:
	ldr	x21, [x21, _MDIO_REG_BANK_COMBO_IEEE0@GOTPAGEOFF]
	ldr	x8, [x21]
Lloh10:
	adrp	x22, _MDIO_COMBO_IEEE0_MII_CONTROL@GOTPAGE
Lloh11:
	ldr	x22, [x22, _MDIO_COMBO_IEEE0_MII_CONTROL@GOTPAGEOFF]
	ldr	w9, [x22]
	and	x9, x9, #0xf
	add	x3, x8, x9
	add	x4, sp, #12
	mov	x0, x19
	mov	x1, x20
	mov	w2, #5
	bl	_bnx2x_cl45_read
	ldr	x8, [x21]
	ldr	w9, [x22]
	and	x9, x9, #0xf
	add	x3, x8, x9
	ldr	w8, [sp, #12]
Lloh12:
	adrp	x9, _MDIO_COMBO_IEEO_MII_CONTROL_LOOPBACK@GOTPAGE
Lloh13:
	ldr	x9, [x9, _MDIO_COMBO_IEEO_MII_CONTROL_LOOPBACK@GOTPAGEOFF]
Lloh14:
	ldr	w9, [x9]
	orr	w4, w9, w8
	mov	x0, x19
	mov	x1, x20
	mov	w2, #5
	bl	_bnx2x_cl45_write
	b	LBB0_6
LBB0_2:
	mov	x21, x1
	ldrsw	x23, [x1]
Lloh15:
	adrp	x8, _NETIF_MSG_LINK@GOTPAGE
Lloh16:
	ldr	x8, [x8, _NETIF_MSG_LINK@GOTPAGEOFF]
Lloh17:
	ldr	w0, [x8]
Lloh18:
	adrp	x1, l_.str@PAGE
Lloh19:
	add	x1, x1, l_.str@PAGEOFF
	bl	_DP
	mov	x0, x19
	bl	_CHIP_IS_E3
	cbz	w0, LBB0_4
; %bb.3:
	mov	w22, #0
	b	LBB0_5
LBB0_4:
Lloh20:
	adrp	x24, _NIG_REG_XGXS0_CTRL_MD_DEVAD@GOTPAGE
Lloh21:
	ldr	x24, [x24, _NIG_REG_XGXS0_CTRL_MD_DEVAD@GOTPAGEOFF]
	ldr	x8, [x24]
	add	x9, x23, x23, lsl #1
	lsl	x25, x9, #3
	add	x1, x8, x25
	mov	x0, x19
	bl	_REG_RD
	mov	x22, x0
	ldr	x8, [x24]
	add	x1, x8, x25
	mov	x0, x19
	mov	w2, #5
	bl	_REG_WR
LBB0_5:
Lloh22:
	adrp	x8, _MDIO_REG_BANK_AER_BLOCK@GOTPAGE
Lloh23:
	ldr	x8, [x8, _MDIO_REG_BANK_AER_BLOCK@GOTPAGEOFF]
Lloh24:
	ldr	x8, [x8]
Lloh25:
	adrp	x9, _MDIO_AER_BLOCK_AER_REG@GOTPAGE
Lloh26:
	ldr	x9, [x9, _MDIO_AER_BLOCK_AER_REG@GOTPAGEOFF]
Lloh27:
	ldr	w9, [x9]
	and	x9, x9, #0xf
	add	x3, x8, x9
	mov	x0, x19
	mov	x1, x20
	mov	w2, #5
	mov	w4, #10240
	bl	_bnx2x_cl45_write
Lloh28:
	adrp	x8, _MDIO_REG_BANK_CL73_IEEEB0@GOTPAGE
Lloh29:
	ldr	x8, [x8, _MDIO_REG_BANK_CL73_IEEEB0@GOTPAGEOFF]
Lloh30:
	ldr	x8, [x8]
Lloh31:
	adrp	x9, _MDIO_CL73_IEEEB0_CL73_AN_CONTROL@GOTPAGE
Lloh32:
	ldr	x9, [x9, _MDIO_CL73_IEEEB0_CL73_AN_CONTROL@GOTPAGEOFF]
Lloh33:
	ldr	w9, [x9]
	and	x9, x9, #0xf
	add	x3, x8, x9
	mov	x0, x19
	mov	x1, x20
	mov	w2, #5
	mov	w4, #24641
	bl	_bnx2x_cl45_write
	mov	w0, #200
	bl	_msleep
	mov	x0, x21
	mov	x1, x20
	bl	_bnx2x_set_aer_mmd
	mov	x0, x19
	bl	_CHIP_IS_E3
	cbz	w0, LBB0_7
LBB0_6:
	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
LBB0_7:
Lloh34:
	adrp	x8, _NIG_REG_XGXS0_CTRL_MD_DEVAD@GOTPAGE
Lloh35:
	ldr	x8, [x8, _NIG_REG_XGXS0_CTRL_MD_DEVAD@GOTPAGEOFF]
Lloh36:
	ldr	x8, [x8]
	add	w9, w23, w23, lsl #1
	lsl	w9, w9, #3
	add	x1, x8, w9, sxtw
	mov	x0, x19
	mov	x2, x22
	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
	b	_REG_WR
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGot	Lloh10, Lloh11
	.loh AdrpLdrGot	Lloh8, Lloh9
	.loh AdrpAdd	Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpAdd	Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGot	Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh31, Lloh32, Lloh33
	.loh AdrpLdrGotLdr	Lloh28, Lloh29, Lloh30
	.loh AdrpLdrGotLdr	Lloh25, Lloh26, Lloh27
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh34, Lloh35, Lloh36
	.cfi_endproc
                                        ; -- End function
	.comm	_SPEED_1000,8,3                 ; @SPEED_1000
	.comm	_NETIF_MSG_LINK,4,2             ; @NETIF_MSG_LINK
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"XGXS 10G loopback enable\n"

	.comm	_NIG_REG_XGXS0_CTRL_MD_DEVAD,8,3 ; @NIG_REG_XGXS0_CTRL_MD_DEVAD
	.comm	_MDIO_REG_BANK_AER_BLOCK,8,3    ; @MDIO_REG_BANK_AER_BLOCK
	.comm	_MDIO_AER_BLOCK_AER_REG,4,2     ; @MDIO_AER_BLOCK_AER_REG
	.comm	_MDIO_REG_BANK_CL73_IEEEB0,8,3  ; @MDIO_REG_BANK_CL73_IEEEB0
	.comm	_MDIO_CL73_IEEEB0_CL73_AN_CONTROL,4,2 ; @MDIO_CL73_IEEEB0_CL73_AN_CONTROL
l_.str.1:                               ; @.str.1
	.asciz	"XGXS 1G loopback enable\n"

	.comm	_MDIO_REG_BANK_COMBO_IEEE0,8,3  ; @MDIO_REG_BANK_COMBO_IEEE0
	.comm	_MDIO_COMBO_IEEE0_MII_CONTROL,4,2 ; @MDIO_COMBO_IEEE0_MII_CONTROL
	.comm	_MDIO_COMBO_IEEO_MII_CONTROL_LOOPBACK,4,2 ; @MDIO_COMBO_IEEO_MII_CONTROL_LOOPBACK
	.no_dead_strip	_bnx2x_set_xgxs_loopback
.subsections_via_symbols
