	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function interrupt_handler
_interrupt_handler:                     ## @interrupt_handler
	.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
	pushq	%rax
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	_IRQ_NONE@GOTPCREL(%rip), %rbx
	testq	%rsi, %rsi
	je	LBB0_47
## %bb.1:
	movq	%rsi, %r13
	leaq	4(%rsi), %r14
	movq	%r14, %rdi
	callq	_spin_lock
	movl	40(%r13), %edi
	callq	_readw
	cmpl	$-1, %eax
	je	LBB0_6
## %bb.2:
	movl	%eax, %r15d
	andl	(%r13), %r15d
	je	LBB0_6
## %bb.3:
	movl	%r15d, %edi
	callq	_interrupt2str
	movl	(%r13), %ecx
	leaq	L_.str(%rip), %rdi
	movl	%eax, %esi
	movl	%r15d, %edx
	callq	_DBG4
	movq	_RESET@GOTPCREL(%rip), %r12
	testl	%r15d, (%r12)
	je	LBB0_7
## %bb.4:
	movq	%r13, %rdi
	callq	_nozomi_read_config_table
	xorl	%edi, %edi
	testl	%eax, %eax
	sete	%dil
	callq	_unlikely
	testq	%rax, %rax
	je	LBB0_33
## %bb.5:
	movl	$0, (%r13)
	movl	20(%r13), %esi
	xorl	%edi, %edi
	callq	_writew
	movq	32(%r13), %rdi
	leaq	L_.str.1(%rip), %rsi
LBB0_38:
	callq	_dev_err
	jmp	LBB0_39
LBB0_6:
	movq	%r14, %rdi
	callq	_spin_unlock
	jmp	LBB0_47
LBB0_7:
	movq	_CTRL_UL@GOTPCREL(%rip), %r12
	testl	%r15d, (%r12)
	je	LBB0_10
## %bb.8:
	leaq	L_.str.2(%rip), %rdi
	callq	_DBG1
	movl	(%r12), %edi
	notl	%edi
	andl	(%r13), %edi
	movl	%edi, (%r13)
	movl	20(%r13), %esi
	callq	_writew
	movq	%r13, %rdi
	callq	_send_flow_control
	testq	%rax, %rax
	je	LBB0_10
## %bb.9:
	movl	(%r12), %edi
	movl	24(%r13), %esi
	callq	_writew
	movl	(%r12), %edi
	orl	(%r13), %edi
	movl	%edi, (%r13)
	movl	20(%r13), %esi
	callq	_writew
LBB0_10:
	movq	_CTRL_DL@GOTPCREL(%rip), %r12
	testl	%r15d, (%r12)
	je	LBB0_12
## %bb.11:
	movq	%r13, %rdi
	callq	_receive_flow_control
	movl	(%r12), %edi
	movl	24(%r13), %esi
	callq	_writew
LBB0_12:
	movq	_MDM_DL@GOTPCREL(%rip), %rax
	testl	%r15d, (%rax)
	je	LBB0_14
## %bb.13:
	movq	_PORT_MDM@GOTPCREL(%rip), %rax
	movq	(%rax), %rsi
	movq	8(%r13), %rax
	leaq	(%rax,%rsi,8), %rdx
	addq	$4, %rdx
	movq	_MDM_DL1@GOTPCREL(%rip), %rax
	movl	(%rax), %r8d
	movq	_MDM_DL2@GOTPCREL(%rip), %rax
	movl	(%rax), %r9d
	movq	%r13, %rdi
	movl	%r15d, %ecx
	callq	_handle_data_dl
	testl	%eax, %eax
	je	LBB0_35
LBB0_14:
	movq	_MDM_UL@GOTPCREL(%rip), %rax
	testl	%r15d, (%rax)
	je	LBB0_16
## %bb.15:
	movq	_PORT_MDM@GOTPCREL(%rip), %rax
	movq	(%rax), %rsi
	movq	%r13, %rdi
	movl	%r15d, %edx
	callq	_handle_data_ul
	testl	%eax, %eax
	je	LBB0_36
LBB0_16:
	movq	_DIAG_DL@GOTPCREL(%rip), %rax
	testl	%r15d, (%rax)
	je	LBB0_18
