	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function sun4i_tv_mode_set
_sun4i_tv_mode_set:                     ## @sun4i_tv_mode_set
	.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
	subq	$24, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rsi, %rbx
	callq	_drm_encoder_to_sun4i_tv
	movq	%rax, %r14
	movq	%rbx, %rdi
	callq	_sun4i_tv_find_tv_by_mode
	movq	%rax, %r15
	movl	(%r14), %eax
	movl	%eax, -56(%rbp)                 ## 4-byte Spill
	movq	_SUN4I_TVE_EN_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -44(%rbp)                 ## 4-byte Spill
	movq	_SUN4I_TVE_EN_DAC_MAP_MASK@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -48(%rbp)                 ## 4-byte Spill
	xorl	%ebx, %ebx
	xorl	%edi, %edi
	movl	$1, %esi
	callq	_SUN4I_TVE_EN_DAC_MAP
	movl	%eax, %r13d
	movl	$1, %edi
	movl	$2, %esi
	callq	_SUN4I_TVE_EN_DAC_MAP
	orl	%eax, %r13d
	movl	$2, %edi
	movl	$3, %esi
	callq	_SUN4I_TVE_EN_DAC_MAP
	movl	%eax, %r12d
	movl	$3, %edi
	movl	$4, %esi
	callq	_SUN4I_TVE_EN_DAC_MAP
	orl	%eax, %r12d
	orl	%r13d, %r12d
	movl	-56(%rbp), %edi                 ## 4-byte Reload
	movl	-44(%rbp), %esi                 ## 4-byte Reload
	movl	-48(%rbp), %edx                 ## 4-byte Reload
	movl	%r12d, %ecx
	callq	_regmap_update_bits
	movl	(%r14), %edi
	movq	_SUN4I_TVE_CFG0_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	cmpq	$0, 80(%r15)
	movl	$0, %edx
	je	LBB0_2
## %bb.1:
	movq	_SUN4I_TVE_CFG0_YC_EN@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
LBB0_2:
	orl	(%r15), %edx
	movq	_SUN4I_TVE_CFG0_COMP_EN@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	movq	_SUN4I_TVE_CFG0_DAC_CONTROL_54M@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	movq	_SUN4I_TVE_CFG0_CORE_DATAPATH_54M@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	movq	_SUN4I_TVE_CFG0_CORE_CONTROL_54M@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	callq	_regmap_write
	movq	%r14, -56(%rbp)                 ## 8-byte Spill
	movl	(%r14), %eax
	movl	%eax, -44(%rbp)                 ## 4-byte Spill
	movq	_SUN4I_TVE_DAC0_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, -48(%rbp)                 ## 4-byte Spill
	xorl	%edi, %edi
	callq	_SUN4I_TVE_DAC0_DAC_EN
	movl	%eax, -64(%rbp)                 ## 4-byte Spill
	cmpq	$0, 72(%r15)
	je	LBB0_4
## %bb.3:
	movl	$3, %edi
	callq	_SUN4I_TVE_DAC0_DAC_EN
	movl	%eax, %ebx
LBB0_4:
	movq	_SUN4I_TVE_DAC0_INTERNAL_DAC_37_5_OHMS@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SUN4I_TVE_DAC0_CHROMA_0_75@GOTPCREL(%rip), %rax
	movl	(%rax), %r12d
	movq	_SUN4I_TVE_DAC0_LUMA_0_4@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	movq	_SUN4I_TVE_DAC0_CLOCK_INVERT@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	cmpq	$0, 64(%r15)
	movl	$0, %r13d
	je	LBB0_6
## %bb.5:
	movl	$25, %edi
	movl	%ecx, %r13d
	movl	%eax, -60(%rbp)                 ## 4-byte Spill
	movq	%r15, %r14
	movl	%esi, %r15d
	callq	_BIT
	movl	%r15d, %esi
	movq	%r14, %r15
	movl	%r13d, %ecx
	movl	%eax, %r13d
	movl	-60(%rbp), %eax                 ## 4-byte Reload
