	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function bnx2x_get_link_ksettings
_bnx2x_get_link_ksettings:              ## @bnx2x_get_link_ksettings
	.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	$24, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rsi, %rbx
	callq	_netdev_priv
	movq	%rax, %r12
	movq	%rax, %rdi
	callq	_bnx2x_get_link_cfg_idx
	movl	%eax, %r14d
	movq	%rbx, -64(%rbp)                 ## 8-byte Spill
	movl	24(%rbx), %esi
	leaq	-48(%rbp), %rdi
	callq	_ethtool_convert_link_mode_to_legacy_u32
	movq	48(%r12), %rbx
	movq	64(%r12), %rax
	movslq	%r14d, %r14
	movl	%r14d, %ecx
	xorl	$1, %ecx
	movslq	%ecx, %rcx
	movq	_SUPPORTED_TP@GOTPCREL(%rip), %rdx
	movq	_SUPPORTED_FIBRE@GOTPCREL(%rip), %rsi
	movq	(%rsi), %r13
	orq	(%rdx), %r13
	andq	(%rax,%rcx,8), %r13
	orq	(%rax,%r14,8), %r13
	movq	72(%r12), %rax
	movq	(%rax,%r14,8), %r15
	movq	%r12, %rdi
	callq	_bnx2x_get_cur_phy_idx
	movq	(%rbx,%rax,8), %rcx
	movq	_ETH_PHY_SFP_1G_FIBER@GOTPCREL(%rip), %rax
	movq	%rcx, -56(%rbp)                 ## 8-byte Spill
	cmpq	(%rax), %rcx
	jne	LBB0_2
## %bb.1:
	movq	_SUPPORTED_10000baseT_Full@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	notq	%rax
	andq	%rax, %r13
	movq	_ADVERTISED_10000baseT_Full@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	notq	%rax
	andq	%rax, %r15
LBB0_2:
	movq	-64(%rbp), %rbx                 ## 8-byte Reload
	movq	(%r12), %rax
	movq	_BNX2X_STATE_OPEN@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_9
## %bb.3:
	cmpq	$0, 32(%r12)
	je	LBB0_9
## %bb.4:
	movq	_MF_FUNC_DIS@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	testl	%eax, 8(%r12)
	je	LBB0_5
LBB0_9:
	movq	_DUPLEX_UNKNOWN@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 12(%rbx)
	movq	_SPEED_UNKNOWN@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
LBB0_10:
	movl	%eax, 16(%rbx)
	movq	%r12, %rdi
	callq	_bnx2x_get_port_type
	movl	%eax, 8(%rbx)
	movl	56(%r12), %eax
	movl	%eax, 4(%rbx)
	movq	40(%r12), %rax
	movq	(%rax,%r14,8), %rax
	movq	_SPEED_AUTO_NEG@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_11
## %bb.12:
	movq	_AUTONEG_ENABLE@GOTPCREL(%rip), %rax
	jmp	LBB0_13
LBB0_11:
	movq	_AUTONEG_DISABLE@GOTPCREL(%rip), %rax
LBB0_13:
	movl	(%rax), %eax
	movl	%eax, (%rbx)
	movslq	16(%r12), %rax
	movq	_LINK_STATUS_AUTO_NEGOTIATE_COMPLETE@GOTPCREL(%rip), %rcx
	testl	%eax, (%rcx)
	je	LBB0_42
## %bb.14:
	movq	_ADVERTISED_Autoneg@GOTPCREL(%rip), %rdx
	movq	-48(%rbp), %rcx
	orq	(%rdx), %rcx
	movq	%rcx, -48(%rbp)
	movq	_LINK_STATUS_LINK_PARTNER_SYMMETRIC_PAUSE@GOTPCREL(%rip), %rdx
	testq	%rax, (%rdx)
	je	LBB0_16
## %bb.15:
	movq	_ADVERTISED_Pause@GOTPCREL(%rip), %rdx
	orq	(%rdx), %rcx
	movq	%rcx, -48(%rbp)
LBB0_16:
	movq	-56(%rbp), %rsi                 ## 8-byte Reload
	movq	_LINK_STATUS_LINK_PARTNER_ASYMMETRIC_PAUSE@GOTPCREL(%rip), %rdx
	testq	%rax, (%rdx)
	je	LBB0_18
## %bb.17:
	movq	_ADVERTISED_Asym_Pause@GOTPCREL(%rip), %rdx
	orq	(%rdx), %rcx
	movq	%rcx, -48(%rbp)
LBB0_18:
	movq	_LINK_STATUS_LINK_PARTNER_10THD_CAPABLE@GOTPCREL(%rip), %rdx
	testq	%rax, (%rdx)
	je	LBB0_20
## %bb.19:
	movq	_ADVERTISED_10baseT_Half@GOTPCREL(%rip), %rdx
	orq	(%rdx), %rcx
	movq	%rcx, -48(%rbp)
LBB0_20:
	movq	_LINK_STATUS_LINK_PARTNER_10TFD_CAPABLE@GOTPCREL(%rip), %rdx
	testq	%rax, (%rdx)
	je	LBB0_22
