	.file	"extr_au1550_ac97.c_au1550_ioctl.c"
	.intel_syntax noprefix
	.text
	.section	.rodata.str1.8,"aMS",@progbits,1
	.align 8
.LC0:
	.string	"ioctl SNDCTL_DSP_GETOSPACE: bytes=%d, fragments=%d\n"
	.text
	.p2align 4
	.type	au1550_ioctl, @function
au1550_ioctl:
.LFB0:
	.cfi_startproc
	endbr64
	push	r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	push	r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	push	r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	push	r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	push	rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	mov	rbp, rcx
	push	rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	mov	rbx, rsi
	sub	rsp, 56
	.cfi_def_cfa_offset 112
	mov	ecx, DWORD PTR [rsi]
	mov	edi, DWORD PTR FMODE_WRITE[rip]
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR 40[rsp], rax
	xor	eax, eax
	lea	eax, -128[rdx]
	mov	r13, QWORD PTR 16[rsi]
	and	edi, ecx
	cmp	eax, 27
	ja	.L2
	lea	rdx, .L4[rip]
	movsx	rax, DWORD PTR [rdx+rax*4]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L4:
	.long	.L20-.L4
	.long	.L28-.L4
	.long	.L20-.L4
	.long	.L27-.L4
	.long	.L26-.L4
	.long	.L25-.L4
	.long	.L24-.L4
	.long	.L23-.L4
	.long	.L22-.L4
	.long	.L21-.L4
	.long	.L20-.L4
	.long	.L19-.L4
	.long	.L18-.L4
	.long	.L105-.L4
	.long	.L17-.L4
	.long	.L105-.L4
	.long	.L15-.L4
	.long	.L14-.L4
	.long	.L13-.L4
	.long	.L12-.L4
	.long	.L11-.L4
	.long	.L10-.L4
	.long	.L9-.L4
	.long	.L8-.L4
	.long	.L7-.L4
	.long	.L6-.L4
	.long	.L5-.L4
	.long	.L3-.L4
	.text
	.p2align 4,,10
	.p2align 3
.L20:
	mov	r12d, DWORD PTR EINVAL[rip]
	neg	r12d
	.p2align 4,,10
	.p2align 3
.L1:
	mov	rax, QWORD PTR 40[rsp]
	xor	rax, QWORD PTR fs:40
	jne	.L224
	add	rsp, 56
	.cfi_remember_state
	.cfi_def_cfa_offset 56
	mov	eax, r12d
	pop	rbx
	.cfi_def_cfa_offset 48
	pop	rbp
	.cfi_def_cfa_offset 40
	pop	r12
	.cfi_def_cfa_offset 32
	pop	r13
	.cfi_def_cfa_offset 24
	pop	r14
	.cfi_def_cfa_offset 16
	pop	r15
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L105:
	.cfi_restore_state
	xor	r12d, r12d
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L28:
	test	DWORD PTR FMODE_READ[rip], ecx
	je	.L98
.L222:
	mov	edi, DWORD PTR 100[r13]
.L214:
	mov	rsi, rbp
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L3:
	mov	edi, DWORD PTR SOUND_VERSION[rip]
	mov	rsi, rbp
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L18:
	xor	r14d, r14d
	mov	rsi, rbp
	mov	edi, r14d
	call	get_user@PLT
	test	eax, eax
	jne	.L216
	xor	r14d, r14d
	cmp	DWORD PTR AFMT_QUERY[rip], r14d
	mov	eax, DWORD PTR [rbx]
	je	.L62
	test	DWORD PTR FMODE_READ[rip], eax
	jne	.L225
.L63:
	test	DWORD PTR FMODE_WRITE[rip], eax
	jne	.L226
	.p2align 4,,10
	.p2align 3
.L219:
	mov	rsi, rbp
	mov	edi, r14d
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L19:
	xor	r14d, r14d
	mov	rsi, rbp
	mov	edi, r14d
	call	get_user@PLT
	test	eax, eax
	jne	.L216
	mov	eax, DWORD PTR [rbx]
	test	DWORD PTR FMODE_READ[rip], eax
	jne	.L227
.L86:
	test	DWORD PTR FMODE_WRITE[rip], eax
	je	.L105
	xor	r14d, r14d
	mov	rdi, r13
	call	stop_dac@PLT
	mov	eax, r14d
	xor	edx, edx
	shr	eax, 16
	test	r14d, r14d
	sete	dl
	sal	edx, 2
	cmp	eax, 3
	mov	DWORD PTR 48[r13], edx
	mov	edx, 4
	cmovbe	eax, edx
	mov	DWORD PTR 52[r13], eax
.L217:
	mov	rdi, r13
	call	prog_dmabuf_dac@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L12:
	test	DWORD PTR FMODE_READ[rip], ecx
	je	.L20
	lea	r14, 164[r13]
	xor	r12d, r12d
	mov	rsi, r12
	mov	rdi, r14
	call	spin_lock_irqsave@PLT
	mov	eax, DWORD PTR 20[r13]
	mov	esi, DWORD PTR 72[r13]
	mov	ebx, DWORD PTR 16[r13]
	mov	DWORD PTR 4[rsp], eax
	test	esi, esi
	jne	.L81
	lea	rdi, 12[r13]
	call	dma_count_done@PLT
	mov	edi, DWORD PTR 68[r13]
	movsx	r12, eax
	add	DWORD PTR 4[rsp], r12d
	call	virt_to_phys@PLT
	mov	edi, DWORD PTR 64[r13]
	sub	ebx, r12d
	add	r12, rax
	call	virt_to_phys@PLT
	sub	r12, rax
	mov	QWORD PTR 16[rsp], r12
.L82:
	mov	ecx, DWORD PTR 12[r13]
	test	ecx, ecx
	je	.L83
	mov	eax, DWORD PTR 60[r13]
	sub	eax, 1
	and	DWORD PTR 16[r13], eax
