	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function dnet_init_hw
_dnet_init_hw:                          ## @dnet_init_hw
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r14
	pushq	%rbx
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	movq	%rdi, %rbx
	callq	_dnet_reset_hw
	movq	%rbx, %rdi
	callq	___dnet_set_hwaddr
	movq	_DNET_INTERNAL_RXTX_CONTROL_REG@GOTPCREL(%rip), %r14
	movl	(%r14), %esi
	movq	%rbx, %rdi
	callq	_dnet_readw_mac
	movq	(%rbx), %rcx
	movl	(%rcx), %esi
	movq	_IFF_PROMISC@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	andl	%esi, %edx
	je	LBB0_2
## %bb.1:
	movq	_DNET_INTERNAL_RXTX_CONTROL_ENPROMISC@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
LBB0_2:
	movq	_IFF_BROADCAST@GOTPCREL(%rip), %rdi
	xorl	%ecx, %ecx
	andl	(%rdi), %esi
	jne	LBB0_4
## %bb.3:
	movq	_DNET_INTERNAL_RXTX_CONTROL_RXMULTICAST@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
LBB0_4:
	movq	_DNET_INTERNAL_RXTX_CONTROL_RXPAUSE@GOTPCREL(%rip), %rsi
	movq	_DNET_INTERNAL_RXTX_CONTROL_RXBROADCAST@GOTPCREL(%rip), %rdi
	movq	_DNET_INTERNAL_RXTX_CONTROL_DROPCONTROL@GOTPCREL(%rip), %r8
	orl	%eax, %edx
	orl	(%rsi), %edx
	orl	%ecx, %edx
	orl	(%rdi), %edx
	orl	(%r8), %edx
	movq	_DNET_INTERNAL_RXTX_CONTROL_DISCFXFCS@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	movl	(%r14), %esi
	movq	%rbx, %rdi
	callq	_dnet_writew_mac
	movq	_INTR_SRC@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rbx, %rdi
	callq	_dnet_readl
	movq	_DNET_INTR_ENB_GLOBAL_ENABLE@GOTPCREL(%rip), %rax
	movq	_DNET_INTR_ENB_RX_SUMMARY@GOTPCREL(%rip), %rcx
	movl	(%rcx), %esi
	orl	(%rax), %esi
	movq	_DNET_INTR_ENB_TX_SUMMARY@GOTPCREL(%rip), %rax
	orl	(%rax), %esi
	movq	_DNET_INTR_ENB_RX_FIFOERR@GOTPCREL(%rip), %rax
	orl	(%rax), %esi
	movq	_DNET_INTR_ENB_RX_ERROR@GOTPCREL(%rip), %rax
	orl	(%rax), %esi
	movq	_DNET_INTR_ENB_RX_FIFOFULL@GOTPCREL(%rip), %rax
	orl	(%rax), %esi
	movq	_DNET_INTR_ENB_TX_FIFOFULL@GOTPCREL(%rip), %rax
	orl	(%rax), %esi
	movq	_DNET_INTR_ENB_TX_DISCFRM@GOTPCREL(%rip), %rax
	orl	(%rax), %esi
	movq	_DNET_INTR_ENB_RX_PKTRDY@GOTPCREL(%rip), %rax
	orl	(%rax), %esi
	movq	_INTR_ENB@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%rbx, %rdi
	popq	%rbx
	popq	%r14
	popq	%rbp
	jmp	_dnet_writel                    ## TAILCALL
	.cfi_endproc
                                        ## -- End function
	.comm	_DNET_INTERNAL_RXTX_CONTROL_REG,4,2 ## @DNET_INTERNAL_RXTX_CONTROL_REG
	.comm	_IFF_PROMISC,4,2                ## @IFF_PROMISC
	.comm	_DNET_INTERNAL_RXTX_CONTROL_ENPROMISC,4,2 ## @DNET_INTERNAL_RXTX_CONTROL_ENPROMISC
	.comm	_IFF_BROADCAST,4,2              ## @IFF_BROADCAST
	.comm	_DNET_INTERNAL_RXTX_CONTROL_RXMULTICAST,4,2 ## @DNET_INTERNAL_RXTX_CONTROL_RXMULTICAST
	.comm	_DNET_INTERNAL_RXTX_CONTROL_RXPAUSE,4,2 ## @DNET_INTERNAL_RXTX_CONTROL_RXPAUSE
	.comm	_DNET_INTERNAL_RXTX_CONTROL_RXBROADCAST,4,2 ## @DNET_INTERNAL_RXTX_CONTROL_RXBROADCAST
	.comm	_DNET_INTERNAL_RXTX_CONTROL_DROPCONTROL,4,2 ## @DNET_INTERNAL_RXTX_CONTROL_DROPCONTROL
	.comm	_DNET_INTERNAL_RXTX_CONTROL_DISCFXFCS,4,2 ## @DNET_INTERNAL_RXTX_CONTROL_DISCFXFCS
	.comm	_INTR_SRC,4,2                   ## @INTR_SRC
	.comm	_DNET_INTR_ENB_GLOBAL_ENABLE,4,2 ## @DNET_INTR_ENB_GLOBAL_ENABLE
	.comm	_DNET_INTR_ENB_RX_SUMMARY,4,2   ## @DNET_INTR_ENB_RX_SUMMARY
	.comm	_DNET_INTR_ENB_TX_SUMMARY,4,2   ## @DNET_INTR_ENB_TX_SUMMARY
	.comm	_DNET_INTR_ENB_RX_FIFOERR,4,2   ## @DNET_INTR_ENB_RX_FIFOERR
	.comm	_DNET_INTR_ENB_RX_ERROR,4,2     ## @DNET_INTR_ENB_RX_ERROR
	.comm	_DNET_INTR_ENB_RX_FIFOFULL,4,2  ## @DNET_INTR_ENB_RX_FIFOFULL
	.comm	_DNET_INTR_ENB_TX_FIFOFULL,4,2  ## @DNET_INTR_ENB_TX_FIFOFULL
	.comm	_DNET_INTR_ENB_TX_DISCFRM,4,2   ## @DNET_INTR_ENB_TX_DISCFRM
	.comm	_DNET_INTR_ENB_RX_PKTRDY,4,2    ## @DNET_INTR_ENB_RX_PKTRDY
	.comm	_INTR_ENB,4,2                   ## @INTR_ENB
	.no_dead_strip	_dnet_init_hw
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function dnet_init_hw
_dnet_init_hw:                          ; @dnet_init_hw
	.cfi_startproc