## %bb.21:
	movq	_ADVERTISED_10baseT_Full@GOTPCREL(%rip), %rdx
	orq	(%rdx), %rcx
	movq	%rcx, -48(%rbp)
LBB0_22:
	movq	_LINK_STATUS_LINK_PARTNER_100TXHD_CAPABLE@GOTPCREL(%rip), %rdx
	testq	%rax, (%rdx)
	je	LBB0_24
## %bb.23:
	movq	_ADVERTISED_100baseT_Half@GOTPCREL(%rip), %rdx
	orq	(%rdx), %rcx
	movq	%rcx, -48(%rbp)
LBB0_24:
	movq	_LINK_STATUS_LINK_PARTNER_100TXFD_CAPABLE@GOTPCREL(%rip), %rdx
	testq	%rax, (%rdx)
	je	LBB0_26
## %bb.25:
	movq	_ADVERTISED_100baseT_Full@GOTPCREL(%rip), %rdx
	orq	(%rdx), %rcx
	movq	%rcx, -48(%rbp)
LBB0_26:
	movq	_LINK_STATUS_LINK_PARTNER_1000THD_CAPABLE@GOTPCREL(%rip), %rdx
	testq	%rax, (%rdx)
	je	LBB0_28
## %bb.27:
	movq	_ADVERTISED_1000baseT_Half@GOTPCREL(%rip), %rdx
	orq	(%rdx), %rcx
	movq	%rcx, -48(%rbp)
LBB0_28:
	movq	_LINK_STATUS_LINK_PARTNER_1000TFD_CAPABLE@GOTPCREL(%rip), %rdx
	testq	%rax, (%rdx)
	je	LBB0_33
## %bb.29:
	movq	_ETH_PHY_KR@GOTPCREL(%rip), %rdx
	cmpq	(%rdx), %rsi
	jne	LBB0_31
## %bb.30:
	movq	_ADVERTISED_1000baseKX_Full@GOTPCREL(%rip), %rdx
	jmp	LBB0_32
LBB0_31:
	movq	_ADVERTISED_1000baseT_Full@GOTPCREL(%rip), %rdx
LBB0_32:
	orq	(%rdx), %rcx
	movq	%rcx, -48(%rbp)
LBB0_33:
	movq	_LINK_STATUS_LINK_PARTNER_2500XFD_CAPABLE@GOTPCREL(%rip), %rdx
	testq	%rax, (%rdx)
	je	LBB0_35
## %bb.34:
	movq	_ADVERTISED_2500baseX_Full@GOTPCREL(%rip), %rdx
	orq	(%rdx), %rcx
	movq	%rcx, -48(%rbp)
LBB0_35:
	movq	_LINK_STATUS_LINK_PARTNER_10GXFD_CAPABLE@GOTPCREL(%rip), %rdx
	testq	%rax, (%rdx)
	je	LBB0_40
## %bb.36:
	movq	_ETH_PHY_KR@GOTPCREL(%rip), %rdx
	cmpq	(%rdx), %rsi
	jne	LBB0_38
## %bb.37:
	movq	_ADVERTISED_10000baseKR_Full@GOTPCREL(%rip), %rdx
	jmp	LBB0_39
LBB0_38:
	movq	_ADVERTISED_10000baseT_Full@GOTPCREL(%rip), %rdx
LBB0_39:
	orq	(%rdx), %rcx
	movq	%rcx, -48(%rbp)
LBB0_40:
	movq	_LINK_STATUS_LINK_PARTNER_20GXFD_CAPABLE@GOTPCREL(%rip), %rdx
	testq	%rax, (%rdx)
	je	LBB0_42
## %bb.41:
	movq	_ADVERTISED_20000baseKR2_Full@GOTPCREL(%rip), %rax
	orq	(%rax), %rcx
	movq	%rcx, -48(%rbp)
LBB0_42:
	movl	32(%rbx), %edi
	movq	%r13, %rsi
	callq	_ethtool_convert_legacy_u32_to_link_mode
	movl	28(%rbx), %edi
	movq	%r15, %rsi
	callq	_ethtool_convert_legacy_u32_to_link_mode
	movl	24(%rbx), %edi
	movq	-48(%rbp), %rsi
	callq	_ethtool_convert_legacy_u32_to_link_mode
	movq	_BNX2X_MSG_ETHTOOL@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	20(%rbx), %edx
	movl	16(%rbx), %r9d
	movl	12(%rbx), %r10d
	movl	8(%rbx), %r11d
	movl	(%rbx), %eax
	movl	4(%rbx), %ebx
	leaq	L_.str(%rip), %rsi
	movq	%r13, %rcx
	movq	%r15, %r8
	pushq	%rax
	pushq	%rbx
	pushq	%r11
	pushq	%r10
	callq	_DP
	addq	$32, %rsp
	xorl	%eax, %eax
	addq	$24, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_5:
	movl	24(%r12), %eax
	movl	%eax, 12(%rbx)
	movq	%r12, %rdi
	callq	_IS_MF
	testq	%rax, %rax
	je	LBB0_8
## %bb.6:
	movq	%r12, %rdi
	callq	_BP_NOMCP
	testl	%eax, %eax
	je	LBB0_7
LBB0_8:
	movl	20(%r12), %eax
	jmp	LBB0_10
