	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function bu21013_init_chip
_bu21013_init_chip:                     ## @bu21013_init_chip
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r14
	pushq	%rbx
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	movq	(%rdi), %r14
	movq	_BU21013_RESET_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_RESET_ENABLE@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_2
## %bb.1:
	movl	%eax, %ebx
	leaq	L_.str(%rip), %rsi
	jmp	LBB0_32
LBB0_2:
	movq	_RESET_DELAY@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_msleep
	movq	_BU21013_SENSOR_0_7_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_SENSORS_EN_0_7@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_4
## %bb.3:
	movl	%eax, %ebx
	leaq	L_.str.1(%rip), %rsi
	jmp	LBB0_32
LBB0_4:
	movq	_BU21013_SENSOR_8_15_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_SENSORS_EN_8_15@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_6
## %bb.5:
	movl	%eax, %ebx
	leaq	L_.str.2(%rip), %rsi
	jmp	LBB0_32
LBB0_6:
	movq	_BU21013_SENSOR_16_23_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_SENSORS_EN_16_23@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_8
## %bb.7:
	movl	%eax, %ebx
	leaq	L_.str.3(%rip), %rsi
	jmp	LBB0_32
LBB0_8:
	movq	_BU21013_POS_MODE1_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_POS_MODE1_0@GOTPCREL(%rip), %rax
	movq	_BU21013_POS_MODE1_1@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	orl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_10
## %bb.9:
	movl	%eax, %ebx
	leaq	L_.str.4(%rip), %rsi
	jmp	LBB0_32
LBB0_10:
	movq	_BU21013_POS_MODE2_ZERO@GOTPCREL(%rip), %rax
	movq	_BU21013_POS_MODE2_AVG1@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	orl	(%rax), %edx
	movq	_BU21013_POS_MODE2_AVG2@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	movq	_BU21013_POS_MODE2_REG@GOTPCREL(%rip), %rax
	movq	_BU21013_POS_MODE2_EN_RAW@GOTPCREL(%rip), %rcx
	orl	(%rcx), %edx
	movl	(%rax), %esi
	movq	_BU21013_POS_MODE2_MULTI@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_12
## %bb.11:
	movl	%eax, %ebx
	leaq	L_.str.5(%rip), %rsi
	jmp	LBB0_32
LBB0_12:
	movq	_BU21013_CLK_MODE_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_CLK_MODE_DIV@GOTPCREL(%rip), %rax
	movq	_BU21013_CLK_MODE_CALIB@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	orl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_14
## %bb.13:
	movl	%eax, %ebx
	leaq	L_.str.6(%rip), %rsi
	jmp	LBB0_32
LBB0_14:
	movq	_BU21013_IDLE_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_IDLET_0@GOTPCREL(%rip), %rax
	movq	_BU21013_IDLE_INTERMIT_EN@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	orl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_16
## %bb.15:
	movl	%eax, %ebx
	leaq	L_.str.7(%rip), %rsi
	jmp	LBB0_32
LBB0_16:
	movq	_BU21013_INT_MODE_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_INT_MODE_LEVEL@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_18
## %bb.17:
	movl	%eax, %ebx
	leaq	L_.str.8(%rip), %rsi
	jmp	LBB0_32
LBB0_18:
	movq	_BU21013_FILTER_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_DELTA_0_6@GOTPCREL(%rip), %rax
	movq	_BU21013_FILTER_EN@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	orl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_20
## %bb.19:
	movl	%eax, %ebx
	leaq	L_.str.9(%rip), %rsi
	jmp	LBB0_32
LBB0_20:
	movq	_BU21013_TH_ON_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_TH_ON_5@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_22
## %bb.21:
	movl	%eax, %ebx
	leaq	L_.str.10(%rip), %rsi
	jmp	LBB0_32
LBB0_22:
	movq	_BU21013_TH_OFF_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_TH_OFF_4@GOTPCREL(%rip), %rax
	movq	_BU21013_TH_OFF_3@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	orl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_24
## %bb.23:
	movl	%eax, %ebx
	leaq	L_.str.11(%rip), %rsi
	jmp	LBB0_32
LBB0_24:
	movq	_BU21013_GAIN_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_GAIN_0@GOTPCREL(%rip), %rax
	movq	_BU21013_GAIN_1@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	orl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_26
## %bb.25:
	movl	%eax, %ebx
	leaq	L_.str.12(%rip), %rsi
	jmp	LBB0_32
LBB0_26:
	movq	_BU21013_OFFSET_MODE_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_OFFSET_MODE_DEFAULT@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_28
## %bb.27:
	movl	%eax, %ebx
	leaq	L_.str.13(%rip), %rsi
	jmp	LBB0_32
LBB0_28:
	movq	_BU21013_X_EDGE_0@GOTPCREL(%rip), %rax
	movq	_BU21013_X_EDGE_2@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	orl	(%rax), %edx
	movq	_BU21013_XY_EDGE_REG@GOTPCREL(%rip), %rax
	movq	_BU21013_Y_EDGE_1@GOTPCREL(%rip), %rcx
	orl	(%rcx), %edx
	movl	(%rax), %esi
	movq	_BU21013_Y_EDGE_3@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_30
