	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function cpufreq_initialize
_cpufreq_initialize:                    ## @cpufreq_initialize
	.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	__hw_imx@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	%rax, %r14
	callq	_SYSCTL_STATIC_CHILDREN
	movq	_OID_AUTO@GOTPCREL(%rip), %r12
	movl	(%r12), %edx
	movq	_CTLFLAG_RD@GOTPCREL(%rip), %rcx
	movl	(%rcx), %r8d
	leaq	28(%rbx), %r9
	leaq	L_.str.1(%rip), %r10
	leaq	L_.str(%rip), %rcx
	xorl	%edi, %edi
	movl	%eax, %esi
	pushq	%r10
	pushq	$0
	callq	_SYSCTL_ADD_INT
	addq	$16, %rsp
	movl	(%r14), %edi
	callq	_SYSCTL_STATIC_CHILDREN
	movl	(%r12), %edx
	movq	_CTLTYPE_INT@GOTPCREL(%rip), %rsi
	movq	_CTLFLAG_RWTUN@GOTPCREL(%rip), %r13
	movl	(%r13), %r8d
	orl	(%rsi), %r8d
	movq	_CTLFLAG_NOFETCH@GOTPCREL(%rip), %r14
	orl	(%r14), %r8d
	movq	_cpufreq_sysctl_minmhz@GOTPCREL(%rip), %rcx
	movl	(%rcx), %r10d
	leaq	L_.str.4(%rip), %r11
	leaq	L_.str.3(%rip), %r15
	leaq	L_.str.2(%rip), %rcx
	xorl	%edi, %edi
	movl	%eax, %esi
	movq	%rbx, %r9
	pushq	%r11
	pushq	%r15
	pushq	%r10
	pushq	$0
	callq	_SYSCTL_ADD_PROC
	addq	$32, %rsp
	movq	__hw_imx@GOTPCREL(%rip), %r15
	movl	(%r15), %edi
	callq	_SYSCTL_STATIC_CHILDREN
	movl	(%r12), %edx
	movl	(%r13), %r8d
	movq	_CTLTYPE_INT@GOTPCREL(%rip), %rcx
	orl	(%rcx), %r8d
	orl	(%r14), %r8d
	movq	_cpufreq_sysctl_maxmhz@GOTPCREL(%rip), %rcx
	movl	(%rcx), %r10d
	leaq	L_.str.6(%rip), %r11
	leaq	L_.str.5(%rip), %rcx
	xorl	%edi, %edi
	movl	%eax, %esi
	movq	%rbx, %r9
	pushq	%r11
	leaq	L_.str.3(%rip), %rax
	pushq	%rax
	pushq	%r10
	pushq	$0
	callq	_SYSCTL_ADD_PROC
	addq	$32, %rsp
	movl	(%r15), %edi
	callq	_SYSCTL_STATIC_CHILDREN
	movl	(%r12), %edx
	movq	_CTLFLAG_RD@GOTPCREL(%rip), %rcx
	movl	(%rcx), %r8d
	leaq	20(%rbx), %r9
	leaq	L_.str.8(%rip), %r10
	leaq	L_.str.7(%rip), %rcx
	xorl	%edi, %edi
	movl	%eax, %esi
	pushq	%r10
	pushq	$0
	callq	_SYSCTL_ADD_INT
	addq	$16, %rsp
	movl	(%r15), %edi
	callq	_SYSCTL_STATIC_CHILDREN
	movl	(%r12), %edx
	movl	(%r13), %r8d
	leaq	24(%rbx), %r9
	leaq	L_.str.10(%rip), %r10
	leaq	L_.str.9(%rip), %rcx
	xorl	%edi, %edi
	movl	%eax, %esi
	pushq	%r10
	pushq	$0
	callq	_SYSCTL_ADD_INT
	addq	$16, %rsp
	movl	$24, (%rbx)
	movq	_FSL_OCOTP_CFG3@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_fsl_ocotp_read_4
	movq	_FSL_OCOTP_CFG3_SPEED_MASK@GOTPCREL(%rip), %rcx
	andq	(%rcx), %rax
	movq	_FSL_OCOTP_CFG3_SPEED_SHIFT@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	shrq	%cl, %rax
	movq	_imx6_ocotp_mhz_tab@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	movl	(%rcx,%rax,4), %eax
	movl	%eax, 20(%rbx)
	leaq	8(%rbx), %r14
	movl	%eax, 8(%rbx)
	leaq	16(%rbx), %rsi
	leaq	L_.str.11(%rip), %rdi
	callq	_TUNABLE_INT_FETCH
	movl	16(%rbx), %esi
	movq	%rbx, %rdi
	callq	_cpufreq_nearest_oppt
	movl	4(%rax), %ecx
	movl	%ecx, 16(%rbx)
	movl	(%rax), %eax
	movl	%eax, 12(%rbx)
	leaq	L_.str.12(%rip), %rdi
	movq	%r14, %rsi
	callq	_TUNABLE_INT_FETCH
	movl	8(%rbx), %esi
	movq	%rbx, %rdi
	callq	_cpufreq_nearest_oppt
	movl	4(%rax), %ecx
	movl	%ecx, 8(%rbx)
	movl	(%rax), %ecx
	movl	%ecx, 4(%rbx)
	movq	%rbx, %rdi
	movq	%rax, %rsi
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_cpufreq_set_clock              ## TAILCALL
	.cfi_endproc
                                        ## -- End function
	.comm	__hw_imx,4,2                    ## @_hw_imx
	.comm	_OID_AUTO,4,2                   ## @OID_AUTO
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"cpu_mhz"

	.comm	_CTLFLAG_RD,4,2                 ## @CTLFLAG_RD
