diff --git a/common/spl/spl_rkfw.c b/common/spl/spl_rkfw.c index 85413e932c..a683497c72 100644 --- a/common/spl/spl_rkfw.c +++ b/common/spl/spl_rkfw.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -343,7 +344,7 @@ static int rkfw_load_kernel(struct spl_load_info *info, u32 image_sector, } #ifdef CONFIG_SPL_ROCKCHIP_HW_DECOMPRESS struct udevice *dev; - u32 cap = GZIP_MOD; + u32 cap = DECOM_GZIP; dev = misc_decompress_get_device(cap); diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index e1cd1f0a11..4777495e15 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -86,6 +86,12 @@ config SPL_ROCKCHIP_SECURE_OTP help Support read & write secure otp in spl. +config SPL_ROCKCHIP_SECURE_OTP_V2 + bool "Rockchip Secure OTP Version 2 Support in spl" + depends on SPL_MISC + help + Support read & write secure otp in spl. Support platforms: rv1126. + config CMD_CROS_EC bool "Enable crosec command" depends on CROS_EC diff --git a/drivers/misc/Makefile b/drivers/misc/Makefile index be4088867e..4892f9bba2 100644 --- a/drivers/misc/Makefile +++ b/drivers/misc/Makefile @@ -54,5 +54,6 @@ obj-$(CONFIG_QFW) += qfw.o obj-$(CONFIG_ROCKCHIP_EFUSE) += rockchip-efuse.o obj-$(CONFIG_ROCKCHIP_OTP) += rockchip-otp.o obj-$(CONFIG_$(SPL_TPL_)ROCKCHIP_SECURE_OTP) += rockchip-secure-otp.o +obj-$(CONFIG_$(SPL_TPL_)ROCKCHIP_SECURE_OTP_V2) += rockchip-secure-otp-v2.o obj-$(CONFIG_$(SPL_TPL_)ROCKCHIP_HW_DECOMPRESS) += rockchip_decompress.o -obj-$(CONFIG_$(SPL_TPL_)ROCKCHIP_HW_DECOMPRESS) += misc_decompress.o +obj-$(CONFIG_$(SPL_TPL_)MISC) += misc_decompress.o misc_otp.o diff --git a/drivers/misc/misc_decompress.c b/drivers/misc/misc_decompress.c index 1cfcf248e0..a45cb5c9ad 100644 --- a/drivers/misc/misc_decompress.c +++ b/drivers/misc/misc_decompress.c @@ -79,7 +79,7 @@ int misc_decompress_start(struct udevice *dev, unsigned long src, param.addr_src = src; param.size = size; if (misc_gzip_parse_header((unsigned char *)src, 0xffff) > 0) { - param.mode = GZIP_MOD; + param.mode = DECOM_GZIP; } else { printf("Unsupported decompression format.\n"); return -EPERM; diff --git a/drivers/misc/misc_otp.c b/drivers/misc/misc_otp.c new file mode 100644 index 0000000000..c880f1aa93 --- /dev/null +++ b/drivers/misc/misc_otp.c @@ -0,0 +1,46 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright (C) 2020 Rockchip Electronics Co., Ltd + */ + +#include +#include +#include +#include + +struct udevice *misc_otp_get_device(u32 capability) +{ + const struct misc_ops *ops; + struct udevice *dev; + struct uclass *uc; + int ret; + u32 cap; + + ret = uclass_get(UCLASS_MISC, &uc); + if (ret) + return NULL; + + for (uclass_first_device(UCLASS_MISC, &dev); + dev; + uclass_next_device(&dev)) { + ops = device_get_ops(dev); + if (!ops || !ops->ioctl) + continue; + + cap = ops->ioctl(dev, IOCTL_REQ_CAPABILITY, NULL); + if ((cap & capability) == capability) + return dev; + } + + return NULL; +} + +int misc_otp_read(struct udevice *dev, int offset, void *buf, int size) +{ + return misc_read(dev, offset, buf, size); +} + +int misc_otp_write(struct udevice *dev, int offset, const void *buf, int size) +{ + return misc_write(dev, offset, (void *)buf, size); +} diff --git a/drivers/misc/rockchip-secure-otp-v2.S b/drivers/misc/rockchip-secure-otp-v2.S new file mode 100644 index 0000000000..333893a1f7 --- /dev/null +++ b/drivers/misc/rockchip-secure-otp-v2.S @@ -0,0 +1,6660 @@ + .arch armv7-a + .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, 4 + .eabi_attribute 34, 0 + .eabi_attribute 18, 2 + .file "rockchip-secure-otp-v2.c" + .text +.Ltext0: + .cfi_sections .debug_frame + .section .text.rockchip_secure_otp_v2_ioctl,"ax",%progbits + .align 1 + .syntax unified + .thumb + .thumb_func + .fpu softvfp + .type rockchip_secure_otp_v2_ioctl, %function +rockchip_secure_otp_v2_ioctl: +.LFB271: + .file 1 "drivers/misc/rockchip-secure-otp-v2.c" + .loc 1 158 0 + .cfi_startproc + @ args = 0, pretend = 0, frame = 0 + @ frame_needed = 0, uses_anonymous_args = 0 + @ link register save eliminated. +.LVL0: + .loc 1 161 0 + movw r3, #27908 + cmp r1, r3 + .loc 1 170 0 + ite eq + moveq r0, #8 +.LVL1: + mvnne r0, #21 + bx lr + .cfi_endproc +.LFE271: + .size rockchip_secure_otp_v2_ioctl, .-rockchip_secure_otp_v2_ioctl + .section .text.rockchip_secure_otp_v2_read,"ax",%progbits + .align 1 + .syntax unified + .thumb + .thumb_func + .fpu softvfp + .type rockchip_secure_otp_v2_read, %function +rockchip_secure_otp_v2_read: +.LFB268: + .loc 1 17 0 + .cfi_startproc + @ args = 0, pretend = 0, frame = 0 + @ frame_needed = 0, uses_anonymous_args = 0 +.LVL2: + push {r4, r5, r6, r7, r8, r10, fp, lr} + .cfi_def_cfa_offset 32 + .cfi_offset 4, -32 + .cfi_offset 5, -28 + .cfi_offset 6, -24 + .cfi_offset 7, -20 + .cfi_offset 8, -16 + .cfi_offset 10, -12 + .cfi_offset 11, -8 + .cfi_offset 14, -4 + .loc 1 17 0 + mov r8, r1 + mov r10, r3 + mov r6, r2 + .loc 1 18 0 + bl dev_get_platdata +.LVL3: + mov r3, #768 + mov r5, r0 +.LVL4: +.LBB16: + .loc 1 25 0 + movs r1, #0 +.LVL5: +.L6: + .loc 1 25 0 is_stmt 0 discriminator 3 + .syntax unified +@ 25 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified + ldr r2, [r5] + str r1, [r2, r3] + adds r3, r3, #4 +.LBE16: + .loc 1 24 0 is_stmt 1 discriminator 3 + cmp r3, #896 + bne .L6 + subs r6, r6, #1 +.LVL6: + .loc 1 24 0 is_stmt 0 + mov r4, r8 +.LBB17: + .loc 1 45 0 is_stmt 1 + mov fp, #1 +.LVL7: +.L7: +.LBE17: + .loc 1 27 0 discriminator 1 + sub r3, r4, r8 + cmp r10, r3 + bgt .L14 + .loc 1 19 0 + movs r0, #0 + b .L9 +.L14: +.LVL8: + .loc 1 30 0 + cmp r4, #448 + ble .L8 +.L24: +.LVL9: + .loc 1 40 0 + mov r0, #-1 +.LVL10: +.L9: + mov r3, #768 +.LBB18: + .loc 1 66 0 + movs r1, #255 +.LVL11: +.L15: + .loc 1 66 0 is_stmt 0 discriminator 3 + .syntax unified +@ 66 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified + ldr r2, [r5] + str r1, [r2, r3] + adds r3, r3, #4 +.LBE18: + .loc 1 65 0 is_stmt 1 discriminator 3 + cmp r3, #896 + bne .L15 + .loc 1 69 0 + pop {r4, r5, r6, r7, r8, r10, fp, pc} +.LVL12: +.L8: + .loc 1 36 0 + cbz r4, .L10 + .loc 1 36 0 is_stmt 0 discriminator 1 + sub r3, r4, #16 + cmp r3, #31 + bls .L10 + .loc 1 36 0 discriminator 2 + sub r3, r4, #104 + cmp r3, #284 + bls .L10 + .loc 1 39 0 is_stmt 1 + ldr r0, .L25 + bl printf +.LVL13: + b .L24 +.L10: +.LVL14: +.LBB19: + .loc 1 44 0 + .syntax unified +@ 44 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified + ldr r3, [r5] + str r4, [r3, #28] +.LVL15: +.LBE19: +.LBB20: + .loc 1 45 0 + .syntax unified +@ 45 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified + ldr r3, [r5] + movw r7, #10002 + str fp, [r3, #32] +.LVL16: +.L13: +.LBE20: +.LBB21: + .loc 1 48 0 + ldr r3, [r5] + ldr r3, [r3, #48] +.LVL17: + .syntax unified +@ 48 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 +.LVL18: + .thumb + .syntax unified +.LBE21: + .loc 1 49 0 + cbz r3, .L11 + .loc 1 52 0 + subs r7, r7, #1 +.LVL19: + beq .L24 +.LVL20: + .loc 1 58 0 + movs r0, #1 + bl udelay +.LVL21: + .loc 1 48 0 + b .L13 +.LVL22: +.L11: +.LBB22: + .loc 1 61 0 discriminator 2 + ldr r3, [r5] +.LVL23: + ldr r3, [r3, #36] +.LVL24: + .syntax unified +@ 61 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified +.LBE22: + strb r3, [r6, #1]! +.LVL25: + adds r4, r4, #1 +.LVL26: + b .L7 +.L26: + .align 2 +.L25: + .word .LC0 + .cfi_endproc +.LFE268: + .size rockchip_secure_otp_v2_read, .-rockchip_secure_otp_v2_read + .section .text.rockchip_secure_otp_v2_ofdata_to_platdata,"ax",%progbits + .align 1 + .syntax unified + .thumb + .thumb_func + .fpu softvfp + .type rockchip_secure_otp_v2_ofdata_to_platdata, %function +rockchip_secure_otp_v2_ofdata_to_platdata: +.LFB272: + .loc 1 179 0 + .cfi_startproc + @ args = 0, pretend = 0, frame = 0 + @ frame_needed = 0, uses_anonymous_args = 0 +.LVL27: + push {r3, r4, r5, lr} + .cfi_def_cfa_offset 16 + .cfi_offset 3, -16 + .cfi_offset 4, -12 + .cfi_offset 5, -8 + .cfi_offset 14, -4 + .loc 1 179 0 + mov r5, r0 + .loc 1 180 0 + bl dev_get_platdata +.LVL28: + mov r4, r0 +.LVL29: + .loc 1 182 0 + mov r0, r5 +.LVL30: + bl dev_read_addr_ptr +.LVL31: + .loc 1 183 0 + movs r2, #0 + .loc 1 182 0 + str r0, [r4] + .loc 1 183 0 + ldr r1, .L28 + mov r0, r5 + bl dev_read_u32_default +.LVL32: + str r0, [r4, #4] + .loc 1 187 0 + movs r0, #0 + pop {r3, r4, r5, pc} +.LVL33: +.L29: + .align 2 +.L28: + .word .LC1 + .cfi_endproc +.LFE272: + .size rockchip_secure_otp_v2_ofdata_to_platdata, .-rockchip_secure_otp_v2_ofdata_to_platdata + .section .text.rockchip_secure_otp_v2_write,"ax",%progbits + .align 1 + .syntax unified + .thumb + .thumb_func + .fpu softvfp + .type rockchip_secure_otp_v2_write, %function +rockchip_secure_otp_v2_write: +.LFB270: + .loc 1 114 0 + .cfi_startproc + @ args = 0, pretend = 0, frame = 8 + @ frame_needed = 0, uses_anonymous_args = 0 +.LVL34: + push {r0, r1, r4, r5, r6, r7, r8, r10, fp, lr} + .cfi_def_cfa_offset 40 + .cfi_offset 4, -32 + .cfi_offset 5, -28 + .cfi_offset 6, -24 + .cfi_offset 7, -20 + .cfi_offset 8, -16 + .cfi_offset 10, -12 + .cfi_offset 11, -8 + .cfi_offset 14, -4 + .loc 1 114 0 + mov r8, r3 + mov r5, r1 + mov r10, r2 + mov r7, r0 + .loc 1 115 0 + bl dev_get_platdata +.LVL35: + mov r4, r0 +.LVL36: + .loc 1 118 0 + mov r0, r8 +.LVL37: + bl malloc_simple +.LVL38: + .loc 1 120 0 + mov r6, r0 + cbnz r0, .L31 +.LVL39: +.L63: + .loc 1 133 0 + mov r7, #-1 +.L30: + .loc 1 154 0 + mov r0, r7 + add sp, sp, #8 + .cfi_remember_state + .cfi_def_cfa_offset 32 + @ sp needed + pop {r4, r5, r6, r7, r8, r10, fp, pc} +.LVL40: +.L31: + .cfi_restore_state + .loc 1 123 0 + mov r2, r0 + mov r3, r8 + mov r0, r7 +.LVL41: + mov r1, r5 + bl rockchip_secure_otp_v2_read +.LVL42: + .loc 1 124 0 + mov r7, r0 +.LVL43: + cmp r0, #0 + bne .L63 + mov r3, r6 +.L34: +.LVL44: + .loc 1 129 0 discriminator 1 + subs r2, r3, r6 + cmp r8, r2 + bgt .L35 + mov r3, #512 +.LVL45: +.LBB33: + .loc 1 140 0 discriminator 3 + movs r1, #0 +.L36: +.LVL46: + .syntax unified +@ 140 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified + ldr r2, [r4] + str r1, [r2, r3] +.LVL47: + adds r3, r3, #4 +.LBE33: + .loc 1 139 0 discriminator 3 + cmp r3, #640 + bne .L36 + movs r6, #0 +.LVL48: +.LBB34: +.LBB35: + .loc 1 82 0 discriminator 1 + sub r2, r5, #104 + sub r3, r5, #16 + str r3, [sp] +.LVL49: +.L37: +.LBE35: +.LBE34: + .loc 1 142 0 discriminator 1 + cmp r6, r8 + blt .L44 + mov r3, #512 +.LBB45: + .loc 1 151 0 discriminator 3 + movs r1, #255 +.L45: +.LVL50: + .syntax unified +@ 151 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified + ldr r2, [r4] + str r1, [r2, r3] + adds r3, r3, #4 +.LBE45: + .loc 1 150 0 discriminator 3 + cmp r3, #640 + bne .L45 + b .L30 +.LVL51: +.L35: + .loc 1 130 0 + ldrb r2, [r3], #1 @ zero_extendqisi2 +.LVL52: + cmp r2, #0 + beq .L34 + .loc 1 131 0 + ldr r0, .L64 +.LVL53: + bl printf +.LVL54: + b .L63 +.LVL55: +.L44: +.LBB46: +.LBB42: + .loc 1 78 0 + cmp r5, #448 +.LBE42: +.LBE46: + .loc 1 143 0 + ldrb r3, [r10, r6] @ zero_extendqisi2 +.LVL56: +.LBB47: +.LBB43: + .loc 1 78 0 + bgt .L40 + .loc 1 82 0 + cbz r5, .L39 + ldr r1, [sp] + cmp r1, #31 + bls .L39 + cmp r2, #284 + bls .L39 + .loc 1 85 0 + ldr r0, .L64+4 + bl printf +.LVL57: +.L40: +.LBB36: + .loc 1 95 0 discriminator 3 + mov r3, #512 +.LBE36: +.LBE43: +.LBE47: +.LBB48: + .loc 1 145 0 discriminator 3 + movs r1, #255 +.L43: +.LVL58: + .syntax unified +@ 145 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified + ldr r2, [r4] + str r1, [r2, r3] + adds r3, r3, #4 +.LBE48: + .loc 1 144 0 discriminator 3 + cmp r3, #640 + bne .L43 + b .L63 +.LVL59: +.L39: +.LBB49: +.LBB44: + .loc 1 89 0 + cbz r3, .L41 + adds r0, r5, r6 + lsls r0, r0, #3 +.LVL60: +.LBB37: + .loc 1 92 0 + .syntax unified +@ 92 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified + ldr r1, [r4] + str r0, [r1, #52] +.LVL61: +.LBE37: +.LBB38: + .loc 1 93 0 + .syntax unified +@ 93 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified + ldr r1, [r4] + movs r0, #7 +.LVL62: + str r0, [r1, #56] +.LVL63: +.LBE38: +.LBB39: + .loc 1 94 0 + .syntax unified +@ 94 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified + ldr r1, [r4] + str r3, [r1, #60] +.LVL64: +.LBE39: +.LBB40: + .loc 1 95 0 + .syntax unified +@ 95 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 + .thumb + .syntax unified + ldr fp, .L64+8 + movs r0, #1 + ldr r1, [r4] + str r0, [r1, #68] +.LVL65: +.L42: +.LBE40: +.LBB41: + .loc 1 98 0 + ldr r1, [r4] + ldr r1, [r1, #72] +.LVL66: + .syntax unified +@ 98 "drivers/misc/rockchip-secure-otp-v2.c" 1 + dmb sy +@ 0 "" 2 +.LVL67: + .thumb + .syntax unified +.LBE41: + .loc 1 99 0 + cbz r1, .L41 + .loc 1 102 0 + subs fp, fp, #1 +.LVL68: + str r2, [sp, #4] + beq .L40 +.LVL69: + .loc 1 106 0 + movs r0, #1 + bl udelay +.LVL70: + ldr r2, [sp, #4] + b .L42 +.LVL71: +.L41: +.LBE44: +.LBE49: + .loc 1 142 0 + adds r6, r6, #1 +.LVL72: + b .L37 +.L65: + .align 2 +.L64: + .word .LC2 + .word .LC0 + .word 100002 + .cfi_endproc +.LFE270: + .size rockchip_secure_otp_v2_write, .-rockchip_secure_otp_v2_write + .global _u_boot_list_2_driver_2_rockchip_secure_otp_v2 + .section .rodata.rockchip_otp_ids,"a",%progbits + .align 2 + .type rockchip_otp_ids, %object + .size rockchip_otp_ids, 16 +rockchip_otp_ids: + .word .LC4 + .space 4 + .space 8 + .section .rodata.rockchip_secure_otp_ops,"a",%progbits + .align 2 + .type rockchip_secure_otp_ops, %object + .size rockchip_secure_otp_ops, 16 +rockchip_secure_otp_ops: + .word rockchip_secure_otp_v2_read + .word rockchip_secure_otp_v2_write + .word rockchip_secure_otp_v2_ioctl + .space 4 + .section .rodata.rockchip_secure_otp_v2_ofdata_to_platdata.str1.1,"aMS",%progbits,1 +.LC1: + .ascii "secure_conf\000" + .section .rodata.rockchip_secure_otp_v2_read.str1.1,"aMS",%progbits,1 +.LC0: + .ascii "Please input correct addr\012\000" + .section .rodata.rockchip_secure_otp_v2_write.str1.1,"aMS",%progbits,1 +.LC2: + .ascii "The zone is written.\012\000" + .section .rodata.str1.1,"aMS",%progbits,1 +.LC3: + .ascii "rockchip_secure_otp_v2\000" +.LC4: + .ascii "rockchip,rv1126-secure-otp\000" + .section .u_boot_list_2_driver_2_rockchip_secure_otp_v2,"aw",%progbits + .align 2 + .type _u_boot_list_2_driver_2_rockchip_secure_otp_v2, %object + .size _u_boot_list_2_driver_2_rockchip_secure_otp_v2, 68 +_u_boot_list_2_driver_2_rockchip_secure_otp_v2: + .word .LC3 + .word 36 + .word rockchip_otp_ids + .space 16 + .word rockchip_secure_otp_v2_ofdata_to_platdata + .space 16 + .word 8 + .space 8 + .word rockchip_secure_otp_ops + .space 4 + .text +.Letext0: + .file 2 "include/common.h" + .file 3 "./arch/arm/include/asm/types.h" + .file 4 "include/linux/types.h" + .file 5 "include/errno.h" + .file 6 "include/linux/string.h" + .file 7 "include/efi.h" + .file 8 "include/dm/device.h" + .file 9 "include/ide.h" + .file 10 "include/linux/list.h" + .file 11 "include/part.h" + .file 12 "include/flash.h" + .file 13 "include/lmb.h" + .file 14 "include/asm-generic/u-boot.h" + .file 15 "./arch/arm/include/asm/u-boot-arm.h" + .file 16 "include/linux/libfdt_env.h" + .file 17 "include/linux/../../scripts/dtc/libfdt/fdt.h" + .file 18 "include/linux/libfdt.h" + .file 19 "include/image.h" + .file 20 "./arch/arm/include/asm/global_data.h" + .file 21 "include/asm-generic/global_data.h" + .file 22 "include/dm/of.h" + .file 23 "include/net.h" + .file 24 "include/dm/uclass-id.h" + .file 25 "include/dm/ofnode.h" + .file 26 "include/malloc.h" + .file 27 "include/linux/compat.h" + .file 28 "include/dm/uclass.h" + .file 29 "include/asm-generic/ioctl.h" + .file 30 "include/misc.h" + .file 31 "include/rockchip-otp-v2.h" + .file 32 "include/dm/read.h" + .file 33 "include/stdio.h" + .file 34 "include/linux/delay.h" + .file 35 "include/log.h" + .section .debug_info,"",%progbits +.Ldebug_info0: + .4byte 0x1cb6 + .2byte 0x4 + .4byte .Ldebug_abbrev0 + .byte 0x4 + .uleb128 0x1 + .4byte .LASF425 + .byte 0xc + .4byte .LASF426 + .4byte .LASF427 + .4byte .Ldebug_ranges0+0x58 + .4byte 0 + .4byte .Ldebug_line0 + .uleb128 0x2 + .4byte .LASF4 + .byte 0x2 + .byte 0xd + .4byte 0x30 + .uleb128 0x3 + .byte 0x1 + .byte 0x8 + .4byte .LASF0 + .uleb128 0x3 + .byte 0x4 + .byte 0x7 + .4byte .LASF1 + .uleb128 0x3 + .byte 0x2 + .byte 0x7 + .4byte .LASF2 + .uleb128 0x4 + .4byte .LASF21 + .byte 0x5 + .byte 0xc + .4byte 0x50 + .uleb128 0x5 + .byte 0x4 + .byte 0x5 + .ascii "int\000" + .uleb128 0x3 + .byte 0x1 + .byte 0x6 + .4byte .LASF3 + .uleb128 0x2 + .4byte .LASF5 + .byte 0x3 + .byte 0xc + .4byte 0x30 + .uleb128 0x3 + .byte 0x2 + .byte 0x5 + .4byte .LASF6 + .uleb128 0x2 + .4byte .LASF7 + .byte 0x3 + .byte 0x12 + .4byte 0x7b + .uleb128 0x3 + .byte 0x4 + .byte 0x7 + .4byte .LASF8 + .uleb128 0x3 + .byte 0x8 + .byte 0x5 + .4byte .LASF9 + .uleb128 0x3 + .byte 0x8 + .byte 0x7 + .4byte .LASF10 + .uleb128 0x6 + .ascii "u8\000" + .byte 0x3 + .byte 0x1f + .4byte 0x30 + .uleb128 0x7 + .4byte 0x90 + .uleb128 0x6 + .ascii "u32\000" + .byte 0x3 + .byte 0x25 + .4byte 0x7b + .uleb128 0x6 + .ascii "u64\000" + .byte 0x3 + .byte 0x28 + .4byte 0x89 + .uleb128 0x2 + .4byte .LASF11 + .byte 0x3 + .byte 0x35 + .4byte 0x37 + .uleb128 0x2 + .4byte .LASF12 + .byte 0x3 + .byte 0x36 + .4byte 0x37 + .uleb128 0x3 + .byte 0x4 + .byte 0x7 + .4byte .LASF13 + .uleb128 0x8 + .byte 0x4 + .4byte 0xdf + .uleb128 0x3 + .byte 0x1 + .byte 0x8 + .4byte .LASF14 + .uleb128 0x7 + .4byte 0xd8 + .uleb128 0x3 + .byte 0x4 + .byte 0x5 + .4byte .LASF15 + .uleb128 0x8 + .byte 0x4 + .4byte 0xd8 + .uleb128 0x2 + .4byte .LASF16 + .byte 0x4 + .byte 0x59 + .4byte 0x3e + .uleb128 0x2 + .4byte .LASF17 + .byte 0x4 + .byte 0x5b + .4byte 0x37 + .uleb128 0x2 + .4byte .LASF18 + .byte 0x4 + .byte 0x69 + .4byte 0x5e + .uleb128 0x2 + .4byte .LASF19 + .byte 0x4 + .byte 0x6b + .4byte 0x70 + .uleb128 0x2 + .4byte .LASF20 + .byte 0x4 + .byte 0x97 + .4byte 0x70 + .uleb128 0x9 + .byte 0x4 + .uleb128 0x4 + .4byte .LASF22 + .byte 0x6 + .byte 0xb + .4byte 0xeb + .uleb128 0x3 + .byte 0x1 + .byte 0x2 + .4byte .LASF23 + .uleb128 0xa + .4byte 0xd8 + .4byte 0x147 + .uleb128 0xb + .byte 0 + .uleb128 0xc + .4byte .LASF24 + .byte 0x7 + .2byte 0x140 + .4byte 0x13c + .uleb128 0xc + .4byte .LASF25 + .byte 0x7 + .2byte 0x143 + .4byte 0x13c + .uleb128 0xc + .4byte .LASF26 + .byte 0x7 + .2byte 0x143 + .4byte 0x13c + .uleb128 0xd + .4byte .LASF45 + .byte 0x54 + .byte 0x8 + .byte 0x80 + .4byte 0x250 + .uleb128 0xe + .4byte .LASF27 + .byte 0x8 + .byte 0x81 + .4byte 0x13dd + .byte 0 + .uleb128 0xe + .4byte .LASF28 + .byte 0x8 + .byte 0x82 + .4byte 0xd2 + .byte 0x4 + .uleb128 0xe + .4byte .LASF29 + .byte 0x8 + .byte 0x83 + .4byte 0x128 + .byte 0x8 + .uleb128 0xe + .4byte .LASF30 + .byte 0x8 + .byte 0x84 + .4byte 0x128 + .byte 0xc + .uleb128 0xe + .4byte .LASF31 + .byte 0x8 + .byte 0x85 + .4byte 0x128 + .byte 0x10 + .uleb128 0xe + .4byte .LASF32 + .byte 0x8 + .byte 0x86 + .4byte 0x1384 + .byte 0x14 + .uleb128 0xe + .4byte .LASF33 + .byte 0x8 + .byte 0x87 + .4byte 0xfc + .byte 0x18 + .uleb128 0xe + .4byte .LASF34 + .byte 0x8 + .byte 0x88 + .4byte 0x250 + .byte 0x1c + .uleb128 0xe + .4byte .LASF35 + .byte 0x8 + .byte 0x89 + .4byte 0x128 + .byte 0x20 + .uleb128 0xe + .4byte .LASF36 + .byte 0x8 + .byte 0x8a + .4byte 0x1420 + .byte 0x24 + .uleb128 0xe + .4byte .LASF37 + .byte 0x8 + .byte 0x8b + .4byte 0x128 + .byte 0x28 + .uleb128 0xe + .4byte .LASF38 + .byte 0x8 + .byte 0x8c + .4byte 0x128 + .byte 0x2c + .uleb128 0xe + .4byte .LASF39 + .byte 0x8 + .byte 0x8d + .4byte 0x283 + .byte 0x30 + .uleb128 0xe + .4byte .LASF40 + .byte 0x8 + .byte 0x8e + .4byte 0x283 + .byte 0x38 + .uleb128 0xe + .4byte .LASF41 + .byte 0x8 + .byte 0x8f + .4byte 0x283 + .byte 0x40 + .uleb128 0xe + .4byte .LASF42 + .byte 0x8 + .byte 0x90 + .4byte 0x112 + .byte 0x48 + .uleb128 0xe + .4byte .LASF43 + .byte 0x8 + .byte 0x91 + .4byte 0x50 + .byte 0x4c + .uleb128 0xf + .ascii "seq\000" + .byte 0x8 + .byte 0x92 + .4byte 0x50 + .byte 0x50 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x16b + .uleb128 0x8 + .byte 0x4 + .4byte 0x25c + .uleb128 0x10 + .uleb128 0xa + .4byte 0xfc + .4byte 0x268 + .uleb128 0xb + .byte 0 + .uleb128 0x4 + .4byte .LASF44 + .byte 0x9 + .byte 0x10 + .4byte 0x25d + .uleb128 0xa + .4byte 0x30 + .4byte 0x283 + .uleb128 0x11 + .4byte 0xcb + .byte 0x5 + .byte 0 + .uleb128 0xd + .4byte .LASF46 + .byte 0x8 + .byte 0xa + .byte 0x16 + .4byte 0x2a8 + .uleb128 0xe + .4byte .LASF47 + .byte 0xa + .byte 0x17 + .4byte 0x2a8 + .byte 0 + .uleb128 0xe + .4byte .LASF48 + .byte 0xa + .byte 0x17 + .4byte 0x2a8 + .byte 0x4 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x283 + .uleb128 0xd + .4byte .LASF49 + .byte 0x8 + .byte 0xb + .byte 0xf + .4byte 0x2d3 + .uleb128 0xe + .4byte .LASF28 + .byte 0xb + .byte 0x10 + .4byte 0xeb + .byte 0 + .uleb128 0xe + .4byte .LASF50 + .byte 0xb + .byte 0x11 + .4byte 0x2ec + .byte 0x4 + .byte 0 + .uleb128 0x7 + .4byte 0x2ae + .uleb128 0x12 + .4byte 0x50 + .4byte 0x2ec + .uleb128 0x13 + .4byte 0x50 + .uleb128 0x13 + .4byte 0x50 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x2d8 + .uleb128 0xa + .4byte 0x2d3 + .4byte 0x2fd + .uleb128 0xb + .byte 0 + .uleb128 0x7 + .4byte 0x2f2 + .uleb128 0x4 + .4byte .LASF49 + .byte 0xb + .byte 0xce + .4byte 0x2fd + .uleb128 0x14 + .2byte 0xa10 + .byte 0xc + .byte 0x13 + .4byte 0x361 + .uleb128 0xe + .4byte .LASF51 + .byte 0xc + .byte 0x14 + .4byte 0xfc + .byte 0 + .uleb128 0xe + .4byte .LASF52 + .byte 0xc + .byte 0x15 + .4byte 0xf1 + .byte 0x4 + .uleb128 0xe + .4byte .LASF53 + .byte 0xc + .byte 0x16 + .4byte 0xfc + .byte 0x8 + .uleb128 0xe + .4byte .LASF54 + .byte 0xc + .byte 0x17 + .4byte 0x361 + .byte 0xc + .uleb128 0x15 + .4byte .LASF55 + .byte 0xc + .byte 0x18 + .4byte 0x372 + .2byte 0x80c + .uleb128 0x16 + .ascii "mtd\000" + .byte 0xc + .byte 0x31 + .4byte 0x388 + .2byte 0xa0c + .byte 0 + .uleb128 0xa + .4byte 0xfc + .4byte 0x372 + .uleb128 0x17 + .4byte 0xcb + .2byte 0x1ff + .byte 0 + .uleb128 0xa + .4byte 0x25 + .4byte 0x383 + .uleb128 0x17 + .4byte 0xcb + .2byte 0x1ff + .byte 0 + .uleb128 0x18 + .4byte .LASF302 + .uleb128 0x8 + .byte 0x4 + .4byte 0x383 + .uleb128 0x2 + .4byte .LASF56 + .byte 0xc + .byte 0x37 + .4byte 0x30d + .uleb128 0xa + .4byte 0x38e + .4byte 0x3a4 + .uleb128 0xb + .byte 0 + .uleb128 0x4 + .4byte .LASF57 + .byte 0xc + .byte 0x39 + .4byte 0x399 + .uleb128 0x3 + .byte 0x8 + .byte 0x4 + .4byte .LASF58 + .uleb128 0xd + .4byte .LASF59 + .byte 0x8 + .byte 0xd + .byte 0x10 + .4byte 0x3db + .uleb128 0xe + .4byte .LASF60 + .byte 0xd + .byte 0x11 + .4byte 0xb5 + .byte 0 + .uleb128 0xe + .4byte .LASF51 + .byte 0xd + .byte 0x12 + .4byte 0xc0 + .byte 0x4 + .byte 0 + .uleb128 0xd + .4byte .LASF61 + .byte 0x90 + .byte 0xd + .byte 0x15 + .4byte 0x40c + .uleb128 0xf + .ascii "cnt\000" + .byte 0xd + .byte 0x16 + .4byte 0x37 + .byte 0 + .uleb128 0xe + .4byte .LASF51 + .byte 0xd + .byte 0x17 + .4byte 0xc0 + .byte 0x4 + .uleb128 0xe + .4byte .LASF62 + .byte 0xd + .byte 0x18 + .4byte 0x40c + .byte 0x8 + .byte 0 + .uleb128 0xa + .4byte 0x3b6 + .4byte 0x41c + .uleb128 0x11 + .4byte 0xcb + .byte 0x10 + .byte 0 + .uleb128 0x19 + .ascii "lmb\000" + .2byte 0x120 + .byte 0xd + .byte 0x1b + .4byte 0x442 + .uleb128 0xe + .4byte .LASF63 + .byte 0xd + .byte 0x1c + .4byte 0x3db + .byte 0 + .uleb128 0xe + .4byte .LASF64 + .byte 0xd + .byte 0x1d + .4byte 0x3db + .byte 0x90 + .byte 0 + .uleb128 0x1a + .ascii "lmb\000" + .byte 0xd + .byte 0x20 + .4byte 0x41c + .uleb128 0x1b + .byte 0x10 + .byte 0xe + .byte 0x5d + .4byte 0x46e + .uleb128 0xe + .4byte .LASF54 + .byte 0xe + .byte 0x5e + .4byte 0xaa + .byte 0 + .uleb128 0xe + .4byte .LASF51 + .byte 0xe + .byte 0x5f + .4byte 0xaa + .byte 0x8 + .byte 0 + .uleb128 0xd + .4byte .LASF65 + .byte 0x70 + .byte 0xe + .byte 0x1b + .4byte 0x56b + .uleb128 0xe + .4byte .LASF66 + .byte 0xe + .byte 0x1c + .4byte 0x37 + .byte 0 + .uleb128 0xe + .4byte .LASF67 + .byte 0xe + .byte 0x1d + .4byte 0xc0 + .byte 0x4 + .uleb128 0xe + .4byte .LASF68 + .byte 0xe + .byte 0x1e + .4byte 0x37 + .byte 0x8 + .uleb128 0xe + .4byte .LASF69 + .byte 0xe + .byte 0x1f + .4byte 0x37 + .byte 0xc + .uleb128 0xe + .4byte .LASF70 + .byte 0xe + .byte 0x20 + .4byte 0x37 + .byte 0x10 + .uleb128 0xe + .4byte .LASF71 + .byte 0xe + .byte 0x21 + .4byte 0x37 + .byte 0x14 + .uleb128 0xe + .4byte .LASF72 + .byte 0xe + .byte 0x22 + .4byte 0x37 + .byte 0x18 + .uleb128 0xe + .4byte .LASF73 + .byte 0xe + .byte 0x24 + .4byte 0x37 + .byte 0x1c + .uleb128 0xe + .4byte .LASF74 + .byte 0xe + .byte 0x25 + .4byte 0x37 + .byte 0x20 + .uleb128 0xe + .4byte .LASF75 + .byte 0xe + .byte 0x26 + .4byte 0x37 + .byte 0x24 + .uleb128 0xe + .4byte .LASF76 + .byte 0xe + .byte 0x31 + .4byte 0x37 + .byte 0x28 + .uleb128 0xe + .4byte .LASF77 + .byte 0xe + .byte 0x32 + .4byte 0x37 + .byte 0x2c + .uleb128 0xe + .4byte .LASF78 + .byte 0xe + .byte 0x33 + .4byte 0x273 + .byte 0x30 + .uleb128 0xe + .4byte .LASF79 + .byte 0xe + .byte 0x34 + .4byte 0x3e + .byte 0x36 + .uleb128 0xe + .4byte .LASF80 + .byte 0xe + .byte 0x35 + .4byte 0x37 + .byte 0x38 + .uleb128 0xe + .4byte .LASF81 + .byte 0xe + .byte 0x36 + .4byte 0x37 + .byte 0x3c + .uleb128 0xe + .4byte .LASF82 + .byte 0xe + .byte 0x57 + .4byte 0xfc + .byte 0x40 + .uleb128 0xe + .4byte .LASF83 + .byte 0xe + .byte 0x58 + .4byte 0xfc + .byte 0x44 + .uleb128 0xe + .4byte .LASF84 + .byte 0xe + .byte 0x5b + .4byte 0x7b + .byte 0x48 + .uleb128 0xe + .4byte .LASF85 + .byte 0xe + .byte 0x60 + .4byte 0x56b + .byte 0x50 + .byte 0 + .uleb128 0xa + .4byte 0x44d + .4byte 0x57b + .uleb128 0x11 + .4byte 0xcb + .byte 0x1 + .byte 0 + .uleb128 0x2 + .4byte .LASF86 + .byte 0xe + .byte 0x62 + .4byte 0x46e + .uleb128 0x4 + .4byte .LASF87 + .byte 0xf + .byte 0x13 + .4byte 0xfc + .uleb128 0x4 + .4byte .LASF88 + .byte 0xf + .byte 0x14 + .4byte 0xfc + .uleb128 0x4 + .4byte .LASF89 + .byte 0xf + .byte 0x15 + .4byte 0xfc + .uleb128 0x4 + .4byte .LASF90 + .byte 0xf + .byte 0x16 + .4byte 0xfc + .uleb128 0x4 + .4byte .LASF91 + .byte 0xf + .byte 0x17 + .4byte 0xfc + .uleb128 0x4 + .4byte .LASF92 + .byte 0xf + .byte 0x18 + .4byte 0xfc + .uleb128 0x4 + .4byte .LASF93 + .byte 0xf + .byte 0x19 + .4byte 0xfc + .uleb128 0x2 + .4byte .LASF94 + .byte 0x10 + .byte 0x11 + .4byte 0x11d + .uleb128 0xd + .4byte .LASF95 + .byte 0x28 + .byte 0x11 + .byte 0x39 + .4byte 0x663 + .uleb128 0xe + .4byte .LASF96 + .byte 0x11 + .byte 0x3a + .4byte 0x5d3 + .byte 0 + .uleb128 0xe + .4byte .LASF97 + .byte 0x11 + .byte 0x3b + .4byte 0x5d3 + .byte 0x4 + .uleb128 0xe + .4byte .LASF98 + .byte 0x11 + .byte 0x3c + .4byte 0x5d3 + .byte 0x8 + .uleb128 0xe + .4byte .LASF99 + .byte 0x11 + .byte 0x3d + .4byte 0x5d3 + .byte 0xc + .uleb128 0xe + .4byte .LASF100 + .byte 0x11 + .byte 0x3e + .4byte 0x5d3 + .byte 0x10 + .uleb128 0xe + .4byte .LASF101 + .byte 0x11 + .byte 0x3f + .4byte 0x5d3 + .byte 0x14 + .uleb128 0xe + .4byte .LASF102 + .byte 0x11 + .byte 0x40 + .4byte 0x5d3 + .byte 0x18 + .uleb128 0xe + .4byte .LASF103 + .byte 0x11 + .byte 0x43 + .4byte 0x5d3 + .byte 0x1c + .uleb128 0xe + .4byte .LASF104 + .byte 0x11 + .byte 0x46 + .4byte 0x5d3 + .byte 0x20 + .uleb128 0xe + .4byte .LASF105 + .byte 0x11 + .byte 0x49 + .4byte 0x5d3 + .byte 0x24 + .byte 0 + .uleb128 0xc + .4byte .LASF106 + .byte 0x12 + .2byte 0x136 + .4byte 0x66f + .uleb128 0x8 + .byte 0x4 + .4byte 0x5de + .uleb128 0x1c + .4byte .LASF107 + .byte 0x40 + .byte 0x13 + .2byte 0x135 + .4byte 0x71f + .uleb128 0x1d + .4byte .LASF108 + .byte 0x13 + .2byte 0x136 + .4byte 0x11d + .byte 0 + .uleb128 0x1d + .4byte .LASF109 + .byte 0x13 + .2byte 0x137 + .4byte 0x11d + .byte 0x4 + .uleb128 0x1d + .4byte .LASF110 + .byte 0x13 + .2byte 0x138 + .4byte 0x11d + .byte 0x8 + .uleb128 0x1d + .4byte .LASF111 + .byte 0x13 + .2byte 0x139 + .4byte 0x11d + .byte 0xc + .uleb128 0x1d + .4byte .LASF112 + .byte 0x13 + .2byte 0x13a + .4byte 0x11d + .byte 0x10 + .uleb128 0x1d + .4byte .LASF113 + .byte 0x13 + .2byte 0x13b + .4byte 0x11d + .byte 0x14 + .uleb128 0x1d + .4byte .LASF114 + .byte 0x13 + .2byte 0x13c + .4byte 0x11d + .byte 0x18 + .uleb128 0x1d + .4byte .LASF115 + .byte 0x13 + .2byte 0x13d + .4byte 0x107 + .byte 0x1c + .uleb128 0x1d + .4byte .LASF116 + .byte 0x13 + .2byte 0x13e + .4byte 0x107 + .byte 0x1d + .uleb128 0x1d + .4byte .LASF117 + .byte 0x13 + .2byte 0x13f + .4byte 0x107 + .byte 0x1e + .uleb128 0x1d + .4byte .LASF118 + .byte 0x13 + .2byte 0x140 + .4byte 0x107 + .byte 0x1f + .uleb128 0x1d + .4byte .LASF119 + .byte 0x13 + .2byte 0x141 + .4byte 0x71f + .byte 0x20 + .byte 0 + .uleb128 0xa + .4byte 0x107 + .4byte 0x72f + .uleb128 0x11 + .4byte 0xcb + .byte 0x1f + .byte 0 + .uleb128 0x1e + .4byte .LASF120 + .byte 0x13 + .2byte 0x142 + .4byte 0x675 + .uleb128 0x1c + .4byte .LASF121 + .byte 0x18 + .byte 0x13 + .2byte 0x144 + .4byte 0x7bd + .uleb128 0x1d + .4byte .LASF54 + .byte 0x13 + .2byte 0x145 + .4byte 0xfc + .byte 0 + .uleb128 0x1f + .ascii "end\000" + .byte 0x13 + .2byte 0x145 + .4byte 0xfc + .byte 0x4 + .uleb128 0x1d + .4byte .LASF122 + .byte 0x13 + .2byte 0x146 + .4byte 0xfc + .byte 0x8 + .uleb128 0x1d + .4byte .LASF123 + .byte 0x13 + .2byte 0x146 + .4byte 0xfc + .byte 0xc + .uleb128 0x1d + .4byte .LASF124 + .byte 0x13 + .2byte 0x147 + .4byte 0xfc + .byte 0x10 + .uleb128 0x1d + .4byte .LASF125 + .byte 0x13 + .2byte 0x148 + .4byte 0x107 + .byte 0x14 + .uleb128 0x1d + .4byte .LASF126 + .byte 0x13 + .2byte 0x148 + .4byte 0x107 + .byte 0x15 + .uleb128 0x1f + .ascii "os\000" + .byte 0x13 + .2byte 0x148 + .4byte 0x107 + .byte 0x16 + .uleb128 0x1d + .4byte .LASF127 + .byte 0x13 + .2byte 0x149 + .4byte 0x107 + .byte 0x17 + .byte 0 + .uleb128 0x1e + .4byte .LASF128 + .byte 0x13 + .2byte 0x14a + .4byte 0x73b + .uleb128 0x20 + .4byte .LASF129 + .2byte 0x1e4 + .byte 0x13 + .2byte 0x150 + .4byte 0x95c + .uleb128 0x1d + .4byte .LASF130 + .byte 0x13 + .2byte 0x156 + .4byte 0x95c + .byte 0 + .uleb128 0x1d + .4byte .LASF131 + .byte 0x13 + .2byte 0x157 + .4byte 0x72f + .byte 0x4 + .uleb128 0x1d + .4byte .LASF132 + .byte 0x13 + .2byte 0x158 + .4byte 0xfc + .byte 0x44 + .uleb128 0x1d + .4byte .LASF133 + .byte 0x13 + .2byte 0x15b + .4byte 0xd2 + .byte 0x48 + .uleb128 0x1d + .4byte .LASF134 + .byte 0x13 + .2byte 0x15d + .4byte 0x128 + .byte 0x4c + .uleb128 0x1d + .4byte .LASF135 + .byte 0x13 + .2byte 0x15e + .4byte 0xd2 + .byte 0x50 + .uleb128 0x1d + .4byte .LASF136 + .byte 0x13 + .2byte 0x15f + .4byte 0x50 + .byte 0x54 + .uleb128 0x1d + .4byte .LASF137 + .byte 0x13 + .2byte 0x161 + .4byte 0x128 + .byte 0x58 + .uleb128 0x1d + .4byte .LASF138 + .byte 0x13 + .2byte 0x162 + .4byte 0xd2 + .byte 0x5c + .uleb128 0x1d + .4byte .LASF139 + .byte 0x13 + .2byte 0x163 + .4byte 0x50 + .byte 0x60 + .uleb128 0x1d + .4byte .LASF140 + .byte 0x13 + .2byte 0x165 + .4byte 0x128 + .byte 0x64 + .uleb128 0x1d + .4byte .LASF141 + .byte 0x13 + .2byte 0x166 + .4byte 0xd2 + .byte 0x68 + .uleb128 0x1d + .4byte .LASF142 + .byte 0x13 + .2byte 0x167 + .4byte 0x50 + .byte 0x6c + .uleb128 0x1d + .4byte .LASF143 + .byte 0x13 + .2byte 0x169 + .4byte 0x128 + .byte 0x70 + .uleb128 0x1d + .4byte .LASF144 + .byte 0x13 + .2byte 0x16a + .4byte 0xd2 + .byte 0x74 + .uleb128 0x1d + .4byte .LASF145 + .byte 0x13 + .2byte 0x16b + .4byte 0x50 + .byte 0x78 + .uleb128 0x1f + .ascii "os\000" + .byte 0x13 + .2byte 0x16f + .4byte 0x7bd + .byte 0x7c + .uleb128 0x1f + .ascii "ep\000" + .byte 0x13 + .2byte 0x170 + .4byte 0xfc + .byte 0x94 + .uleb128 0x1d + .4byte .LASF146 + .byte 0x13 + .2byte 0x172 + .4byte 0xfc + .byte 0x98 + .uleb128 0x1d + .4byte .LASF147 + .byte 0x13 + .2byte 0x172 + .4byte 0xfc + .byte 0x9c + .uleb128 0x1d + .4byte .LASF148 + .byte 0x13 + .2byte 0x174 + .4byte 0xeb + .byte 0xa0 + .uleb128 0x1d + .4byte .LASF149 + .byte 0x13 + .2byte 0x175 + .4byte 0xfc + .byte 0xa4 + .uleb128 0x1d + .4byte .LASF150 + .byte 0x13 + .2byte 0x177 + .4byte 0xfc + .byte 0xa8 + .uleb128 0x1d + .4byte .LASF151 + .byte 0x13 + .2byte 0x178 + .4byte 0xfc + .byte 0xac + .uleb128 0x1d + .4byte .LASF152 + .byte 0x13 + .2byte 0x179 + .4byte 0xfc + .byte 0xb0 + .uleb128 0x1d + .4byte .LASF153 + .byte 0x13 + .2byte 0x17a + .4byte 0xfc + .byte 0xb4 + .uleb128 0x1f + .ascii "kbd\000" + .byte 0x13 + .2byte 0x17b + .4byte 0x962 + .byte 0xb8 + .uleb128 0x1d + .4byte .LASF154 + .byte 0x13 + .2byte 0x17e + .4byte 0x50 + .byte 0xbc + .uleb128 0x1d + .4byte .LASF155 + .byte 0x13 + .2byte 0x18b + .4byte 0x50 + .byte 0xc0 + .uleb128 0x1f + .ascii "lmb\000" + .byte 0x13 + .2byte 0x18e + .4byte 0x41c + .byte 0xc4 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x72f + .uleb128 0x8 + .byte 0x4 + .4byte 0x57b + .uleb128 0x1e + .4byte .LASF156 + .byte 0x13 + .2byte 0x194 + .4byte 0x7c9 + .uleb128 0xc + .4byte .LASF157 + .byte 0x13 + .2byte 0x196 + .4byte 0x968 + .uleb128 0x21 + .4byte .LASF346 + .byte 0x4 + .4byte 0x50 + .byte 0x18 + .byte 0xe + .4byte 0xbb3 + .uleb128 0x22 + .4byte .LASF158 + .byte 0 + .uleb128 0x22 + .4byte .LASF159 + .byte 0x1 + .uleb128 0x22 + .4byte .LASF160 + .byte 0x2 + .uleb128 0x22 + .4byte .LASF161 + .byte 0x3 + .uleb128 0x22 + .4byte .LASF162 + .byte 0x4 + .uleb128 0x22 + .4byte .LASF163 + .byte 0x5 + .uleb128 0x22 + .4byte .LASF164 + .byte 0x6 + .uleb128 0x22 + .4byte .LASF165 + .byte 0x7 + .uleb128 0x22 + .4byte .LASF166 + .byte 0x8 + .uleb128 0x22 + .4byte .LASF167 + .byte 0x9 + .uleb128 0x22 + .4byte .LASF168 + .byte 0xa + .uleb128 0x22 + .4byte .LASF169 + .byte 0xb + .uleb128 0x22 + .4byte .LASF170 + .byte 0xc + .uleb128 0x22 + .4byte .LASF171 + .byte 0xd + .uleb128 0x22 + .4byte .LASF172 + .byte 0xe + .uleb128 0x22 + .4byte .LASF173 + .byte 0xf + .uleb128 0x22 + .4byte .LASF174 + .byte 0x10 + .uleb128 0x22 + .4byte .LASF175 + .byte 0x11 + .uleb128 0x22 + .4byte .LASF176 + .byte 0x12 + .uleb128 0x22 + .4byte .LASF177 + .byte 0x13 + .uleb128 0x22 + .4byte .LASF178 + .byte 0x14 + .uleb128 0x22 + .4byte .LASF179 + .byte 0x15 + .uleb128 0x22 + .4byte .LASF180 + .byte 0x16 + .uleb128 0x22 + .4byte .LASF181 + .byte 0x17 + .uleb128 0x22 + .4byte .LASF182 + .byte 0x18 + .uleb128 0x22 + .4byte .LASF183 + .byte 0x19 + .uleb128 0x22 + .4byte .LASF184 + .byte 0x1a + .uleb128 0x22 + .4byte .LASF185 + .byte 0x1b + .uleb128 0x22 + .4byte .LASF186 + .byte 0x1c + .uleb128 0x22 + .4byte .LASF187 + .byte 0x1d + .uleb128 0x22 + .4byte .LASF188 + .byte 0x1e + .uleb128 0x22 + .4byte .LASF189 + .byte 0x1f + .uleb128 0x22 + .4byte .LASF190 + .byte 0x20 + .uleb128 0x22 + .4byte .LASF191 + .byte 0x21 + .uleb128 0x22 + .4byte .LASF192 + .byte 0x22 + .uleb128 0x22 + .4byte .LASF193 + .byte 0x23 + .uleb128 0x22 + .4byte .LASF194 + .byte 0x24 + .uleb128 0x22 + .4byte .LASF195 + .byte 0x25 + .uleb128 0x22 + .4byte .LASF196 + .byte 0x26 + .uleb128 0x22 + .4byte .LASF197 + .byte 0x27 + .uleb128 0x22 + .4byte .LASF198 + .byte 0x28 + .uleb128 0x22 + .4byte .LASF199 + .byte 0x29 + .uleb128 0x22 + .4byte .LASF200 + .byte 0x2a + .uleb128 0x22 + .4byte .LASF201 + .byte 0x2b + .uleb128 0x22 + .4byte .LASF202 + .byte 0x2c + .uleb128 0x22 + .4byte .LASF203 + .byte 0x2d + .uleb128 0x22 + .4byte .LASF204 + .byte 0x2e + .uleb128 0x22 + .4byte .LASF205 + .byte 0x2f + .uleb128 0x22 + .4byte .LASF206 + .byte 0x30 + .uleb128 0x22 + .4byte .LASF207 + .byte 0x31 + .uleb128 0x22 + .4byte .LASF208 + .byte 0x32 + .uleb128 0x22 + .4byte .LASF209 + .byte 0x33 + .uleb128 0x22 + .4byte .LASF210 + .byte 0x34 + .uleb128 0x22 + .4byte .LASF211 + .byte 0x35 + .uleb128 0x22 + .4byte .LASF212 + .byte 0x36 + .uleb128 0x22 + .4byte .LASF213 + .byte 0x37 + .uleb128 0x22 + .4byte .LASF214 + .byte 0x38 + .uleb128 0x22 + .4byte .LASF215 + .byte 0x39 + .uleb128 0x22 + .4byte .LASF216 + .byte 0x3a + .uleb128 0x22 + .4byte .LASF217 + .byte 0x3b + .uleb128 0x22 + .4byte .LASF218 + .byte 0x3c + .uleb128 0x22 + .4byte .LASF219 + .byte 0x3d + .uleb128 0x22 + .4byte .LASF220 + .byte 0x3e + .uleb128 0x22 + .4byte .LASF221 + .byte 0x3f + .uleb128 0x22 + .4byte .LASF222 + .byte 0x40 + .uleb128 0x22 + .4byte .LASF223 + .byte 0x41 + .uleb128 0x22 + .4byte .LASF224 + .byte 0x42 + .uleb128 0x22 + .4byte .LASF225 + .byte 0x43 + .uleb128 0x22 + .4byte .LASF226 + .byte 0x44 + .uleb128 0x22 + .4byte .LASF227 + .byte 0x45 + .uleb128 0x22 + .4byte .LASF228 + .byte 0x46 + .uleb128 0x22 + .4byte .LASF229 + .byte 0x47 + .uleb128 0x22 + .4byte .LASF230 + .byte 0x48 + .uleb128 0x22 + .4byte .LASF231 + .byte 0x49 + .uleb128 0x22 + .4byte .LASF232 + .byte 0x4a + .uleb128 0x22 + .4byte .LASF233 + .byte 0x4b + .uleb128 0x22 + .4byte .LASF234 + .byte 0x4c + .uleb128 0x22 + .4byte .LASF235 + .byte 0x4d + .uleb128 0x22 + .4byte .LASF236 + .byte 0x4e + .uleb128 0x22 + .4byte .LASF237 + .byte 0x4f + .uleb128 0x22 + .4byte .LASF238 + .byte 0x50 + .uleb128 0x22 + .4byte .LASF239 + .byte 0x51 + .uleb128 0x22 + .4byte .LASF240 + .byte 0x52 + .uleb128 0x22 + .4byte .LASF241 + .byte 0x53 + .uleb128 0x22 + .4byte .LASF242 + .byte 0x54 + .uleb128 0x22 + .4byte .LASF243 + .byte 0x55 + .uleb128 0x22 + .4byte .LASF244 + .byte 0x56 + .uleb128 0x22 + .4byte .LASF245 + .byte 0x57 + .uleb128 0x22 + .4byte .LASF246 + .byte 0x58 + .uleb128 0x22 + .4byte .LASF247 + .byte 0x59 + .uleb128 0x23 + .4byte .LASF248 + .sleb128 -1 + .byte 0 + .uleb128 0x24 + .byte 0x4 + .4byte 0x7b + .byte 0x23 + .byte 0xf6 + .4byte 0xbc6 + .uleb128 0x22 + .4byte .LASF249 + .byte 0x5 + .byte 0 + .uleb128 0xd + .4byte .LASF250 + .byte 0x20 + .byte 0x14 + .byte 0xc + .4byte 0xc27 + .uleb128 0xe + .4byte .LASF251 + .byte 0x14 + .byte 0x22 + .4byte 0x37 + .byte 0 + .uleb128 0xf + .ascii "tbu\000" + .byte 0x14 + .byte 0x23 + .4byte 0x7b + .byte 0x4 + .uleb128 0xf + .ascii "tbl\000" + .byte 0x14 + .byte 0x24 + .4byte 0x7b + .byte 0x8 + .uleb128 0xe + .4byte .LASF252 + .byte 0x14 + .byte 0x25 + .4byte 0x37 + .byte 0xc + .uleb128 0xe + .4byte .LASF253 + .byte 0x14 + .byte 0x26 + .4byte 0x89 + .byte 0x10 + .uleb128 0xe + .4byte .LASF254 + .byte 0x14 + .byte 0x28 + .4byte 0x37 + .byte 0x18 + .uleb128 0xe + .4byte .LASF255 + .byte 0x14 + .byte 0x29 + .4byte 0x37 + .byte 0x1c + .byte 0 + .uleb128 0xd + .4byte .LASF256 + .byte 0x10 + .byte 0x15 + .byte 0x22 + .4byte 0xc63 + .uleb128 0xe + .4byte .LASF257 + .byte 0x15 + .byte 0x23 + .4byte 0x9f + .byte 0 + .uleb128 0xf + .ascii "id\000" + .byte 0x15 + .byte 0x24 + .4byte 0x9f + .byte 0x4 + .uleb128 0xe + .4byte .LASF258 + .byte 0x15 + .byte 0x25 + .4byte 0x9f + .byte 0x8 + .uleb128 0xe + .4byte .LASF259 + .byte 0x15 + .byte 0x26 + .4byte 0xfc + .byte 0xc + .byte 0 + .uleb128 0xd + .4byte .LASF260 + .byte 0xf0 + .byte 0x15 + .byte 0x29 + .4byte 0xe4e + .uleb128 0xf + .ascii "bd\000" + .byte 0x15 + .byte 0x2a + .4byte 0x962 + .byte 0 + .uleb128 0xe + .4byte .LASF42 + .byte 0x15 + .byte 0x2b + .4byte 0x37 + .byte 0x4 + .uleb128 0xe + .4byte .LASF258 + .byte 0x15 + .byte 0x2c + .4byte 0x7b + .byte 0x8 + .uleb128 0xe + .4byte .LASF261 + .byte 0x15 + .byte 0x2d + .4byte 0x37 + .byte 0xc + .uleb128 0xe + .4byte .LASF262 + .byte 0x15 + .byte 0x2e + .4byte 0x37 + .byte 0x10 + .uleb128 0xe + .4byte .LASF263 + .byte 0x15 + .byte 0x30 + .4byte 0x37 + .byte 0x14 + .uleb128 0xe + .4byte .LASF264 + .byte 0x15 + .byte 0x31 + .4byte 0x37 + .byte 0x18 + .uleb128 0xe + .4byte .LASF265 + .byte 0x15 + .byte 0x3d + .4byte 0x37 + .byte 0x1c + .uleb128 0xe + .4byte .LASF266 + .byte 0x15 + .byte 0x41 + .4byte 0x37 + .byte 0x20 + .uleb128 0xe + .4byte .LASF267 + .byte 0x15 + .byte 0x42 + .4byte 0x37 + .byte 0x24 + .uleb128 0xe + .4byte .LASF268 + .byte 0x15 + .byte 0x44 + .4byte 0x37 + .byte 0x28 + .uleb128 0xe + .4byte .LASF269 + .byte 0x15 + .byte 0x45 + .4byte 0x37 + .byte 0x2c + .uleb128 0xe + .4byte .LASF270 + .byte 0x15 + .byte 0x46 + .4byte 0xc0 + .byte 0x30 + .uleb128 0xe + .4byte .LASF271 + .byte 0x15 + .byte 0x47 + .4byte 0x37 + .byte 0x34 + .uleb128 0xe + .4byte .LASF272 + .byte 0x15 + .byte 0x48 + .4byte 0x37 + .byte 0x38 + .uleb128 0xe + .4byte .LASF273 + .byte 0x15 + .byte 0x49 + .4byte 0x37 + .byte 0x3c + .uleb128 0xe + .4byte .LASF274 + .byte 0x15 + .byte 0x4a + .4byte 0x37 + .byte 0x40 + .uleb128 0xe + .4byte .LASF275 + .byte 0x15 + .byte 0x4b + .4byte 0xe4e + .byte 0x44 + .uleb128 0xe + .4byte .LASF276 + .byte 0x15 + .byte 0x4e + .4byte 0x250 + .byte 0x48 + .uleb128 0xe + .4byte .LASF277 + .byte 0x15 + .byte 0x4f + .4byte 0x250 + .byte 0x4c + .uleb128 0xe + .4byte .LASF278 + .byte 0x15 + .byte 0x50 + .4byte 0x283 + .byte 0x50 + .uleb128 0xe + .4byte .LASF279 + .byte 0x15 + .byte 0x57 + .4byte 0x256 + .byte 0x58 + .uleb128 0xe + .4byte .LASF280 + .byte 0x15 + .byte 0x59 + .4byte 0x256 + .byte 0x5c + .uleb128 0xe + .4byte .LASF281 + .byte 0x15 + .byte 0x5c + .4byte 0x256 + .byte 0x60 + .uleb128 0xe + .4byte .LASF282 + .byte 0x15 + .byte 0x5e + .4byte 0x128 + .byte 0x64 + .uleb128 0xe + .4byte .LASF283 + .byte 0x15 + .byte 0x5f + .4byte 0x37 + .byte 0x68 + .uleb128 0xe + .4byte .LASF284 + .byte 0x15 + .byte 0x61 + .4byte 0xec6 + .byte 0x6c + .uleb128 0xf + .ascii "jt\000" + .byte 0x15 + .byte 0x63 + .4byte 0xed1 + .byte 0x70 + .uleb128 0xe + .4byte .LASF285 + .byte 0x15 + .byte 0x64 + .4byte 0xed7 + .byte 0x74 + .uleb128 0xe + .4byte .LASF286 + .byte 0x15 + .byte 0x6e + .4byte 0x7b + .byte 0x94 + .uleb128 0xe + .4byte .LASF287 + .byte 0x15 + .byte 0x6f + .4byte 0x7b + .byte 0x98 + .uleb128 0xe + .4byte .LASF288 + .byte 0x15 + .byte 0x71 + .4byte 0x37 + .byte 0x9c + .uleb128 0xe + .4byte .LASF289 + .byte 0x15 + .byte 0x72 + .4byte 0x37 + .byte 0xa0 + .uleb128 0xe + .4byte .LASF290 + .byte 0x15 + .byte 0x73 + .4byte 0x37 + .byte 0xa4 + .uleb128 0xe + .4byte .LASF291 + .byte 0x15 + .byte 0x7c + .4byte 0x250 + .byte 0xa8 + .uleb128 0xe + .4byte .LASF127 + .byte 0x15 + .byte 0x7d + .4byte 0xbc6 + .byte 0xb0 + .uleb128 0xe + .4byte .LASF292 + .byte 0x15 + .byte 0x8a + .4byte 0xb5 + .byte 0xd0 + .uleb128 0xe + .4byte .LASF293 + .byte 0x15 + .byte 0x8f + .4byte 0xc27 + .byte 0xd4 + .uleb128 0xe + .4byte .LASF294 + .byte 0x15 + .byte 0x90 + .4byte 0xfc + .byte 0xe4 + .uleb128 0xe + .4byte .LASF295 + .byte 0x15 + .byte 0x91 + .4byte 0x50 + .byte 0xe8 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0xc63 + .uleb128 0xd + .4byte .LASF296 + .byte 0x20 + .byte 0x16 + .byte 0x2c + .4byte 0xec1 + .uleb128 0xe + .4byte .LASF28 + .byte 0x16 + .byte 0x2d + .4byte 0xd2 + .byte 0 + .uleb128 0xe + .4byte .LASF126 + .byte 0x16 + .byte 0x2e + .4byte 0xd2 + .byte 0x4 + .uleb128 0xe + .4byte .LASF297 + .byte 0x16 + .byte 0x2f + .4byte 0x12fe + .byte 0x8 + .uleb128 0xe + .4byte .LASF298 + .byte 0x16 + .byte 0x30 + .4byte 0xd2 + .byte 0xc + .uleb128 0xe + .4byte .LASF299 + .byte 0x16 + .byte 0x32 + .4byte 0x1346 + .byte 0x10 + .uleb128 0xe + .4byte .LASF34 + .byte 0x16 + .byte 0x33 + .4byte 0xec6 + .byte 0x14 + .uleb128 0xe + .4byte .LASF300 + .byte 0x16 + .byte 0x34 + .4byte 0xec6 + .byte 0x18 + .uleb128 0xe + .4byte .LASF301 + .byte 0x16 + .byte 0x35 + .4byte 0xec6 + .byte 0x1c + .byte 0 + .uleb128 0x7 + .4byte 0xe54 + .uleb128 0x8 + .byte 0x4 + .4byte 0xe54 + .uleb128 0x18 + .4byte .LASF303 + .uleb128 0x8 + .byte 0x4 + .4byte 0xecc + .uleb128 0xa + .4byte 0xd8 + .4byte 0xee7 + .uleb128 0x11 + .4byte 0xcb + .byte 0x1f + .byte 0 + .uleb128 0x2 + .4byte .LASF304 + .byte 0x15 + .byte 0x97 + .4byte 0xc63 + .uleb128 0x25 + .4byte 0xee7 + .uleb128 0x4 + .4byte .LASF305 + .byte 0x2 + .byte 0xad + .4byte 0xfc + .uleb128 0xa + .4byte 0x90 + .4byte 0xf0d + .uleb128 0xb + .byte 0 + .uleb128 0x4 + .4byte .LASF306 + .byte 0x2 + .byte 0xaf + .4byte 0xf02 + .uleb128 0x4 + .4byte .LASF307 + .byte 0x2 + .byte 0xb0 + .4byte 0xf02 + .uleb128 0x4 + .4byte .LASF308 + .byte 0x2 + .byte 0xfe + .4byte 0xfc + .uleb128 0x4 + .4byte .LASF309 + .byte 0x2 + .byte 0xff + .4byte 0xfc + .uleb128 0xc + .4byte .LASF310 + .byte 0x2 + .2byte 0x100 + .4byte 0xfc + .uleb128 0xd + .4byte .LASF311 + .byte 0x4 + .byte 0x17 + .byte 0x2e + .4byte 0xf5e + .uleb128 0xe + .4byte .LASF312 + .byte 0x17 + .byte 0x2f + .4byte 0x11d + .byte 0 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x25 + .uleb128 0xd + .4byte .LASF313 + .byte 0x40 + .byte 0x17 + .byte 0xa6 + .4byte 0x1001 + .uleb128 0xe + .4byte .LASF28 + .byte 0x17 + .byte 0xa8 + .4byte 0x1001 + .byte 0 + .uleb128 0xe + .4byte .LASF314 + .byte 0x17 + .byte 0xa9 + .4byte 0x273 + .byte 0x10 + .uleb128 0xe + .4byte .LASF315 + .byte 0x17 + .byte 0xaa + .4byte 0xb5 + .byte 0x18 + .uleb128 0xe + .4byte .LASF155 + .byte 0x17 + .byte 0xab + .4byte 0x50 + .byte 0x1c + .uleb128 0xe + .4byte .LASF316 + .byte 0x17 + .byte 0xad + .4byte 0x102b + .byte 0x20 + .uleb128 0xe + .4byte .LASF317 + .byte 0x17 + .byte 0xae + .4byte 0x104a + .byte 0x24 + .uleb128 0xe + .4byte .LASF318 + .byte 0x17 + .byte 0xaf + .4byte 0x105f + .byte 0x28 + .uleb128 0xe + .4byte .LASF319 + .byte 0x17 + .byte 0xb0 + .4byte 0x1070 + .byte 0x2c + .uleb128 0xe + .4byte .LASF320 + .byte 0x17 + .byte 0xb4 + .4byte 0x105f + .byte 0x30 + .uleb128 0xe + .4byte .LASF47 + .byte 0x17 + .byte 0xb5 + .4byte 0x1025 + .byte 0x34 + .uleb128 0xe + .4byte .LASF321 + .byte 0x17 + .byte 0xb6 + .4byte 0x50 + .byte 0x38 + .uleb128 0xe + .4byte .LASF35 + .byte 0x17 + .byte 0xb7 + .4byte 0x128 + .byte 0x3c + .byte 0 + .uleb128 0xa + .4byte 0xd8 + .4byte 0x1011 + .uleb128 0x11 + .4byte 0xcb + .byte 0xf + .byte 0 + .uleb128 0x12 + .4byte 0x50 + .4byte 0x1025 + .uleb128 0x13 + .4byte 0x1025 + .uleb128 0x13 + .4byte 0x962 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0xf64 + .uleb128 0x8 + .byte 0x4 + .4byte 0x1011 + .uleb128 0x12 + .4byte 0x50 + .4byte 0x104a + .uleb128 0x13 + .4byte 0x1025 + .uleb128 0x13 + .4byte 0x128 + .uleb128 0x13 + .4byte 0x50 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x1031 + .uleb128 0x12 + .4byte 0x50 + .4byte 0x105f + .uleb128 0x13 + .4byte 0x1025 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x1050 + .uleb128 0x26 + .4byte 0x1070 + .uleb128 0x13 + .4byte 0x1025 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x1065 + .uleb128 0x4 + .4byte .LASF322 + .byte 0x17 + .byte 0xbd + .4byte 0x1025 + .uleb128 0xa + .4byte 0x90 + .4byte 0x1091 + .uleb128 0x11 + .4byte 0xcb + .byte 0x5 + .byte 0 + .uleb128 0xc + .4byte .LASF323 + .byte 0x17 + .2byte 0x1fd + .4byte 0xf45 + .uleb128 0xc + .4byte .LASF324 + .byte 0x17 + .2byte 0x1fe + .4byte 0xf45 + .uleb128 0xc + .4byte .LASF325 + .byte 0x17 + .2byte 0x200 + .4byte 0xf45 + .uleb128 0xc + .4byte .LASF326 + .byte 0x17 + .2byte 0x205 + .4byte 0xed7 + .uleb128 0xc + .4byte .LASF327 + .byte 0x17 + .2byte 0x206 + .4byte 0xed7 + .uleb128 0xa + .4byte 0xd8 + .4byte 0x10dd + .uleb128 0x11 + .4byte 0xcb + .byte 0x3f + .byte 0 + .uleb128 0xc + .4byte .LASF328 + .byte 0x17 + .2byte 0x207 + .4byte 0x10cd + .uleb128 0xc + .4byte .LASF329 + .byte 0x17 + .2byte 0x209 + .4byte 0x1081 + .uleb128 0xc + .4byte .LASF330 + .byte 0x17 + .2byte 0x20a + .4byte 0x1081 + .uleb128 0xc + .4byte .LASF331 + .byte 0x17 + .2byte 0x20b + .4byte 0xf45 + .uleb128 0xc + .4byte .LASF332 + .byte 0x17 + .2byte 0x20c + .4byte 0xf45 + .uleb128 0xc + .4byte .LASF333 + .byte 0x17 + .2byte 0x20d + .4byte 0xf5e + .uleb128 0xa + .4byte 0xf5e + .4byte 0x1135 + .uleb128 0x11 + .4byte 0xcb + .byte 0x3 + .byte 0 + .uleb128 0xc + .4byte .LASF334 + .byte 0x17 + .2byte 0x20e + .4byte 0x1125 + .uleb128 0xc + .4byte .LASF335 + .byte 0x17 + .2byte 0x20f + .4byte 0xf5e + .uleb128 0xc + .4byte .LASF336 + .byte 0x17 + .2byte 0x210 + .4byte 0x50 + .uleb128 0xa + .4byte 0x9a + .4byte 0x1169 + .uleb128 0x11 + .4byte 0xcb + .byte 0x5 + .byte 0 + .uleb128 0x7 + .4byte 0x1159 + .uleb128 0xc + .4byte .LASF337 + .byte 0x17 + .2byte 0x211 + .4byte 0x1169 + .uleb128 0xc + .4byte .LASF338 + .byte 0x17 + .2byte 0x212 + .4byte 0x1169 + .uleb128 0xc + .4byte .LASF339 + .byte 0x17 + .2byte 0x216 + .4byte 0xf1 + .uleb128 0xc + .4byte .LASF340 + .byte 0x17 + .2byte 0x217 + .4byte 0xf1 + .uleb128 0xc + .4byte .LASF341 + .byte 0x17 + .2byte 0x219 + .4byte 0x50 + .uleb128 0xa + .4byte 0xd8 + .4byte 0x11bb + .uleb128 0x17 + .4byte 0xcb + .2byte 0x3ff + .byte 0 + .uleb128 0xc + .4byte .LASF342 + .byte 0x17 + .2byte 0x220 + .4byte 0x11aa + .uleb128 0xc + .4byte .LASF343 + .byte 0x17 + .2byte 0x222 + .4byte 0x9f + .uleb128 0xc + .4byte .LASF344 + .byte 0x17 + .2byte 0x224 + .4byte 0x9f + .uleb128 0xc + .4byte .LASF345 + .byte 0x17 + .2byte 0x230 + .4byte 0xf45 + .uleb128 0x27 + .4byte .LASF347 + .byte 0x4 + .4byte 0x7b + .byte 0x17 + .2byte 0x286 + .4byte 0x1215 + .uleb128 0x22 + .4byte .LASF348 + .byte 0 + .uleb128 0x22 + .4byte .LASF349 + .byte 0x1 + .uleb128 0x22 + .4byte .LASF350 + .byte 0x2 + .uleb128 0x22 + .4byte .LASF351 + .byte 0x3 + .byte 0 + .uleb128 0xc + .4byte .LASF352 + .byte 0x17 + .2byte 0x28c + .4byte 0x11eb + .uleb128 0xd + .4byte .LASF27 + .byte 0x44 + .byte 0x8 + .byte 0xee + .4byte 0x12f9 + .uleb128 0xe + .4byte .LASF28 + .byte 0x8 + .byte 0xef + .4byte 0xeb + .byte 0 + .uleb128 0xf + .ascii "id\000" + .byte 0x8 + .byte 0xf0 + .4byte 0x980 + .byte 0x4 + .uleb128 0xe + .4byte .LASF353 + .byte 0x8 + .byte 0xf1 + .4byte 0x1450 + .byte 0x8 + .uleb128 0xe + .4byte .LASF354 + .byte 0x8 + .byte 0xf2 + .4byte 0x1465 + .byte 0xc + .uleb128 0xe + .4byte .LASF355 + .byte 0x8 + .byte 0xf3 + .4byte 0x1465 + .byte 0x10 + .uleb128 0xe + .4byte .LASF356 + .byte 0x8 + .byte 0xf4 + .4byte 0x1465 + .byte 0x14 + .uleb128 0xe + .4byte .LASF357 + .byte 0x8 + .byte 0xf5 + .4byte 0x1465 + .byte 0x18 + .uleb128 0xe + .4byte .LASF358 + .byte 0x8 + .byte 0xf6 + .4byte 0x1465 + .byte 0x1c + .uleb128 0xe + .4byte .LASF359 + .byte 0x8 + .byte 0xf7 + .4byte 0x1465 + .byte 0x20 + .uleb128 0xe + .4byte .LASF360 + .byte 0x8 + .byte 0xf8 + .4byte 0x1465 + .byte 0x24 + .uleb128 0xe + .4byte .LASF361 + .byte 0x8 + .byte 0xf9 + .4byte 0x1465 + .byte 0x28 + .uleb128 0xe + .4byte .LASF362 + .byte 0x8 + .byte 0xfa + .4byte 0x50 + .byte 0x2c + .uleb128 0xe + .4byte .LASF363 + .byte 0x8 + .byte 0xfb + .4byte 0x50 + .byte 0x30 + .uleb128 0xe + .4byte .LASF364 + .byte 0x8 + .byte 0xfc + .4byte 0x50 + .byte 0x34 + .uleb128 0xe + .4byte .LASF365 + .byte 0x8 + .byte 0xfd + .4byte 0x50 + .byte 0x38 + .uleb128 0xf + .ascii "ops\000" + .byte 0x8 + .byte 0xfe + .4byte 0x256 + .byte 0x3c + .uleb128 0xe + .4byte .LASF42 + .byte 0x8 + .byte 0xff + .4byte 0x112 + .byte 0x40 + .byte 0 + .uleb128 0x7 + .4byte 0x1221 + .uleb128 0x2 + .4byte .LASF297 + .byte 0x16 + .byte 0xf + .4byte 0x9f + .uleb128 0xd + .4byte .LASF366 + .byte 0x10 + .byte 0x16 + .byte 0x19 + .4byte 0x1346 + .uleb128 0xe + .4byte .LASF28 + .byte 0x16 + .byte 0x1a + .4byte 0xeb + .byte 0 + .uleb128 0xe + .4byte .LASF367 + .byte 0x16 + .byte 0x1b + .4byte 0x50 + .byte 0x4 + .uleb128 0xe + .4byte .LASF368 + .byte 0x16 + .byte 0x1c + .4byte 0x128 + .byte 0x8 + .uleb128 0xe + .4byte .LASF47 + .byte 0x16 + .byte 0x1d + .4byte 0x1346 + .byte 0xc + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x1309 + .uleb128 0x28 + .ascii "gd\000" + .byte 0x16 + .byte 0x57 + .4byte 0x1356 + .uleb128 0x8 + .byte 0x4 + .4byte 0xef2 + .uleb128 0x29 + .4byte .LASF428 + .byte 0x4 + .byte 0x19 + .byte 0x33 + .4byte 0x137e + .uleb128 0x2a + .ascii "np\000" + .byte 0x19 + .byte 0x34 + .4byte 0x137e + .uleb128 0x2b + .4byte .LASF369 + .byte 0x19 + .byte 0x35 + .4byte 0xe4 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0xec1 + .uleb128 0x2 + .4byte .LASF370 + .byte 0x19 + .byte 0x36 + .4byte 0x135c + .uleb128 0xc + .4byte .LASF371 + .byte 0x1a + .2byte 0x3ba + .4byte 0xfc + .uleb128 0xc + .4byte .LASF372 + .byte 0x1a + .2byte 0x3bb + .4byte 0xfc + .uleb128 0xc + .4byte .LASF373 + .byte 0x1a + .2byte 0x3bc + .4byte 0xfc + .uleb128 0xd + .4byte .LASF374 + .byte 0x4 + .byte 0x1b + .byte 0xd + .4byte 0x13cc + .uleb128 0xf + .ascii "pid\000" + .byte 0x1b + .byte 0xe + .4byte 0x50 + .byte 0 + .byte 0 + .uleb128 0x4 + .4byte .LASF375 + .byte 0x1b + .byte 0x11 + .4byte 0x13d7 + .uleb128 0x8 + .byte 0x4 + .4byte 0x13b3 + .uleb128 0x8 + .byte 0x4 + .4byte 0x12f9 + .uleb128 0xd + .4byte .LASF36 + .byte 0x18 + .byte 0x1c + .byte 0x23 + .4byte 0x1420 + .uleb128 0xe + .4byte .LASF35 + .byte 0x1c + .byte 0x24 + .4byte 0x128 + .byte 0 + .uleb128 0xe + .4byte .LASF376 + .byte 0x1c + .byte 0x25 + .4byte 0x154f + .byte 0x4 + .uleb128 0xe + .4byte .LASF377 + .byte 0x1c + .byte 0x26 + .4byte 0x283 + .byte 0x8 + .uleb128 0xe + .4byte .LASF41 + .byte 0x1c + .byte 0x27 + .4byte 0x283 + .byte 0x10 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x13e3 + .uleb128 0xd + .4byte .LASF378 + .byte 0x8 + .byte 0x8 + .byte 0xb5 + .4byte 0x144b + .uleb128 0xe + .4byte .LASF379 + .byte 0x8 + .byte 0xb6 + .4byte 0xd2 + .byte 0 + .uleb128 0xe + .4byte .LASF380 + .byte 0x8 + .byte 0xb7 + .4byte 0xfc + .byte 0x4 + .byte 0 + .uleb128 0x7 + .4byte 0x1426 + .uleb128 0x8 + .byte 0x4 + .4byte 0x144b + .uleb128 0x12 + .4byte 0x50 + .4byte 0x1465 + .uleb128 0x13 + .4byte 0x250 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x1456 + .uleb128 0xd + .4byte .LASF381 + .byte 0x48 + .byte 0x1c + .byte 0x54 + .4byte 0x154f + .uleb128 0xe + .4byte .LASF28 + .byte 0x1c + .byte 0x55 + .4byte 0xd2 + .byte 0 + .uleb128 0xf + .ascii "id\000" + .byte 0x1c + .byte 0x56 + .4byte 0x980 + .byte 0x4 + .uleb128 0xe + .4byte .LASF382 + .byte 0x1c + .byte 0x57 + .4byte 0x1465 + .byte 0x8 + .uleb128 0xe + .4byte .LASF383 + .byte 0x1c + .byte 0x58 + .4byte 0x1465 + .byte 0xc + .uleb128 0xe + .4byte .LASF384 + .byte 0x1c + .byte 0x59 + .4byte 0x1465 + .byte 0x10 + .uleb128 0xe + .4byte .LASF385 + .byte 0x1c + .byte 0x5a + .4byte 0x1465 + .byte 0x14 + .uleb128 0xe + .4byte .LASF386 + .byte 0x1c + .byte 0x5b + .4byte 0x1465 + .byte 0x18 + .uleb128 0xe + .4byte .LASF359 + .byte 0x1c + .byte 0x5c + .4byte 0x1465 + .byte 0x1c + .uleb128 0xe + .4byte .LASF360 + .byte 0x1c + .byte 0x5d + .4byte 0x1465 + .byte 0x20 + .uleb128 0xe + .4byte .LASF316 + .byte 0x1c + .byte 0x5e + .4byte 0x1564 + .byte 0x24 + .uleb128 0xe + .4byte .LASF387 + .byte 0x1c + .byte 0x5f + .4byte 0x1564 + .byte 0x28 + .uleb128 0xe + .4byte .LASF362 + .byte 0x1c + .byte 0x60 + .4byte 0x50 + .byte 0x2c + .uleb128 0xe + .4byte .LASF388 + .byte 0x1c + .byte 0x61 + .4byte 0x50 + .byte 0x30 + .uleb128 0xe + .4byte .LASF389 + .byte 0x1c + .byte 0x62 + .4byte 0x50 + .byte 0x34 + .uleb128 0xe + .4byte .LASF364 + .byte 0x1c + .byte 0x63 + .4byte 0x50 + .byte 0x38 + .uleb128 0xe + .4byte .LASF365 + .byte 0x1c + .byte 0x64 + .4byte 0x50 + .byte 0x3c + .uleb128 0xf + .ascii "ops\000" + .byte 0x1c + .byte 0x65 + .4byte 0x256 + .byte 0x40 + .uleb128 0xe + .4byte .LASF42 + .byte 0x1c + .byte 0x66 + .4byte 0x112 + .byte 0x44 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x146b + .uleb128 0x12 + .4byte 0x50 + .4byte 0x1564 + .uleb128 0x13 + .4byte 0x1420 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x1555 + .uleb128 0x4 + .4byte .LASF390 + .byte 0x1d + .byte 0x49 + .4byte 0x7b + .uleb128 0x21 + .4byte .LASF391 + .byte 0x4 + .4byte 0x7b + .byte 0x1e + .byte 0x14 + .4byte 0x15b0 + .uleb128 0x22 + .4byte .LASF392 + .byte 0x1 + .uleb128 0x22 + .4byte .LASF393 + .byte 0x2 + .uleb128 0x22 + .4byte .LASF394 + .byte 0x4 + .uleb128 0x22 + .4byte .LASF395 + .byte 0x8 + .uleb128 0x22 + .4byte .LASF396 + .byte 0x10 + .uleb128 0x22 + .4byte .LASF397 + .byte 0x20 + .uleb128 0x22 + .4byte .LASF398 + .byte 0x40 + .byte 0 + .uleb128 0xd + .4byte .LASF399 + .byte 0x10 + .byte 0x1e + .byte 0x57 + .4byte 0x15ed + .uleb128 0xe + .4byte .LASF400 + .byte 0x1e + .byte 0x61 + .4byte 0x1610 + .byte 0 + .uleb128 0xe + .4byte .LASF401 + .byte 0x1e + .byte 0x6b + .4byte 0x1634 + .byte 0x4 + .uleb128 0xe + .4byte .LASF402 + .byte 0x1e + .byte 0x75 + .4byte 0x1653 + .byte 0x8 + .uleb128 0xe + .4byte .LASF403 + .byte 0x1e + .byte 0x82 + .4byte 0x1681 + .byte 0xc + .byte 0 + .uleb128 0x7 + .4byte 0x15b0 + .uleb128 0x12 + .4byte 0x50 + .4byte 0x1610 + .uleb128 0x13 + .4byte 0x250 + .uleb128 0x13 + .4byte 0x50 + .uleb128 0x13 + .4byte 0x128 + .uleb128 0x13 + .4byte 0x50 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x15f2 + .uleb128 0x12 + .4byte 0x50 + .4byte 0x1634 + .uleb128 0x13 + .4byte 0x250 + .uleb128 0x13 + .4byte 0x50 + .uleb128 0x13 + .4byte 0x256 + .uleb128 0x13 + .4byte 0x50 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x1616 + .uleb128 0x12 + .4byte 0x50 + .4byte 0x1653 + .uleb128 0x13 + .4byte 0x250 + .uleb128 0x13 + .4byte 0x37 + .uleb128 0x13 + .4byte 0x128 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x163a + .uleb128 0x12 + .4byte 0x50 + .4byte 0x1681 + .uleb128 0x13 + .4byte 0x250 + .uleb128 0x13 + .4byte 0x50 + .uleb128 0x13 + .4byte 0x128 + .uleb128 0x13 + .4byte 0x50 + .uleb128 0x13 + .4byte 0x128 + .uleb128 0x13 + .4byte 0x50 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x1659 + .uleb128 0xd + .4byte .LASF404 + .byte 0x8 + .byte 0x1f + .byte 0x36 + .4byte 0x16ac + .uleb128 0xe + .4byte .LASF60 + .byte 0x1f + .byte 0x37 + .4byte 0x128 + .byte 0 + .uleb128 0xe + .4byte .LASF405 + .byte 0x1f + .byte 0x38 + .4byte 0x37 + .byte 0x4 + .byte 0 + .uleb128 0x2c + .4byte .LASF406 + .byte 0x1 + .byte 0xac + .4byte 0x15ed + .uleb128 0x5 + .byte 0x3 + .4byte rockchip_secure_otp_ops + .uleb128 0xa + .4byte 0x144b + .4byte 0x16cd + .uleb128 0x11 + .4byte 0xcb + .byte 0x1 + .byte 0 + .uleb128 0x7 + .4byte 0x16bd + .uleb128 0x2c + .4byte .LASF407 + .byte 0x1 + .byte 0xbd + .4byte 0x16cd + .uleb128 0x5 + .byte 0x3 + .4byte rockchip_otp_ids + .uleb128 0x2d + .4byte .LASF408 + .byte 0x1 + .byte 0xc4 + .4byte 0x1221 + .uleb128 0x5 + .byte 0x3 + .4byte _u_boot_list_2_driver_2_rockchip_secure_otp_v2 + .uleb128 0x2e + .4byte .LASF409 + .byte 0x1 + .byte 0xb2 + .4byte 0x50 + .4byte .LFB272 + .4byte .LFE272-.LFB272 + .uleb128 0x1 + .byte 0x9c + .4byte 0x1772 + .uleb128 0x2f + .ascii "dev\000" + .byte 0x1 + .byte 0xb2 + .4byte 0x250 + .4byte .LLST16 + .uleb128 0x30 + .ascii "otp\000" + .byte 0x1 + .byte 0xb4 + .4byte 0x1772 + .4byte .LLST17 + .uleb128 0x31 + .4byte .LVL28 + .4byte 0x1c75 + .4byte 0x173f + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x2 + .byte 0x75 + .sleb128 0 + .byte 0 + .uleb128 0x31 + .4byte .LVL31 + .4byte 0x1c81 + .4byte 0x1753 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x2 + .byte 0x75 + .sleb128 0 + .byte 0 + .uleb128 0x33 + .4byte .LVL32 + .4byte 0x1c8c + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x2 + .byte 0x75 + .sleb128 0 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x51 + .uleb128 0x5 + .byte 0x3 + .4byte .LC1 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x52 + .uleb128 0x1 + .byte 0x30 + .byte 0 + .byte 0 + .uleb128 0x8 + .byte 0x4 + .4byte 0x1687 + .uleb128 0x2e + .4byte .LASF410 + .byte 0x1 + .byte 0x9c + .4byte 0x50 + .4byte .LFB271 + .4byte .LFE271-.LFB271 + .uleb128 0x1 + .byte 0x9c + .4byte 0x17c7 + .uleb128 0x2f + .ascii "dev\000" + .byte 0x1 + .byte 0x9c + .4byte 0x250 + .4byte .LLST0 + .uleb128 0x34 + .4byte .LASF411 + .byte 0x1 + .byte 0x9c + .4byte 0x37 + .uleb128 0x1 + .byte 0x51 + .uleb128 0x35 + .ascii "buf\000" + .byte 0x1 + .byte 0x9d + .4byte 0x128 + .uleb128 0x1 + .byte 0x52 + .uleb128 0x36 + .ascii "ret\000" + .byte 0x1 + .byte 0x9f + .4byte 0x50 + .sleb128 -22 + .byte 0 + .uleb128 0x2e + .4byte .LASF412 + .byte 0x1 + .byte 0x70 + .4byte 0x50 + .4byte .LFB270 + .4byte .LFE270-.LFB270 + .uleb128 0x1 + .byte 0x9c + .4byte 0x1a06 + .uleb128 0x2f + .ascii "dev\000" + .byte 0x1 + .byte 0x70 + .4byte 0x250 + .4byte .LLST18 + .uleb128 0x37 + .4byte .LASF413 + .byte 0x1 + .byte 0x70 + .4byte 0x50 + .4byte .LLST19 + .uleb128 0x2f + .ascii "buf\000" + .byte 0x1 + .byte 0x71 + .4byte 0x256 + .4byte .LLST20 + .uleb128 0x37 + .4byte .LASF51 + .byte 0x1 + .byte 0x71 + .4byte 0x50 + .4byte .LLST21 + .uleb128 0x30 + .ascii "otp\000" + .byte 0x1 + .byte 0x73 + .4byte 0x1772 + .4byte .LLST22 + .uleb128 0x30 + .ascii "i\000" + .byte 0x1 + .byte 0x74 + .4byte 0x50 + .4byte .LLST23 + .uleb128 0x38 + .ascii "n\000" + .byte 0x1 + .byte 0x74 + .4byte 0x50 + .uleb128 0x30 + .ascii "ret\000" + .byte 0x1 + .byte 0x74 + .4byte 0x50 + .4byte .LLST24 + .uleb128 0x2c + .4byte .LASF380 + .byte 0x1 + .byte 0x75 + .4byte 0xeb + .uleb128 0x1 + .byte 0x5a + .uleb128 0x39 + .4byte .LASF414 + .byte 0x1 + .byte 0x76 + .4byte 0xeb + .4byte .LLST25 + .uleb128 0x3a + .4byte .LBB33 + .4byte .LBE33-.LBB33 + .4byte 0x1889 + .uleb128 0x30 + .ascii "__v\000" + .byte 0x1 + .byte 0x8c + .4byte 0x9f + .4byte .LLST26 + .byte 0 + .uleb128 0x3a + .4byte .LBB48 + .4byte .LBE48-.LBB48 + .4byte 0x18a6 + .uleb128 0x30 + .ascii "__v\000" + .byte 0x1 + .byte 0x91 + .4byte 0x9f + .4byte .LLST38 + .byte 0 + .uleb128 0x3a + .4byte .LBB45 + .4byte .LBE45-.LBB45 + .4byte 0x18c3 + .uleb128 0x30 + .ascii "__v\000" + .byte 0x1 + .byte 0x97 + .4byte 0x9f + .4byte .LLST37 + .byte 0 + .uleb128 0x3b + .4byte 0x1a06 + .4byte .LBB34 + .4byte .Ldebug_ranges0+0x18 + .byte 0x1 + .byte 0x8f + .4byte 0x19a4 + .uleb128 0x3c + .4byte 0x1a16 + .uleb128 0x3d + .4byte 0x1a37 + .4byte .LLST27 + .uleb128 0x3d + .4byte 0x1a2c + .4byte .LLST28 + .uleb128 0x3d + .4byte 0x1a21 + .4byte .LLST29 + .uleb128 0x3e + .4byte .Ldebug_ranges0+0x18 + .uleb128 0x3f + .4byte 0x1a40 + .4byte .LLST30 + .uleb128 0x3f + .4byte 0x1a4b + .4byte .LLST31 + .uleb128 0x40 + .4byte .Ldebug_ranges0+0x40 + .4byte 0x1920 + .uleb128 0x3f + .4byte 0x1a8e + .4byte .LLST32 + .byte 0 + .uleb128 0x3a + .4byte .LBB37 + .4byte .LBE37-.LBB37 + .4byte 0x1937 + .uleb128 0x3f + .4byte 0x1a5b + .4byte .LLST33 + .byte 0 + .uleb128 0x3a + .4byte .LBB38 + .4byte .LBE38-.LBB38 + .4byte 0x194e + .uleb128 0x3f + .4byte 0x1a6c + .4byte .LLST34 + .byte 0 + .uleb128 0x3a + .4byte .LBB39 + .4byte .LBE39-.LBB39 + .4byte 0x1965 + .uleb128 0x3f + .4byte 0x1a7d + .4byte .LLST35 + .byte 0 + .uleb128 0x3a + .4byte .LBB41 + .4byte .LBE41-.LBB41 + .4byte 0x197c + .uleb128 0x3f + .4byte 0x1a9b + .4byte .LLST36 + .byte 0 + .uleb128 0x31 + .4byte .LVL57 + .4byte 0x1c97 + .4byte 0x1993 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x5 + .byte 0x3 + .4byte .LC0 + .byte 0 + .uleb128 0x33 + .4byte .LVL70 + .4byte 0x1ca2 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x1 + .byte 0x31 + .byte 0 + .byte 0 + .byte 0 + .uleb128 0x31 + .4byte .LVL35 + .4byte 0x1c75 + .4byte 0x19b8 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x2 + .byte 0x77 + .sleb128 0 + .byte 0 + .uleb128 0x31 + .4byte .LVL38 + .4byte 0x1cad + .4byte 0x19cc + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x2 + .byte 0x78 + .sleb128 0 + .byte 0 + .uleb128 0x31 + .4byte .LVL42 + .4byte 0x1aa8 + .4byte 0x19f2 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x2 + .byte 0x77 + .sleb128 0 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x51 + .uleb128 0x2 + .byte 0x75 + .sleb128 0 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x52 + .uleb128 0x2 + .byte 0x76 + .sleb128 0 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x53 + .uleb128 0x2 + .byte 0x78 + .sleb128 0 + .byte 0 + .uleb128 0x33 + .4byte .LVL54 + .4byte 0x1c97 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x5 + .byte 0x3 + .4byte .LC2 + .byte 0 + .byte 0 + .uleb128 0x41 + .4byte .LASF429 + .byte 0x1 + .byte 0x47 + .4byte 0x50 + .byte 0x1 + .4byte 0x1aa8 + .uleb128 0x42 + .ascii "otp\000" + .byte 0x1 + .byte 0x47 + .4byte 0x1772 + .uleb128 0x43 + .4byte .LASF413 + .byte 0x1 + .byte 0x48 + .4byte 0x50 + .uleb128 0x43 + .4byte .LASF380 + .byte 0x1 + .byte 0x48 + .4byte 0x90 + .uleb128 0x42 + .ascii "i\000" + .byte 0x1 + .byte 0x48 + .4byte 0x50 + .uleb128 0x44 + .4byte .LASF415 + .byte 0x1 + .byte 0x4a + .4byte 0x50 + .uleb128 0x44 + .4byte .LASF416 + .byte 0x1 + .byte 0x4b + .4byte 0x9f + .uleb128 0x45 + .4byte 0x1a67 + .uleb128 0x38 + .ascii "__v\000" + .byte 0x1 + .byte 0x5c + .4byte 0x9f + .byte 0 + .uleb128 0x45 + .4byte 0x1a78 + .uleb128 0x38 + .ascii "__v\000" + .byte 0x1 + .byte 0x5d + .4byte 0x9f + .byte 0 + .uleb128 0x45 + .4byte 0x1a89 + .uleb128 0x38 + .ascii "__v\000" + .byte 0x1 + .byte 0x5e + .4byte 0x9f + .byte 0 + .uleb128 0x45 + .4byte 0x1a9a + .uleb128 0x38 + .ascii "__v\000" + .byte 0x1 + .byte 0x5f + .4byte 0x9f + .byte 0 + .uleb128 0x46 + .uleb128 0x38 + .ascii "__v\000" + .byte 0x1 + .byte 0x62 + .4byte 0x9f + .byte 0 + .byte 0 + .uleb128 0x2e + .4byte .LASF417 + .byte 0x1 + .byte 0xf + .4byte 0x50 + .4byte .LFB268 + .4byte .LFE268-.LFB268 + .uleb128 0x1 + .byte 0x9c + .4byte 0x1c5b + .uleb128 0x2f + .ascii "dev\000" + .byte 0x1 + .byte 0xf + .4byte 0x250 + .4byte .LLST1 + .uleb128 0x37 + .4byte .LASF413 + .byte 0x1 + .byte 0xf + .4byte 0x50 + .4byte .LLST2 + .uleb128 0x2f + .ascii "buf\000" + .byte 0x1 + .byte 0x10 + .4byte 0x128 + .4byte .LLST3 + .uleb128 0x37 + .4byte .LASF51 + .byte 0x1 + .byte 0x10 + .4byte 0x50 + .4byte .LLST4 + .uleb128 0x30 + .ascii "otp\000" + .byte 0x1 + .byte 0x12 + .4byte 0x1772 + .4byte .LLST5 + .uleb128 0x30 + .ascii "i\000" + .byte 0x1 + .byte 0x13 + .4byte 0x50 + .4byte .LLST6 + .uleb128 0x39 + .4byte .LASF415 + .byte 0x1 + .byte 0x13 + .4byte 0x50 + .4byte .LLST7 + .uleb128 0x30 + .ascii "n\000" + .byte 0x1 + .byte 0x13 + .4byte 0x50 + .4byte .LLST8 + .uleb128 0x30 + .ascii "ret\000" + .byte 0x1 + .byte 0x13 + .4byte 0x50 + .4byte .LLST9 + .uleb128 0x39 + .4byte .LASF380 + .byte 0x1 + .byte 0x14 + .4byte 0xeb + .4byte .LLST10 + .uleb128 0x39 + .4byte .LASF416 + .byte 0x1 + .byte 0x15 + .4byte 0x9f + .4byte .LLST11 + .uleb128 0x39 + .4byte .LASF418 + .byte 0x1 + .byte 0x16 + .4byte 0x50 + .4byte .LLST12 + .uleb128 0x47 + .ascii "out\000" + .byte 0x1 + .byte 0x40 + .4byte .L9 + .uleb128 0x3a + .4byte .LBB16 + .4byte .LBE16-.LBB16 + .4byte 0x1b96 + .uleb128 0x48 + .ascii "__v\000" + .byte 0x1 + .byte 0x19 + .4byte 0x9f + .byte 0 + .byte 0 + .uleb128 0x3a + .4byte .LBB19 + .4byte .LBE19-.LBB19 + .4byte 0x1bb3 + .uleb128 0x30 + .ascii "__v\000" + .byte 0x1 + .byte 0x2c + .4byte 0x9f + .4byte .LLST14 + .byte 0 + .uleb128 0x40 + .4byte .Ldebug_ranges0+0 + .4byte 0x1bc9 + .uleb128 0x48 + .ascii "__v\000" + .byte 0x1 + .byte 0x2d + .4byte 0x9f + .byte 0x1 + .byte 0 + .uleb128 0x3a + .4byte .LBB21 + .4byte .LBE21-.LBB21 + .4byte 0x1be6 + .uleb128 0x30 + .ascii "__v\000" + .byte 0x1 + .byte 0x30 + .4byte 0x9f + .4byte .LLST15 + .byte 0 + .uleb128 0x3a + .4byte .LBB22 + .4byte .LBE22-.LBB22 + .4byte 0x1c01 + .uleb128 0x49 + .ascii "__v\000" + .byte 0x1 + .byte 0x3d + .4byte 0x9f + .uleb128 0x1 + .byte 0x53 + .byte 0 + .uleb128 0x3a + .4byte .LBB18 + .4byte .LBE18-.LBB18 + .4byte 0x1c1e + .uleb128 0x30 + .ascii "__v\000" + .byte 0x1 + .byte 0x42 + .4byte 0x9f + .4byte .LLST13 + .byte 0 + .uleb128 0x31 + .4byte .LVL3 + .4byte 0x1c75 + .4byte 0x1c33 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x3 + .byte 0xf3 + .uleb128 0x1 + .byte 0x50 + .byte 0 + .uleb128 0x31 + .4byte .LVL13 + .4byte 0x1c97 + .4byte 0x1c4a + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x5 + .byte 0x3 + .4byte .LC0 + .byte 0 + .uleb128 0x33 + .4byte .LVL21 + .4byte 0x1ca2 + .uleb128 0x32 + .uleb128 0x1 + .byte 0x50 + .uleb128 0x2 + .byte 0x7b + .sleb128 0 + .byte 0 + .byte 0 + .uleb128 0x4a + .4byte .LASF430 + .byte 0x1a + .2byte 0x36f + .byte 0x3 + .4byte 0x1c75 + .uleb128 0x4b + .ascii "ptr\000" + .byte 0x1a + .2byte 0x36f + .4byte 0x128 + .byte 0 + .uleb128 0x4c + .4byte .LASF419 + .4byte .LASF419 + .byte 0x8 + .2byte 0x112 + .uleb128 0x4d + .4byte .LASF420 + .4byte .LASF420 + .byte 0x20 + .byte 0x85 + .uleb128 0x4d + .4byte .LASF421 + .4byte .LASF421 + .byte 0x20 + .byte 0x38 + .uleb128 0x4d + .4byte .LASF422 + .4byte .LASF422 + .byte 0x21 + .byte 0x13 + .uleb128 0x4d + .4byte .LASF423 + .4byte .LASF423 + .byte 0x22 + .byte 0xb + .uleb128 0x4c + .4byte .LASF424 + .4byte .LASF424 + .byte 0x1a + .2byte 0x393 + .byte 0 + .section .debug_abbrev,"",%progbits +.Ldebug_abbrev0: + .uleb128 0x1 + .uleb128 0x11 + .byte 0x1 + .uleb128 0x25 + .uleb128 0xe + .uleb128 0x13 + .uleb128 0xb + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x1b + .uleb128 0xe + .uleb128 0x55 + .uleb128 0x17 + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x10 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x2 + .uleb128 0x16 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x3 + .uleb128 0x24 + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3e + .uleb128 0xb + .uleb128 0x3 + .uleb128 0xe + .byte 0 + .byte 0 + .uleb128 0x4 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3c + .uleb128 0x19 + .byte 0 + .byte 0 + .uleb128 0x5 + .uleb128 0x24 + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3e + .uleb128 0xb + .uleb128 0x3 + .uleb128 0x8 + .byte 0 + .byte 0 + .uleb128 0x6 + .uleb128 0x16 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x7 + .uleb128 0x26 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x8 + .uleb128 0xf + .byte 0 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x9 + .uleb128 0xf + .byte 0 + .uleb128 0xb + .uleb128 0xb + .byte 0 + .byte 0 + .uleb128 0xa + .uleb128 0x1 + .byte 0x1 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0xb + .uleb128 0x21 + .byte 0 + .byte 0 + .byte 0 + .uleb128 0xc + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3c + .uleb128 0x19 + .byte 0 + .byte 0 + .uleb128 0xd + .uleb128 0x13 + .byte 0x1 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0xe + .uleb128 0xd + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x38 + .uleb128 0xb + .byte 0 + .byte 0 + .uleb128 0xf + .uleb128 0xd + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x38 + .uleb128 0xb + .byte 0 + .byte 0 + .uleb128 0x10 + .uleb128 0x26 + .byte 0 + .byte 0 + .byte 0 + .uleb128 0x11 + .uleb128 0x21 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x2f + .uleb128 0xb + .byte 0 + .byte 0 + .uleb128 0x12 + .uleb128 0x15 + .byte 0x1 + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x13 + .uleb128 0x5 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x14 + .uleb128 0x13 + .byte 0x1 + .uleb128 0xb + .uleb128 0x5 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x15 + .uleb128 0xd + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x38 + .uleb128 0x5 + .byte 0 + .byte 0 + .uleb128 0x16 + .uleb128 0xd + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x38 + .uleb128 0x5 + .byte 0 + .byte 0 + .uleb128 0x17 + .uleb128 0x21 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x2f + .uleb128 0x5 + .byte 0 + .byte 0 + .uleb128 0x18 + .uleb128 0x13 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3c + .uleb128 0x19 + .byte 0 + .byte 0 + .uleb128 0x19 + .uleb128 0x13 + .byte 0x1 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0xb + .uleb128 0x5 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x1a + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3c + .uleb128 0x19 + .byte 0 + .byte 0 + .uleb128 0x1b + .uleb128 0x13 + .byte 0x1 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x1c + .uleb128 0x13 + .byte 0x1 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x1d + .uleb128 0xd + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x38 + .uleb128 0xb + .byte 0 + .byte 0 + .uleb128 0x1e + .uleb128 0x16 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x1f + .uleb128 0xd + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x38 + .uleb128 0xb + .byte 0 + .byte 0 + .uleb128 0x20 + .uleb128 0x13 + .byte 0x1 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0xb + .uleb128 0x5 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x21 + .uleb128 0x4 + .byte 0x1 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0xb + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x22 + .uleb128 0x28 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x1c + .uleb128 0xb + .byte 0 + .byte 0 + .uleb128 0x23 + .uleb128 0x28 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x1c + .uleb128 0xd + .byte 0 + .byte 0 + .uleb128 0x24 + .uleb128 0x4 + .byte 0x1 + .uleb128 0xb + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x25 + .uleb128 0x35 + .byte 0 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x26 + .uleb128 0x15 + .byte 0x1 + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x27 + .uleb128 0x4 + .byte 0x1 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0xb + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x28 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3f + .uleb128 0x19 + .byte 0 + .byte 0 + .uleb128 0x29 + .uleb128 0x17 + .byte 0x1 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0xb + .uleb128 0xb + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x2a + .uleb128 0xd + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x2b + .uleb128 0xd + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x2c + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x2 + .uleb128 0x18 + .byte 0 + .byte 0 + .uleb128 0x2d + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x2 + .uleb128 0x18 + .byte 0 + .byte 0 + .uleb128 0x2e + .uleb128 0x2e + .byte 0x1 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x12 + .uleb128 0x6 + .uleb128 0x40 + .uleb128 0x18 + .uleb128 0x2117 + .uleb128 0x19 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x2f + .uleb128 0x5 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x2 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x30 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x2 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x31 + .uleb128 0x4109 + .byte 0x1 + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x31 + .uleb128 0x13 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x32 + .uleb128 0x410a + .byte 0 + .uleb128 0x2 + .uleb128 0x18 + .uleb128 0x2111 + .uleb128 0x18 + .byte 0 + .byte 0 + .uleb128 0x33 + .uleb128 0x4109 + .byte 0x1 + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x31 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x34 + .uleb128 0x5 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x2 + .uleb128 0x18 + .byte 0 + .byte 0 + .uleb128 0x35 + .uleb128 0x5 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x2 + .uleb128 0x18 + .byte 0 + .byte 0 + .uleb128 0x36 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x1c + .uleb128 0xd + .byte 0 + .byte 0 + .uleb128 0x37 + .uleb128 0x5 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x2 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x38 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x39 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x2 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x3a + .uleb128 0xb + .byte 0x1 + .uleb128 0x11 + .uleb128 0x1 + .uleb128 0x12 + .uleb128 0x6 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x3b + .uleb128 0x1d + .byte 0x1 + .uleb128 0x31 + .uleb128 0x13 + .uleb128 0x52 + .uleb128 0x1 + .uleb128 0x55 + .uleb128 0x17 + .uleb128 0x58 + .uleb128 0xb + .uleb128 0x59 + .uleb128 0xb + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x3c + .uleb128 0x5 + .byte 0 + .uleb128 0x31 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x3d + .uleb128 0x5 + .byte 0 + .uleb128 0x31 + .uleb128 0x13 + .uleb128 0x2 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x3e + .uleb128 0xb + .byte 0x1 + .uleb128 0x55 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x3f + .uleb128 0x34 + .byte 0 + .uleb128 0x31 + .uleb128 0x13 + .uleb128 0x2 + .uleb128 0x17 + .byte 0 + .byte 0 + .uleb128 0x40 + .uleb128 0xb + .byte 0x1 + .uleb128 0x55 + .uleb128 0x17 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x41 + .uleb128 0x2e + .byte 0x1 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x20 + .uleb128 0xb + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x42 + .uleb128 0x5 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x43 + .uleb128 0x5 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x44 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x45 + .uleb128 0xb + .byte 0x1 + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x46 + .uleb128 0xb + .byte 0x1 + .byte 0 + .byte 0 + .uleb128 0x47 + .uleb128 0xa + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x11 + .uleb128 0x1 + .byte 0 + .byte 0 + .uleb128 0x48 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x1c + .uleb128 0xb + .byte 0 + .byte 0 + .uleb128 0x49 + .uleb128 0x34 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .uleb128 0x49 + .uleb128 0x13 + .uleb128 0x2 + .uleb128 0x18 + .byte 0 + .byte 0 + .uleb128 0x4a + .uleb128 0x2e + .byte 0x1 + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x27 + .uleb128 0x19 + .uleb128 0x20 + .uleb128 0xb + .uleb128 0x1 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x4b + .uleb128 0x5 + .byte 0 + .uleb128 0x3 + .uleb128 0x8 + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .uleb128 0x49 + .uleb128 0x13 + .byte 0 + .byte 0 + .uleb128 0x4c + .uleb128 0x2e + .byte 0 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3c + .uleb128 0x19 + .uleb128 0x6e + .uleb128 0xe + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0x5 + .byte 0 + .byte 0 + .uleb128 0x4d + .uleb128 0x2e + .byte 0 + .uleb128 0x3f + .uleb128 0x19 + .uleb128 0x3c + .uleb128 0x19 + .uleb128 0x6e + .uleb128 0xe + .uleb128 0x3 + .uleb128 0xe + .uleb128 0x3a + .uleb128 0xb + .uleb128 0x3b + .uleb128 0xb + .byte 0 + .byte 0 + .byte 0 + .section .debug_loc,"",%progbits +.Ldebug_loc0: +.LLST16: + .4byte .LVL27 + .4byte .LVL28-1 + .2byte 0x1 + .byte 0x50 + .4byte .LVL28-1 + .4byte .LVL33 + .2byte 0x1 + .byte 0x55 + .4byte .LVL33 + .4byte .LFE272 + .2byte 0x4 + .byte 0xf3 + .uleb128 0x1 + .byte 0x50 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST17: + .4byte .LVL29 + .4byte .LVL30 + .2byte 0x1 + .byte 0x50 + .4byte .LVL30 + .4byte .LVL33 + .2byte 0x1 + .byte 0x54 + .4byte 0 + .4byte 0 +.LLST0: + .4byte .LVL0 + .4byte .LVL1 + .2byte 0x1 + .byte 0x50 + .4byte .LVL1 + .4byte .LFE271 + .2byte 0x4 + .byte 0xf3 + .uleb128 0x1 + .byte 0x50 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST18: + .4byte .LVL34 + .4byte .LVL35-1 + .2byte 0x1 + .byte 0x50 + .4byte .LVL35-1 + .4byte .LVL39 + .2byte 0x1 + .byte 0x57 + .4byte .LVL39 + .4byte .LVL40 + .2byte 0x4 + .byte 0xf3 + .uleb128 0x1 + .byte 0x50 + .byte 0x9f + .4byte .LVL40 + .4byte .LVL43 + .2byte 0x1 + .byte 0x57 + .4byte .LVL43 + .4byte .LFE270 + .2byte 0x4 + .byte 0xf3 + .uleb128 0x1 + .byte 0x50 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST19: + .4byte .LVL34 + .4byte .LVL35-1 + .2byte 0x1 + .byte 0x51 + .4byte .LVL35-1 + .4byte .LFE270 + .2byte 0x1 + .byte 0x55 + .4byte 0 + .4byte 0 +.LLST20: + .4byte .LVL34 + .4byte .LVL35-1 + .2byte 0x1 + .byte 0x52 + .4byte .LVL35-1 + .4byte .LFE270 + .2byte 0x1 + .byte 0x5a + .4byte 0 + .4byte 0 +.LLST21: + .4byte .LVL34 + .4byte .LVL35-1 + .2byte 0x1 + .byte 0x53 + .4byte .LVL35-1 + .4byte .LFE270 + .2byte 0x1 + .byte 0x58 + .4byte 0 + .4byte 0 +.LLST22: + .4byte .LVL36 + .4byte .LVL37 + .2byte 0x1 + .byte 0x50 + .4byte .LVL37 + .4byte .LFE270 + .2byte 0x1 + .byte 0x54 + .4byte 0 + .4byte 0 +.LLST23: + .4byte .LVL44 + .4byte .LVL45 + .2byte 0x6 + .byte 0x73 + .sleb128 0 + .byte 0x76 + .sleb128 0 + .byte 0x1c + .byte 0x9f + .4byte .LVL49 + .4byte .LVL51 + .2byte 0x1 + .byte 0x56 + .4byte .LVL51 + .4byte .LVL52 + .2byte 0x6 + .byte 0x73 + .sleb128 0 + .byte 0x76 + .sleb128 0 + .byte 0x1c + .byte 0x9f + .4byte .LVL52 + .4byte .LVL54-1 + .2byte 0x7 + .byte 0x76 + .sleb128 0 + .byte 0x20 + .byte 0x73 + .sleb128 0 + .byte 0x22 + .byte 0x9f + .4byte .LVL55 + .4byte .LFE270 + .2byte 0x1 + .byte 0x56 + .4byte 0 + .4byte 0 +.LLST24: + .4byte .LVL42 + .4byte .LVL49 + .2byte 0x1 + .byte 0x50 + .4byte .LVL49 + .4byte .LVL51 + .2byte 0x1 + .byte 0x57 + .4byte .LVL51 + .4byte .LVL53 + .2byte 0x1 + .byte 0x50 + .4byte .LVL53 + .4byte .LFE270 + .2byte 0x1 + .byte 0x57 + .4byte 0 + .4byte 0 +.LLST25: + .4byte .LVL38 + .4byte .LVL39 + .2byte 0x1 + .byte 0x50 + .4byte .LVL40 + .4byte .LVL41 + .2byte 0x1 + .byte 0x50 + .4byte .LVL41 + .4byte .LVL48 + .2byte 0x1 + .byte 0x56 + .4byte .LVL51 + .4byte .LVL55 + .2byte 0x1 + .byte 0x56 + .4byte 0 + .4byte 0 +.LLST26: + .4byte .LVL46 + .4byte .LVL51 + .2byte 0x2 + .byte 0x30 + .byte 0x9f + .4byte .LVL55 + .4byte .LFE270 + .2byte 0x2 + .byte 0x30 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST38: + .4byte .LVL58 + .4byte .LVL59 + .2byte 0x3 + .byte 0x8 + .byte 0xff + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST37: + .4byte .LVL50 + .4byte .LVL51 + .2byte 0x3 + .byte 0x8 + .byte 0xff + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST27: + .4byte .LVL56 + .4byte .LVL71 + .2byte 0x1 + .byte 0x56 + .4byte 0 + .4byte 0 +.LLST28: + .4byte .LVL56 + .4byte .LVL57-1 + .2byte 0x1 + .byte 0x53 + .4byte .LVL59 + .4byte .LVL65 + .2byte 0x1 + .byte 0x53 + .4byte 0 + .4byte 0 +.LLST29: + .4byte .LVL56 + .4byte .LVL71 + .2byte 0x1 + .byte 0x55 + .4byte 0 + .4byte 0 +.LLST30: + .4byte .LVL65 + .4byte .LVL68 + .2byte 0x3 + .byte 0x7b + .sleb128 -2 + .byte 0x9f + .4byte .LVL68 + .4byte .LVL69 + .2byte 0x3 + .byte 0x7b + .sleb128 -1 + .byte 0x9f + .4byte .LVL69 + .4byte .LVL71 + .2byte 0x3 + .byte 0x7b + .sleb128 -2 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST31: + .4byte .LVL67 + .4byte .LVL70-1 + .2byte 0x1 + .byte 0x51 + .4byte 0 + .4byte 0 +.LLST32: + .4byte .LVL64 + .4byte .LVL71 + .2byte 0x2 + .byte 0x31 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST33: + .4byte .LVL60 + .4byte .LVL62 + .2byte 0x1 + .byte 0x50 + .4byte .LVL62 + .4byte .LVL63 + .2byte 0x5 + .byte 0x74 + .sleb128 0 + .byte 0x6 + .byte 0x23 + .uleb128 0x34 + .4byte .LVL63 + .4byte .LVL71 + .2byte 0x8 + .byte 0x75 + .sleb128 0 + .byte 0x76 + .sleb128 0 + .byte 0x22 + .byte 0x33 + .byte 0x24 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST34: + .4byte .LVL61 + .4byte .LVL71 + .2byte 0x2 + .byte 0x37 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST35: + .4byte .LVL63 + .4byte .LVL65 + .2byte 0x1 + .byte 0x53 + .4byte 0 + .4byte 0 +.LLST36: + .4byte .LVL66 + .4byte .LVL70-1 + .2byte 0x1 + .byte 0x51 + .4byte 0 + .4byte 0 +.LLST1: + .4byte .LVL2 + .4byte .LVL3-1 + .2byte 0x1 + .byte 0x50 + .4byte .LVL3-1 + .4byte .LFE268 + .2byte 0x4 + .byte 0xf3 + .uleb128 0x1 + .byte 0x50 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST2: + .4byte .LVL2 + .4byte .LVL3-1 + .2byte 0x1 + .byte 0x51 + .4byte .LVL3-1 + .4byte .LFE268 + .2byte 0x1 + .byte 0x58 + .4byte 0 + .4byte 0 +.LLST3: + .4byte .LVL2 + .4byte .LVL3-1 + .2byte 0x1 + .byte 0x52 + .4byte .LVL3-1 + .4byte .LVL6 + .2byte 0x1 + .byte 0x56 + .4byte .LVL6 + .4byte .LVL7 + .2byte 0x3 + .byte 0x76 + .sleb128 1 + .byte 0x9f + .4byte .LVL7 + .4byte .LFE268 + .2byte 0x4 + .byte 0xf3 + .uleb128 0x1 + .byte 0x52 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST4: + .4byte .LVL2 + .4byte .LVL3-1 + .2byte 0x1 + .byte 0x53 + .4byte .LVL3-1 + .4byte .LFE268 + .2byte 0x1 + .byte 0x5a + .4byte 0 + .4byte 0 +.LLST5: + .4byte .LVL4 + .4byte .LVL7 + .2byte 0x1 + .byte 0x50 + .4byte .LVL7 + .4byte .LFE268 + .2byte 0x1 + .byte 0x55 + .4byte 0 + .4byte 0 +.LLST6: + .4byte .LVL7 + .4byte .LVL25 + .2byte 0x6 + .byte 0x74 + .sleb128 0 + .byte 0x78 + .sleb128 0 + .byte 0x1c + .byte 0x9f + .4byte .LVL25 + .4byte .LVL26 + .2byte 0x8 + .byte 0x74 + .sleb128 0 + .byte 0x78 + .sleb128 0 + .byte 0x1c + .byte 0x23 + .uleb128 0x1 + .byte 0x9f + .4byte .LVL26 + .4byte .LFE268 + .2byte 0x6 + .byte 0x74 + .sleb128 0 + .byte 0x78 + .sleb128 0 + .byte 0x1c + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST7: + .4byte .LVL16 + .4byte .LVL19 + .2byte 0x3 + .byte 0x77 + .sleb128 -2 + .byte 0x9f + .4byte .LVL19 + .4byte .LVL20 + .2byte 0x3 + .byte 0x77 + .sleb128 -1 + .byte 0x9f + .4byte .LVL20 + .4byte .LFE268 + .2byte 0x3 + .byte 0x77 + .sleb128 -2 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST8: + .4byte .LVL4 + .4byte .LVL5 + .2byte 0x2 + .byte 0x30 + .byte 0x9f + .4byte .LVL10 + .4byte .LVL11 + .2byte 0x2 + .byte 0x30 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST9: + .4byte .LVL4 + .4byte .LVL9 + .2byte 0x2 + .byte 0x30 + .byte 0x9f + .4byte .LVL9 + .4byte .LVL10 + .2byte 0x3 + .byte 0x9 + .byte 0xff + .byte 0x9f + .4byte .LVL10 + .4byte .LVL12 + .2byte 0x1 + .byte 0x50 + .4byte .LVL12 + .4byte .LFE268 + .2byte 0x2 + .byte 0x30 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST10: + .4byte .LVL4 + .4byte .LVL6 + .2byte 0x1 + .byte 0x56 + .4byte .LVL6 + .4byte .LVL7 + .2byte 0x3 + .byte 0x76 + .sleb128 1 + .byte 0x9f + .4byte .LVL7 + .4byte .LFE268 + .2byte 0x4 + .byte 0xf3 + .uleb128 0x1 + .byte 0x52 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST11: + .4byte .LVL18 + .4byte .LVL21-1 + .2byte 0x1 + .byte 0x53 + .4byte .LVL22 + .4byte .LVL23 + .2byte 0x1 + .byte 0x53 + .4byte 0 + .4byte 0 +.LLST12: + .4byte .LVL8 + .4byte .LVL10 + .2byte 0x1 + .byte 0x54 + .4byte .LVL12 + .4byte .LVL26 + .2byte 0x1 + .byte 0x54 + .4byte .LVL26 + .4byte .LFE268 + .2byte 0x3 + .byte 0x74 + .sleb128 -1 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST14: + .4byte .LVL14 + .4byte .LVL26 + .2byte 0x1 + .byte 0x54 + .4byte .LVL26 + .4byte .LFE268 + .2byte 0x3 + .byte 0x74 + .sleb128 -1 + .byte 0x9f + .4byte 0 + .4byte 0 +.LLST15: + .4byte .LVL17 + .4byte .LVL21-1 + .2byte 0x1 + .byte 0x53 + .4byte .LVL22 + .4byte .LVL23 + .2byte 0x1 + .byte 0x53 + .4byte 0 + .4byte 0 +.LLST13: + .4byte .LVL11 + .4byte .LVL12 + .2byte 0x3 + .byte 0x8 + .byte 0xff + .byte 0x9f + .4byte 0 + .4byte 0 + .section .debug_aranges,"",%progbits + .4byte 0x34 + .2byte 0x2 + .4byte .Ldebug_info0 + .byte 0x4 + .byte 0 + .2byte 0 + .2byte 0 + .4byte .LFB271 + .4byte .LFE271-.LFB271 + .4byte .LFB268 + .4byte .LFE268-.LFB268 + .4byte .LFB272 + .4byte .LFE272-.LFB272 + .4byte .LFB270 + .4byte .LFE270-.LFB270 + .4byte 0 + .4byte 0 + .section .debug_ranges,"",%progbits +.Ldebug_ranges0: + .4byte .LBB17 + .4byte .LBE17 + .4byte .LBB20 + .4byte .LBE20 + .4byte 0 + .4byte 0 + .4byte .LBB34 + .4byte .LBE34 + .4byte .LBB46 + .4byte .LBE46 + .4byte .LBB47 + .4byte .LBE47 + .4byte .LBB49 + .4byte .LBE49 + .4byte 0 + .4byte 0 + .4byte .LBB36 + .4byte .LBE36 + .4byte .LBB40 + .4byte .LBE40 + .4byte 0 + .4byte 0 + .4byte .LFB271 + .4byte .LFE271 + .4byte .LFB268 + .4byte .LFE268 + .4byte .LFB272 + .4byte .LFE272 + .4byte .LFB270 + .4byte .LFE270 + .4byte 0 + .4byte 0 + .section .debug_line,"",%progbits +.Ldebug_line0: + .section .debug_str,"MS",%progbits,1 +.LASF30: + .ascii "parent_platdata\000" +.LASF100: + .ascii "off_mem_rsvmap\000" +.LASF183: + .ascii "UCLASS_I2C_EEPROM\000" +.LASF303: + .ascii "jt_funcs\000" +.LASF188: + .ascii "UCLASS_IRQ\000" +.LASF150: + .ascii "initrd_start\000" +.LASF182: + .ascii "UCLASS_I2C\000" +.LASF13: + .ascii "sizetype\000" +.LASF327: + .ascii "net_hostname\000" +.LASF54: + .ascii "start\000" +.LASF222: + .ascii "UCLASS_SPI\000" +.LASF300: + .ascii "child\000" +.LASF186: + .ascii "UCLASS_I2S\000" +.LASF349: + .ascii "NETLOOP_RESTART\000" +.LASF184: + .ascii "UCLASS_I2C_GENERIC\000" +.LASF196: + .ascii "UCLASS_MOD_EXP\000" +.LASF245: + .ascii "UCLASS_IO_DOMAIN\000" +.LASF257: + .ascii "using_pre_serial\000" +.LASF37: + .ascii "uclass_priv\000" +.LASF217: + .ascii "UCLASS_RKNAND\000" +.LASF159: + .ascii "UCLASS_DEMO\000" +.LASF395: + .ascii "OTP_S\000" +.LASF108: + .ascii "ih_magic\000" +.LASF46: + .ascii "list_head\000" +.LASF360: + .ascii "child_pre_probe\000" +.LASF292: + .ascii "pm_ctx_phys\000" +.LASF163: + .ascii "UCLASS_TEST_PROBE\000" +.LASF298: + .ascii "full_name\000" +.LASF241: + .ascii "UCLASS_KEY\000" +.LASF80: + .ascii "bi_intfreq\000" +.LASF11: + .ascii "phys_addr_t\000" +.LASF401: + .ascii "write\000" +.LASF236: + .ascii "UCLASS_VIDEO_BRIDGE\000" +.LASF5: + .ascii "__u8\000" +.LASF348: + .ascii "NETLOOP_CONTINUE\000" +.LASF225: + .ascii "UCLASS_SPI_GENERIC\000" +.LASF288: + .ascii "malloc_base\000" +.LASF420: + .ascii "dev_read_addr_ptr\000" +.LASF56: + .ascii "flash_info_t\000" +.LASF201: + .ascii "UCLASS_PANEL\000" +.LASF125: + .ascii "comp\000" +.LASF120: + .ascii "image_header_t\000" +.LASF155: + .ascii "state\000" +.LASF176: + .ascii "UCLASS_CROS_EC\000" +.LASF74: + .ascii "bi_dsp_freq\000" +.LASF407: + .ascii "rockchip_otp_ids\000" +.LASF122: + .ascii "image_start\000" +.LASF161: + .ascii "UCLASS_TEST_FDT\000" +.LASF65: + .ascii "bd_info\000" +.LASF346: + .ascii "uclass_id\000" +.LASF112: + .ascii "ih_load\000" +.LASF393: + .ascii "DECOM_GZIP\000" +.LASF307: + .ascii "__dtb_dt_spl_begin\000" +.LASF386: + .ascii "pre_remove\000" +.LASF7: + .ascii "__u32\000" +.LASF35: + .ascii "priv\000" +.LASF291: + .ascii "cur_serial_dev\000" +.LASF333: + .ascii "net_tx_packet\000" +.LASF240: + .ascii "UCLASS_FG\000" +.LASF332: + .ascii "net_server_ip\000" +.LASF428: + .ascii "ofnode_union\000" +.LASF340: + .ascii "net_native_vlan\000" +.LASF238: + .ascii "UCLASS_VIDEO_CRTC\000" +.LASF175: + .ascii "UCLASS_CODEC\000" +.LASF285: + .ascii "env_buf\000" +.LASF429: + .ascii "rockchip_secure_otp_write_byte\000" +.LASF21: + .ascii "errno\000" +.LASF15: + .ascii "long int\000" +.LASF390: + .ascii "__invalid_size_argument_for_IOC\000" +.LASF69: + .ascii "bi_flashsize\000" +.LASF29: + .ascii "platdata\000" +.LASF206: + .ascii "UCLASS_PHY\000" +.LASF93: + .ascii "IRQ_STACK_START_IN\000" +.LASF104: + .ascii "size_dt_strings\000" +.LASF235: + .ascii "UCLASS_VIDEO\000" +.LASF408: + .ascii "_u_boot_list_2_driver_2_rockchip_secure_otp_v2\000" +.LASF269: + .ascii "relocaddr\000" +.LASF377: + .ascii "dev_head\000" +.LASF427: + .ascii "/home/zzz/code/u-boot\000" +.LASF343: + .ascii "net_boot_file_size\000" +.LASF114: + .ascii "ih_dcrc\000" +.LASF79: + .ascii "bi_ethspeed\000" +.LASF158: + .ascii "UCLASS_ROOT\000" +.LASF44: + .ascii "ide_bus_offset\000" +.LASF330: + .ascii "net_server_ethaddr\000" +.LASF82: + .ascii "bi_arch_number\000" +.LASF3: + .ascii "signed char\000" +.LASF189: + .ascii "UCLASS_KEYBOARD\000" +.LASF18: + .ascii "uint8_t\000" +.LASF365: + .ascii "per_child_platdata_auto_alloc_size\000" +.LASF45: + .ascii "udevice\000" +.LASF423: + .ascii "udelay\000" +.LASF116: + .ascii "ih_arch\000" +.LASF97: + .ascii "totalsize\000" +.LASF109: + .ascii "ih_hcrc\000" +.LASF271: + .ascii "mon_len\000" +.LASF403: + .ascii "call\000" +.LASF124: + .ascii "load\000" +.LASF230: + .ascii "UCLASS_TPM\000" +.LASF59: + .ascii "lmb_property\000" +.LASF102: + .ascii "last_comp_version\000" +.LASF0: + .ascii "unsigned char\000" +.LASF84: + .ascii "bi_andr_version\000" +.LASF417: + .ascii "rockchip_secure_otp_v2_read\000" +.LASF157: + .ascii "images\000" +.LASF244: + .ascii "UCLASS_DVFS\000" +.LASF75: + .ascii "bi_ddr_freq\000" +.LASF190: + .ascii "UCLASS_LED\000" +.LASF111: + .ascii "ih_size\000" +.LASF39: + .ascii "uclass_node\000" +.LASF23: + .ascii "_Bool\000" +.LASF366: + .ascii "property\000" +.LASF352: + .ascii "net_state\000" +.LASF368: + .ascii "value\000" +.LASF397: + .ascii "EFUSE_S\000" +.LASF185: + .ascii "UCLASS_I2C_MUX\000" +.LASF14: + .ascii "char\000" +.LASF25: + .ascii "_binary_u_boot_bin_start\000" +.LASF234: + .ascii "UCLASS_USB_GADGET_GENERIC\000" +.LASF350: + .ascii "NETLOOP_SUCCESS\000" +.LASF36: + .ascii "uclass\000" +.LASF374: + .ascii "p_current\000" +.LASF376: + .ascii "uc_drv\000" +.LASF347: + .ascii "net_loop_state\000" +.LASF43: + .ascii "req_seq\000" +.LASF301: + .ascii "sibling\000" +.LASF277: + .ascii "dm_root_f\000" +.LASF314: + .ascii "enetaddr\000" +.LASF174: + .ascii "UCLASS_AMP\000" +.LASF212: + .ascii "UCLASS_PWRSEQ\000" +.LASF369: + .ascii "of_offset\000" +.LASF140: + .ascii "fit_hdr_fdt\000" +.LASF341: + .ascii "net_restart_wrap\000" +.LASF329: + .ascii "net_ethaddr\000" +.LASF412: + .ascii "rockchip_secure_otp_v2_write\000" +.LASF42: + .ascii "flags\000" +.LASF424: + .ascii "malloc_simple\000" +.LASF117: + .ascii "ih_type\000" +.LASF98: + .ascii "off_dt_struct\000" +.LASF70: + .ascii "bi_flashoffset\000" +.LASF342: + .ascii "net_boot_file_name\000" +.LASF379: + .ascii "compatible\000" +.LASF160: + .ascii "UCLASS_TEST\000" +.LASF110: + .ascii "ih_time\000" +.LASF262: + .ascii "bus_clk\000" +.LASF213: + .ascii "UCLASS_RAM\000" +.LASF179: + .ascii "UCLASS_ETH\000" +.LASF32: + .ascii "node\000" +.LASF121: + .ascii "image_info\000" +.LASF127: + .ascii "arch\000" +.LASF264: + .ascii "mem_clk\000" +.LASF416: + .ascii "temp\000" +.LASF261: + .ascii "cpu_clk\000" +.LASF50: + .ascii "select_hwpart\000" +.LASF334: + .ascii "net_rx_packets\000" +.LASF371: + .ascii "mem_malloc_start\000" +.LASF92: + .ascii "_datarelro_start_ofs\000" +.LASF17: + .ascii "ulong\000" +.LASF113: + .ascii "ih_ep\000" +.LASF61: + .ascii "lmb_region\000" +.LASF426: + .ascii "drivers/misc/rockchip-secure-otp-v2.c\000" +.LASF384: + .ascii "pre_probe\000" +.LASF422: + .ascii "printf\000" +.LASF394: + .ascii "DECOM_ZLIB\000" +.LASF135: + .ascii "fit_uname_os\000" +.LASF76: + .ascii "bi_bootflags\000" +.LASF331: + .ascii "net_ip\000" +.LASF283: + .ascii "fdt_size\000" +.LASF325: + .ascii "net_dns_server\000" +.LASF345: + .ascii "net_ping_ip\000" +.LASF63: + .ascii "memory\000" +.LASF95: + .ascii "fdt_header\000" +.LASF372: + .ascii "mem_malloc_end\000" +.LASF192: + .ascii "UCLASS_MAILBOX\000" +.LASF147: + .ascii "rd_end\000" +.LASF354: + .ascii "bind\000" +.LASF272: + .ascii "irq_sp\000" +.LASF152: + .ascii "cmdline_start\000" +.LASF321: + .ascii "index\000" +.LASF260: + .ascii "global_data\000" +.LASF388: + .ascii "per_device_auto_alloc_size\000" +.LASF220: + .ascii "UCLASS_SCSI\000" +.LASF232: + .ascii "UCLASS_USB_DEV_GENERIC\000" +.LASF193: + .ascii "UCLASS_MASS_STORAGE\000" +.LASF1: + .ascii "long unsigned int\000" +.LASF168: + .ascii "UCLASS_SIMPLE_BUS\000" +.LASF304: + .ascii "gd_t\000" +.LASF326: + .ascii "net_nis_domain\000" +.LASF142: + .ascii "fit_noffset_fdt\000" +.LASF406: + .ascii "rockchip_secure_otp_ops\000" +.LASF351: + .ascii "NETLOOP_FAIL\000" +.LASF239: + .ascii "UCLASS_WDT\000" +.LASF253: + .ascii "timer_reset_value\000" +.LASF273: + .ascii "start_addr_sp\000" +.LASF71: + .ascii "bi_sramstart\000" +.LASF26: + .ascii "_binary_u_boot_bin_end\000" +.LASF274: + .ascii "reloc_off\000" +.LASF103: + .ascii "boot_cpuid_phys\000" +.LASF252: + .ascii "lastinc\000" +.LASF138: + .ascii "fit_uname_rd\000" +.LASF226: + .ascii "UCLASS_SYSCON\000" +.LASF173: + .ascii "UCLASS_CPU\000" +.LASF133: + .ascii "fit_uname_cfg\000" +.LASF221: + .ascii "UCLASS_SERIAL\000" +.LASF339: + .ascii "net_our_vlan\000" +.LASF293: + .ascii "serial\000" +.LASF355: + .ascii "probe\000" +.LASF171: + .ascii "UCLASS_BLK\000" +.LASF128: + .ascii "image_info_t\000" +.LASF167: + .ascii "UCLASS_USB_EMUL\000" +.LASF254: + .ascii "tlb_addr\000" +.LASF205: + .ascii "UCLASS_PCI_GENERIC\000" +.LASF123: + .ascii "image_len\000" +.LASF77: + .ascii "bi_ip_addr\000" +.LASF207: + .ascii "UCLASS_PINCONFIG\000" +.LASF317: + .ascii "send\000" +.LASF228: + .ascii "UCLASS_THERMAL\000" +.LASF131: + .ascii "legacy_hdr_os_copy\000" +.LASF9: + .ascii "long long int\000" +.LASF391: + .ascii "misc_mode\000" +.LASF282: + .ascii "new_fdt\000" +.LASF22: + .ascii "___strtok\000" +.LASF344: + .ascii "net_boot_file_expected_size_in_blocks\000" +.LASF404: + .ascii "rockchip_otp_v2_platdata\000" +.LASF353: + .ascii "of_match\000" +.LASF200: + .ascii "UCLASS_NVME\000" +.LASF129: + .ascii "bootm_headers\000" +.LASF55: + .ascii "protect\000" +.LASF231: + .ascii "UCLASS_USB\000" +.LASF381: + .ascii "uclass_driver\000" +.LASF242: + .ascii "UCLASS_RC\000" +.LASF286: + .ascii "timebase_h\000" +.LASF287: + .ascii "timebase_l\000" +.LASF177: + .ascii "UCLASS_DISPLAY\000" +.LASF338: + .ascii "net_null_ethaddr\000" +.LASF267: + .ascii "env_valid\000" +.LASF34: + .ascii "parent\000" +.LASF166: + .ascii "UCLASS_PCI_EMUL\000" +.LASF38: + .ascii "parent_priv\000" +.LASF396: + .ascii "OTP_NS\000" +.LASF243: + .ascii "UCLASS_CHARGE_DISPLAY\000" +.LASF308: + .ascii "load_addr\000" +.LASF134: + .ascii "fit_hdr_os\000" +.LASF90: + .ascii "_datarelrolocal_start_ofs\000" +.LASF415: + .ascii "timeout\000" +.LASF259: + .ascii "addr\000" +.LASF400: + .ascii "read\000" +.LASF8: + .ascii "unsigned int\000" +.LASF16: + .ascii "ushort\000" +.LASF313: + .ascii "eth_device\000" +.LASF402: + .ascii "ioctl\000" +.LASF421: + .ascii "dev_read_u32_default\000" +.LASF281: + .ascii "ufdt_blob\000" +.LASF362: + .ascii "priv_auto_alloc_size\000" +.LASF289: + .ascii "malloc_limit\000" +.LASF209: + .ascii "UCLASS_PMIC\000" +.LASF130: + .ascii "legacy_hdr_os\000" +.LASF99: + .ascii "off_dt_strings\000" +.LASF305: + .ascii "monitor_flash_len\000" +.LASF194: + .ascii "UCLASS_MISC\000" +.LASF67: + .ascii "bi_memsize\000" +.LASF24: + .ascii "image_base\000" +.LASF227: + .ascii "UCLASS_SYSRESET\000" +.LASF375: + .ascii "current\000" +.LASF181: + .ascii "UCLASS_FIRMWARE\000" +.LASF191: + .ascii "UCLASS_LPC\000" +.LASF413: + .ascii "offset\000" +.LASF187: + .ascii "UCLASS_IDE\000" +.LASF399: + .ascii "misc_ops\000" +.LASF297: + .ascii "phandle\000" +.LASF363: + .ascii "platdata_auto_alloc_size\000" +.LASF389: + .ascii "per_device_platdata_auto_alloc_size\000" +.LASF156: + .ascii "bootm_headers_t\000" +.LASF73: + .ascii "bi_arm_freq\000" +.LASF215: + .ascii "UCLASS_REMOTEPROC\000" +.LASF318: + .ascii "recv\000" +.LASF126: + .ascii "type\000" +.LASF137: + .ascii "fit_hdr_rd\000" +.LASF266: + .ascii "env_addr\000" +.LASF72: + .ascii "bi_sramsize\000" +.LASF278: + .ascii "uclass_root\000" +.LASF180: + .ascii "UCLASS_GPIO\000" +.LASF210: + .ascii "UCLASS_PWM\000" +.LASF58: + .ascii "long double\000" +.LASF268: + .ascii "ram_top\000" +.LASF295: + .ascii "console_evt\000" +.LASF146: + .ascii "rd_start\000" +.LASF211: + .ascii "UCLASS_POWER_DOMAIN\000" +.LASF214: + .ascii "UCLASS_REGULATOR\000" +.LASF310: + .ascii "save_size\000" +.LASF172: + .ascii "UCLASS_CLK\000" +.LASF31: + .ascii "uclass_platdata\000" +.LASF419: + .ascii "dev_get_platdata\000" +.LASF315: + .ascii "iobase\000" +.LASF89: + .ascii "_datarel_start_ofs\000" +.LASF256: + .ascii "pre_serial\000" +.LASF119: + .ascii "ih_name\000" +.LASF115: + .ascii "ih_os\000" +.LASF153: + .ascii "cmdline_end\000" +.LASF335: + .ascii "net_rx_packet\000" +.LASF249: + .ascii "LOGF_MAX_CATEGORIES\000" +.LASF280: + .ascii "fdt_blob\000" +.LASF378: + .ascii "udevice_id\000" +.LASF51: + .ascii "size\000" +.LASF10: + .ascii "long long unsigned int\000" +.LASF387: + .ascii "destroy\000" +.LASF107: + .ascii "image_header\000" +.LASF367: + .ascii "length\000" +.LASF20: + .ascii "__be32\000" +.LASF68: + .ascii "bi_flashstart\000" +.LASF136: + .ascii "fit_noffset_os\000" +.LASF195: + .ascii "UCLASS_MMC\000" +.LASF320: + .ascii "write_hwaddr\000" +.LASF248: + .ascii "UCLASS_INVALID\000" +.LASF233: + .ascii "UCLASS_USB_HUB\000" +.LASF361: + .ascii "child_post_remove\000" +.LASF41: + .ascii "sibling_node\000" +.LASF284: + .ascii "of_root\000" +.LASF409: + .ascii "rockchip_secure_otp_v2_ofdata_to_platdata\000" +.LASF414: + .ascii "data_temp\000" +.LASF57: + .ascii "flash_info\000" +.LASF101: + .ascii "version\000" +.LASF319: + .ascii "halt\000" +.LASF62: + .ascii "region\000" +.LASF105: + .ascii "size_dt_struct\000" +.LASF398: + .ascii "EFUSE_NS\000" +.LASF276: + .ascii "dm_root\000" +.LASF294: + .ascii "sys_start_tick\000" +.LASF299: + .ascii "properties\000" +.LASF410: + .ascii "rockchip_secure_otp_v2_ioctl\000" +.LASF197: + .ascii "UCLASS_MTD\000" +.LASF94: + .ascii "fdt32_t\000" +.LASF275: + .ascii "new_gd\000" +.LASF199: + .ascii "UCLASS_NORTHBRIDGE\000" +.LASF78: + .ascii "bi_enetaddr\000" +.LASF302: + .ascii "mtd_info\000" +.LASF359: + .ascii "child_post_bind\000" +.LASF311: + .ascii "in_addr\000" +.LASF336: + .ascii "net_rx_packet_len\000" +.LASF316: + .ascii "init\000" +.LASF306: + .ascii "__dtb_dt_begin\000" +.LASF216: + .ascii "UCLASS_RESET\000" +.LASF139: + .ascii "fit_noffset_rd\000" +.LASF170: + .ascii "UCLASS_AHCI\000" +.LASF12: + .ascii "phys_size_t\000" +.LASF27: + .ascii "driver\000" +.LASF88: + .ascii "FIQ_STACK_START\000" +.LASF154: + .ascii "verify\000" +.LASF370: + .ascii "ofnode\000" +.LASF28: + .ascii "name\000" +.LASF202: + .ascii "UCLASS_PANEL_BACKLIGHT\000" +.LASF229: + .ascii "UCLASS_TIMER\000" +.LASF224: + .ascii "UCLASS_SPI_FLASH\000" +.LASF265: + .ascii "have_console\000" +.LASF81: + .ascii "bi_busfreq\000" +.LASF6: + .ascii "short int\000" +.LASF208: + .ascii "UCLASS_PINCTRL\000" +.LASF218: + .ascii "UCLASS_RAMDISK\000" +.LASF165: + .ascii "UCLASS_I2C_EMUL\000" +.LASF223: + .ascii "UCLASS_SPMI\000" +.LASF356: + .ascii "remove\000" +.LASF162: + .ascii "UCLASS_TEST_BUS\000" +.LASF309: + .ascii "save_addr\000" +.LASF364: + .ascii "per_child_auto_alloc_size\000" +.LASF290: + .ascii "malloc_ptr\000" +.LASF405: + .ascii "secure_conf_base\000" +.LASF151: + .ascii "initrd_end\000" +.LASF383: + .ascii "pre_unbind\000" +.LASF258: + .ascii "baudrate\000" +.LASF91: + .ascii "_datarellocal_start_ofs\000" +.LASF40: + .ascii "child_head\000" +.LASF250: + .ascii "arch_global_data\000" +.LASF418: + .ascii "offset_temp\000" +.LASF247: + .ascii "UCLASS_COUNT\000" +.LASF263: + .ascii "pci_clk\000" +.LASF49: + .ascii "block_drvr\000" +.LASF53: + .ascii "flash_id\000" +.LASF246: + .ascii "UCLASS_CRYPTO\000" +.LASF296: + .ascii "device_node\000" +.LASF270: + .ascii "ram_size\000" +.LASF145: + .ascii "fit_noffset_setup\000" +.LASF106: + .ascii "working_fdt\000" +.LASF279: + .ascii "fdt_blob_kern\000" +.LASF328: + .ascii "net_root_path\000" +.LASF178: + .ascii "UCLASS_DMA\000" +.LASF86: + .ascii "bd_t\000" +.LASF312: + .ascii "s_addr\000" +.LASF411: + .ascii "request\000" +.LASF385: + .ascii "post_probe\000" +.LASF337: + .ascii "net_bcast_ethaddr\000" +.LASF83: + .ascii "bi_boot_params\000" +.LASF19: + .ascii "uint32_t\000" +.LASF373: + .ascii "mem_malloc_brk\000" +.LASF323: + .ascii "net_gateway\000" +.LASF425: + .ascii "GNU C11 6.3.1 20170404 -mthumb -mthumb-interwork -m" + .ascii "abi=aapcs-linux -mno-unaligned-access -mfloat-abi=s" + .ascii "oft -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16" + .ascii " -mtls-dialect=gnu -g -Os -fno-builtin -ffreestandi" + .ascii "ng -fshort-wchar -fno-stack-protector -fno-delete-n" + .ascii "ull-pointer-checks -fstack-usage -ffunction-section" + .ascii "s -fdata-sections -fno-common -ffixed-r9\000" +.LASF66: + .ascii "bi_memstart\000" +.LASF392: + .ascii "DECOM_LZ4\000" +.LASF237: + .ascii "UCLASS_VIDEO_CONSOLE\000" +.LASF322: + .ascii "eth_current\000" +.LASF358: + .ascii "ofdata_to_platdata\000" +.LASF64: + .ascii "reserved\000" +.LASF430: + .ascii "free\000" +.LASF85: + .ascii "bi_dram\000" +.LASF2: + .ascii "short unsigned int\000" +.LASF96: + .ascii "magic\000" +.LASF143: + .ascii "fit_hdr_setup\000" +.LASF132: + .ascii "legacy_hdr_valid\000" +.LASF60: + .ascii "base\000" +.LASF219: + .ascii "UCLASS_RTC\000" +.LASF251: + .ascii "timer_rate_hz\000" +.LASF52: + .ascii "sector_count\000" +.LASF118: + .ascii "ih_comp\000" +.LASF382: + .ascii "post_bind\000" +.LASF357: + .ascii "unbind\000" +.LASF148: + .ascii "ft_addr\000" +.LASF4: + .ascii "uchar\000" +.LASF149: + .ascii "ft_len\000" +.LASF47: + .ascii "next\000" +.LASF380: + .ascii "data\000" +.LASF198: + .ascii "UCLASS_NOP\000" +.LASF144: + .ascii "fit_uname_setup\000" +.LASF48: + .ascii "prev\000" +.LASF203: + .ascii "UCLASS_PCH\000" +.LASF204: + .ascii "UCLASS_PCI\000" +.LASF324: + .ascii "net_netmask\000" +.LASF33: + .ascii "driver_data\000" +.LASF87: + .ascii "IRQ_STACK_START\000" +.LASF169: + .ascii "UCLASS_ADC\000" +.LASF164: + .ascii "UCLASS_SPI_EMUL\000" +.LASF255: + .ascii "tlb_size\000" +.LASF141: + .ascii "fit_uname_fdt\000" + .ident "GCC: (Linaro GCC 6.3-2017.05) 6.3.1 20170404" + .section .note.GNU-stack,"",%progbits diff --git a/drivers/misc/rockchip_decompress.c b/drivers/misc/rockchip_decompress.c index 84849ff852..90553a4260 100644 --- a/drivers/misc/rockchip_decompress.c +++ b/drivers/misc/rockchip_decompress.c @@ -63,6 +63,7 @@ DECLARE_GLOBAL_DATA_PTR; #define DECOM_GZIP_MODE BIT(4) #define DECOM_ZLIB_MODE BIT(5) #define DECOM_DEFLATE_MODE BIT(0) +#define DECOM_LZ4_MODE 0 #define DECOM_ENABLE 0x1 #define DECOM_DISABLE 0x0 @@ -92,17 +93,17 @@ static int rockchip_decom_start(struct udevice *dev, void *buf) writel(0x00800080, priv->soft_reset_base); writel(0x00800000, priv->soft_reset_base); - if (param->mode == LZ4_MOD) + if (param->mode == DECOM_LZ4) writel(LZ4_CONT_CSUM_CHECK_EN | LZ4_HEAD_CSUM_CHECK_EN | LZ4_BLOCK_CSUM_CHECK_EN | - LZ4_MOD, priv->base + DECOM_CTRL); + DECOM_LZ4_MODE, priv->base + DECOM_CTRL); - if (param->mode == GZIP_MOD) + if (param->mode == DECOM_GZIP) writel(DECOM_DEFLATE_MODE | DECOM_GZIP_MODE, priv->base + DECOM_CTRL); - if (param->mode == ZLIB_MOD) + if (param->mode == DECOM_ZLIB) writel(DECOM_DEFLATE_MODE | DECOM_ZLIB_MODE, priv->base + DECOM_CTRL); @@ -145,7 +146,7 @@ static int rockchip_decom_done_poll(struct udevice *dev) static int rockchip_decom_ability(void) { - return GZIP_MOD; + return DECOM_GZIP; } /* Caller must fill in param @buf which represent struct decom_param */ diff --git a/drivers/mtd/nand/raw/rockchip_nand_spl.c b/drivers/mtd/nand/raw/rockchip_nand_spl.c index 7cf318141d..a1e2c26e64 100644 --- a/drivers/mtd/nand/raw/rockchip_nand_spl.c +++ b/drivers/mtd/nand/raw/rockchip_nand_spl.c @@ -5,6 +5,7 @@ */ #include +#include #include #include #include @@ -80,6 +81,8 @@ struct rk_nand { u8 chipnr; u8 id[5]; u8 *databuf; + struct udevice *dev; + struct mtd_info *mtd; }; struct rk_nand *g_rk_nand; @@ -248,10 +251,175 @@ static void read_flash_id(struct rk_nand *rknand, uint8_t *id) id[3] = readb(bank_base); id[4] = readb(bank_base); rockchip_nand_select_chip(rknand->regs, -1); - printf("%s %x %x %x %x %x\n", __func__, id[0], id[1], id[2], id[3], - id[4]); + if (id[0] != 0xFF && id[0] != 0x00) + printf("NAND:%x %x\n", id[0], id[1]); } +#ifdef CONFIG_NAND_ROCKCHIP_DT +static const struct udevice_id rockchip_nandc_ids[] = { + { .compatible = "rockchip,rk-nandc" }, + { } +}; + +static int spl_nand_block_isbad(struct mtd_info *mtd, loff_t ofs) +{ + return is_badblock(ofs / CONFIG_SYS_NAND_PAGE_SIZE); +} + +static int spl_nand_read_page(struct mtd_info *mtd, loff_t from, size_t len, + size_t *retlen, u_char *buf) +{ + int read_size, offset, read_len; + unsigned int page; + unsigned int max_pages = CONFIG_SYS_NAND_SIZE / + CONFIG_SYS_NAND_PAGE_SIZE; + + /* Convert to page number */ + page = from / CONFIG_SYS_NAND_PAGE_SIZE; + offset = from & (CONFIG_SYS_NAND_PAGE_SIZE - 1); + read_len = len; + *retlen = 0; + + while (read_len) { + read_size = CONFIG_SYS_NAND_PAGE_SIZE - offset; + if (read_size > read_len) + read_size = read_len; + if (offset || read_size < CONFIG_SYS_NAND_PAGE_SIZE) { + if (nandc_read_page(page, g_rk_nand->databuf) < 0) + return -EIO; + memcpy(buf, g_rk_nand->databuf + offset, read_size); + offset = 0; + } else { + if (nandc_read_page(page, buf) < 0) + return -EIO; + } + page++; + read_len -= read_size; + buf += read_size; + if (page >= max_pages) + return -EIO; + } + + *retlen = len; + + return 0; +} + +static int rockchip_nandc_probe(struct udevice *dev) +{ + const void *blob = gd->fdt_blob; + struct rk_nand *rknand = dev_get_priv(dev); + struct mtd_info *mtd = dev_get_uclass_priv(dev); + fdt_addr_t regs; + int ret = -ENODEV; + int node; + + g_rk_nand = rknand; + rknand->dev = dev; + + node = fdtdec_next_compatible(blob, 0, COMPAT_ROCKCHIP_NANDC); + + if (node < 0) { + printf("Nand node not found\n"); + return -ENODEV; + } + + if (!fdtdec_get_is_enabled(blob, node)) { + debug("Nand disabled in device tree\n"); + return -ENODEV; + } + + regs = fdt_get_base_address(blob, node); + if (!regs) { + debug("Nand address not found\n"); + return -ENODEV; + } + + rknand->regs = (void *)regs; + + nandc_init(g_rk_nand); + read_flash_id(g_rk_nand, g_rk_nand->id); + + if (g_rk_nand->id[0] == g_rk_nand->id[1]) + return -ENODEV; + + if (g_rk_nand->id[1] == 0xA1 || g_rk_nand->id[1] == 0xF1 || + g_rk_nand->id[1] == 0xD1 || g_rk_nand->id[1] == 0xAA || + g_rk_nand->id[1] == 0xDA || g_rk_nand->id[1] == 0xAC || + g_rk_nand->id[1] == 0xDC || g_rk_nand->id[1] == 0xA3 || + g_rk_nand->id[1] == 0xD3 || g_rk_nand->id[1] == 0x95 || + g_rk_nand->id[1] == 0x48) { + g_rk_nand->chipnr = 1; + g_rk_nand->databuf = kzalloc(CONFIG_SYS_NAND_PAGE_SIZE, + GFP_KERNEL); + if (!g_rk_nand) + return -ENOMEM; + mtd->_block_isbad = spl_nand_block_isbad; + mtd->_read = spl_nand_read_page; + mtd->size = CONFIG_SYS_NAND_SIZE; + mtd->writesize = CONFIG_SYS_NAND_PAGE_SIZE; + mtd->type = MTD_NANDFLASH; + mtd->dev = rknand->dev; + mtd->priv = rknand; + add_mtd_device(mtd); + mtd->name = "rk-nand"; + rknand->mtd = mtd; + ret = 0; + } + + return ret; +} + +static int rockchip_nandc_bind(struct udevice *udev) +{ + int ret = 0; + +#ifdef CONFIG_MTD_BLK + struct udevice *bdev; + + ret = blk_create_devicef(udev, "mtd_blk", "blk", IF_TYPE_MTD, + BLK_MTD_NAND, 512, 0, &bdev); + if (ret) + printf("Cannot create block device\n"); +#endif + return ret; +} + +U_BOOT_DRIVER(rk_nandc_v6) = { + .name = "rk_nandc_v6", + .id = UCLASS_MTD, + .of_match = rockchip_nandc_ids, + .bind = rockchip_nandc_bind, + .probe = rockchip_nandc_probe, + .priv_auto_alloc_size = sizeof(struct rk_nand), +}; + +void board_nand_init(void) +{ + struct udevice *dev; + int ret; + + ret = uclass_get_device_by_driver(UCLASS_MTD, + DM_GET_DRIVER(rk_nandc_v6), + &dev); + if (ret && ret != -ENODEV) + pr_err("Failed to initialize NAND controller. (error %d)\n", + ret); +} + +int nand_spl_load_image(u32 offs, u32 size, void *buf) +{ + return -EIO; +} + +void nand_init(void){}; + +int rk_nand_init(void) +{ + return -ENODEV; +} + +#else void board_nand_init(void) { const void *blob = gd->fdt_blob; @@ -271,18 +439,18 @@ void board_nand_init(void) if (node < 0) { printf("Nand node not found\n"); - goto err; + return; } if (!fdtdec_get_is_enabled(blob, node)) { debug("Nand disabled in device tree\n"); - goto err; + return; } regs = fdt_get_base_address(blob, node); - if (regs == FDT_ADDR_T_NONE) { + if (!regs) { debug("Nand address not found\n"); - goto err; + return; } g_rk_nand = kzalloc(sizeof(*g_rk_nand), GFP_KERNEL); @@ -290,12 +458,24 @@ void board_nand_init(void) g_rk_nand->databuf = kzalloc(CONFIG_SYS_NAND_PAGE_SIZE, GFP_KERNEL); nandc_init(g_rk_nand); read_flash_id(g_rk_nand, g_rk_nand->id); - if (g_rk_nand->id[0] != 0xFF && g_rk_nand->id[1] != 0xFF && - g_rk_nand->id[0] != 0x00 && g_rk_nand->id[1] != 0x00) + + if (g_rk_nand->id[0] == g_rk_nand->id[1]) + goto err; + + if (g_rk_nand->id[1] == 0xA1 || g_rk_nand->id[1] == 0xF1 || + g_rk_nand->id[1] == 0xD1 || g_rk_nand->id[1] == 0xAA || + g_rk_nand->id[1] == 0xDA || g_rk_nand->id[1] == 0xAC || + g_rk_nand->id[1] == 0xDC || g_rk_nand->id[1] == 0xA3 || + g_rk_nand->id[1] == 0xD3 || g_rk_nand->id[1] == 0x95 || + g_rk_nand->id[1] == 0x48) { g_rk_nand->chipnr = 1; - return; + return; + } + err: + kfree(g_rk_nand->databuf); kfree(g_rk_nand); + g_rk_nand = NULL; } int nand_spl_load_image(u32 offs, u32 size, void *buf) @@ -351,5 +531,7 @@ int rk_nand_init(void) else return -ENODEV; } +#endif void nand_deselect(void) {} + diff --git a/drivers/sysreset/Makefile b/drivers/sysreset/Makefile index 2b66ed12fb..0aa37f6b30 100644 --- a/drivers/sysreset/Makefile +++ b/drivers/sysreset/Makefile @@ -8,9 +8,6 @@ obj-$(CONFIG_$(SPL_TPL_)SYSRESET) += sysreset-uclass.o ifndef CONFIG_SPL_BUILD obj-$(CONFIG_SYSRESET) += sysreset-syscon-reboot.o -endif - -ifndef CONFIG_TPL_BUILD obj-$(CONFIG_SYSRESET_PSCI) += sysreset_psci.o endif diff --git a/drivers/sysreset/sysreset-uclass.c b/drivers/sysreset/sysreset-uclass.c index 43d433ead5..6c3bb8fedb 100644 --- a/drivers/sysreset/sysreset-uclass.c +++ b/drivers/sysreset/sysreset-uclass.c @@ -34,7 +34,7 @@ int sysreset_walk(enum sysreset_t type) * Use psci sysreset as primary for rockchip platforms, * "rockchip_reset" is applied if PSCI is disabled. */ -#if !defined(CONFIG_TPL_BUILD) && \ +#if !defined(CONFIG_SPL_BUILD) && \ defined(CONFIG_ARCH_ROCKCHIP) && defined(CONFIG_SYSRESET_PSCI) ret = uclass_get_device_by_driver(UCLASS_SYSRESET, DM_GET_DRIVER(psci_sysreset), &dev); diff --git a/include/misc.h b/include/misc.h index 64468bf356..b817f61e24 100644 --- a/include/misc.h +++ b/include/misc.h @@ -17,6 +17,14 @@ #define IOCTL_REQ_POLL _IO('m', 0x03) #define IOCTL_REQ_CAPABILITY _IO('m', 0x04) +enum misc_mode { + DECOM_LZ4 = BIT(0), + DECOM_GZIP = BIT(1), + DECOM_ZLIB = BIT(2), + OTP_S = BIT(3), + OTP_NS = BIT(4), +}; + /* * Read the device to buffer, optional. * diff --git a/include/misc_decompress.h b/include/misc_decompress.h index dd89da1744..121af0ae9a 100644 --- a/include/misc_decompress.h +++ b/include/misc_decompress.h @@ -6,17 +6,11 @@ #ifndef _MISC_DECOMPRESS_H_ #define _MISC_DECOMPRESS_H_ -enum decom_mod { - LZ4_MOD, - GZIP_MOD, - ZLIB_MOD, -}; - struct decom_param { unsigned long addr_src; unsigned long addr_dst; unsigned long size; - enum decom_mod mode; + enum misc_mode mode; }; struct udevice *misc_decompress_get_device(u32 capability); diff --git a/include/misc_otp.h b/include/misc_otp.h new file mode 100644 index 0000000000..7d9b2288a6 --- /dev/null +++ b/include/misc_otp.h @@ -0,0 +1,13 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * (C) Copyright 2020 Rockchip Electronics Co., Ltd + */ + +#ifndef __MISC_OTP_H__ +#define __MISC_OTP_H__ + +struct udevice *misc_otp_get_device(u32 capability); +int misc_otp_read(struct udevice *dev, int offset, void *buf, int size); +int misc_otp_write(struct udevice *dev, int offset, const void *buf, int size); + +#endif diff --git a/include/rockchip-otp-v2.h b/include/rockchip-otp-v2.h new file mode 100644 index 0000000000..4fc143cc55 --- /dev/null +++ b/include/rockchip-otp-v2.h @@ -0,0 +1,60 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * (C) Copyright 2019 Rockchip Electronics Co., Ltd + */ + +#ifndef _ROCKCHIP_OTP_V2_H_ +#define _ROCKCHIP_OTP_V2_H_ + +#define NVM_CEB 0x00 +#define NVM_RSTB 0x04 +#define NVM_TCSRST 0x08 +#define NVM_TCEW 0x0c +#define NVM_TRW 0x10 +#define NVM_TRS 0x14 +#define NVM_ST 0x18 +#define NVM_RADDR 0x1c +#define NVM_RSTART 0x20 +#define NVM_RDATA 0x24 +#define NVM_TRWH 0x28 +#define NVM_TREW 0x2c +#define NVM_READ_ST 0x30 +#define NVM_PRADDR 0x34 +#define NVM_PRLEN 0x38 +#define NVM_PRDATA 0x3c +#define NVM_FAILTIME 0x40 +#define NVM_PRSTART 0x44 +#define NVM_PRSTATE 0x48 +#define NVM_PRSUCCESS 0x4c +#define NVM_TAS 0x50 +#define NVM_TWWL 0x54 +#define NVM_TDLEH 0x58 +#define NVM_TDPD 0x5c +#define NVM_TPES 0x60 +#define NVM_TCPS 0x64 +#define NVM_TPW 0x68 +#define NVM_TCPH 0x6c +#define NVM_TPEH 0x70 +#define NVM_TPTPD 0x74 +#define NVM_TPGMAS 0x78 +#define OTPC_INT_ST 0x7c +#define NVM_INT_EN 0x80 +#define OTP_PROG_MASK_BASE 0x0200 +#define OTP_READ_MASK_BASE 0x0300 +#define OTP_MASK_BYPASS 0x0400 +#define OTP_MASK_INT_CON 0x0404 +#define OTP_MASK_INT_STATUS 0x0408 +#define OTP_MASK_STATUS 0x040C +#define OTP_MASK_PROG_LOCK 0x0410 +#define OTP_MASK_READ_LOCK 0x0414 +#define OTP_MASK_BYPASS_LOCK 0x0418 +#define OTP_SLICE_LOCK 0x041c +#define OTP_SLICE 0x0420 + +struct rockchip_otp_v2_platdata { + void __iomem *base; + unsigned long secure_conf_base; +}; + +#endif +