## %bb.29:
	movl	%eax, %ebx
	leaq	L_.str.14(%rip), %rsi
	jmp	LBB0_32
LBB0_30:
	movq	_BU21013_DONE_REG@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_BU21013_DONE@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%r14, %rdi
	callq	_i2c_smbus_write_byte_data
	testl	%eax, %eax
	je	LBB0_34
## %bb.31:
	movl	%eax, %ebx
	leaq	L_.str.15(%rip), %rsi
LBB0_32:
	movq	%r14, %rdi
	callq	_dev_err
LBB0_33:
	movl	%ebx, %eax
	popq	%rbx
	popq	%r14
	popq	%rbp
	retq
LBB0_34:
	xorl	%ebx, %ebx
	jmp	LBB0_33
	.cfi_endproc
                                        ## -- End function
	.comm	_BU21013_RESET_REG,4,2          ## @BU21013_RESET_REG
	.comm	_BU21013_RESET_ENABLE,4,2       ## @BU21013_RESET_ENABLE
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"BU21013_RESET reg write failed\n"

	.comm	_RESET_DELAY,4,2                ## @RESET_DELAY
	.comm	_BU21013_SENSOR_0_7_REG,4,2     ## @BU21013_SENSOR_0_7_REG
	.comm	_BU21013_SENSORS_EN_0_7,4,2     ## @BU21013_SENSORS_EN_0_7
L_.str.1:                               ## @.str.1
	.asciz	"BU21013_SENSOR_0_7 reg write failed\n"

	.comm	_BU21013_SENSOR_8_15_REG,4,2    ## @BU21013_SENSOR_8_15_REG
	.comm	_BU21013_SENSORS_EN_8_15,4,2    ## @BU21013_SENSORS_EN_8_15
L_.str.2:                               ## @.str.2
	.asciz	"BU21013_SENSOR_8_15 reg write failed\n"

	.comm	_BU21013_SENSOR_16_23_REG,4,2   ## @BU21013_SENSOR_16_23_REG
	.comm	_BU21013_SENSORS_EN_16_23,4,2   ## @BU21013_SENSORS_EN_16_23
L_.str.3:                               ## @.str.3
	.asciz	"BU21013_SENSOR_16_23 reg write failed\n"

	.comm	_BU21013_POS_MODE1_REG,4,2      ## @BU21013_POS_MODE1_REG
	.comm	_BU21013_POS_MODE1_0,4,2        ## @BU21013_POS_MODE1_0
	.comm	_BU21013_POS_MODE1_1,4,2        ## @BU21013_POS_MODE1_1
L_.str.4:                               ## @.str.4
	.asciz	"BU21013_POS_MODE1 reg write failed\n"

	.comm	_BU21013_POS_MODE2_REG,4,2      ## @BU21013_POS_MODE2_REG
	.comm	_BU21013_POS_MODE2_ZERO,4,2     ## @BU21013_POS_MODE2_ZERO
	.comm	_BU21013_POS_MODE2_AVG1,4,2     ## @BU21013_POS_MODE2_AVG1
	.comm	_BU21013_POS_MODE2_AVG2,4,2     ## @BU21013_POS_MODE2_AVG2
	.comm	_BU21013_POS_MODE2_EN_RAW,4,2   ## @BU21013_POS_MODE2_EN_RAW
	.comm	_BU21013_POS_MODE2_MULTI,4,2    ## @BU21013_POS_MODE2_MULTI
L_.str.5:                               ## @.str.5
	.asciz	"BU21013_POS_MODE2 reg write failed\n"

	.comm	_BU21013_CLK_MODE_REG,4,2       ## @BU21013_CLK_MODE_REG
	.comm	_BU21013_CLK_MODE_DIV,4,2       ## @BU21013_CLK_MODE_DIV
	.comm	_BU21013_CLK_MODE_CALIB,4,2     ## @BU21013_CLK_MODE_CALIB
L_.str.6:                               ## @.str.6
	.asciz	"BU21013_CLK_MODE reg write failed\n"

	.comm	_BU21013_IDLE_REG,4,2           ## @BU21013_IDLE_REG
	.comm	_BU21013_IDLET_0,4,2            ## @BU21013_IDLET_0
	.comm	_BU21013_IDLE_INTERMIT_EN,4,2   ## @BU21013_IDLE_INTERMIT_EN
L_.str.7:                               ## @.str.7
	.asciz	"BU21013_IDLE reg write failed\n"

	.comm	_BU21013_INT_MODE_REG,4,2       ## @BU21013_INT_MODE_REG
	.comm	_BU21013_INT_MODE_LEVEL,4,2     ## @BU21013_INT_MODE_LEVEL
L_.str.8:                               ## @.str.8
	.asciz	"BU21013_INT_MODE reg write failed\n"

	.comm	_BU21013_FILTER_REG,4,2         ## @BU21013_FILTER_REG
	.comm	_BU21013_DELTA_0_6,4,2          ## @BU21013_DELTA_0_6
	.comm	_BU21013_FILTER_EN,4,2          ## @BU21013_FILTER_EN
