	.file	"extr_hcd_intr.c_dwc2_hc_ahberr_intr.c"
	.intel_syntax noprefix
	.text
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"IN"
.LC1:
	.string	"OUT"
.LC2:
	.string	"UNKNOWN"
.LC3:
	.string	"INTERRUPT"
.LC4:
	.string	"ISOCHRONOUS"
.LC5:
	.string	"CONTROL"
.LC6:
	.string	"BULK"
.LC7:
	.string	"HIGH"
.LC8:
	.string	"FULL"
.LC9:
	.string	"LOW"
	.section	.rodata.str1.8,"aMS",@progbits,1
	.align 8
.LC10:
	.string	"--Host Channel %d Interrupt: AHB Error--\n"
	.section	.rodata.str1.1
.LC11:
	.string	"AHB ERROR, Channel %d\n"
	.section	.rodata.str1.8
	.align 8
.LC12:
	.string	"  hcchar 0x%08x, hcsplt 0x%08x\n"
	.align 8
.LC13:
	.string	"  hctsiz 0x%08x, hc_dma 0x%08x\n"
	.section	.rodata.str1.1
.LC14:
	.string	"  Device address: %d\n"
.LC15:
	.string	"  Endpoint: %d, %s\n"
.LC16:
	.string	"  Endpoint type: %s\n"
.LC17:
	.string	"  Speed: %s\n"
	.section	.rodata.str1.8
	.align 8
.LC18:
	.string	"  Max packet size: %d (mult %d)\n"
	.section	.rodata.str1.1
.LC19:
	.string	"  Data buffer length: %d\n"
	.section	.rodata.str1.8
	.align 8
.LC20:
	.string	"  Transfer buffer: %p, Transfer DMA: %08lx\n"
	.align 8
.LC21:
	.string	"  Setup buffer: %p, Setup DMA: %08lx\n"
	.section	.rodata.str1.1
.LC22:
	.string	"  Interval: %d\n"
	.text
	.p2align 4
	.type	dwc2_hc_ahberr_intr, @function
dwc2_hc_ahberr_intr:
.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
	mov	r14, rcx
	push	r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	mov	r13, rsi
	lea	rsi, .LC10[rip]
	push	r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	mov	r12d, edx
	push	rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	mov	rbp, rdi
	push	rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	sub	rsp, 24
	.cfi_def_cfa_offset 80
	mov	rbx, QWORD PTR [rcx]
	mov	edi, DWORD PTR 8[rdi]
	call	dev_dbg@PLT
	test	rbx, rbx
	je	.L2
	mov	rdx, r14
	mov	rsi, r13
	mov	rdi, rbp
	call	dwc2_hc_handle_tt_clear@PLT
	mov	edi, r12d
	call	HCCHAR@PLT
	mov	rdi, rbp
	mov	esi, eax
	call	dwc2_readl@PLT
	mov	edi, r12d
	mov	DWORD PTR 12[rsp], eax
	call	HCSPLT@PLT
	mov	rdi, rbp
	mov	esi, eax
	call	dwc2_readl@PLT
	mov	edi, r12d
	mov	DWORD PTR 8[rsp], eax
	call	HCTSIZ@PLT
	mov	rdi, rbp
	mov	esi, eax
	call	dwc2_readl@PLT
	mov	edi, r12d
	mov	r15d, eax
	call	HCDMA@PLT
	mov	rdi, rbp
	mov	esi, eax
	call	dwc2_readl@PLT
	mov	edi, DWORD PTR 8[rbp]
	mov	edx, r12d
	lea	rsi, .LC11[rip]
	mov	DWORD PTR [rsp], eax
	xor	eax, eax
	call	dev_err@PLT
	mov	r9d, DWORD PTR 12[rsp]
	mov	edi, DWORD PTR 8[rbp]
	xor	eax, eax
	mov	ecx, DWORD PTR 8[rsp]
	lea	rsi, .LC12[rip]
	mov	edx, r9d
	call	dev_err@PLT
	mov	r8d, DWORD PTR [rsp]
	mov	edi, DWORD PTR 8[rbp]
	mov	edx, r15d
	lea	rsi, .LC13[rip]
	lea	r15, 44[rbx]
	xor	eax, eax
	mov	ecx, r8d
	call	dev_err@PLT
	mov	rdi, r15
	call	dwc2_hcd_get_dev_addr@PLT
	mov	edi, DWORD PTR 8[rbp]
	lea	rsi, .LC14[rip]
	mov	rdx, rax
	xor	eax, eax
	call	dev_err@PLT
	mov	rdi, r15
	call	dwc2_hcd_is_pipe_in@PLT
	lea	rcx, .LC0[rip]
	mov	rdi, r15
	test	rax, rax
	lea	rax, .LC1[rip]
	cmove	rcx, rax
	mov	QWORD PTR [rsp], rcx
	call	dwc2_hcd_get_ep_num@PLT
	mov	edi, DWORD PTR 8[rbp]
	mov	rcx, QWORD PTR [rsp]
	lea	rsi, .LC15[rip]
	mov	edx, eax
	xor	eax, eax
	call	dev_err@PLT
	mov	rdi, r15
	call	dwc2_hcd_get_pipe_type@PLT
	lea	rdx, .LC5[rip]
	cmp	eax, 133
	je	.L4
	jg	.L5
	lea	rdx, .LC4[rip]
	cmp	eax, 131
	je	.L4
	cmp	eax, 132
	lea	rdx, .LC2[rip]
	lea	rax, .LC3[rip]
	cmove	rdx, rax
