	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_snd_ak4117_check_rate_and_errors ## -- Begin function snd_ak4117_check_rate_and_errors
	.p2align	4, 0x90
_snd_ak4117_check_rate_and_errors:      ## @snd_ak4117_check_rate_and_errors
	.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	$40, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	%esi, %ebx
	movq	%rdi, %r12
	movq	16(%rdi), %rax
	testq	%rax, %rax
	je	LBB0_1
## %bb.2:
	movq	(%rax), %r15
	jmp	LBB0_3
LBB0_1:
	xorl	%r15d, %r15d
LBB0_3:
	movq	_AK4117_REG_RCS1@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r12, %rdi
	callq	_reg_read
	movq	_AK4117_CHECK_NO_STAT@GOTPCREL(%rip), %rcx
	movzbl	%al, %edi
	movl	%ebx, -52(%rbp)                 ## 4-byte Spill
	testl	%ebx, (%rcx)
	jne	LBB0_35
## %bb.4:
	movl	%edi, -48(%rbp)                 ## 4-byte Spill
	movq	_AK4117_REG_RCS0@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r12, %rdi
	callq	_reg_read
	movl	%eax, %r14d
	movq	_AK4117_REG_RCS2@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r12, %rdi
	callq	_reg_read
	movb	%al, -41(%rbp)                  ## 1-byte Spill
	leaq	44(%r12), %rdi
	movq	%rdi, -64(%rbp)                 ## 8-byte Spill
	callq	_spin_lock_irqsave
	movq	_AK4117_PAR@GOTPCREL(%rip), %rax
	testb	%r14b, (%rax)
	je	LBB0_6
## %bb.5:
	incl	60(%r12)
LBB0_6:
	movq	_AK4117_V@GOTPCREL(%rip), %rax
	testb	%r14b, (%rax)
	je	LBB0_8
## %bb.7:
	incl	56(%r12)
LBB0_8:
	movq	_AK4117_CCRC@GOTPCREL(%rip), %rax
	movb	-41(%rbp), %dl                  ## 1-byte Reload
	testb	%dl, (%rax)
	movl	-48(%rbp), %esi                 ## 4-byte Reload
	je	LBB0_10
## %bb.9:
	incl	52(%r12)
LBB0_10:
	movq	%r15, -72(%rbp)                 ## 8-byte Spill
	movq	_AK4117_QCRC@GOTPCREL(%rip), %rax
	testb	%dl, (%rax)
	je	LBB0_12
## %bb.11:
	incl	48(%r12)
LBB0_12:
	movq	_AK4117_QINT@GOTPCREL(%rip), %rcx
	movq	_AK4117_CINT@GOTPCREL(%rip), %rax
	movb	(%rax), %al
	orb	(%rcx), %al
	movq	_AK4117_STC@GOTPCREL(%rip), %rcx
	orb	(%rcx), %al
	movq	_AK4117_AUDION@GOTPCREL(%rip), %rcx
	movb	(%rcx), %r15b
	orb	%al, %r15b
	movq	_AK4117_AUTO@GOTPCREL(%rip), %rcx
	orb	(%rcx), %r15b
	movq	_AK4117_UNLCK@GOTPCREL(%rip), %rcx
	orb	(%rcx), %r15b
	movb	(%r12), %bl
	movq	_AK4117_DTSCD@GOTPCREL(%rip), %rcx
	movl	(%rcx), %r13d
	movq	_AK4117_NPCM@GOTPCREL(%rip), %rcx
	movq	_AK4117_PEM@GOTPCREL(%rip), %rdi
	orl	(%rcx), %r13d
	orl	(%rdi), %r13d
	xorb	%r14b, %bl
	movb	%bl, -42(%rbp)                  ## 1-byte Spill
	movl	4(%r12), %ebx
	xorl	%esi, %ebx
	notb	%al
	movl	%r14d, %ecx
	andb	%al, %cl
	movb	%cl, (%r12)
	movl	%esi, 4(%r12)
	movb	%dl, 8(%r12)
	movq	-64(%rbp), %rdi                 ## 8-byte Reload
	callq	_spin_unlock_irqrestore
	movq	_AK4117_PAR@GOTPCREL(%rip), %rax
	testb	%r14b, (%rax)
	je	LBB0_14