.L83:
	xor	r12d, r12d
	mov	rdi, r14
	mov	rsi, r12
	call	spin_unlock_irqrestore@PLT
	test	ebx, ebx
	mov	eax, 0
	mov	ecx, DWORD PTR 44[r13]
	cmovs	ebx, eax
.L218:
	sar	ebx, cl
	mov	rsi, rsp
	mov	edx, 32
	mov	rdi, rbp
	mov	DWORD PTR 12[rsp], ebx
	call	copy_to_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L17:
	test	edi, edi
	jne	.L228
.L30:
	test	DWORD PTR FMODE_READ[rip], ecx
	je	.L105
	mov	rdi, r13
	xor	r12d, r12d
	call	stop_adc@PLT
	xor	eax, eax
	call	synchronize_irq@PLT
	mov	eax, DWORD PTR 140[r13]
	mov	QWORD PTR 92[r13], 0
	mov	DWORD PTR 144[r13], eax
	mov	DWORD PTR 152[r13], eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L13:
	test	edi, edi
	je	.L20
	xor	r12d, r12d
	mov	eax, DWORD PTR 36[r13]
	lea	r14, 164[r13]
	mov	rsi, r12
	mov	rdi, r14
	mov	DWORD PTR [rsp], eax
	call	spin_lock_irqsave@PLT
	mov	ebx, DWORD PTR 16[r13]
	lea	rdi, 12[r13]
	call	dma_count_done@PLT
	mov	rsi, r12
	mov	rdi, r14
	sub	ebx, eax
	call	spin_unlock_irqrestore@PLT
	test	ebx, ebx
	mov	eax, 0
	mov	ecx, DWORD PTR 44[r13]
	cmovs	ebx, eax
	mov	eax, DWORD PTR 84[r13]
	lea	rdi, .LC0[rip]
	sub	eax, ebx
	cdq
	idiv	DWORD PTR 40[r13]
	mov	esi, eax
	mov	DWORD PTR 4[rsp], eax
	mov	eax, DWORD PTR 80[r13]
	mov	edx, esi
	sar	edx, cl
	mov	DWORD PTR 24[rsp], eax
	mov	DWORD PTR 8[rsp], edx
	movsx	rdx, edx
	call	pr_debug@PLT
.L221:
	mov	rsi, rsp
	mov	edx, 32
	mov	rdi, rbp
	call	copy_to_user@PLT
	test	eax, eax
	je	.L105
	.p2align 4,,10
	.p2align 3
.L216:
	mov	r12d, DWORD PTR EFAULT[rip]
	neg	r12d
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L14:
	lea	r15, 164[r13]
	xor	r12d, r12d
	mov	rsi, r12
	mov	rdi, r15
	call	spin_lock_irqsave@PLT
	mov	eax, DWORD PTR [rbx]
	mov	r14d, eax
	and	r14d, DWORD PTR FMODE_READ[rip]
	je	.L70
	mov	r10d, DWORD PTR 148[r13]
	xor	r14d, r14d
	test	r10d, r10d
	jne	.L70
	mov	r14d, DWORD PTR PCM_ENABLE_INPUT[rip]
.L70:
	test	DWORD PTR FMODE_WRITE[rip], eax
	je	.L71
	mov	r9d, DWORD PTR 72[r13]
	test	r9d, r9d
	jne	.L71
	or	r14d, DWORD PTR PCM_ENABLE_OUTPUT[rip]
.L71:
	xor	r12d, r12d
	mov	rdi, r15
	mov	rsi, r12
	call	spin_unlock_irqrestore@PLT
	jmp	.L219
	.p2align 4,,10
	.p2align 3
.L15:
	lea	rbp, 8[rsi]
	xor	r12d, r12d
	mov	rdi, rbp
	call	spin_lock@PLT
	mov	eax, DWORD PTR O_NONBLOCK[rip]
	or	DWORD PTR 4[rbx], eax
	mov	rdi, rbp
	call	spin_unlock@PLT
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L8:
	mov	edi, DWORD PTR AFMT_S16_LE[rip]
	mov	rsi, rbp
	or	edi, DWORD PTR AFMT_U8[rip]
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L9:
	test	DWORD PTR FMODE_READ[rip], ecx
	je	.L20
	lea	r14, 164[r13]
	xor	r12d, r12d
	mov	rsi, r12
	mov	rdi, r14
	call	spin_lock_irqsave@PLT
	mov	eax, DWORD PTR 96[r13]
	mov	r8d, DWORD PTR 148[r13]
	mov	ebx, DWORD PTR 92[r13]
	mov	DWORD PTR 4[rsp], eax
	test	r8d, r8d
	jne	.L78
	lea	rdi, 88[r13]
	call	dma_count_done@PLT
	mov	edi, DWORD PTR 152[r13]
	movsx	r12, eax
	add	DWORD PTR 4[rsp], r12d
	call	virt_to_phys@PLT
	mov	edi, DWORD PTR 140[r13]
	add	ebx, r12d
	add	r12, rax
	call	virt_to_phys@PLT
	sub	r12, rax
	mov	QWORD PTR 16[rsp], r12
.L79:
	mov	edi, DWORD PTR 88[r13]
	test	edi, edi
	je	.L80
	mov	eax, DWORD PTR 136[r13]
	sub	eax, 1
	and	DWORD PTR 92[r13], eax
.L80:
	xor	r12d, r12d
	mov	rdi, r14
	mov	rsi, r12
	call	spin_unlock_irqrestore@PLT
	test	ebx, ebx
	mov	eax, 0
	mov	ecx, DWORD PTR 120[r13]
	cmovs	ebx, eax
	jmp	.L218
	.p2align 4,,10
	.p2align 3