## %bb.17:
	movq	_PORT_DIAG@GOTPCREL(%rip), %rax
	movq	(%rax), %rsi
	movq	8(%r13), %rax
	leaq	(%rax,%rsi,8), %rdx
	addq	$4, %rdx
	movq	_DIAG_DL1@GOTPCREL(%rip), %rax
	movl	(%rax), %r8d
	movq	_DIAG_DL2@GOTPCREL(%rip), %rax
	movl	(%rax), %r9d
	movq	%r13, %rdi
	movl	%r15d, %ecx
	callq	_handle_data_dl
	testl	%eax, %eax
	je	LBB0_37
LBB0_18:
	movq	_DIAG_UL@GOTPCREL(%rip), %r12
	movl	(%r12), %edi
	testl	%r15d, %edi
	je	LBB0_21
## %bb.19:
	notl	%edi
	andl	(%r13), %edi
	movl	%edi, (%r13)
	movl	20(%r13), %esi
	callq	_writew
	movq	_PORT_DIAG@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	movq	%r13, %rsi
	callq	_send_data
	testq	%rax, %rax
	je	LBB0_21
## %bb.20:
	movl	(%r12), %edi
	movl	24(%r13), %esi
	callq	_writew
	movl	(%r12), %edi
	orl	(%r13), %edi
	movl	%edi, (%r13)
	movl	20(%r13), %esi
	callq	_writew
LBB0_21:
	movq	_APP1_DL@GOTPCREL(%rip), %r12
	testl	%r15d, (%r12)
	je	LBB0_24
## %bb.22:
	movq	_PORT_APP1@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	movq	%r13, %rsi
	callq	_receive_data
	testq	%rax, %rax
	je	LBB0_24
## %bb.23:
	movl	(%r12), %edi
	movl	24(%r13), %esi
	callq	_writew
LBB0_24:
	movq	_APP1_UL@GOTPCREL(%rip), %r12
	movl	(%r12), %edi
	testl	%r15d, %edi
	je	LBB0_27
## %bb.25:
	notl	%edi
	andl	(%r13), %edi
	movl	%edi, (%r13)
	movl	20(%r13), %esi
	callq	_writew
	movq	_PORT_APP1@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	movq	%r13, %rsi
	callq	_send_data
	testq	%rax, %rax
	je	LBB0_27
## %bb.26:
	movl	(%r12), %edi
	movl	24(%r13), %esi
	callq	_writew
	movl	(%r12), %edi
	orl	(%r13), %edi
	movl	%edi, (%r13)
	movl	20(%r13), %esi
	callq	_writew
LBB0_27:
	movq	_APP2_DL@GOTPCREL(%rip), %r12
	testl	%r15d, (%r12)
	je	LBB0_30
## %bb.28:
	movq	_PORT_APP2@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	movq	%r13, %rsi
	callq	_receive_data
	testq	%rax, %rax
	je	LBB0_30
## %bb.29:
	movl	(%r12), %edi
	movl	24(%r13), %esi
	callq	_writew
LBB0_30:
	movq	_APP2_UL@GOTPCREL(%rip), %r12
	movl	(%r12), %edi
	testl	%r15d, %edi
	je	LBB0_39
## %bb.31:
	notl	%edi
	andl	(%r13), %edi
	movl	%edi, (%r13)
	movl	20(%r13), %esi
	callq	_writew
	movq	_PORT_APP2@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	movq	%r13, %rsi
	callq	_send_data
	testq	%rax, %rax
	je	LBB0_39
## %bb.32:
	movl	(%r12), %edi
	movl	24(%r13), %esi
	callq	_writew
	movl	(%r12), %edi
	orl	(%r13), %edi
	movl	%edi, (%r13)
	movl	20(%r13), %esi
	jmp	LBB0_34
LBB0_33:
	movl	(%r12), %edi
	movl	24(%r13), %esi
LBB0_34:
	callq	_writew
LBB0_39:
	movq	%r14, %rdi
	callq	_spin_unlock
	movq	_NOZOMI_MAX_PORTS@GOTPCREL(%rip), %rax
	movq	_IRQ_HANDLED@GOTPCREL(%rip), %rbx
	cmpl	$0, (%rax)
	je	LBB0_47
## %bb.40:
	movq	%r13, %r12
	leaq	16(%r13), %r14
	xorl	%r13d, %r13d
	xorl	%ebx, %ebx
	jmp	LBB0_43
	.p2align	4, 0x90
