	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function efx_siena_sriov_reset_tx_filter
_efx_siena_sriov_reset_tx_filter:       ## @efx_siena_sriov_reset_tx_filter
	.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	%r12
	pushq	%rbx
	subq	$16, %rsp
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, %rbx
	movq	32(%rdi), %r14
	movl	(%rdi), %edx
	cmpl	$-1, %edx
	je	LBB0_2
## %bb.1:
	movq	_EFX_FILTER_PRI_REQUIRED@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r14, %rdi
	callq	_efx_filter_remove_id_safe
	movq	_hw@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	(%r14), %edx
	movl	(%rbx), %r9d
	movl	16(%rbx), %r8d
	leaq	L_.str(%rip), %rcx
	movq	%r14, %rdi
	callq	_netif_dbg
	movl	$-1, (%rbx)
LBB0_2:
	movl	20(%rbx), %edi
	callq	_is_zero_ether_addr
	testq	%rax, %rax
	jne	LBB0_11
## %bb.3:
	movq	8(%rbx), %rax
	movq	_VF_TX_FILTER_AUTO@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_6
## %bb.4:
	movq	_vf_max_tx_channels@GOTPCREL(%rip), %rax
	cmpl	$2, (%rax)
	jg	LBB0_6
## %bb.5:
	movq	_VF_TX_FILTER_ON@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 8(%rbx)
LBB0_6:
	movl	24(%rbx), %edi
	callq	_ntohs
	movl	%eax, %r12d
	movq	_VLAN_VID_MASK@GOTPCREL(%rip), %rax
	andl	(%rax), %r12d
	movq	%rbx, %rdi
	xorl	%esi, %esi
	callq	_abs_index
	leaq	-40(%rbp), %r15
	movq	%r15, %rdi
	movl	%eax, %esi
	callq	_efx_filter_init_tx
	testl	%r12d, %r12d
	jne	LBB0_8
## %bb.7:
	movq	_EFX_FILTER_VID_UNSPEC@GOTPCREL(%rip), %rax
	movl	(%rax), %r12d
LBB0_8:
	movl	20(%rbx), %edx
	movq	%r15, %rdi
	movl	%r12d, %esi
	callq	_efx_filter_set_eth_local
	movl	%eax, %edi
	callq	_BUG_ON
	movq	%r14, %rdi
	movq	%r15, %rsi
	movl	$1, %edx
	callq	_efx_filter_insert_filter
	movl	%eax, %r15d
	movq	_hw@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	(%r14), %edx
	movl	16(%rbx), %r8d
	testl	%r15d, %r15d
	js	LBB0_9
## %bb.10:
	leaq	L_.str.2(%rip), %rcx
	movq	%r14, %rdi
	movl	%r15d, %r9d
	callq	_netif_dbg
	movl	%r15d, (%rbx)
	jmp	LBB0_11
LBB0_9:
	leaq	L_.str.1(%rip), %rcx
	movq	%r14, %rdi
	callq	_netif_warn
LBB0_11:
	addq	$16, %rsp
	popq	%rbx
	popq	%r12
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_EFX_FILTER_PRI_REQUIRED,4,2    ## @EFX_FILTER_PRI_REQUIRED
	.comm	_hw,4,2                         ## @hw
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"Removed vf %s tx filter %d\n"

	.comm	_VF_TX_FILTER_AUTO,8,3          ## @VF_TX_FILTER_AUTO
	.comm	_vf_max_tx_channels,4,2         ## @vf_max_tx_channels
	.comm	_VF_TX_FILTER_ON,8,3            ## @VF_TX_FILTER_ON
	.comm	_VLAN_VID_MASK,4,2              ## @VLAN_VID_MASK
	.comm	_EFX_FILTER_VID_UNSPEC,4,2      ## @EFX_FILTER_VID_UNSPEC
L_.str.1:                               ## @.str.1
	.asciz	"Unable to migrate tx filter for vf %s\n"