L_.str.9:                               ## @.str.9
	.asciz	"BU21013_FILTER reg write failed\n"

	.comm	_BU21013_TH_ON_REG,4,2          ## @BU21013_TH_ON_REG
	.comm	_BU21013_TH_ON_5,4,2            ## @BU21013_TH_ON_5
L_.str.10:                              ## @.str.10
	.asciz	"BU21013_TH_ON reg write failed\n"

	.comm	_BU21013_TH_OFF_REG,4,2         ## @BU21013_TH_OFF_REG
	.comm	_BU21013_TH_OFF_4,4,2           ## @BU21013_TH_OFF_4
	.comm	_BU21013_TH_OFF_3,4,2           ## @BU21013_TH_OFF_3
L_.str.11:                              ## @.str.11
	.asciz	"BU21013_TH_OFF reg write failed\n"

	.comm	_BU21013_GAIN_REG,4,2           ## @BU21013_GAIN_REG
	.comm	_BU21013_GAIN_0,4,2             ## @BU21013_GAIN_0
	.comm	_BU21013_GAIN_1,4,2             ## @BU21013_GAIN_1
L_.str.12:                              ## @.str.12
	.asciz	"BU21013_GAIN reg write failed\n"

	.comm	_BU21013_OFFSET_MODE_REG,4,2    ## @BU21013_OFFSET_MODE_REG
	.comm	_BU21013_OFFSET_MODE_DEFAULT,4,2 ## @BU21013_OFFSET_MODE_DEFAULT
L_.str.13:                              ## @.str.13
	.asciz	"BU21013_OFFSET_MODE reg write failed\n"

	.comm	_BU21013_XY_EDGE_REG,4,2        ## @BU21013_XY_EDGE_REG
	.comm	_BU21013_X_EDGE_0,4,2           ## @BU21013_X_EDGE_0
	.comm	_BU21013_X_EDGE_2,4,2           ## @BU21013_X_EDGE_2
	.comm	_BU21013_Y_EDGE_1,4,2           ## @BU21013_Y_EDGE_1
	.comm	_BU21013_Y_EDGE_3,4,2           ## @BU21013_Y_EDGE_3
L_.str.14:                              ## @.str.14
	.asciz	"BU21013_XY_EDGE reg write failed\n"

	.comm	_BU21013_DONE_REG,4,2           ## @BU21013_DONE_REG
	.comm	_BU21013_DONE,4,2               ## @BU21013_DONE
L_.str.15:                              ## @.str.15
	.asciz	"BU21013_REG_DONE reg write failed\n"

	.no_dead_strip	_bu21013_init_chip
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function bu21013_init_chip
_bu21013_init_chip:                     ; @bu21013_init_chip
	.cfi_startproc