.L10:
	test	DWORD PTR FMODE_READ[rip], ecx
	je	.L20
	xor	r12d, r12d
	mov	eax, DWORD PTR 112[r13]
	lea	r14, 164[r13]
	mov	rsi, r12
	mov	rdi, r14
	mov	DWORD PTR [rsp], eax
	call	spin_lock_irqsave@PLT
	mov	ebx, DWORD PTR 92[r13]
	lea	rdi, 88[r13]
	call	dma_count_done@PLT
	mov	rsi, r12
	mov	rdi, r14
	add	ebx, eax
	call	spin_unlock_irqrestore@PLT
	test	ebx, ebx
	mov	eax, 0
	mov	ecx, DWORD PTR 120[r13]
	cmovns	eax, ebx
	cdq
	idiv	DWORD PTR 116[r13]
	mov	edx, DWORD PTR 156[r13]
	mov	DWORD PTR 24[rsp], edx
	mov	DWORD PTR 4[rsp], eax
	sar	eax, cl
	mov	DWORD PTR 8[rsp], eax
	jmp	.L221
	.p2align 4,,10
	.p2align 3
.L11:
	test	edi, edi
	je	.L20
	xor	r12d, r12d
	lea	r14, 164[r13]
	mov	rsi, r12
	mov	rdi, r14
	call	spin_lock_irqsave@PLT
	mov	ebx, DWORD PTR 16[r13]
	lea	rdi, 12[r13]
	call	dma_count_done@PLT
	mov	rsi, r12
	mov	rdi, r14
	sub	ebx, eax
	call	spin_unlock_irqrestore@PLT
	test	ebx, ebx
	mov	eax, 0
	mov	rsi, rbp
	cmovns	eax, ebx
	cdq
	idiv	DWORD PTR 40[r13]
	mov	edi, eax
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L6:
	test	edi, edi
	je	.L84
	mov	edi, DWORD PTR 36[r13]
	mov	rsi, rbp
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L7:
	mov	edi, DWORD PTR DSP_CAP_DUPLEX[rip]
	mov	rsi, rbp
	or	edi, DWORD PTR DSP_CAP_REALTIME[rip]
	or	edi, DWORD PTR DSP_CAP_TRIGGER[rip]
	or	edi, DWORD PTR DSP_CAP_MMAP[rip]
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L5:
	xor	r14d, r14d
	mov	rsi, rbp
	mov	edi, r14d
	call	get_user@PLT
	test	eax, eax
	jne	.L216
	xor	r14d, r14d
	mov	rsi, rbp
	mov	edi, r14d
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L21:
	xor	r14d, r14d
	mov	rsi, rbp
	mov	edi, r14d
	call	get_user@PLT
	test	eax, eax
	jne	.L216
	mov	eax, DWORD PTR [rbx]
	test	DWORD PTR FMODE_READ[rip], eax
	je	.L73
	mov	rdi, r13
	call	stop_adc@PLT
	mov	eax, DWORD PTR [rbx]
.L73:
	test	DWORD PTR FMODE_WRITE[rip], eax
	je	.L105
	mov	rdi, r13
	xor	r12d, r12d
	call	stop_dac@PLT
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L22:
	xor	r14d, r14d
	mov	rsi, rbp
	mov	edi, r14d
	call	get_user@PLT
	test	eax, eax
	jne	.L216
	mov	eax, DWORD PTR [rbx]
	test	DWORD PTR FMODE_READ[rip], eax
	jne	.L229
.L36:
	test	DWORD PTR FMODE_WRITE[rip], eax
	jne	.L230
.L37:
	mov	eax, DWORD PTR 0[r13]
	test	DWORD PTR FMODE_READ[rip], eax
	jne	.L231
.L38:
	test	DWORD PTR FMODE_WRITE[rip], eax
	jne	.L232
.L39:
	mov	eax, DWORD PTR [rbx]
	test	DWORD PTR FMODE_READ[rip], eax
	jne	.L222
.L98:
	mov	edi, DWORD PTR 24[r13]
	jmp	.L214
	.p2align 4,,10
	.p2align 3
.L23:
	xor	r14d, r14d
	mov	rsi, rbp
	mov	edi, r14d
	call	get_user@PLT
	test	eax, eax
	jne	.L216
	mov	eax, DWORD PTR [rbx]
	test	DWORD PTR FMODE_READ[rip], eax
	jne	.L233
.L42:
	test	DWORD PTR FMODE_WRITE[rip], eax
	je	.L105
	mov	rdi, r13
	call	stop_dac@PLT
	mov	DWORD PTR 28[r13], 1
	mov	eax, DWORD PTR 4[r13]
	test	DWORD PTR AC97_EXT_DACS[rip], eax
	je	.L217
	mov	edi, DWORD PTR 8[r13]
	mov	esi, DWORD PTR AC97_EXTENDED_STATUS[rip]
	call	rdcodec@PLT
	mov	edx, DWORD PTR AC97_EXTSTAT_PRI[rip]
	mov	edi, DWORD PTR 8[r13]
	or	edx, DWORD PTR AC97_EXTSTAT_PRJ[rip]
	mov	esi, DWORD PTR AC97_EXTENDED_STATUS[rip]
	or	edx, DWORD PTR AC97_EXTSTAT_PRK[rip]
	or	edx, eax
	call	wrcodec@PLT
	jmp	.L217
	.p2align 4,,10
	.p2align 3
.L24:
	test	DWORD PTR FMODE_READ[rip], ecx
	je	.L93
	mov	edx, DWORD PTR 132[r13]
	test	edx, edx
	jne	.L20
.L93:
	test	edi, edi
	je	.L94
	mov	eax, DWORD PTR 56[r13]
	test	eax, eax
	jne	.L20
.L94:
	xor	r14d, r14d
	mov	rsi, rbp
	mov	edi, r14d
	call	get_user@PLT
	mov	r12d, DWORD PTR EINVAL[rip]
	neg	r12d
	test	eax, eax
	je	.L1
	jmp	.L216
	.p2align 4,,10
	.p2align 3