; %bb.0:
	stp	x20, x19, [sp, #-32]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 32
	stp	x29, x30, [sp, #16]             ; 16-byte Folded Spill
	add	x29, sp, #16
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	mov	x19, x0
	bl	_dnet_reset_hw
	mov	x0, x19
	bl	___dnet_set_hwaddr
Lloh0:
	adrp	x20, _DNET_INTERNAL_RXTX_CONTROL_REG@GOTPAGE
Lloh1:
	ldr	x20, [x20, _DNET_INTERNAL_RXTX_CONTROL_REG@GOTPAGEOFF]
	ldr	w1, [x20]
	mov	x0, x19
	bl	_dnet_readw_mac
	ldr	x8, [x19]
	ldr	w8, [x8]
Lloh2:
	adrp	x9, _IFF_PROMISC@GOTPAGE
Lloh3:
	ldr	x9, [x9, _IFF_PROMISC@GOTPAGEOFF]
Lloh4:
	ldr	w9, [x9]
Lloh5:
	adrp	x10, _DNET_INTERNAL_RXTX_CONTROL_ENPROMISC@GOTPAGE
Lloh6:
	ldr	x10, [x10, _DNET_INTERNAL_RXTX_CONTROL_ENPROMISC@GOTPAGEOFF]
Lloh7:
	ldr	w10, [x10]
	tst	w9, w8
	csel	w9, wzr, w10, eq
Lloh8:
	adrp	x10, _IFF_BROADCAST@GOTPAGE
Lloh9:
	ldr	x10, [x10, _IFF_BROADCAST@GOTPAGEOFF]
Lloh10:
	ldr	w10, [x10]
Lloh11:
	adrp	x11, _DNET_INTERNAL_RXTX_CONTROL_RXMULTICAST@GOTPAGE
Lloh12:
	ldr	x11, [x11, _DNET_INTERNAL_RXTX_CONTROL_RXMULTICAST@GOTPAGEOFF]
Lloh13:
	ldr	w11, [x11]
	tst	w10, w8
Lloh14:
	adrp	x8, _DNET_INTERNAL_RXTX_CONTROL_RXPAUSE@GOTPAGE
Lloh15:
	ldr	x8, [x8, _DNET_INTERNAL_RXTX_CONTROL_RXPAUSE@GOTPAGEOFF]
	csel	w10, w11, wzr, eq
Lloh16:
	ldr	w8, [x8]
Lloh17:
	adrp	x11, _DNET_INTERNAL_RXTX_CONTROL_RXBROADCAST@GOTPAGE
Lloh18:
	ldr	x11, [x11, _DNET_INTERNAL_RXTX_CONTROL_RXBROADCAST@GOTPAGEOFF]
Lloh19:
	adrp	x12, _DNET_INTERNAL_RXTX_CONTROL_DROPCONTROL@GOTPAGE
Lloh20:
	ldr	x12, [x12, _DNET_INTERNAL_RXTX_CONTROL_DROPCONTROL@GOTPAGEOFF]
Lloh21:
	ldr	w11, [x11]
Lloh22:
	ldr	w12, [x12]
Lloh23:
	adrp	x13, _DNET_INTERNAL_RXTX_CONTROL_DISCFXFCS@GOTPAGE
Lloh24:
	ldr	x13, [x13, _DNET_INTERNAL_RXTX_CONTROL_DISCFXFCS@GOTPAGEOFF]
Lloh25:
	ldr	w13, [x13]
	orr	w9, w9, w0
	orr	w8, w9, w8
	orr	w8, w8, w10
	orr	w8, w8, w11
	orr	w8, w8, w12
	orr	w2, w8, w13
	ldr	w1, [x20]
	mov	x0, x19
	bl	_dnet_writew_mac
Lloh26:
	adrp	x8, _INTR_SRC@GOTPAGE
Lloh27:
	ldr	x8, [x8, _INTR_SRC@GOTPAGEOFF]
Lloh28:
	ldr	w1, [x8]
	mov	x0, x19
	bl	_dnet_readl
Lloh29:
	adrp	x8, _DNET_INTR_ENB_GLOBAL_ENABLE@GOTPAGE
Lloh30:
	ldr	x8, [x8, _DNET_INTR_ENB_GLOBAL_ENABLE@GOTPAGEOFF]
Lloh31:
	ldr	w8, [x8]
Lloh32:
	adrp	x9, _DNET_INTR_ENB_RX_SUMMARY@GOTPAGE
Lloh33:
	ldr	x9, [x9, _DNET_INTR_ENB_RX_SUMMARY@GOTPAGEOFF]
Lloh34:
	ldr	w9, [x9]
	orr	w8, w9, w8
Lloh35:
	adrp	x9, _DNET_INTR_ENB_TX_SUMMARY@GOTPAGE
Lloh36:
	ldr	x9, [x9, _DNET_INTR_ENB_TX_SUMMARY@GOTPAGEOFF]
Lloh37:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh38:
	adrp	x9, _DNET_INTR_ENB_RX_FIFOERR@GOTPAGE
Lloh39:
	ldr	x9, [x9, _DNET_INTR_ENB_RX_FIFOERR@GOTPAGEOFF]
Lloh40:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh41:
	adrp	x9, _DNET_INTR_ENB_RX_ERROR@GOTPAGE
Lloh42:
	ldr	x9, [x9, _DNET_INTR_ENB_RX_ERROR@GOTPAGEOFF]
Lloh43:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh44:
	adrp	x9, _DNET_INTR_ENB_RX_FIFOFULL@GOTPAGE
Lloh45:
	ldr	x9, [x9, _DNET_INTR_ENB_RX_FIFOFULL@GOTPAGEOFF]
Lloh46:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh47:
	adrp	x9, _DNET_INTR_ENB_TX_FIFOFULL@GOTPAGE
Lloh48:
	ldr	x9, [x9, _DNET_INTR_ENB_TX_FIFOFULL@GOTPAGEOFF]
Lloh49:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh50:
	adrp	x9, _DNET_INTR_ENB_TX_DISCFRM@GOTPAGE
Lloh51:
	ldr	x9, [x9, _DNET_INTR_ENB_TX_DISCFRM@GOTPAGEOFF]
Lloh52:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh53:
	adrp	x9, _DNET_INTR_ENB_RX_PKTRDY@GOTPAGE
Lloh54:
	ldr	x9, [x9, _DNET_INTR_ENB_RX_PKTRDY@GOTPAGEOFF]
Lloh55:
	ldr	w9, [x9]
	orr	w1, w8, w9
Lloh56:
	adrp	x8, _INTR_ENB@GOTPAGE
Lloh57:
	ldr	x8, [x8, _INTR_ENB@GOTPAGEOFF]
Lloh58:
	ldr	w2, [x8]
	mov	x0, x19
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	b	_dnet_writel
	.loh AdrpLdrGotLdr	Lloh56, Lloh57, Lloh58
	.loh AdrpLdrGotLdr	Lloh53, Lloh54, Lloh55
	.loh AdrpLdrGotLdr	Lloh50, Lloh51, Lloh52
	.loh AdrpLdrGotLdr	Lloh47, Lloh48, Lloh49
	.loh AdrpLdrGotLdr	Lloh44, Lloh45, Lloh46
	.loh AdrpLdrGotLdr	Lloh41, Lloh42, Lloh43
	.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	Lloh19, Lloh20, Lloh22
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh21
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh4
	.loh AdrpLdrGot	Lloh0, Lloh1
	.cfi_endproc
                                        ; -- End function
	.comm	_DNET_INTERNAL_RXTX_CONTROL_REG,4,2 ; @DNET_INTERNAL_RXTX_CONTROL_REG
	.comm	_IFF_PROMISC,4,2                ; @IFF_PROMISC
	.comm	_DNET_INTERNAL_RXTX_CONTROL_ENPROMISC,4,2 ; @DNET_INTERNAL_RXTX_CONTROL_ENPROMISC
	.comm	_IFF_BROADCAST,4,2              ; @IFF_BROADCAST
	.comm	_DNET_INTERNAL_RXTX_CONTROL_RXMULTICAST,4,2 ; @DNET_INTERNAL_RXTX_CONTROL_RXMULTICAST
	.comm	_DNET_INTERNAL_RXTX_CONTROL_RXPAUSE,4,2 ; @DNET_INTERNAL_RXTX_CONTROL_RXPAUSE
	.comm	_DNET_INTERNAL_RXTX_CONTROL_RXBROADCAST,4,2 ; @DNET_INTERNAL_RXTX_CONTROL_RXBROADCAST
	.comm	_DNET_INTERNAL_RXTX_CONTROL_DROPCONTROL,4,2 ; @DNET_INTERNAL_RXTX_CONTROL_DROPCONTROL
	.comm	_DNET_INTERNAL_RXTX_CONTROL_DISCFXFCS,4,2 ; @DNET_INTERNAL_RXTX_CONTROL_DISCFXFCS
	.comm	_INTR_SRC,4,2                   ; @INTR_SRC
	.comm	_DNET_INTR_ENB_GLOBAL_ENABLE,4,2 ; @DNET_INTR_ENB_GLOBAL_ENABLE
	.comm	_DNET_INTR_ENB_RX_SUMMARY,4,2   ; @DNET_INTR_ENB_RX_SUMMARY
	.comm	_DNET_INTR_ENB_TX_SUMMARY,4,2   ; @DNET_INTR_ENB_TX_SUMMARY
	.comm	_DNET_INTR_ENB_RX_FIFOERR,4,2   ; @DNET_INTR_ENB_RX_FIFOERR
	.comm	_DNET_INTR_ENB_RX_ERROR,4,2     ; @DNET_INTR_ENB_RX_ERROR
	.comm	_DNET_INTR_ENB_RX_FIFOFULL,4,2  ; @DNET_INTR_ENB_RX_FIFOFULL
	.comm	_DNET_INTR_ENB_TX_FIFOFULL,4,2  ; @DNET_INTR_ENB_TX_FIFOFULL
	.comm	_DNET_INTR_ENB_TX_DISCFRM,4,2   ; @DNET_INTR_ENB_TX_DISCFRM
	.comm	_DNET_INTR_ENB_RX_PKTRDY,4,2    ; @DNET_INTR_ENB_RX_PKTRDY
	.comm	_INTR_ENB,4,2                   ; @INTR_ENB
	.no_dead_strip	_dnet_init_hw
.subsections_via_symbols