LBB0_7:
	movq	%r12, %rdi
	callq	_bnx2x_get_mf_speed
	jmp	LBB0_10
	.cfi_endproc
                                        ## -- End function
	.comm	_SUPPORTED_TP,8,3               ## @SUPPORTED_TP
	.comm	_SUPPORTED_FIBRE,8,3            ## @SUPPORTED_FIBRE
	.comm	_ETH_PHY_SFP_1G_FIBER,8,3       ## @ETH_PHY_SFP_1G_FIBER
	.comm	_SUPPORTED_10000baseT_Full,8,3  ## @SUPPORTED_10000baseT_Full
	.comm	_ADVERTISED_10000baseT_Full,8,3 ## @ADVERTISED_10000baseT_Full
	.comm	_BNX2X_STATE_OPEN,8,3           ## @BNX2X_STATE_OPEN
	.comm	_MF_FUNC_DIS,4,2                ## @MF_FUNC_DIS
	.comm	_DUPLEX_UNKNOWN,4,2             ## @DUPLEX_UNKNOWN
	.comm	_SPEED_UNKNOWN,4,2              ## @SPEED_UNKNOWN
	.comm	_SPEED_AUTO_NEG,8,3             ## @SPEED_AUTO_NEG
	.comm	_AUTONEG_ENABLE,4,2             ## @AUTONEG_ENABLE
	.comm	_AUTONEG_DISABLE,4,2            ## @AUTONEG_DISABLE
	.comm	_LINK_STATUS_AUTO_NEGOTIATE_COMPLETE,4,2 ## @LINK_STATUS_AUTO_NEGOTIATE_COMPLETE
	.comm	_ADVERTISED_Autoneg,8,3         ## @ADVERTISED_Autoneg
	.comm	_LINK_STATUS_LINK_PARTNER_SYMMETRIC_PAUSE,8,3 ## @LINK_STATUS_LINK_PARTNER_SYMMETRIC_PAUSE
	.comm	_ADVERTISED_Pause,8,3           ## @ADVERTISED_Pause
	.comm	_LINK_STATUS_LINK_PARTNER_ASYMMETRIC_PAUSE,8,3 ## @LINK_STATUS_LINK_PARTNER_ASYMMETRIC_PAUSE
	.comm	_ADVERTISED_Asym_Pause,8,3      ## @ADVERTISED_Asym_Pause
	.comm	_LINK_STATUS_LINK_PARTNER_10THD_CAPABLE,8,3 ## @LINK_STATUS_LINK_PARTNER_10THD_CAPABLE
	.comm	_ADVERTISED_10baseT_Half,8,3    ## @ADVERTISED_10baseT_Half
	.comm	_LINK_STATUS_LINK_PARTNER_10TFD_CAPABLE,8,3 ## @LINK_STATUS_LINK_PARTNER_10TFD_CAPABLE
	.comm	_ADVERTISED_10baseT_Full,8,3    ## @ADVERTISED_10baseT_Full
	.comm	_LINK_STATUS_LINK_PARTNER_100TXHD_CAPABLE,8,3 ## @LINK_STATUS_LINK_PARTNER_100TXHD_CAPABLE
	.comm	_ADVERTISED_100baseT_Half,8,3   ## @ADVERTISED_100baseT_Half
	.comm	_LINK_STATUS_LINK_PARTNER_100TXFD_CAPABLE,8,3 ## @LINK_STATUS_LINK_PARTNER_100TXFD_CAPABLE
	.comm	_ADVERTISED_100baseT_Full,8,3   ## @ADVERTISED_100baseT_Full
	.comm	_LINK_STATUS_LINK_PARTNER_1000THD_CAPABLE,8,3 ## @LINK_STATUS_LINK_PARTNER_1000THD_CAPABLE
	.comm	_ADVERTISED_1000baseT_Half,8,3  ## @ADVERTISED_1000baseT_Half
	.comm	_LINK_STATUS_LINK_PARTNER_1000TFD_CAPABLE,8,3 ## @LINK_STATUS_LINK_PARTNER_1000TFD_CAPABLE
	.comm	_ETH_PHY_KR,8,3                 ## @ETH_PHY_KR
	.comm	_ADVERTISED_1000baseKX_Full,8,3 ## @ADVERTISED_1000baseKX_Full
	.comm	_ADVERTISED_1000baseT_Full,8,3  ## @ADVERTISED_1000baseT_Full
	.comm	_LINK_STATUS_LINK_PARTNER_2500XFD_CAPABLE,8,3 ## @LINK_STATUS_LINK_PARTNER_2500XFD_CAPABLE
	.comm	_ADVERTISED_2500baseX_Full,8,3  ## @ADVERTISED_2500baseX_Full
	.comm	_LINK_STATUS_LINK_PARTNER_10GXFD_CAPABLE,8,3 ## @LINK_STATUS_LINK_PARTNER_10GXFD_CAPABLE
	.comm	_ADVERTISED_10000baseKR_Full,8,3 ## @ADVERTISED_10000baseKR_Full
	.comm	_LINK_STATUS_LINK_PARTNER_20GXFD_CAPABLE,8,3 ## @LINK_STATUS_LINK_PARTNER_20GXFD_CAPABLE
	.comm	_ADVERTISED_20000baseKR2_Full,8,3 ## @ADVERTISED_20000baseKR2_Full
	.comm	_BNX2X_MSG_ETHTOOL,4,2          ## @BNX2X_MSG_ETHTOOL
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"ethtool_cmd: cmd %d\n  supported 0x%x  advertising 0x%x  speed %u\n  duplex %d  port %d  phy_address %d\n  autoneg %d\n"

	.no_dead_strip	_bnx2x_get_link_ksettings
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function bnx2x_get_link_ksettings
_bnx2x_get_link_ksettings:              ; @bnx2x_get_link_ksettings
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #80
	.cfi_def_cfa_offset 80
	stp	x24, x23, [sp, #16]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #32]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #64]             ; 16-byte Folded Spill
	add	x29, sp, #64
	.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
	mov	x19, x1
	bl	_netdev_priv
	mov	x22, x0
	bl	_bnx2x_get_link_cfg_idx
	mov	x20, x0
	ldr	w1, [x19, #24]
	add	x0, sp, #8
	bl	_ethtool_convert_link_mode_to_legacy_u32
	sxtw	x24, w20
	sbfiz	x8, x20, #3, #32
	ldp	x9, x10, [x22, #64]
	ldr	x11, [x9, x8]
	eor	x12, x24, #0x1
	ldr	x9, [x9, x12, lsl #3]
Lloh0:
	adrp	x12, _SUPPORTED_TP@GOTPAGE
Lloh1:
	ldr	x12, [x12, _SUPPORTED_TP@GOTPAGEOFF]
Lloh2:
	ldr	x12, [x12]
Lloh3:
	adrp	x13, _SUPPORTED_FIBRE@GOTPAGE
Lloh4:
	ldr	x13, [x13, _SUPPORTED_FIBRE@GOTPAGEOFF]
Lloh5:
	ldr	x13, [x13]
	orr	x12, x13, x12
	and	x9, x12, x9
	orr	x21, x9, x11
	ldr	x20, [x10, x8]
	ldr	x23, [x22, #48]
	mov	x0, x22
	bl	_bnx2x_get_cur_phy_idx
	ldr	x23, [x23, x0, lsl #3]
Lloh6:
	adrp	x8, _ETH_PHY_SFP_1G_FIBER@GOTPAGE
Lloh7:
	ldr	x8, [x8, _ETH_PHY_SFP_1G_FIBER@GOTPAGEOFF]
Lloh8:
	ldr	x8, [x8]
	cmp	x23, x8
	b.ne	LBB0_2
; %bb.1:
Lloh9:
	adrp	x8, _SUPPORTED_10000baseT_Full@GOTPAGE
Lloh10:
	ldr	x8, [x8, _SUPPORTED_10000baseT_Full@GOTPAGEOFF]
Lloh11:
	ldr	x8, [x8]
	bic	x21, x21, x8
Lloh12:
	adrp	x8, _ADVERTISED_10000baseT_Full@GOTPAGE
Lloh13:
	ldr	x8, [x8, _ADVERTISED_10000baseT_Full@GOTPAGEOFF]
Lloh14:
	ldr	x8, [x8]
	bic	x20, x20, x8
LBB0_2:
	ldr	x8, [x22]
Lloh15:
	adrp	x9, _BNX2X_STATE_OPEN@GOTPAGE
Lloh16:
	ldr	x9, [x9, _BNX2X_STATE_OPEN@GOTPAGEOFF]
Lloh17:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_5
; %bb.3:
	ldr	x8, [x22, #32]
	cbz	x8, LBB0_5
; %bb.4:
	ldr	w8, [x22, #8]
Lloh18:
	adrp	x9, _MF_FUNC_DIS@GOTPAGE
Lloh19:
	ldr	x9, [x9, _MF_FUNC_DIS@GOTPAGEOFF]
Lloh20:
	ldr	w9, [x9]
	tst	w9, w8
	b.eq	LBB0_36
LBB0_5:
Lloh21:
	adrp	x8, _DUPLEX_UNKNOWN@GOTPAGE
Lloh22:
	ldr	x8, [x8, _DUPLEX_UNKNOWN@GOTPAGEOFF]
Lloh23:
	ldr	w8, [x8]
	str	w8, [x19, #12]
Lloh24:
	adrp	x8, _SPEED_UNKNOWN@GOTPAGE
Lloh25:
	ldr	x8, [x8, _SPEED_UNKNOWN@GOTPAGEOFF]
Lloh26:
	ldr	w0, [x8]
LBB0_6:
	str	w0, [x19, #16]
	mov	x0, x22
	bl	_bnx2x_get_port_type
	ldr	w8, [x22, #56]
	stp	w8, w0, [x19, #4]
	ldr	x8, [x22, #40]
	ldr	x8, [x8, x24, lsl #3]
Lloh27:
	adrp	x9, _SPEED_AUTO_NEG@GOTPAGE
Lloh28:
	ldr	x9, [x9, _SPEED_AUTO_NEG@GOTPAGEOFF]
Lloh29:
	adrp	x10, _AUTONEG_ENABLE@GOTPAGE
Lloh30:
	ldr	x10, [x10, _AUTONEG_ENABLE@GOTPAGEOFF]
Lloh31:
	ldr	x9, [x9]
Lloh32:
	adrp	x11, _AUTONEG_DISABLE@GOTPAGE
Lloh33:
	ldr	x11, [x11, _AUTONEG_DISABLE@GOTPAGEOFF]
	cmp	x8, x9
	csel	x8, x10, x11, eq
	ldr	w8, [x8]
	str	w8, [x19]
	ldrsw	x8, [x22, #16]
Lloh34:
	adrp	x9, _LINK_STATUS_AUTO_NEGOTIATE_COMPLETE@GOTPAGE
Lloh35:
	ldr	x9, [x9, _LINK_STATUS_AUTO_NEGOTIATE_COMPLETE@GOTPAGEOFF]
Lloh36:
	ldr	w9, [x9]
	tst	w9, w8
	b.eq	LBB0_35
; %bb.7:
Lloh37:
	adrp	x9, _ADVERTISED_Autoneg@GOTPAGE
Lloh38:
	ldr	x9, [x9, _ADVERTISED_Autoneg@GOTPAGEOFF]
Lloh39:
	ldr	x9, [x9]
	ldr	x10, [sp, #8]
	orr	x9, x10, x9
	str	x9, [sp, #8]
Lloh40:
	adrp	x10, _LINK_STATUS_LINK_PARTNER_SYMMETRIC_PAUSE@GOTPAGE
Lloh41:
	ldr	x10, [x10, _LINK_STATUS_LINK_PARTNER_SYMMETRIC_PAUSE@GOTPAGEOFF]
Lloh42:
	ldr	x10, [x10]
	tst	x10, x8
	b.eq	LBB0_9
; %bb.8:
Lloh43:
	adrp	x10, _ADVERTISED_Pause@GOTPAGE
Lloh44:
	ldr	x10, [x10, _ADVERTISED_Pause@GOTPAGEOFF]
Lloh45:
	ldr	x10, [x10]
	orr	x9, x10, x9
	str	x9, [sp, #8]
LBB0_9:
Lloh46:
	adrp	x10, _LINK_STATUS_LINK_PARTNER_ASYMMETRIC_PAUSE@GOTPAGE
Lloh47:
	ldr	x10, [x10, _LINK_STATUS_LINK_PARTNER_ASYMMETRIC_PAUSE@GOTPAGEOFF]
Lloh48:
	ldr	x10, [x10]
	tst	x10, x8
	b.eq	LBB0_11
; %bb.10:
Lloh49:
	adrp	x10, _ADVERTISED_Asym_Pause@GOTPAGE
Lloh50:
	ldr	x10, [x10, _ADVERTISED_Asym_Pause@GOTPAGEOFF]
Lloh51:
	ldr	x10, [x10]
	orr	x9, x9, x10
	str	x9, [sp, #8]
LBB0_11:
Lloh52:
	adrp	x10, _LINK_STATUS_LINK_PARTNER_10THD_CAPABLE@GOTPAGE
Lloh53:
	ldr	x10, [x10, _LINK_STATUS_LINK_PARTNER_10THD_CAPABLE@GOTPAGEOFF]
Lloh54:
	ldr	x10, [x10]
	tst	x10, x8
	b.eq	LBB0_13
; %bb.12:
Lloh55:
	adrp	x10, _ADVERTISED_10baseT_Half@GOTPAGE
Lloh56:
	ldr	x10, [x10, _ADVERTISED_10baseT_Half@GOTPAGEOFF]
Lloh57:
	ldr	x10, [x10]
	orr	x9, x9, x10
	str	x9, [sp, #8]
LBB0_13:
Lloh58:
	adrp	x10, _LINK_STATUS_LINK_PARTNER_10TFD_CAPABLE@GOTPAGE
Lloh59:
	ldr	x10, [x10, _LINK_STATUS_LINK_PARTNER_10TFD_CAPABLE@GOTPAGEOFF]
Lloh60:
	ldr	x10, [x10]
	tst	x10, x8
	b.eq	LBB0_15
; %bb.14:
Lloh61:
	adrp	x10, _ADVERTISED_10baseT_Full@GOTPAGE
Lloh62:
	ldr	x10, [x10, _ADVERTISED_10baseT_Full@GOTPAGEOFF]
Lloh63:
	ldr	x10, [x10]
	orr	x9, x9, x10
	str	x9, [sp, #8]
LBB0_15:
Lloh64:
	adrp	x10, _LINK_STATUS_LINK_PARTNER_100TXHD_CAPABLE@GOTPAGE
Lloh65:
	ldr	x10, [x10, _LINK_STATUS_LINK_PARTNER_100TXHD_CAPABLE@GOTPAGEOFF]
Lloh66:
	ldr	x10, [x10]
	tst	x10, x8
	b.eq	LBB0_17
; %bb.16:
Lloh67:
	adrp	x10, _ADVERTISED_100baseT_Half@GOTPAGE
Lloh68:
	ldr	x10, [x10, _ADVERTISED_100baseT_Half@GOTPAGEOFF]
Lloh69:
	ldr	x10, [x10]
	orr	x9, x9, x10
	str	x9, [sp, #8]
LBB0_17:
Lloh70:
	adrp	x10, _LINK_STATUS_LINK_PARTNER_100TXFD_CAPABLE@GOTPAGE
Lloh71:
	ldr	x10, [x10, _LINK_STATUS_LINK_PARTNER_100TXFD_CAPABLE@GOTPAGEOFF]
Lloh72:
	ldr	x10, [x10]
	tst	x10, x8
	b.eq	LBB0_19
; %bb.18:
Lloh73:
	adrp	x10, _ADVERTISED_100baseT_Full@GOTPAGE
Lloh74:
	ldr	x10, [x10, _ADVERTISED_100baseT_Full@GOTPAGEOFF]
Lloh75:
	ldr	x10, [x10]
	orr	x9, x9, x10
	str	x9, [sp, #8]
LBB0_19:
Lloh76:
	adrp	x10, _LINK_STATUS_LINK_PARTNER_1000THD_CAPABLE@GOTPAGE
Lloh77:
	ldr	x10, [x10, _LINK_STATUS_LINK_PARTNER_1000THD_CAPABLE@GOTPAGEOFF]
Lloh78:
	ldr	x10, [x10]
	tst	x10, x8
	b.eq	LBB0_21
; %bb.20:
Lloh79:
	adrp	x10, _ADVERTISED_1000baseT_Half@GOTPAGE
Lloh80:
	ldr	x10, [x10, _ADVERTISED_1000baseT_Half@GOTPAGEOFF]
Lloh81:
	ldr	x10, [x10]
	orr	x9, x9, x10
	str	x9, [sp, #8]
LBB0_21:
Lloh82:
	adrp	x10, _LINK_STATUS_LINK_PARTNER_1000TFD_CAPABLE@GOTPAGE
Lloh83:
	ldr	x10, [x10, _LINK_STATUS_LINK_PARTNER_1000TFD_CAPABLE@GOTPAGEOFF]
Lloh84:
	ldr	x11, [x10]
Lloh85:
	adrp	x10, _ETH_PHY_KR@GOTPAGE
Lloh86:
	ldr	x10, [x10, _ETH_PHY_KR@GOTPAGEOFF]
	tst	x11, x8
	b.eq	LBB0_26
; %bb.22:
	ldr	x11, [x10]
	cmp	x23, x11
	b.ne	LBB0_24
; %bb.23:
Lloh87:
	adrp	x11, _ADVERTISED_1000baseKX_Full@GOTPAGE
Lloh88:
	ldr	x11, [x11, _ADVERTISED_1000baseKX_Full@GOTPAGEOFF]
	b	LBB0_25
LBB0_24:
Lloh89:
	adrp	x11, _ADVERTISED_1000baseT_Full@GOTPAGE
Lloh90:
	ldr	x11, [x11, _ADVERTISED_1000baseT_Full@GOTPAGEOFF]
LBB0_25:
	ldr	x11, [x11]
	orr	x9, x9, x11
	str	x9, [sp, #8]
LBB0_26:
Lloh91:
	adrp	x11, _LINK_STATUS_LINK_PARTNER_2500XFD_CAPABLE@GOTPAGE
Lloh92:
	ldr	x11, [x11, _LINK_STATUS_LINK_PARTNER_2500XFD_CAPABLE@GOTPAGEOFF]
Lloh93:
	ldr	x11, [x11]
	tst	x11, x8
	b.eq	LBB0_28
; %bb.27:
Lloh94:
	adrp	x11, _ADVERTISED_2500baseX_Full@GOTPAGE
Lloh95:
	ldr	x11, [x11, _ADVERTISED_2500baseX_Full@GOTPAGEOFF]
Lloh96:
	ldr	x11, [x11]
	orr	x9, x9, x11
	str	x9, [sp, #8]
LBB0_28:
Lloh97:
	adrp	x11, _LINK_STATUS_LINK_PARTNER_10GXFD_CAPABLE@GOTPAGE
Lloh98:
	ldr	x11, [x11, _LINK_STATUS_LINK_PARTNER_10GXFD_CAPABLE@GOTPAGEOFF]
Lloh99:
	ldr	x11, [x11]
	tst	x11, x8
	b.eq	LBB0_33
; %bb.29:
	ldr	x10, [x10]
	cmp	x23, x10
	b.ne	LBB0_31
; %bb.30:
Lloh100:
	adrp	x10, _ADVERTISED_10000baseKR_Full@GOTPAGE
Lloh101:
	ldr	x10, [x10, _ADVERTISED_10000baseKR_Full@GOTPAGEOFF]
	b	LBB0_32
LBB0_31:
Lloh102:
	adrp	x10, _ADVERTISED_10000baseT_Full@GOTPAGE
Lloh103:
	ldr	x10, [x10, _ADVERTISED_10000baseT_Full@GOTPAGEOFF]
LBB0_32:
	ldr	x10, [x10]
	orr	x9, x9, x10
	str	x9, [sp, #8]
LBB0_33:
Lloh104:
	adrp	x10, _LINK_STATUS_LINK_PARTNER_20GXFD_CAPABLE@GOTPAGE
Lloh105:
	ldr	x10, [x10, _LINK_STATUS_LINK_PARTNER_20GXFD_CAPABLE@GOTPAGEOFF]
Lloh106:
	ldr	x10, [x10]
	tst	x10, x8
	b.eq	LBB0_35
; %bb.34:
Lloh107:
	adrp	x8, _ADVERTISED_20000baseKR2_Full@GOTPAGE
Lloh108:
	ldr	x8, [x8, _ADVERTISED_20000baseKR2_Full@GOTPAGEOFF]
Lloh109:
	ldr	x8, [x8]
	orr	x8, x9, x8
	str	x8, [sp, #8]
LBB0_35:
	ldr	w0, [x19, #32]
	mov	x1, x21
	bl	_ethtool_convert_legacy_u32_to_link_mode
	ldr	w0, [x19, #28]
	mov	x1, x20
	bl	_ethtool_convert_legacy_u32_to_link_mode
	ldr	w0, [x19, #24]
	ldr	x1, [sp, #8]
	bl	_ethtool_convert_legacy_u32_to_link_mode
Lloh110:
	adrp	x8, _BNX2X_MSG_ETHTOOL@GOTPAGE
Lloh111:
	ldr	x8, [x8, _BNX2X_MSG_ETHTOOL@GOTPAGEOFF]
Lloh112:
	ldr	w0, [x8]
	ldp	w5, w2, [x19, #16]
	ldp	w7, w6, [x19, #8]
	ldp	w9, w8, [x19]
	stp	w8, w9, [sp]
Lloh113:
	adrp	x1, l_.str@PAGE
Lloh114:
	add	x1, x1, l_.str@PAGEOFF
	mov	x3, x21
	mov	x4, x20
	bl	_DP
	mov	w0, #0
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #32]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #16]             ; 16-byte Folded Reload
	add	sp, sp, #80
	ret
LBB0_36:
	ldr	w8, [x22, #24]
	str	w8, [x19, #12]
	mov	x0, x22
	bl	_IS_MF
	cbz	x0, LBB0_38
; %bb.37:
	mov	x0, x22
	bl	_BP_NOMCP
	cbz	w0, LBB0_39
LBB0_38:
	ldr	w0, [x22, #20]
	b	LBB0_6
LBB0_39:
	mov	x0, x22
	bl	_bnx2x_get_mf_speed
	b	LBB0_6
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh34, Lloh35, Lloh36
	.loh AdrpLdrGot	Lloh32, Lloh33
	.loh AdrpLdrGot	Lloh29, Lloh30
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh31
	.loh AdrpLdrGotLdr	Lloh40, Lloh41, Lloh42
	.loh AdrpLdrGotLdr	Lloh37, Lloh38, Lloh39
	.loh AdrpLdrGotLdr	Lloh43, Lloh44, Lloh45
	.loh AdrpLdrGotLdr	Lloh46, Lloh47, Lloh48
	.loh AdrpLdrGotLdr	Lloh49, Lloh50, Lloh51
	.loh AdrpLdrGotLdr	Lloh52, Lloh53, Lloh54
	.loh AdrpLdrGotLdr	Lloh55, Lloh56, Lloh57
	.loh AdrpLdrGotLdr	Lloh58, Lloh59, Lloh60
	.loh AdrpLdrGotLdr	Lloh61, Lloh62, Lloh63
	.loh AdrpLdrGotLdr	Lloh64, Lloh65, Lloh66
	.loh AdrpLdrGotLdr	Lloh67, Lloh68, Lloh69
	.loh AdrpLdrGotLdr	Lloh70, Lloh71, Lloh72
	.loh AdrpLdrGotLdr	Lloh73, Lloh74, Lloh75
	.loh AdrpLdrGotLdr	Lloh76, Lloh77, Lloh78
	.loh AdrpLdrGotLdr	Lloh79, Lloh80, Lloh81
	.loh AdrpLdrGot	Lloh85, Lloh86
	.loh AdrpLdrGotLdr	Lloh82, Lloh83, Lloh84
	.loh AdrpLdrGot	Lloh87, Lloh88
	.loh AdrpLdrGot	Lloh89, Lloh90
	.loh AdrpLdrGotLdr	Lloh91, Lloh92, Lloh93
	.loh AdrpLdrGotLdr	Lloh94, Lloh95, Lloh96
	.loh AdrpLdrGotLdr	Lloh97, Lloh98, Lloh99
	.loh AdrpLdrGot	Lloh100, Lloh101
	.loh AdrpLdrGot	Lloh102, Lloh103
	.loh AdrpLdrGotLdr	Lloh104, Lloh105, Lloh106
	.loh AdrpLdrGotLdr	Lloh107, Lloh108, Lloh109
	.loh AdrpAdd	Lloh113, Lloh114
	.loh AdrpLdrGotLdr	Lloh110, Lloh111, Lloh112
	.cfi_endproc
                                        ; -- End function
	.comm	_SUPPORTED_TP,8,3               ; @SUPPORTED_TP
	.comm	_SUPPORTED_FIBRE,8,3            ; @SUPPORTED_FIBRE
	.comm	_ETH_PHY_SFP_1G_FIBER,8,3       ; @ETH_PHY_SFP_1G_FIBER
	.comm	_SUPPORTED_10000baseT_Full,8,3  ; @SUPPORTED_10000baseT_Full
	.comm	_ADVERTISED_10000baseT_Full,8,3 ; @ADVERTISED_10000baseT_Full
	.comm	_BNX2X_STATE_OPEN,8,3           ; @BNX2X_STATE_OPEN
	.comm	_MF_FUNC_DIS,4,2                ; @MF_FUNC_DIS
	.comm	_DUPLEX_UNKNOWN,4,2             ; @DUPLEX_UNKNOWN
	.comm	_SPEED_UNKNOWN,4,2              ; @SPEED_UNKNOWN
	.comm	_SPEED_AUTO_NEG,8,3             ; @SPEED_AUTO_NEG
	.comm	_AUTONEG_ENABLE,4,2             ; @AUTONEG_ENABLE
	.comm	_AUTONEG_DISABLE,4,2            ; @AUTONEG_DISABLE
	.comm	_LINK_STATUS_AUTO_NEGOTIATE_COMPLETE,4,2 ; @LINK_STATUS_AUTO_NEGOTIATE_COMPLETE
	.comm	_ADVERTISED_Autoneg,8,3         ; @ADVERTISED_Autoneg
	.comm	_LINK_STATUS_LINK_PARTNER_SYMMETRIC_PAUSE,8,3 ; @LINK_STATUS_LINK_PARTNER_SYMMETRIC_PAUSE
	.comm	_ADVERTISED_Pause,8,3           ; @ADVERTISED_Pause
	.comm	_LINK_STATUS_LINK_PARTNER_ASYMMETRIC_PAUSE,8,3 ; @LINK_STATUS_LINK_PARTNER_ASYMMETRIC_PAUSE
	.comm	_ADVERTISED_Asym_Pause,8,3      ; @ADVERTISED_Asym_Pause
	.comm	_LINK_STATUS_LINK_PARTNER_10THD_CAPABLE,8,3 ; @LINK_STATUS_LINK_PARTNER_10THD_CAPABLE
	.comm	_ADVERTISED_10baseT_Half,8,3    ; @ADVERTISED_10baseT_Half
	.comm	_LINK_STATUS_LINK_PARTNER_10TFD_CAPABLE,8,3 ; @LINK_STATUS_LINK_PARTNER_10TFD_CAPABLE
	.comm	_ADVERTISED_10baseT_Full,8,3    ; @ADVERTISED_10baseT_Full
	.comm	_LINK_STATUS_LINK_PARTNER_100TXHD_CAPABLE,8,3 ; @LINK_STATUS_LINK_PARTNER_100TXHD_CAPABLE
	.comm	_ADVERTISED_100baseT_Half,8,3   ; @ADVERTISED_100baseT_Half
	.comm	_LINK_STATUS_LINK_PARTNER_100TXFD_CAPABLE,8,3 ; @LINK_STATUS_LINK_PARTNER_100TXFD_CAPABLE
	.comm	_ADVERTISED_100baseT_Full,8,3   ; @ADVERTISED_100baseT_Full
	.comm	_LINK_STATUS_LINK_PARTNER_1000THD_CAPABLE,8,3 ; @LINK_STATUS_LINK_PARTNER_1000THD_CAPABLE
	.comm	_ADVERTISED_1000baseT_Half,8,3  ; @ADVERTISED_1000baseT_Half
	.comm	_LINK_STATUS_LINK_PARTNER_1000TFD_CAPABLE,8,3 ; @LINK_STATUS_LINK_PARTNER_1000TFD_CAPABLE
	.comm	_ETH_PHY_KR,8,3                 ; @ETH_PHY_KR
	.comm	_ADVERTISED_1000baseKX_Full,8,3 ; @ADVERTISED_1000baseKX_Full
	.comm	_ADVERTISED_1000baseT_Full,8,3  ; @ADVERTISED_1000baseT_Full
	.comm	_LINK_STATUS_LINK_PARTNER_2500XFD_CAPABLE,8,3 ; @LINK_STATUS_LINK_PARTNER_2500XFD_CAPABLE
	.comm	_ADVERTISED_2500baseX_Full,8,3  ; @ADVERTISED_2500baseX_Full
	.comm	_LINK_STATUS_LINK_PARTNER_10GXFD_CAPABLE,8,3 ; @LINK_STATUS_LINK_PARTNER_10GXFD_CAPABLE
	.comm	_ADVERTISED_10000baseKR_Full,8,3 ; @ADVERTISED_10000baseKR_Full
	.comm	_LINK_STATUS_LINK_PARTNER_20GXFD_CAPABLE,8,3 ; @LINK_STATUS_LINK_PARTNER_20GXFD_CAPABLE
	.comm	_ADVERTISED_20000baseKR2_Full,8,3 ; @ADVERTISED_20000baseKR2_Full
	.comm	_BNX2X_MSG_ETHTOOL,4,2          ; @BNX2X_MSG_ETHTOOL
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"ethtool_cmd: cmd %d\n  supported 0x%x  advertising 0x%x  speed %u\n  duplex %d  port %d  phy_address %d\n  autoneg %d\n"

	.no_dead_strip	_bnx2x_get_link_ksettings
.subsections_via_symbols