LBB0_41:                                ##   in Loop: Header=BB0_43 Depth=1
	movq	%r15, %rdi
	callq	_tty_kref_put
LBB0_42:                                ##   in Loop: Header=BB0_43 Depth=1
	incq	%rbx
	movq	_NOZOMI_MAX_PORTS@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	addq	$8, %r13
	cmpq	%rax, %rbx
	jae	LBB0_46
LBB0_43:                                ## =>This Inner Loop Header: Depth=1
	movl	%ebx, %edi
	movq	%r14, %rsi
	callq	_test_and_clear_bit
	testq	%rax, %rax
	je	LBB0_42
## %bb.44:                              ##   in Loop: Header=BB0_43 Depth=1
	movq	8(%r12), %rdi
	addq	%r13, %rdi
	callq	_tty_port_tty_get
	movq	%rax, %r15
	testq	%rax, %rax
	je	LBB0_41
## %bb.45:                              ##   in Loop: Header=BB0_43 Depth=1
	movq	%r15, %rdi
	callq	_tty_flip_buffer_push
	jmp	LBB0_41
LBB0_46:
	movq	_IRQ_HANDLED@GOTPCREL(%rip), %rbx
LBB0_47:
	movl	(%rbx), %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_35:
	movq	32(%r13), %rdi
	leaq	L_.str.3(%rip), %rsi
	jmp	LBB0_38
LBB0_36:
	movq	32(%r13), %rdi
	leaq	L_.str.4(%rip), %rsi
	jmp	LBB0_38
LBB0_37:
	movq	32(%r13), %rdi
	leaq	L_.str.5(%rip), %rsi
	jmp	LBB0_38
	.cfi_endproc
                                        ## -- End function
	.comm	_IRQ_NONE,4,2                   ## @IRQ_NONE
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"%s irq:0x%04X, prev:0x%04X"

	.comm	_RESET,4,2                      ## @RESET
L_.str.1:                               ## @.str.1
	.asciz	"Could not read status from card, we should disable interface\n"

	.comm	_CTRL_UL,4,2                    ## @CTRL_UL
L_.str.2:                               ## @.str.2
	.asciz	"CTRL_UL"

	.comm	_CTRL_DL,4,2                    ## @CTRL_DL
	.comm	_MDM_DL,4,2                     ## @MDM_DL
	.comm	_PORT_MDM,8,3                   ## @PORT_MDM
	.comm	_MDM_DL1,4,2                    ## @MDM_DL1
	.comm	_MDM_DL2,4,2                    ## @MDM_DL2
L_.str.3:                               ## @.str.3
	.asciz	"MDM_DL out of sync!\n"

	.comm	_MDM_UL,4,2                     ## @MDM_UL
L_.str.4:                               ## @.str.4
	.asciz	"MDM_UL out of sync!\n"

	.comm	_DIAG_DL,4,2                    ## @DIAG_DL
	.comm	_PORT_DIAG,8,3                  ## @PORT_DIAG
	.comm	_DIAG_DL1,4,2                   ## @DIAG_DL1
	.comm	_DIAG_DL2,4,2                   ## @DIAG_DL2
L_.str.5:                               ## @.str.5
	.asciz	"DIAG_DL out of sync!\n"

	.comm	_DIAG_UL,4,2                    ## @DIAG_UL
	.comm	_APP1_DL,4,2                    ## @APP1_DL
	.comm	_PORT_APP1,8,3                  ## @PORT_APP1
	.comm	_APP1_UL,4,2                    ## @APP1_UL
	.comm	_APP2_DL,4,2                    ## @APP2_DL
	.comm	_PORT_APP2,8,3                  ## @PORT_APP2
	.comm	_APP2_UL,4,2                    ## @APP2_UL
	.comm	_NOZOMI_MAX_PORTS,4,2           ## @NOZOMI_MAX_PORTS
	.comm	_IRQ_HANDLED,4,2                ## @IRQ_HANDLED
	.no_dead_strip	_interrupt_handler
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function interrupt_handler
_interrupt_handler:                     ; @interrupt_handler
	.cfi_startproc
