	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function encx24j600_hw_init
_encx24j600_hw_init:                    ## @encx24j600_hw_init
	.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
	movq	%rdi, %rbx
	movl	$0, (%rdi)
	movq	_EIDLED@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$65280, %edx                    ## imm = 0xFF00
	movl	$51968, %ecx                    ## imm = 0xCB00
	callq	_encx24j600_update_reg
	movq	_MACON1@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rbx, %rdi
	movl	$9, %edx
	callq	_encx24j600_write_reg
	movq	_MAIPG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rbx, %rdi
	movl	$3090, %edx                     ## imm = 0xC12
	callq	_encx24j600_write_reg
	movq	_PHANA@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_PHANA_DEFAULT@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%rbx, %rdi
	callq	_encx24j600_write_phy
	movq	%rbx, %rdi
	callq	_encx24j600_update_phcon1
	movq	%rbx, %rdi
	callq	_encx24j600_check_link_status
	movq	_MACON2_RSV1@GOTPCREL(%rip), %rax
	movq	_TXCRCEN@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	orl	(%rax), %edx
	movq	_PADCFG0@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	movq	_PADCFG2@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	movq	_MACON2_DEFER@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	movq	8(%rbx), %rax
	movq	_AUTONEG_DISABLE@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_3
## %bb.1:
	cmpq	$0, 24(%rbx)
	je	LBB0_3
## %bb.2:
	movq	_FULDPX@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
LBB0_3:
	movq	_MACON2@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rbx, %rdi
	callq	_encx24j600_set_bits
	movq	_RXFILTER_NORMAL@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 16(%rbx)
	movq	%rbx, %rdi
	callq	_encx24j600_set_rxfilter_mode
	movq	_MAMXFL@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_MAX_FRAMELEN@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%rbx, %rdi
	callq	_encx24j600_write_reg
	movq	%rbx, %rdi
	callq	_encx24j600_hw_init_tx
	movq	%rbx, %rdi
	callq	_encx24j600_hw_init_rx
	movq	%rbx, %rdi
	callq	_netif_msg_hw
	testq	%rax, %rax
	je	LBB0_5
## %bb.4:
	leaq	L_.str(%rip), %rsi
	movq	%rbx, %rdi
	callq	_encx24j600_dump_config
LBB0_5:
	xorl	%eax, %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_EIDLED,4,2                     ## @EIDLED
	.comm	_MACON1,4,2                     ## @MACON1
	.comm	_MAIPG,4,2                      ## @MAIPG
	.comm	_PHANA,4,2                      ## @PHANA
	.comm	_PHANA_DEFAULT,4,2              ## @PHANA_DEFAULT
	.comm	_MACON2_RSV1,4,2                ## @MACON2_RSV1
	.comm	_TXCRCEN,4,2                    ## @TXCRCEN
	.comm	_PADCFG0,4,2                    ## @PADCFG0
	.comm	_PADCFG2,4,2                    ## @PADCFG2
	.comm	_MACON2_DEFER,4,2               ## @MACON2_DEFER
	.comm	_AUTONEG_DISABLE,8,3            ## @AUTONEG_DISABLE
	.comm	_FULDPX,4,2                     ## @FULDPX
	.comm	_MACON2,4,2                     ## @MACON2
	.comm	_RXFILTER_NORMAL,4,2            ## @RXFILTER_NORMAL
	.comm	_MAMXFL,4,2                     ## @MAMXFL
	.comm	_MAX_FRAMELEN,4,2               ## @MAX_FRAMELEN
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"Hw is initialized"

	.no_dead_strip	_encx24j600_hw_init
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function encx24j600_hw_init
_encx24j600_hw_init:                    ; @encx24j600_hw_init
	.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
	str	wzr, [x0]
Lloh0:
	adrp	x8, _EIDLED@GOTPAGE
Lloh1:
	ldr	x8, [x8, _EIDLED@GOTPAGEOFF]
Lloh2:
	ldr	w1, [x8]
	mov	w2, #65280
	mov	w3, #51968
	bl	_encx24j600_update_reg
Lloh3:
	adrp	x8, _MACON1@GOTPAGE
Lloh4:
	ldr	x8, [x8, _MACON1@GOTPAGEOFF]
Lloh5:
	ldr	w1, [x8]
	mov	x0, x19
	mov	w2, #9
	bl	_encx24j600_write_reg
Lloh6:
	adrp	x8, _MAIPG@GOTPAGE
Lloh7:
	ldr	x8, [x8, _MAIPG@GOTPAGEOFF]
Lloh8:
	ldr	w1, [x8]
	mov	x0, x19
	mov	w2, #3090
	bl	_encx24j600_write_reg
Lloh9:
	adrp	x8, _PHANA@GOTPAGE
Lloh10:
	ldr	x8, [x8, _PHANA@GOTPAGEOFF]
Lloh11:
	ldr	w1, [x8]
Lloh12:
	adrp	x8, _PHANA_DEFAULT@GOTPAGE
Lloh13:
	ldr	x8, [x8, _PHANA_DEFAULT@GOTPAGEOFF]
Lloh14:
	ldr	w2, [x8]
	mov	x0, x19
	bl	_encx24j600_write_phy
	mov	x0, x19
	bl	_encx24j600_update_phcon1
	mov	x0, x19
	bl	_encx24j600_check_link_status
Lloh15:
	adrp	x8, _MACON2_RSV1@GOTPAGE