.L26:
	test	DWORD PTR FMODE_READ[rip], ecx
	je	.L101
	mov	edi, DWORD PTR 108[r13]
	mov	rsi, rbp
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L27:
	test	DWORD PTR FMODE_READ[rip], ecx
	je	.L100
	mov	edi, DWORD PTR 104[r13]
	mov	rsi, rbp
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L25:
	test	edi, edi
	je	.L105
	mov	esi, DWORD PTR 4[rsi]
	mov	rdi, r13
	and	esi, DWORD PTR O_NONBLOCK[rip]
	call	drain_dac@PLT
	mov	r12d, eax
	jmp	.L1
.L2:
	mov	edi, DWORD PTR 8[r13]
	mov	esi, edx
	mov	rdx, rbp
	call	mixdev_ioctl@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L100:
	mov	edi, DWORD PTR 28[r13]
	mov	rsi, rbp
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L101:
	mov	edi, DWORD PTR 32[r13]
	jmp	.L214
	.p2align 4,,10
	.p2align 3
.L84:
	mov	edi, DWORD PTR 112[r13]
	mov	rsi, rbp
	call	put_user@PLT
	mov	r12d, eax
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L228:
	mov	rdi, r13
	call	stop_dac@PLT
	xor	eax, eax
	call	synchronize_irq@PLT
	mov	eax, DWORD PTR 64[r13]
	mov	QWORD PTR 16[r13], 0
	mov	ecx, DWORD PTR [rbx]
	mov	DWORD PTR 68[r13], eax
	mov	DWORD PTR 76[r13], eax
	jmp	.L30
.L78:
	mov	edi, DWORD PTR 152[r13]
	call	virt_to_phys@PLT
	mov	edi, DWORD PTR 140[r13]
	mov	r12, rax
	call	virt_to_phys@PLT
	sub	r12, rax
	mov	QWORD PTR 16[rsp], r12
	jmp	.L79
.L81:
	mov	edi, DWORD PTR 68[r13]
	call	virt_to_phys@PLT
	mov	edi, DWORD PTR 64[r13]
	mov	r12, rax
	call	virt_to_phys@PLT
	sub	r12, rax
	mov	QWORD PTR 16[rsp], r12
	jmp	.L82
.L62:
	test	DWORD PTR FMODE_READ[rip], eax
	je	.L67
	cmp	DWORD PTR 108[r13], 16
	je	.L69
.L68:
	mov	r14d, DWORD PTR AFMT_U8[rip]
	jmp	.L219
.L233:
	mov	rdi, r13
	call	stop_adc@PLT
	mov	DWORD PTR 104[r13], 1
	mov	rdi, r13
	call	prog_dmabuf_adc@PLT
	mov	r12d, eax
	test	eax, eax
	jne	.L1
	mov	eax, DWORD PTR [rbx]
	jmp	.L42
.L227:
	mov	rdi, r13
	xor	r14d, r14d
	call	stop_adc@PLT
	mov	eax, r14d
	xor	edx, edx
	mov	rdi, r13
	shr	eax, 16
	test	r14d, r14d
	sete	dl
	sal	edx, 2
	cmp	eax, 3
	mov	DWORD PTR 124[r13], edx
	mov	edx, 4
	cmovbe	eax, edx
	mov	DWORD PTR 128[r13], eax
	call	prog_dmabuf_adc@PLT
	mov	r12d, eax
	test	eax, eax
	jne	.L1
	mov	eax, DWORD PTR [rbx]
	jmp	.L86
.L225:
	mov	rdi, r13
	call	stop_adc@PLT
	cmp	DWORD PTR AFMT_S16_LE[rip], r14d
	mov	eax, 16
	je	.L64
	mov	r14d, DWORD PTR AFMT_U8[rip]
	mov	eax, 8
.L64:
	mov	DWORD PTR 108[r13], eax
	mov	rdi, r13
	call	prog_dmabuf_adc@PLT
	mov	r12d, eax
	test	eax, eax
	jne	.L1
	mov	eax, DWORD PTR [rbx]
	jmp	.L63
.L226:
	mov	rdi, r13
	call	stop_dac@PLT
	cmp	DWORD PTR AFMT_S16_LE[rip], r14d
	mov	eax, 16
	je	.L66
	mov	r14d, DWORD PTR AFMT_U8[rip]
	mov	eax, 8
.L66:
	mov	DWORD PTR 32[r13], eax
	mov	rdi, r13
	call	prog_dmabuf_dac@PLT
	mov	r12d, eax
	test	eax, eax
	je	.L219
	jmp	.L1
.L229:
	mov	rdi, r13
	xor	r14d, r14d
	call	stop_adc@PLT
	mov	esi, r14d
	mov	rdi, r13
	call	set_adc_rate@PLT
	mov	eax, DWORD PTR [rbx]
	jmp	.L36
.L231:
	mov	rdi, r13
	call	prog_dmabuf_adc@PLT
	mov	r12d, eax
	test	eax, eax
	jne	.L1
	mov	eax, DWORD PTR 0[r13]
	jmp	.L38
.L230:
	mov	rdi, r13
	xor	r14d, r14d
	call	stop_dac@PLT
	mov	esi, r14d
	mov	rdi, r13
	call	set_dac_rate@PLT
	jmp	.L37
.L232:
	mov	rdi, r13
	call	prog_dmabuf_dac@PLT
	mov	r12d, eax
	test	eax, eax
	je	.L39
	jmp	.L1
.L67:
	cmp	DWORD PTR 32[r13], 16
	jne	.L68
.L69:
	mov	r14d, DWORD PTR AFMT_S16_LE[rip]
	jmp	.L219
.L224:
	call	__stack_chk_fail@PLT
	.cfi_endproc