L_.str.1:                               ## @.str.1
	.asciz	"CPU frequency"

L_.str.2:                               ## @.str.2
	.asciz	"cpu_minmhz"

	.comm	_CTLTYPE_INT,4,2                ## @CTLTYPE_INT
	.comm	_CTLFLAG_RWTUN,4,2              ## @CTLFLAG_RWTUN
	.comm	_CTLFLAG_NOFETCH,4,2            ## @CTLFLAG_NOFETCH
	.comm	_cpufreq_sysctl_minmhz,4,2      ## @cpufreq_sysctl_minmhz
L_.str.3:                               ## @.str.3
	.asciz	"IU"

L_.str.4:                               ## @.str.4
	.asciz	"Minimum CPU frequency"

L_.str.5:                               ## @.str.5
	.asciz	"cpu_maxmhz"

	.comm	_cpufreq_sysctl_maxmhz,4,2      ## @cpufreq_sysctl_maxmhz
L_.str.6:                               ## @.str.6
	.asciz	"Maximum CPU frequency"

L_.str.7:                               ## @.str.7
	.asciz	"cpu_maxmhz_hw"

L_.str.8:                               ## @.str.8
	.asciz	"Maximum CPU frequency allowed by hardware"

L_.str.9:                               ## @.str.9
	.asciz	"cpu_overclock_enable"

L_.str.10:                              ## @.str.10
	.asciz	"Allow setting CPU frequency higher than cpu_maxmhz_hw"

	.comm	_FSL_OCOTP_CFG3,4,2             ## @FSL_OCOTP_CFG3
	.comm	_FSL_OCOTP_CFG3_SPEED_MASK,8,3  ## @FSL_OCOTP_CFG3_SPEED_MASK
	.comm	_FSL_OCOTP_CFG3_SPEED_SHIFT,8,3 ## @FSL_OCOTP_CFG3_SPEED_SHIFT
	.comm	_imx6_ocotp_mhz_tab,8,3         ## @imx6_ocotp_mhz_tab
L_.str.11:                              ## @.str.11
	.asciz	"hw.imx6.cpu_minmhz"

