	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_cx23885_input_rx_work_handler  ## -- Begin function cx23885_input_rx_work_handler
	.p2align	4, 0x90
_cx23885_input_rx_work_handler:         ## @cx23885_input_rx_work_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
	subq	$24, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	testl	%esi, %esi
	je	LBB0_9
## %bb.1:
	movq	%rdi, %r14
	movq	8(%rdi), %rdi
	testq	%rdi, %rdi
	je	LBB0_9
## %bb.2:
	movl	(%r14), %eax
	addl	$-128, %eax
	cmpl	$16, %eax
	ja	LBB0_9
## %bb.3:
	movl	%esi, %ebx
	movq	_V4L2_SUBDEV_IR_RX_SW_FIFO_OVERRUN@GOTPCREL(%rip), %rax
	movq	_V4L2_SUBDEV_IR_RX_HW_FIFO_OVERRUN@GOTPCREL(%rip), %rcx
	movl	(%rcx), %r15d
	orl	(%rax), %r15d
	movq	_V4L2_SUBDEV_IR_RX_END_OF_RX_DETECTED@GOTPCREL(%rip), %rax
	movq	_V4L2_SUBDEV_IR_RX_FIFO_SERVICE_REQ@GOTPCREL(%rip), %rcx
	movl	(%rcx), %r13d
	orl	(%rax), %r13d
	andl	%esi, %r15d
	je	LBB0_5
## %bb.4:
	movq	_ir@GOTPCREL(%rip), %r12
	movl	(%r12), %esi
	movq	_rx_g_parameters@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	leaq	-56(%rbp), %rcx
	callq	_v4l2_subdev_call
	movl	$0, -56(%rbp)
	leaq	16(%r14), %rdi
	callq	_atomic_read
	movq	%rax, -48(%rbp)
	movq	8(%r14), %rdi
	movl	(%r12), %esi
	movq	_rx_s_parameters@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	leaq	-56(%rbp), %rcx
	callq	_v4l2_subdev_call
LBB0_5:
	testl	%ebx, %r13d
	je	LBB0_7
## %bb.6:
	movq	%r14, %rdi
	movl	%r15d, %esi
	callq	_cx23885_input_process_measurements
LBB0_7:
	testl	%r15d, %r15d
	je	LBB0_9
## %bb.8:
	movl	$1, -56(%rbp)
	leaq	16(%r14), %rdi
	callq	_atomic_read
	movq	%rax, -48(%rbp)
	movq	8(%r14), %rdi
	movq	_ir@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_rx_s_parameters@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	leaq	-56(%rbp), %rcx
	callq	_v4l2_subdev_call
LBB0_9:
	addq	$24, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_V4L2_SUBDEV_IR_RX_SW_FIFO_OVERRUN,4,2 ## @V4L2_SUBDEV_IR_RX_SW_FIFO_OVERRUN
	.comm	_V4L2_SUBDEV_IR_RX_HW_FIFO_OVERRUN,4,2 ## @V4L2_SUBDEV_IR_RX_HW_FIFO_OVERRUN
	.comm	_V4L2_SUBDEV_IR_RX_END_OF_RX_DETECTED,4,2 ## @V4L2_SUBDEV_IR_RX_END_OF_RX_DETECTED
	.comm	_V4L2_SUBDEV_IR_RX_FIFO_SERVICE_REQ,4,2 ## @V4L2_SUBDEV_IR_RX_FIFO_SERVICE_REQ
	.comm	_ir,4,2                         ## @ir
	.comm	_rx_g_parameters,4,2            ## @rx_g_parameters
	.comm	_rx_s_parameters,4,2            ## @rx_s_parameters
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_cx23885_input_rx_work_handler  ; -- Begin function cx23885_input_rx_work_handler
	.p2align	2
_cx23885_input_rx_work_handler:         ; @cx23885_input_rx_work_handler
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #80
	.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
	cbz	w1, LBB0_9