.LFE0:
	.size	au1550_ioctl, .-au1550_ioctl
	.comm	ioctl_str,8,8
	.comm	SOUND_VERSION,4,4
	.comm	PCM_ENABLE_OUTPUT,4,4
	.comm	PCM_ENABLE_INPUT,4,4
	.comm	O_NONBLOCK,4,4
	.comm	FMODE_WRITE,4,4
	.comm	FMODE_READ,4,4
	.comm	EINVAL,4,4
	.comm	EFAULT,4,4
	.comm	DSP_CAP_TRIGGER,4,4
	.comm	DSP_CAP_REALTIME,4,4
	.comm	DSP_CAP_MMAP,4,4
	.comm	DSP_CAP_DUPLEX,4,4
	.comm	AFMT_U8,4,4
	.comm	AFMT_S16_LE,4,4
	.comm	AFMT_QUERY,4,4
	.comm	AC97_EXT_DACS,4,4
	.comm	AC97_EXTSTAT_PRK,4,4
	.comm	AC97_EXTSTAT_PRJ,4,4
	.comm	AC97_EXTSTAT_PRI,4,4
	.comm	AC97_EXTID_SDAC,4,4
	.comm	AC97_EXTENDED_STATUS,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 2
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"extr_au1550_ac97.c_au1550_ioctl.c"
	.text
	.global	__aeabi_idiv
	.section	.rodata.str1.4,"aMS",%progbits,1
	.align	2
.LC0:
	.ascii	"ioctl SNDCTL_DSP_GETOSPACE: bytes=%d, fragments=%d\012"
	.ascii	"\000"
	.section	.rodata.cst4,"aM",%progbits,4
	.align	2