; %bb.0:
	stp	x20, x19, [sp, #-32]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 32
	stp	x29, x30, [sp, #16]             ; 16-byte Folded Spill
	add	x29, sp, #16
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	ldr	x19, [x0]
Lloh0:
	adrp	x8, _BU21013_RESET_REG@GOTPAGE
Lloh1:
	ldr	x8, [x8, _BU21013_RESET_REG@GOTPAGEOFF]
Lloh2:
	ldr	w1, [x8]
Lloh3:
	adrp	x8, _BU21013_RESET_ENABLE@GOTPAGE
Lloh4:
	ldr	x8, [x8, _BU21013_RESET_ENABLE@GOTPAGEOFF]
Lloh5:
	ldr	w2, [x8]
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_2
; %bb.1:
	mov	x20, x0
Lloh6:
	adrp	x1, l_.str@PAGE
Lloh7:
	add	x1, x1, l_.str@PAGEOFF
	b	LBB0_32
LBB0_2:
Lloh8:
	adrp	x8, _RESET_DELAY@GOTPAGE
Lloh9:
	ldr	x8, [x8, _RESET_DELAY@GOTPAGEOFF]
Lloh10:
	ldr	w0, [x8]
	bl	_msleep
Lloh11:
	adrp	x8, _BU21013_SENSOR_0_7_REG@GOTPAGE
Lloh12:
	ldr	x8, [x8, _BU21013_SENSOR_0_7_REG@GOTPAGEOFF]
Lloh13:
	ldr	w1, [x8]
Lloh14:
	adrp	x8, _BU21013_SENSORS_EN_0_7@GOTPAGE
Lloh15:
	ldr	x8, [x8, _BU21013_SENSORS_EN_0_7@GOTPAGEOFF]
Lloh16:
	ldr	w2, [x8]
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_4
; %bb.3:
	mov	x20, x0
Lloh17:
	adrp	x1, l_.str.1@PAGE
Lloh18:
	add	x1, x1, l_.str.1@PAGEOFF
	b	LBB0_32
LBB0_4:
Lloh19:
	adrp	x8, _BU21013_SENSOR_8_15_REG@GOTPAGE
Lloh20:
	ldr	x8, [x8, _BU21013_SENSOR_8_15_REG@GOTPAGEOFF]
Lloh21:
	ldr	w1, [x8]
Lloh22:
	adrp	x8, _BU21013_SENSORS_EN_8_15@GOTPAGE
Lloh23:
	ldr	x8, [x8, _BU21013_SENSORS_EN_8_15@GOTPAGEOFF]
Lloh24:
	ldr	w2, [x8]
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_6
; %bb.5:
	mov	x20, x0
Lloh25:
	adrp	x1, l_.str.2@PAGE
Lloh26:
	add	x1, x1, l_.str.2@PAGEOFF
	b	LBB0_32
LBB0_6:
Lloh27:
	adrp	x8, _BU21013_SENSOR_16_23_REG@GOTPAGE
Lloh28:
	ldr	x8, [x8, _BU21013_SENSOR_16_23_REG@GOTPAGEOFF]
Lloh29:
	ldr	w1, [x8]
Lloh30:
	adrp	x8, _BU21013_SENSORS_EN_16_23@GOTPAGE
Lloh31:
	ldr	x8, [x8, _BU21013_SENSORS_EN_16_23@GOTPAGEOFF]
Lloh32:
	ldr	w2, [x8]
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_8
; %bb.7:
	mov	x20, x0
Lloh33:
	adrp	x1, l_.str.3@PAGE
Lloh34:
	add	x1, x1, l_.str.3@PAGEOFF
	b	LBB0_32
LBB0_8:
Lloh35:
	adrp	x8, _BU21013_POS_MODE1_REG@GOTPAGE
Lloh36:
	ldr	x8, [x8, _BU21013_POS_MODE1_REG@GOTPAGEOFF]
Lloh37:
	adrp	x9, _BU21013_POS_MODE1_0@GOTPAGE
Lloh38:
	ldr	x9, [x9, _BU21013_POS_MODE1_0@GOTPAGEOFF]
Lloh39:
	ldr	w1, [x8]
Lloh40:
	ldr	w8, [x9]
Lloh41:
	adrp	x9, _BU21013_POS_MODE1_1@GOTPAGE
Lloh42:
	ldr	x9, [x9, _BU21013_POS_MODE1_1@GOTPAGEOFF]
Lloh43:
	ldr	w9, [x9]
	orr	w2, w9, w8
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_10
; %bb.9:
	mov	x20, x0
Lloh44:
	adrp	x1, l_.str.4@PAGE
Lloh45:
	add	x1, x1, l_.str.4@PAGEOFF
	b	LBB0_32
LBB0_10:
Lloh46:
	adrp	x8, _BU21013_POS_MODE2_REG@GOTPAGE
Lloh47:
	ldr	x8, [x8, _BU21013_POS_MODE2_REG@GOTPAGEOFF]
Lloh48:
	adrp	x9, _BU21013_POS_MODE2_ZERO@GOTPAGE
Lloh49:
	ldr	x9, [x9, _BU21013_POS_MODE2_ZERO@GOTPAGEOFF]
Lloh50:
	ldr	w1, [x8]
Lloh51:
	ldr	w8, [x9]
Lloh52:
	adrp	x9, _BU21013_POS_MODE2_AVG1@GOTPAGE
Lloh53:
	ldr	x9, [x9, _BU21013_POS_MODE2_AVG1@GOTPAGEOFF]
Lloh54:
	ldr	w9, [x9]
	orr	w8, w9, w8
Lloh55:
	adrp	x9, _BU21013_POS_MODE2_AVG2@GOTPAGE
Lloh56:
	ldr	x9, [x9, _BU21013_POS_MODE2_AVG2@GOTPAGEOFF]
Lloh57:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh58:
	adrp	x9, _BU21013_POS_MODE2_EN_RAW@GOTPAGE
Lloh59:
	ldr	x9, [x9, _BU21013_POS_MODE2_EN_RAW@GOTPAGEOFF]
Lloh60:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh61:
	adrp	x9, _BU21013_POS_MODE2_MULTI@GOTPAGE
Lloh62:
	ldr	x9, [x9, _BU21013_POS_MODE2_MULTI@GOTPAGEOFF]
Lloh63:
	ldr	w9, [x9]
	orr	w2, w8, w9
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_12
; %bb.11:
	mov	x20, x0
Lloh64:
	adrp	x1, l_.str.5@PAGE
Lloh65:
	add	x1, x1, l_.str.5@PAGEOFF
	b	LBB0_32
LBB0_12:
Lloh66:
	adrp	x8, _BU21013_CLK_MODE_REG@GOTPAGE
Lloh67:
	ldr	x8, [x8, _BU21013_CLK_MODE_REG@GOTPAGEOFF]
Lloh68:
	adrp	x9, _BU21013_CLK_MODE_DIV@GOTPAGE
Lloh69:
	ldr	x9, [x9, _BU21013_CLK_MODE_DIV@GOTPAGEOFF]
Lloh70:
	ldr	w1, [x8]
Lloh71:
	ldr	w8, [x9]
Lloh72:
	adrp	x9, _BU21013_CLK_MODE_CALIB@GOTPAGE
Lloh73:
	ldr	x9, [x9, _BU21013_CLK_MODE_CALIB@GOTPAGEOFF]
Lloh74:
	ldr	w9, [x9]
	orr	w2, w9, w8
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_14
; %bb.13:
	mov	x20, x0
Lloh75:
	adrp	x1, l_.str.6@PAGE
Lloh76:
	add	x1, x1, l_.str.6@PAGEOFF
	b	LBB0_32
LBB0_14:
Lloh77:
	adrp	x8, _BU21013_IDLE_REG@GOTPAGE
Lloh78:
	ldr	x8, [x8, _BU21013_IDLE_REG@GOTPAGEOFF]
Lloh79:
	adrp	x9, _BU21013_IDLET_0@GOTPAGE
Lloh80:
	ldr	x9, [x9, _BU21013_IDLET_0@GOTPAGEOFF]
Lloh81:
	ldr	w1, [x8]
Lloh82:
	ldr	w8, [x9]
Lloh83:
	adrp	x9, _BU21013_IDLE_INTERMIT_EN@GOTPAGE
Lloh84:
	ldr	x9, [x9, _BU21013_IDLE_INTERMIT_EN@GOTPAGEOFF]
Lloh85:
	ldr	w9, [x9]
	orr	w2, w9, w8
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_16
; %bb.15:
	mov	x20, x0
Lloh86:
	adrp	x1, l_.str.7@PAGE
Lloh87:
	add	x1, x1, l_.str.7@PAGEOFF
	b	LBB0_32
LBB0_16:
Lloh88:
	adrp	x8, _BU21013_INT_MODE_REG@GOTPAGE
Lloh89:
	ldr	x8, [x8, _BU21013_INT_MODE_REG@GOTPAGEOFF]
Lloh90:
	ldr	w1, [x8]
Lloh91:
	adrp	x8, _BU21013_INT_MODE_LEVEL@GOTPAGE
Lloh92:
	ldr	x8, [x8, _BU21013_INT_MODE_LEVEL@GOTPAGEOFF]
Lloh93:
	ldr	w2, [x8]
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_18
; %bb.17:
	mov	x20, x0
Lloh94:
	adrp	x1, l_.str.8@PAGE
Lloh95:
	add	x1, x1, l_.str.8@PAGEOFF
	b	LBB0_32
LBB0_18:
Lloh96:
	adrp	x8, _BU21013_FILTER_REG@GOTPAGE
Lloh97:
	ldr	x8, [x8, _BU21013_FILTER_REG@GOTPAGEOFF]
Lloh98:
	adrp	x9, _BU21013_DELTA_0_6@GOTPAGE
Lloh99:
	ldr	x9, [x9, _BU21013_DELTA_0_6@GOTPAGEOFF]
Lloh100:
	ldr	w1, [x8]
Lloh101:
	ldr	w8, [x9]
Lloh102:
	adrp	x9, _BU21013_FILTER_EN@GOTPAGE
Lloh103:
	ldr	x9, [x9, _BU21013_FILTER_EN@GOTPAGEOFF]
Lloh104:
	ldr	w9, [x9]
	orr	w2, w9, w8
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_20
; %bb.19:
	mov	x20, x0
Lloh105:
	adrp	x1, l_.str.9@PAGE
Lloh106:
	add	x1, x1, l_.str.9@PAGEOFF
	b	LBB0_32
LBB0_20:
Lloh107:
	adrp	x8, _BU21013_TH_ON_REG@GOTPAGE
Lloh108:
	ldr	x8, [x8, _BU21013_TH_ON_REG@GOTPAGEOFF]
Lloh109:
	ldr	w1, [x8]
Lloh110:
	adrp	x8, _BU21013_TH_ON_5@GOTPAGE
Lloh111:
	ldr	x8, [x8, _BU21013_TH_ON_5@GOTPAGEOFF]
Lloh112:
	ldr	w2, [x8]
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_22
; %bb.21:
	mov	x20, x0
Lloh113:
	adrp	x1, l_.str.10@PAGE
Lloh114:
	add	x1, x1, l_.str.10@PAGEOFF
	b	LBB0_32
LBB0_22:
Lloh115:
	adrp	x8, _BU21013_TH_OFF_REG@GOTPAGE
Lloh116:
	ldr	x8, [x8, _BU21013_TH_OFF_REG@GOTPAGEOFF]
Lloh117:
	adrp	x9, _BU21013_TH_OFF_4@GOTPAGE
Lloh118:
	ldr	x9, [x9, _BU21013_TH_OFF_4@GOTPAGEOFF]
Lloh119:
	ldr	w1, [x8]
Lloh120:
	ldr	w8, [x9]
Lloh121:
	adrp	x9, _BU21013_TH_OFF_3@GOTPAGE
Lloh122:
	ldr	x9, [x9, _BU21013_TH_OFF_3@GOTPAGEOFF]
Lloh123:
	ldr	w9, [x9]
	orr	w2, w9, w8
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_24
; %bb.23:
	mov	x20, x0
Lloh124:
	adrp	x1, l_.str.11@PAGE
Lloh125:
	add	x1, x1, l_.str.11@PAGEOFF
	b	LBB0_32
LBB0_24:
Lloh126:
	adrp	x8, _BU21013_GAIN_REG@GOTPAGE
Lloh127:
	ldr	x8, [x8, _BU21013_GAIN_REG@GOTPAGEOFF]
Lloh128:
	adrp	x9, _BU21013_GAIN_0@GOTPAGE
Lloh129:
	ldr	x9, [x9, _BU21013_GAIN_0@GOTPAGEOFF]
Lloh130:
	ldr	w1, [x8]
Lloh131:
	ldr	w8, [x9]
Lloh132:
	adrp	x9, _BU21013_GAIN_1@GOTPAGE
Lloh133:
	ldr	x9, [x9, _BU21013_GAIN_1@GOTPAGEOFF]
Lloh134:
	ldr	w9, [x9]
	orr	w2, w9, w8
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_26
; %bb.25:
	mov	x20, x0
Lloh135:
	adrp	x1, l_.str.12@PAGE
Lloh136:
	add	x1, x1, l_.str.12@PAGEOFF
	b	LBB0_32
LBB0_26:
Lloh137:
	adrp	x8, _BU21013_OFFSET_MODE_REG@GOTPAGE
Lloh138:
	ldr	x8, [x8, _BU21013_OFFSET_MODE_REG@GOTPAGEOFF]
Lloh139:
	ldr	w1, [x8]
Lloh140:
	adrp	x8, _BU21013_OFFSET_MODE_DEFAULT@GOTPAGE
Lloh141:
	ldr	x8, [x8, _BU21013_OFFSET_MODE_DEFAULT@GOTPAGEOFF]
Lloh142:
	ldr	w2, [x8]
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_28
; %bb.27:
	mov	x20, x0
Lloh143:
	adrp	x1, l_.str.13@PAGE
Lloh144:
	add	x1, x1, l_.str.13@PAGEOFF
	b	LBB0_32
LBB0_28:
Lloh145:
	adrp	x8, _BU21013_XY_EDGE_REG@GOTPAGE
Lloh146:
	ldr	x8, [x8, _BU21013_XY_EDGE_REG@GOTPAGEOFF]
Lloh147:
	ldr	w1, [x8]
Lloh148:
	adrp	x8, _BU21013_X_EDGE_0@GOTPAGE
Lloh149:
	ldr	x8, [x8, _BU21013_X_EDGE_0@GOTPAGEOFF]
Lloh150:
	ldr	w8, [x8]
Lloh151:
	adrp	x9, _BU21013_X_EDGE_2@GOTPAGE
Lloh152:
	ldr	x9, [x9, _BU21013_X_EDGE_2@GOTPAGEOFF]
Lloh153:
	ldr	w9, [x9]
	orr	w8, w9, w8
Lloh154:
	adrp	x9, _BU21013_Y_EDGE_1@GOTPAGE
Lloh155:
	ldr	x9, [x9, _BU21013_Y_EDGE_1@GOTPAGEOFF]
Lloh156:
	ldr	w9, [x9]
	orr	w8, w8, w9
Lloh157:
	adrp	x9, _BU21013_Y_EDGE_3@GOTPAGE
Lloh158:
	ldr	x9, [x9, _BU21013_Y_EDGE_3@GOTPAGEOFF]
Lloh159:
	ldr	w9, [x9]
	orr	w2, w8, w9
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	cbz	w0, LBB0_30
; %bb.29:
	mov	x20, x0
Lloh160:
	adrp	x1, l_.str.14@PAGE
Lloh161:
	add	x1, x1, l_.str.14@PAGEOFF
	b	LBB0_32
LBB0_30:
Lloh162:
	adrp	x8, _BU21013_DONE_REG@GOTPAGE
Lloh163:
	ldr	x8, [x8, _BU21013_DONE_REG@GOTPAGEOFF]
Lloh164:
	ldr	w1, [x8]
Lloh165:
	adrp	x8, _BU21013_DONE@GOTPAGE
Lloh166:
	ldr	x8, [x8, _BU21013_DONE@GOTPAGEOFF]
Lloh167:
	ldr	w2, [x8]
	mov	x0, x19
	bl	_i2c_smbus_write_byte_data
	mov	x20, x0
	cbz	w0, LBB0_33
; %bb.31:
Lloh168:
	adrp	x1, l_.str.15@PAGE
Lloh169:
	add	x1, x1, l_.str.15@PAGEOFF
LBB0_32:
	mov	x0, x19
	bl	_dev_err
LBB0_33:
	mov	x0, x20
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpAdd	Lloh17, Lloh18
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpAdd	Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpAdd	Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh41, Lloh42, Lloh43
	.loh AdrpLdrGotLdr	Lloh37, Lloh38, Lloh40
	.loh AdrpLdrGotLdr	Lloh35, Lloh36, Lloh39
	.loh AdrpAdd	Lloh44, Lloh45
	.loh AdrpLdrGotLdr	Lloh61, Lloh62, Lloh63
	.loh AdrpLdrGotLdr	Lloh58, Lloh59, Lloh60
	.loh AdrpLdrGotLdr	Lloh55, Lloh56, Lloh57
	.loh AdrpLdrGotLdr	Lloh52, Lloh53, Lloh54
	.loh AdrpLdrGotLdr	Lloh48, Lloh49, Lloh51
	.loh AdrpLdrGotLdr	Lloh46, Lloh47, Lloh50
	.loh AdrpAdd	Lloh64, Lloh65
	.loh AdrpLdrGotLdr	Lloh72, Lloh73, Lloh74
	.loh AdrpLdrGotLdr	Lloh68, Lloh69, Lloh71
	.loh AdrpLdrGotLdr	Lloh66, Lloh67, Lloh70
	.loh AdrpAdd	Lloh75, Lloh76
	.loh AdrpLdrGotLdr	Lloh83, Lloh84, Lloh85
	.loh AdrpLdrGotLdr	Lloh79, Lloh80, Lloh82
	.loh AdrpLdrGotLdr	Lloh77, Lloh78, Lloh81
	.loh AdrpAdd	Lloh86, Lloh87
	.loh AdrpLdrGotLdr	Lloh91, Lloh92, Lloh93
	.loh AdrpLdrGotLdr	Lloh88, Lloh89, Lloh90
	.loh AdrpAdd	Lloh94, Lloh95
	.loh AdrpLdrGotLdr	Lloh102, Lloh103, Lloh104
	.loh AdrpLdrGotLdr	Lloh98, Lloh99, Lloh101
	.loh AdrpLdrGotLdr	Lloh96, Lloh97, Lloh100
	.loh AdrpAdd	Lloh105, Lloh106
	.loh AdrpLdrGotLdr	Lloh110, Lloh111, Lloh112
	.loh AdrpLdrGotLdr	Lloh107, Lloh108, Lloh109
	.loh AdrpAdd	Lloh113, Lloh114
	.loh AdrpLdrGotLdr	Lloh121, Lloh122, Lloh123
	.loh AdrpLdrGotLdr	Lloh117, Lloh118, Lloh120
	.loh AdrpLdrGotLdr	Lloh115, Lloh116, Lloh119
	.loh AdrpAdd	Lloh124, Lloh125
	.loh AdrpLdrGotLdr	Lloh132, Lloh133, Lloh134
	.loh AdrpLdrGotLdr	Lloh128, Lloh129, Lloh131
	.loh AdrpLdrGotLdr	Lloh126, Lloh127, Lloh130
	.loh AdrpAdd	Lloh135, Lloh136
	.loh AdrpLdrGotLdr	Lloh140, Lloh141, Lloh142
	.loh AdrpLdrGotLdr	Lloh137, Lloh138, Lloh139
	.loh AdrpAdd	Lloh143, Lloh144
	.loh AdrpLdrGotLdr	Lloh157, Lloh158, Lloh159
	.loh AdrpLdrGotLdr	Lloh154, Lloh155, Lloh156
	.loh AdrpLdrGotLdr	Lloh151, Lloh152, Lloh153
	.loh AdrpLdrGotLdr	Lloh148, Lloh149, Lloh150
	.loh AdrpLdrGotLdr	Lloh145, Lloh146, Lloh147
	.loh AdrpAdd	Lloh160, Lloh161
	.loh AdrpLdrGotLdr	Lloh165, Lloh166, Lloh167
	.loh AdrpLdrGotLdr	Lloh162, Lloh163, Lloh164
	.loh AdrpAdd	Lloh168, Lloh169
	.cfi_endproc
                                        ; -- End function
	.comm	_BU21013_RESET_REG,4,2          ; @BU21013_RESET_REG
	.comm	_BU21013_RESET_ENABLE,4,2       ; @BU21013_RESET_ENABLE
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"BU21013_RESET reg write failed\n"

	.comm	_RESET_DELAY,4,2                ; @RESET_DELAY
	.comm	_BU21013_SENSOR_0_7_REG,4,2     ; @BU21013_SENSOR_0_7_REG
	.comm	_BU21013_SENSORS_EN_0_7,4,2     ; @BU21013_SENSORS_EN_0_7
l_.str.1:                               ; @.str.1
	.asciz	"BU21013_SENSOR_0_7 reg write failed\n"

	.comm	_BU21013_SENSOR_8_15_REG,4,2    ; @BU21013_SENSOR_8_15_REG
	.comm	_BU21013_SENSORS_EN_8_15,4,2    ; @BU21013_SENSORS_EN_8_15
l_.str.2:                               ; @.str.2
	.asciz	"BU21013_SENSOR_8_15 reg write failed\n"

	.comm	_BU21013_SENSOR_16_23_REG,4,2   ; @BU21013_SENSOR_16_23_REG
	.comm	_BU21013_SENSORS_EN_16_23,4,2   ; @BU21013_SENSORS_EN_16_23
l_.str.3:                               ; @.str.3
	.asciz	"BU21013_SENSOR_16_23 reg write failed\n"

	.comm	_BU21013_POS_MODE1_REG,4,2      ; @BU21013_POS_MODE1_REG
	.comm	_BU21013_POS_MODE1_0,4,2        ; @BU21013_POS_MODE1_0
	.comm	_BU21013_POS_MODE1_1,4,2        ; @BU21013_POS_MODE1_1
l_.str.4:                               ; @.str.4
	.asciz	"BU21013_POS_MODE1 reg write failed\n"

	.comm	_BU21013_POS_MODE2_REG,4,2      ; @BU21013_POS_MODE2_REG
	.comm	_BU21013_POS_MODE2_ZERO,4,2     ; @BU21013_POS_MODE2_ZERO
	.comm	_BU21013_POS_MODE2_AVG1,4,2     ; @BU21013_POS_MODE2_AVG1
	.comm	_BU21013_POS_MODE2_AVG2,4,2     ; @BU21013_POS_MODE2_AVG2
	.comm	_BU21013_POS_MODE2_EN_RAW,4,2   ; @BU21013_POS_MODE2_EN_RAW
	.comm	_BU21013_POS_MODE2_MULTI,4,2    ; @BU21013_POS_MODE2_MULTI
l_.str.5:                               ; @.str.5
	.asciz	"BU21013_POS_MODE2 reg write failed\n"

	.comm	_BU21013_CLK_MODE_REG,4,2       ; @BU21013_CLK_MODE_REG
	.comm	_BU21013_CLK_MODE_DIV,4,2       ; @BU21013_CLK_MODE_DIV
	.comm	_BU21013_CLK_MODE_CALIB,4,2     ; @BU21013_CLK_MODE_CALIB
l_.str.6:                               ; @.str.6
	.asciz	"BU21013_CLK_MODE reg write failed\n"

	.comm	_BU21013_IDLE_REG,4,2           ; @BU21013_IDLE_REG
	.comm	_BU21013_IDLET_0,4,2            ; @BU21013_IDLET_0
	.comm	_BU21013_IDLE_INTERMIT_EN,4,2   ; @BU21013_IDLE_INTERMIT_EN
l_.str.7:                               ; @.str.7
	.asciz	"BU21013_IDLE reg write failed\n"

	.comm	_BU21013_INT_MODE_REG,4,2       ; @BU21013_INT_MODE_REG
	.comm	_BU21013_INT_MODE_LEVEL,4,2     ; @BU21013_INT_MODE_LEVEL
l_.str.8:                               ; @.str.8
	.asciz	"BU21013_INT_MODE reg write failed\n"

	.comm	_BU21013_FILTER_REG,4,2         ; @BU21013_FILTER_REG
	.comm	_BU21013_DELTA_0_6,4,2          ; @BU21013_DELTA_0_6
	.comm	_BU21013_FILTER_EN,4,2          ; @BU21013_FILTER_EN
l_.str.9:                               ; @.str.9
	.asciz	"BU21013_FILTER reg write failed\n"

	.comm	_BU21013_TH_ON_REG,4,2          ; @BU21013_TH_ON_REG
	.comm	_BU21013_TH_ON_5,4,2            ; @BU21013_TH_ON_5
l_.str.10:                              ; @.str.10
	.asciz	"BU21013_TH_ON reg write failed\n"

	.comm	_BU21013_TH_OFF_REG,4,2         ; @BU21013_TH_OFF_REG
	.comm	_BU21013_TH_OFF_4,4,2           ; @BU21013_TH_OFF_4
	.comm	_BU21013_TH_OFF_3,4,2           ; @BU21013_TH_OFF_3
l_.str.11:                              ; @.str.11
	.asciz	"BU21013_TH_OFF reg write failed\n"

	.comm	_BU21013_GAIN_REG,4,2           ; @BU21013_GAIN_REG
	.comm	_BU21013_GAIN_0,4,2             ; @BU21013_GAIN_0
	.comm	_BU21013_GAIN_1,4,2             ; @BU21013_GAIN_1
l_.str.12:                              ; @.str.12
	.asciz	"BU21013_GAIN reg write failed\n"

	.comm	_BU21013_OFFSET_MODE_REG,4,2    ; @BU21013_OFFSET_MODE_REG
	.comm	_BU21013_OFFSET_MODE_DEFAULT,4,2 ; @BU21013_OFFSET_MODE_DEFAULT
l_.str.13:                              ; @.str.13
	.asciz	"BU21013_OFFSET_MODE reg write failed\n"

	.comm	_BU21013_XY_EDGE_REG,4,2        ; @BU21013_XY_EDGE_REG
	.comm	_BU21013_X_EDGE_0,4,2           ; @BU21013_X_EDGE_0
	.comm	_BU21013_X_EDGE_2,4,2           ; @BU21013_X_EDGE_2
	.comm	_BU21013_Y_EDGE_1,4,2           ; @BU21013_Y_EDGE_1
	.comm	_BU21013_Y_EDGE_3,4,2           ; @BU21013_Y_EDGE_3
l_.str.14:                              ; @.str.14
	.asciz	"BU21013_XY_EDGE reg write failed\n"

	.comm	_BU21013_DONE_REG,4,2           ; @BU21013_DONE_REG
	.comm	_BU21013_DONE,4,2               ; @BU21013_DONE
l_.str.15:                              ; @.str.15
	.asciz	"BU21013_REG_DONE reg write failed\n"

	.no_dead_strip	_bu21013_init_chip
.subsections_via_symbols