L_.str.12:                              ## @.str.12
	.asciz	"hw.imx6.cpu_maxmhz"

	.no_dead_strip	_cpufreq_initialize
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function cpufreq_initialize
_cpufreq_initialize:                    ; @cpufreq_initialize
	.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	x19, x0
Lloh0:
	adrp	x20, __hw_imx@GOTPAGE
Lloh1:
	ldr	x20, [x20, __hw_imx@GOTPAGEOFF]
	ldr	w0, [x20]
	bl	_SYSCTL_STATIC_CHILDREN
	mov	x1, x0
Lloh2:
	adrp	x21, _OID_AUTO@GOTPAGE
Lloh3:
	ldr	x21, [x21, _OID_AUTO@GOTPAGEOFF]
	ldr	w2, [x21]
Lloh4:
	adrp	x22, _CTLFLAG_RD@GOTPAGE
Lloh5:
	ldr	x22, [x22, _CTLFLAG_RD@GOTPAGEOFF]
	ldr	w4, [x22]
	add	x5, x19, #28
Lloh6:
	adrp	x3, l_.str@PAGE
Lloh7:
	add	x3, x3, l_.str@PAGEOFF
Lloh8:
	adrp	x7, l_.str.1@PAGE
Lloh9:
	add	x7, x7, l_.str.1@PAGEOFF
	mov	x0, #0
	mov	w6, #0
	bl	_SYSCTL_ADD_INT
	ldr	w0, [x20]
	bl	_SYSCTL_STATIC_CHILDREN
	mov	x1, x0
	ldr	w2, [x21]
Lloh10:
	adrp	x24, _CTLTYPE_INT@GOTPAGE
Lloh11:
	ldr	x24, [x24, _CTLTYPE_INT@GOTPAGEOFF]
	ldr	w8, [x24]
Lloh12:
	adrp	x23, _CTLFLAG_RWTUN@GOTPAGE
Lloh13:
	ldr	x23, [x23, _CTLFLAG_RWTUN@GOTPAGEOFF]
	ldr	w9, [x23]
Lloh14:
	adrp	x25, _CTLFLAG_NOFETCH@GOTPAGE
Lloh15:
	ldr	x25, [x25, _CTLFLAG_NOFETCH@GOTPAGEOFF]
	orr	w8, w9, w8
	ldr	w9, [x25]
	orr	w4, w8, w9
Lloh16:
	adrp	x8, _cpufreq_sysctl_minmhz@GOTPAGE
Lloh17:
	ldr	x8, [x8, _cpufreq_sysctl_minmhz@GOTPAGEOFF]
Lloh18:
	ldr	w7, [x8]
Lloh19:
	adrp	x8, l_.str.4@PAGE
Lloh20:
	add	x8, x8, l_.str.4@PAGEOFF
Lloh21:
	adrp	x26, l_.str.3@PAGE
Lloh22:
	add	x26, x26, l_.str.3@PAGEOFF
	stp	x26, x8, [sp]
Lloh23:
	adrp	x3, l_.str.2@PAGE
Lloh24:
	add	x3, x3, l_.str.2@PAGEOFF
	mov	x0, #0
	mov	x5, x19
	mov	w6, #0
	bl	_SYSCTL_ADD_PROC
	ldr	w0, [x20]
	bl	_SYSCTL_STATIC_CHILDREN
	mov	x1, x0
	ldr	w2, [x21]
	ldr	w8, [x24]
	ldr	w9, [x23]
	orr	w8, w9, w8
	ldr	w9, [x25]
	orr	w4, w8, w9
Lloh25:
	adrp	x8, _cpufreq_sysctl_maxmhz@GOTPAGE
Lloh26:
	ldr	x8, [x8, _cpufreq_sysctl_maxmhz@GOTPAGEOFF]
Lloh27:
	ldr	w7, [x8]
Lloh28:
	adrp	x8, l_.str.6@PAGE
Lloh29:
	add	x8, x8, l_.str.6@PAGEOFF
	stp	x26, x8, [sp]
Lloh30:
	adrp	x3, l_.str.5@PAGE