.L4:
	mov	edi, DWORD PTR 8[rbp]
	lea	rsi, .LC16[rip]
	xor	eax, eax
	call	dev_err@PLT
	mov	eax, DWORD PTR 0[r13]
	lea	rdx, .LC7[rip]
	cmp	eax, 129
	je	.L6
	lea	rdx, .LC8[rip]
	cmp	eax, 130
	je	.L6
	cmp	eax, 128
	lea	rdx, .LC2[rip]
	lea	rax, .LC9[rip]
	cmove	rdx, rax
.L6:
	mov	edi, DWORD PTR 8[rbp]
	lea	rsi, .LC17[rip]
	xor	eax, eax
	call	dev_err@PLT
	mov	rdi, r15
	call	dwc2_hcd_get_maxp_mult@PLT
	mov	rdi, r15
	mov	DWORD PTR [rsp], eax
	call	dwc2_hcd_get_maxp@PLT
	mov	ecx, DWORD PTR [rsp]
	mov	edi, DWORD PTR 8[rbp]
	lea	rsi, .LC18[rip]
	mov	edx, eax
	xor	eax, eax
	call	dev_err@PLT
	mov	edi, DWORD PTR 8[rbp]
	mov	rdx, QWORD PTR [rbx]
	xor	eax, eax
	lea	rsi, .LC19[rip]
	call	dev_err@PLT
	mov	rcx, QWORD PTR 32[rbx]
	mov	edx, DWORD PTR 40[rbx]
	xor	eax, eax
	mov	edi, DWORD PTR 8[rbp]
	lea	rsi, .LC20[rip]
	call	dev_err@PLT
	mov	rcx, QWORD PTR 16[rbx]
	mov	edx, DWORD PTR 24[rbx]
	xor	eax, eax
	mov	edi, DWORD PTR 8[rbp]
	lea	rsi, .LC21[rip]
	call	dev_err@PLT
	mov	rdx, QWORD PTR 8[rbx]
	mov	edi, DWORD PTR 8[rbp]
	xor	eax, eax
	lea	rsi, .LC22[rip]
	call	dev_err@PLT
	cmp	QWORD PTR 0[rbp], 0
	jne	.L26
	mov	edx, DWORD PTR EIO[rip]
	mov	rsi, r14
	mov	rdi, rbp
	neg	edx
	call	dwc2_host_complete@PLT
.L2:
	mov	edx, DWORD PTR DWC2_HC_XFER_AHB_ERR[rip]
	mov	rsi, r13
	mov	rdi, rbp
	call	dwc2_hc_halt@PLT
.L8:
	mov	edx, DWORD PTR HCINTMSK_AHBERR[rip]
	add	rsp, 24
	.cfi_remember_state
	.cfi_def_cfa_offset 56
	mov	esi, r12d
	mov	rdi, rbp
	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
	jmp	disable_hc_int@PLT
	.p2align 4,,10
	.p2align 3
.L5:
	.cfi_restore_state
	cmp	eax, 134
	lea	rdx, .LC2[rip]
	lea	rax, .LC6[rip]
	cmove	rdx, rax
	jmp	.L4
	.p2align 4,,10
	.p2align 3