## %bb.13:
	movl	40(%r12), %edi
	movq	_SNDRV_CTL_EVENT_MASK_VALUE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	32(%r12), %rax
	movq	(%rax), %rdx
	callq	_snd_ctl_notify
LBB0_14:
	movq	_AK4117_V@GOTPCREL(%rip), %rax
	testb	%r14b, (%rax)
	je	LBB0_16
## %bb.15:
	movl	40(%r12), %edi
	movq	_SNDRV_CTL_EVENT_MASK_VALUE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	32(%r12), %rax
	movq	8(%rax), %rdx
	callq	_snd_ctl_notify
LBB0_16:
	orl	$15, %r13d
	movb	-41(%rbp), %al                  ## 1-byte Reload
	movq	_AK4117_CCRC@GOTPCREL(%rip), %rcx
	testb	%al, (%rcx)
	je	LBB0_18
## %bb.17:
	movl	40(%r12), %edi
	movq	_SNDRV_CTL_EVENT_MASK_VALUE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	32(%r12), %rax
	movq	16(%rax), %rdx
	callq	_snd_ctl_notify
	movb	-41(%rbp), %al                  ## 1-byte Reload
LBB0_18:
	andl	%ebx, %r13d
	movq	_AK4117_QCRC@GOTPCREL(%rip), %rcx
	testb	%al, (%rcx)
	je	LBB0_20
## %bb.19:
	movl	40(%r12), %edi
	movq	_SNDRV_CTL_EVENT_MASK_VALUE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	32(%r12), %rax
	movq	24(%rax), %rdx
	callq	_snd_ctl_notify
LBB0_20:
	andb	-42(%rbp), %r15b                ## 1-byte Folded Reload
	movzbl	%r13b, %r14d
	testb	$15, %bl
	je	LBB0_22
## %bb.21:
	movl	40(%r12), %edi
	movq	_SNDRV_CTL_EVENT_MASK_VALUE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	32(%r12), %rax
	movq	32(%rax), %rdx
	callq	_snd_ctl_notify
LBB0_22:
	movq	_AK4117_PEM@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	andl	%r14d, %eax
	movzbl	%r15b, %ebx
	movq	_AK4117_CINT@GOTPCREL(%rip), %rcx
	movzbl	(%rcx), %ecx
	andl	%ebx, %ecx
	orl	%eax, %ecx
	je	LBB0_24
## %bb.23:
	movl	40(%r12), %edi
	movq	_SNDRV_CTL_EVENT_MASK_VALUE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	32(%r12), %rax
	movq	48(%rax), %rdx
	callq	_snd_ctl_notify
LBB0_24:
	movq	_AK4117_QINT@GOTPCREL(%rip), %rax
	testb	%r15b, (%rax)
	je	LBB0_26
## %bb.25:
	movl	40(%r12), %edi
	movq	_SNDRV_CTL_EVENT_MASK_VALUE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	32(%r12), %rax
	movq	64(%rax), %rdx
	callq	_snd_ctl_notify
LBB0_26:
	movq	_AK4117_AUDION@GOTPCREL(%rip), %rax
	testb	%r15b, (%rax)
	je	LBB0_28
## %bb.27:
	movl	40(%r12), %edi
	movq	_SNDRV_CTL_EVENT_MASK_VALUE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	32(%r12), %rax
	movq	72(%rax), %rdx
	callq	_snd_ctl_notify
LBB0_28:
	movq	_AK4117_NPCM@GOTPCREL(%rip), %rax
	testl	%r14d, (%rax)
	movq	-72(%rbp), %r15                 ## 8-byte Reload
	je	LBB0_30
## %bb.29:
	movl	40(%r12), %edi
	movq	_SNDRV_CTL_EVENT_MASK_VALUE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	32(%r12), %rax
	movq	80(%rax), %rdx
	callq	_snd_ctl_notify
LBB0_30:
	movq	_AK4117_DTSCD@GOTPCREL(%rip), %rax
	testl	%r14d, (%rax)
	je	LBB0_32
## %bb.31:
	movl	40(%r12), %edi
	movq	_SNDRV_CTL_EVENT_MASK_VALUE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	32(%r12), %rax
	movq	88(%rax), %rdx
	callq	_snd_ctl_notify
LBB0_32:
	movq	24(%r12), %rax
	testq	%rax, %rax
	movl	-48(%rbp), %edi                 ## 4-byte Reload
	je	LBB0_35
## %bb.33:
	orl	%ebx, %r14d
	je	LBB0_35