Lloh31:
	add	x3, x3, l_.str.5@PAGEOFF
	mov	x0, #0
	mov	x5, x19
	mov	w6, #0
	bl	_SYSCTL_ADD_PROC
	ldr	w0, [x20]
	bl	_SYSCTL_STATIC_CHILDREN
	mov	x1, x0
	ldr	w2, [x21]
	ldr	w4, [x22]
	add	x5, x19, #20
Lloh32:
	adrp	x3, l_.str.7@PAGE
Lloh33:
	add	x3, x3, l_.str.7@PAGEOFF
Lloh34:
	adrp	x7, l_.str.8@PAGE
Lloh35:
	add	x7, x7, l_.str.8@PAGEOFF
	mov	x0, #0
	mov	w6, #0
	bl	_SYSCTL_ADD_INT
	ldr	w0, [x20]
	bl	_SYSCTL_STATIC_CHILDREN
	mov	x1, x0
	ldr	w2, [x21]
	ldr	w4, [x23]
	add	x5, x19, #24
Lloh36:
	adrp	x3, l_.str.9@PAGE
Lloh37:
	add	x3, x3, l_.str.9@PAGEOFF
Lloh38:
	adrp	x7, l_.str.10@PAGE
Lloh39:
	add	x7, x7, l_.str.10@PAGEOFF
	mov	x0, #0
	mov	w6, #0
	bl	_SYSCTL_ADD_INT
	mov	w8, #24
	str	w8, [x19]
Lloh40:
	adrp	x8, _FSL_OCOTP_CFG3@GOTPAGE
Lloh41:
	ldr	x8, [x8, _FSL_OCOTP_CFG3@GOTPAGEOFF]
Lloh42:
	ldr	w0, [x8]
	bl	_fsl_ocotp_read_4
Lloh43:
	adrp	x8, _FSL_OCOTP_CFG3_SPEED_MASK@GOTPAGE
Lloh44:
	ldr	x8, [x8, _FSL_OCOTP_CFG3_SPEED_MASK@GOTPAGEOFF]
Lloh45:
	ldr	x8, [x8]
	and	x8, x8, x0
Lloh46:
	adrp	x9, _FSL_OCOTP_CFG3_SPEED_SHIFT@GOTPAGE
Lloh47:
	ldr	x9, [x9, _FSL_OCOTP_CFG3_SPEED_SHIFT@GOTPAGEOFF]
Lloh48:
	ldr	x9, [x9]
	lsr	x8, x8, x9
Lloh49:
	adrp	x9, _imx6_ocotp_mhz_tab@GOTPAGE
Lloh50:
	ldr	x9, [x9, _imx6_ocotp_mhz_tab@GOTPAGEOFF]