L_.str.2:                               ## @.str.2
	.asciz	"Inserted vf %s tx filter %d\n"

	.no_dead_strip	_efx_siena_sriov_reset_tx_filter
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function efx_siena_sriov_reset_tx_filter
_efx_siena_sriov_reset_tx_filter:       ; @efx_siena_sriov_reset_tx_filter
	.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, x0
	ldr	x20, [x0, #32]
	ldr	w2, [x0]
Lloh0:
	adrp	x22, _hw@GOTPAGE
Lloh1:
	ldr	x22, [x22, _hw@GOTPAGEOFF]
	cmn	w2, #1
	b.eq	LBB0_2
; %bb.1:
Lloh2:
	adrp	x8, _EFX_FILTER_PRI_REQUIRED@GOTPAGE
Lloh3:
	ldr	x8, [x8, _EFX_FILTER_PRI_REQUIRED@GOTPAGEOFF]
Lloh4:
	ldr	w1, [x8]
	mov	x0, x20
	bl	_efx_filter_remove_id_safe
	ldr	w1, [x22]
	ldr	w2, [x20]
	ldr	w4, [x19, #16]
	ldr	w5, [x19]
Lloh5:
	adrp	x3, l_.str@PAGE
Lloh6:
	add	x3, x3, l_.str@PAGEOFF
	mov	x0, x20
	bl	_netif_dbg
	mov	w8, #-1
	str	w8, [x19]
LBB0_2:
	ldr	w0, [x19, #20]
	bl	_is_zero_ether_addr
	cbnz	x0, LBB0_8
; %bb.3:
	ldr	x8, [x19, #8]
Lloh7:
	adrp	x9, _VF_TX_FILTER_AUTO@GOTPAGE
Lloh8:
	ldr	x9, [x9, _VF_TX_FILTER_AUTO@GOTPAGEOFF]
Lloh9:
	ldr	x9, [x9]
Lloh10:
	adrp	x10, _vf_max_tx_channels@GOTPAGE
Lloh11:
	ldr	x10, [x10, _vf_max_tx_channels@GOTPAGEOFF]
Lloh12:
	ldr	w10, [x10]
	cmp	x8, x9
	ccmp	w10, #2, #0, eq
	b.gt	LBB0_5
; %bb.4:
Lloh13:
	adrp	x8, _VF_TX_FILTER_ON@GOTPAGE
Lloh14:
	ldr	x8, [x8, _VF_TX_FILTER_ON@GOTPAGEOFF]
Lloh15:
	ldr	x8, [x8]
	str	x8, [x19, #8]
LBB0_5:
	ldr	w0, [x19, #24]
	bl	_ntohs
	mov	x21, x0
Lloh16:
	adrp	x8, _VLAN_VID_MASK@GOTPAGE
Lloh17:
	ldr	x8, [x8, _VLAN_VID_MASK@GOTPAGEOFF]
Lloh18:
	ldr	w23, [x8]
	mov	x0, x19
	mov	w1, #0
	bl	_abs_index
	mov	x1, x0
	add	x0, sp, #8
	bl	_efx_filter_init_tx
Lloh19:
	adrp	x8, _EFX_FILTER_VID_UNSPEC@GOTPAGE
Lloh20:
	ldr	x8, [x8, _EFX_FILTER_VID_UNSPEC@GOTPAGEOFF]
Lloh21:
	ldr	w8, [x8]
	ands	w9, w23, w21
	csel	w1, w8, w9, eq
	ldr	w2, [x19, #20]
	add	x0, sp, #8
	bl	_efx_filter_set_eth_local
	bl	_BUG_ON
	add	x1, sp, #8
	mov	x0, x20
	mov	w2, #1
	bl	_efx_filter_insert_filter
	ldr	w1, [x22]
	ldr	w2, [x20]
	ldr	w4, [x19, #16]
	tbnz	w0, #31, LBB0_7
; %bb.6:
	mov	x21, x0
Lloh22:
	adrp	x3, l_.str.2@PAGE
Lloh23:
	add	x3, x3, l_.str.2@PAGEOFF
	mov	x0, x20
	mov	x5, x21
	bl	_netif_dbg
	str	w21, [x19]
	b	LBB0_8
LBB0_7:
Lloh24:
	adrp	x3, l_.str.1@PAGE
Lloh25:
	add	x3, x3, l_.str.1@PAGEOFF
	mov	x0, x20
	bl	_netif_warn
LBB0_8:
	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
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpAdd	Lloh5, Lloh6
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh10, Lloh11, Lloh12
	.loh AdrpLdrGotLdr	Lloh7, Lloh8, Lloh9
	.loh AdrpLdrGotLdr	Lloh13, Lloh14, Lloh15
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh16, Lloh17, Lloh18
	.loh AdrpAdd	Lloh22, Lloh23
	.loh AdrpAdd	Lloh24, Lloh25
	.cfi_endproc
                                        ; -- End function
	.comm	_EFX_FILTER_PRI_REQUIRED,4,2    ; @EFX_FILTER_PRI_REQUIRED
	.comm	_hw,4,2                         ; @hw
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"Removed vf %s tx filter %d\n"

	.comm	_VF_TX_FILTER_AUTO,8,3          ; @VF_TX_FILTER_AUTO
	.comm	_vf_max_tx_channels,4,2         ; @vf_max_tx_channels
	.comm	_VF_TX_FILTER_ON,8,3            ; @VF_TX_FILTER_ON
	.comm	_VLAN_VID_MASK,4,2              ; @VLAN_VID_MASK
	.comm	_EFX_FILTER_VID_UNSPEC,4,2      ; @EFX_FILTER_VID_UNSPEC
l_.str.1:                               ; @.str.1
	.asciz	"Unable to migrate tx filter for vf %s\n"

l_.str.2:                               ; @.str.2
	.asciz	"Inserted vf %s tx filter %d\n"

	.no_dead_strip	_efx_siena_sriov_reset_tx_filter
.subsections_via_symbols