; %bb.1:
	mov	x19, x0
	ldr	x0, [x0, #8]
	cbz	x0, LBB0_9
; %bb.2:
	ldr	w8, [x19]
	sub	w8, w8, #128
	cmp	w8, #16
	b.hi	LBB0_9
; %bb.3:
Lloh0:
	adrp	x8, _V4L2_SUBDEV_IR_RX_SW_FIFO_OVERRUN@GOTPAGE
Lloh1:
	ldr	x8, [x8, _V4L2_SUBDEV_IR_RX_SW_FIFO_OVERRUN@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
Lloh3:
	adrp	x9, _V4L2_SUBDEV_IR_RX_HW_FIFO_OVERRUN@GOTPAGE
Lloh4:
	ldr	x9, [x9, _V4L2_SUBDEV_IR_RX_HW_FIFO_OVERRUN@GOTPAGEOFF]
Lloh5:
	ldr	w9, [x9]
Lloh6:
	adrp	x10, _V4L2_SUBDEV_IR_RX_END_OF_RX_DETECTED@GOTPAGE
Lloh7:
	ldr	x10, [x10, _V4L2_SUBDEV_IR_RX_END_OF_RX_DETECTED@GOTPAGEOFF]
	orr	w8, w9, w8
Lloh8:
	ldr	w9, [x10]
Lloh9:
	adrp	x10, _V4L2_SUBDEV_IR_RX_FIFO_SERVICE_REQ@GOTPAGE
Lloh10:
	ldr	x10, [x10, _V4L2_SUBDEV_IR_RX_FIFO_SERVICE_REQ@GOTPAGEOFF]
Lloh11:
	ldr	w10, [x10]
	orr	w9, w10, w9
	and	w23, w9, w1
Lloh12:
	adrp	x21, _ir@GOTPAGE
Lloh13:
	ldr	x21, [x21, _ir@GOTPAGEOFF]
Lloh14:
	adrp	x22, _rx_s_parameters@GOTPAGE
Lloh15:
	ldr	x22, [x22, _rx_s_parameters@GOTPAGEOFF]
	ands	w20, w8, w1
	b.eq	LBB0_5
; %bb.4:
	ldr	w1, [x21]
Lloh16:
	adrp	x8, _rx_g_parameters@GOTPAGE
Lloh17:
	ldr	x8, [x8, _rx_g_parameters@GOTPAGEOFF]
Lloh18:
	ldr	w2, [x8]
	mov	x3, sp
	bl	_v4l2_subdev_call
	str	wzr, [sp]
	add	x0, x19, #16
	bl	_atomic_read
	str	x0, [sp, #8]
	ldr	x0, [x19, #8]
	ldr	w1, [x21]
	ldr	w2, [x22]
	mov	x3, sp
	bl	_v4l2_subdev_call
LBB0_5:
	cbz	w23, LBB0_7
; %bb.6:
	mov	x0, x19
	mov	x1, x20
	bl	_cx23885_input_process_measurements
LBB0_7:
	cbz	w20, LBB0_9
; %bb.8:
	mov	w8, #1
	str	w8, [sp]
	add	x0, x19, #16
	bl	_atomic_read
	str	x0, [sp, #8]
	ldr	x0, [x19, #8]
	ldr	w1, [x21]
	ldr	w2, [x22]
	mov	x3, sp
	bl	_v4l2_subdev_call
LBB0_9:
	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
	add	sp, sp, #80
	ret
	.loh AdrpLdrGot	Lloh14, Lloh15
	.loh AdrpLdrGot	Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh16, Lloh17, Lloh18
	.cfi_endproc
                                        ; -- End function
	.comm	_V4L2_SUBDEV_IR_RX_SW_FIFO_OVERRUN,4,2 ; @V4L2_SUBDEV_IR_RX_SW_FIFO_OVERRUN
	.comm	_V4L2_SUBDEV_IR_RX_HW_FIFO_OVERRUN,4,2 ; @V4L2_SUBDEV_IR_RX_HW_FIFO_OVERRUN
	.comm	_V4L2_SUBDEV_IR_RX_END_OF_RX_DETECTED,4,2 ; @V4L2_SUBDEV_IR_RX_END_OF_RX_DETECTED
	.comm	_V4L2_SUBDEV_IR_RX_FIFO_SERVICE_REQ,4,2 ; @V4L2_SUBDEV_IR_RX_FIFO_SERVICE_REQ
	.comm	_ir,4,2                         ; @ir
	.comm	_rx_g_parameters,4,2            ; @rx_g_parameters
	.comm	_rx_s_parameters,4,2            ; @rx_s_parameters
.subsections_via_symbols