Lloh51:
	ldr	x9, [x9]
	ldr	w8, [x9, x8, lsl #2]
	str	w8, [x19, #20]
	mov	x20, x19
	str	w8, [x20, #8]!
	add	x1, x19, #16
Lloh52:
	adrp	x0, l_.str.11@PAGE
Lloh53:
	add	x0, x0, l_.str.11@PAGEOFF
	bl	_TUNABLE_INT_FETCH
	ldr	w1, [x19, #16]
	mov	x0, x19
	bl	_cpufreq_nearest_oppt
	ldr	d0, [x0]
	stur	d0, [x19, #12]
Lloh54:
	adrp	x0, l_.str.12@PAGE
Lloh55:
	add	x0, x0, l_.str.12@PAGEOFF
	mov	x1, x20
	bl	_TUNABLE_INT_FETCH
	ldr	w1, [x20]
	mov	x0, x19
	bl	_cpufreq_nearest_oppt
	mov	x1, x0
	ldr	d0, [x0]
	stur	d0, [x19, #4]
	mov	x0, x19
	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	_cpufreq_set_clock
	.loh AdrpAdd	Lloh54, Lloh55
	.loh AdrpAdd	Lloh52, Lloh53
	.loh AdrpLdrGotLdr	Lloh49, Lloh50, Lloh51
	.loh AdrpLdrGotLdr	Lloh46, Lloh47, Lloh48
	.loh AdrpLdrGotLdr	Lloh43, Lloh44, Lloh45
	.loh AdrpLdrGotLdr	Lloh40, Lloh41, Lloh42
	.loh AdrpAdd	Lloh38, Lloh39
	.loh AdrpAdd	Lloh36, Lloh37
	.loh AdrpAdd	Lloh34, Lloh35
	.loh AdrpAdd	Lloh32, Lloh33
	.loh AdrpAdd	Lloh30, Lloh31
	.loh AdrpAdd	Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh25, Lloh26, Lloh27
	.loh AdrpAdd	Lloh23, Lloh24
	.loh AdrpAdd	Lloh21, Lloh22
	.loh AdrpAdd	Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh16, Lloh17, Lloh18
	.loh AdrpLdrGot	Lloh14, Lloh15
	.loh AdrpLdrGot	Lloh12, Lloh13
	.loh AdrpLdrGot	Lloh10, Lloh11
	.loh AdrpAdd	Lloh8, Lloh9
	.loh AdrpAdd	Lloh6, Lloh7
	.loh AdrpLdrGot	Lloh4, Lloh5
	.loh AdrpLdrGot	Lloh2, Lloh3
	.loh AdrpLdrGot	Lloh0, Lloh1
	.cfi_endproc
                                        ; -- End function
	.comm	__hw_imx,4,2                    ; @_hw_imx
	.comm	_OID_AUTO,4,2                   ; @OID_AUTO
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"cpu_mhz"

	.comm	_CTLFLAG_RD,4,2                 ; @CTLFLAG_RD
l_.str.1:                               ; @.str.1
	.asciz	"CPU frequency"

l_.str.2:                               ; @.str.2
	.asciz	"cpu_minmhz"

	.comm	_CTLTYPE_INT,4,2                ; @CTLTYPE_INT
	.comm	_CTLFLAG_RWTUN,4,2              ; @CTLFLAG_RWTUN
	.comm	_CTLFLAG_NOFETCH,4,2            ; @CTLFLAG_NOFETCH
	.comm	_cpufreq_sysctl_minmhz,4,2      ; @cpufreq_sysctl_minmhz
l_.str.3:                               ; @.str.3
	.asciz	"IU"

l_.str.4:                               ; @.str.4
	.asciz	"Minimum CPU frequency"

l_.str.5:                               ; @.str.5
	.asciz	"cpu_maxmhz"

	.comm	_cpufreq_sysctl_maxmhz,4,2      ; @cpufreq_sysctl_maxmhz
l_.str.6:                               ; @.str.6
	.asciz	"Maximum CPU frequency"

l_.str.7:                               ; @.str.7
	.asciz	"cpu_maxmhz_hw"

l_.str.8:                               ; @.str.8
	.asciz	"Maximum CPU frequency allowed by hardware"

l_.str.9:                               ; @.str.9
	.asciz	"cpu_overclock_enable"

l_.str.10:                              ; @.str.10
	.asciz	"Allow setting CPU frequency higher than cpu_maxmhz_hw"

	.comm	_FSL_OCOTP_CFG3,4,2             ; @FSL_OCOTP_CFG3
	.comm	_FSL_OCOTP_CFG3_SPEED_MASK,8,3  ; @FSL_OCOTP_CFG3_SPEED_MASK
	.comm	_FSL_OCOTP_CFG3_SPEED_SHIFT,8,3 ; @FSL_OCOTP_CFG3_SPEED_SHIFT
	.comm	_imx6_ocotp_mhz_tab,8,3         ; @imx6_ocotp_mhz_tab
l_.str.11:                              ; @.str.11
	.asciz	"hw.imx6.cpu_minmhz"

l_.str.12:                              ; @.str.12
	.asciz	"hw.imx6.cpu_maxmhz"

	.no_dead_strip	_cpufreq_initialize
.subsections_via_symbols