LBB0_6:
	orl	-64(%rbp), %ebx                 ## 4-byte Folded Reload
	orl	%esi, %ebx
	orl	%r12d, %ebx
	orl	%ecx, %ebx
	orl	%eax, %ebx
	movl	$30, %edi
	callq	_BIT
	orl	%eax, %r13d
	orl	%ebx, %r13d
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	movl	-48(%rbp), %esi                 ## 4-byte Reload
	movl	%r13d, %edx
	callq	_regmap_write
	movq	-56(%rbp), %r14                 ## 8-byte Reload
	movl	(%r14), %r12d
	movq	_SUN4I_TVE_NOTCH_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	movl	$1, %edi
	xorl	%esi, %esi
	callq	_SUN4I_TVE_NOTCH_DAC0_TO_DAC_DLY
	movl	%eax, %ebx
	movl	$2, %edi
	xorl	%esi, %esi
	callq	_SUN4I_TVE_NOTCH_DAC0_TO_DAC_DLY
	orl	%eax, %ebx
	movl	%r12d, %edi
	movl	%r13d, %esi
	movl	%ebx, %edx
	callq	_regmap_write
	movl	(%r14), %edi
	movq	_SUN4I_TVE_CHROMA_FREQ_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	4(%r15), %edx
	callq	_regmap_write
	movl	(%r14), %r12d
	movq	_SUN4I_TVE_PORCH_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	movl	56(%r15), %edi
	callq	_SUN4I_TVE_PORCH_BACK
	movl	%eax, %ebx
	movl	52(%r15), %edi
	callq	_SUN4I_TVE_PORCH_FRONT
	orl	%eax, %ebx
	movl	%r12d, %edi
	movl	%r13d, %esi
	movl	%ebx, %edx
	callq	_regmap_write
	movl	(%r14), %r12d
	movq	_SUN4I_TVE_LINE_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	movl	$22, %edi
	callq	_SUN4I_TVE_LINE_FIRST
	movl	%eax, %ebx
	movl	48(%r15), %edi
	callq	_SUN4I_TVE_LINE_NUMBER
	orl	%eax, %ebx
	movl	%r12d, %edi
	movl	%r13d, %esi
	movl	%ebx, %edx
	callq	_regmap_write
	movl	(%r14), %r12d
	movq	_SUN4I_TVE_LEVEL_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	movq	40(%r15), %rax
	movl	4(%rax), %edi
	callq	_SUN4I_TVE_LEVEL_BLANK
	movl	%eax, %ebx
	movq	40(%r15), %rax
	movl	(%rax), %edi
	callq	_SUN4I_TVE_LEVEL_BLACK
	orl	%eax, %ebx
	movl	%r12d, %edi
	movl	%r13d, %esi
	movl	%ebx, %edx
	callq	_regmap_write
	movl	(%r14), %eax
	movl	%eax, -44(%rbp)                 ## 4-byte Spill
	movq	_SUN4I_TVE_DAC1_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	xorl	%edi, %edi
	movl	$24, %esi
	callq	_SUN4I_TVE_DAC1_AMPLITUDE
	movl	%eax, %ebx
	movl	$1, %edi
	movl	$24, %esi
	callq	_SUN4I_TVE_DAC1_AMPLITUDE
	orl	%eax, %ebx
	movl	$2, %edi
	movl	$24, %esi
	callq	_SUN4I_TVE_DAC1_AMPLITUDE
	movl	%eax, %r12d
	movl	$3, %edi
	movl	$24, %esi
	callq	_SUN4I_TVE_DAC1_AMPLITUDE
	orl	%eax, %r12d
	orl	%ebx, %r12d
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	movl	%r13d, %esi
	movl	%r12d, %edx
	callq	_regmap_write
	movl	(%r14), %r12d
	movq	_SUN4I_TVE_CB_CR_LVL_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	movq	32(%r15), %rax
	movl	4(%rax), %edi
	callq	_SUN4I_TVE_CB_CR_LVL_CB_BURST
	movl	%eax, %ebx
	movq	32(%r15), %rax
	movl	(%rax), %edi
	callq	_SUN4I_TVE_CB_CR_LVL_CR_BURST
	orl	%eax, %ebx
	movl	%r12d, %edi
	movl	%r13d, %esi
	movl	%ebx, %edx
	callq	_regmap_write
	movl	(%r14), %r12d
	movq	_SUN4I_TVE_BURST_WIDTH_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	movl	$126, %edi
	callq	_SUN4I_TVE_BURST_WIDTH_HSYNC_WIDTH
	movl	%eax, %ebx
	movl	$68, %edi
	callq	_SUN4I_TVE_BURST_WIDTH_BURST_WIDTH
	orl	%eax, %ebx
	movl	$22, %edi
	callq	_SUN4I_TVE_BURST_WIDTH_BREEZEWAY
	orl	%eax, %ebx
	movl	%r12d, %edi
	movl	%r13d, %esi
	movl	%ebx, %edx
	callq	_regmap_write
	movl	(%r14), %r12d
	movq	_SUN4I_TVE_CB_CR_GAIN_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	movq	24(%r15), %rax
	movl	4(%rax), %edi
	callq	_SUN4I_TVE_CB_CR_GAIN_CB
	movl	%eax, %ebx
	movq	24(%r15), %rax
	movl	(%rax), %edi
	callq	_SUN4I_TVE_CB_CR_GAIN_CR
	orl	%eax, %ebx
	movl	%r12d, %edi
	movl	%r13d, %esi
	movl	%ebx, %edx
	callq	_regmap_write
	movl	(%r14), %r12d
	movq	_SUN4I_TVE_SYNC_VBI_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	movl	$16, %edi
	callq	_SUN4I_TVE_SYNC_VBI_SYNC
	movl	%eax, %ebx
	movl	16(%r15), %edi
	callq	_SUN4I_TVE_SYNC_VBI_VBLANK
	orl	%eax, %ebx
	movl	%r12d, %edi
	movl	%r13d, %esi
	movl	%ebx, %edx
	callq	_regmap_write
	movl	(%r14), %r12d
	movq	_SUN4I_TVE_ACTIVE_LINE_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
	movl	$1440, %edi                     ## imm = 0x5A0
	callq	_SUN4I_TVE_ACTIVE_LINE
	movl	%r12d, %edi
	movl	%ebx, %esi
	movl	%eax, %edx
	callq	_regmap_write
	movl	(%r14), %edi
	movq	_SUN4I_TVE_CHROMA_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SUN4I_TVE_CHROMA_COMP_GAIN_50@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_regmap_write
	movl	(%r14), %edi
	movq	_SUN4I_TVE_12C_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SUN4I_TVE_12C_COMP_YUV_EN@GOTPCREL(%rip), %rax
	movq	_SUN4I_TVE_12C_NOTCH_WIDTH_WIDE@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	orl	(%rax), %edx
	callq	_regmap_write
	movl	(%r14), %r12d
	movq	_SUN4I_TVE_RESYNC_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	movq	8(%r15), %rax
	movl	12(%rax), %edi
	callq	_SUN4I_TVE_RESYNC_PIXEL
	movl	%eax, %ebx
	movq	8(%r15), %rax
	movl	8(%rax), %edi
	callq	_SUN4I_TVE_RESYNC_LINE
	orl	%ebx, %eax
	movq	8(%r15), %rcx
	cmpq	$0, (%rcx)
	movl	$0, %ecx
	je	LBB0_8