## %bb.34:
	movzbl	%r13b, %edx
	movq	%r12, %rdi
	movl	%ebx, %esi
	callq	*%rax
	movl	-48(%rbp), %edi                 ## 4-byte Reload
LBB0_35:
	callq	_external_rate
	movl	%eax, %ebx
	movq	_AK4117_CHECK_NO_RATE@GOTPCREL(%rip), %rax
	movl	-52(%rbp), %ecx                 ## 4-byte Reload
	testl	%ecx, (%rax)
	jne	LBB0_41
## %bb.36:
	testq	%r15, %r15
	je	LBB0_41
## %bb.37:
	cmpl	%ebx, (%r15)
	je	LBB0_41
## %bb.38:
	movq	16(%r12), %rdi
	callq	_snd_pcm_stream_lock_irqsave
	movq	16(%r12), %rdi
	callq	_snd_pcm_running
	testq	%rax, %rax
	je	LBB0_40
## %bb.39:
	movq	16(%r12), %rdi
	movq	_SNDRV_PCM_STATE_DRAINING@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_snd_pcm_stop
	addq	$4, %r15
	movq	%r15, %rdi
	callq	_wake_up
	movl	$1, %ebx
LBB0_40:
	movq	16(%r12), %rdi
	callq	_snd_pcm_stream_unlock_irqrestore
LBB0_41:
	movl	%ebx, %eax
	addq	$40, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_AK4117_REG_RCS1,4,2            ## @AK4117_REG_RCS1
	.comm	_AK4117_CHECK_NO_STAT,4,2       ## @AK4117_CHECK_NO_STAT
	.comm	_AK4117_REG_RCS0,4,2            ## @AK4117_REG_RCS0
	.comm	_AK4117_REG_RCS2,4,2            ## @AK4117_REG_RCS2
	.comm	_AK4117_PAR,1,0                 ## @AK4117_PAR
	.comm	_AK4117_V,1,0                   ## @AK4117_V
	.comm	_AK4117_CCRC,1,0                ## @AK4117_CCRC
	.comm	_AK4117_QCRC,1,0                ## @AK4117_QCRC
	.comm	_AK4117_QINT,1,0                ## @AK4117_QINT
	.comm	_AK4117_CINT,1,0                ## @AK4117_CINT
	.comm	_AK4117_STC,1,0                 ## @AK4117_STC
	.comm	_AK4117_AUDION,1,0              ## @AK4117_AUDION
	.comm	_AK4117_AUTO,1,0                ## @AK4117_AUTO
	.comm	_AK4117_UNLCK,1,0               ## @AK4117_UNLCK
	.comm	_AK4117_DTSCD,4,2               ## @AK4117_DTSCD
	.comm	_AK4117_NPCM,4,2                ## @AK4117_NPCM
	.comm	_AK4117_PEM,4,2                 ## @AK4117_PEM
	.comm	_SNDRV_CTL_EVENT_MASK_VALUE,4,2 ## @SNDRV_CTL_EVENT_MASK_VALUE
	.comm	_AK4117_CHECK_NO_RATE,4,2       ## @AK4117_CHECK_NO_RATE
	.comm	_SNDRV_PCM_STATE_DRAINING,4,2   ## @SNDRV_PCM_STATE_DRAINING
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_snd_ak4117_check_rate_and_errors ; -- Begin function snd_ak4117_check_rate_and_errors
	.p2align	2