.L26:
	mov	ecx, DWORD PTR DWC2_HC_XFER_AHB_ERR[rip]
	mov	edx, r12d
	mov	rsi, r13
	mov	rdi, rbp
	call	dwc2_hcd_complete_xfer_ddma@PLT
	jmp	.L8
	.cfi_endproc
.LFE0:
	.size	dwc2_hc_ahberr_intr, .-dwc2_hc_ahberr_intr
	.comm	HCINTMSK_AHBERR,4,4
	.comm	EIO,4,4
	.comm	DWC2_HC_XFER_AHB_ERR,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_hcd_intr.c_dwc2_hc_ahberr_intr.c"
	.text
	.section	.rodata.str1.4,"aMS",%progbits,1
	.align	2
.LC0:
	.ascii	"IN\000"
	.align	2
.LC1:
	.ascii	"OUT\000"
	.align	2
.LC2:
	.ascii	"UNKNOWN\000"
	.align	2
.LC3:
	.ascii	"--Host Channel %d Interrupt: AHB Error--\012\000"
	.align	2
.LC4:
	.ascii	"AHB ERROR, Channel %d\012\000"
	.align	2
.LC5:
	.ascii	"  hcchar 0x%08x, hcsplt 0x%08x\012\000"
	.align	2
.LC6:
	.ascii	"  hctsiz 0x%08x, hc_dma 0x%08x\012\000"
	.align	2
.LC7:
	.ascii	"  Device address: %d\012\000"
	.align	2
.LC8:
	.ascii	"  Endpoint: %d, %s\012\000"
	.align	2
.LC9:
	.ascii	"  Endpoint type: %s\012\000"
	.align	2
.LC10:
	.ascii	"  Speed: %s\012\000"
	.align	2
.LC11:
	.ascii	"  Max packet size: %d (mult %d)\012\000"
	.align	2
.LC12:
	.ascii	"  Data buffer length: %d\012\000"
	.align	2
.LC13:
	.ascii	"  Transfer buffer: %p, Transfer DMA: %08lx\012\000"
	.align	2
.LC14:
	.ascii	"  Setup buffer: %p, Setup DMA: %08lx\012\000"
	.align	2
.LC15:
	.ascii	"  Interval: %d\012\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	dwc2_hc_ahberr_intr, %function