## %bb.7:
	movq	_SUN4I_TVE_RESYNC_FIELD@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
LBB0_8:
	orl	%ecx, %eax
	movl	%r12d, %edi
	movl	%r13d, %esi
	movl	%eax, %edx
	callq	_regmap_write
	movl	(%r14), %edi
	movq	_SUN4I_TVE_SLAVE_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	xorl	%edx, %edx
	addq	$24, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_regmap_write                   ## TAILCALL
	.cfi_endproc
                                        ## -- End function
	.comm	_SUN4I_TVE_EN_REG,4,2           ## @SUN4I_TVE_EN_REG
	.comm	_SUN4I_TVE_EN_DAC_MAP_MASK,4,2  ## @SUN4I_TVE_EN_DAC_MAP_MASK
	.comm	_SUN4I_TVE_CFG0_REG,4,2         ## @SUN4I_TVE_CFG0_REG
	.comm	_SUN4I_TVE_CFG0_YC_EN,4,2       ## @SUN4I_TVE_CFG0_YC_EN
	.comm	_SUN4I_TVE_CFG0_COMP_EN,4,2     ## @SUN4I_TVE_CFG0_COMP_EN
	.comm	_SUN4I_TVE_CFG0_DAC_CONTROL_54M,4,2 ## @SUN4I_TVE_CFG0_DAC_CONTROL_54M
	.comm	_SUN4I_TVE_CFG0_CORE_DATAPATH_54M,4,2 ## @SUN4I_TVE_CFG0_CORE_DATAPATH_54M
	.comm	_SUN4I_TVE_CFG0_CORE_CONTROL_54M,4,2 ## @SUN4I_TVE_CFG0_CORE_CONTROL_54M
	.comm	_SUN4I_TVE_DAC0_REG,4,2         ## @SUN4I_TVE_DAC0_REG
	.comm	_SUN4I_TVE_DAC0_INTERNAL_DAC_37_5_OHMS,4,2 ## @SUN4I_TVE_DAC0_INTERNAL_DAC_37_5_OHMS
	.comm	_SUN4I_TVE_DAC0_CHROMA_0_75,4,2 ## @SUN4I_TVE_DAC0_CHROMA_0_75
	.comm	_SUN4I_TVE_DAC0_LUMA_0_4,4,2    ## @SUN4I_TVE_DAC0_LUMA_0_4
	.comm	_SUN4I_TVE_DAC0_CLOCK_INVERT,4,2 ## @SUN4I_TVE_DAC0_CLOCK_INVERT
	.comm	_SUN4I_TVE_NOTCH_REG,4,2        ## @SUN4I_TVE_NOTCH_REG
	.comm	_SUN4I_TVE_CHROMA_FREQ_REG,4,2  ## @SUN4I_TVE_CHROMA_FREQ_REG
	.comm	_SUN4I_TVE_PORCH_REG,4,2        ## @SUN4I_TVE_PORCH_REG
	.comm	_SUN4I_TVE_LINE_REG,4,2         ## @SUN4I_TVE_LINE_REG
	.comm	_SUN4I_TVE_LEVEL_REG,4,2        ## @SUN4I_TVE_LEVEL_REG
	.comm	_SUN4I_TVE_DAC1_REG,4,2         ## @SUN4I_TVE_DAC1_REG
	.comm	_SUN4I_TVE_CB_CR_LVL_REG,4,2    ## @SUN4I_TVE_CB_CR_LVL_REG
	.comm	_SUN4I_TVE_BURST_WIDTH_REG,4,2  ## @SUN4I_TVE_BURST_WIDTH_REG
	.comm	_SUN4I_TVE_CB_CR_GAIN_REG,4,2   ## @SUN4I_TVE_CB_CR_GAIN_REG
	.comm	_SUN4I_TVE_SYNC_VBI_REG,4,2     ## @SUN4I_TVE_SYNC_VBI_REG
	.comm	_SUN4I_TVE_ACTIVE_LINE_REG,4,2  ## @SUN4I_TVE_ACTIVE_LINE_REG
	.comm	_SUN4I_TVE_CHROMA_REG,4,2       ## @SUN4I_TVE_CHROMA_REG
	.comm	_SUN4I_TVE_CHROMA_COMP_GAIN_50,4,2 ## @SUN4I_TVE_CHROMA_COMP_GAIN_50
	.comm	_SUN4I_TVE_12C_REG,4,2          ## @SUN4I_TVE_12C_REG
	.comm	_SUN4I_TVE_12C_COMP_YUV_EN,4,2  ## @SUN4I_TVE_12C_COMP_YUV_EN
	.comm	_SUN4I_TVE_12C_NOTCH_WIDTH_WIDE,4,2 ## @SUN4I_TVE_12C_NOTCH_WIDTH_WIDE
	.comm	_SUN4I_TVE_RESYNC_REG,4,2       ## @SUN4I_TVE_RESYNC_REG
	.comm	_SUN4I_TVE_RESYNC_FIELD,4,2     ## @SUN4I_TVE_RESYNC_FIELD
	.comm	_SUN4I_TVE_SLAVE_REG,4,2        ## @SUN4I_TVE_SLAVE_REG
	.no_dead_strip	_sun4i_tv_mode_set
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function sun4i_tv_mode_set
_sun4i_tv_mode_set:                     ; @sun4i_tv_mode_set
	.cfi_startproc