_snd_ak4117_check_rate_and_errors:      ; @snd_ak4117_check_rate_and_errors
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #128
	.cfi_def_cfa_offset 128
	stp	x28, x27, [sp, #32]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #48]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #64]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #80]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #96]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #112]            ; 16-byte Folded Spill
	add	x29, sp, #112
	.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	x24, x1
	mov	x19, x0
	ldr	x8, [x0, #16]
	cbz	x8, LBB0_2
; %bb.1:
	ldr	x20, [x8]
	b	LBB0_3
LBB0_2:
	mov	x20, #0
LBB0_3:
Lloh0:
	adrp	x8, _AK4117_REG_RCS1@GOTPAGE
Lloh1:
	ldr	x8, [x8, _AK4117_REG_RCS1@GOTPAGEOFF]
Lloh2:
	ldr	w1, [x8]
	mov	x0, x19
	bl	_reg_read
	mov	x27, x0
Lloh3:
	adrp	x8, _AK4117_CHECK_NO_STAT@GOTPAGE
Lloh4:
	ldr	x8, [x8, _AK4117_CHECK_NO_STAT@GOTPAGEOFF]
Lloh5:
	ldr	w8, [x8]
	tst	w8, w24
	b.ne	LBB0_35
; %bb.4:
	str	w24, [sp, #20]                  ; 4-byte Folded Spill
Lloh6:
	adrp	x8, _AK4117_REG_RCS0@GOTPAGE
Lloh7:
	ldr	x8, [x8, _AK4117_REG_RCS0@GOTPAGEOFF]
Lloh8:
	ldr	w1, [x8]
	mov	x0, x19
	bl	_reg_read
	mov	x22, x0
Lloh9:
	adrp	x8, _AK4117_REG_RCS2@GOTPAGE
Lloh10:
	ldr	x8, [x8, _AK4117_REG_RCS2@GOTPAGEOFF]
Lloh11:
	ldr	w1, [x8]
	mov	x0, x19
	bl	_reg_read
	mov	x23, x0
	add	x24, x19, #44
	mov	x0, x24
	bl	_spin_lock_irqsave
Lloh12:
	adrp	x8, _AK4117_PAR@GOTPAGE
Lloh13:
	ldr	x8, [x8, _AK4117_PAR@GOTPAGEOFF]
	ldrb	w8, [x8]
	tst	w8, w22
	b.eq	LBB0_6
; %bb.5:
	ldr	w8, [x19, #60]
	add	w8, w8, #1
	str	w8, [x19, #60]
LBB0_6:
Lloh14:
	adrp	x8, _AK4117_V@GOTPAGE
Lloh15:
	ldr	x8, [x8, _AK4117_V@GOTPAGEOFF]
	ldrb	w8, [x8]
	tst	w8, w22
	b.eq	LBB0_8
; %bb.7:
	ldr	w8, [x19, #56]
	add	w8, w8, #1
	str	w8, [x19, #56]
LBB0_8:
Lloh16:
	adrp	x8, _AK4117_CCRC@GOTPAGE
Lloh17:
	ldr	x8, [x8, _AK4117_CCRC@GOTPAGEOFF]
	ldrb	w8, [x8]
	tst	w8, w23
	b.eq	LBB0_10
; %bb.9:
	ldr	w8, [x19, #52]
	add	w8, w8, #1
	str	w8, [x19, #52]
LBB0_10:
	str	x20, [sp, #24]                  ; 8-byte Folded Spill
Lloh18:
	adrp	x8, _AK4117_QCRC@GOTPAGE
Lloh19:
	ldr	x8, [x8, _AK4117_QCRC@GOTPAGEOFF]
	ldrb	w8, [x8]
	tst	w8, w23
	b.eq	LBB0_12
; %bb.11:
	ldr	w8, [x19, #48]
	add	w8, w8, #1
	str	w8, [x19, #48]
LBB0_12:
	ldrb	w8, [x19]
	str	w8, [sp, #16]                   ; 4-byte Folded Spill
Lloh20:
	adrp	x8, _AK4117_QINT@GOTPAGE
Lloh21:
	ldr	x8, [x8, _AK4117_QINT@GOTPAGEOFF]
	ldrb	w8, [x8]
Lloh22:
	adrp	x9, _AK4117_CINT@GOTPAGE
Lloh23:
	ldr	x9, [x9, _AK4117_CINT@GOTPAGEOFF]
	ldrb	w9, [x9]
	orr	w8, w9, w8
Lloh24:
	adrp	x9, _AK4117_STC@GOTPAGE
Lloh25:
	ldr	x9, [x9, _AK4117_STC@GOTPAGEOFF]
	ldrb	w9, [x9]
	orr	w25, w8, w9
Lloh26:
	adrp	x8, _AK4117_AUDION@GOTPAGE
Lloh27:
	ldr	x8, [x8, _AK4117_AUDION@GOTPAGEOFF]
	ldrb	w28, [x8]
Lloh28:
	adrp	x8, _AK4117_AUTO@GOTPAGE
Lloh29:
	ldr	x8, [x8, _AK4117_AUTO@GOTPAGEOFF]
	ldrb	w8, [x8]
	str	w8, [sp, #8]                    ; 4-byte Folded Spill
Lloh30:
	adrp	x8, _AK4117_UNLCK@GOTPAGE
Lloh31:
	ldr	x8, [x8, _AK4117_UNLCK@GOTPAGEOFF]
	ldrb	w8, [x8]
	str	w8, [sp, #12]                   ; 4-byte Folded Spill
	ldr	w26, [x19, #4]
Lloh32:
	adrp	x8, _AK4117_DTSCD@GOTPAGE
Lloh33:
	ldr	x8, [x8, _AK4117_DTSCD@GOTPAGEOFF]
Lloh34:
	ldr	w8, [x8]
Lloh35:
	adrp	x9, _AK4117_NPCM@GOTPAGE
Lloh36:
	ldr	x9, [x9, _AK4117_NPCM@GOTPAGEOFF]
Lloh37:
	ldr	w9, [x9]
Lloh38:
	adrp	x10, _AK4117_PEM@GOTPAGE
Lloh39:
	ldr	x10, [x10, _AK4117_PEM@GOTPAGEOFF]
Lloh40:
	ldr	w20, [x10]
	orr	w21, w8, w9
	bic	w8, w22, w25
	strb	w8, [x19]
	str	w27, [x19, #4]
	strb	w23, [x19, #8]
	mov	x0, x24
	bl	_spin_unlock_irqrestore
Lloh41:
	adrp	x8, _AK4117_PAR@GOTPAGE
Lloh42:
	ldr	x8, [x8, _AK4117_PAR@GOTPAGEOFF]
	ldrb	w8, [x8]
Lloh43:
	adrp	x24, _SNDRV_CTL_EVENT_MASK_VALUE@GOTPAGE
Lloh44:
	ldr	x24, [x24, _SNDRV_CTL_EVENT_MASK_VALUE@GOTPAGEOFF]
	tst	w8, w22
	b.eq	LBB0_14
; %bb.13:
	ldr	w0, [x19, #40]
	ldr	w1, [x24]
	ldr	x8, [x19, #32]
	ldr	x2, [x8]
	bl	_snd_ctl_notify
LBB0_14:
	orr	w25, w25, w28
	orr	w20, w21, w20
Lloh45:
	adrp	x8, _AK4117_V@GOTPAGE
Lloh46:
	ldr	x8, [x8, _AK4117_V@GOTPAGEOFF]
	ldrb	w8, [x8]
	tst	w8, w22
	b.eq	LBB0_16
; %bb.15:
	ldr	w0, [x19, #40]
	ldr	w1, [x24]
	ldr	x8, [x19, #32]
	ldr	x2, [x8, #8]
	bl	_snd_ctl_notify
LBB0_16:
	ldr	w8, [sp, #8]                    ; 4-byte Folded Reload
	orr	w21, w25, w8
	orr	w20, w20, #0xf
	eor	w25, w26, w27
Lloh47:
	adrp	x8, _AK4117_CCRC@GOTPAGE
Lloh48:
	ldr	x8, [x8, _AK4117_CCRC@GOTPAGEOFF]
	ldrb	w8, [x8]
	tst	w8, w23
	b.eq	LBB0_18
; %bb.17:
	ldr	w0, [x19, #40]
	ldr	w1, [x24]
	ldr	x8, [x19, #32]
	ldr	x2, [x8, #16]
	bl	_snd_ctl_notify
LBB0_18:
	ldr	w8, [sp, #12]                   ; 4-byte Folded Reload
	orr	w21, w21, w8
	ldr	w8, [sp, #16]                   ; 4-byte Folded Reload
	eor	w26, w8, w22
	and	w22, w20, w25
Lloh49:
	adrp	x8, _AK4117_QCRC@GOTPAGE
Lloh50:
	ldr	x8, [x8, _AK4117_QCRC@GOTPAGEOFF]
	ldrb	w8, [x8]
	tst	w8, w23
	b.eq	LBB0_20
; %bb.19:
	ldr	w0, [x19, #40]
	ldr	w1, [x24]
	ldr	x8, [x19, #32]
	ldr	x2, [x8, #24]
	bl	_snd_ctl_notify
LBB0_20:
	and	w23, w21, w26
	and	w28, w22, #0xff
	tst	w25, #0xf
	ldr	x20, [sp, #24]                  ; 8-byte Folded Reload
	b.eq	LBB0_22
; %bb.21:
	ldr	w0, [x19, #40]
	ldr	w1, [x24]
	ldr	x8, [x19, #32]
	ldr	x2, [x8, #32]
	bl	_snd_ctl_notify
LBB0_22:
Lloh51:
	adrp	x8, _AK4117_PEM@GOTPAGE
Lloh52:
	ldr	x8, [x8, _AK4117_PEM@GOTPAGEOFF]
Lloh53:
	ldr	w8, [x8]
	and	w8, w8, w28
	and	w26, w23, #0xff
Lloh54:
	adrp	x9, _AK4117_CINT@GOTPAGE
Lloh55:
	ldr	x9, [x9, _AK4117_CINT@GOTPAGEOFF]
	ldrb	w9, [x9]
	and	w9, w9, w26
	orr	w8, w8, w9
	cbz	w8, LBB0_24
; %bb.23:
	ldr	w0, [x19, #40]
	ldr	w1, [x24]
	ldr	x8, [x19, #32]
	ldr	x2, [x8, #48]
	bl	_snd_ctl_notify
LBB0_24:
Lloh56:
	adrp	x8, _AK4117_QINT@GOTPAGE
Lloh57:
	ldr	x8, [x8, _AK4117_QINT@GOTPAGEOFF]
	ldrb	w8, [x8]
	tst	w23, w8
	b.eq	LBB0_26
; %bb.25:
	ldr	w0, [x19, #40]
	ldr	w1, [x24]
	ldr	x8, [x19, #32]
	ldr	x2, [x8, #64]
	bl	_snd_ctl_notify
LBB0_26:
Lloh58:
	adrp	x8, _AK4117_AUDION@GOTPAGE
Lloh59:
	ldr	x8, [x8, _AK4117_AUDION@GOTPAGEOFF]
	ldrb	w8, [x8]
	tst	w23, w8
	b.eq	LBB0_28
; %bb.27:
	ldr	w0, [x19, #40]
	ldr	w1, [x24]
	ldr	x8, [x19, #32]
	ldr	x2, [x8, #72]
	bl	_snd_ctl_notify
LBB0_28:
Lloh60:
	adrp	x8, _AK4117_NPCM@GOTPAGE
Lloh61:
	ldr	x8, [x8, _AK4117_NPCM@GOTPAGEOFF]
Lloh62:
	ldr	w8, [x8]
	tst	w8, w28
	b.eq	LBB0_30
; %bb.29:
	ldr	w0, [x19, #40]
	ldr	w1, [x24]
	ldr	x8, [x19, #32]
	ldr	x2, [x8, #80]
	bl	_snd_ctl_notify
LBB0_30:
Lloh63:
	adrp	x8, _AK4117_DTSCD@GOTPAGE
Lloh64:
	ldr	x8, [x8, _AK4117_DTSCD@GOTPAGEOFF]
Lloh65:
	ldr	w8, [x8]
	tst	w8, w28
	b.eq	LBB0_32
; %bb.31:
	ldr	w0, [x19, #40]
	ldr	w1, [x24]
	ldr	x8, [x19, #32]
	ldr	x2, [x8, #88]
	bl	_snd_ctl_notify
LBB0_32:
	ldr	x8, [x19, #24]
	ldr	w24, [sp, #20]                  ; 4-byte Folded Reload
	cbz	x8, LBB0_35
; %bb.33:
	orr	w9, w28, w26
	cbz	w9, LBB0_35
; %bb.34:
	and	w1, w23, #0xff
	and	w2, w22, #0xff
	mov	x0, x19
	blr	x8
LBB0_35:
	mov	x0, x27
	bl	_external_rate
	mov	x21, x0
Lloh66:
	adrp	x8, _AK4117_CHECK_NO_RATE@GOTPAGE
Lloh67:
	ldr	x8, [x8, _AK4117_CHECK_NO_RATE@GOTPAGEOFF]
Lloh68:
	ldr	w8, [x8]
	and	w8, w8, w24
	cmp	w8, #0
	ccmp	x20, #0, #4, eq
	b.eq	LBB0_40
; %bb.36:
	ldr	w8, [x20]
	cmp	w8, w21
	b.eq	LBB0_40
; %bb.37:
	ldr	x0, [x19, #16]
	bl	_snd_pcm_stream_lock_irqsave
	ldr	x0, [x19, #16]
	bl	_snd_pcm_running
	cbz	x0, LBB0_39
; %bb.38:
	ldr	x0, [x19, #16]
Lloh69:
	adrp	x8, _SNDRV_PCM_STATE_DRAINING@GOTPAGE
Lloh70:
	ldr	x8, [x8, _SNDRV_PCM_STATE_DRAINING@GOTPAGEOFF]
Lloh71:
	ldr	w1, [x8]
	bl	_snd_pcm_stop
	add	x0, x20, #4
	bl	_wake_up
	mov	w21, #1
LBB0_39:
	ldr	x0, [x19, #16]
	bl	_snd_pcm_stream_unlock_irqrestore
LBB0_40:
	mov	x0, x21
	ldp	x29, x30, [sp, #112]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #96]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #80]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #64]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #48]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #32]             ; 16-byte Folded Reload
	add	sp, sp, #128
	ret
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGot	Lloh14, Lloh15
	.loh AdrpLdrGot	Lloh16, Lloh17
	.loh AdrpLdrGot	Lloh18, Lloh19
	.loh AdrpLdrGot	Lloh43, Lloh44
	.loh AdrpLdrGot	Lloh41, Lloh42
	.loh AdrpLdrGotLdr	Lloh38, Lloh39, Lloh40
	.loh AdrpLdrGotLdr	Lloh35, Lloh36, Lloh37
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.loh AdrpLdrGot	Lloh30, Lloh31
	.loh AdrpLdrGot	Lloh28, Lloh29
	.loh AdrpLdrGot	Lloh26, Lloh27
	.loh AdrpLdrGot	Lloh24, Lloh25
	.loh AdrpLdrGot	Lloh22, Lloh23
	.loh AdrpLdrGot	Lloh20, Lloh21
	.loh AdrpLdrGot	Lloh45, Lloh46
	.loh AdrpLdrGot	Lloh47, Lloh48
	.loh AdrpLdrGot	Lloh49, Lloh50
	.loh AdrpLdrGot	Lloh54, Lloh55
	.loh AdrpLdrGotLdr	Lloh51, Lloh52, Lloh53
	.loh AdrpLdrGot	Lloh56, Lloh57
	.loh AdrpLdrGot	Lloh58, Lloh59
	.loh AdrpLdrGotLdr	Lloh60, Lloh61, Lloh62
	.loh AdrpLdrGotLdr	Lloh63, Lloh64, Lloh65
	.loh AdrpLdrGotLdr	Lloh66, Lloh67, Lloh68
	.loh AdrpLdrGotLdr	Lloh69, Lloh70, Lloh71
	.cfi_endproc
                                        ; -- End function
	.comm	_AK4117_REG_RCS1,4,2            ; @AK4117_REG_RCS1
	.comm	_AK4117_CHECK_NO_STAT,4,2       ; @AK4117_CHECK_NO_STAT
	.comm	_AK4117_REG_RCS0,4,2            ; @AK4117_REG_RCS0
	.comm	_AK4117_REG_RCS2,4,2            ; @AK4117_REG_RCS2
	.comm	_AK4117_PAR,1,0                 ; @AK4117_PAR
	.comm	_AK4117_V,1,0                   ; @AK4117_V
	.comm	_AK4117_CCRC,1,0                ; @AK4117_CCRC
	.comm	_AK4117_QCRC,1,0                ; @AK4117_QCRC
	.comm	_AK4117_QINT,1,0                ; @AK4117_QINT
	.comm	_AK4117_CINT,1,0                ; @AK4117_CINT
	.comm	_AK4117_STC,1,0                 ; @AK4117_STC
	.comm	_AK4117_AUDION,1,0              ; @AK4117_AUDION
	.comm	_AK4117_AUTO,1,0                ; @AK4117_AUTO
	.comm	_AK4117_UNLCK,1,0               ; @AK4117_UNLCK
	.comm	_AK4117_DTSCD,4,2               ; @AK4117_DTSCD
	.comm	_AK4117_NPCM,4,2                ; @AK4117_NPCM
	.comm	_AK4117_PEM,4,2                 ; @AK4117_PEM
	.comm	_SNDRV_CTL_EVENT_MASK_VALUE,4,2 ; @SNDRV_CTL_EVENT_MASK_VALUE
	.comm	_AK4117_CHECK_NO_RATE,4,2       ; @AK4117_CHECK_NO_RATE
	.comm	_SNDRV_PCM_STATE_DRAINING,4,2   ; @SNDRV_PCM_STATE_DRAINING
.subsections_via_symbols