dwc2_hc_ahberr_intr:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	ldr	r6, [r3]
	mov	r4, r0
	mov	r7, r1
	ldr	r0, [r0, #4]
	ldr	r1, .L17
	sub	sp, sp, #12
	mov	r8, r3
	mov	r5, r2
	bl	dev_dbg
	cmp	r6, #0
	beq	.L2
	mov	r2, r8
	mov	r1, r7
	mov	r0, r4
	bl	dwc2_hc_handle_tt_clear
	mov	r0, r5
	bl	HCCHAR
	mov	r1, r0
	mov	r0, r4
	bl	dwc2_readl
	mov	fp, r0
	mov	r0, r5
	bl	HCSPLT
	mov	r1, r0
	mov	r0, r4
	bl	dwc2_readl
	mov	r3, r0
	mov	r0, r5
	str	r3, [sp, #4]
	bl	HCTSIZ
	mov	r1, r0
	mov	r0, r4
	bl	dwc2_readl
	mov	r9, r0
	mov	r0, r5
	bl	HCDMA
	mov	r1, r0
	mov	r0, r4
	bl	dwc2_readl
	mov	r10, r0
	mov	r2, r5
	ldr	r1, .L17+4
	ldr	r0, [r4, #4]
	bl	dev_err
	mov	r2, fp
	ldr	r3, [sp, #4]
	ldr	r1, .L17+8
	ldr	r0, [r4, #4]
	bl	dev_err
	mov	r3, r10
	mov	r2, r9
	ldr	r1, .L17+12
	add	r9, r6, #24
	ldr	r0, [r4, #4]
	bl	dev_err
	mov	r0, r9
	ldr	r10, [r4, #4]
	bl	dwc2_hcd_get_dev_addr
	ldr	r1, .L17+16
	mov	r2, r0
	mov	r0, r10
	bl	dev_err
	mov	r0, r9
	ldr	fp, [r4, #4]
	bl	dwc2_hcd_get_ep_num
	mov	r10, r0
	mov	r0, r9
	bl	dwc2_hcd_is_pipe_in
	mov	ip, r0
	ldr	r1, .L17+20
	cmp	ip, #0
	mov	r2, r10
	ldr	r3, .L17+24
	mov	r0, fp
	moveq	r3, r1
	ldr	r1, .L17+28
	bl	dev_err
	mov	r0, r9
	bl	dwc2_hcd_get_pipe_type
	sub	r0, r0, #131
	cmp	r0, #3
	ldrls	r3, .L17+32
	ldrhi	r2, .L17+36
	ldrls	r2, [r3, r0, lsl #2]
	ldr	r1, .L17+40
	ldr	r0, [r4, #4]
	bl	dev_err
	ldr	r3, [r7]
	ldr	r1, .L17+44
	sub	r3, r3, #128
	cmp	r3, #2
	ldrls	r2, .L17+32
	ldrhi	r2, .L17+36
	addls	r3, r2, r3, lsl #2
	ldrls	r2, [r3, #16]
	ldr	r0, [r4, #4]
	bl	dev_err
	mov	r0, r9
	ldr	r10, [r4, #4]
	bl	dwc2_hcd_get_maxp
	mov	r2, r0
	mov	r0, r9
	mov	r9, r2
	bl	dwc2_hcd_get_maxp_mult
	mov	r2, r9
	mov	r3, r0
	ldr	r1, .L17+48
	mov	r0, r10
	bl	dev_err
	ldr	r2, [r6]
	ldr	r1, .L17+52
	ldr	r0, [r4, #4]
	bl	dev_err
	ldr	r3, [r6, #16]
	ldr	r2, [r6, #20]
	ldr	r1, .L17+56
	ldr	r0, [r4, #4]
	bl	dev_err
	ldr	r3, [r6, #8]
	ldr	r2, [r6, #12]
	ldr	r1, .L17+60
	ldr	r0, [r4, #4]
	bl	dev_err
	ldr	r2, [r6, #4]
	ldr	r1, .L17+64
	ldr	r0, [r4, #4]
	bl	dev_err
	ldr	r3, [r4]
	cmp	r3, #0
	bne	.L16
	ldr	r3, .L17+68
	mov	r1, r8
	ldr	r2, [r3]
	mov	r0, r4
	rsb	r2, r2, #0
	bl	dwc2_host_complete
.L2:
	ldr	r3, .L17+72
	mov	r1, r7
	mov	r0, r4
	ldr	r2, [r3]
	bl	dwc2_hc_halt
.L7:
	mov	r1, r5
	mov	r0, r4
	ldr	r3, .L17+76
	ldr	r2, [r3]
	add	sp, sp, #12
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	b	disable_hc_int
.L16:
	ldr	r3, .L17+72
	mov	r1, r7
	mov	r2, r5
	mov	r0, r4
	ldr	r3, [r3]
	bl	dwc2_hcd_complete_xfer_ddma
	b	.L7
.L18:
	.align	2
.L17:
	.word	.LC3
	.word	.LC4
	.word	.LC5
	.word	.LC6
	.word	.LC7
	.word	.LC1
	.word	.LC0
	.word	.LC8
	.word	.LANCHOR0
	.word	.LC2
	.word	.LC9
	.word	.LC10
	.word	.LC11
	.word	.LC12
	.word	.LC13
	.word	.LC14
	.word	.LC15
	.word	EIO
	.word	DWC2_HC_XFER_AHB_ERR
	.word	HCINTMSK_AHBERR
	.size	dwc2_hc_ahberr_intr, .-dwc2_hc_ahberr_intr
	.section	.rodata.str1.4
	.align	2
.LC16:
	.ascii	"LOW\000"
	.align	2
.LC17:
	.ascii	"HIGH\000"
	.align	2
.LC18:
	.ascii	"FULL\000"
	.align	2
.LC19:
	.ascii	"ISOCHRONOUS\000"
	.align	2
.LC20:
	.ascii	"INTERRUPT\000"
	.align	2
.LC21:
	.ascii	"CONTROL\000"
	.align	2
.LC22:
	.ascii	"BULK\000"
	.comm	HCINTMSK_AHBERR,4,4
	.comm	EIO,4,4
	.comm	DWC2_HC_XFER_AHB_ERR,4,4
	.section	.rodata
	.align	2
	.set	.LANCHOR0,. + 0
	.type	CSWTCH.6, %object
	.size	CSWTCH.6, 16
CSWTCH.6:
	.word	.LC19
	.word	.LC20
	.word	.LC21
	.word	.LC22
	.type	CSWTCH.7, %object
	.size	CSWTCH.7, 12
CSWTCH.7:
	.word	.LC16
	.word	.LC17
	.word	.LC18
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