; %bb.0:
	stp	x26, x25, [sp, #-80]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 80
	stp	x24, x23, [sp, #16]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #32]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #64]             ; 16-byte Folded Spill
	add	x29, sp, #64
	.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
	cbz	x1, LBB0_8
; %bb.1:
	mov	x19, x1
	add	x20, x1, #4
	mov	x0, x20
	bl	_spin_lock
	ldr	w0, [x19, #40]
	bl	_readw
	cmn	w0, #1
	b.eq	LBB0_7
; %bb.2:
	ldr	w8, [x19]
	ands	w21, w8, w0
	b.eq	LBB0_7
; %bb.3:
	mov	x0, x21
	bl	_interrupt2str
	mov	x1, x0
	ldr	w3, [x19]
Lloh0:
	adrp	x0, l_.str@PAGE
Lloh1:
	add	x0, x0, l_.str@PAGEOFF
	mov	x2, x21
	bl	_DBG4
Lloh2:
	adrp	x22, _RESET@GOTPAGE
Lloh3:
	ldr	x22, [x22, _RESET@GOTPAGEOFF]
	ldr	w8, [x22]
	tst	w8, w21
	b.eq	LBB0_10
; %bb.4:
	mov	x0, x19
	bl	_nozomi_read_config_table
	cmp	w0, #0
	cset	w0, eq
	bl	_unlikely
	cbz	x0, LBB0_36
; %bb.5:
	str	wzr, [x19]
	ldr	w1, [x19, #20]
	mov	w0, #0
	bl	_writew
	ldr	x0, [x19, #32]
Lloh4:
	adrp	x1, l_.str.1@PAGE
Lloh5:
	add	x1, x1, l_.str.1@PAGEOFF
LBB0_6:
	bl	_dev_err
	b	LBB0_38
LBB0_7:
	mov	x0, x20
	bl	_spin_unlock
LBB0_8:
Lloh6:
	adrp	x23, _IRQ_NONE@GOTPAGE
Lloh7:
	ldr	x23, [x23, _IRQ_NONE@GOTPAGEOFF]
LBB0_9:
	ldr	w0, [x23]
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #32]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #16]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp], #80             ; 16-byte Folded Reload
	ret
LBB0_10:
Lloh8:
	adrp	x22, _CTRL_UL@GOTPAGE
Lloh9:
	ldr	x22, [x22, _CTRL_UL@GOTPAGEOFF]
	ldr	w8, [x22]
	tst	w8, w21
	b.eq	LBB0_13
; %bb.11:
Lloh10:
	adrp	x0, l_.str.2@PAGE
Lloh11:
	add	x0, x0, l_.str.2@PAGEOFF
	bl	_DBG1
	ldr	w8, [x22]
	ldr	w9, [x19]
	bic	w0, w9, w8
	str	w0, [x19]
	ldr	w1, [x19, #20]
	bl	_writew
	mov	x0, x19
	bl	_send_flow_control
	cbz	x0, LBB0_13
; %bb.12:
	ldr	w0, [x22]
	ldr	w1, [x19, #24]
	bl	_writew
	ldr	w8, [x19]
	ldr	w9, [x22]
	orr	w0, w9, w8
	str	w0, [x19]
	ldr	w1, [x19, #20]
	bl	_writew
LBB0_13:
Lloh12:
	adrp	x22, _CTRL_DL@GOTPAGE
Lloh13:
	ldr	x22, [x22, _CTRL_DL@GOTPAGEOFF]
	ldr	w8, [x22]
	tst	w8, w21
	b.eq	LBB0_15
; %bb.14:
	mov	x0, x19
	bl	_receive_flow_control
	ldr	w0, [x22]
	ldr	w1, [x19, #24]
	bl	_writew
LBB0_15:
Lloh14:
	adrp	x8, _MDM_DL@GOTPAGE
Lloh15:
	ldr	x8, [x8, _MDM_DL@GOTPAGEOFF]
Lloh16:
	ldr	w8, [x8]
Lloh17:
	adrp	x22, _PORT_MDM@GOTPAGE
Lloh18:
	ldr	x22, [x22, _PORT_MDM@GOTPAGEOFF]
	tst	w8, w21
	b.eq	LBB0_17
; %bb.16:
	ldr	x1, [x22]
	ldr	x8, [x19, #8]
	add	x8, x8, x1, lsl #3
	add	x2, x8, #4
Lloh19:
	adrp	x8, _MDM_DL1@GOTPAGE
Lloh20:
	ldr	x8, [x8, _MDM_DL1@GOTPAGEOFF]
Lloh21:
	ldr	w4, [x8]
Lloh22:
	adrp	x8, _MDM_DL2@GOTPAGE
Lloh23:
	ldr	x8, [x8, _MDM_DL2@GOTPAGEOFF]
Lloh24:
	ldr	w5, [x8]
	mov	x0, x19
	mov	x3, x21
	bl	_handle_data_dl
	cbz	w0, LBB0_46
LBB0_17:
Lloh25:
	adrp	x8, _MDM_UL@GOTPAGE
Lloh26:
	ldr	x8, [x8, _MDM_UL@GOTPAGEOFF]
Lloh27:
	ldr	w8, [x8]
	tst	w8, w21
	b.eq	LBB0_19
; %bb.18:
	ldr	x1, [x22]
	mov	x0, x19
	mov	x2, x21
	bl	_handle_data_ul
	cbz	w0, LBB0_47
LBB0_19:
Lloh28:
	adrp	x8, _DIAG_DL@GOTPAGE
Lloh29:
	ldr	x8, [x8, _DIAG_DL@GOTPAGEOFF]
Lloh30:
	ldr	w8, [x8]
Lloh31:
	adrp	x22, _PORT_DIAG@GOTPAGE
Lloh32:
	ldr	x22, [x22, _PORT_DIAG@GOTPAGEOFF]
	tst	w8, w21
	b.eq	LBB0_21
; %bb.20:
	ldr	x1, [x22]
	ldr	x8, [x19, #8]
	add	x8, x8, x1, lsl #3
	add	x2, x8, #4
Lloh33:
	adrp	x8, _DIAG_DL1@GOTPAGE
Lloh34:
	ldr	x8, [x8, _DIAG_DL1@GOTPAGEOFF]
Lloh35:
	ldr	w4, [x8]
Lloh36:
	adrp	x8, _DIAG_DL2@GOTPAGE
Lloh37:
	ldr	x8, [x8, _DIAG_DL2@GOTPAGEOFF]
Lloh38:
	ldr	w5, [x8]
	mov	x0, x19
	mov	x3, x21
	bl	_handle_data_dl
	cbz	w0, LBB0_48
LBB0_21:
Lloh39:
	adrp	x23, _DIAG_UL@GOTPAGE
Lloh40:
	ldr	x23, [x23, _DIAG_UL@GOTPAGEOFF]
	ldr	w8, [x23]
	tst	w8, w21
	b.eq	LBB0_24
; %bb.22:
	ldr	w9, [x19]
	bic	w0, w9, w8
	str	w0, [x19]
	ldr	w1, [x19, #20]
	bl	_writew
	ldr	x0, [x22]
	mov	x1, x19
	bl	_send_data
	cbz	x0, LBB0_24
; %bb.23:
	ldr	w0, [x23]
	ldr	w1, [x19, #24]
	bl	_writew
	ldr	w8, [x19]
	ldr	w9, [x23]
	orr	w0, w9, w8
	str	w0, [x19]
	ldr	w1, [x19, #20]
	bl	_writew
LBB0_24:
Lloh41:
	adrp	x23, _APP1_DL@GOTPAGE
Lloh42:
	ldr	x23, [x23, _APP1_DL@GOTPAGEOFF]
	ldr	w8, [x23]
Lloh43:
	adrp	x22, _PORT_APP1@GOTPAGE
Lloh44:
	ldr	x22, [x22, _PORT_APP1@GOTPAGEOFF]
	tst	w8, w21
	b.eq	LBB0_27
; %bb.25:
	ldr	x0, [x22]
	mov	x1, x19
	bl	_receive_data
	cbz	x0, LBB0_27
; %bb.26:
	ldr	w0, [x23]
	ldr	w1, [x19, #24]
	bl	_writew
LBB0_27:
Lloh45:
	adrp	x23, _APP1_UL@GOTPAGE
Lloh46:
	ldr	x23, [x23, _APP1_UL@GOTPAGEOFF]
	ldr	w8, [x23]
	tst	w8, w21
	b.eq	LBB0_30
; %bb.28:
	ldr	w9, [x19]
	bic	w0, w9, w8
	str	w0, [x19]
	ldr	w1, [x19, #20]
	bl	_writew
	ldr	x0, [x22]
	mov	x1, x19
	bl	_send_data
	cbz	x0, LBB0_30
; %bb.29:
	ldr	w0, [x23]
	ldr	w1, [x19, #24]
	bl	_writew
	ldr	w8, [x19]
	ldr	w9, [x23]
	orr	w0, w9, w8
	str	w0, [x19]
	ldr	w1, [x19, #20]
	bl	_writew
LBB0_30:
Lloh47:
	adrp	x23, _APP2_DL@GOTPAGE
Lloh48:
	ldr	x23, [x23, _APP2_DL@GOTPAGEOFF]
	ldr	w8, [x23]
Lloh49:
	adrp	x22, _PORT_APP2@GOTPAGE
Lloh50:
	ldr	x22, [x22, _PORT_APP2@GOTPAGEOFF]
	tst	w8, w21
	b.eq	LBB0_33
; %bb.31:
	ldr	x0, [x22]
	mov	x1, x19
	bl	_receive_data
	cbz	x0, LBB0_33
; %bb.32:
	ldr	w0, [x23]
	ldr	w1, [x19, #24]
	bl	_writew
LBB0_33:
Lloh51:
	adrp	x23, _APP2_UL@GOTPAGE
Lloh52:
	ldr	x23, [x23, _APP2_UL@GOTPAGEOFF]
	ldr	w8, [x23]
	tst	w8, w21
	b.eq	LBB0_38
; %bb.34:
	ldr	w9, [x19]
	bic	w0, w9, w8
	str	w0, [x19]
	ldr	w1, [x19, #20]
	bl	_writew
	ldr	x0, [x22]
	mov	x1, x19
	bl	_send_data
	cbz	x0, LBB0_38
; %bb.35:
	ldr	w0, [x23]
	ldr	w1, [x19, #24]
	bl	_writew
	ldr	w8, [x19]
	ldr	w9, [x23]
	orr	w0, w9, w8
	str	w0, [x19]
	ldr	w1, [x19, #20]
	b	LBB0_37
LBB0_36:
	ldr	w0, [x22]
	ldr	w1, [x19, #24]
LBB0_37:
	bl	_writew
LBB0_38:
	mov	x0, x20
	bl	_spin_unlock
Lloh53:
	adrp	x24, _NOZOMI_MAX_PORTS@GOTPAGE
Lloh54:
	ldr	x24, [x24, _NOZOMI_MAX_PORTS@GOTPAGEOFF]
	ldr	w8, [x24]
	cbz	w8, LBB0_45
; %bb.39:
	mov	x25, #0
	mov	x20, #0
	add	x21, x19, #16
Lloh55:
	adrp	x23, _IRQ_HANDLED@GOTPAGE
Lloh56:
	ldr	x23, [x23, _IRQ_HANDLED@GOTPAGEOFF]
	b	LBB0_42
LBB0_40:                                ;   in Loop: Header=BB0_42 Depth=1
	mov	x0, x22
	bl	_tty_kref_put
LBB0_41:                                ;   in Loop: Header=BB0_42 Depth=1
	add	x20, x20, #1
	ldr	w8, [x24]
	add	x25, x25, #8
	cmp	x20, x8
	b.hs	LBB0_9
LBB0_42:                                ; =>This Inner Loop Header: Depth=1
	mov	x0, x20
	mov	x1, x21
	bl	_test_and_clear_bit
	cbz	x0, LBB0_41
; %bb.43:                               ;   in Loop: Header=BB0_42 Depth=1
	ldr	x8, [x19, #8]
	add	x0, x8, x25
	bl	_tty_port_tty_get
	mov	x22, x0
	cbz	x0, LBB0_40
; %bb.44:                               ;   in Loop: Header=BB0_42 Depth=1
	mov	x0, x22
	bl	_tty_flip_buffer_push
	b	LBB0_40
LBB0_45:
Lloh57:
	adrp	x23, _IRQ_HANDLED@GOTPAGE
Lloh58:
	ldr	x23, [x23, _IRQ_HANDLED@GOTPAGEOFF]
	b	LBB0_9
LBB0_46:
	ldr	x0, [x19, #32]
Lloh59:
	adrp	x1, l_.str.3@PAGE
Lloh60:
	add	x1, x1, l_.str.3@PAGEOFF
	b	LBB0_6
LBB0_47:
	ldr	x0, [x19, #32]
Lloh61:
	adrp	x1, l_.str.4@PAGE
Lloh62:
	add	x1, x1, l_.str.4@PAGEOFF
	b	LBB0_6
LBB0_48:
	ldr	x0, [x19, #32]
Lloh63:
	adrp	x1, l_.str.5@PAGE
Lloh64:
	add	x1, x1, l_.str.5@PAGEOFF
	b	LBB0_6
	.loh AdrpLdrGot	Lloh2, Lloh3
	.loh AdrpAdd	Lloh0, Lloh1
	.loh AdrpAdd	Lloh4, Lloh5
	.loh AdrpLdrGot	Lloh6, Lloh7
	.loh AdrpLdrGot	Lloh8, Lloh9
	.loh AdrpAdd	Lloh10, Lloh11
	.loh AdrpLdrGot	Lloh12, Lloh13
	.loh AdrpLdrGot	Lloh17, Lloh18
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh25, Lloh26, Lloh27
	.loh AdrpLdrGot	Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh28, Lloh29, Lloh30
	.loh AdrpLdrGotLdr	Lloh36, Lloh37, Lloh38
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGot	Lloh39, Lloh40
	.loh AdrpLdrGot	Lloh43, Lloh44
	.loh AdrpLdrGot	Lloh41, Lloh42
	.loh AdrpLdrGot	Lloh45, Lloh46
	.loh AdrpLdrGot	Lloh49, Lloh50
	.loh AdrpLdrGot	Lloh47, Lloh48
	.loh AdrpLdrGot	Lloh51, Lloh52
	.loh AdrpLdrGot	Lloh53, Lloh54
	.loh AdrpLdrGot	Lloh55, Lloh56
	.loh AdrpLdrGot	Lloh57, Lloh58
	.loh AdrpAdd	Lloh59, Lloh60
	.loh AdrpAdd	Lloh61, Lloh62
	.loh AdrpAdd	Lloh63, Lloh64
	.cfi_endproc
                                        ; -- End function
	.comm	_IRQ_NONE,4,2                   ; @IRQ_NONE
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"%s irq:0x%04X, prev:0x%04X"

	.comm	_RESET,4,2                      ; @RESET
l_.str.1:                               ; @.str.1
	.asciz	"Could not read status from card, we should disable interface\n"

	.comm	_CTRL_UL,4,2                    ; @CTRL_UL
l_.str.2:                               ; @.str.2
	.asciz	"CTRL_UL"

	.comm	_CTRL_DL,4,2                    ; @CTRL_DL
	.comm	_MDM_DL,4,2                     ; @MDM_DL
	.comm	_PORT_MDM,8,3                   ; @PORT_MDM
	.comm	_MDM_DL1,4,2                    ; @MDM_DL1
	.comm	_MDM_DL2,4,2                    ; @MDM_DL2
l_.str.3:                               ; @.str.3
	.asciz	"MDM_DL out of sync!\n"

	.comm	_MDM_UL,4,2                     ; @MDM_UL
l_.str.4:                               ; @.str.4
	.asciz	"MDM_UL out of sync!\n"

	.comm	_DIAG_DL,4,2                    ; @DIAG_DL
	.comm	_PORT_DIAG,8,3                  ; @PORT_DIAG
	.comm	_DIAG_DL1,4,2                   ; @DIAG_DL1
	.comm	_DIAG_DL2,4,2                   ; @DIAG_DL2
l_.str.5:                               ; @.str.5
	.asciz	"DIAG_DL out of sync!\n"

	.comm	_DIAG_UL,4,2                    ; @DIAG_UL
	.comm	_APP1_DL,4,2                    ; @APP1_DL
	.comm	_PORT_APP1,8,3                  ; @PORT_APP1
	.comm	_APP1_UL,4,2                    ; @APP1_UL
	.comm	_APP2_DL,4,2                    ; @APP2_DL
	.comm	_PORT_APP2,8,3                  ; @PORT_APP2
	.comm	_APP2_UL,4,2                    ; @APP2_UL
	.comm	_NOZOMI_MAX_PORTS,4,2           ; @NOZOMI_MAX_PORTS
	.comm	_IRQ_HANDLED,4,2                ; @IRQ_HANDLED
	.no_dead_strip	_interrupt_handler
.subsections_via_symbols