Lloh16:
	ldr	x8, [x8, _MACON2_RSV1@GOTPAGEOFF]
Lloh17:
	ldr	w8, [x8]
Lloh18:
	adrp	x9, _TXCRCEN@GOTPAGE
Lloh19:
	ldr	x9, [x9, _TXCRCEN@GOTPAGEOFF]
Lloh20:
	ldr	w9, [x9]
	orr	w8, w9, w8
Lloh21:
	adrp	x9, _PADCFG0@GOTPAGE
Lloh22:
	ldr	x9, [x9, _PADCFG0@GOTPAGEOFF]
Lloh23:
	ldr	w9, [x9]
Lloh24:
	adrp	x10, _PADCFG2@GOTPAGE
Lloh25:
	ldr	x10, [x10, _PADCFG2@GOTPAGEOFF]
	orr	w8, w8, w9
Lloh26:
	ldr	w9, [x10]
	orr	w8, w8, w9
Lloh27:
	adrp	x9, _MACON2_DEFER@GOTPAGE
Lloh28:
	ldr	x9, [x9, _MACON2_DEFER@GOTPAGEOFF]
Lloh29:
	ldr	w9, [x9]
	orr	w2, w8, w9
	ldr	x8, [x19, #8]
Lloh30:
	adrp	x9, _AUTONEG_DISABLE@GOTPAGE
Lloh31:
	ldr	x9, [x9, _AUTONEG_DISABLE@GOTPAGEOFF]
Lloh32:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_3
; %bb.1:
	ldr	x8, [x19, #24]
	cbz	x8, LBB0_3
; %bb.2:
Lloh33:
	adrp	x8, _FULDPX@GOTPAGE
Lloh34:
	ldr	x8, [x8, _FULDPX@GOTPAGEOFF]
Lloh35:
	ldr	w8, [x8]
	orr	w2, w8, w2
LBB0_3:
Lloh36:
	adrp	x8, _MACON2@GOTPAGE
Lloh37:
	ldr	x8, [x8, _MACON2@GOTPAGEOFF]
Lloh38:
	ldr	w1, [x8]
	mov	x0, x19
	bl	_encx24j600_set_bits
Lloh39:
	adrp	x8, _RXFILTER_NORMAL@GOTPAGE
Lloh40:
	ldr	x8, [x8, _RXFILTER_NORMAL@GOTPAGEOFF]
Lloh41:
	ldr	w8, [x8]
	str	w8, [x19, #16]
	mov	x0, x19
	bl	_encx24j600_set_rxfilter_mode
Lloh42:
	adrp	x8, _MAMXFL@GOTPAGE
Lloh43:
	ldr	x8, [x8, _MAMXFL@GOTPAGEOFF]
Lloh44:
	ldr	w1, [x8]
Lloh45:
	adrp	x8, _MAX_FRAMELEN@GOTPAGE
Lloh46:
	ldr	x8, [x8, _MAX_FRAMELEN@GOTPAGEOFF]
Lloh47:
	ldr	w2, [x8]
	mov	x0, x19
	bl	_encx24j600_write_reg
	mov	x0, x19
	bl	_encx24j600_hw_init_tx
	mov	x0, x19
	bl	_encx24j600_hw_init_rx
	mov	x0, x19
	bl	_netif_msg_hw
	cbz	x0, LBB0_5
; %bb.4:
Lloh48:
	adrp	x1, l_.str@PAGE
Lloh49:
	add	x1, x1, l_.str@PAGEOFF
	mov	x0, x19
	bl	_encx24j600_dump_config
LBB0_5:
	mov	w0, #0
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGotLdr	Lloh45, Lloh46, Lloh47
	.loh AdrpLdrGotLdr	Lloh42, Lloh43, Lloh44
	.loh AdrpLdrGotLdr	Lloh39, Lloh40, Lloh41
	.loh AdrpLdrGotLdr	Lloh36, Lloh37, Lloh38
	.loh AdrpAdd	Lloh48, Lloh49
	.cfi_endproc
                                        ; -- End function
	.comm	_EIDLED,4,2                     ; @EIDLED
	.comm	_MACON1,4,2                     ; @MACON1
	.comm	_MAIPG,4,2                      ; @MAIPG
	.comm	_PHANA,4,2                      ; @PHANA
	.comm	_PHANA_DEFAULT,4,2              ; @PHANA_DEFAULT
	.comm	_MACON2_RSV1,4,2                ; @MACON2_RSV1
	.comm	_TXCRCEN,4,2                    ; @TXCRCEN
	.comm	_PADCFG0,4,2                    ; @PADCFG0
	.comm	_PADCFG2,4,2                    ; @PADCFG2
	.comm	_MACON2_DEFER,4,2               ; @MACON2_DEFER
	.comm	_AUTONEG_DISABLE,8,3            ; @AUTONEG_DISABLE
	.comm	_FULDPX,4,2                     ; @FULDPX
	.comm	_MACON2,4,2                     ; @MACON2
	.comm	_RXFILTER_NORMAL,4,2            ; @RXFILTER_NORMAL
	.comm	_MAMXFL,4,2                     ; @MAMXFL
	.comm	_MAX_FRAMELEN,4,2               ; @MAX_FRAMELEN
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"Hw is initialized"

	.no_dead_strip	_encx24j600_hw_init
.subsections_via_symbols