; %bb.0:
	stp	x28, x27, [sp, #-96]!           ; 16-byte Folded Spill
	.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
	.cfi_offset w27, -88
	.cfi_offset w28, -96
	mov	x20, x1
	bl	_drm_encoder_to_sun4i_tv
	mov	x19, x0
	mov	x0, x20
	bl	_sun4i_tv_find_tv_by_mode
	mov	x20, x0
	ldr	w21, [x19]
Lloh0:
	adrp	x8, _SUN4I_TVE_EN_REG@GOTPAGE
Lloh1:
	ldr	x8, [x8, _SUN4I_TVE_EN_REG@GOTPAGEOFF]
Lloh2:
	ldr	w22, [x8]
Lloh3:
	adrp	x8, _SUN4I_TVE_EN_DAC_MAP_MASK@GOTPAGE
Lloh4:
	ldr	x8, [x8, _SUN4I_TVE_EN_DAC_MAP_MASK@GOTPAGEOFF]
Lloh5:
	ldr	w23, [x8]
	mov	w0, #0
	mov	w1, #1
	bl	_SUN4I_TVE_EN_DAC_MAP
	mov	x24, x0
	mov	w0, #1
	mov	w1, #2
	bl	_SUN4I_TVE_EN_DAC_MAP
	orr	w24, w0, w24
	mov	w0, #2
	mov	w1, #3
	bl	_SUN4I_TVE_EN_DAC_MAP
	orr	w24, w24, w0
	mov	w0, #3
	mov	w1, #4
	bl	_SUN4I_TVE_EN_DAC_MAP
	orr	w3, w24, w0
	mov	x0, x21
	mov	x1, x22
	mov	x2, x23
	bl	_regmap_update_bits
	ldr	w0, [x19]
Lloh6:
	adrp	x8, _SUN4I_TVE_CFG0_REG@GOTPAGE
Lloh7:
	ldr	x8, [x8, _SUN4I_TVE_CFG0_REG@GOTPAGEOFF]
Lloh8:
	ldr	w1, [x8]
	ldr	w8, [x20]
	ldr	x9, [x20, #80]
Lloh9:
	adrp	x10, _SUN4I_TVE_CFG0_YC_EN@GOTPAGE
Lloh10:
	ldr	x10, [x10, _SUN4I_TVE_CFG0_YC_EN@GOTPAGEOFF]
Lloh11:
	ldr	w10, [x10]
	cmp	x9, #0
	csel	w9, wzr, w10, eq
	orr	w8, w9, w8
Lloh12:
	adrp	x9, _SUN4I_TVE_CFG0_COMP_EN@GOTPAGE
Lloh13:
	ldr	x9, [x9, _SUN4I_TVE_CFG0_COMP_EN@GOTPAGEOFF]
Lloh14:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh15:
	adrp	x9, _SUN4I_TVE_CFG0_DAC_CONTROL_54M@GOTPAGE
Lloh16:
	ldr	x9, [x9, _SUN4I_TVE_CFG0_DAC_CONTROL_54M@GOTPAGEOFF]
Lloh17:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh18:
	adrp	x9, _SUN4I_TVE_CFG0_CORE_DATAPATH_54M@GOTPAGE
Lloh19:
	ldr	x9, [x9, _SUN4I_TVE_CFG0_CORE_DATAPATH_54M@GOTPAGEOFF]
Lloh20:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh21:
	adrp	x9, _SUN4I_TVE_CFG0_CORE_CONTROL_54M@GOTPAGE
Lloh22:
	ldr	x9, [x9, _SUN4I_TVE_CFG0_CORE_CONTROL_54M@GOTPAGEOFF]
Lloh23:
	ldr	w9, [x9]
	orr	w2, w8, w9
	bl	_regmap_write
	ldr	w21, [x19]
Lloh24:
	adrp	x8, _SUN4I_TVE_DAC0_REG@GOTPAGE
Lloh25:
	ldr	x8, [x8, _SUN4I_TVE_DAC0_REG@GOTPAGEOFF]
Lloh26:
	ldr	w22, [x8]
	mov	w0, #0
	bl	_SUN4I_TVE_DAC0_DAC_EN
	mov	x23, x0
	ldr	x8, [x20, #72]
	cbz	x8, LBB0_2
; %bb.1:
	mov	w0, #3
	bl	_SUN4I_TVE_DAC0_DAC_EN
	mov	x24, x0
	b	LBB0_3
LBB0_2:
	mov	w24, #0
LBB0_3:
Lloh27:
	adrp	x8, _SUN4I_TVE_DAC0_INTERNAL_DAC_37_5_OHMS@GOTPAGE
Lloh28:
	ldr	x8, [x8, _SUN4I_TVE_DAC0_INTERNAL_DAC_37_5_OHMS@GOTPAGEOFF]
Lloh29:
	ldr	w25, [x8]
Lloh30:
	adrp	x8, _SUN4I_TVE_DAC0_CHROMA_0_75@GOTPAGE
Lloh31:
	ldr	x8, [x8, _SUN4I_TVE_DAC0_CHROMA_0_75@GOTPAGEOFF]
Lloh32:
	adrp	x9, _SUN4I_TVE_DAC0_LUMA_0_4@GOTPAGE
Lloh33:
	ldr	x9, [x9, _SUN4I_TVE_DAC0_LUMA_0_4@GOTPAGEOFF]
Lloh34:
	ldr	w27, [x8]
Lloh35:
	ldr	w26, [x9]
Lloh36:
	adrp	x8, _SUN4I_TVE_DAC0_CLOCK_INVERT@GOTPAGE
Lloh37:
	ldr	x8, [x8, _SUN4I_TVE_DAC0_CLOCK_INVERT@GOTPAGEOFF]
Lloh38:
	ldr	w28, [x8]
	ldr	x8, [x20, #64]
	cbz	x8, LBB0_5
; %bb.4:
	mov	w0, #25
	bl	_BIT
	b	LBB0_6
LBB0_5:
	mov	w0, #0
LBB0_6:
	orr	w8, w24, w23
	orr	w8, w8, w25
	orr	w8, w8, w27
	orr	w8, w8, w26
	orr	w8, w8, w28
	orr	w23, w8, w0
	mov	w0, #30
	bl	_BIT
	orr	w2, w23, w0
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w21, [x19]
Lloh39:
	adrp	x8, _SUN4I_TVE_NOTCH_REG@GOTPAGE
Lloh40:
	ldr	x8, [x8, _SUN4I_TVE_NOTCH_REG@GOTPAGEOFF]
Lloh41:
	ldr	w22, [x8]
	mov	w0, #1
	mov	w1, #0
	bl	_SUN4I_TVE_NOTCH_DAC0_TO_DAC_DLY
	mov	x23, x0
	mov	w0, #2
	mov	w1, #0
	bl	_SUN4I_TVE_NOTCH_DAC0_TO_DAC_DLY
	orr	w2, w0, w23
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w0, [x19]
Lloh42:
	adrp	x8, _SUN4I_TVE_CHROMA_FREQ_REG@GOTPAGE
Lloh43:
	ldr	x8, [x8, _SUN4I_TVE_CHROMA_FREQ_REG@GOTPAGEOFF]
Lloh44:
	ldr	w1, [x8]
	ldr	w2, [x20, #4]
	bl	_regmap_write
	ldr	w21, [x19]
Lloh45:
	adrp	x8, _SUN4I_TVE_PORCH_REG@GOTPAGE
Lloh46:
	ldr	x8, [x8, _SUN4I_TVE_PORCH_REG@GOTPAGEOFF]
Lloh47:
	ldr	w22, [x8]
	ldr	w0, [x20, #56]
	bl	_SUN4I_TVE_PORCH_BACK
	mov	x23, x0
	ldr	w0, [x20, #52]
	bl	_SUN4I_TVE_PORCH_FRONT
	orr	w2, w0, w23
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w21, [x19]
Lloh48:
	adrp	x8, _SUN4I_TVE_LINE_REG@GOTPAGE
Lloh49:
	ldr	x8, [x8, _SUN4I_TVE_LINE_REG@GOTPAGEOFF]
Lloh50:
	ldr	w22, [x8]
	mov	w0, #22
	bl	_SUN4I_TVE_LINE_FIRST
	mov	x23, x0
	ldr	w0, [x20, #48]
	bl	_SUN4I_TVE_LINE_NUMBER
	orr	w2, w0, w23
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w21, [x19]
Lloh51:
	adrp	x8, _SUN4I_TVE_LEVEL_REG@GOTPAGE
Lloh52:
	ldr	x8, [x8, _SUN4I_TVE_LEVEL_REG@GOTPAGEOFF]
Lloh53:
	ldr	w22, [x8]
	ldr	x8, [x20, #40]
	ldr	w0, [x8, #4]
	bl	_SUN4I_TVE_LEVEL_BLANK
	mov	x23, x0
	ldr	x8, [x20, #40]
	ldr	w0, [x8]
	bl	_SUN4I_TVE_LEVEL_BLACK
	orr	w2, w0, w23
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w21, [x19]
Lloh54:
	adrp	x8, _SUN4I_TVE_DAC1_REG@GOTPAGE
Lloh55:
	ldr	x8, [x8, _SUN4I_TVE_DAC1_REG@GOTPAGEOFF]
Lloh56:
	ldr	w22, [x8]
	mov	w0, #0
	mov	w1, #24
	bl	_SUN4I_TVE_DAC1_AMPLITUDE
	mov	x23, x0
	mov	w0, #1
	mov	w1, #24
	bl	_SUN4I_TVE_DAC1_AMPLITUDE
	orr	w23, w0, w23
	mov	w0, #2
	mov	w1, #24
	bl	_SUN4I_TVE_DAC1_AMPLITUDE
	orr	w23, w23, w0
	mov	w0, #3
	mov	w1, #24
	bl	_SUN4I_TVE_DAC1_AMPLITUDE
	orr	w2, w23, w0
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w21, [x19]
Lloh57:
	adrp	x8, _SUN4I_TVE_CB_CR_LVL_REG@GOTPAGE
Lloh58:
	ldr	x8, [x8, _SUN4I_TVE_CB_CR_LVL_REG@GOTPAGEOFF]
Lloh59:
	ldr	w22, [x8]
	ldr	x8, [x20, #32]
	ldr	w0, [x8, #4]
	bl	_SUN4I_TVE_CB_CR_LVL_CB_BURST
	mov	x23, x0
	ldr	x8, [x20, #32]
	ldr	w0, [x8]
	bl	_SUN4I_TVE_CB_CR_LVL_CR_BURST
	orr	w2, w0, w23
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w21, [x19]
Lloh60:
	adrp	x8, _SUN4I_TVE_BURST_WIDTH_REG@GOTPAGE
Lloh61:
	ldr	x8, [x8, _SUN4I_TVE_BURST_WIDTH_REG@GOTPAGEOFF]
Lloh62:
	ldr	w22, [x8]
	mov	w0, #126
	bl	_SUN4I_TVE_BURST_WIDTH_HSYNC_WIDTH
	mov	x23, x0
	mov	w0, #68
	bl	_SUN4I_TVE_BURST_WIDTH_BURST_WIDTH
	orr	w23, w0, w23
	mov	w0, #22
	bl	_SUN4I_TVE_BURST_WIDTH_BREEZEWAY
	orr	w2, w23, w0
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w21, [x19]
Lloh63:
	adrp	x8, _SUN4I_TVE_CB_CR_GAIN_REG@GOTPAGE
Lloh64:
	ldr	x8, [x8, _SUN4I_TVE_CB_CR_GAIN_REG@GOTPAGEOFF]
Lloh65:
	ldr	w22, [x8]
	ldr	x8, [x20, #24]
	ldr	w0, [x8, #4]
	bl	_SUN4I_TVE_CB_CR_GAIN_CB
	mov	x23, x0
	ldr	x8, [x20, #24]
	ldr	w0, [x8]
	bl	_SUN4I_TVE_CB_CR_GAIN_CR
	orr	w2, w0, w23
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w21, [x19]
Lloh66:
	adrp	x8, _SUN4I_TVE_SYNC_VBI_REG@GOTPAGE
Lloh67:
	ldr	x8, [x8, _SUN4I_TVE_SYNC_VBI_REG@GOTPAGEOFF]
Lloh68:
	ldr	w22, [x8]
	mov	w0, #16
	bl	_SUN4I_TVE_SYNC_VBI_SYNC
	mov	x23, x0
	ldr	w0, [x20, #16]
	bl	_SUN4I_TVE_SYNC_VBI_VBLANK
	orr	w2, w0, w23
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w21, [x19]
Lloh69:
	adrp	x8, _SUN4I_TVE_ACTIVE_LINE_REG@GOTPAGE
Lloh70:
	ldr	x8, [x8, _SUN4I_TVE_ACTIVE_LINE_REG@GOTPAGEOFF]
Lloh71:
	ldr	w22, [x8]
	mov	w0, #1440
	bl	_SUN4I_TVE_ACTIVE_LINE
	mov	x2, x0
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w0, [x19]
Lloh72:
	adrp	x8, _SUN4I_TVE_CHROMA_REG@GOTPAGE
Lloh73:
	ldr	x8, [x8, _SUN4I_TVE_CHROMA_REG@GOTPAGEOFF]
Lloh74:
	ldr	w1, [x8]
Lloh75:
	adrp	x8, _SUN4I_TVE_CHROMA_COMP_GAIN_50@GOTPAGE
Lloh76:
	ldr	x8, [x8, _SUN4I_TVE_CHROMA_COMP_GAIN_50@GOTPAGEOFF]
Lloh77:
	ldr	w2, [x8]
	bl	_regmap_write
	ldr	w0, [x19]
Lloh78:
	adrp	x8, _SUN4I_TVE_12C_REG@GOTPAGE
Lloh79:
	ldr	x8, [x8, _SUN4I_TVE_12C_REG@GOTPAGEOFF]
Lloh80:
	adrp	x9, _SUN4I_TVE_12C_COMP_YUV_EN@GOTPAGE
Lloh81:
	ldr	x9, [x9, _SUN4I_TVE_12C_COMP_YUV_EN@GOTPAGEOFF]
Lloh82:
	ldr	w1, [x8]
Lloh83:
	ldr	w8, [x9]
Lloh84:
	adrp	x9, _SUN4I_TVE_12C_NOTCH_WIDTH_WIDE@GOTPAGE
Lloh85:
	ldr	x9, [x9, _SUN4I_TVE_12C_NOTCH_WIDTH_WIDE@GOTPAGEOFF]
Lloh86:
	ldr	w9, [x9]
	orr	w2, w9, w8
	bl	_regmap_write
	ldr	w21, [x19]
Lloh87:
	adrp	x8, _SUN4I_TVE_RESYNC_REG@GOTPAGE
Lloh88:
	ldr	x8, [x8, _SUN4I_TVE_RESYNC_REG@GOTPAGEOFF]
Lloh89:
	ldr	w22, [x8]
	ldr	x8, [x20, #8]
	ldr	w0, [x8, #12]
	bl	_SUN4I_TVE_RESYNC_PIXEL
	mov	x23, x0
	ldr	x8, [x20, #8]
	ldr	w0, [x8, #8]
	bl	_SUN4I_TVE_RESYNC_LINE
	orr	w8, w0, w23
	ldr	x9, [x20, #8]
	ldr	x9, [x9]
Lloh90:
	adrp	x10, _SUN4I_TVE_RESYNC_FIELD@GOTPAGE
Lloh91:
	ldr	x10, [x10, _SUN4I_TVE_RESYNC_FIELD@GOTPAGEOFF]
Lloh92:
	ldr	w10, [x10]
	cmp	x9, #0
	csel	w9, wzr, w10, eq
	orr	w2, w8, w9
	mov	x0, x21
	mov	x1, x22
	bl	_regmap_write
	ldr	w0, [x19]
Lloh93:
	adrp	x8, _SUN4I_TVE_SLAVE_REG@GOTPAGE
Lloh94:
	ldr	x8, [x8, _SUN4I_TVE_SLAVE_REG@GOTPAGEOFF]
Lloh95:
	ldr	w1, [x8]
	mov	w2, #0
	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
	ldp	x28, x27, [sp], #96             ; 16-byte Folded Reload
	b	_regmap_write
	.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	Lloh36, Lloh37, Lloh38
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh35
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh34
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh93, Lloh94, Lloh95
	.loh AdrpLdrGotLdr	Lloh90, Lloh91, Lloh92
	.loh AdrpLdrGotLdr	Lloh87, Lloh88, Lloh89
	.loh AdrpLdrGotLdr	Lloh84, Lloh85, Lloh86
	.loh AdrpLdrGotLdr	Lloh80, Lloh81, Lloh83
	.loh AdrpLdrGotLdr	Lloh78, Lloh79, Lloh82
	.loh AdrpLdrGotLdr	Lloh75, Lloh76, Lloh77
	.loh AdrpLdrGotLdr	Lloh72, Lloh73, Lloh74
	.loh AdrpLdrGotLdr	Lloh69, Lloh70, Lloh71
	.loh AdrpLdrGotLdr	Lloh66, Lloh67, Lloh68
	.loh AdrpLdrGotLdr	Lloh63, Lloh64, Lloh65
	.loh AdrpLdrGotLdr	Lloh60, Lloh61, Lloh62
	.loh AdrpLdrGotLdr	Lloh57, Lloh58, Lloh59
	.loh AdrpLdrGotLdr	Lloh54, Lloh55, Lloh56
	.loh AdrpLdrGotLdr	Lloh51, Lloh52, Lloh53
	.loh AdrpLdrGotLdr	Lloh48, Lloh49, Lloh50
	.loh AdrpLdrGotLdr	Lloh45, Lloh46, Lloh47
	.loh AdrpLdrGotLdr	Lloh42, Lloh43, Lloh44
	.loh AdrpLdrGotLdr	Lloh39, Lloh40, Lloh41
	.cfi_endproc
                                        ; -- End function
	.comm	_SUN4I_TVE_EN_REG,4,2           ; @SUN4I_TVE_EN_REG
	.comm	_SUN4I_TVE_EN_DAC_MAP_MASK,4,2  ; @SUN4I_TVE_EN_DAC_MAP_MASK
	.comm	_SUN4I_TVE_CFG0_REG,4,2         ; @SUN4I_TVE_CFG0_REG
	.comm	_SUN4I_TVE_CFG0_YC_EN,4,2       ; @SUN4I_TVE_CFG0_YC_EN
	.comm	_SUN4I_TVE_CFG0_COMP_EN,4,2     ; @SUN4I_TVE_CFG0_COMP_EN
	.comm	_SUN4I_TVE_CFG0_DAC_CONTROL_54M,4,2 ; @SUN4I_TVE_CFG0_DAC_CONTROL_54M
	.comm	_SUN4I_TVE_CFG0_CORE_DATAPATH_54M,4,2 ; @SUN4I_TVE_CFG0_CORE_DATAPATH_54M
	.comm	_SUN4I_TVE_CFG0_CORE_CONTROL_54M,4,2 ; @SUN4I_TVE_CFG0_CORE_CONTROL_54M
	.comm	_SUN4I_TVE_DAC0_REG,4,2         ; @SUN4I_TVE_DAC0_REG
	.comm	_SUN4I_TVE_DAC0_INTERNAL_DAC_37_5_OHMS,4,2 ; @SUN4I_TVE_DAC0_INTERNAL_DAC_37_5_OHMS
	.comm	_SUN4I_TVE_DAC0_CHROMA_0_75,4,2 ; @SUN4I_TVE_DAC0_CHROMA_0_75
	.comm	_SUN4I_TVE_DAC0_LUMA_0_4,4,2    ; @SUN4I_TVE_DAC0_LUMA_0_4
	.comm	_SUN4I_TVE_DAC0_CLOCK_INVERT,4,2 ; @SUN4I_TVE_DAC0_CLOCK_INVERT
	.comm	_SUN4I_TVE_NOTCH_REG,4,2        ; @SUN4I_TVE_NOTCH_REG
	.comm	_SUN4I_TVE_CHROMA_FREQ_REG,4,2  ; @SUN4I_TVE_CHROMA_FREQ_REG
	.comm	_SUN4I_TVE_PORCH_REG,4,2        ; @SUN4I_TVE_PORCH_REG
	.comm	_SUN4I_TVE_LINE_REG,4,2         ; @SUN4I_TVE_LINE_REG
	.comm	_SUN4I_TVE_LEVEL_REG,4,2        ; @SUN4I_TVE_LEVEL_REG
	.comm	_SUN4I_TVE_DAC1_REG,4,2         ; @SUN4I_TVE_DAC1_REG
	.comm	_SUN4I_TVE_CB_CR_LVL_REG,4,2    ; @SUN4I_TVE_CB_CR_LVL_REG
	.comm	_SUN4I_TVE_BURST_WIDTH_REG,4,2  ; @SUN4I_TVE_BURST_WIDTH_REG
	.comm	_SUN4I_TVE_CB_CR_GAIN_REG,4,2   ; @SUN4I_TVE_CB_CR_GAIN_REG
	.comm	_SUN4I_TVE_SYNC_VBI_REG,4,2     ; @SUN4I_TVE_SYNC_VBI_REG
	.comm	_SUN4I_TVE_ACTIVE_LINE_REG,4,2  ; @SUN4I_TVE_ACTIVE_LINE_REG
	.comm	_SUN4I_TVE_CHROMA_REG,4,2       ; @SUN4I_TVE_CHROMA_REG
	.comm	_SUN4I_TVE_CHROMA_COMP_GAIN_50,4,2 ; @SUN4I_TVE_CHROMA_COMP_GAIN_50
	.comm	_SUN4I_TVE_12C_REG,4,2          ; @SUN4I_TVE_12C_REG
	.comm	_SUN4I_TVE_12C_COMP_YUV_EN,4,2  ; @SUN4I_TVE_12C_COMP_YUV_EN
	.comm	_SUN4I_TVE_12C_NOTCH_WIDTH_WIDE,4,2 ; @SUN4I_TVE_12C_NOTCH_WIDTH_WIDE
	.comm	_SUN4I_TVE_RESYNC_REG,4,2       ; @SUN4I_TVE_RESYNC_REG
	.comm	_SUN4I_TVE_RESYNC_FIELD,4,2     ; @SUN4I_TVE_RESYNC_FIELD
	.comm	_SUN4I_TVE_SLAVE_REG,4,2        ; @SUN4I_TVE_SLAVE_REG
	.no_dead_strip	_sun4i_tv_mode_set
.subsections_via_symbols
