	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function mt9m111_suspend
_mt9m111_suspend:                       ## @mt9m111_suspend
	.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
	addq	$4, %rdi
	callq	_v4l2_get_subdevdata
	movl	(%rbx), %r14d
	movq	%rbx, %rdi
	callq	_mt9m111_get_global_gain
	movl	%r14d, %edi
	movl	%eax, %esi
	callq	_v4l2_ctrl_s_ctrl
	movq	_RESET@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movq	_MT9M111_RESET_RESET_MODE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_reg_set
	testl	%eax, %eax
	jne	LBB0_2
## %bb.1:
	movq	_MT9M111_RESET_RESET_SOC@GOTPCREL(%rip), %rax
	movq	_MT9M111_RESET_OUTPUT_DISABLE@GOTPCREL(%rip), %rcx
	movl	(%rcx), %esi
	orl	(%rax), %esi
	movl	(%rbx), %edi
	movq	_MT9M111_RESET_ANALOG_STANDBY@GOTPCREL(%rip), %rax
	orl	(%rax), %esi
	callq	_reg_set
	testl	%eax, %eax
	je	LBB0_3
LBB0_2:
	popq	%rbx
	popq	%r14
	popq	%rbp
	retq
LBB0_3:
	movl	(%rbx), %edi
	movq	_MT9M111_RESET_CHIP_ENABLE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	popq	%rbx
	popq	%r14
	popq	%rbp
	jmp	_reg_clear                      ## TAILCALL
	.cfi_endproc
                                        ## -- End function
	.comm	_RESET,4,2                      ## @RESET
	.comm	_MT9M111_RESET_RESET_MODE,4,2   ## @MT9M111_RESET_RESET_MODE
	.comm	_MT9M111_RESET_RESET_SOC,4,2    ## @MT9M111_RESET_RESET_SOC
	.comm	_MT9M111_RESET_OUTPUT_DISABLE,4,2 ## @MT9M111_RESET_OUTPUT_DISABLE
	.comm	_MT9M111_RESET_ANALOG_STANDBY,4,2 ## @MT9M111_RESET_ANALOG_STANDBY
	.comm	_MT9M111_RESET_CHIP_ENABLE,4,2  ## @MT9M111_RESET_CHIP_ENABLE
	.no_dead_strip	_mt9m111_suspend
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function mt9m111_suspend
_mt9m111_suspend:                       ; @mt9m111_suspend
	.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
	add	x0, x0, #4
	bl	_v4l2_get_subdevdata
	ldr	w20, [x19]
	mov	x0, x19
	bl	_mt9m111_get_global_gain
	mov	x1, x0
	mov	x0, x20
	bl	_v4l2_ctrl_s_ctrl
Lloh0:
	adrp	x19, _RESET@GOTPAGE
Lloh1:
	ldr	x19, [x19, _RESET@GOTPAGEOFF]
	ldr	w0, [x19]
Lloh2:
	adrp	x8, _MT9M111_RESET_RESET_MODE@GOTPAGE
Lloh3:
	ldr	x8, [x8, _MT9M111_RESET_RESET_MODE@GOTPAGEOFF]
Lloh4:
	ldr	w1, [x8]
	bl	_reg_set
	cbnz	w0, LBB0_2
; %bb.1:
	ldr	w0, [x19]
Lloh5:
	adrp	x8, _MT9M111_RESET_RESET_SOC@GOTPAGE
Lloh6:
	ldr	x8, [x8, _MT9M111_RESET_RESET_SOC@GOTPAGEOFF]
Lloh7:
	ldr	w8, [x8]
Lloh8:
	adrp	x9, _MT9M111_RESET_OUTPUT_DISABLE@GOTPAGE
Lloh9:
	ldr	x9, [x9, _MT9M111_RESET_OUTPUT_DISABLE@GOTPAGEOFF]
Lloh10:
	ldr	w9, [x9]
	orr	w8, w9, w8
Lloh11:
	adrp	x9, _MT9M111_RESET_ANALOG_STANDBY@GOTPAGE
Lloh12:
	ldr	x9, [x9, _MT9M111_RESET_ANALOG_STANDBY@GOTPAGEOFF]
Lloh13:
	ldr	w9, [x9]
	orr	w1, w8, w9
	bl	_reg_set
	cbz	w0, LBB0_3
LBB0_2:
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	ret
LBB0_3:
	ldr	w0, [x19]
Lloh14:
	adrp	x8, _MT9M111_RESET_CHIP_ENABLE@GOTPAGE
Lloh15:
	ldr	x8, [x8, _MT9M111_RESET_CHIP_ENABLE@GOTPAGEOFF]
Lloh16:
	ldr	w1, [x8]
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	b	_reg_clear
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh4
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.cfi_endproc
                                        ; -- End function
	.comm	_RESET,4,2                      ; @RESET
	.comm	_MT9M111_RESET_RESET_MODE,4,2   ; @MT9M111_RESET_RESET_MODE
	.comm	_MT9M111_RESET_RESET_SOC,4,2    ; @MT9M111_RESET_RESET_SOC
	.comm	_MT9M111_RESET_OUTPUT_DISABLE,4,2 ; @MT9M111_RESET_OUTPUT_DISABLE
	.comm	_MT9M111_RESET_ANALOG_STANDBY,4,2 ; @MT9M111_RESET_ANALOG_STANDBY
	.comm	_MT9M111_RESET_CHIP_ENABLE,4,2  ; @MT9M111_RESET_CHIP_ENABLE
	.no_dead_strip	_mt9m111_suspend
.subsections_via_symbols