.LC1:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	au1550_ioctl, %function
au1550_ioctl:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 0, uses_anonymous_args = 0
	mov	ip, r2
	push	{r4, r5, r6, r7, r8, r9, lr}
	mov	r4, r1
	ldr	r8, .L232
	ldr	r0, [r1]
	mov	r5, r3
	ldr	r2, [r8]
	ldr	r3, .L232+4
	sub	sp, sp, #36
	sub	r1, ip, #128
	ldr	r3, [r3]
	str	r3, [sp, #28]
	mov	r3,#0
	ldr	r7, [r4, #12]
	and	r2, r2, r0
	cmp	r1, #27
	ldrls	pc, [pc, r1, asl #2]
	b	.L2
.L4:
	.word	.L20
	.word	.L28
	.word	.L20
	.word	.L27
	.word	.L26
	.word	.L25
	.word	.L24
	.word	.L23
	.word	.L22
	.word	.L21
	.word	.L20
	.word	.L19
	.word	.L18
	.word	.L105
	.word	.L17
	.word	.L105
	.word	.L15
	.word	.L14
	.word	.L13
	.word	.L12
	.word	.L11
	.word	.L10
	.word	.L9
	.word	.L8
	.word	.L7
	.word	.L6
	.word	.L5
	.word	.L3
.L20:
	ldr	r3, .L232+8
	ldr	r0, [r3]
	rsb	r6, r0, #0
.L1:
	ldr	r3, .L232+4
	ldr	r2, [r3]
	ldr	r3, [sp, #28]
	eors	r2, r3, r2
	mov	r3, #0
	bne	.L222
	mov	r0, r6
	add	sp, sp, #36
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, pc}
.L10:
	ldr	r3, .L232+12
	ldr	r3, [r3]
	tst	r0, r3
	beq	.L20
	mov	r4, #0
	ldr	r3, [r7, #112]
	add	r8, r7, #164
	mov	r1, r4
	mov	r0, r8
	str	r3, [sp, #4]
	bl	spin_lock_irqsave
	add	r0, r7, #88
	ldr	r6, [r7, #92]
	bl	dma_count_done
	mov	r1, r4
	add	r6, r6, r0
	mov	r0, r8
	bl	spin_unlock_irqrestore
	ldr	r1, [r7, #116]
	bic	r0, r6, r6, asr #31
	bl	__aeabi_idiv
	mov	r3, r0
	ldr	ip, [r7, #120]
	ldr	lr, [r7, #156]
	asr	ip, r3, ip
	mov	r0, r5
	mov	r2, #24
	add	r1, sp, #4
	str	r3, [sp, #8]
	str	ip, [sp, #12]
	str	lr, [sp, #24]
	bl	copy_to_user
	cmp	r0, r4
	bne	.L217
.L105:
	mov	r6, #0
	b	.L1
.L28:
	ldr	r3, .L232+12
	ldr	r3, [r3]
	tst	r0, r3
	beq	.L98
.L220:
	ldr	r0, [r7, #100]
.L99:
	mov	r1, r5
	bl	put_user
	mov	r6, r0
	b	.L1
.L11:
	cmp	r2, #0
	beq	.L20
	mov	r4, #0
	add	r8, r7, #164
	mov	r1, r4
	mov	r0, r8
	bl	spin_lock_irqsave
	add	r0, r7, #12
	ldr	r6, [r7, #16]
	bl	dma_count_done
	mov	r1, r4
	sub	r6, r6, r0
	mov	r0, r8
	bl	spin_unlock_irqrestore
	ldr	r1, [r7, #40]
	bic	r0, r6, r6, asr #31
	bl	__aeabi_idiv
	mov	r1, r5
	bl	put_user
	mov	r6, r0
	b	.L1
.L18:
	mov	r1, r5
	mov	r0, #0
	bl	get_user
	cmp	r0, #0
	bne	.L217
	mov	r9, #0
	ldr	r3, .L232+16
	ldr	r3, [r3]
	cmp	r3, r9
	beq	.L62
	ldr	r2, .L232+12
	ldr	r3, [r4]
	ldr	r2, [r2]
	tst	r3, r2
	bne	.L223
.L63:
	ldr	r2, [r8]
	tst	r3, r2
	bne	.L224
.L65:
	mov	r1, r5
	mov	r0, r9
	bl	put_user
	mov	r6, r0
	b	.L1
.L19:
	mov	r1, r5
	mov	r0, #0
	bl	get_user
	cmp	r0, #0
	bne	.L217
	ldr	r2, .L232+12
	ldr	r3, [r4]
	ldr	r2, [r2]
	tst	r3, r2
	bne	.L225
.L86:
	ldr	r2, [r8]
	tst	r3, r2
	beq	.L105
	mov	r0, r7
	bl	stop_dac
	mov	r1, #4
	str	r1, [r7, #48]
	str	r1, [r7, #52]
.L218:
	mov	r0, r7
	bl	prog_dmabuf_dac
	mov	r6, r0
	b	.L1
.L12:
	ldr	r3, .L232+12
	ldr	r3, [r3]
	tst	r0, r3
	beq	.L20
	add	r6, r7, #164
	mov	r0, r6
	mov	r1, #0
	bl	spin_lock_irqsave
	ldr	r2, [r7, #72]
	ldr	r3, [r7, #20]
	cmp	r2, #0
	ldr	r4, [r7, #16]
	str	r3, [sp, #8]
	bne	.L81
	add	r0, r7, #12
	bl	dma_count_done
	mov	r9, r0
	ldr	r3, [sp, #8]
	ldr	r0, [r7, #68]
	add	r3, r3, r9
	str	r3, [sp, #8]
	bl	virt_to_phys
	mov	r8, r0
	ldr	r0, [r7, #64]
	bl	virt_to_phys
	add	r8, r8, r9
	sub	r8, r8, r0
	sub	r4, r4, r9
	str	r8, [sp, #20]
.L82:
	ldr	r3, [r7, #12]
	mov	r0, r6
	cmp	r3, #0
	ldrne	r2, [r7, #60]
	ldrne	r3, [r7, #16]
	subne	r2, r2, #1
	andne	r3, r3, r2
	strne	r3, [r7, #16]
	mov	r1, #0
	bl	spin_unlock_irqrestore
	ldr	r3, [r7, #44]
.L219:
	bic	r4, r4, r4, asr #31
	asr	r4, r4, r3
	mov	r0, r5
	mov	r2, #24
	add	r1, sp, #4
	str	r4, [sp, #16]
	bl	copy_to_user
	mov	r6, r0
	b	.L1
.L17:
	cmp	r2, #0
	bne	.L226
.L30:
	ldr	r3, .L232+12
	ldr	r3, [r3]
	tst	r0, r3
	beq	.L105
	mov	r0, r7
	bl	stop_adc
	bl	synchronize_irq
	mov	r0, #0
	ldr	r3, [r7, #140]
	mov	r6, r0
	str	r0, [r7, #96]
	str	r0, [r7, #92]
	str	r3, [r7, #144]
	str	r3, [r7, #152]
	b	.L1
.L13:
	cmp	r2, #0
	beq	.L20
	mov	r4, #0
	ldr	r3, [r7, #36]
	add	r8, r7, #164
	mov	r1, r4
	mov	r0, r8
	str	r3, [sp, #4]
	bl	spin_lock_irqsave
	add	r0, r7, #12
	ldr	r6, [r7, #16]
	bl	dma_count_done
	mov	r3, r0
	mov	r1, r4
	mov	r0, r8
	sub	r6, r6, r3
	bl	spin_unlock_irqrestore
	ldr	r0, [r7, #84]
	cmp	r6, r4
	ldr	r1, [r7, #40]
	subge	r0, r0, r6
	sublt	r0, r0, r4
	bl	__aeabi_idiv
	mov	r1, r0
	ldr	r2, [r7, #44]
	ldr	r3, [r7, #80]
	asr	r2, r0, r2
	ldr	r0, .L232+20
	str	r1, [sp, #8]
	str	r2, [sp, #12]
	str	r3, [sp, #24]
	bl	pr_debug
	mov	r0, r5
	mov	r2, #24
	add	r1, sp, #4
	bl	copy_to_user
	cmp	r0, r4
	beq	.L105
.L217:
	ldr	r3, .L232+24
	ldr	r6, [r3]
	rsb	r6, r6, #0
	b	.L1
.L14:
	add	r6, r7, #164
	mov	r0, r6
	mov	r1, #0
	bl	spin_lock_irqsave
	ldr	r2, .L232+12
	ldr	r3, [r4]
	ldr	r0, [r2]
	ands	r4, r3, r0
	beq	.L70
	ldr	r2, [r7, #148]
	cmp	r2, #0
	movne	r4, #0
	ldreq	r2, .L232+28
	ldreq	r4, [r2]
.L70:
	ldr	r2, [r8]
	tst	r3, r2
	beq	.L71
	ldr	r3, [r7, #72]
	cmp	r3, #0
	ldreq	r3, .L232+32
	ldreq	r3, [r3]
	orreq	r4, r4, r3
.L71:
	mov	r0, r6
	mov	r1, #0
	bl	spin_unlock_irqrestore
	mov	r1, r5
	mov	r0, r4
	bl	put_user
	mov	r6, r0
	b	.L1
.L15:
	add	r5, r4, #8
	mov	r0, r5
	bl	spin_lock
	ldr	r2, .L232+36
	ldr	r3, [r4, #4]
	ldr	r2, [r2]
	mov	r0, r5
	orr	r3, r3, r2
	str	r3, [r4, #4]
	bl	spin_unlock
	mov	r6, #0
	b	.L1
.L7:
	ldr	r1, .L232+40
	ldr	r3, .L232+44
	ldr	r2, .L232+48
	ldr	r0, [r1]
	ldr	r3, [r3]
	ldr	r1, .L232+52
	ldr	r2, [r2]
	orr	r3, r3, r0
	ldr	r0, [r1]
	orr	r3, r3, r2
	mov	r1, r5
	orr	r0, r3, r0
	bl	put_user
	mov	r6, r0
	b	.L1
.L8:
	ldr	r2, .L232+56
	ldr	r3, .L232+60
	ldr	r0, [r2]
	ldr	r3, [r3]
	mov	r1, r5
	orr	r0, r0, r3
	bl	put_user
	mov	r6, r0
	b	.L1
.L9:
	ldr	r3, .L232+12
	ldr	r3, [r3]
	tst	r0, r3
	beq	.L20
	add	r6, r7, #164
	mov	r0, r6
	mov	r1, #0
	bl	spin_lock_irqsave
	ldr	r2, [r7, #148]
	ldr	r3, [r7, #96]
	cmp	r2, #0
	ldr	r4, [r7, #92]
	str	r3, [sp, #8]
	bne	.L78
	add	r0, r7, #88
	bl	dma_count_done
	mov	r9, r0
	ldr	r3, [sp, #8]
	ldr	r0, [r7, #152]
	add	r3, r3, r9
	str	r3, [sp, #8]
	bl	virt_to_phys
	mov	r8, r0
	ldr	r0, [r7, #140]
	bl	virt_to_phys
	add	r8, r8, r9
	sub	r8, r8, r0
	add	r4, r4, r9
	str	r8, [sp, #20]
.L79:
	ldr	r3, [r7, #88]
	mov	r0, r6
	cmp	r3, #0
	ldrne	r2, [r7, #136]
	ldrne	r3, [r7, #92]
	subne	r2, r2, #1
	andne	r3, r3, r2
	strne	r3, [r7, #92]
	mov	r1, #0
	bl	spin_unlock_irqrestore
	ldr	r3, [r7, #120]
	b	.L219
.L5:
	mov	r1, r5
	mov	r0, #0
	bl	get_user
	cmp	r0, #0
	bne	.L217
	mov	r1, r5
	mov	r0, #0
	bl	put_user
	mov	r6, r0
	b	.L1
.L6:
	cmp	r2, #0
	mov	r1, r5
	ldrne	r0, [r7, #36]
	ldreq	r0, [r7, #112]
	bl	put_user
	mov	r6, r0
	b	.L1
.L3:
	ldr	r3, .L232+64
	mov	r1, r5
	ldr	r0, [r3]
	bl	put_user
	mov	r6, r0
	b	.L1
.L21:
	mov	r1, r5
	mov	r0, #0
	bl	get_user
	cmp	r0, #0
	bne	.L217
	ldr	r2, .L232+12
	ldr	r3, [r4]
	ldr	r2, [r2]
	tst	r3, r2
	beq	.L73
	mov	r0, r7
	bl	stop_adc
	ldr	r3, [r4]
.L73:
	ldr	r2, [r8]
	tst	r3, r2
	beq	.L105
	mov	r0, r7
	mov	r6, #0
	bl	stop_dac
	b	.L1
.L22:
	mov	r1, r5
	mov	r0, #0
	bl	get_user
	cmp	r0, #0
	bne	.L217
	ldr	r9, .L232+12
	ldr	r3, [r4]
	ldr	r2, [r9]
	tst	r3, r2
	bne	.L227
.L36:
	ldr	r2, [r8]
	tst	r3, r2
	bne	.L228
.L37:
	ldr	r3, [r7]
	ldr	r2, [r9]
	tst	r3, r2
	bne	.L229
.L38:
	ldr	r2, [r8]
	tst	r3, r2
	bne	.L230
.L39:
	ldr	r2, [r4]
	ldr	r3, [r9]
	tst	r2, r3
	bne	.L220
.L98:
	ldr	r0, [r7, #24]
	b	.L99
.L24:
	ldr	r9, .L232+12
	ldr	r3, [r9]
	tst	r0, r3
	beq	.L93
	ldr	r3, [r7, #132]
	cmp	r3, #0
	bne	.L20
.L93:
	cmp	r2, #0
	beq	.L94
	ldr	r3, [r7, #56]
	cmp	r3, #0
	bne	.L20
.L94:
	mov	r1, r5
	mov	r0, #0
	bl	get_user
	cmp	r0, #0
	bne	.L217
	ldr	r3, .L232+8
	ldr	r6, [r3]
	rsb	r6, r6, #0
	b	.L1
.L25:
	cmp	r2, #0
	beq	.L105
	ldr	r3, .L232+36
	ldr	r1, [r4, #4]
	ldr	r3, [r3]
	mov	r0, r7
	and	r1, r1, r3
	bl	drain_dac
	mov	r6, r0
	b	.L1
.L26:
	ldr	r3, .L232+12
	mov	r1, r5
	ldr	r3, [r3]
	tst	r0, r3
	ldrne	r0, [r7, #108]
	ldreq	r0, [r7, #32]
	bl	put_user
	mov	r6, r0
	b	.L1
.L27:
	ldr	r3, .L232+12
	mov	r1, r5
	ldr	r3, [r3]
	tst	r0, r3
	ldrne	r0, [r7, #104]
	ldreq	r0, [r7, #28]
	bl	put_user
	mov	r6, r0
	b	.L1
.L23:
	mov	r1, r5
	mov	r0, #0
	bl	get_user
	cmp	r0, #0
	bne	.L217
	ldr	r2, .L232+12
	ldr	r3, [r4]
	ldr	r2, [r2]
	tst	r3, r2
	bne	.L231
.L42:
	ldr	r2, [r8]
	tst	r3, r2
	beq	.L105
	mov	r0, r7
	bl	stop_dac
	mov	r1, #1
	ldr	r3, .L232+68
	ldr	r2, [r7, #4]
	ldr	r3, [r3]
	str	r1, [r7, #28]
	tst	r2, r3
	beq	.L218
	ldr	r4, .L232+72
	ldr	r0, [r7, #8]
	ldr	r1, [r4]
	bl	rdcodec
	ldr	r3, .L232+76
	ldr	r1, .L232+80
	ldr	r2, .L232+84
	ldr	r1, [r1]
	ldr	r3, [r3]
	ldr	r2, [r2]
	orr	r3, r3, r1
	orr	r2, r3, r2
	orr	r2, r2, r0
	ldr	r1, [r4]
	ldr	r0, [r7, #8]
	bl	wrcodec
	b	.L218
.L226:
	mov	r0, r7
	bl	stop_dac
	bl	synchronize_irq
	mov	r2, #0
	ldr	r3, [r7, #64]
	ldr	r0, [r4]
	str	r2, [r7, #20]
	str	r2, [r7, #16]
	str	r3, [r7, #68]
	str	r3, [r7, #76]
	b	.L30
.L81:
	ldr	r0, [r7, #68]
	bl	virt_to_phys
	mov	r8, r0
	ldr	r0, [r7, #64]
	bl	virt_to_phys
	sub	r8, r8, r0
	str	r8, [sp, #20]
	b	.L82
.L78:
	ldr	r0, [r7, #152]
	bl	virt_to_phys
	mov	r8, r0
	ldr	r0, [r7, #140]
	bl	virt_to_phys
	sub	r8, r8, r0
	str	r8, [sp, #20]
	b	.L79
.L62:
	ldr	r3, .L232+12
	ldr	r2, [r4]
	ldr	r3, [r3]
	tst	r2, r3
	beq	.L67
	ldr	r3, [r7, #108]
	cmp	r3, #16
	beq	.L69
.L68:
	ldr	r3, .L232+60
	ldr	r9, [r3]
	b	.L65
.L225:
	mov	r0, r7
	bl	stop_adc
	mov	r1, #4
	mov	r0, r7
	str	r1, [r7, #124]
	str	r1, [r7, #128]
	bl	prog_dmabuf_adc
	subs	r6, r0, #0
	bne	.L1
	ldr	r3, [r4]
	b	.L86
.L231:
	mov	r0, r7
	bl	stop_adc
	mov	r3, #1
	mov	r0, r7
	str	r3, [r7, #104]
	bl	prog_dmabuf_adc
	subs	r6, r0, #0
	bne	.L1
	ldr	r3, [r4]
	b	.L42
.L223:
	mov	r0, r7
	bl	stop_adc
	ldr	r3, .L232+56
	mov	r0, r7
	ldr	r3, [r3]
	cmp	r3, r9
	movne	r3, #8
	moveq	r3, #16
	ldrne	r2, .L232+60
	str	r3, [r7, #108]
	ldrne	r9, [r2]
	bl	prog_dmabuf_adc
	subs	r6, r0, #0
	bne	.L1
	ldr	r3, [r4]
	b	.L63
.L224:
	mov	r0, r7
	bl	stop_dac
	ldr	r3, .L232+56
	mov	r0, r7
	ldr	r3, [r3]
	cmp	r3, r9
	movne	r3, #8
	moveq	r3, #16
	ldrne	r2, .L232+60
	str	r3, [r7, #32]
	ldrne	r9, [r2]
	bl	prog_dmabuf_dac
	subs	r6, r0, #0
	beq	.L65
	b	.L1
.L229:
	mov	r0, r7
	bl	prog_dmabuf_adc
	subs	r6, r0, #0
	bne	.L1
	ldr	r3, [r7]
	b	.L38
.L228:
	mov	r0, r7
	bl	stop_dac
	mov	r1, #0
	mov	r0, r7
	bl	set_dac_rate
	b	.L37
.L227:
	mov	r0, r7
	bl	stop_adc
	mov	r1, #0
	mov	r0, r7
	bl	set_adc_rate
	ldr	r3, [r4]
	b	.L36
.L230:
	mov	r0, r7
	bl	prog_dmabuf_dac
	subs	r6, r0, #0
	beq	.L39
	b	.L1
.L67:
	ldr	r3, [r7, #32]
	cmp	r3, #16
	bne	.L68
.L69:
	ldr	r3, .L232+56
	ldr	r9, [r3]
	b	.L65
.L222:
	bl	__stack_chk_fail
.L2:
	mov	r2, r5
	mov	r1, ip
	ldr	r0, [r7, #8]
	bl	mixdev_ioctl
	mov	r6, r0
	b	.L1
.L233:
	.align	2
.L232:
	.word	FMODE_WRITE
	.word	.LC1
	.word	EINVAL
	.word	FMODE_READ
	.word	AFMT_QUERY
	.word	.LC0
	.word	EFAULT
	.word	PCM_ENABLE_INPUT
	.word	PCM_ENABLE_OUTPUT
	.word	O_NONBLOCK
	.word	DSP_CAP_REALTIME
	.word	DSP_CAP_DUPLEX
	.word	DSP_CAP_TRIGGER
	.word	DSP_CAP_MMAP
	.word	AFMT_S16_LE
	.word	AFMT_U8
	.word	SOUND_VERSION
	.word	AC97_EXT_DACS
	.word	AC97_EXTENDED_STATUS
	.word	AC97_EXTSTAT_PRI
	.word	AC97_EXTSTAT_PRJ
	.word	AC97_EXTSTAT_PRK
	.size	au1550_ioctl, .-au1550_ioctl
	.comm	ioctl_str,4,4
	.comm	SOUND_VERSION,4,4
	.comm	PCM_ENABLE_OUTPUT,4,4
	.comm	PCM_ENABLE_INPUT,4,4
	.comm	O_NONBLOCK,4,4
	.comm	FMODE_WRITE,4,4
	.comm	FMODE_READ,4,4
	.comm	EINVAL,4,4
	.comm	EFAULT,4,4
	.comm	DSP_CAP_TRIGGER,4,4
	.comm	DSP_CAP_REALTIME,4,4
	.comm	DSP_CAP_MMAP,4,4
	.comm	DSP_CAP_DUPLEX,4,4
	.comm	AFMT_U8,4,4
	.comm	AFMT_S16_LE,4,4
	.comm	AFMT_QUERY,4,4
	.comm	AC97_EXT_DACS,4,4
	.comm	AC97_EXTSTAT_PRK,4,4
	.comm	AC97_EXTSTAT_PRJ,4,4
	.comm	AC97_EXTSTAT_PRI,4,4
	.comm	AC97_EXTID_SDAC,4,4
	.comm	AC97_EXTENDED_STATUS,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
