diff --git a/drivers/rk_nand/rk_zftl_arm64.S b/drivers/rk_nand/rk_zftl_arm64.S index efe057763981..f1af25e7078a 100644 --- a/drivers/rk_nand/rk_zftl_arm64.S +++ b/drivers/rk_nand/rk_zftl_arm64.S @@ -5,7 +5,7 @@ * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. - * date: 2018-06-15 + * date: 2018-07-18 * function: rk ftl v5 for rockchip soc base on arm v8 to support 3D/2D * TLC and MLC. */ @@ -1528,7 +1528,7 @@ flash_wait_device_ready_raw: adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 599 + mov w2, 602 add x1, x1, 240 add x0, x0, :lo12:.LC0 bl printk @@ -1960,7 +1960,7 @@ flash_start_page_read: adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 741 + mov w2, 744 add x1, x1, 688 add x0, x0, :lo12:.LC0 bl printk @@ -2039,7 +2039,7 @@ flash_start_plane_read: adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 836 + mov w2, 839 add x1, x1, 712 add x0, x0, :lo12:.LC0 bl printk @@ -2152,84 +2152,91 @@ flash_set_interface_mode: stp x29, x30, [sp, -80]! add x29, sp, 0 stp x21, x22, [sp,32] - adrp x21, .LANCHOR0 - adrp x22, .LC38 - add x21, x21, :lo12:.LANCHOR0 - add x22, x22, :lo12:.LC38 + adrp x22, .LANCHOR0 + mov x21, 0 stp x23, x24, [sp,48] - stp x19, x20, [sp,16] + add x22, x22, :lo12:.LANCHOR0 + adrp x23, .LC38 stp x25, x26, [sp,64] - mov w24, w0 - mov x20, 0 - add x25, x21, 748 - adrp x23, .LANCHOR2 -.L408: - lsl x0, x20, 3 - ldr x19, [x21,536] - ldrb w1, [x0,x25] - cmp w1, 44 - cset w26, eq - cmp w1, 69 - cset w2, eq - cmp w1, 152 - cset w0, eq - adrp x1, .LANCHOR0 - orr w0, w2, w0 - cbnz w0, .L409 - cbz w26, .L399 -.L409: - add x1, x1, :lo12:.LANCHOR0 - cmp w24, 1 - ldrb w1, [x1,780] - bne .L401 - tbz x1, 0, .L399 - ldr w0, [x23,#:lo12:.LANCHOR2] - tbz x0, 12, .L402 + stp x19, x20, [sp,16] + mov w25, w0 + add x26, x22, 748 + adrp x24, .LANCHOR2 + add x23, x23, :lo12:.LC38 +.L411: + lsl x0, x21, 3 + ldr x20, [x22,536] + ldrb w19, [x0,x26] + adrp x0, .LANCHOR0 + cmp w19, 152 + beq .L399 + cmp w19, 69 + beq .L399 + cmp w19, 44 + beq .L399 + cmp w19, 137 + bne .L400 +.L399: + add x0, x0, :lo12:.LANCHOR0 + cmp w25, 1 + ldrb w1, [x0,780] + bne .L402 + tbz x1, 0, .L400 + ldr w0, [x24,#:lo12:.LANCHOR2] + tbz x0, 12, .L403 adrp x0, .LC37 add x0, x0, :lo12:.LC37 bl printk -.L402: - add x1, x19, x20, lsl 8 +.L403: + add x1, x20, x21, lsl 8 mov w0, 239 + cmp w19, 137 str w0, [x1,2056] + beq .L412 + cmp w19, 44 + bne .L404 +.L412: mov w0, 1 - cbz w26, .L403 str w0, [x1,2052] mov w0, 5 - b .L426 -.L403: - mov w2, 128 - str w2, [x1,2052] -.L426: - str w0, [x1,2048] - b .L407 -.L401: - tbz x1, 2, .L399 - ldr w0, [x23,#:lo12:.LANCHOR2] - tbz x0, 12, .L405 - mov x0, x22 + b .L431 +.L404: + mov w0, 128 + str w0, [x1,2052] + mov w0, 1 + b .L431 +.L402: + tbz x1, 2, .L400 + ldr w0, [x24,#:lo12:.LANCHOR2] + tbz x0, 12, .L407 + mov x0, x23 bl printk -.L405: - add x1, x19, x20, lsl 8 +.L407: + add x1, x20, x21, lsl 8 mov w0, 239 + cmp w19, 137 str w0, [x1,2056] - cbz w26, .L406 + beq .L413 + cmp w19, 44 + cset w0, eq + cbz w0, .L408 +.L413: mov w0, 1 str w0, [x1,2052] mov w0, 35 - b .L426 -.L406: - mov w0, 128 - str w0, [x1,2052] - str w26, [x1,2048] -.L407: + b .L431 +.L408: + mov w2, 128 + str w2, [x1,2052] +.L431: + str w0, [x1,2048] str wzr, [x1,2048] str wzr, [x1,2048] str wzr, [x1,2048] -.L399: - add x20, x20, 1 - cmp x20, 4 - bne .L408 +.L400: + add x21, x21, 1 + cmp x21, 4 + bne .L411 bl nandc_wait_flash_ready mov w0, 0 ldp x19, x20, [sp,16] @@ -2301,7 +2308,7 @@ flash_read_id: sub w0, w2, #1 uxtb w0, w0 cmp w0, 253 - bhi .L428 + bhi .L434 adrp x0, .LC39 ldrb w3, [x19,1] ldrb w4, [x19,2] @@ -2311,7 +2318,7 @@ flash_read_id: ldrb w6, [x19,4] ldrb w7, [x19,5] bl printk -.L428: +.L434: ldp x19, x20, [sp,16] ldr x21, [sp,32] ldp x29, x30, [sp], 48 @@ -2356,27 +2363,27 @@ flash_read_spare: .global sandisk_prog_test_bad_block .type sandisk_prog_test_bad_block, %function sandisk_prog_test_bad_block: - stp x29, x30, [sp, -64]! + stp x29, x30, [sp, -48]! adrp x2, .LANCHOR0+536 uxtb w0, w0 add x29, sp, 0 stp x19, x20, [sp,16] - adrp x20, .LANCHOR2 ldr x19, [x2,#:lo12:.LANCHOR0+536] - add x2, x20, :lo12:.LANCHOR2 - str x21, [sp,32] - ldrb w3, [x2,405] + adrp x2, .LANCHOR2 + add x3, x2, :lo12:.LANCHOR2 + mov x20, x2 sxtw x2, w0 add x2, x2, 8 + ldrb w3, [x3,405] add x2, x19, x2, lsl 8 - cbnz w3, .L445 + cbnz w3, .L447 mov w3, 162 -.L445: +.L447: ubfiz x0, x0, 8, 8 str w3, [x2,8] add x19, x19, x0 mov w0, 128 - str x1, [x29,56] + str x1, [x29,40] str w0, [x19,2056] and w0, w1, 255 str wzr, [x19,2052] @@ -2395,24 +2402,18 @@ sandisk_prog_test_bad_block: bl timer_delay_ns ldr w2, [x19,2048] mov w0, 5 - ldr x1, [x29,56] - ands w21, w2, w0 - beq .L434 + ands w19, w2, w0 + beq .L440 ldr w0, [x20,#:lo12:.LANCHOR2] - tbz x0, 12, .L434 + ldr x1, [x29,40] + tbz x0, 12, .L440 adrp x0, .LC40 add x0, x0, :lo12:.LC40 bl printk -.L434: - add x20, x20, :lo12:.LANCHOR2 - ldrb w0, [x20,406] - cbz w0, .L435 - str w0, [x19,2056] -.L435: - mov w0, w21 - ldr x21, [sp,32] +.L440: + mov w0, w19 ldp x19, x20, [sp,16] - ldp x29, x30, [sp], 64 + ldp x29, x30, [sp], 48 ret .size sandisk_prog_test_bad_block, .-sandisk_prog_test_bad_block .align 2 @@ -2440,44 +2441,44 @@ nandc_bch_sel: strb w0, [x1,724] cmp w2, 9 ldr x2, [x1,536] - bne .L448 + bne .L450 str w3, [x2,16] cmp w0, 70 mov w1, 0 - beq .L449 + beq .L451 cmp w0, 60 mov w1, 3 - beq .L449 + beq .L451 cmp w0, 40 mov w1, 2 csel w1, w1, w3, eq -.L449: +.L451: lsl w1, w1, 25 orr w1, w1, 1 str w1, [x2,32] - b .L447 -.L448: + b .L449 +.L450: str w3, [x2,8] cmp w0, 16 mov w1, 4096 - bne .L451 -.L454: - and w1, w1, -17 - b .L452 -.L451: - cmp w0, 24 bne .L453 - orr w1, w1, 16 - b .L452 +.L456: + and w1, w1, -17 + b .L454 .L453: + cmp w0, 24 + bne .L455 + orr w1, w1, 16 + b .L454 +.L455: cmp w0, 40 orr w1, w1, 262144 orr w1, w1, 16 - beq .L454 -.L452: + beq .L456 +.L454: orr w1, w1, 1 str w1, [x2,12] -.L447: +.L449: ret .size nandc_bch_sel, .-nandc_bch_sel .align 2 @@ -2501,7 +2502,7 @@ zftl_flash_resume: str w2, [x1,4] ldr x1, [x0,536] ldr w2, [x0,552] - bne .L462 + bne .L464 str w2, [x1,16] ldr w2, [x0,556] str w2, [x1,32] @@ -2513,8 +2514,8 @@ zftl_flash_resume: str w2, [x1,520] ldr w0, [x0,572] str w0, [x1,8] - b .L463 -.L462: + b .L465 +.L464: str w2, [x1,8] ldr w2, [x0,556] str w2, [x1,12] @@ -2526,18 +2527,18 @@ zftl_flash_resume: str w2, [x1,336] ldr w0, [x0,572] str w0, [x1,344] -.L463: +.L465: add x22, x20, :lo12:.LANCHOR0 mov x19, 0 add x23, x22, 748 mov w24, 2 -.L465: +.L467: lsl x0, x19, 3 ldrb w0, [x0,x23] sub w0, w0, #1 uxtb w0, w0 cmp w0, 253 - bhi .L464 + bhi .L466 uxtb w21, w19 mov w0, w21 bl flash_reset @@ -2545,13 +2546,13 @@ zftl_flash_resume: strb w24, [x19,x0] mov w0, w21 bl zftl_flash_enter_slc_mode -.L464: +.L466: add x19, x19, 1 cmp x19, 4 - bne .L465 + bne .L467 add x20, x20, :lo12:.LANCHOR0 ldrb w0, [x20,672] - cbz w0, .L466 + cbz w0, .L468 mov w0, 1 bl nandc_set_if_mode mov w0, w19 @@ -2561,7 +2562,7 @@ zftl_flash_resume: ldr w0, [x20,560] lsr w0, w0, 8 bl nandc_set_ddr_para -.L466: +.L468: adrp x0, .LANCHOR2+396 ldrb w0, [x0,#:lo12:.LANCHOR2+396] bl nandc_bch_sel @@ -2596,30 +2597,30 @@ nandc_iqr_wait_flash_ready: ldrb w1, [x19,516] ldr x0, [x19,536] cmp w1, 9 - bne .L473 + bne .L475 ldr w1, [x0,292] orr w1, w1, 2 str w1, [x0,292] ldr w1, [x0,288] orr w1, w1, 2 str w1, [x0,288] - b .L474 -.L473: + b .L476 +.L475: ldr w1, [x0,368] orr w1, w1, 2 str w1, [x0,368] ldr w1, [x0,364] orr w1, w1, 2 str w1, [x0,364] -.L474: +.L476: ldr w1, [x0] - tbnz x1, 9, .L475 + tbnz x1, 9, .L477 bl wait_for_nand_flash_ready - b .L472 -.L475: + b .L474 +.L477: mov w1, 1 bl nandc_irq_disable -.L472: +.L474: ldr x19, [sp,16] ldp x29, x30, [sp], 32 ret @@ -2642,16 +2643,16 @@ flash_erase_duplane_block: ldrb w0, [x0,633] mov w24, w3 cmp w0, w19 - bhi .L478 + bhi .L480 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 510 + mov w2, 513 add x1, x1, 736 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L478: +.L480: add x0, x20, :lo12:.LANCHOR0 add x19, x0, x19, sxtw ldrb w23, [x19,736] @@ -2661,24 +2662,24 @@ flash_erase_duplane_block: add x23, x23, 8 ldr w0, [x0,#:lo12:.LANCHOR2] add x23, x19, x23, lsl 8 - tbz x0, 4, .L479 + tbz x0, 4, .L481 adrp x0, .LC41 mov w1, w21 add x0, x0, :lo12:.LC41 mov w2, w22 mov w3, w24 bl printk -.L479: +.L481: bl nandc_wait_flash_ready mov w0, w21 bl nandc_cs mov w0, w21 - cbnz w25, .L480 + cbnz w25, .L482 bl zftl_flash_enter_slc_mode - b .L481 -.L480: + b .L483 +.L482: bl zftl_flash_exit_slc_mode -.L481: +.L483: ubfiz x4, x21, 8, 8 mov w0, 96 add x19, x19, x4 @@ -2692,7 +2693,7 @@ flash_erase_duplane_block: str w0, [x19,2052] ldrb w0, [x20,781] mov w20, 0 - cbnz w0, .L482 + cbnz w0, .L484 mov w0, 208 str w0, [x19,2056] mov w20, 5 @@ -2700,7 +2701,7 @@ flash_erase_duplane_block: mov x0, x23 bl flash_read_status and w20, w0, w20 -.L482: +.L484: mov w0, 96 str w0, [x19,2056] and w0, w24, 255 @@ -2723,12 +2724,12 @@ flash_erase_duplane_block: ldr x2, [x29,88] and w19, w2, w19 orr w19, w19, w20 - cbz w19, .L483 + cbz w19, .L485 adrp x0, .LC42 mov w1, w22 add x0, x0, :lo12:.LC42 bl printk -.L483: +.L485: mov w0, w19 ldr x25, [sp,64] ldp x19, x20, [sp,16] @@ -2755,16 +2756,16 @@ flash_erase_block_en: ldrb w0, [x0,633] and w23, w2, 2097151 cmp w0, w20 - bhi .L492 + bhi .L494 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 555 + mov w2, 558 add x1, x1, 768 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L492: +.L494: add x0, x19, :lo12:.LANCHOR0 add x20, x0, x20, sxtw ldrb w21, [x20,736] @@ -2774,23 +2775,23 @@ flash_erase_block_en: add x21, x21, 8 ldr w0, [x0,#:lo12:.LANCHOR2] add x21, x25, x21, lsl 8 - tbz x0, 4, .L493 + tbz x0, 4, .L495 adrp x0, .LC43 mov w1, w20 add x0, x0, :lo12:.LC43 mov w2, w22 bl printk -.L493: +.L495: bl nandc_wait_flash_ready mov w0, w20 bl nandc_cs mov w0, w20 - cbnz w24, .L494 + cbnz w24, .L496 bl zftl_flash_enter_slc_mode - b .L495 -.L494: + b .L497 +.L496: bl zftl_flash_exit_slc_mode -.L495: +.L497: ubfiz x3, x20, 8, 8 mov w0, 96 add x3, x25, x3 @@ -2812,7 +2813,7 @@ flash_erase_block_en: bl nandc_de_cs mov w3, 5 ands w20, w21, w3 - beq .L496 + beq .L498 add x19, x19, :lo12:.LANCHOR0 adrp x0, .LC44 add x0, x0, :lo12:.LC44 @@ -2820,7 +2821,7 @@ flash_erase_block_en: ldrh w1, [x19,2] udiv w1, w22, w1 bl printk -.L496: +.L498: mov w0, w20 ldr x25, [sp,64] ldp x19, x20, [sp,16] @@ -2860,28 +2861,28 @@ flash_erase_all: mov x21, x0 mul w20, w1, w20 uxth w20, w20 -.L505: +.L507: ldrb w0, [x23,633] cmp w0, w19 - bls .L509 + bls .L511 add x0, x23, x19, sxtw ldrb w24, [x0,736] mov w22, 0 -.L506: +.L508: cmp w20, w22, uxth - bls .L510 + bls .L512 add x0, x21, :lo12:.LANCHOR0 ldrh w1, [x0,2] mov w0, w24 mul w1, w22, w1 add w22, w22, 1 bl flash_erase_block - b .L506 -.L510: + b .L508 +.L512: add w19, w19, 1 uxth w19, w19 - b .L505 -.L509: + b .L507 +.L511: adrp x0, .LC45 mov w1, 0 add x0, x0, :lo12:.LC45 @@ -2927,7 +2928,7 @@ nandc_xfer_start: cmp w0, 9 ldr x3, [x29,88] ldr x2, [x29,80] - bne .L513 + bne .L515 ldr w0, [x4,292] ubfiz w19, w24, 1, 1 orr w19, w19, 8 @@ -2945,13 +2946,13 @@ nandc_xfer_start: and w19, w19, -17 bfi w19, w20, 22, 6 orr w19, w19, 128 - cbz w0, .L515 + cbz w0, .L517 ldrb w1, [x21,720] orr w0, w19, 512 cmp w1, wzr csel w19, w0, w19, ne - b .L515 -.L513: + b .L517 +.L515: ldr w0, [x4,368] ubfiz w19, w24, 1, 1 orr w19, w19, 8 @@ -2972,7 +2973,7 @@ nandc_xfer_start: orr w19, w19, 1024 and w19, w19, -17 bfi w19, w20, 22, 6 - cbz w24, .L527 + cbz w24, .L529 ldrb w0, [x21,724] ubfx x23, x23, 1, 7 mov w1, 64 @@ -2981,8 +2982,8 @@ nandc_xfer_start: add x23, x3, x23, lsl 2 csel w4, w1, w4, cc mov w1, 0 - b .L520 -.L515: + b .L522 +.L517: add x22, x22, :lo12:.LANCHOR0 ubfx x21, x19, 22, 6 mov x0, x2 @@ -3020,11 +3021,11 @@ nandc_xfer_start: str w19, [x3,16] orr w19, w19, 4 str w19, [x3,16] - b .L512 -.L520: + b .L514 +.L522: cmp x3, x23 add w0, w1, w4 - beq .L522 + beq .L524 ldrh w5, [x3,2] and x1, x1, 4294967292 ldr x6, [x21,680] @@ -3032,11 +3033,11 @@ nandc_xfer_start: orr w5, w7, w5, lsl 16 str w5, [x6,x1] mov w1, w0 - b .L520 -.L527: + b .L522 +.L529: ldr x1, [x21,680] str w0, [x1] -.L522: +.L524: add x22, x22, :lo12:.LANCHOR0 and w20, w20, 63 lsl w1, w20, 10 @@ -3069,7 +3070,7 @@ nandc_xfer_start: str w19, [x3,8] orr w19, w19, 4 str w19, [x3,8] -.L512: +.L514: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -3095,12 +3096,12 @@ nandc_set_seed: ldrb w2, [x0,516] ldr x0, [x0,536] cmp w2, 9 - bne .L530 + bne .L532 str w1, [x0,520] - b .L528 -.L530: + b .L530 +.L532: str w1, [x0,336] -.L528: +.L530: ret .size nandc_set_seed, .-nandc_set_seed .align 2 @@ -3116,24 +3117,24 @@ zftl_flash_de_init: add x20, x19, :lo12:.LANCHOR0 bl hynix_reconfig_rr_para ldrb w0, [x20,672] - cbz w0, .L535 + cbz w0, .L537 ldrb w0, [x20,780] - tbz x0, 0, .L535 + tbz x0, 0, .L537 mov w0, 1 bl flash_set_interface_mode mov w0, 1 bl nandc_set_if_mode strb wzr, [x20,672] -.L535: +.L537: add x19, x19, :lo12:.LANCHOR0 ldrb w0, [x19,720] - cbz w0, .L536 + cbz w0, .L538 mov w0, 0 strb wzr, [x19,720] bl nandc_set_seed mov w0, 1 strb w0, [x19,720] -.L536: +.L538: mov w0, 0 ldp x19, x20, [sp,16] ldp x29, x30, [sp], 32 @@ -3171,7 +3172,7 @@ buf_init: add x19, x19, 784 mov w21, 0 mov x22, x0 -.L549: +.L551: add x20, x22, :lo12:.LANCHOR0 uxtb w0, w21 add w1, w0, 1 @@ -3190,7 +3191,7 @@ buf_init: bl ftl_malloc str x0, [x19,-40] cmp w21, 32 - bne .L549 + bne .L551 strb w21, [x20,2834] mov w0, -1 strb wzr, [x20,2833] @@ -3208,7 +3209,7 @@ buf_reinit: mov w2, 0 add x1, x0, :lo12:.LANCHOR0 add x1, x1, 784 -.L552: +.L554: uxtb w3, w2 add w2, w2, 1 add w4, w3, 1 @@ -3218,7 +3219,7 @@ buf_reinit: strb wzr, [x1,2] add x1, x1, 64 str xzr, [x1,-48] - bne .L552 + bne .L554 add x0, x0, :lo12:.LANCHOR0 mov w1, -1 strb wzr, [x0,2833] @@ -3239,10 +3240,10 @@ buf_add_tail: mov x19, x1 ldrb w1, [x20] cmp w1, 255 - bne .L560 + bne .L562 ldrb w0, [x19,1] cmp w0, 255 - bne .L556 + bne .L558 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 @@ -3251,23 +3252,23 @@ buf_add_tail: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L556: +.L558: ldrb w0, [x19,1] strb w0, [x20] - b .L554 -.L560: + b .L556 +.L562: adrp x0, .LANCHOR0 add x0, x0, :lo12:.LANCHOR0 add x0, x0, 784 -.L561: +.L563: mov w20, w1 sbfiz x1, x1, 6, 32 ldrb w1, [x0,x1] cmp w1, 255 - bne .L561 + bne .L563 ldrb w0, [x19,1] cmp w0, 255 - bne .L558 + bne .L560 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 @@ -3276,14 +3277,14 @@ buf_add_tail: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L558: +.L560: adrp x0, .LANCHOR0 sbfiz x20, x20, 6, 32 add x0, x0, :lo12:.LANCHOR0 ldrb w1, [x19,1] add x0, x0, 784 strb w1, [x0,x20] -.L554: +.L556: ldp x19, x20, [sp,16] ldp x29, x30, [sp], 32 ret @@ -3324,22 +3325,22 @@ buf_free: and w1, w1, 8 uxtb w1, w1 strb w1, [x0,2] - cbz w1, .L564 + cbz w1, .L566 ldr w1, [x0,36] cmn w1, #1 - beq .L564 + beq .L566 mov x1, x0 add x0, x19, :lo12:.LANCHOR0 add x0, x0, 2833 bl buf_add_tail - b .L565 -.L564: + b .L567 +.L566: add x1, x19, :lo12:.LANCHOR0 ldrb w2, [x1,2833] strb w2, [x0] ldrb w0, [x0,1] strb w0, [x1,2833] -.L565: +.L567: add x19, x19, :lo12:.LANCHOR0 ldrb w0, [x19,2834] add w0, w0, 1 @@ -3361,15 +3362,15 @@ buf_alloc: uxtb w21, w0 mov x19, x1 ldrb w0, [x20,2834] - cbz w0, .L573 -.L576: + cbz w0, .L575 +.L578: add x1, x19, :lo12:.LANCHOR0 add x0, x1, 784 ldrb w2, [x1,2833] add x0, x0, x2, lsl 6 - cbz w21, .L574 - b .L575 -.L573: + cbz w21, .L576 + b .L577 +.L575: adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 @@ -3379,15 +3380,15 @@ buf_alloc: bl printk bl dump_stack ldrb w1, [x20,2834] - cbnz w1, .L576 -.L578: + cbnz w1, .L578 +.L580: mov x0, 0 - b .L577 -.L574: + b .L579 +.L576: ldrb w1, [x1,2834] cmp w1, 1 - beq .L578 -.L575: + beq .L580 +.L577: add x1, x19, :lo12:.LANCHOR0 lsl x2, x2, 6 add x4, x1, 784 @@ -3407,7 +3408,7 @@ buf_alloc: strb wzr, [x3,56] str w1, [x3,36] strb wzr, [x3,57] -.L577: +.L579: ldp x19, x20, [sp,16] ldr x21, [sp,32] ldp x29, x30, [sp], 48 @@ -3420,33 +3421,33 @@ buf_remove_buf: ldrb w4, [x1,1] ldrb w2, [x0] cmp w4, w2 - bne .L585 + bne .L587 ldrb w1, [x1] strb w1, [x0] - b .L589 -.L585: + b .L591 +.L587: adrp x0, .LANCHOR0 add x0, x0, :lo12:.LANCHOR0 add x0, x0, 784 -.L587: +.L589: cmp w2, 255 - beq .L590 + beq .L592 mov w3, w2 sbfiz x2, x2, 6, 32 ldrb w2, [x0,x2] cmp w2, w4 - bne .L587 + bne .L589 sbfiz x3, x3, 6, 32 ldrb w2, [x1] strb w2, [x0,x3] mov w0, -1 strb w0, [x1] -.L589: +.L591: mov w0, 1 - b .L584 -.L590: + b .L586 +.L592: mov w0, 0 -.L584: +.L586: ret .size buf_remove_buf, .-buf_remove_buf .align 2 @@ -3460,7 +3461,7 @@ buf_remove_free: mov x20, x0 add x0, x19, :lo12:.LANCHOR0 ldrb w0, [x0,2834] - cbnz w0, .L592 + cbnz w0, .L594 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 @@ -3469,22 +3470,22 @@ buf_remove_free: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L592: +.L594: add x19, x19, :lo12:.LANCHOR0 ldrb w0, [x19,2834] - cbz w0, .L591 + cbz w0, .L593 add x0, x19, 2833 mov x1, x20 bl buf_remove_buf cmp w0, 1 - bne .L591 + bne .L593 ldrb w0, [x19,2834] sub w0, w0, #1 strb w0, [x19,2834] ldrb w0, [x20,2] orr w0, w0, 1 strb w0, [x20,2] -.L591: +.L593: ldp x19, x20, [sp,16] ldp x29, x30, [sp], 32 ret @@ -3564,49 +3565,49 @@ flash_mask_bad_block: str2hex: ldrb w1, [x0] cmp w1, 48 - bne .L599 + bne .L601 ldrb w1, [x0,1] add x2, x0, 2 and w1, w1, -33 uxtb w1, w1 cmp w1, 88 csel x0, x0, x2, ne -.L599: +.L601: ldrb w1, [x0] and w1, w1, -33 uxtb w1, w1 cmp w1, 88 mov w1, 0 csinc x0, x0, x0, ne -.L601: +.L603: ldrb w2, [x0] - cbz w2, .L608 + cbz w2, .L610 sub w3, w2, #48 uxtb w3, w3 cmp w3, 9 - bhi .L602 + bhi .L604 add w1, w2, w1, lsl 4 sub w1, w1, #48 - b .L603 -.L602: + b .L605 +.L604: sub w3, w2, #97 uxtb w3, w3 cmp w3, 5 - bhi .L604 + bhi .L606 add w1, w2, w1, lsl 4 sub w1, w1, #87 - b .L603 -.L604: + b .L605 +.L606: sub w3, w2, #65 uxtb w3, w3 cmp w3, 5 - bhi .L608 + bhi .L610 add w1, w2, w1, lsl 4 sub w1, w1, #55 -.L603: +.L605: add x0, x0, 1 - b .L601 -.L608: + b .L603 +.L610: mov w0, w1 ret .size str2hex, .-str2hex @@ -3988,16 +3989,16 @@ gc_add_sblk: uxth w20, w2 ldrh w0, [x0,576] cmp w0, w21 - bhi .L616 + bhi .L618 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 258 + mov w2, 259 add x1, x1, 1312 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L616: +.L618: add x6, x22, :lo12:.LANCHOR0 uxtw x19, w21 lsl x25, x19, 1 @@ -4005,7 +4006,7 @@ gc_add_sblk: ldr x0, [x6,600] ldrh w26, [x0,x25] ldr w0, [x24,#:lo12:.LANCHOR2] - tbz x0, 8, .L617 + tbz x0, 8, .L619 ldr x0, [x6,584] mov w1, w21 ldrh w5, [x6,2952] @@ -4018,67 +4019,67 @@ gc_add_sblk: add x0, x0, :lo12:.LC84 ubfx x3, x3, 5, 3 bl printk -.L617: +.L619: add x3, x22, :lo12:.LANCHOR0 ldr x0, [x3,584] add x0, x0, x19, lsl 2 ldrb w19, [x0,2] ands w19, w19, 224 - bne .L618 - cbz w26, .L619 + bne .L620 + cbz w26, .L621 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 263 + mov w2, 264 add x1, x1, 1312 add x0, x0, :lo12:.LC0 bl printk bl dump_stack - b .L619 -.L618: + b .L621 +.L620: ldrh w1, [x3,2896] add x6, x3, 2896 mov w19, 0 cmp w1, w21 - beq .L619 + beq .L621 ldr x3, [x3,608] ldrh w1, [x3,48] cmp w1, w21 - beq .L619 + beq .L621 ldrh w1, [x3,16] cmp w1, w21 - beq .L619 + beq .L621 ldrh w1, [x3,80] cmp w1, w21 - beq .L619 + beq .L621 ldrh w5, [x6,56] mov x4, 0 -.L620: +.L622: cmp w5, w4 - bls .L651 + bls .L653 add x4, x4, 1 add x1, x6, x4, lsl 1 ldrh w1, [x1,56] cmp w1, w21 - bne .L620 + bne .L622 mov w19, 0 - b .L619 -.L651: - cbnz w23, .L622 + b .L621 +.L653: + cbnz w23, .L624 add x4, x22, :lo12:.LANCHOR0 mov w19, w23 ldrh w7, [x4,3224] cmp w7, w21 - beq .L619 + beq .L621 mov x6, 0 -.L624: +.L626: add x1, x4, 3232 ldrh w1, [x6,x1] cmp w21, w1 - bne .L623 + bne .L625 ldr w1, [x24,#:lo12:.LANCHOR2] mov w19, 0 - tbz x1, 8, .L619 + tbz x1, 8, .L621 ldr x3, [x4,600] mov w1, w21 ldrb w2, [x0,2] @@ -4089,20 +4090,20 @@ gc_add_sblk: ubfx x2, x2, 5, 3 add x0, x0, :lo12:.LC85 bl printk - b .L619 -.L623: + b .L621 +.L625: add x6, x6, 2 cmp x6, 16 - bne .L624 + bne .L626 sxtw x4, w20 add x3, x3, x4, lsl 7 add x19, x3, 136 - b .L626 -.L622: + b .L628 +.L624: add x19, x3, 392 -.L626: +.L628: ldr w1, [x24,#:lo12:.LANCHOR2] - tbz x1, 8, .L627 + tbz x1, 8, .L629 add x6, x22, :lo12:.LANCHOR0 ldrb w3, [x0,2] adrp x0, .LC84 @@ -4114,37 +4115,37 @@ gc_add_sblk: ldrh w6, [x6,2878] ldrh w4, [x4,x25] bl printk -.L627: +.L629: mov x3, x19 add x0, x19, 128 mov w1, 65535 -.L630: +.L632: ldrh w2, [x3] cmp w2, w1 - bne .L628 + bne .L630 strh w21, [x3] add x22, x22, :lo12:.LANCHOR0 - cbz w23, .L629 + cbz w23, .L631 ldr x1, [x22,608] ldrh w0, [x1,124] add w0, w0, 1 strh w0, [x1,124] - b .L650 -.L629: + b .L652 +.L631: ldr x0, [x22,608] add x2, x0, x20, uxth 1 ldrh w0, [x2,120] add w0, w0, 1 strh w0, [x2,120] -.L650: +.L652: mov w19, 1 - b .L619 -.L628: + b .L621 +.L630: add x3, x3, 2 cmp x3, x0 - bne .L630 - b .L650 -.L619: + bne .L632 + b .L652 +.L621: mov w0, w19 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -4180,11 +4181,11 @@ gc_write_completed: str x27, [sp,80] add x23, x21, 784 add x22, x22, 1328 -.L654: +.L656: ldrb w0, [x21,3256] adrp x19, .LANCHOR0 cmp w0, 255 - beq .L676 + beq .L678 sxtw x25, w0 lsl x0, x25, 6 add x2, x23, x0 @@ -4192,7 +4193,7 @@ gc_write_completed: ldr w1, [x2,52] strb w0, [x21,3256] ldrh w24, [x2,48] - cbz w1, .L655 + cbz w1, .L657 ldr w2, [x2,40] adrp x0, .LC86 mov w3, 1 @@ -4202,25 +4203,25 @@ gc_write_completed: bl printk adrp x0, .LC0 mov x1, x22 - mov w2, 544 + mov w2, 545 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L655: +.L657: add x0, x19, :lo12:.LANCHOR0 mov w20, 1 ldrb w1, [x0,3257] cmp w1, 3 - bne .L656 + bne .L658 ldr x0, [x0,608] ldrb w20, [x0,89] add w20, w20, w20, lsl 1 and w20, w20, 1023 -.L656: +.L658: adrp x0, .LANCHOR2 uxth x26, w24 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L657 + tbz x0, 8, .L659 add x0, x19, :lo12:.LANCHOR0 mov w1, w24 add x2, x0, x25, lsl 6 @@ -4231,43 +4232,43 @@ gc_write_completed: add x0, x0, :lo12:.LC87 ldrb w4, [x4,x26] bl printk -.L657: +.L659: add x0, x19, :lo12:.LANCHOR0 ldr x1, [x0,3264] add x0, x0, x25, lsl 6 ldrb w1, [x1,x26] ldrb w0, [x0,785] cmp w1, w0 - beq .L658 + beq .L660 adrp x0, .LC0 mov x1, x22 - mov w2, 551 + mov w2, 552 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L658: +.L660: add x2, x19, :lo12:.LANCHOR0 add x1, x2, 784 add x0, x1, x25, lsl 6 ldrb w0, [x0,61] cmp w0, 3 - beq .L659 + beq .L661 ldrb w0, [x2,3257] cmp w0, 3 - bne .L659 + bne .L661 ldrb w0, [x2,3272] - cbnz w0, .L659 + cbnz w0, .L661 ldr x3, [x2,3264] - b .L660 -.L659: + b .L662 +.L661: add x19, x19, :lo12:.LANCHOR0 mov w25, 0 mov w26, -1 add x27, x19, 784 strh w24, [x19,3212] -.L661: +.L663: cmp w20, w25, uxth - bls .L654 + bls .L656 add w1, w25, w24 ldr x2, [x19,3264] add w25, w25, 1 @@ -4280,17 +4281,17 @@ gc_write_completed: ldrb w0, [x19,2903] sub w0, w0, #1 strb w0, [x19,2903] - b .L661 -.L660: + b .L663 +.L662: cmp w20, w0, uxth - bls .L654 + bls .L656 add w2, w0, w24 add w0, w0, 1 ldrb w2, [x3,x2] add x2, x1, x2, lsl 6 strb wzr, [x2,61] - b .L660 -.L676: + b .L662 +.L678: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -4308,48 +4309,48 @@ gc_get_src_blk: ldr x1, [x0,608] ldrb w0, [x0,3273] ldrh w4, [x1,124] - cbz w4, .L678 + cbz w4, .L680 add x1, x1, 392 mov w2, 1 - b .L679 -.L678: + b .L681 +.L680: sxtw x2, w0 add x0, x1, x2, lsl 1 ldrh w5, [x0,120] mov w0, 65535 - cbz w5, .L680 + cbz w5, .L682 add x1, x1, x2, lsl 7 mov w2, w4 add x1, x1, 136 -.L679: +.L681: add x4, x1, 128 mov w5, 65535 -.L683: +.L685: ldrh w0, [x1] cmp w0, w5 - beq .L681 + beq .L683 mov w4, -1 strh w4, [x1] add x3, x3, :lo12:.LANCHOR0 - cbz w2, .L682 + cbz w2, .L684 ldr x2, [x3,608] ldrh w1, [x2,124] sub w1, w1, #1 strh w1, [x2,124] - b .L680 -.L682: + b .L682 +.L684: ldrb w1, [x3,3273] ldr x2, [x3,608] add x1, x2, x1, lsl 1 ldrh w2, [x1,120] sub w2, w2, #1 strh w2, [x1,120] - b .L680 -.L681: + b .L682 +.L683: add x1, x1, 2 cmp x1, x4 - bne .L683 -.L680: + bne .L685 +.L682: ret .size gc_get_src_blk, .-gc_get_src_blk .align 2 @@ -4364,10 +4365,10 @@ gc_free_temp_buf: str x21, [sp,32] add x2, x19, :lo12:.LANCHOR0 ldrb w3, [x2,2903] - cbz w3, .L688 + cbz w3, .L690 ldrb w3, [x2,2834] cmp w3, 1 - bhi .L688 + bhi .L690 ldrh w4, [x2,3274] mov x20, x2 ldrb w0, [x2,3276] @@ -4378,29 +4379,29 @@ gc_free_temp_buf: ldr x4, [x2,2480] cmp w0, w3 csel w3, w0, w3, ls -.L689: +.L691: cmp w1, w3 - bcs .L702 + bcs .L704 uxtw x21, w1 ldrb w0, [x4,x21] cmp w0, 255 - beq .L690 + beq .L692 sbfiz x0, x0, 6, 32 add x0, x2, x0 ldrb w5, [x0,61] - cbnz w5, .L690 + cbnz w5, .L692 str x1, [x29,56] bl buf_free adrp x0, .LANCHOR2 ldr x1, [x29,56] ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L691 + tbz x0, 8, .L693 ldr x2, [x20,3264] adrp x0, .LC88 add x0, x0, :lo12:.LC88 ldrb w2, [x2,x21] bl printk -.L691: +.L693: add x19, x19, :lo12:.LANCHOR0 mov w1, -1 ldr x0, [x19,3264] @@ -4409,13 +4410,13 @@ gc_free_temp_buf: sub w0, w0, #1 strb w0, [x19,2903] mov w0, 1 - b .L688 -.L690: + b .L690 +.L692: add w1, w1, 1 - b .L689 -.L702: + b .L691 +.L704: mov w0, 0 -.L688: +.L690: ldp x19, x20, [sp,16] ldr x21, [sp,32] ldp x29, x30, [sp], 64 @@ -4450,23 +4451,23 @@ zftl_get_gc_node: uxth w2, w0 cmp w1, 5 add x29, sp, 0 - bne .L705 + bne .L707 adrp x0, .LANCHOR0+3280 ldr x0, [x0,#:lo12:.LANCHOR0+3280] - b .L708 -.L705: + b .L710 +.L707: cmp w1, 2 - bne .L707 + bne .L709 mov w0, w2 bl zftl_get_gc_node.part.12 - b .L709 -.L707: + b .L711 +.L709: adrp x0, .LANCHOR0+3288 ldr x0, [x0,#:lo12:.LANCHOR0+3288] -.L708: +.L710: mov w1, w2 bl _list_get_gc_head_node.isra.5 -.L709: +.L711: uxth w0, w0 ldp x29, x30, [sp], 16 ret @@ -4490,8 +4491,8 @@ gc_search_src_blk: ldr x1, [x0,608] add x1, x1, x21, sxtw 1 ldrh w19, [x1,120] - cbnz w19, .L757 - cbnz w21, .L713 + cbnz w19, .L759 + cbnz w21, .L715 adrp x26, .LC90 strh w21, [x0,3296] mov w19, w21 @@ -4500,9 +4501,9 @@ gc_search_src_blk: mov w27, 65535 adrp x28, .LANCHOR2 add x26, x26, :lo12:.LC90 -.L714: +.L716: cmp w25, w23 - bcs .L719 + bcs .L721 add x3, x20, :lo12:.LANCHOR0 mov w1, 3 str x3, [x29,96] @@ -4518,10 +4519,10 @@ gc_search_src_blk: add w2, w2, 1 uxth w2, w2 strh w2, [x3,3296] - beq .L715 + beq .L717 ldr w0, [x28,#:lo12:.LANCHOR2] uxtw x5, w1 - tbz x0, 8, .L716 + tbz x0, 8, .L718 ldr x3, [x3,600] mov x0, x26 str x4, [x29,96] @@ -4530,40 +4531,40 @@ gc_search_src_blk: bl printk ldr x4, [x29,96] ldr x5, [x29,104] -.L716: +.L718: add x1, x20, :lo12:.LANCHOR0 ldr x0, [x1,600] ldrh w2, [x0,x5,lsl 1] ldrh w0, [x1,2878] cmp w2, w0 - bcs .L717 + bcs .L719 mov w1, 0 mov w0, w4 mov w2, w1 bl gc_add_sblk - cbz w0, .L718 + cbz w0, .L720 add w19, w19, 1 uxth w19, w19 cmp w19, w23 - bls .L718 - b .L719 -.L717: + bls .L720 + b .L721 +.L719: strh wzr, [x1,3296] - b .L719 -.L715: + b .L721 +.L717: strh wzr, [x3,3296] - b .L719 -.L718: + b .L721 +.L720: add w25, w25, 1 uxth w25, w25 - b .L714 -.L719: - tbz x24, 1, .L721 + b .L716 +.L721: + tbz x24, 1, .L723 mov w26, 0 mov w27, 65535 -.L722: +.L724: cmp w26, w23 - beq .L726 + beq .L728 add x25, x20, :lo12:.LANCHOR0 mov w1, 5 ldrh w28, [x25,3298] @@ -4573,32 +4574,32 @@ gc_search_src_blk: uxth w1, w0 strh w28, [x25,3298] cmp w1, w27 - beq .L723 + beq .L725 ubfiz x1, x1, 1, 16 ldr x2, [x25,600] ldrh w2, [x2,x1] ldrh w1, [x25,2880] cmp w2, w1 - bcs .L723 + bcs .L725 mov w1, 0 mov w2, w1 bl gc_add_sblk - cbz w0, .L725 + cbz w0, .L727 add w19, w19, 1 uxth w19, w19 cmp w19, w23 - bls .L725 - b .L728 -.L723: - strh wzr, [x25,3298] - b .L726 + bls .L727 + b .L730 .L725: + strh wzr, [x25,3298] + b .L728 +.L727: add w26, w26, 1 uxth w26, w26 - b .L722 -.L726: + b .L724 +.L728: cmp w19, w23 - bcs .L728 + bcs .L730 add x0, x20, :lo12:.LANCHOR0 ldrh w1, [x0,3274] ldrb w4, [x0,3276] @@ -4607,27 +4608,27 @@ gc_search_src_blk: mul w1, w1, w4 sub w1, w1, w2, lsr 2 cmp w3, w1 - bge .L721 + bge .L723 add w2, w3, w2, lsr 3 strh w2, [x0,2880] - b .L721 -.L728: + b .L723 +.L730: add x1, x20, :lo12:.LANCHOR0 ldrh w2, [x1,2880] ldrh w0, [x1,3300] cmp w2, w0 - bls .L721 + bls .L723 sub w0, w2, w0, lsr 3 strh w0, [x1,2880] -.L721: - tbz x24, 0, .L729 +.L723: + tbz x24, 0, .L731 cmp w19, w23 - bcs .L729 + bcs .L731 mov w25, 0 mov w27, 65535 -.L730: +.L732: cmp w25, w23 - beq .L733 + beq .L735 add x28, x20, :lo12:.LANCHOR0 ldrh w26, [x28,3302] mov w0, w26 @@ -4635,57 +4636,57 @@ gc_search_src_blk: bl zftl_get_gc_node.part.12 strh w26, [x28,3302] cmp w27, w0, uxth - beq .L731 + beq .L733 mov w1, 0 mov w2, w1 bl gc_add_sblk - cbz w0, .L732 + cbz w0, .L734 add w19, w19, 1 uxth w19, w19 cmp w19, w23 - bcc .L732 - b .L735 -.L731: + bcc .L734 + b .L737 +.L733: strh wzr, [x28,3302] - b .L733 -.L732: + b .L735 +.L734: add w25, w25, 1 uxth w25, w25 - b .L730 -.L733: + b .L732 +.L735: cmp w19, w23 - bcs .L735 + bcs .L737 add x20, x20, :lo12:.LANCHOR0 ldrh w1, [x20,2878] ldrh w0, [x20,3300] cmp w1, w0 - bcs .L729 + bcs .L731 add w0, w1, w0, lsr 3 - b .L810 -.L735: + b .L812 +.L737: add x20, x20, :lo12:.LANCHOR0 ldrh w0, [x20,3300] ldrh w1, [x20,2878] cmp w1, w0, lsr 1 - bls .L729 + bls .L731 sub w0, w1, w0, lsr 3 -.L810: +.L812: strh w0, [x20,2878] - b .L729 -.L713: + b .L731 +.L715: and w1, w24, 1 strh w19, [x0,3214] strh w19, [x0,3304] str w1, [x29,104] - tbz x24, 0, .L736 + tbz x24, 0, .L738 ldrh w2, [x0,3306] ldrh w1, [x0,2852] cmp w1, w2, lsr 2 - bcc .L737 + bcc .L739 ldrh w0, [x0,2850] cmp w0, w1 - bls .L738 -.L737: + bls .L740 +.L739: add x23, x20, :lo12:.LANCHOR0 mov w19, 0 ldrh w0, [x23,2850] @@ -4696,24 +4697,24 @@ gc_search_src_blk: uxth w1, w0 mov w2, 65535 cmp w1, w2 - beq .L739 + beq .L741 ubfiz x1, x1, 1, 16 ldr x3, [x23,600] ldrh w2, [x23,3300] ldrh w1, [x3,x1] cmp w1, w2, lsr 2 - bcs .L739 + bcs .L741 mov w1, w19 mov w2, w21 strh w19, [x23,3302] bl gc_add_sblk cmp w0, w19 cset w19, ne -.L739: +.L741: mov w23, 64 mov w26, 65535 uxth w27, w22 -.L741: +.L743: add x25, x20, :lo12:.LANCHOR0 ldrh w28, [x25,3302] mov w0, w28 @@ -4721,38 +4722,38 @@ gc_search_src_blk: bl zftl_get_gc_node.part.12 strh w28, [x25,3302] cmp w26, w0, uxth - beq .L738 + beq .L740 mov w1, 0 mov w2, w21 bl gc_add_sblk - cbz w0, .L740 + cbz w0, .L742 add w19, w19, 1 uxth w19, w19 cmp w19, w27 - bcs .L738 -.L740: + bcs .L740 +.L742: sub w23, w23, #1 uxth w23, w23 - cbnz w23, .L741 -.L738: + cbnz w23, .L743 +.L740: add x0, x20, :lo12:.LANCHOR0 ldrh w2, [x0,3306] ldrh w1, [x0,2852] cmp w1, w2, lsr 3 - bhi .L758 + bhi .L760 ldrh w0, [x0,2850] add w0, w0, 8 cmp w1, w0 - bgt .L758 -.L736: - tbz x24, 1, .L744 + bgt .L760 +.L738: + tbz x24, 1, .L746 add x0, x20, :lo12:.LANCHOR0 mov w25, 64 mov w26, 0 mov w27, 65535 uxth w28, w22 strh wzr, [x0,3298] -.L749: +.L751: add x23, x20, :lo12:.LANCHOR0 mov w1, 5 ldrh w2, [x23,3298] @@ -4764,51 +4765,51 @@ gc_search_src_blk: cmp w1, w27 add w2, w2, 1 strh w2, [x23,3298] - beq .L745 + beq .L747 cmp w22, 1 - bne .L746 + bne .L748 ldrh w3, [x23,3274] ldrb w2, [x23,3276] mul w2, w2, w3 ldrh w3, [x23,3300] sub w2, w2, w3, lsr 3 strh w2, [x23,2874] -.L746: +.L748: add x2, x20, :lo12:.LANCHOR0 ubfiz x1, x1, 1, 16 ldr x3, [x2,600] ldrh w3, [x3,x1] ldrh w1, [x2,2874] cmp w3, w1 - bcs .L747 + bcs .L749 mov w1, 0 mov w2, w21 bl gc_add_sblk - cbz w0, .L748 + cbz w0, .L750 add w19, w19, 1 add w26, w26, 1 uxth w19, w19 uxth w26, w26 cmp w19, w28 - bcc .L748 - b .L745 -.L747: + bcc .L750 + b .L747 +.L749: strh wzr, [x2,3298] - b .L745 -.L748: + b .L747 +.L750: sub w0, w25, #1 uxth w25, w0 - cbnz w25, .L749 -.L745: + cbnz w25, .L751 +.L747: cmp w19, w22 - bcc .L750 - cbnz w26, .L751 + bcc .L752 + cbnz w26, .L753 add x0, x20, :lo12:.LANCHOR0 ldrh w1, [x0,2854] ldrh w0, [x0,3308] cmp w1, w0 - bls .L751 -.L750: + bls .L753 +.L752: add x0, x20, :lo12:.LANCHOR0 ldrh w1, [x0,3274] ldrb w4, [x0,3276] @@ -4818,29 +4819,29 @@ gc_search_src_blk: lsr w3, w3, 3 sub w1, w1, w3 cmp w2, w1 - bge .L744 + bge .L746 add w2, w3, w2 strh w2, [x0,2874] - b .L744 -.L751: + b .L746 +.L753: add x0, x20, :lo12:.LANCHOR0 ldrh w1, [x0,3300] ldrb w2, [x0,3276] ldrh w3, [x0,2874] mul w2, w1, w2 cmp w3, w2 - ble .L744 + ble .L746 sub w1, w3, w1, lsr 3 strh w1, [x0,2874] -.L744: +.L746: ldr w0, [x29,104] - cbz w0, .L729 + cbz w0, .L731 add x0, x20, :lo12:.LANCHOR0 mov w25, 64 mov w26, 65535 uxth w27, w22 strh wzr, [x0,3296] -.L755: +.L757: add x23, x20, :lo12:.LANCHOR0 mov w1, 3 ldrh w28, [x23,3296] @@ -4850,57 +4851,57 @@ gc_search_src_blk: uxth w1, w0 strh w28, [x23,3296] cmp w1, w26 - beq .L752 + beq .L754 ubfiz x1, x1, 1, 16 ldr x2, [x23,600] ldrh w1, [x2,x1] cmp w1, 2 - bls .L753 + bls .L755 ldrh w2, [x23,2876] cmp w2, w1 - bls .L753 + bls .L755 ldrh w2, [x23,3306] ldrh w1, [x23,2852] cmp w1, w2, lsr 1 - bls .L752 -.L753: + bls .L754 +.L755: mov w1, 0 mov w2, w21 bl gc_add_sblk - cbz w0, .L754 + cbz w0, .L756 add w19, w19, 1 uxth w19, w19 cmp w19, w27 - bcs .L752 -.L754: + bcs .L754 +.L756: sub w25, w25, #1 uxth w25, w25 - cbnz w25, .L755 -.L752: + cbnz w25, .L757 +.L754: cmp w19, w22 add x20, x20, :lo12:.LANCHOR0 - bcs .L756 + bcs .L758 ldrh w0, [x20,3300] ldrh w1, [x20,2876] cmp w1, w0, lsr 1 - bls .L729 + bls .L731 sub w0, w1, w0, lsr 3 strh w0, [x20,2876] - b .L729 -.L756: + b .L731 +.L758: ldrh w1, [x20,3300] ldrb w0, [x20,3276] ldrh w2, [x20,2876] mul w0, w1, w0 sub w0, w0, #32 cmp w2, w0 - bge .L729 + bge .L731 add w1, w2, w1, lsr 3 strh w1, [x20,2876] -.L729: +.L731: adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L757 + tbz x0, 8, .L759 adrp x0, .LC91 mov w1, w21 add x0, x0, :lo12:.LC91 @@ -4908,7 +4909,7 @@ gc_search_src_blk: mov w3, w19 mov w4, w22 bl printk -.L757: +.L759: mov w0, w19 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -4917,13 +4918,13 @@ gc_search_src_blk: ldp x27, x28, [sp,80] ldp x29, x30, [sp], 112 ret -.L758: +.L760: add x0, x20, :lo12:.LANCHOR0 mov w23, 64 mov w26, 65535 uxth w27, w22 strh wzr, [x0,3296] -.L743: +.L745: add x25, x20, :lo12:.LANCHOR0 mov w1, 3 ldrh w28, [x25,3296] @@ -4932,20 +4933,20 @@ gc_search_src_blk: bl zftl_get_gc_node strh w28, [x25,3296] cmp w26, w0, uxth - beq .L736 + beq .L738 mov w1, 0 mov w2, w21 bl gc_add_sblk - cbz w0, .L742 + cbz w0, .L744 add w19, w19, 1 uxth w19, w19 cmp w19, w27 - bcs .L736 -.L742: + bcs .L738 +.L744: sub w23, w23, #1 uxth w23, w23 - cbnz w23, .L743 - b .L736 + cbnz w23, .L745 + b .L738 .size gc_search_src_blk, .-gc_search_src_blk .align 2 .global zftl_insert_free_list @@ -4960,20 +4961,20 @@ zftl_insert_free_list: add x0, x0, x1, uxth 2 ldrb w0, [x0,2] ands w0, w0, 24 - bne .L812 + bne .L814 add x0, x2, 3312 add x2, x2, 2844 - b .L815 -.L812: + b .L817 +.L814: cmp w0, 16 - bne .L814 + bne .L816 add x0, x2, 3320 add x2, x2, 2846 - b .L815 -.L814: + b .L817 +.L816: add x0, x2, 3328 add x2, x2, 2848 -.L815: +.L817: bl _insert_free_list ldp x29, x30, [sp], 16 ret @@ -4992,24 +4993,24 @@ zftl_insert_data_list: ldrb w3, [x0,2] and w3, w3, 224 cmp w3, 64 - bne .L817 + bne .L819 add x0, x2, 616 add x2, x2, 2850 - b .L820 -.L817: + b .L822 +.L819: cmp w3, 96 - bne .L819 + bne .L821 add x0, x2, 3288 add x2, x2, 2852 - b .L820 -.L819: + b .L822 +.L821: cmp w3, 160 - bne .L816 + bne .L818 add x0, x2, 3280 add x2, x2, 2854 -.L820: +.L822: bl _insert_data_list -.L816: +.L818: ldp x29, x30, [sp], 16 ret .size zftl_insert_data_list, .-zftl_insert_data_list @@ -5028,10 +5029,10 @@ zftl_gc_get_free_sblk: uxth w22, w1 ldr x0, [x23,608] ldrh w19, [x0,588] - cbnz w21, .L822 + cbnz w21, .L824 mov w0, 65535 cmp w19, w0 - beq .L822 + beq .L824 adrp x0, .LC92 mov w1, w19 add x0, x0, :lo12:.LC92 @@ -5039,13 +5040,13 @@ zftl_gc_get_free_sblk: ldr x0, [x23,608] mov w1, -1 strh w1, [x0,588] - b .L823 -.L822: + b .L825 +.L824: add x0, x20, :lo12:.LANCHOR0 ldrh w3, [x0,2846] ldrh w1, [x0,2848] cmp w3, w1 - bls .L824 + bls .L826 mov w1, 0 mov x2, x0 lsr w3, w3, 3 @@ -5053,25 +5054,25 @@ zftl_gc_get_free_sblk: csel w1, w3, w1, ne add x0, x0, 3320 add x2, x2, 2846 - b .L842 -.L824: + b .L844 +.L826: lsr w1, w1, 2 - cbz w21, .L828 + cbz w21, .L830 mov w1, 7 mul w3, w3, w1 mov w1, 8 sdiv w3, w3, w1 uxth w1, w3 -.L828: +.L830: add x2, x20, :lo12:.LANCHOR0 add x0, x2, 3328 add x2, x2, 2848 -.L842: +.L844: bl _list_pop_index_node uxth w19, w0 mov w0, 65535 cmp w19, w0 - bne .L829 + bne .L831 add x5, x20, :lo12:.LANCHOR0 adrp x0, .LC93 add x0, x0, :lo12:.LC93 @@ -5081,11 +5082,11 @@ zftl_gc_get_free_sblk: ldrh w4, [x5,2844] ldrh w5, [x5,2848] bl printk -.L829: - cbz w21, .L823 +.L831: + cbz w21, .L825 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L823 + tbz x0, 8, .L825 add x20, x20, :lo12:.LANCHOR0 uxtw x6, w19 lsl x0, x6, 2 @@ -5104,7 +5105,7 @@ zftl_gc_get_free_sblk: ubfx x3, x3, 3, 2 and w5, w5, 2047 bl printk -.L823: +.L825: mov w0, w19 ldr x23, [sp,48] ldp x19, x20, [sp,16] @@ -5124,36 +5125,36 @@ zftl_get_free_sblk: stp x19, x20, [sp,16] cmp w21, 5 adrp x19, .LANCHOR0 - bne .L844 + bne .L846 add x0, x19, :lo12:.LANCHOR0 ldrh w2, [x0,2846] ldrh w1, [x0,2848] cmp w2, w1 - bcc .L845 + bcc .L847 ldrh w0, [x0,2844] cmp w0, w2 - bls .L846 - cbz w1, .L846 -.L845: + bls .L848 + cbz w1, .L848 +.L847: add x2, x19, :lo12:.LANCHOR0 lsr w1, w1, 1 add x0, x2, 3328 - b .L874 -.L846: + b .L876 +.L848: add x2, x19, :lo12:.LANCHOR0 mov w1, 0 add x0, x2, 3320 add x2, x2, 2846 - b .L873 -.L844: + b .L875 +.L846: add x22, x19, :lo12:.LANCHOR0 cmp w21, 1 ldr x0, [x22,608] ldrh w20, [x0,590] - beq .L848 + beq .L850 mov w0, 65535 cmp w20, w0 - beq .L848 + beq .L850 adrp x0, .LC95 mov w1, w20 add x0, x0, :lo12:.LC95 @@ -5161,28 +5162,28 @@ zftl_get_free_sblk: ldr x0, [x22,608] mov w1, -1 strh w1, [x0,590] - b .L849 -.L848: + b .L851 +.L850: add x2, x19, :lo12:.LANCHOR0 ldrh w0, [x2,2844] ldrh w1, [x2,2848] cmp w0, w1 - bcc .L850 + bcc .L852 ldrh w2, [x2,2846] cmp w2, w0 - bls .L851 - cbz w1, .L851 -.L850: + bls .L853 + cbz w1, .L853 +.L852: lsr w1, w1, 1 cmp w21, 1 csel w3, w1, w3, eq add x2, x19, :lo12:.LANCHOR0 add x0, x2, 3328 mov w1, w3 -.L874: +.L876: add x2, x2, 2848 - b .L873 -.L851: + b .L875 +.L853: lsr w0, w0, 1 cmp w21, 1 csel w3, w0, w3, eq @@ -5190,13 +5191,13 @@ zftl_get_free_sblk: add x0, x2, 3312 mov w1, w3 add x2, x2, 2844 -.L873: +.L875: bl _list_pop_index_node uxth w0, w0 mov w20, w0 mov w0, 65535 cmp w20, w0 - bne .L849 + bne .L851 add x19, x19, :lo12:.LANCHOR0 adrp x0, .LC93 add x0, x0, :lo12:.LC93 @@ -5206,7 +5207,7 @@ zftl_get_free_sblk: ldrh w4, [x19,2844] ldrh w5, [x19,2848] bl printk -.L849: +.L851: mov w0, w20 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -5227,24 +5228,24 @@ zftl_remove_data_node: ldrb w3, [x0,2] and w3, w3, 224 cmp w3, 64 - bne .L876 + bne .L878 add x0, x2, 616 add x2, x2, 2850 - b .L879 -.L876: + b .L881 +.L878: cmp w3, 96 - bne .L878 + bne .L880 add x0, x2, 3288 add x2, x2, 2852 - b .L879 -.L878: + b .L881 +.L880: cmp w3, 160 - bne .L875 + bne .L877 add x0, x2, 3280 add x2, x2, 2854 -.L879: +.L881: bl _list_remove_node -.L875: +.L877: ldp x29, x30, [sp], 16 ret .size zftl_remove_data_node, .-zftl_remove_data_node @@ -5261,20 +5262,20 @@ zftl_remove_free_node: add x0, x0, x1, uxth 2 ldrb w0, [x0,2] ands w0, w0, 24 - bne .L881 + bne .L883 add x0, x2, 3312 add x2, x2, 2844 - b .L884 -.L881: + b .L886 +.L883: cmp w0, 16 - bne .L883 + bne .L885 add x0, x2, 3320 add x2, x2, 2846 - b .L884 -.L883: + b .L886 +.L885: add x0, x2, 3328 add x2, x2, 2848 -.L884: +.L886: bl _list_remove_node ldp x29, x30, [sp], 16 ret @@ -5293,24 +5294,24 @@ zftl_list_update_data_list: ldrb w3, [x0,2] and w3, w3, 224 cmp w3, 64 - bne .L886 + bne .L888 add x0, x2, 616 add x2, x2, 2850 - b .L889 -.L886: + b .L891 +.L888: cmp w3, 96 - bne .L888 + bne .L890 add x0, x2, 3288 add x2, x2, 2852 - b .L889 -.L888: + b .L891 +.L890: cmp w3, 160 - bne .L885 + bne .L887 add x0, x2, 3280 add x2, x2, 2854 -.L889: +.L891: bl _list_update_data_list -.L885: +.L887: ldp x29, x30, [sp], 16 ret .size zftl_list_update_data_list, .-zftl_list_update_data_list @@ -5332,7 +5333,7 @@ print_list_info: ldr x1, [x19] bl printk ldr x19, [x19] - cbz x19, .L890 + cbz x19, .L892 mov x22, -6148914691236517206 adrp x23, .LC97 mov w20, 0 @@ -5341,7 +5342,7 @@ print_list_info: add x23, x23, :lo12:.LC97 mov w26, 65535 mov w24, 6 -.L893: +.L895: add x21, x25, :lo12:.LANCHOR0 ldrh w3, [x19] ldrh w4, [x19,2] @@ -5372,7 +5373,7 @@ print_list_info: bl printk ldrh w19, [x19] cmp w19, w26 - beq .L890 + beq .L892 ldr x0, [x21,528] add w20, w20, 1 umull x19, w19, w24 @@ -5380,8 +5381,8 @@ print_list_info: add x19, x0, x19 ldrh w0, [x21,3336] cmp w0, w20 - bcs .L893 -.L890: + bcs .L895 +.L892: sub sp, x29, #32 ldp x19, x20, [sp,48] ldp x21, x22, [sp,64] @@ -5430,44 +5431,44 @@ ftl_tmp_into_update: ldr x0, [x0,#:lo12:.LANCHOR0+2864] ldr w2, [x0,16] cmp w2, 2048 - bls .L896 + bls .L898 lsr w1, w2, 11 ldr w3, [x0,20] add w3, w3, w1 sub w1, w2, w1, lsl 11 str w3, [x0,20] str w1, [x0,16] -.L896: +.L898: ldr w2, [x0,24] cmp w2, 2048 - bls .L897 + bls .L899 lsr w1, w2, 11 ldr w3, [x0,28] add w3, w3, w1 sub w1, w2, w1, lsl 11 str w3, [x0,28] str w1, [x0,24] -.L897: +.L899: ldr w2, [x0,32] cmp w2, 1024 - bls .L898 + bls .L900 lsr w1, w2, 10 ldr w3, [x0,36] add w3, w3, w1 sub w1, w2, w1, lsl 10 str w3, [x0,36] str w1, [x0,32] -.L898: +.L900: ldr w2, [x0,40] cmp w2, 1024 - bls .L895 + bls .L897 lsr w1, w2, 10 ldr w3, [x0,44] add w3, w3, w1 sub w1, w2, w1, lsl 10 str w3, [x0,44] str w1, [x0,40] -.L895: +.L897: ret .size ftl_tmp_into_update, .-ftl_tmp_into_update .align 2 @@ -5483,13 +5484,13 @@ ftl_get_blk_list_in_sblk: ldrb w11, [x2,3] mov w2, 0 mov w6, w2 -.L901: +.L903: add x8, x7, :lo12:.LANCHOR0 ldrb w3, [x8,3276] cmp w6, w3 - bge .L907 + bge .L909 asr w3, w11, w6 - tbnz x3, 0, .L902 + tbnz x3, 0, .L904 ldrb w5, [x8,3338] sbfiz x10, x2, 1, 32 ldrh w3, [x8,3340] @@ -5501,28 +5502,28 @@ ftl_get_blk_list_in_sblk: strh w4, [x1,x10] ldrb w3, [x8,3338] cmp w3, 1 - bls .L903 + bls .L905 sub w3, w3, #1 and w3, w6, w3 add w3, w4, w3 strh w3, [x1,x10] -.L903: +.L905: add w2, w2, 1 -.L902: +.L904: add w6, w6, 1 - b .L901 -.L907: + b .L903 +.L909: mov w0, w2 mov w4, -1 -.L905: +.L907: add x3, x7, :lo12:.LANCHOR0 ldrb w3, [x3,3276] cmp w2, w3 - bge .L908 + bge .L910 strh w4, [x1,w2,sxtw 1] add w2, w2, 1 - b .L905 -.L908: + b .L907 +.L910: ret .size ftl_get_blk_list_in_sblk, .-ftl_get_blk_list_in_sblk .align 2 @@ -5542,7 +5543,7 @@ ftl_free_sblk: ldr x7, [x3,584] add x20, x7, x19 ldrb w2, [x20,2] - tbz x2, 3, .L911 + tbz x2, 3, .L913 ldr x6, [x3,2864] ldrh w4, [x7,x19] ldrh w10, [x3,3342] @@ -5559,14 +5560,14 @@ ftl_free_sblk: udiv w6, w8, w4 add w6, w0, w6 cmp w6, w10 - ble .L912 + ble .L914 ldrh w0, [x3,2846] ldrh w6, [x3,2854] add w6, w6, w0 ldrh w0, [x3,3308] add w0, w0, 8 cmp w6, w0 - blt .L928 + blt .L930 ldrh w0, [x3,2844] ldrh w6, [x3,2850] add w6, w6, w0 @@ -5575,13 +5576,13 @@ ftl_free_sblk: ldrh w0, [x3,3344] add w0, w0, 8 cmp w6, w0 - bge .L928 - b .L917 -.L912: + bge .L930 + b .L919 +.L914: madd w0, w0, w4, w8 ldrh w6, [x3,3346] cmp w0, w6 - ble .L914 + ble .L916 ldrh w0, [x3,2844] ldrh w6, [x3,2850] add w6, w6, w0 @@ -5590,26 +5591,26 @@ ftl_free_sblk: ldrh w0, [x3,3344] add w0, w0, 8 cmp w6, w0 - blt .L917 + blt .L919 ldrh w0, [x3,2846] ldrh w6, [x3,2854] add w6, w6, w0 ldrh w0, [x3,3308] add w0, w0, 8 cmp w6, w0 - bge .L917 -.L928: + bge .L919 +.L930: mov w0, 2 bfi w2, w0, 3, 2 - b .L926 -.L917: + b .L928 +.L919: and w2, w2, -25 -.L926: +.L928: strb w2, [x20,2] -.L914: +.L916: ldrb w0, [x20,2] ands w0, w0, 24 - bne .L918 + bne .L920 mul w4, w9, w4 ldrh w0, [x7,x19] add w4, w4, w4, lsl 1 @@ -5617,10 +5618,10 @@ ftl_free_sblk: ubfx x5, x4, 2, 9 bfi w0, w5, 0, 11 strh w0, [x7,x19] - b .L911 -.L918: + b .L913 +.L920: cmp w0, 16 - bne .L911 + bne .L913 sdiv w4, w5, w4 ldr w0, [x7,x19] add w4, w4, w4, lsl 1 @@ -5628,7 +5629,7 @@ ftl_free_sblk: ubfx x4, x4, 2, 6 bfi w0, w4, 11, 8 str w0, [x7,x19] -.L911: +.L913: mov w0, w1 str x1, [x29,56] bl zftl_remove_data_node @@ -5642,41 +5643,41 @@ ftl_free_sblk: ldr x2, [x0,600] strh wzr, [x2,x22,lsl 1] ldrb w2, [x20,2] - tbz x2, 3, .L920 + tbz x2, 3, .L922 ldr x2, [x0,608] ldrh w0, [x2,584] cmp w0, w1 - bne .L921 + bne .L923 mov w0, -1 ldrh w3, [x2,588] strh w0, [x2,584] mov w0, 65535 cmp w3, w0 - bne .L921 + bne .L922 adrp x0, .LC98 strh w1, [x2,588] add x0, x0, :lo12:.LC98 - b .L927 -.L921: + b .L929 +.L923: ldrh w0, [x2,586] cmp w0, w1 - bne .L920 + bne .L922 mov w0, -1 ldrh w3, [x2,590] strh w0, [x2,586] mov w0, 65535 cmp w3, w0 - bne .L920 + bne .L922 adrp x0, .LC99 strh w1, [x2,590] add x0, x0, :lo12:.LC99 -.L927: +.L929: bl printk - b .L909 -.L920: + b .L911 +.L922: mov w0, w1 bl zftl_insert_free_list -.L909: +.L911: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x29, x30, [sp], 64 @@ -5699,129 +5700,129 @@ gc_free_src_blk: mov w20, 0 add x24, x23, 2896 add x21, x21, 1352 -.L930: +.L932: ldrh w0, [x24,56] adrp x25, .LANCHOR0 cmp w0, w20 - bls .L968 + bls .L970 add x0, x24, x20, sxtw 1 ldrh w22, [x0,58] ldr x0, [x23,600] lsl x26, x22, 1 mov x19, x22 ldrh w2, [x0,x26] - cbz w2, .L931 + cbz w2, .L933 adrp x0, .LC100 mov w1, w22 add x0, x0, :lo12:.LC100 bl printk -.L931: +.L933: add x0, x25, :lo12:.LANCHOR0 ldr x1, [x0,600] strh wzr, [x1,x26] ldr x1, [x0,600] ldrh w1, [x1,x26] - cbnz w1, .L932 + cbnz w1, .L934 ldr x0, [x0,584] add x22, x0, x22, lsl 2 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L933 + tbz x0, 8, .L935 ldrb w2, [x22,2] adrp x0, .LC101 add x0, x0, :lo12:.LC101 mov w1, w19 ubfx x2, x2, 5, 3 bl printk -.L933: +.L935: ldrb w0, [x22,2] tst w0, 192 - beq .L946 + beq .L948 and w0, w0, 224 cmp w0, 224 - bne .L934 -.L946: + bne .L936 +.L948: adrp x0, .LC0 mov x1, x21 - mov w2, 798 + mov w2, 799 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L934: +.L936: mov w0, w19 add x25, x25, :lo12:.LANCHOR0 bl ftl_free_sblk ldr x2, [x25,608] ldrh w1, [x2,124] - cbz w1, .L936 + cbz w1, .L938 mov x0, 0 -.L938: +.L940: add x4, x2, x0, lsl 1 mov w3, w0 ldrh w4, [x4,392] cmp w4, w19 - bne .L937 + bne .L939 add x0, x2, x3, sxtw 1 mov w3, -1 strh w3, [x0,392] sub w1, w1, #1 strh w1, [x2,124] - b .L936 -.L937: + b .L938 +.L939: add x0, x0, 1 cmp x0, 64 - bne .L938 -.L936: + bne .L940 +.L938: ldrh w1, [x2,120] - cbz w1, .L939 + cbz w1, .L941 mov x0, 0 -.L941: +.L943: add x4, x2, x0, lsl 1 mov w3, w0 ldrh w4, [x4,136] cmp w4, w19 - bne .L940 + bne .L942 add x0, x2, x3, sxtw 1 mov w3, -1 strh w3, [x0,136] sub w1, w1, #1 strh w1, [x2,120] - b .L939 -.L940: + b .L941 +.L942: add x0, x0, 1 cmp x0, 64 - bne .L941 -.L939: + bne .L943 +.L941: ldrh w1, [x2,122] - cbz w1, .L942 + cbz w1, .L944 mov x0, 0 -.L944: +.L946: add x4, x2, x0, lsl 1 mov w3, w0 ldrh w4, [x4,264] cmp w4, w19 - bne .L943 + bne .L945 add x0, x2, x3, sxtw 1 mov w3, -1 strh w3, [x0,264] sub w1, w1, #1 strh w1, [x2,122] - b .L942 -.L943: + b .L944 +.L945: add x0, x0, 1 cmp x0, 64 - bne .L944 - b .L942 -.L932: + bne .L946 + b .L944 +.L934: mov w0, w19 mov w1, 1 mov w2, 0 bl gc_add_sblk -.L942: +.L944: add w20, w20, 1 uxth w20, w20 - b .L930 -.L968: + b .L932 +.L970: strh wzr, [x24,56] ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -5853,14 +5854,14 @@ ftl_erase_phy_blk: sub w19, w19, #1 and w19, w19, w2 sxth w19, w19 - cbz w0, .L970 + cbz w0, .L972 ldrh w2, [x5,3350] cmp w1, wzr mov w0, w22 cset w1, eq mul w2, w19, w2 bl flash_erase_block_en -.L970: +.L972: add x3, x20, :lo12:.LANCHOR0 mov w1, w21 mov w0, w22 @@ -5891,11 +5892,11 @@ ftl_erase_sblk: mov w19, 0 add x0, x0, x20 ldrb w25, [x0,3] -.L975: +.L977: add x2, x23, :lo12:.LANCHOR0 ldrb w0, [x2,3352] cmp w19, w0 - bge .L986 + bge .L988 ldrb w3, [x2,3338] mov w21, 0 ldrh w2, [x2,3350] @@ -5903,75 +5904,75 @@ ftl_erase_sblk: sub w4, w3, #1 mul w6, w19, w3 mul w5, w24, w3 -.L987: +.L989: cmp w1, w3 - bge .L1000 + bge .L1002 add w0, w1, w6 asr w0, w25, w0 - tbnz x0, 0, .L976 + tbnz x0, 0, .L978 and w0, w1, w4 add x7, x29, 80 add w0, w5, w0 mul w0, w0, w2 str w0, [x7,w21,sxtw 2] add w21, w21, 1 -.L976: - add w1, w1, 1 - b .L987 -.L1000: - cmp w3, 4 - bne .L999 - mov x26, 0 .L978: + add w1, w1, 1 + b .L989 +.L1002: + cmp w3, 4 + bne .L1001 + mov x26, 0 +.L980: cmp w21, w26 - ble .L981 + ble .L983 add x2, x29, 80 mov w0, w19 mov w1, w22 ldr w2, [x2,x26,lsl 2] add x26, x26, 1 bl flash_erase_block_en - b .L978 -.L999: + b .L980 +.L1001: cmp w21, 2 - bne .L982 - add x0, x23, :lo12:.LANCHOR0 - ldrb w0, [x0,3348] - cbz w0, .L983 - cmp w22, wzr - ldr w2, [x29,80] - ldr w3, [x29,84] - mov w0, w19 - cset w1, eq - bl flash_erase_duplane_block -.L983: - ldr w2, [x29,80] - mov w0, w19 - ldr w3, [x29,84] - mov w1, w22 - bl flash_erase_duplane_block - b .L981 -.L982: - cmp w21, 1 - bne .L981 + bne .L984 add x0, x23, :lo12:.LANCHOR0 ldrb w0, [x0,3348] cbz w0, .L985 cmp w22, wzr ldr w2, [x29,80] + ldr w3, [x29,84] + mov w0, w19 + cset w1, eq + bl flash_erase_duplane_block +.L985: + ldr w2, [x29,80] + mov w0, w19 + ldr w3, [x29,84] + mov w1, w22 + bl flash_erase_duplane_block + b .L983 +.L984: + cmp w21, 1 + bne .L983 + add x0, x23, :lo12:.LANCHOR0 + ldrb w0, [x0,3348] + cbz w0, .L987 + cmp w22, wzr + ldr w2, [x29,80] mov w0, w19 cset w1, eq bl flash_erase_block_en -.L985: +.L987: ldr w2, [x29,80] mov w0, w19 mov w1, w22 bl flash_erase_block_en -.L981: +.L983: add w19, w19, 1 - b .L975 -.L986: - cbnz w22, .L988 + b .L977 +.L988: + cbnz w22, .L990 ldr x1, [x2,584] ldrh w0, [x1,x20] add w3, w0, 1 @@ -5987,10 +5988,10 @@ ftl_erase_sblk: ubfx x1, x1, 0, 11 uxth w2, w1 cmp w3, w2 - bge .L990 + bge .L992 strh w1, [x0,96] - b .L990 -.L988: + b .L992 +.L990: ldr x3, [x2,584] ldr w0, [x3,x20] ubfx x1, x0, 11, 8 @@ -6006,9 +6007,9 @@ ftl_erase_sblk: ldr w1, [x1,x20] ubfx x1, x1, 11, 8 cmp w2, w1, uxtb - bcs .L990 + bcs .L992 strh w1, [x0,98] -.L990: +.L992: mov w0, 0 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -6030,39 +6031,39 @@ ftl_alloc_sys_blk: ldr x1, [x1,2864] ldrh w2, [x1,136] cmp w2, 63 - bls .L1002 + bls .L1004 strh wzr, [x1,136] -.L1002: +.L1004: ldrh w0, [x1,112] - cbnz w0, .L1003 + cbnz w0, .L1005 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 1118 + mov w2, 1117 add x1, x1, 1368 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1003: +.L1005: add x0, x19, :lo12:.LANCHOR0 mov w4, 65535 ldr x1, [x0,2864] -.L1007: +.L1009: ldrh w2, [x1,136] -.L1004: +.L1006: cmp w2, 63 - bgt .L1010 + bgt .L1012 sxtw x3, w2 add x3, x3, 80 ldrh w0, [x1,x3,lsl 1] cmp w0, w4 - bne .L1009 + bne .L1011 add w2, w2, 1 - b .L1004 -.L1010: + b .L1006 +.L1012: strh wzr, [x1,136] - b .L1007 -.L1009: + b .L1009 +.L1011: mov w4, -1 strh w4, [x1,x3,lsl 1] strh w2, [x1,136] @@ -6087,34 +6088,34 @@ ftl_free_sys_blk: ldr x2, [x0,2864] ldrh w0, [x2,138] cmp w0, 63 - bls .L1012 + bls .L1014 strh wzr, [x2,138] -.L1012: +.L1014: ldrh w0, [x2,112] cmp w0, 63 - bls .L1013 + bls .L1015 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 1142 + mov w2, 1141 add x1, x1, 1392 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1013: +.L1015: add x1, x19, :lo12:.LANCHOR0 mov w0, 65535 ldr x1, [x1,2864] -.L1017: +.L1019: ldrh w2, [x1,138] -.L1014: +.L1016: cmp w2, 63 - bgt .L1019 + bgt .L1021 sxtw x3, w2 add x3, x3, 80 ldrh w4, [x1,x3,lsl 1] cmp w4, w0 - bne .L1015 + bne .L1017 strh w20, [x1,x3,lsl 1] strh w2, [x1,138] ldrh w0, [x1,112] @@ -6123,12 +6124,12 @@ ftl_free_sys_blk: ldp x19, x20, [sp,16] ldp x29, x30, [sp], 32 ret -.L1015: +.L1017: add w2, w2, 1 - b .L1014 -.L1019: + b .L1016 +.L1021: strh wzr, [x1,138] - b .L1017 + b .L1019 .size ftl_free_sys_blk, .-ftl_free_sys_blk .align 2 .global ftl_info_data_recovery @@ -6142,7 +6143,7 @@ ftl_info_data_recovery: str x23, [sp,48] ldrh w2, [x0] cmp w2, w1 - beq .L1020 + beq .L1022 adrp x19, .LANCHOR0 ubfiz x20, x2, 2, 16 add x23, x19, :lo12:.LANCHOR0 @@ -6150,36 +6151,36 @@ ftl_info_data_recovery: add x22, x21, x20 ldrb w1, [x22,2] tst w1, 224 - bne .L1020 + bne .L1022 ldrb w0, [x0,4] bfi w1, w0, 5, 3 mov w0, w2 strb w1, [x22,2] bl zftl_remove_free_node ldrb w0, [x22,2] - tbz x0, 3, .L1024 + tbz x0, 3, .L1026 ldr x1, [x23,2864] ldrh w0, [x1,116] sub w0, w0, #1 strh w0, [x1,116] - b .L1025 -.L1024: + b .L1027 +.L1026: tst w0, 24 ldr x1, [x23,2864] - bne .L1026 + bne .L1028 ldrh w0, [x1,114] sub w0, w0, #1 strh w0, [x1,114] - b .L1025 -.L1026: + b .L1027 +.L1028: ldrh w0, [x1,118] sub w0, w0, #1 strh w0, [x1,118] -.L1025: +.L1027: ldrb w0, [x22,2] and w0, w0, 224 cmp w0, 160 - bne .L1027 + bne .L1029 ldr w0, [x21,x20] add x19, x19, :lo12:.LANCHOR0 ubfx x1, x0, 11, 8 @@ -6190,29 +6191,29 @@ ftl_info_data_recovery: ldrh w0, [x1,120] sub w0, w0, #1 strh w0, [x1,120] - b .L1020 -.L1027: + b .L1022 +.L1029: ldrh w1, [x21,x20] cmp w0, 64 add w2, w1, 1 bfi w1, w2, 0, 11 strh w1, [x21,x20] - bne .L1028 + bne .L1030 add x19, x19, :lo12:.LANCHOR0 ldr x1, [x19,2864] ldrh w0, [x1,122] sub w0, w0, #1 strh w0, [x1,122] - b .L1020 -.L1028: + b .L1022 +.L1030: cmp w0, 96 - bne .L1020 + bne .L1022 add x19, x19, :lo12:.LANCHOR0 ldr x1, [x19,2864] ldrh w0, [x1,124] sub w0, w0, #1 strh w0, [x1,124] -.L1020: +.L1022: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldr x23, [sp,48] @@ -6236,14 +6237,14 @@ ftl_get_ppa_from_index: ldrb w4, [x4,3276] mul w0, w0, w4 cmp w1, w0 - bge .L1030 + bge .L1032 add x3, x3, 16 - b .L1031 -.L1030: + b .L1033 +.L1032: sub w1, w1, w0 add x3, x3, 48 uxth w1, w1 -.L1031: +.L1033: ldrb w2, [x3,9] mov w0, 65535 sdiv w20, w1, w2 @@ -6251,16 +6252,16 @@ ftl_get_ppa_from_index: add x1, x3, x1, uxth 1 ldrh w21, [x1,16] cmp w21, w0 - bne .L1032 + bne .L1034 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 1529 + mov w2, 1528 add x1, x1, 1416 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1032: +.L1034: add x2, x19, :lo12:.LANCHOR0 ldrh w0, [x2,3350] madd w0, w21, w0, w20 @@ -6282,22 +6283,22 @@ lpa_hash_get_ppa: ldrh w2, [x2,3360] ldr x4, [x1,3872] ldr x5, [x1,3880] -.L1034: +.L1036: cmp w2, w3 - beq .L1038 + beq .L1040 uxtw x1, w2 ldr w6, [x4,x1,lsl 2] cmp w6, w0 - bne .L1035 + bne .L1037 mov w0, w2 bl ftl_get_ppa_from_index - b .L1036 -.L1035: + b .L1038 +.L1037: ldrh w2, [x5,x1,lsl 1] - b .L1034 -.L1038: + b .L1036 +.L1040: mov w0, -1 -.L1036: +.L1038: ldp x29, x30, [sp], 16 ret .size lpa_hash_get_ppa, .-lpa_hash_get_ppa @@ -6312,7 +6313,22 @@ ftl_get_new_free_page: ldrh w1, [x0] mov w0, 65535 cmp w1, w0 - bne .L1040 + bne .L1042 + adrp x1, .LANCHOR1 + adrp x0, .LC0 + add x1, x1, :lo12:.LANCHOR1 + mov w2, 1643 + add x1, x1, 1440 + add x0, x0, :lo12:.LC0 + bl printk + bl dump_stack +.L1042: + adrp x20, .LANCHOR0 + ldrh w1, [x19,2] + add x0, x20, :lo12:.LANCHOR0 + ldrh w0, [x0,3300] + cmp w1, w0 + bne .L1043 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 @@ -6321,13 +6337,9 @@ ftl_get_new_free_page: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1040: - adrp x20, .LANCHOR0 - ldrh w1, [x19,2] - add x0, x20, :lo12:.LANCHOR0 - ldrh w0, [x0,3300] - cmp w1, w0 - bne .L1041 +.L1043: + ldrh w0, [x19,6] + cbnz w0, .L1044 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 @@ -6336,43 +6348,32 @@ ftl_get_new_free_page: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1041: - ldrh w0, [x19,6] - cbnz w0, .L1042 - adrp x1, .LANCHOR1 - adrp x0, .LC0 - add x1, x1, :lo12:.LANCHOR1 - mov w2, 1646 - add x1, x1, 1440 - add x0, x0, :lo12:.LC0 - bl printk - bl dump_stack -.L1042: +.L1044: ldrb w0, [x19,5] add x1, x20, :lo12:.LANCHOR0 add x0, x0, 8 ldrb w2, [x1,3276] mov w1, 65535 ldrh w0, [x19,x0,lsl 1] -.L1043: +.L1045: cmp w0, w1 - bne .L1047 + bne .L1049 ldrb w0, [x19,5] add w0, w0, 1 uxtb w0, w0 strb w0, [x19,5] cmp w0, w2 - bne .L1044 + bne .L1046 ldrh w0, [x19,2] strb wzr, [x19,5] add w0, w0, 1 strh w0, [x19,2] -.L1044: +.L1046: ldrb w0, [x19,5] add x0, x0, 8 ldrh w0, [x19,x0,lsl 1] - b .L1043 -.L1047: + b .L1045 +.L1049: add x20, x20, :lo12:.LANCHOR0 ldrh w2, [x19,2] ldrh w1, [x20,3350] @@ -6390,11 +6391,11 @@ ftl_get_new_free_page: uxtb w1, w1 strb w1, [x19,5] cmp w3, w1 - bne .L1046 + bne .L1048 add w2, w2, 1 strb wzr, [x19,5] strh w2, [x19,2] -.L1046: +.L1048: ldp x19, x20, [sp,16] ldp x29, x30, [sp], 32 ret @@ -6412,16 +6413,16 @@ ftl_ext_alloc_new_blk: mov w1, 65533 sub w0, w0, #1 cmp w1, w0, uxth - bcs .L1049 + bcs .L1051 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 1677 + mov w2, 1676 add x1, x1, 1464 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1049: +.L1051: adrp x19, .LANCHOR0 mov w1, 0 add x19, x19, :lo12:.LANCHOR0 @@ -6445,13 +6446,13 @@ ftl_total_vpn_update: adrp x1, .LANCHOR0 add x3, x1, :lo12:.LANCHOR0 ldrh w2, [x3,3888] - cbnz w0, .L1051 + cbnz w0, .L1053 cmp w2, 4 - bhi .L1051 + bhi .L1053 add w2, w2, 1 strh w2, [x3,3888] - b .L1050 -.L1051: + b .L1052 +.L1053: add x0, x1, :lo12:.LANCHOR0 mov w9, 65535 strh wzr, [x0,3888] @@ -6461,35 +6462,35 @@ ftl_total_vpn_update: mov x0, 0 mov w2, w0 mov w3, w0 -.L1053: +.L1055: cmp w6, w0, uxth - bls .L1061 + bls .L1063 ldrh w4, [x7,x0,lsl 1] cmp w4, w9 - beq .L1054 + beq .L1056 add x5, x8, x0, lsl 2 ldrb w5, [x5,2] and w5, w5, 224 cmp w5, 160 - bne .L1055 + bne .L1057 add w2, w2, w4 - b .L1054 -.L1055: + b .L1056 +.L1057: add w3, w3, w4 -.L1054: +.L1056: add x0, x0, 1 - b .L1053 -.L1061: + b .L1055 +.L1063: add x1, x1, :lo12:.LANCHOR0 ldr x0, [x1,608] ldr x1, [x1,2864] str w3, [x0,524] str w2, [x0,528] ldrh w1, [x1,120] - cbz w1, .L1050 + cbz w1, .L1052 udiv w2, w2, w1 str w2, [x0,532] -.L1050: +.L1052: ret .size ftl_total_vpn_update, .-ftl_total_vpn_update .align 2 @@ -6515,10 +6516,10 @@ ftl_vpn_update: ldr x0, [x1,600] ldrh w2, [x0,x19] mov w0, 0 - cbnz w2, .L1064 + cbnz w2, .L1066 mov w0, 1 str w0, [x1,2884] -.L1064: +.L1066: ldr x19, [sp,16] ldp x29, x30, [sp], 32 ret @@ -6534,34 +6535,34 @@ ftl_vpn_decrement: str x19, [sp,16] cmp w1, w0 adrp x2, .LANCHOR0 - beq .L1067 + beq .L1069 add x0, x2, :lo12:.LANCHOR0 ubfiz x3, x1, 1, 16 ldr x0, [x0,600] ldrh w19, [x0,x3] - cbnz w19, .L1068 + cbnz w19, .L1070 adrp x0, .LC102 mov w2, w19 add x0, x0, :lo12:.LC102 bl printk - b .L1074 -.L1068: + b .L1076 +.L1070: sub w19, w19, #1 strh w19, [x0,x3] -.L1067: +.L1069: add x19, x2, :lo12:.LANCHOR0 mov w0, 0 ldrh w2, [x19,3224] cmp w2, w1 - beq .L1069 + beq .L1071 mov w0, 65535 cmp w2, w0 - bne .L1070 + bne .L1072 strh w1, [x19,3224] -.L1074: +.L1076: mov w0, 0 - b .L1069 -.L1070: + b .L1071 +.L1072: mov w0, w2 str x1, [x29,40] bl ftl_vpn_update @@ -6578,7 +6579,7 @@ ftl_vpn_decrement: strh w3, [x19,3890] add x3, x19, x3, uxth 1 strh w2, [x3,3232] -.L1069: +.L1071: ldr x19, [sp,16] ldp x29, x30, [sp], 48 ret @@ -6599,42 +6600,42 @@ lpa_hash_update_ppa: mov w6, 65535 ldrh w4, [x4,w5,sxtw 1] mov w11, w6 -.L1076: +.L1078: cmp w4, w11 - beq .L1080 + beq .L1082 uxtw x9, w4 uxth x7, w4 lsl x10, x9, 2 add x13, x8, x10 ldr w10, [x8,x10] cmp w10, w0 - bne .L1077 + bne .L1079 mov w4, -1 str w4, [x13] mov w4, 65535 cmp w6, w4 add x4, x3, :lo12:.LANCHOR0 - bne .L1078 + bne .L1080 ldr x6, [x4,3880] add x4, x4, 3360 ldrh w6, [x6,x7,lsl 1] strh w6, [x4,w5,sxtw 1] - b .L1079 -.L1078: + b .L1081 +.L1080: ldr x4, [x4,3880] ldrh w8, [x4,x7,lsl 1] strh w8, [x4,w6,uxtw 1] -.L1079: +.L1081: add x4, x3, :lo12:.LANCHOR0 mov w6, -1 ldr x4, [x4,3880] strh w6, [x4,x7,lsl 1] - b .L1080 -.L1077: + b .L1082 +.L1079: mov w6, w4 ldrh w4, [x12,x9,lsl 1] - b .L1076 -.L1080: + b .L1078 +.L1082: add x3, x3, :lo12:.LANCHOR0 uxtw x4, w2 cmn w1, #1 @@ -6645,7 +6646,7 @@ lpa_hash_update_ppa: strh w2, [x0,w5,sxtw 1] ldr x0, [x3,3880] strh w6, [x0,x4,lsl 1] - beq .L1082 + beq .L1084 ldrh w0, [x3,3340] mov w2, 21 mov w4, 1 @@ -6657,7 +6658,7 @@ lpa_hash_update_ppa: and w1, w2, w1 udiv w0, w1, w0 bl ftl_vpn_decrement -.L1082: +.L1084: mov w0, -1 ldp x29, x30, [sp], 16 ret @@ -6687,17 +6688,17 @@ ftl_mask_bad_block: adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] uxth w20, w2 - tbz x0, 14, .L1087 + tbz x0, 14, .L1089 adrp x0, .LC103 mov w1, w21 add x0, x0, :lo12:.LC103 mov w2, w20 bl printk -.L1087: +.L1089: add x0, x19, :lo12:.LANCHOR0 ldrh w1, [x0,576] cmp w1, w20 - bls .L1086 + bls .L1088 ldr x0, [x0,584] add x20, x0, x20, uxth 2 mov w0, 1 @@ -6705,7 +6706,7 @@ ftl_mask_bad_block: ldrb w0, [x20,3] orr w1, w1, w0 strb w1, [x20,3] -.L1086: +.L1088: ldp x19, x20, [sp,16] ldr x21, [sp,32] ldp x29, x30, [sp], 48 @@ -6793,47 +6794,47 @@ ftl_write_buf: stp x19, x20, [sp,16] str x21, [sp,32] mov x20, x0 - cbnz x0, .L1094 + cbnz x0, .L1096 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 661 + mov w2, 662 add x1, x1, 1488 add x0, x0, :lo12:.LC0 bl printk bl dump_stack bl print_ftl_debug_info mov w0, -1 - b .L1103 -.L1094: + b .L1105 +.L1096: adrp x19, .LANCHOR0 ldrb w1, [x20,56] add x0, x19, :lo12:.LANCHOR0 ldrb w0, [x0,2832] cmp w1, w0 - bls .L1099 + bls .L1101 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 666 + mov w2, 667 add x1, x1, 1488 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1099: +.L1101: ldrb w0, [x20,56] - cbz w0, .L1096 + cbz w0, .L1098 add x21, x19, :lo12:.LANCHOR0 ldrb w1, [x21,2832] cmp w1, w0 - bcs .L1097 -.L1096: + bcs .L1099 +.L1098: mov x0, x20 add x19, x19, :lo12:.LANCHOR0 bl buf_free ldrb w0, [x19,2856] - b .L1103 -.L1097: + b .L1105 +.L1099: add x0, x21, 2888 mov x1, x20 bl buf_add_tail @@ -6850,7 +6851,7 @@ ftl_write_buf: add w1, w1, 1 str w1, [x0,32] mov w0, w2 -.L1103: +.L1105: ldp x19, x20, [sp,16] ldr x21, [sp,32] ldp x29, x30, [sp], 48 @@ -6873,10 +6874,10 @@ ftl_write_completed: mov w23, 21 mov w24, 1 add x21, x21, :lo12:.LC109 -.L1105: +.L1107: ldrb w0, [x19,3892] cmp w0, 255 - beq .L1112 + beq .L1114 sbfiz x0, x0, 6, 32 add x20, x22, x0 add x4, x20, 32 @@ -6884,7 +6885,7 @@ ftl_write_completed: strb w0, [x19,3892] ldr w0, [x20,52] cmn w0, #1 - bne .L1106 + bne .L1108 ldrh w2, [x19,3340] mov x0, x21 ldr w3, [x4,8] @@ -6909,33 +6910,33 @@ ftl_write_completed: str w1, [x0,556] ldrh w1, [x0,16] cmp w1, w25 - bne .L1107 + bne .L1109 strh wzr, [x0,22] - b .L1108 -.L1107: + b .L1110 +.L1109: ldrh w1, [x0,48] cmp w1, w25 - bne .L1108 + bne .L1110 strh wzr, [x0,54] -.L1108: +.L1110: mov x0, x20 bl ftl_write_buf - b .L1105 -.L1106: + b .L1107 +.L1108: ldr w0, [x4,4] ldr w1, [x4,12] ldrh w2, [x20,48] bl lpa_hash_update_ppa ldrb w0, [x20,2] - tbz x0, 2, .L1110 + tbz x0, 2, .L1112 and w0, w0, -3 strb w0, [x20,2] - b .L1105 -.L1110: + b .L1107 +.L1112: mov x0, x20 bl buf_free - b .L1105 -.L1112: + b .L1107 +.L1114: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -6951,33 +6952,33 @@ zftl_add_read_buf: add x29, sp, 0 stp x19, x20, [sp,16] mov x20, x0 - cbnz x0, .L1114 + cbnz x0, .L1116 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 948 + mov w2, 949 add x1, x1, 1504 add x0, x0, :lo12:.LC0 bl printk bl dump_stack bl print_ftl_debug_info - b .L1113 -.L1114: + b .L1115 +.L1116: adrp x19, .LANCHOR0 ldrb w1, [x20,56] add x0, x19, :lo12:.LANCHOR0 ldrb w0, [x0,2832] cmp w1, w0 - bls .L1117 + bls .L1119 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 - mov w2, 953 + mov w2, 954 add x1, x1, 1504 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1117: +.L1119: add x19, x19, :lo12:.LANCHOR0 mov x1, x20 add x0, x19, 3893 @@ -6985,7 +6986,7 @@ zftl_add_read_buf: ldrb w0, [x19,3894] add w0, w0, 1 strb w0, [x19,3894] -.L1113: +.L1115: ldp x19, x20, [sp,16] ldp x29, x30, [sp], 32 ret @@ -7010,13 +7011,13 @@ ftl_alloc_sblk: uxth w19, w0 mov w0, 65535 cmp w19, w0 - beq .L1120 + beq .L1122 adrp x0, .LANCHOR0+584 ldr x21, [x0,#:lo12:.LANCHOR0+584] add x21, x21, x19, uxth 2 ldrb w0, [x21,2] tst w0, 224 - beq .L1121 + beq .L1123 adrp x1, .LANCHOR1 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR1 @@ -7025,15 +7026,15 @@ ftl_alloc_sblk: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1121: +.L1123: ldrb w1, [x21,2] bfi w1, w20, 5, 3 ubfx x2, x1, 3, 2 orr w0, w22, w2 bfi w1, w0, 3, 2 strb w1, [x21,2] - b .L1127 -.L1120: + b .L1129 +.L1122: adrp x21, .LC110 bl print_ftl_debug_info add x21, x21, :lo12:.LC110 @@ -7058,7 +7059,7 @@ ftl_alloc_sblk: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1127: +.L1129: mov w0, w19 ldr x23, [sp,48] ldp x19, x20, [sp,16] @@ -7096,13 +7097,13 @@ dump_sblk_queue: bl printk ldrb w19, [x20,2835] cmp w19, 255 - beq .L1129 + beq .L1131 add x20, x20, 784 sbfiz x19, x19, 6, 32 adrp x21, .LC112 add x19, x20, x19 add x21, x21, :lo12:.LC112 -.L1131: +.L1133: ldrb w1, [x19,1] mov x0, x21 ldrb w2, [x19,58] @@ -7110,11 +7111,11 @@ dump_sblk_queue: bl printk ldrb w19, [x19] cmp w19, 255 - beq .L1129 + beq .L1131 sbfiz x19, x19, 6, 32 add x19, x20, x19 - b .L1131 -.L1129: + b .L1133 +.L1131: ldp x19, x20, [sp,16] ldr x21, [sp,32] ldp x29, x30, [sp], 48 @@ -7130,7 +7131,7 @@ queue_lun_state: mov w0, 0 ldrb w2, [x3,2835] cmp w2, 255 - beq .L1139 + beq .L1141 ldrh w8, [x3,3340] mov w4, 21 ldrb w7, [x3,3338] @@ -7142,60 +7143,60 @@ queue_lun_state: sub w4, w4, #1 asr w5, w5, w8 uxth w7, w7 - adrp x10, .L1142 + adrp x10, .L1144 uxth w4, w4 and w5, w5, w7 and w5, w5, w4 add x3, x3, 784 - add x10, x10, :lo12:.L1142 -.L1145: + add x10, x10, :lo12:.L1144 +.L1147: add x0, x3, x2, lsl 6 ldr w6, [x0,40] ubfx x11, x6, 21, 3 cmp w11, w9 - bne .L1140 + bne .L1142 lsr w6, w6, w8 ldrb w0, [x0,58] and w6, w7, w6 and w6, w4, w6 cmp w6, w5 - bne .L1141 + bne .L1143 cmp w1, 1 - beq .L1143 - b .L1139 -.L1141: + beq .L1145 + b .L1141 +.L1143: cmp w1, 3 - bhi .L1140 + bhi .L1142 ldrb w6, [x10,w1,uxtw] - adr x11, .Lrtx1142 + adr x11, .Lrtx1144 add x6, x11, w6, sxtb #2 br x6 -.Lrtx1142: +.Lrtx1144: .section .rodata .align 0 .align 2 -.L1142: - .byte (.L1139 - .Lrtx1142) / 4 - .byte (.L1143 - .Lrtx1142) / 4 - .byte (.L1144 - .Lrtx1142) / 4 - .byte (.L1139 - .Lrtx1142) / 4 +.L1144: + .byte (.L1141 - .Lrtx1144) / 4 + .byte (.L1145 - .Lrtx1144) / 4 + .byte (.L1146 - .Lrtx1144) / 4 + .byte (.L1141 - .Lrtx1144) / 4 .text -.L1143: +.L1145: sub w6, w0, #6 and w6, w6, -3 uxtb w6, w6 - cbz w6, .L1140 - b .L1139 -.L1144: + cbz w6, .L1142 + b .L1141 +.L1146: cmp w0, 10 - bne .L1139 -.L1140: + bne .L1141 +.L1142: lsl x2, x2, 6 ldrb w2, [x3,x2] cmp w2, 255 - bne .L1145 + bne .L1147 mov w0, 0 -.L1139: +.L1141: ret .size queue_lun_state, .-queue_lun_state .align 2 @@ -7213,9 +7214,9 @@ queue_remove_completed_req: ldrb w9, [x0,3895] ldrb w8, [x0,3256] ldrb w10, [x0,3892] -.L1155: +.L1157: cmp w7, 255 - beq .L1156 + beq .L1158 sbfiz x6, x7, 6, 32 sxtw x1, w7 add x2, x4, x6 @@ -7223,64 +7224,64 @@ queue_remove_completed_req: sub w2, w2, #11 uxtb w2, w2 cmp w2, 1 - bls .L1157 - cbz w5, .L1154 + bls .L1159 + cbz w5, .L1156 strb w7, [x0,2835] - b .L1154 -.L1157: + b .L1156 +.L1159: lsl x5, x1, 6 ldrb w7, [x4,x6] add x2, x4, x5 strb w11, [x4,x5] ldrb w5, [x2,59] cmp w5, 1 - bne .L1160 + bne .L1162 ldrh w2, [x2,50] - cbnz w2, .L1168 + cbnz w2, .L1170 mov w2, w10 mov x5, x13 - b .L1161 -.L1160: - cbz w5, .L1178 + b .L1163 .L1162: + cbz w5, .L1180 +.L1164: mov w5, 1 - b .L1155 -.L1178: + b .L1157 +.L1180: ldr w2, [x2,36] cmn w2, #1 - beq .L1162 + beq .L1164 mov w2, w9 mov x5, x12 - b .L1161 -.L1168: + b .L1163 +.L1170: mov w2, w8 add x5, x0, 3256 -.L1161: +.L1163: cmp w2, 255 - bne .L1166 + bne .L1168 add x3, x3, :lo12:.LANCHOR0 add x1, x3, x1, lsl 6 strb w7, [x3,2835] ldrb w0, [x1,785] strb w0, [x5] - b .L1154 -.L1166: + b .L1156 +.L1168: mov w5, w2 sbfiz x2, x2, 6, 32 ldrb w2, [x4,x2] cmp w2, 255 - bne .L1166 + bne .L1168 add x1, x4, x1, lsl 6 sbfiz x5, x5, 6, 32 ldrb w1, [x1,1] strb w1, [x4,x5] - b .L1162 -.L1156: - cbz w5, .L1154 + b .L1164 +.L1158: + cbz w5, .L1156 add x3, x3, :lo12:.LANCHOR0 mov w0, -1 strb w0, [x3,2835] -.L1154: +.L1156: ret .size queue_remove_completed_req, .-queue_remove_completed_req .align 2 @@ -7301,16 +7302,16 @@ pm_alloc_new_blk: ldrb w1, [x3,3276] strh w0, [x2,690] cmp w1, w0 - bls .L1180 + bls .L1182 add x0, x2, x0, sxtw 1 ldrh w1, [x0,672] mov w0, 65535 cmp w1, w0 - bne .L1181 -.L1180: + bne .L1183 +.L1182: adrp x22, .LC113 add x22, x22, :lo12:.LC113 -.L1193: +.L1195: mov w0, 1 add x20, x19, :lo12:.LANCHOR0 bl ftl_alloc_sblk @@ -7322,7 +7323,7 @@ pm_alloc_new_blk: add x1, x1, 672 bl ftl_get_blk_list_in_sblk uxth w0, w0 - cbnz w0, .L1182 + cbnz w0, .L1184 mov w1, w21 mov x0, x22 bl printk @@ -7331,23 +7332,23 @@ pm_alloc_new_blk: ldrb w2, [x1,2] orr w2, w2, -32 strb w2, [x1,2] - b .L1193 -.L1182: + b .L1195 +.L1184: ldr x1, [x20,2864] mov w0, 1 mov w2, 65535 str w0, [x20,3896] mov x20, 0 strh wzr, [x1,690] -.L1184: +.L1186: add x3, x1, x20, lsl 1 uxth w0, w20 ldrh w3, [x3,416] cmp w3, w2 - beq .L1183 + beq .L1185 add x20, x20, 1 cmp x20, 128 - bne .L1184 + bne .L1186 adrp x0, .LC0 adrp x1, .LANCHOR3 add x1, x1, :lo12:.LANCHOR3 @@ -7356,7 +7357,7 @@ pm_alloc_new_blk: bl printk bl dump_stack mov w0, w20 -.L1183: +.L1185: add x1, x19, :lo12:.LANCHOR0 ldr x1, [x1,2864] add x0, x1, x0, sxtw 1 @@ -7364,7 +7365,7 @@ pm_alloc_new_blk: ldrh w0, [x1,688] add w0, w0, 1 strh w0, [x1,688] -.L1181: +.L1183: add x0, x19, :lo12:.LANCHOR0 ldr x1, [x0,2864] ldrh w0, [x1,690] @@ -7373,7 +7374,7 @@ pm_alloc_new_blk: mov w0, 65533 sub w1, w20, #1 cmp w0, w1, uxth - bcs .L1186 + bcs .L1188 adrp x0, .LC0 adrp x1, .LANCHOR3 add x1, x1, :lo12:.LANCHOR3 @@ -7381,7 +7382,7 @@ pm_alloc_new_blk: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1186: +.L1188: add x19, x19, :lo12:.LANCHOR0 mov w0, 21 ldr x1, [x19,2864] @@ -7393,7 +7394,7 @@ pm_alloc_new_blk: strh w4, [x1,694] adrp x1, .LANCHOR2 ldr w1, [x1,#:lo12:.LANCHOR2] - tbz x1, 12, .L1190 + tbz x1, 12, .L1192 mov w2, 1 mov w1, w20 lsl w2, w2, w0 @@ -7403,7 +7404,7 @@ pm_alloc_new_blk: mov w3, w20 uxth w4, w4 bl printk -.L1190: +.L1192: mov w0, 0 ldr x23, [sp,48] ldp x19, x20, [sp,16] @@ -7422,34 +7423,34 @@ pm_select_ram_region: str x19, [sp,16] add x2, x2, :lo12:.LANCHOR0 mov x19, 0 -.L1197: +.L1199: add x1, x2, 3904 lsl x4, x19, 4 uxth w0, w19 ldrh w4, [x4,x1] cmp w4, w3 - beq .L1196 + beq .L1198 add x19, x19, 1 cmp x19, 32 - bne .L1197 + bne .L1199 mov x0, 0 mov w3, 32768 -.L1199: +.L1201: add x2, x1, x0, lsl 4 uxth w4, w0 ldrh w2, [x2,2] - tbnz x2, 15, .L1198 + tbnz x2, 15, .L1200 cmp w2, w3 - bcs .L1198 + bcs .L1200 mov w3, w2 mov w19, w4 -.L1198: +.L1200: add x0, x0, 1 cmp x0, 32 - bne .L1199 + bne .L1201 cmp w19, 32 mov w0, w19 - bne .L1196 + bne .L1198 adrp x0, .LANCHOR4+64 mov w2, -1 mov w1, 0 @@ -7457,23 +7458,23 @@ pm_select_ram_region: adrp x0, .LANCHOR0 add x0, x0, :lo12:.LANCHOR0 add x0, x0, 3904 -.L1201: +.L1203: ldrh w5, [x0,2] cmp w5, w2 - bcs .L1200 + bcs .L1202 ldrh w4, [x0] cmp w4, w3 csel w2, w2, w5, eq cmp w4, w3 csel w19, w19, w1, eq -.L1200: +.L1202: add w1, w1, 1 add x0, x0, 16 uxth w1, w1 cmp w1, 32 - bne .L1201 + bne .L1203 cmp w19, 32 - bne .L1202 + bne .L1204 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 @@ -7482,9 +7483,9 @@ pm_select_ram_region: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1202: +.L1204: mov w0, w19 -.L1196: +.L1198: ldr x19, [sp,16] ldp x29, x30, [sp], 32 ret @@ -7508,16 +7509,16 @@ flash_lsb_page_tbl_build: add x29, sp, 0 stp x19, x20, [sp,16] adrp x19, .LANCHOR0 - cbnz w0, .L1210 + cbnz w0, .L1212 mov x0, 0 add x2, x19, :lo12:.LANCHOR0 -.L1211: +.L1213: add x1, x2, 4 strh w0, [x1,x0,lsl 1] add x0, x0, 1 cmp x0, 256 - bne .L1211 -.L1217: + bne .L1213 +.L1219: adrp x20, .LANCHOR4 mov w1, 255 add x20, x20, :lo12:.LANCHOR4 @@ -7526,39 +7527,39 @@ flash_lsb_page_tbl_build: add x19, x19, :lo12:.LANCHOR0 bl ftl_memset mov x0, 0 - b .L1212 -.L1210: + b .L1214 +.L1212: cmp w0, 1 - bne .L1213 + bne .L1215 mov x0, 0 mov w4, 3 mov w5, 2 add x3, x19, :lo12:.LANCHOR0 -.L1216: +.L1218: cmp x0, 3 uxth w2, w0 mov w1, w2 - bls .L1214 + bls .L1216 ubfiz w1, w2, 1, 15 and w2, w2, 1 cmp w2, wzr csel w2, w4, w5, ne sub w1, w1, w2 uxth w1, w1 -.L1214: +.L1216: add x2, x3, 4 strh w1, [x2,x0,lsl 1] add x0, x0, 1 cmp x0, 256 - bne .L1216 - b .L1217 -.L1213: - cmp w0, 2 bne .L1218 + b .L1219 +.L1215: + cmp w0, 2 + bne .L1220 mov w1, 65535 mov x0, 0 add x4, x19, :lo12:.LANCHOR0 -.L1220: +.L1222: add x3, x4, 4 cmp x0, 1 uxth w2, w0 @@ -7568,36 +7569,36 @@ flash_lsb_page_tbl_build: add x0, x0, 1 cmp x0, 256 uxth w1, w1 - bne .L1220 - b .L1217 -.L1218: + bne .L1222 + b .L1219 +.L1220: cmp w0, 3 - bne .L1221 + bne .L1223 mov x0, 0 mov w4, 5 mov w5, 4 add x3, x19, :lo12:.LANCHOR0 -.L1224: +.L1226: cmp x0, 5 uxth w2, w0 mov w1, w2 - bls .L1222 + bls .L1224 ubfiz w1, w2, 1, 15 and w2, w2, 1 cmp w2, wzr csel w2, w4, w5, ne sub w1, w1, w2 uxth w1, w1 -.L1222: +.L1224: add x2, x3, 4 strh w1, [x2,x0,lsl 1] add x0, x0, 1 cmp x0, 256 - bne .L1224 - b .L1217 -.L1221: + bne .L1226 + b .L1219 +.L1223: cmp w0, 4 - bne .L1225 + bne .L1227 add x2, x19, :lo12:.LANCHOR0 mov w5, 7 add x1, x2, 4 @@ -7617,7 +7618,7 @@ flash_lsb_page_tbl_build: strh w0, [x1,14] mov w0, 8 strh w2, [x1,6] -.L1227: +.L1229: and w3, w0, 1 ubfiz w2, w0, 1, 15 add w0, w0, 1 @@ -7628,48 +7629,48 @@ flash_lsb_page_tbl_build: sub w2, w2, w3 cmp w0, 256 strh w2, [x1,14] - bne .L1227 - b .L1217 -.L1225: + bne .L1229 + b .L1219 +.L1227: cmp w0, 5 - bne .L1228 + bne .L1230 mov x0, 0 add x2, x19, :lo12:.LANCHOR0 -.L1229: +.L1231: add x1, x2, 4 strh w0, [x1,x0,lsl 1] add x0, x0, 1 cmp x0, 16 - bne .L1229 + bne .L1231 mov x0, 0 -.L1230: +.L1232: add x2, x1, x0 add w3, w0, 16 add x0, x0, 2 cmp x0, 480 strh w3, [x2,32] - bne .L1230 - b .L1217 -.L1228: + bne .L1232 + b .L1219 +.L1230: cmp w0, 8 - bne .L1217 + bne .L1219 mov x0, 0 add x2, x19, :lo12:.LANCHOR0 -.L1231: +.L1233: add x1, x2, 4 strh w0, [x0,x1] add x0, x0, 2 cmp x0, 512 - bne .L1231 - b .L1217 -.L1212: + bne .L1233 + b .L1219 +.L1214: add x1, x19, 4 add x2, x20, 68 ldrh w1, [x0,x1] add x0, x0, 2 cmp x0, 512 strh w1, [x2,w1,sxtw 1] - bne .L1212 + bne .L1214 ldp x19, x20, [sp,16] ldp x29, x30, [sp], 32 ret @@ -7687,61 +7688,65 @@ flash_die_info_init: ldr w0, [x19,#:lo12:.LANCHOR2] stp x25, x26, [sp,64] stp x27, x28, [sp,80] - tbz x0, 12, .L1248 + tbz x0, 12, .L1250 adrp x1, .LANCHOR3 adrp x0, .LC4 add x1, x1, :lo12:.LANCHOR3 add x0, x0, :lo12:.LC4 add x1, x1, 48 bl printk -.L1248: - add x25, x19, :lo12:.LANCHOR2 +.L1250: + add x24, x19, :lo12:.LANCHOR2 adrp x21, .LANCHOR0 add x20, x21, :lo12:.LANCHOR0 adrp x22, .LANCHOR4 - add x26, x22, :lo12:.LANCHOR4 + add x25, x22, :lo12:.LANCHOR4 mov w2, 8 - ldrh w0, [x25,402] - mov x24, 0 - ldrb w1, [x25,388] - add x27, x20, 748 + ldrh w0, [x24,402] + mov x23, 0 + ldrb w1, [x24,388] + mov w26, 2 strh w0, [x20,2] - add x25, x25, 377 - ldrh w0, [x25,9] + add x27, x24, 377 + ldrh w0, [x24,386] + add x28, x20, 748 strb wzr, [x20,633] sdiv w0, w0, w1 mov w1, 0 - strh w0, [x26,1092] + strh w0, [x25,1092] add x0, x20, 736 bl ftl_memset - add x0, x26, 1096 + add x0, x25, 1096 mov w1, 0 mov w2, 32 bl ftl_memset - ldrb w23, [x25,-1] -.L1250: - mov x0, x25 - add x1, x27, x24, lsl 3 - mov w2, w23 +.L1252: + add x0, x20, 744 + ldrb w2, [x24,376] + add x1, x28, x23, lsl 3 + strb w26, [x23,x0] + mov x0, x27 bl flash_mem_cmp8 - cbnz w0, .L1249 + cbnz w0, .L1251 ldrb w1, [x20,633] - add x2, x26, 1096 + add x2, x25, 1096 str w0, [x2,w1,sxtw 2] add w0, w1, 1 - add x1, x20, x1, sxtw strb w0, [x20,633] - strb w24, [x1,736] -.L1249: - add x24, x24, 1 - cmp x24, 4 - bne .L1250 + uxtb w0, w23 + add x1, x20, x1, sxtw + strb w0, [x1,736] + bl zftl_flash_enter_slc_mode +.L1251: + add x23, x23, 1 + cmp x23, 4 + bne .L1252 add x0, x19, :lo12:.LANCHOR2 add x1, x0, 376 ldrb w2, [x1,8] cmp w2, 2 - beq .L1251 -.L1255: + beq .L1253 +.L1257: add x19, x19, :lo12:.LANCHOR2 add x21, x21, :lo12:.LANCHOR0 add x22, x22, :lo12:.LANCHOR4 @@ -7758,44 +7763,45 @@ flash_die_info_init: ldp x21, x22, [sp,32] ldp x29, x30, [sp], 112 ret -.L1251: - add x24, x21, :lo12:.LANCHOR0 +.L1253: + add x23, x21, :lo12:.LANCHOR0 ldrh w20, [x1,14] - ldrb w27, [x1,23] - mov x25, 0 + ldrb w26, [x0,376] + mov x24, 0 and w20, w20, 65280 - add x26, x0, 377 - ldrh w2, [x24,2] - add x3, x24, 748 + ldrb w27, [x1,23] + ldrh w2, [x23,2] + add x25, x0, 377 + add x3, x23, 748 add x4, x22, :lo12:.LANCHOR4 mul w20, w20, w2 ldrb w2, [x1,13] mul w20, w20, w2 lsl w28, w20, 1 -.L1254: - add x1, x3, x25, lsl 3 - mov x0, x26 - mov w2, w23 +.L1256: + add x1, x3, x24, lsl 3 + mov x0, x25 + mov w2, w26 str x4, [x29,96] str x3, [x29,104] bl flash_mem_cmp8 ldr x3, [x29,104] ldr x4, [x29,96] - cbnz w0, .L1252 - ldrb w1, [x24,633] - add x0, x4, 1096 + cbnz w0, .L1254 + ldrb w0, [x23,633] + add x1, x4, 1096 cmp w27, wzr csel w2, w20, w28, eq - str w2, [x0,w1,sxtw 2] - add w0, w1, 1 - add x1, x24, x1, sxtw - strb w0, [x24,633] - strb w25, [x1,736] -.L1252: - add x25, x25, 1 - cmp x25, 4 - bne .L1254 - b .L1255 + str w2, [x1,w0,sxtw 2] + add w1, w0, 1 + add x0, x23, x0, sxtw + strb w1, [x23,633] + strb w24, [x0,736] +.L1254: + add x24, x24, 1 + cmp x24, 4 + bne .L1256 + b .L1257 .size flash_die_info_init, .-flash_die_info_init .align 2 .global lpa_hash_init @@ -7830,7 +7836,7 @@ lpa_rebuild_hash: add x29, sp, 0 ldr w0, [x0,#:lo12:.LANCHOR2] str x19, [sp,16] - tbz x0, 12, .L1266 + tbz x0, 12, .L1268 adrp x1, .LANCHOR3 adrp x0, .LC115 add x1, x1, :lo12:.LANCHOR3 @@ -7839,7 +7845,7 @@ lpa_rebuild_hash: mov w2, 222 mov w3, 0 bl printk -.L1266: +.L1268: adrp x19, .LANCHOR0 mov w1, 255 add x19, x19, :lo12:.LANCHOR0 @@ -7854,28 +7860,28 @@ lpa_rebuild_hash: lsl w2, w2, 2 bl ftl_memset mov w0, 0 -.L1267: +.L1269: ldrh w1, [x19,3300] ldrb w2, [x19,3276] mul w1, w1, w2 cmp w0, w1, lsl 1 - bge .L1276 + bge .L1278 uxtw x2, w0 ldr x1, [x19,3872] ldr w1, [x1,x2,lsl 2] cmn w1, #1 - beq .L1268 + beq .L1270 uxtb w1, w1 add x3, x19, 3360 ldrh w4, [x3,w1,sxtw 1] strh w0, [x3,w1,sxtw 1] ldr x1, [x19,3880] strh w4, [x1,x2,lsl 1] -.L1268: +.L1270: add w0, w0, 1 uxth w0, w0 - b .L1267 -.L1276: + b .L1269 +.L1278: ldr x19, [sp,16] ldp x29, x30, [sp], 32 ret @@ -7920,9 +7926,9 @@ zftl_read_flash_info: strb w1, [x19,9] mov x1, 0 strb w2, [x19,8] -.L1278: +.L1280: cmp w4, w1, uxtb - bls .L1280 + bls .L1282 add x2, x0, 736 ldrb w3, [x19,10] ldrb w2, [x1,x2] @@ -7930,8 +7936,8 @@ zftl_read_flash_info: lsl w2, w5, w2 orr w2, w2, w3 strb w2, [x19,10] - b .L1278 -.L1280: + b .L1280 +.L1282: ldr x19, [sp,16] ldp x29, x30, [sp], 32 ret @@ -8029,9 +8035,9 @@ gc_static_wearleveling: ldr w1, [x0,32] mov w0, 10240 cmp w1, w0 - bls .L1283 + bls .L1285 bl ftl_tmp_into_update -.L1283: +.L1285: add x3, x19, :lo12:.LANCHOR0 ldr x0, [x3,608] ldr w1, [x0,568] @@ -8039,14 +8045,14 @@ gc_static_wearleveling: add w1, w1, 860160 add w1, w1, 3840 cmp w2, w1 - bhi .L1284 + bhi .L1286 ldr x3, [x3,2864] ldr w1, [x0,572] ldr w3, [x3,36] add w1, w1, 32 cmp w3, w1 - bls .L1334 -.L1284: + bls .L1336 +.L1286: add x1, x19, :lo12:.LANCHOR0 mov w22, 0 mov w20, 65535 @@ -8067,11 +8073,11 @@ gc_static_wearleveling: adrp x10, .LANCHOR2 add x8, x8, :lo12:.LC116 ldrh w23, [x1,134] -.L1286: +.L1288: add x4, x19, :lo12:.LANCHOR0 ldrh w0, [x4,576] cmp w0, w23 - bls .L1395 + bls .L1397 uxtw x7, w23 ldr x0, [x4,584] lsl x1, x7, 2 @@ -8079,70 +8085,70 @@ gc_static_wearleveling: ldrb w2, [x6,2] and w3, w2, 224 cmp w3, 224 - beq .L1287 - tbz x2, 3, .L1288 + beq .L1289 + tbz x2, 3, .L1290 ldrh w3, [x0,x1] ldr w2, [x0,x1] and w3, w3, 2047 ubfx x2, x2, 11, 8 - b .L1289 -.L1288: + b .L1291 +.L1290: tst w2, 24 - bne .L1290 + bne .L1292 ldrh w3, [x0,x1] mov w2, 65535 and w3, w3, 2047 - b .L1289 -.L1290: + b .L1291 +.L1292: ldr w2, [x0,x1] mov w3, 65535 ubfx x2, x2, 11, 8 - b .L1291 -.L1289: + b .L1293 +.L1291: ldr w4, [x29,136] add w26, w26, 1 cmp w20, w3 add w4, w4, w3 str w4, [x29,136] uxth w26, w26 - bls .L1333 + bls .L1335 add x4, x19, :lo12:.LANCHOR0 mov w20, w3 ldr x4, [x4,608] strh w23, [x4,586] -.L1333: +.L1335: cmp w25, w3 - bcs .L1292 + bcs .L1294 mov w22, w23 mov w25, w3 -.L1292: +.L1294: cmp w2, w9 - beq .L1293 -.L1291: + beq .L1295 +.L1293: ldr w4, [x29,140] add w27, w27, 1 cmp w21, w2 add w4, w4, w2 str w4, [x29,140] uxth w27, w27 - bls .L1294 + bls .L1296 add x4, x19, :lo12:.LANCHOR0 mov w21, w2 ldr x4, [x4,608] strh w23, [x4,584] -.L1294: +.L1296: cmp w24, w2 - bcs .L1293 + bcs .L1295 mov w28, w23 mov w24, w2 -.L1293: +.L1295: cmp w3, 9 - bls .L1336 + bls .L1338 cmp w2, 9 - bhi .L1287 -.L1336: + bhi .L1289 +.L1338: ldr w2, [x10,#:lo12:.LANCHOR2] - tbz x2, 8, .L1287 + tbz x2, 8, .L1289 ldrh w2, [x0,x1] ldr w3, [x0,x1] add x0, x19, :lo12:.LANCHOR0 @@ -8163,11 +8169,11 @@ gc_static_wearleveling: ldr x10, [x29,112] ldr x9, [x29,120] ldr x8, [x29,128] -.L1287: +.L1289: add w23, w23, 1 uxth w23, w23 - b .L1286 -.L1395: + b .L1288 +.L1397: ldr x0, [x4,608] mov w1, 255 mov w2, 128 @@ -8184,7 +8190,7 @@ gc_static_wearleveling: lsl x0, x7, 2 mov x1, x7 add x8, x3, x0 - tbz x2, 10, .L1297 + tbz x2, 10, .L1299 ldr x9, [x4,600] ldrh w2, [x3,x0] ldrb w5, [x8,2] @@ -8200,13 +8206,13 @@ gc_static_wearleveling: str x8, [x29,128] bl printk ldr x8, [x29,128] -.L1297: +.L1299: ldrb w0, [x8,2] - tbz x0, 3, .L1298 + tbz x0, 3, .L1300 ldrb w0, [x8,2] and w1, w0, 192 cmp w1, 64 - bne .L1299 + bne .L1301 add x3, x19, :lo12:.LANCHOR0 mov w1, 0 mov w2, 1 @@ -8217,26 +8223,29 @@ gc_static_wearleveling: ldr x3, [x29,128] mov w0, 1 strh w0, [x3,3214] - b .L1298 -.L1299: + b .L1300 +.L1301: tst w0, 224 - bne .L1298 - add x1, x19, :lo12:.LANCHOR0 - mov w2, 65535 - ldr x0, [x1,608] - ldrh w3, [x0,590] - cmp w3, w2 - bne .L1298 - ldrh w0, [x0,586] - str x1, [x29,128] + bne .L1300 + add x2, x19, :lo12:.LANCHOR0 + mov w0, 65535 + ldr x1, [x2,608] + ldrh w3, [x1,590] + cmp w3, w0 + bne .L1300 + ldrh w0, [x1,586] + ldrh w1, [x1,588] + str x2, [x29,128] + cmp w1, w0 + beq .L1300 bl zftl_remove_free_node - ldr x1, [x29,128] - ldr x0, [x1,608] + ldr x2, [x29,128] + ldr x0, [x2,608] ldrh w1, [x0,586] strh w1, [x0,590] mov w1, -1 strh w1, [x0,586] -.L1298: +.L1300: add x0, x19, :lo12:.LANCHOR0 ldr w2, [x23,#:lo12:.LANCHOR2] ldr x1, [x0,608] @@ -8245,7 +8254,7 @@ gc_static_wearleveling: lsl x3, x7, 2 mov x1, x7 add x8, x4, x3 - tbz x2, 10, .L1300 + tbz x2, 10, .L1302 ldr x9, [x0,600] adrp x0, .LC118 ldrh w2, [x4,x3] @@ -8261,13 +8270,13 @@ gc_static_wearleveling: str x8, [x29,128] bl printk ldr x8, [x29,128] -.L1300: +.L1302: ldrb w0, [x8,2] - tbz x0, 3, .L1301 + tbz x0, 3, .L1303 ldrb w0, [x8,2] and w1, w0, 192 cmp w1, 64 - bne .L1302 + bne .L1304 add x3, x19, :lo12:.LANCHOR0 mov w1, 0 mov w2, 1 @@ -8278,30 +8287,33 @@ gc_static_wearleveling: ldr x3, [x29,128] mov w0, 1 strh w0, [x3,3214] - b .L1301 -.L1302: + b .L1303 +.L1304: tst w0, 224 - bne .L1301 - add x1, x19, :lo12:.LANCHOR0 - mov w2, 65535 - ldr x0, [x1,608] - ldrh w3, [x0,588] - cmp w3, w2 - bne .L1301 - ldrh w0, [x0,584] - str x1, [x29,128] + bne .L1303 + add x2, x19, :lo12:.LANCHOR0 + mov w0, 65535 + ldr x1, [x2,608] + ldrh w3, [x1,588] + cmp w3, w0 + bne .L1303 + ldrh w0, [x1,584] + ldrh w1, [x1,590] + str x2, [x29,128] + cmp w1, w0 + beq .L1303 bl zftl_remove_free_node - ldr x1, [x29,128] - ldr x0, [x1,608] + ldr x2, [x29,128] + ldr x0, [x2,608] ldrh w1, [x0,584] strh w1, [x0,588] mov w1, -1 strh w1, [x0,584] -.L1301: +.L1303: add x4, x19, :lo12:.LANCHOR0 ldr w0, [x23,#:lo12:.LANCHOR2] ldr x1, [x4,584] - tbz x0, 10, .L1303 + tbz x0, 10, .L1305 uxtw x7, w22 ldr x8, [x4,600] lsl x0, x7, 2 @@ -8319,11 +8331,11 @@ gc_static_wearleveling: ubfx x3, x3, 11, 8 ubfx x5, x5, 5, 3 bl printk -.L1303: +.L1305: add x4, x19, :lo12:.LANCHOR0 ldr w0, [x23,#:lo12:.LANCHOR2] ldr x1, [x4,584] - tbz x0, 10, .L1304 + tbz x0, 10, .L1306 uxtw x7, w28 ldr x8, [x4,600] lsl x0, x7, 2 @@ -8341,7 +8353,7 @@ gc_static_wearleveling: ubfx x3, x3, 11, 8 ubfx x5, x5, 5, 3 bl printk -.L1304: +.L1306: ldr w1, [x29,136] add x0, x19, :lo12:.LANCHOR0 udiv w3, w1, w26 @@ -8355,7 +8367,7 @@ gc_static_wearleveling: strh w3, [x0,88] strh w4, [x0,90] ldr w0, [x23,#:lo12:.LANCHOR2] - tbz x0, 10, .L1305 + tbz x0, 10, .L1307 adrp x0, .LC121 mov w1, w26 add x0, x0, :lo12:.LC121 @@ -8363,10 +8375,10 @@ gc_static_wearleveling: uxth w3, w3 uxth w4, w4 bl printk -.L1305: +.L1307: ldr w0, [x23,#:lo12:.LANCHOR2] adrp x28, .LANCHOR4 - tbz x0, 10, .L1306 + tbz x0, 10, .L1308 add x6, x28, :lo12:.LANCHOR4 adrp x0, .LC122 add x0, x0, :lo12:.LC122 @@ -8377,19 +8389,19 @@ gc_static_wearleveling: mov w4, w24 ldrh w6, [x6,1162] bl printk -.L1306: +.L1308: add x1, x28, :lo12:.LANCHOR4 sub w0, w24, w21 str w0, [x29,140] ldrh w0, [x1,1162] ldr w2, [x29,140] cmp w2, w0 - bgt .L1307 + bgt .L1309 ldrh w1, [x1,1160] sub w0, w25, w20 cmp w0, w1 - ble .L1335 -.L1307: + ble .L1337 +.L1309: add x0, x19, :lo12:.LANCHOR0 mov w26, 0 mov w22, w26 @@ -8405,11 +8417,11 @@ gc_static_wearleveling: str x0, [x29,128] add x0, x25, :lo12:.LC123 str x0, [x29,120] -.L1309: +.L1311: add x1, x19, :lo12:.LANCHOR0 ldrh w0, [x1,576] cmp w27, w0 - bcs .L1318 + bcs .L1320 add w7, w24, 1 ldr x4, [x1,584] uxth w24, w7 @@ -8421,31 +8433,31 @@ gc_static_wearleveling: ldrb w0, [x0,2] and w2, w0, 224 cmp w2, 224 - beq .L1311 + beq .L1313 tst w0, 192 - beq .L1311 + beq .L1313 ubfx x0, x0, 3, 2 cmp w2, 160 and w1, w0, 1 - tbnz x0, 0, .L1393 + tbnz x0, 0, .L1395 cmp w0, 2 -.L1393: +.L1395: add x0, x28, :lo12:.LANCHOR4 - bne .L1314 + bne .L1316 ldrh w0, [x0,1162] ldr w2, [x29,140] cmp w2, w0 - ble .L1315 + ble .L1317 ldr w0, [x4,x3] ubfx x0, x0, 11, 8 cmp w0, w21 - bls .L1316 - cbz w1, .L1315 + bls .L1318 + cbz w1, .L1317 ldrh w0, [x4,x3] and w0, w0, 2047 cmp w0, w20 - bgt .L1315 -.L1316: + bgt .L1317 +.L1318: mov w1, 0 mov w0, w24 mov w2, 1 @@ -8460,7 +8472,7 @@ gc_static_wearleveling: ldr x4, [x29,104] strh w1, [x0,3214] ldr w1, [x23,#:lo12:.LANCHOR2] - tbz x1, 10, .L1315 + tbz x1, 10, .L1317 ldr x1, [x0,584] ldr x10, [x0,600] add x1, x1, x3 @@ -8468,24 +8480,24 @@ gc_static_wearleveling: ldr w6, [x4,x3] ldr x0, [x29,120] ldrb w2, [x1,2] - b .L1394 -.L1314: + b .L1396 +.L1316: ldrh w0, [x0,1160] ldr w2, [x29,136] cmp w2, w0 - ble .L1315 + ble .L1317 ldrh w0, [x4,x3] add w2, w20, 8 and w0, w0, 2047 cmp w0, w2 - ble .L1317 - cbz w1, .L1315 + ble .L1319 + cbz w1, .L1317 ldr w0, [x4,x3] add w1, w21, 4 ubfx x0, x0, 11, 8 cmp w0, w1 - bgt .L1315 -.L1317: + bgt .L1317 +.L1319: mov w1, 0 mov w0, w24 mov w2, 1 @@ -8500,7 +8512,7 @@ gc_static_wearleveling: ldr x4, [x29,104] strh w1, [x0,3214] ldr w1, [x23,#:lo12:.LANCHOR2] - tbz x1, 10, .L1315 + tbz x1, 10, .L1317 ldr x1, [x0,584] ldr x10, [x0,600] add x1, x1, x3 @@ -8508,7 +8520,7 @@ gc_static_wearleveling: ldr w6, [x4,x3] ldr x0, [x29,128] ldrb w2, [x1,2] -.L1394: +.L1396: ldrh w3, [x10,x25,lsl 1] mov w1, w24 ldrh w4, [x9,56] @@ -8516,122 +8528,122 @@ gc_static_wearleveling: and w5, w5, 2047 ubfx x6, x6, 11, 8 bl printk -.L1315: +.L1317: cmp w26, 4 - bhi .L1318 + bhi .L1320 cmp w22, 4 - bhi .L1318 -.L1311: + bhi .L1320 +.L1313: add w27, w27, 1 uxth w27, w27 - b .L1309 -.L1318: + b .L1311 +.L1320: add x0, x19, :lo12:.LANCHOR0 ldr x0, [x0,608] str w24, [x0,580] - b .L1308 -.L1335: + b .L1310 +.L1337: mov w26, 0 mov w22, w26 -.L1308: - cbz w21, .L1321 +.L1310: + cbz w21, .L1323 add x0, x19, :lo12:.LANCHOR0 ldr x0, [x0,2864] ldrh w0, [x0,134] -.L1322: +.L1324: add x1, x19, :lo12:.LANCHOR0 ldrh w2, [x1,576] cmp w2, w0 - bls .L1396 + bls .L1398 ubfiz x3, x0, 2, 16 ldr x4, [x1,584] add x5, x4, x3 ldr w1, [x4,x3] ubfx x2, x1, 11, 8 cmp w2, w21 - bcc .L1323 + bcc .L1325 ldrb w5, [x5,2] tst w5, 24 - beq .L1323 + beq .L1325 sub w2, w2, w21 bfi w1, w2, 11, 8 str w1, [x4,x3] -.L1323: +.L1325: add w0, w0, 1 uxth w0, w0 - b .L1322 -.L1396: + b .L1324 +.L1398: ldr x0, [x1,2864] ldrh w1, [x0,72] add w1, w21, w1 strh w1, [x0,72] ldrh w1, [x0,98] cmp w1, w21 - bls .L1321 + bls .L1323 sub w21, w1, w21 strh w21, [x0,98] -.L1321: - cbz w20, .L1327 +.L1323: + cbz w20, .L1329 add x0, x19, :lo12:.LANCHOR0 ldr x0, [x0,2864] ldrh w0, [x0,134] -.L1328: +.L1330: add x1, x19, :lo12:.LANCHOR0 ldrh w2, [x1,576] cmp w2, w0 - bls .L1397 + bls .L1399 ubfiz x3, x0, 2, 16 ldr x4, [x1,584] add x5, x4, x3 ldrh w1, [x4,x3] and w2, w1, 2047 cmp w2, w20 - blt .L1329 + blt .L1331 ldrb w5, [x5,2] and w5, w5, 24 cmp w5, 16 - beq .L1329 + beq .L1331 sub w2, w2, w20 bfi w1, w2, 0, 11 strh w1, [x4,x3] -.L1329: +.L1331: add w0, w0, 1 uxth w0, w0 - b .L1328 -.L1397: + b .L1330 +.L1399: ldr x0, [x1,2864] ldrh w1, [x0,74] add w1, w20, w1 strh w1, [x0,74] ldrh w1, [x0,96] cmp w1, w20 - bls .L1327 + bls .L1329 sub w20, w1, w20 strh w20, [x0,96] -.L1327: +.L1329: mov w1, 5 mov w0, 0 bl zftl_get_gc_node uxth w1, w0 mov w2, 65535 cmp w1, w2 - beq .L1285 + beq .L1287 add x19, x19, :lo12:.LANCHOR0 ubfiz x1, x1, 1, 16 ldr x2, [x19,600] ldrh w2, [x2,x1] ldrh w1, [x19,3300] cmp w2, w1 - bhi .L1285 + bhi .L1287 mov w1, 0 mov w2, 1 add w22, w22, 1 bl gc_add_sblk - b .L1285 -.L1334: + b .L1287 +.L1336: mov w26, 0 mov w22, w26 -.L1285: +.L1287: add w0, w26, w22 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -8687,52 +8699,52 @@ zftl_sblk_list_init: ldr x0, [x19,2864] ldrsh w19, [x0,134] strh wzr, [x0,146] -.L1399: +.L1401: add x0, x21, :lo12:.LANCHOR0 ldrh w1, [x0,576] cmp w19, w1 - bge .L1429 + bge .L1431 sxtw x22, w19 ldr x27, [x0,584] ldr w1, [x29,108] add x27, x27, x22, lsl 2 ldrb w2, [x27,3] - cbz w2, .L1400 + cbz w2, .L1402 ldrb w5, [x0,3276] ldrh w6, [x0,3274] ldr x4, [x0,2864] mov w0, 0 mov w1, w0 -.L1401: +.L1403: cmp w0, w5 - bge .L1430 + bge .L1432 ldrb w2, [x27,3] asr w2, w2, w0 - tbnz x2, 0, .L1402 + tbnz x2, 0, .L1404 add w1, w6, w1 sxth w1, w1 - b .L1403 -.L1402: + b .L1405 +.L1404: ldrh w2, [x4,146] add w2, w2, 1 strh w2, [x4,146] -.L1403: +.L1405: add w0, w0, 1 - b .L1401 -.L1430: - cbz w1, .L1405 + b .L1403 +.L1432: + cbz w1, .L1407 sdiv w1, w23, w1 add w1, w1, 1 sxth w1, w1 - b .L1400 -.L1405: + b .L1402 +.L1407: ldrb w0, [x27,2] orr w0, w0, -32 strb w0, [x27,2] add x0, x21, :lo12:.LANCHOR0 ldr x0, [x0,600] strh w25, [x0,x22,lsl 1] -.L1400: +.L1402: add x20, x21, :lo12:.LANCHOR0 smull x0, w19, w24 ldr x2, [x20,528] @@ -8745,101 +8757,101 @@ zftl_sblk_list_init: ldrb w1, [x27,2] and w0, w1, 224 cmp w0, 224 - beq .L1408 + beq .L1410 cmp w0, 32 cset w28, eq - cbnz w28, .L1408 + cbnz w28, .L1410 ldr x2, [x20,608] ldrh w4, [x2,16] cmp w19, w4 - beq .L1408 + beq .L1410 ldrh w4, [x2,48] cmp w19, w4 - beq .L1408 + beq .L1410 ldrh w2, [x2,80] cmp w19, w2 - beq .L1408 + beq .L1410 cmp w0, 64 - bne .L1410 + bne .L1412 uxth w27, w19 add x0, x20, 616 mov w1, w27 add x2, x20, 2850 - b .L1427 -.L1410: + b .L1429 +.L1412: cmp w0, 96 - bne .L1411 + bne .L1413 uxth w27, w19 add x0, x20, 3288 mov w1, w27 add x2, x20, 2852 - b .L1427 -.L1411: + b .L1429 +.L1413: cmp w0, 160 - bne .L1412 + bne .L1414 uxth w27, w19 add x0, x20, 3280 mov w1, w27 add x2, x20, 2854 -.L1427: +.L1429: bl _insert_data_list ldr x0, [x20,600] ldrh w0, [x0,x22,lsl 1] cmp w0, 7 - bhi .L1408 + bhi .L1410 mov w0, w27 mov w1, 1 mov w2, w28 - b .L1425 -.L1412: - cbnz w0, .L1408 + b .L1427 +.L1414: + cbnz w0, .L1410 ldr x0, [x20,600] ldrh w2, [x0,x22,lsl 1] - cbz w2, .L1413 + cbz w2, .L1415 mov x0, x26 mov w1, w19 bl printk ldrb w0, [x27,2] - tbz x0, 4, .L1414 + tbz x0, 4, .L1416 mov w1, 5 - b .L1421 -.L1414: + b .L1423 +.L1416: mov w1, 2 -.L1421: +.L1423: bfi w0, w1, 5, 3 mov w2, 0 strb w0, [x27,2] mov w1, 1 mov w0, w19 -.L1425: +.L1427: bl gc_add_sblk - b .L1408 -.L1413: + b .L1410 +.L1415: ands w1, w1, 24 add x2, x21, :lo12:.LANCHOR0 - bne .L1416 + bne .L1418 add x0, x2, 3312 mov w1, w19 add x2, x2, 2844 - b .L1423 -.L1416: + b .L1425 +.L1418: cmp w1, 16 - bne .L1417 + bne .L1419 add x0, x2, 3320 mov w1, w19 add x2, x2, 2846 - b .L1423 -.L1417: + b .L1425 +.L1419: add x0, x2, 3328 mov w1, w19 add x2, x2, 2848 -.L1423: +.L1425: bl _insert_free_list -.L1408: +.L1410: add w19, w19, 1 sxth w19, w19 - b .L1399 -.L1429: + b .L1401 +.L1431: ldr x1, [x0,2864] ldrh w2, [x0,2844] strh w2, [x1,114] @@ -8880,8 +8892,8 @@ ftl_open_sblk_init: mov x26, x23 add x20, x20, :lo12:.LC113 mov w24, -1 -.L1432: -.L1435: +.L1434: +.L1437: mov w0, w21 bl ftl_alloc_sblk uxth w22, w0 @@ -8903,11 +8915,11 @@ ftl_open_sblk_init: mul w2, w1, w2 strh w2, [x19,6] strb w21, [x19,4] - beq .L1433 + beq .L1435 ldrb w3, [x0,3276] mul w3, w1, w3 uxth w3, w3 -.L1433: +.L1435: add x27, x26, :lo12:.LANCHOR0 strh w3, [x19,12] ubfiz x28, x22, 1, 16 @@ -8922,7 +8934,7 @@ ftl_open_sblk_init: ldrh w1, [x19,6] strh w1, [x0,x28] ldrb w0, [x19,9] - cbnz w0, .L1431 + cbnz w0, .L1433 mov x0, x20 mov w1, w22 bl printk @@ -8930,8 +8942,8 @@ ftl_open_sblk_init: strh w24, [x0,x28] mov w0, 7 strb w0, [x19,4] - b .L1435 -.L1431: + b .L1437 +.L1433: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -8955,7 +8967,7 @@ pm_free_sblk: stp x27, x28, [sp,80] ldrh w0, [x0,1164] cmp w0, 128 - bls .L1438 + bls .L1440 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 @@ -8964,7 +8976,7 @@ pm_free_sblk: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1438: +.L1440: add x28, x29, 112 mov w1, 0 mov w2, 256 @@ -8984,9 +8996,9 @@ pm_free_sblk: ldrh w7, [x4,698] sub w0, w0, #1 ldrh w9, [x1,1164] -.L1439: +.L1441: cmp w7, w3, uxth - bls .L1464 + bls .L1466 add x1, x4, x3, lsl 2 mov x2, 0 ldr w1, [x1,704] @@ -8994,23 +9006,23 @@ pm_free_sblk: and w1, w1, w0 udiv w1, w1, w8 uxth w1, w1 -.L1440: +.L1442: cmp w9, w2, uxth - bls .L1465 + bls .L1467 add x5, x4, x2, lsl 1 ldrh w5, [x5,416] cmp w5, w1 - bne .L1441 + bne .L1443 ldrh w5, [x28,x2,lsl 1] add w5, w5, 1 strh w5, [x28,x2,lsl 1] -.L1441: +.L1443: add x2, x2, 1 - b .L1440 -.L1465: + b .L1442 +.L1467: add x3, x3, 1 - b .L1439 -.L1464: + b .L1441 +.L1466: add x1, x21, :lo12:.LANCHOR0 mov w25, 0 adrp x24, .LC126 @@ -9022,11 +9034,11 @@ pm_free_sblk: ldrh w20, [x1,3300] mul w20, w0, w20 uxth w20, w20 -.L1444: +.L1446: add x0, x23, :lo12:.LANCHOR4 ldrh w0, [x0,1164] cmp w0, w19 - bls .L1466 + bls .L1468 add x0, x21, :lo12:.LANCHOR0 sxtw x22, w19 add x1, x22, 208 @@ -9036,31 +9048,31 @@ pm_free_sblk: ldrh w1, [x4,692] sdiv w1, w1, w2 cmp w1, w3 - bne .L1445 + bne .L1447 ldrb w1, [x0,3276] ldrh w0, [x0,3300] mul w0, w1, w0 strh w0, [x28,w19,sxtw 1] -.L1445: +.L1447: ldrh w0, [x28,x22,lsl 1] cmp w20, w0 - bls .L1446 + bls .L1448 cmp w0, wzr csel w25, w25, w19, eq csel w20, w20, w0, eq -.L1446: - cbnz w0, .L1448 +.L1448: + cbnz w0, .L1450 mov w0, 65535 cmp w3, w0 - beq .L1448 + beq .L1450 ldr w0, [x26,#:lo12:.LANCHOR2] - tbz x0, 12, .L1449 + tbz x0, 12, .L1451 ldrh w4, [x4,688] mov x0, x24 mov w1, w19 mov w2, 0 bl printk -.L1449: +.L1451: add x1, x21, :lo12:.LANCHOR0 add x22, x22, 208 str x1, [x29,104] @@ -9073,11 +9085,11 @@ pm_free_sblk: ldrh w1, [x0,688] sub w1, w1, #1 strh w1, [x0,688] -.L1448: +.L1450: add w19, w19, 1 uxth w19, w19 - b .L1444 -.L1466: + b .L1446 +.L1468: mov w0, w25 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -9099,16 +9111,16 @@ ftl_memcpy: ret .size ftl_memcpy, .-ftl_memcpy .align 2 - .global flash_into_data_init - .type flash_into_data_init, %function -flash_into_data_init: + .global flash_info_data_init + .type flash_info_data_init, %function +flash_info_data_init: adrp x1, .LANCHOR2 stp x29, x30, [sp, -32]! add x29, sp, 0 ldr w0, [x1,#:lo12:.LANCHOR2] stp x19, x20, [sp,16] mov x20, x1 - tbz x0, 12, .L1469 + tbz x0, 12, .L1471 adrp x2, .LANCHOR3 adrp x0, .LC127 add x2, x2, :lo12:.LANCHOR3 @@ -9116,7 +9128,7 @@ flash_into_data_init: mov w1, 100 add x2, x2, 112 bl printk -.L1469: +.L1471: adrp x19, .LANCHOR0 mov w1, 0 add x19, x19, :lo12:.LANCHOR0 @@ -9145,20 +9157,20 @@ flash_into_data_init: ldp x19, x20, [sp,16] ldp x29, x30, [sp], 32 ret - .size flash_into_data_init, .-flash_into_data_init + .size flash_info_data_init, .-flash_info_data_init .align 2 .global ftl_memcpy32 .type ftl_memcpy32, %function ftl_memcpy32: mov x3, 0 -.L1474: +.L1476: cmp w2, w3 - bls .L1476 + bls .L1478 ldr w4, [x1,x3,lsl 2] str w4, [x0,x3,lsl 2] add x3, x3, 1 - b .L1474 -.L1476: + b .L1476 +.L1478: ret .size ftl_memcpy32, .-ftl_memcpy32 .align 2 @@ -9180,17 +9192,17 @@ js_hash: mov w0, 42982 mov x2, 0 movk w0, 0x47c6, lsl 16 -.L1479: +.L1481: cmp w1, w2 - bls .L1481 + bls .L1483 lsl w3, w0, 5 ldrb w4, [x5,x2] add w3, w3, w0, lsr 2 add x2, x2, 1 add w3, w3, w4 eor w0, w0, w3 - b .L1479 -.L1481: + b .L1481 +.L1483: ret .size js_hash, .-js_hash .align 2 @@ -9315,13 +9327,13 @@ flash_sram_load_store: add x29, sp, 0 ldr x4, [x4,#:lo12:.LANCHOR4+1184] add x4, x4, 4096 - cbnz w2, .L1488 + cbnz w2, .L1490 add x1, x4, x1 - b .L1490 -.L1488: + b .L1492 +.L1490: add x0, x4, x1 mov x1, x6 -.L1490: +.L1492: mov w2, w3 bl ftl_memcpy ldp x29, x30, [sp], 16 @@ -9520,42 +9532,42 @@ rknand_print_hex: add x23, x23, :lo12:.LC129 add x21, x21, :lo12:.LC130 add x24, x24, :lo12:.LC1 -.L1505: +.L1507: cmp x19, x26 - beq .L1513 - cbnz w20, .L1506 + beq .L1515 + cbnz w20, .L1508 mov x0, x23 mov x1, x27 mov x2, x22 mov w3, w19 bl printk -.L1506: +.L1508: cmp w25, 4 mov x0, x21 - bne .L1507 - ldr w1, [x22,x19,lsl 2] - b .L1512 -.L1507: - cmp w25, 2 bne .L1509 - ldrsh w1, [x22,x19,lsl 1] - b .L1512 + ldr w1, [x22,x19,lsl 2] + b .L1514 .L1509: + cmp w25, 2 + bne .L1511 + ldrsh w1, [x22,x19,lsl 1] + b .L1514 +.L1511: ldrb w1, [x22,x19] -.L1512: +.L1514: bl printk add w20, w20, 1 cmp w20, 15 - bls .L1510 + bls .L1512 adrp x1, .LC131 mov x0, x24 add x1, x1, :lo12:.LC131 mov w20, 0 bl printk -.L1510: +.L1512: add x19, x19, 1 - b .L1505 -.L1513: + b .L1507 +.L1515: adrp x0, .LC1 adrp x1, .LC131 add x1, x1, :lo12:.LC131 @@ -9598,30 +9610,30 @@ hynix_get_read_retry_default: add x26, x27, 128 strb w1, [x27,130] strb w0, [x27,131] - bne .L1515 + bne .L1517 ldr x1, [x29,136] mov w0, -89 strb w0, [x1,16] adrp x0, .LANCHOR2+425 mov w1, -9 strb w1, [x0,#:lo12:.LANCHOR2+425] - b .L1570 -.L1515: + b .L1572 +.L1517: cmp w25, 3 - bne .L1517 + bne .L1519 mov x4, 0 -.L1518: +.L1520: sub w0, w4, #80 strb w0, [x26,x4] add x4, x4, 1 cmp x4, 8 - bne .L1518 + bne .L1520 mov w21, w4 mov w28, w4 - b .L1516 -.L1517: + b .L1518 +.L1519: cmp w25, 4 - bne .L1519 + bne .L1521 mov w4, -52 strb w4, [x27,128] mov w4, -65 @@ -9637,10 +9649,10 @@ hynix_get_read_retry_default: strb w1, [x27,134] strb w4, [x27,132] strb w0, [x27,135] - b .L1516 -.L1519: + b .L1518 +.L1521: cmp w25, 5 - bne .L1520 + bne .L1522 mov w0, 56 strb w0, [x27,128] mov w0, 57 @@ -9650,10 +9662,10 @@ hynix_get_read_retry_default: strb w0, [x27,130] mov w0, 59 strb w0, [x27,131] - b .L1604 -.L1520: + b .L1606 +.L1522: cmp w25, 6 - bne .L1521 + bne .L1523 mov w0, 14 strb w0, [x27,128] mov w0, 15 @@ -9663,32 +9675,32 @@ hynix_get_read_retry_default: strb w0, [x27,130] mov w0, 17 strb w0, [x27,131] - b .L1604 -.L1521: + b .L1606 +.L1523: cmp w25, 7 - bne .L1570 + bne .L1572 mov x0, 0 -.L1522: +.L1524: sub w1, w0, #80 strb w1, [x26,x0] add x0, x0, 1 cmp x0, 8 - bne .L1522 + bne .L1524 mov w0, -44 mov w21, 12 strb w0, [x27,136] mov w28, 10 mov w0, -43 strb w0, [x27,137] - b .L1516 -.L1570: + b .L1518 +.L1572: mov w21, 7 -.L1604: +.L1606: mov w28, 4 -.L1516: +.L1518: sub w0, w25, #1 cmp w0, 1 - bhi .L1601 + bhi .L1603 ldr x0, [x29,128] adrp x24, .LANCHOR2 add x24, x24, :lo12:.LANCHOR2 @@ -9696,10 +9708,10 @@ hynix_get_read_retry_default: add x19, x0, :lo12:.LANCHOR0 mov w27, 55 add x24, x24, 408 -.L1523: +.L1525: ldrb w0, [x19,633] cmp w0, w23 - bls .L1530 + bls .L1532 add x0, x19, x23, sxtw ldr x2, [x29,136] ldrb w0, [x0,736] @@ -9710,7 +9722,7 @@ hynix_get_read_retry_default: madd x20, x0, x20, x2 add x22, x22, x1 add x20, x20, 32 -.L1525: +.L1527: str w27, [x22,2056] ldrb w0, [x26,x25] str w0, [x22,2052] @@ -9720,12 +9732,12 @@ hynix_get_read_retry_default: strb w0, [x20,x25] add x25, x25, 1 cmp w28, w25, uxtb - bhi .L1525 + bhi .L1527 mov x0, 0 -.L1526: +.L1528: add w2, w0, 8 mov x1, 0 -.L1527: +.L1529: add x3, x1, x0 add x1, x1, 4 add x3, x24, x3 @@ -9735,10 +9747,10 @@ hynix_get_read_retry_default: add w3, w5, w3 strb w3, [x20,w2,sxtw] add w2, w2, 8 - bne .L1527 + bne .L1529 add x0, x0, 1 cmp x0, 4 - bne .L1526 + bne .L1528 add w23, w23, 1 strb wzr, [x20,16] strb wzr, [x20,24] @@ -9748,11 +9760,11 @@ hynix_get_read_retry_default: strb wzr, [x20,48] strb wzr, [x20,41] strb wzr, [x20,49] - b .L1523 -.L1601: + b .L1525 +.L1603: sub w0, w25, #3 cmp w0, 4 - bhi .L1530 + bhi .L1532 mul w0, w28, w21 sub w23, w28, #1 mov w20, 0 @@ -9766,13 +9778,13 @@ hynix_get_read_retry_default: adrp x26, .LANCHOR4 add x0, x23, 1 str x0, [x29,112] -.L1531: +.L1533: ldr x0, [x29,128] - add x0, x0, :lo12:.LANCHOR0 - ldrb w1, [x0,633] - cmp w1, w20 - bhi .L1569 -.L1530: + add x1, x0, :lo12:.LANCHOR0 + ldrb w0, [x1,633] + cmp w0, w20 + bhi .L1571 +.L1532: ldr x0, [x29,136] strb w28, [x0,1] strb w21, [x0,2] @@ -9783,46 +9795,51 @@ hynix_get_read_retry_default: ldp x27, x28, [sp,80] ldp x29, x30, [sp], 144 ret -.L1569: - add x1, x0, x20, sxtw - ldrb w1, [x1,736] - ldr x0, [x0,536] - mov x24, 160 - ubfiz x2, x1, 8, 8 - ldr x3, [x29,136] - add x23, x0, x2 - madd x24, x1, x24, x3 - mov w1, 255 - str w1, [x23,2056] +.L1571: + add x0, x1, x20, sxtw + ldrb w23, [x0,736] str x1, [x29,104] + mov x24, 160 + mov w0, w23 + bl zftl_flash_exit_slc_mode + ldr x1, [x29,136] + sxtw x0, w23 + ubfiz x2, x23, 8, 8 + madd x24, x0, x24, x1 + ldr x1, [x29,104] add x24, x24, 32 + ldr x0, [x1,536] + mov w1, 255 + str x1, [x29,104] + add x23, x0, x2 + str w1, [x23,2056] bl nandc_wait_flash_ready mov w0, 54 cmp w25, 4 str w0, [x23,2056] ldr x1, [x29,104] - bne .L1532 + bne .L1534 mov w0, 64 str w1, [x23,2052] str w0, [x23,2048] mov w0, 204 - b .L1605 -.L1532: + b .L1607 +.L1534: cmp w19, 1 - bhi .L1534 + bhi .L1536 ldrb w0, [x27,128] str w0, [x23,2052] mov w0, 82 - b .L1606 -.L1534: + b .L1608 +.L1536: mov w0, 174 str w0, [x23,2052] str wzr, [x23,2048] mov w0, 176 -.L1605: +.L1607: str w0, [x23,2052] mov w0, 77 -.L1606: +.L1608: str w0, [x23,2048] mov w0, 22 str w0, [x23,2056] @@ -9836,13 +9853,13 @@ hynix_get_read_retry_default: str wzr, [x23,2056] str wzr, [x23,2052] str wzr, [x23,2052] - bne .L1535 + bne .L1537 mov w0, 31 str w0, [x23,2052] - b .L1536 -.L1535: + b .L1538 +.L1537: str wzr, [x23,2052] -.L1536: +.L1538: mov w7, 2 str w7, [x23,2052] str wzr, [x23,2052] @@ -9852,89 +9869,89 @@ hynix_get_read_retry_default: bl nandc_wait_flash_ready cmp w19, 1 mov w1, 16 - bls .L1538 + bls .L1540 ldr x7, [x29,104] cmp w25, 7 mov w1, 32 csel w1, w1, w7, eq -.L1538: +.L1540: adrp x0, .LANCHOR4 mov x7, 0 add x0, x0, :lo12:.LANCHOR4 ldr x0, [x0,1192] -.L1539: +.L1541: ldr w8, [x23,2048] strb w8, [x0,x7] add x7, x7, 1 cmp w1, w7, uxtb - bhi .L1539 + bhi .L1541 cmp w25, 7 - bne .L1540 + bne .L1542 mov w1, 0 -.L1542: +.L1544: ldrb w7, [x0] cmp w7, 12 - beq .L1541 + beq .L1543 ldrb w7, [x0,1] cmp w7, 10 - beq .L1541 + beq .L1543 add w1, w1, 1 add x0, x0, 4 uxtb w1, w1 cmp w1, 8 - bne .L1542 - b .L1543 -.L1541: - cmp w1, 7 bne .L1544 + b .L1545 .L1543: + cmp w1, 7 + bne .L1546 +.L1545: adrp x0, .LC132 mov w1, 0 add x0, x0, :lo12:.LC132 bl printk -.L1545: - b .L1545 -.L1540: +.L1547: + b .L1547 +.L1542: cmp w25, 6 - bne .L1544 + bne .L1546 mov x1, 0 -.L1546: +.L1548: ldrb w7, [x0,x1] cmp w7, 12 - beq .L1544 + beq .L1546 add x7, x0, x1 ldrb w7, [x7,8] cmp w7, 4 - beq .L1544 + beq .L1546 add x1, x1, 1 cmp x1, 8 - bne .L1546 + bne .L1548 adrp x0, .LC132 mov w1, 0 add x0, x0, :lo12:.LC132 bl printk -.L1548: - b .L1548 -.L1544: +.L1550: + b .L1550 +.L1546: add x0, x26, :lo12:.LANCHOR4 ldr x9, [x0,1192] mov x0, 0 -.L1549: +.L1551: ldr w1, [x29,120] cmp w1, w0 - ble .L1608 + ble .L1610 ldr w1, [x23,2048] strb w1, [x9,x0] add x0, x0, 1 - b .L1549 -.L1608: + b .L1551 +.L1610: add x0, x26, :lo12:.LANCHOR4 mov w8, w22 mov w7, 8 ldr x11, [x0,1192] -.L1552: +.L1554: mov w0, 0 -.L1551: +.L1553: add w1, w0, w8 add w0, w0, 1 sbfiz x1, x1, 2, 32 @@ -9942,54 +9959,54 @@ hynix_get_read_retry_default: ldr w10, [x11,x1] mvn w10, w10 str w10, [x11,x1] - bne .L1551 + bne .L1553 ldr w0, [x29,124] subs w7, w7, #1 add w8, w8, w0 - bne .L1552 + bne .L1554 mov x7, 0 mov w15, 1 -.L1553: +.L1555: add x0, x26, :lo12:.LANCHOR4 mov w1, 0 mov w10, w1 ldr x14, [x0,1192] -.L1557: +.L1559: lsl w8, w15, w10 mov w12, w7 mov w0, 16 mov w11, 0 -.L1555: +.L1557: ldr w13, [x14,w12,sxtw 2] add w12, w12, w22 and w13, w8, w13 cmp w13, w8 csinc w11, w11, w11, ne subs w0, w0, #1 - bne .L1555 + bne .L1557 cmp w11, 9 orr w8, w1, w8 add w10, w10, 1 csel w1, w8, w1, cs cmp w10, 32 - bne .L1557 + bne .L1559 str w1, [x14,x7,lsl 2] add x7, x7, 1 cmp w22, w7 - bgt .L1553 + bgt .L1555 add x1, x26, :lo12:.LANCHOR4 mov x7, 0 mov w8, w7 ldr x1, [x1,1192] -.L1560: +.L1562: ldr w10, [x1,x7] add x7, x7, 4 cmp w10, wzr csinc w8, w8, w8, ne cmp x7, 32 - bne .L1560 + bne .L1562 cmp w8, 7 - ble .L1561 + ble .L1563 adrp x0, .LC133 mov w2, 1 add x0, x0, :lo12:.LC133 @@ -9999,39 +10016,39 @@ hynix_get_read_retry_default: mov w1, 0 add x0, x0, :lo12:.LC132 bl printk -.L1562: - b .L1562 -.L1561: +.L1564: + b .L1564 +.L1563: cmp w25, 6 mov w7, 4 - beq .L1563 + beq .L1565 cmp w25, 7 mov w7, 10 mov w1, 8 csel w7, w1, w7, ne -.L1563: - mov w8, 0 -.L1564: - mov x1, 0 .L1565: + mov w8, 0 +.L1566: + mov x1, 0 +.L1567: add w10, w0, w1 ldrb w11, [x9,x1] add x1, x1, 1 cmp w28, w1, uxtb strb w11, [x24,w10,sxtw] - bhi .L1565 + bhi .L1567 add w8, w8, 1 ldr x1, [x29,112] cmp w8, w21 add w0, w0, w7 add x9, x9, x1 - blt .L1564 + blt .L1566 mov w24, 255 str w24, [x23,2056] bl nandc_wait_flash_ready cmp w19, 1 mov w0, 56 - bhi .L1607 + bhi .L1609 mov w0, 54 str w0, [x23,2056] ldrb w0, [x27,128] @@ -10046,12 +10063,12 @@ hynix_get_read_retry_default: str w24, [x23,2052] str w24, [x23,2052] str w24, [x23,2052] -.L1607: +.L1609: str w0, [x23,2056] add w20, w20, 1 bl nandc_wait_flash_ready uxtb w20, w20 - b .L1531 + b .L1533 .size hynix_get_read_retry_default, .-hynix_get_read_retry_default .align 2 .global flash_get_read_retry_tbl @@ -10064,9 +10081,9 @@ flash_get_read_retry_tbl: sub w1, w0, #1 uxtb w1, w1 cmp w1, 6 - bhi .L1609 + bhi .L1611 bl hynix_get_read_retry_default -.L1609: +.L1611: ldp x29, x30, [sp], 16 ret .size flash_get_read_retry_tbl, .-flash_get_read_retry_tbl @@ -10089,51 +10106,51 @@ nandc_xfer_done: strb wzr, [x1,1200] ldrb w1, [x20,516] cmp w1, 9 - bne .L1612 + bne .L1614 ldr x24, [x20,536] ldr w0, [x24,16] str w0, [x29,64] ldr w20, [x24,48] ubfx x20, x20, 1, 1 - cbnz w20, .L1632 + cbnz w20, .L1634 adrp x21, .LC137 adrp x23, .LC136 add x21, x21, :lo12:.LC137 add x23, x23, :lo12:.LC136 - b .L1614 -.L1632: + b .L1616 +.L1634: adrp x21, .LC135 adrp x22, .LC136 mov w20, 0 add x21, x21, :lo12:.LC135 add x22, x22, :lo12:.LC136 -.L1613: +.L1615: ldr w2, [x24,64] ldr w1, [x29,64] ubfx x2, x2, 16, 6 ubfx x1, x1, 22, 6 cmp w2, w1 - bge .L1616 + bge .L1618 add x0, x19, :lo12:.LANCHOR0 ldr x0, [x0,536] ldr w0, [x0] str w0, [x29,72] ldr w0, [x29,72] - tbz x0, 13, .L1615 + tbz x0, 13, .L1617 ldr w0, [x29,72] - tbz x0, 17, .L1615 + tbz x0, 17, .L1617 ldr w1, [x29,72] adrp x0, .LC134 add x0, x0, :lo12:.LC134 ubfx x1, x1, 17, 1 bl printk - b .L1616 -.L1615: + b .L1618 +.L1617: ldr w0, [x29,64] add w20, w20, 1 ubfx x0, x0, 22, 6 cmp w20, w0, lsl 12 - bne .L1613 + bne .L1615 ldr w2, [x24,64] mov w1, w20 ldr w3, [x29,64] @@ -10148,15 +10165,15 @@ nandc_xfer_done: ldr x1, [x1,536] bl rknand_print_hex ldr w0, [x29,72] - tbz x0, 13, .L1613 + tbz x0, 13, .L1615 add x0, x23, :lo12:.LANCHOR4 mov w1, 1 strb w1, [x0,1200] -.L1616: +.L1618: add x20, x19, :lo12:.LANCHOR0 add x20, x20, 680 ldr w0, [x20,32] - cbz w0, .L1620 + cbz w0, .L1622 ldr w1, [x29,64] mov w2, 0 ldr w0, [x20,24] @@ -10167,15 +10184,15 @@ nandc_xfer_done: ldr w0, [x20,28] ubfx x1, x1, 22, 6 lsl w1, w1, 2 - b .L1660 -.L1622: + b .L1662 +.L1624: add x22, x19, :lo12:.LANCHOR0 add w20, w20, 1 ldr x0, [x22,536] ldr w0, [x0,16] str w0, [x29,64] and w0, w20, 16777215 - cbnz w0, .L1614 + cbnz w0, .L1616 ldr w2, [x29,64] mov w1, w20 ldr w3, [x24,64] @@ -10187,13 +10204,13 @@ nandc_xfer_done: mov w2, 4 mov w3, 64 bl rknand_print_hex -.L1614: +.L1616: ldr w0, [x29,64] - tbz x0, 20, .L1622 + tbz x0, 20, .L1624 add x20, x19, :lo12:.LANCHOR0 add x20, x20, 680 ldr w0, [x20,32] - cbz w0, .L1620 + cbz w0, .L1622 ldr w1, [x29,64] mov w2, 1 ldr w0, [x20,24] @@ -10204,49 +10221,49 @@ nandc_xfer_done: ldr w0, [x20,28] ubfx x1, x1, 22, 6 lsl w1, w1, 2 - b .L1659 -.L1612: + b .L1661 +.L1614: ldr x23, [x20,536] ldr w0, [x23,8] str w0, [x29,64] ldr w20, [x23,16] ubfx x20, x20, 1, 1 - cbnz w20, .L1633 + cbnz w20, .L1635 adrp x21, .LC137 adrp x24, .LC136 add x21, x21, :lo12:.LC137 add x24, x24, :lo12:.LC136 - b .L1625 -.L1633: + b .L1627 +.L1635: adrp x21, .LC135 adrp x22, .LC136 mov w20, 0 add x21, x21, :lo12:.LC135 add x22, x22, :lo12:.LC136 -.L1624: +.L1626: ldr w2, [x23,28] ldr w1, [x29,64] ubfx x2, x2, 16, 5 ubfx x1, x1, 22, 6 cmp w2, w1 - bge .L1627 + bge .L1629 add x0, x19, :lo12:.LANCHOR0 ldr x0, [x0,536] ldr w0, [x0] str w0, [x29,72] ldr w0, [x29,72] - tbz x0, 13, .L1626 + tbz x0, 13, .L1628 ldr w0, [x29,72] - tbz x0, 17, .L1626 + tbz x0, 17, .L1628 ldr w1, [x29,72] adrp x0, .LC138 add x0, x0, :lo12:.LC138 bl printk - b .L1627 -.L1626: + b .L1629 +.L1628: add w20, w20, 1 and w0, w20, 16777215 - cbnz w0, .L1624 + cbnz w0, .L1626 ldr w2, [x23,28] mov w1, w20 ldr w3, [x29,64] @@ -10260,12 +10277,12 @@ nandc_xfer_done: mov w3, 64 ldr x1, [x1,536] bl rknand_print_hex - b .L1624 -.L1627: + b .L1626 +.L1629: add x20, x19, :lo12:.LANCHOR0 add x20, x20, 680 ldr w0, [x20,32] - cbz w0, .L1620 + cbz w0, .L1622 ldr w1, [x29,64] mov w2, 0 ldr w0, [x20,24] @@ -10276,17 +10293,17 @@ nandc_xfer_done: ldr w0, [x20,28] ubfx x1, x1, 22, 6 lsl w1, w1, 7 -.L1660: +.L1662: mov w2, 0 - b .L1658 -.L1631: + b .L1660 +.L1633: add x22, x19, :lo12:.LANCHOR0 add w20, w20, 1 ldr x0, [x22,536] ldr w0, [x0,8] str w0, [x29,64] and w0, w20, 16777215 - cbnz w0, .L1625 + cbnz w0, .L1627 ldr w2, [x29,64] mov w1, w20 ldr w3, [x23,28] @@ -10298,13 +10315,13 @@ nandc_xfer_done: mov w2, 4 mov w3, 64 bl rknand_print_hex -.L1625: +.L1627: ldr w0, [x29,64] - tbz x0, 20, .L1631 + tbz x0, 20, .L1633 add x20, x19, :lo12:.LANCHOR0 add x20, x20, 680 ldr w0, [x20,32] - cbz w0, .L1620 + cbz w0, .L1622 ldr w1, [x29,64] mov w2, 1 ldr w0, [x20,24] @@ -10315,11 +10332,11 @@ nandc_xfer_done: ldr w0, [x20,28] ubfx x1, x1, 22, 6 lsl w1, w1, 7 -.L1659: +.L1661: mov w2, 1 -.L1658: +.L1660: bl rknand_dma_unmap_single -.L1620: +.L1622: add x19, x19, :lo12:.LANCHOR0 ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -10348,19 +10365,19 @@ nandc_xfer: bl nandc_xfer_start bl nandc_xfer_done mov w0, 0 - cbnz w20, .L1691 + cbnz w20, .L1693 adrp x19, .LANCHOR0 add x2, x19, :lo12:.LANCHOR0 ldrb w1, [x2,516] cmp w1, 9 - bne .L1663 + bne .L1665 ldr x5, [x2,536] lsr w22, w22, 2 mov w4, 1 mov w3, w0 -.L1664: +.L1666: cmp w3, w22 - bcs .L1700 + bcs .L1702 uxtw x1, w3 add x1, x1, 84 ldr w1, [x5,x1,lsl 2] @@ -10372,30 +10389,30 @@ nandc_xfer: and w1, w1, w2 and w4, w4, w1 ldr w1, [x29,72] - tbnz x1, 2, .L1683 + tbnz x1, 2, .L1685 ldr w1, [x29,72] - tbnz x1, 18, .L1683 + tbnz x1, 18, .L1685 ldr w2, [x29,72] ldr w1, [x29,72] ubfx x2, x2, 3, 7 ubfx x1, x1, 19, 7 cmp w2, w1 ldr w1, [x29,72] - ble .L1666 + ble .L1668 ubfx x1, x1, 3, 7 - b .L1667 -.L1666: + b .L1669 +.L1668: ubfx x1, x1, 19, 7 -.L1667: +.L1669: cmp w0, w1 csel w0, w0, w1, cs - b .L1665 -.L1683: + b .L1667 +.L1685: mov w0, -1 -.L1665: +.L1667: add w3, w3, 1 - b .L1664 -.L1700: + b .L1666 +.L1702: add x22, x19, :lo12:.LANCHOR0 cmp w4, wzr ldr x1, [x22,536] @@ -10406,7 +10423,7 @@ nandc_xfer: movk w1, 0x2, lsl 16 and w1, w20, w1 cmp w1, 139264 - bne .L1670 + bne .L1672 adrp x0, .LC139 mov w1, w20 add x0, x0, :lo12:.LC139 @@ -10415,11 +10432,11 @@ nandc_xfer: ldr x0, [x22,536] str w20, [x0] mov w0, -1 -.L1670: - tbz x20, 13, .L1671 +.L1672: + tbz x20, 13, .L1673 adrp x1, .LANCHOR4+1200 ldrb w1, [x1,#:lo12:.LANCHOR4+1200] - cbz w1, .L1671 + cbz w1, .L1673 adrp x0, .LC140 mov w1, w20 add x0, x0, :lo12:.LC140 @@ -10428,8 +10445,8 @@ nandc_xfer: ldr x0, [x19,536] mov w1, 1 str w1, [x0,16] - b .L1672 -.L1663: + b .L1674 +.L1665: ldrb w0, [x2,724] mov w5, 128 lsr w6, w22, 1 @@ -10439,10 +10456,10 @@ nandc_xfer: csel w5, w0, w5, cc mov w1, w20 mov w4, w20 -.L1674: +.L1676: cmp w4, w6 add w7, w1, w5 - bcs .L1701 + bcs .L1703 ldr x0, [x2,680] and x1, x1, 4294967292 ldr w0, [x0,x1] @@ -10459,24 +10476,24 @@ nandc_xfer: add w3, w3, 4 strb w0, [x23,x1] mov w1, w7 - b .L1674 -.L1701: + b .L1676 +.L1703: add x0, x19, :lo12:.LANCHOR0 mov w2, 0 lsr w22, w22, 2 ldr x6, [x0,536] mov w0, w2 -.L1676: +.L1678: cmp w2, w22 - bcs .L1702 + bcs .L1704 uxtw x1, w2 add x1, x1, 8 ldr w1, [x6,x1,lsl 2] str w1, [x29,72] ldr w1, [x29,72] - tbnz x1, 2, .L1686 + tbnz x1, 2, .L1688 ldr w1, [x29,72] - tbnz x1, 15, .L1686 + tbnz x1, 15, .L1688 ldr w3, [x29,72] ubfx x5, x3, 3, 5 ldr w3, [x29,72] @@ -10489,26 +10506,26 @@ nandc_xfer: orr w1, w4, w1, lsl 5 cmp w3, w1 ldr w1, [x29,72] - bls .L1678 + bls .L1680 ubfx x3, x1, 3, 5 ldr w1, [x29,72] ubfx x1, x1, 27, 1 - b .L1699 -.L1678: + b .L1701 +.L1680: ubfx x3, x1, 16, 5 ldr w1, [x29,72] ubfx x1, x1, 29, 1 -.L1699: +.L1701: orr w1, w3, w1, lsl 5 cmp w0, w1 csel w0, w0, w1, cs - b .L1677 -.L1686: + b .L1679 +.L1688: mov w0, -1 -.L1677: +.L1679: add w2, w2, 1 - b .L1676 -.L1702: + b .L1678 +.L1704: add x19, x19, :lo12:.LANCHOR0 ldr x1, [x19,536] str wzr, [x1,16] @@ -10517,7 +10534,7 @@ nandc_xfer: movk w1, 0x2, lsl 16 and w1, w20, w1 cmp w1, 139264 - bne .L1671 + bne .L1673 adrp x0, .LC141 mov w1, w20 add x0, x0, :lo12:.LC141 @@ -10525,24 +10542,24 @@ nandc_xfer: bl printk ldr x0, [x19,536] str w20, [x0] - b .L1672 -.L1671: + b .L1674 +.L1673: cmn w0, #1 - beq .L1691 + beq .L1693 ldr w1, [x23] cmn w1, #1 - bne .L1691 + bne .L1693 ldr w1, [x23,4] cmn w1, #1 - bne .L1691 + bne .L1693 ldr w1, [x21] cmn w1, #1 mov w1, 512 csel w0, w0, w1, ne - b .L1691 -.L1672: + b .L1693 +.L1674: mov w0, -1 -.L1691: +.L1693: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldr x23, [sp,48] @@ -10572,36 +10589,36 @@ flash_read_page: and w20, w1, 2097151 ubfx x24, x23, 24, 2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 4, .L1704 + tbz x0, 4, .L1706 adrp x0, .LC142 mov w1, w21 add x0, x0, :lo12:.LC142 mov w2, w24 mov w3, w23 bl printk -.L1704: +.L1706: bl nandc_wait_flash_ready mov w0, w21 bl nandc_cs - cbnz w24, .L1705 + cbnz w24, .L1707 mov w0, w21 bl zftl_flash_enter_slc_mode - b .L1706 -.L1705: + b .L1708 +.L1707: add x0, x22, :lo12:.LANCHOR0 ldr x0, [x0,624] ldrb w0, [x0,12] cmp w0, 3 - bne .L1707 + bne .L1709 sxtw x0, w21 add x0, x0, 8 add x0, x19, x0, lsl 8 str w24, [x0,8] - b .L1706 -.L1707: + b .L1708 +.L1709: mov w0, w21 bl zftl_flash_exit_slc_mode -.L1706: +.L1708: ubfiz x5, x21, 8, 8 and w23, w23, 255 add x19, x19, x5 @@ -10615,19 +10632,19 @@ flash_read_page: str w0, [x19,2052] mov w0, 48 str w0, [x19,2056] - cbz w24, .L1708 + cbz w24, .L1710 add x22, x22, :lo12:.LANCHOR0 ldr x0, [x22,624] ldrb w0, [x0,12] cmp w0, 3 - bne .L1708 + bne .L1710 add w20, w20, w20, lsl 1 sub w0, w20, #1 add w0, w0, w24 - b .L1719 -.L1708: + b .L1721 +.L1710: mov w0, w20 -.L1719: +.L1721: bl nandc_set_seed bl nandc_wait_flash_ready mov w0, 5 @@ -10687,11 +10704,11 @@ micron_read_retrial: adrp x0, .LC143 add x0, x0, :lo12:.LC143 str x0, [x29,104] -.L1721: +.L1723: add x0, x23, :lo12:.LANCHOR4 ldrb w0, [x0,1216] cmp w20, w0 - bcs .L1725 + bcs .L1727 ldr x0, [x29,112] add w27, w20, 1 add x1, x22, x0 @@ -10716,7 +10733,7 @@ micron_read_retrial: mov w6, w0 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 12, .L1722 + tbz x0, 12, .L1724 ldr x0, [x29,104] mov w1, w20 mov w2, w21 @@ -10725,9 +10742,9 @@ micron_read_retrial: str x6, [x29,96] bl printk ldr x6, [x29,96] -.L1722: +.L1724: cmn w6, #1 - beq .L1723 + beq .L1725 adrp x0, .LANCHOR4 cmn w28, #1 add x0, x0, :lo12:.LANCHOR4 @@ -10736,13 +10753,13 @@ micron_read_retrial: ldr x26, [x0,1208] ldr w0, [x29,124] cmp w6, w0 - bcc .L1730 -.L1723: - mov w20, w27 - b .L1721 -.L1730: - mov w28, w6 + bcc .L1732 .L1725: + mov w20, w27 + b .L1723 +.L1732: + mov w28, w6 +.L1727: add x19, x22, x19, lsl 8 mov w0, 239 str w0, [x19,2056] @@ -10756,16 +10773,16 @@ micron_read_retrial: str wzr, [x19,2048] str wzr, [x19,2048] cmp w28, w0 - bcc .L1727 + bcc .L1729 cmn w28, #1 mov w0, 256 csel w28, w28, w0, eq -.L1727: +.L1729: cmn w28, #1 - beq .L1731 + beq .L1733 cmp w28, 256 - bne .L1728 -.L1731: + bne .L1730 +.L1733: adrp x0, .LC144 mov w1, w20 add x0, x0, :lo12:.LC144 @@ -10773,7 +10790,7 @@ micron_read_retrial: mov w3, w20 mov w4, w28 bl printk -.L1728: +.L1730: mov w0, w28 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -10818,19 +10835,19 @@ toshiba_3d_read_retrial: cmp w1, 36 mov w1, 26 csel w21, w21, w1, ne - cbnz w19, .L1745 + cbnz w19, .L1747 str x0, [x29,112] adrp x0, .LC145 add x0, x0, :lo12:.LC145 mov w19, -1 mov w28, 1 str x0, [x29,104] -.L1752: +.L1754: add x0, x20, :lo12:.LANCHOR0 ldrb w0, [x0,725] cmp w0, 36 mov x0, x23 - bne .L1746 + bne .L1748 mov w1, w28 mov w2, 0 bl toshiba_tlc_set_rr_para @@ -10838,11 +10855,11 @@ toshiba_3d_read_retrial: mov w1, 93 add x0, x25, x0 str w1, [x0,8] - b .L1747 -.L1746: + b .L1749 +.L1748: mov w1, w28 bl toshiba_3d_set_slc_rr_para -.L1747: +.L1749: ldr w4, [x29,124] mov w0, w22 mov w1, w24 @@ -10852,7 +10869,7 @@ toshiba_3d_read_retrial: mov w4, w0 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 4, .L1748 + tbz x0, 4, .L1750 ldr x0, [x29,104] mov w3, w4 mov w1, w28 @@ -10860,9 +10877,9 @@ toshiba_3d_read_retrial: str x4, [x29,96] bl printk ldr x4, [x29,96] -.L1748: +.L1750: cmn w4, #1 - beq .L1749 + beq .L1751 adrp x0, .LANCHOR4 cmn w19, #1 add x0, x0, :lo12:.LANCHOR4 @@ -10873,53 +10890,53 @@ toshiba_3d_read_retrial: ldrb w0, [x0,724] add w0, w0, w0, lsl 1 cmp w4, w0, lsr 2 - bcc .L1768 -.L1749: + bcc .L1770 +.L1751: add w28, w28, 1 cmp w28, w21 - bne .L1752 - b .L1751 -.L1768: + bne .L1754 + b .L1753 +.L1770: mov w21, w28 mov w19, w4 -.L1751: +.L1753: add x0, x20, :lo12:.LANCHOR0 ldrb w0, [x0,725] cmp w0, 36 mov x0, x23 - bne .L1753 + bne .L1755 mov w1, 0 mov w2, w1 - b .L1791 -.L1753: + b .L1793 +.L1755: mov w1, 0 bl toshiba_3d_set_slc_rr_para - b .L1754 -.L1745: + b .L1756 +.L1747: mov x28, x0 adrp x0, .LC146 add x0, x0, :lo12:.LC146 mov w19, -1 mov w21, 1 str x0, [x29,104] -.L1761: +.L1763: add x0, x20, :lo12:.LANCHOR0 ldrb w0, [x0,725] cmp w0, 36 mov x0, x23 - bne .L1755 + bne .L1757 mov w1, w21 mov w2, 1 bl toshiba_tlc_set_rr_para add x0, x25, x28 mov w1, 93 - b .L1790 -.L1755: + b .L1792 +.L1757: mov w1, w21 bl toshiba_3d_set_tlc_rr_para add x0, x25, x28 mov w1, 38 -.L1790: +.L1792: str w1, [x0,8] mov x2, x26 mov w0, w22 @@ -10930,7 +10947,7 @@ toshiba_3d_read_retrial: mov w4, w0 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 4, .L1757 + tbz x0, 4, .L1759 ldr x0, [x29,104] mov w3, w4 mov w1, w21 @@ -10938,9 +10955,9 @@ toshiba_3d_read_retrial: str x4, [x29,96] bl printk ldr x4, [x29,96] -.L1757: +.L1759: cmn w4, #1 - beq .L1758 + beq .L1760 adrp x0, .LANCHOR4 cmn w19, #1 add x0, x0, :lo12:.LANCHOR4 @@ -10951,34 +10968,34 @@ toshiba_3d_read_retrial: ldrb w0, [x0,724] add w0, w0, w0, lsl 1 cmp w4, w0, lsr 2 - bcc .L1769 -.L1758: + bcc .L1771 +.L1760: ldr w0, [x29,112] add w21, w21, 1 cmp w21, w0 - bne .L1761 - b .L1760 -.L1769: + bne .L1763 + b .L1762 +.L1771: mov w19, w4 -.L1760: +.L1762: add x0, x20, :lo12:.LANCHOR0 ldrb w0, [x0,725] cmp w0, 36 mov x0, x23 - bne .L1762 + bne .L1764 mov w1, 0 mov w2, 1 -.L1791: +.L1793: bl toshiba_tlc_set_rr_para - b .L1754 -.L1762: + b .L1756 +.L1764: mov w1, 0 bl toshiba_3d_set_tlc_rr_para -.L1754: +.L1756: add x0, x20, :lo12:.LANCHOR0 ldrb w0, [x0,725] cmp w0, 36 - bne .L1763 + bne .L1765 ubfiz x22, x22, 8, 8 mov w0, 85 add x25, x25, x22 @@ -10987,21 +11004,21 @@ toshiba_3d_read_retrial: str wzr, [x25,2052] str wzr, [x25,2048] str w0, [x25,2056] -.L1763: +.L1765: add x20, x20, :lo12:.LANCHOR0 ldrb w0, [x20,724] add w0, w0, w0, lsl 1 cmp w19, w0, lsr 2 - bcc .L1764 + bcc .L1766 cmn w19, #1 mov w0, 256 csel w19, w19, w0, eq -.L1764: +.L1766: cmn w19, #1 - beq .L1770 + beq .L1772 cmp w19, 256 - bne .L1765 -.L1770: + bne .L1767 +.L1772: adrp x0, .LC147 mov w1, w21 add x0, x0, :lo12:.LC147 @@ -11009,7 +11026,7 @@ toshiba_3d_read_retrial: mov w3, w21 mov w4, w19 bl printk -.L1765: +.L1767: bl nandc_wait_flash_ready mov w0, w19 ldp x19, x20, [sp,16] @@ -11049,20 +11066,20 @@ toshiba_read_retrial: add x21, x22, x21, lsl 8 uxtb w0, w0 cmp w0, 1 - bls .L1793 + bls .L1795 ldrb w0, [x1,672] - cbz w0, .L1794 + cbz w0, .L1796 mov w0, 1 mov w25, 1 bl nandc_set_if_mode -.L1794: +.L1796: ubfiz x0, x23, 8, 8 mov w1, 92 add x0, x22, x0 str w1, [x0,2056] mov w1, 197 str w1, [x0,2056] -.L1793: +.L1795: ldr x0, [x29,112] mov w20, 1 mov w24, -1 @@ -11071,13 +11088,13 @@ toshiba_read_retrial: str x0, [x29,104] ubfiz x0, x23, 8, 8 str x0, [x29,96] -.L1795: +.L1797: adrp x0, .LANCHOR4 add x0, x0, :lo12:.LANCHOR4 ldrb w0, [x0,1216] add w0, w0, 1 cmp w20, w0 - bcs .L1826 + bcs .L1828 add x0, x19, :lo12:.LANCHOR0 mov w1, w20 ldrb w0, [x0,725] @@ -11085,27 +11102,27 @@ toshiba_read_retrial: uxtb w0, w0 cmp w0, 1 mov x0, x21 - bhi .L1796 + bhi .L1798 bl sandisk_set_rr_para - b .L1797 -.L1796: + b .L1799 +.L1798: bl toshiba_set_rr_para -.L1797: +.L1799: add x0, x19, :lo12:.LANCHOR0 ldrb w0, [x0,725] cmp w0, 34 - bne .L1798 + bne .L1800 adrp x0, .LANCHOR4 add x0, x0, :lo12:.LANCHOR4 ldrb w0, [x0,1216] sub w0, w0, #3 cmp w20, w0 - bne .L1798 + bne .L1800 ldr x0, [x29,104] mov w1, 179 add x0, x22, x0 str w1, [x0,8] -.L1798: +.L1800: ldr x0, [x29,96] mov w1, 38 ldr w4, [x29,120] @@ -11120,7 +11137,7 @@ toshiba_read_retrial: bl flash_read_page cmn w0, #1 mov w28, w0 - beq .L1801 + beq .L1803 cmn w24, #1 csel w24, w24, w0, ne adrp x0, .LANCHOR4 @@ -11131,13 +11148,13 @@ toshiba_read_retrial: ldrb w0, [x0,724] add w0, w0, w0, lsl 1 cmp w28, w0, lsr 2 - bcc .L1803 -.L1801: - add w20, w20, 1 - b .L1795 -.L1826: - mov w28, w24 + bcc .L1805 .L1803: + add w20, w20, 1 + b .L1797 +.L1828: + mov w28, w24 +.L1805: add x0, x19, :lo12:.LANCHOR0 mov w1, 0 ldrb w0, [x0,725] @@ -11145,12 +11162,12 @@ toshiba_read_retrial: uxtb w0, w0 cmp w0, 1 mov x0, x21 - bhi .L1805 + bhi .L1807 bl sandisk_set_rr_para - b .L1806 -.L1805: + b .L1808 +.L1807: bl toshiba_set_rr_para -.L1806: +.L1808: ldr x0, [x29,112] add x19, x19, :lo12:.LANCHOR0 add x0, x0, 8 @@ -11160,16 +11177,16 @@ toshiba_read_retrial: ldrb w0, [x19,724] add w0, w0, w0, lsl 1 cmp w28, w0, lsr 2 - bcc .L1807 + bcc .L1809 cmn w28, #1 mov w0, 256 csel w28, w28, w0, eq -.L1807: +.L1809: cmn w28, #1 - beq .L1813 + beq .L1815 cmp w28, 256 - bne .L1808 -.L1813: + bne .L1810 +.L1815: adrp x0, .LC147 ldr w2, [x29,124] add x0, x0, :lo12:.LC147 @@ -11177,12 +11194,12 @@ toshiba_read_retrial: mov w3, w20 mov w4, w28 bl printk -.L1808: +.L1810: bl nandc_wait_flash_ready - cbz w25, .L1810 + cbz w25, .L1812 mov w0, 4 bl nandc_set_if_mode -.L1810: +.L1812: mov w0, w28 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -11220,9 +11237,9 @@ hynix_read_retrial: bl nandc_wait_flash_ready mov w6, 0 adrp x7, .LANCHOR4 -.L1828: +.L1830: cmp w6, w24 - bcs .L1832 + bcs .L1834 add w20, w20, 1 mov w0, w22 str x7, [x29,104] @@ -11241,7 +11258,7 @@ hynix_read_retrial: cmn w0, #1 ldr x6, [x29,112] ldr x7, [x29,104] - beq .L1830 + beq .L1832 add x1, x7, :lo12:.LANCHOR4 cmn w19, #1 csel w19, w19, w0, ne @@ -11251,29 +11268,29 @@ hynix_read_retrial: ldrb w1, [x1,724] add w1, w1, w1, lsl 1 cmp w0, w1, lsr 2 - bcc .L1837 -.L1830: - add w6, w6, 1 - b .L1828 -.L1837: - mov w19, w0 + bcc .L1839 .L1832: + add w6, w6, 1 + b .L1830 +.L1839: + mov w19, w0 +.L1834: add x28, x28, :lo12:.LANCHOR0 add x21, x27, x21 ldrb w0, [x28,724] strb w20, [x21,8] add w0, w0, w0, lsl 1 cmp w19, w0, lsr 2 - bcc .L1834 + bcc .L1836 cmn w19, #1 mov w0, 256 csel w19, w19, w0, eq -.L1834: +.L1836: cmn w19, #1 - beq .L1838 + beq .L1840 cmp w19, 256 - bne .L1835 -.L1838: + bne .L1837 +.L1840: adrp x0, .LC148 mov w1, w6 add x0, x0, :lo12:.LC148 @@ -11281,7 +11298,7 @@ hynix_read_retrial: mov w3, w6 mov w4, w19 bl printk -.L1835: +.L1837: mov w0, w19 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -11320,7 +11337,7 @@ flash_ddr_tuning_read: mov w21, 6 mov w19, -1 str x0, [x29,104] -.L1853: +.L1855: mov w0, w21 bl nandc_set_ddr_para ldr w4, [x29,116] @@ -11332,7 +11349,7 @@ flash_ddr_tuning_read: mov w4, w0 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 4, .L1848 + tbz x0, 4, .L1850 ldr x0, [x29,104] mov w3, w4 mov w1, w21 @@ -11340,10 +11357,10 @@ flash_ddr_tuning_read: str x4, [x29,96] bl printk ldr x4, [x29,96] -.L1848: +.L1850: add w0, w25, 1 cmp w4, w0 - bhi .L1849 + bhi .L1851 adrp x0, .LANCHOR4 add x0, x0, :lo12:.LANCHOR4 ldr x23, [x0,1192] @@ -11352,62 +11369,62 @@ flash_ddr_tuning_read: add x0, x0, :lo12:.LANCHOR0 ldrb w0, [x0,724] cmp w4, w0, lsr 2 - bcs .L1858 + bcs .L1860 add w27, w27, 1 cmp w27, 7 - bls .L1858 + bls .L1860 sub w26, w21, w27 mov w25, w4 mov w19, 0 - b .L1851 -.L1849: + b .L1853 +.L1851: cmp w28, w27 - bcs .L1859 + bcs .L1861 cmp w27, 7 sub w22, w26, w27 - bhi .L1852 + bhi .L1854 mov w28, w27 - b .L1859 -.L1858: + b .L1861 +.L1860: mov w26, w21 mov w25, w4 mov w19, 0 - b .L1850 -.L1859: + b .L1852 +.L1861: mov w27, 0 -.L1850: +.L1852: add w21, w21, 2 cmp w21, 50 - bne .L1853 -.L1851: + bne .L1855 +.L1853: cmp w28, w27 csel w26, w26, w22, ls -.L1852: - cbz w26, .L1854 +.L1854: + cbz w26, .L1856 adrp x0, .LANCHOR0+724 mov w1, 3 ldrb w0, [x0,#:lo12:.LANCHOR0+724] udiv w0, w0, w1 cmp w25, w0 - bcs .L1854 + bcs .L1856 adrp x0, .LC150 mov w1, w26 add x0, x0, :lo12:.LC150 bl printk mov w0, w26 - b .L1867 -.L1854: + b .L1869 +.L1856: ldrb w0, [x29,120] -.L1867: +.L1869: bl nandc_set_ddr_para - cbz w19, .L1856 + cbz w19, .L1858 adrp x0, .LC151 ldr w1, [x29,124] add x0, x0, :lo12:.LC151 mov w2, w20 mov w25, w19 bl printk -.L1856: +.L1858: mov w0, w25 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -11438,53 +11455,53 @@ flash_read_page_en: mov w23, w4 ubfx x26, x19, 24, 2 cmp w0, w21 - bhi .L1869 + bhi .L1871 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 377 + mov w2, 380 add x1, x1, 136 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1869: +.L1871: add x0, x20, :lo12:.LANCHOR0 add x1, x0, x21, sxtw ldrb w22, [x1,736] ldrb w0, [x0,633] cmp w0, w21 - bcs .L1870 + bcs .L1872 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 6, .L1870 + tbz x0, 6, .L1872 adrp x0, .LC152 mov w1, w22 add x0, x0, :lo12:.LC152 mov w2, w21 mov w3, w19 bl printk -.L1870: - cbnz w26, .L1871 +.L1872: + cbnz w26, .L1873 ldrb w1, [x20,#:lo12:.LANCHOR0] add x0, x20, :lo12:.LANCHOR0 - cbz w1, .L1872 + cbz w1, .L1874 ldrb w0, [x0,1] - cbz w0, .L1871 -.L1872: + cbz w0, .L1873 +.L1874: add x1, x20, :lo12:.LANCHOR0 ldrh w2, [x1,2] udiv w0, w19, w2 mul w0, w0, w2 ldrb w2, [x1,1] sub w19, w19, w0 - cbz w2, .L1873 + cbz w2, .L1875 add w19, w0, w19, lsl 1 - b .L1871 -.L1873: + b .L1873 +.L1875: add x1, x1, 4 ldrh w19, [x1,w19,uxtw 1] add w19, w19, w0 -.L1871: +.L1873: mov w0, w22 mov w1, w19 mov x2, x25 @@ -11493,16 +11510,16 @@ flash_read_page_en: bl flash_read_page cmn w0, #1 mov w21, w0 - bne .L1880 + bne .L1882 add x26, x20, :lo12:.LANCHOR0 ldrb w27, [x26,720] - cbnz w27, .L1875 -.L1878: + cbnz w27, .L1877 +.L1880: adrp x0, .LANCHOR4+1224 ldr x5, [x0,#:lo12:.LANCHOR4+1224] - cbnz x5, .L1876 - b .L1877 -.L1875: + cbnz x5, .L1878 + b .L1879 +.L1877: mov w0, w22 mov w1, w19 mov x2, x25 @@ -11512,9 +11529,9 @@ flash_read_page_en: bl flash_read_page strb w27, [x26,720] cmn w0, #1 - beq .L1878 - b .L1896 -.L1876: + beq .L1880 + b .L1898 +.L1878: mov w0, w22 mov w1, w19 mov x2, x25 @@ -11522,8 +11539,8 @@ flash_read_page_en: mov w4, w23 blr x5 cmn w0, #1 - bne .L1896 -.L1877: + bne .L1898 +.L1879: add x20, x20, :lo12:.LANCHOR0 adrp x0, .LC153 add x0, x0, :lo12:.LC153 @@ -11533,16 +11550,16 @@ flash_read_page_en: ldrb w4, [x20,720] bl printk ldrb w0, [x20,672] - cbz w0, .L1880 + cbz w0, .L1882 mov w0, w22 mov w1, w19 mov x2, x25 mov x3, x24 mov w4, w23 bl flash_ddr_tuning_read -.L1896: +.L1898: mov w21, w0 -.L1880: +.L1882: mov w0, w21 ldr x27, [sp,80] ldp x19, x20, [sp,16] @@ -11581,12 +11598,12 @@ flash_get_last_written_page: add w1, w26, w19 bl flash_read_page_en cmp w0, 512 - bne .L1898 + bne .L1900 mov w28, 0 mov w5, 2 -.L1899: +.L1901: cmp w28, w19 - bgt .L1898 + bgt .L1900 add w0, w28, w19 mov x2, x24 mov x3, x21 @@ -11598,24 +11615,24 @@ flash_get_last_written_page: bl flash_read_page_en cmp w0, 512 ldr x5, [x29,104] - bne .L1900 + bne .L1902 sub w19, w20, #1 sxth w19, w19 - b .L1899 -.L1900: + b .L1901 +.L1902: add w20, w20, 1 sxth w28, w20 - b .L1899 -.L1898: + b .L1901 +.L1900: ldr w0, [x27,#:lo12:.LANCHOR2] - tbz x0, 12, .L1903 + tbz x0, 12, .L1905 adrp x0, .LC154 ldr w3, [x21] add x0, x0, :lo12:.LC154 mov w1, w22 mov w2, w19 bl printk -.L1903: +.L1905: mov w0, w19 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -11662,7 +11679,7 @@ flash_info_blk_init: stp x21, x22, [sp,32] stp x23, x24, [sp,48] adrp x20, .LANCHOR0 - tbz x0, 12, .L1909 + tbz x0, 12, .L1911 add x4, x20, :lo12:.LANCHOR0 adrp x2, .LANCHOR3 adrp x0, .LC155 @@ -11673,10 +11690,10 @@ flash_info_blk_init: add x2, x2, 160 mov w3, 2048 bl printk -.L1909: +.L1911: mov w22, 4 adrp x24, .LANCHOR4 -.L1912: +.L1914: add x19, x20, :lo12:.LANCHOR0 add x21, x24, :lo12:.LANCHOR4 mov w0, 0 @@ -11688,21 +11705,21 @@ flash_info_blk_init: mul w1, w22, w1 bl flash_read_page_en cmn w0, #1 - beq .L1910 + beq .L1912 ldr x2, [x19,728] mov w0, 21321 movk w0, 0x5359, lsl 16 ldr w1, [x2] cmp w1, w0 - beq .L1911 -.L1910: + beq .L1913 +.L1912: add w22, w22, 1 cmp w22, 16 - bne .L1912 -.L1936: + bne .L1914 +.L1938: mov w0, -1 - b .L1935 -.L1911: + b .L1937 +.L1913: ldrb w1, [x2,36] mov w4, 4 ldrh w3, [x19,2] @@ -11715,16 +11732,16 @@ flash_info_blk_init: mov w21, 0 bl flash_read_page_en cmn w0, #1 - beq .L1914 + beq .L1916 ldr x0, [x19,728] mov w1, 21321 movk w1, 0x5359, lsl 16 mov w21, 0 ldr w2, [x0] cmp w2, w1 - bne .L1914 + bne .L1916 ldr w21, [x0,4] -.L1914: +.L1916: add x19, x23, :lo12:.LANCHOR4 add x22, x20, :lo12:.LANCHOR0 mov w0, 0 @@ -11736,21 +11753,21 @@ flash_info_blk_init: ldr x2, [x22,728] bl flash_read_page_en cmn w0, #1 - beq .L1915 + beq .L1917 ldr x0, [x22,728] mov w1, 21321 movk w1, 0x5359, lsl 16 ldr w2, [x0] cmp w2, w1 - bne .L1915 + bne .L1917 ldr w1, [x0,4] cmp w21, w1 - bcs .L1915 + bcs .L1917 ldrb w1, [x0,37] ldrb w0, [x0,36] strb w1, [x19,1240] strb w0, [x19,1241] -.L1915: +.L1917: add x21, x23, :lo12:.LANCHOR4 add x22, x20, :lo12:.LANCHOR0 mov w0, 0 @@ -11765,8 +11782,8 @@ flash_info_blk_init: ldrb w0, [x21,1240] ldrh w21, [x22,2] mul w21, w0, w21 -.L1916: - tbnz w19, #31, .L1937 +.L1918: + tbnz w19, #31, .L1939 add x22, x20, :lo12:.LANCHOR0 add x3, x23, :lo12:.LANCHOR4 mov w0, 0 @@ -11776,31 +11793,31 @@ flash_info_blk_init: ldr x3, [x3,1232] bl flash_read_page_en cmn w0, #1 - beq .L1917 + beq .L1919 ldr x0, [x22,728] ldr w1, [x0] mov w0, 21321 movk w0, 0x5359, lsl 16 cmp w1, w0 - bne .L1917 -.L1919: + bne .L1919 +.L1921: mov w0, 0 - b .L1935 -.L1917: + b .L1937 +.L1919: sub w19, w19, #1 sxth w19, w19 - b .L1916 -.L1937: + b .L1918 +.L1939: cmn w19, #1 - bne .L1919 + bne .L1921 add x20, x20, :lo12:.LANCHOR0 adrp x0, .LC156 add x0, x0, :lo12:.LC156 ldr x1, [x20,728] ldr w1, [x1] bl printk - b .L1936 -.L1935: + b .L1938 +.L1937: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -11841,20 +11858,20 @@ flash_ddr_para_scan: mov w4, 4 bl flash_read_page cmn w0, #1 - bne .L1939 + bne .L1941 ldrb w0, [x21,780] - tbz x0, 0, .L1939 + tbz x0, 0, .L1941 mov w0, 1 bl flash_set_interface_mode mov w0, w22 bl nandc_set_if_mode strb wzr, [x21,672] - b .L1940 -.L1939: + b .L1942 +.L1941: add x19, x19, :lo12:.LANCHOR0 mov w0, 1 strb w0, [x19,672] -.L1940: +.L1942: mov w0, 0 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -11901,9 +11918,9 @@ id_block_read_data.constprop.27: adrp x0, .LC157 add x0, x0, :lo12:.LC157 str x0, [x29,112] -.L1945: +.L1947: cmp w22, w27 - bcs .L1982 + bcs .L1984 ldr w0, [x29,168] adrp x1, .LANCHOR4 add x1, x1, :lo12:.LANCHOR4 @@ -11917,15 +11934,15 @@ id_block_read_data.constprop.27: udiv w20, w20, w23 and w20, w20, 65535 ldrh w0, [x0,w20,sxtw 1] - cbnz w1, .L1946 + cbnz w1, .L1948 mov w20, w0 - b .L1947 -.L1946: + b .L1949 +.L1948: ldrb w1, [x19,1] lsl w0, w20, 1 cmp w1, wzr csel w20, w0, w20, ne -.L1947: +.L1949: ldr w1, [x29,160] ldr w0, [x29,164] ldrb w28, [x19,632] @@ -11940,7 +11957,7 @@ id_block_read_data.constprop.27: str w0, [x29,132] mov w0, w28 bl nandc_bch_sel -.L1948: +.L1950: mov w0, 0 mov w1, w24 mov x2, x21 @@ -11949,16 +11966,16 @@ id_block_read_data.constprop.27: bl flash_read_page cmn w0, #1 mov w20, w0 - bne .L1955 + bne .L1957 ldrb w6, [x19,720] - cbnz w6, .L1950 -.L1953: + cbnz w6, .L1952 +.L1955: adrp x0, .LANCHOR4 add x0, x0, :lo12:.LANCHOR4 ldr x6, [x0,1224] - cbnz x6, .L1951 - b .L1952 -.L1950: + cbnz x6, .L1953 + b .L1954 +.L1952: mov w0, 0 mov w1, w24 mov x2, x21 @@ -11970,9 +11987,9 @@ id_block_read_data.constprop.27: cmn w0, #1 ldr x6, [x29,104] strb w6, [x19,720] - beq .L1953 - b .L1981 -.L1951: + beq .L1955 + b .L1983 +.L1953: mov w0, 0 mov w1, w24 mov x2, x21 @@ -11980,28 +11997,28 @@ id_block_read_data.constprop.27: mov w4, w23 blr x6 cmn w0, #1 - bne .L1981 -.L1952: + bne .L1983 +.L1954: ldrb w0, [x19,672] - cbz w0, .L1955 + cbz w0, .L1957 mov w0, 0 mov w1, w24 mov x2, x21 add x3, x29, 176 mov w4, w23 bl flash_ddr_tuning_read -.L1981: +.L1983: mov w20, w0 -.L1955: +.L1957: cmn w20, #1 - bne .L1956 + bne .L1958 cmp w28, 16 - beq .L1956 + beq .L1958 mov w0, 16 mov w28, 16 bl nandc_bch_sel - b .L1948 -.L1956: + b .L1950 +.L1958: ldr w0, [x29,132] bl nandc_bch_sel cmn w20, #1 @@ -12012,18 +12029,18 @@ id_block_read_data.constprop.27: cmp w0, w26 cset w0, eq tst w1, w0 - beq .L1958 - cbnz w25, .L1958 + beq .L1960 + cbnz w25, .L1960 ldr w1, [x21] mov w0, 18766 movk w0, 0x464e, lsl 16 cmp w1, w0 - bne .L1958 + bne .L1960 ldr w0, [x29,144] ldrb w23, [x21,17] add w27, w27, w0 - b .L1959 -.L1958: + b .L1961 +.L1960: ldr x0, [x29,144] mov w2, w22 ldr w1, [x29,140] @@ -12034,12 +12051,12 @@ id_block_read_data.constprop.27: ldr x0, [x29,112] bl printk str wzr, [x29,168] -.L1959: +.L1961: ldr w0, [x29,144] add w22, w0, w22 uxth w22, w22 - b .L1945 -.L1982: + b .L1947 +.L1984: ldr x0, [x29,120] ldrb w1, [x29,136] add x0, x0, :lo12:.LANCHOR0 @@ -12072,27 +12089,27 @@ flash_complete_plane_page_read: mov x23, x2 ldrb w0, [x0,633] cmp w0, w22 - bhi .L1984 + bhi .L1986 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 782 + mov w2, 785 add x1, x1, 184 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L1984: +.L1986: add x0, x21, :lo12:.LANCHOR0 add x22, x0, x22, sxtw ldrb w22, [x22,736] ldr x25, [x0,536] mov w0, w22 bl nandc_cs - cbnz w20, .L1985 + cbnz w20, .L1987 mov w0, w19 bl slc_phy_page_address_calc mov w19, w0 -.L1985: +.L1987: add x3, x21, :lo12:.LANCHOR0 uxtb x5, w22 and w2, w19, 255 @@ -12100,26 +12117,26 @@ flash_complete_plane_page_read: ldrb w0, [x3,656] cmp w0, 1 lsr w0, w19, 16 - bne .L1986 + bne .L1988 add x5, x25, x5, lsl 8 mov w3, 6 - b .L1999 -.L1986: + b .L2001 +.L1988: ldr x3, [x3,624] add x5, x25, x5, lsl 8 ldrb w3, [x3,12] cmp w3, 3 - bne .L1988 + bne .L1990 mov w3, 5 -.L1999: +.L2001: str w3, [x5,2056] str wzr, [x5,2052] str wzr, [x5,2052] str w2, [x5,2052] str w1, [x5,2052] str w0, [x5,2052] - b .L1997 -.L1988: + b .L1999 +.L1990: str wzr, [x5,2056] str wzr, [x5,2052] str wzr, [x5,2052] @@ -12130,22 +12147,22 @@ flash_complete_plane_page_read: str w0, [x5,2056] str wzr, [x5,2052] str wzr, [x5,2052] -.L1997: +.L1999: mov w0, 224 str w0, [x5,2056] - cbz w20, .L1989 + cbz w20, .L1991 add x21, x21, :lo12:.LANCHOR0 ldr x0, [x21,624] ldrb w0, [x0,12] cmp w0, 3 - bne .L1989 + bne .L1991 sub w20, w20, #1 add w0, w19, w19, lsl 1 add w0, w20, w0 - b .L1998 -.L1989: + b .L2000 +.L1991: mov w0, w19 -.L1998: +.L2000: bl nandc_set_seed adrp x2, .LANCHOR2+385 mov x3, x24 @@ -12186,27 +12203,27 @@ flash_complete_page_read: mov x26, x2 ubfx x22, x24, 24, 2 cmp w0, w21 - bhi .L2001 + bhi .L2003 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 904 + mov w2, 907 add x1, x1, 216 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2001: +.L2003: add x0, x19, :lo12:.LANCHOR0 add x21, x0, x21, sxtw ldrb w23, [x21,736] ldr x21, [x0,536] mov w0, w23 bl nandc_cs - cbnz w22, .L2002 + cbnz w22, .L2004 mov w0, w20 bl slc_phy_page_address_calc mov w20, w0 -.L2002: +.L2004: ubfiz x0, x23, 8, 8 add x5, x21, x0 mov w0, 5 @@ -12221,19 +12238,19 @@ flash_complete_page_read: str w0, [x5,2052] mov w0, 224 str w0, [x5,2056] - cbz w22, .L2003 + cbz w22, .L2005 add x0, x19, :lo12:.LANCHOR0 ldr x0, [x0,624] ldrb w0, [x0,12] cmp w0, 3 - bne .L2003 + bne .L2005 sub w0, w22, #1 add w1, w20, w20, lsl 1 add w0, w0, w1 - b .L2035 -.L2003: + b .L2037 +.L2005: mov w0, w20 -.L2035: +.L2037: adrp x21, .LANCHOR2 bl nandc_set_seed add x27, x21, :lo12:.LANCHOR2 @@ -12245,10 +12262,10 @@ flash_complete_page_read: ldrb w2, [x27,9] bl nandc_xfer cmn w0, #1 - bne .L2005 + bne .L2007 add x28, x19, :lo12:.LANCHOR0 ldrb w5, [x28,720] - cbz w5, .L2006 + cbz w5, .L2008 ldrb w4, [x27,9] mov w0, w23 orr w1, w20, w22, lsl 24 @@ -12259,15 +12276,15 @@ flash_complete_page_read: bl flash_read_page ldr x5, [x29,104] strb w5, [x28,720] - cbnz w22, .L2007 -.L2014: + cbnz w22, .L2009 +.L2016: ldrb w2, [x19,#:lo12:.LANCHOR0] add x1, x19, :lo12:.LANCHOR0 - cbz w2, .L2007 + cbz w2, .L2009 ldrb w1, [x1,724] add w1, w1, w1, lsl 1 cmp w0, w1, lsr 2 - blt .L2007 + blt .L2009 add x21, x21, :lo12:.LANCHOR2 ldrb w1, [x21,395] sub w1, w1, #4 @@ -12275,15 +12292,15 @@ flash_complete_page_read: cmp w1, 3 mov w1, 256 csel w0, w0, w1, hi - b .L2022 -.L2007: + b .L2024 +.L2009: cmn w0, #1 - bne .L2022 -.L2015: + bne .L2024 +.L2017: adrp x0, .LANCHOR4+1224 ldr x5, [x0,#:lo12:.LANCHOR4+1224] - cbnz x5, .L2010 -.L2013: + cbnz x5, .L2012 +.L2015: add x19, x19, :lo12:.LANCHOR0 adrp x0, .LC158 add x0, x0, :lo12:.LC158 @@ -12293,10 +12310,10 @@ flash_complete_page_read: ldrb w4, [x19,720] bl printk ldrb w0, [x19,672] - cbnz w0, .L2011 + cbnz w0, .L2013 mov w0, -1 - b .L2022 -.L2010: + b .L2024 +.L2012: add x4, x21, :lo12:.LANCHOR2 mov w0, w23 orr w1, w20, w22, lsl 24 @@ -12305,9 +12322,9 @@ flash_complete_page_read: ldrb w4, [x4,385] blr x5 cmn w0, #1 - bne .L2022 - b .L2013 -.L2011: + bne .L2024 + b .L2015 +.L2013: add x21, x21, :lo12:.LANCHOR2 mov w0, w23 orr w1, w20, w22, lsl 24 @@ -12315,14 +12332,14 @@ flash_complete_page_read: mov x3, x26 ldrb w4, [x21,385] bl flash_ddr_tuning_read - b .L2022 -.L2005: - cbz w22, .L2014 - b .L2022 -.L2006: - cbz w22, .L2014 - b .L2015 -.L2022: + b .L2024 +.L2007: + cbz w22, .L2016 + b .L2024 +.L2008: + cbz w22, .L2016 + b .L2017 +.L2024: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -12345,7 +12362,7 @@ queue_wait_first_req_completed: stp x27, x28, [sp,80] ldrb w21, [x0,2835] cmp w21, 255 - beq .L2120 + beq .L2122 add x0, x0, 784 mov w1, 0 add x0, x0, x21, lsl 6 @@ -12353,45 +12370,45 @@ queue_wait_first_req_completed: ldr w20, [x0,40] sub w3, w2, #1 cmp w3, 9 - bhi .L2038 - adrp x0, .L2040 - add x0, x0, :lo12:.L2040 + bhi .L2040 + adrp x0, .L2042 + add x0, x0, :lo12:.L2042 ldrh w0, [x0,w3,uxtw #1] - adr x1, .Lrtx2040 + adr x1, .Lrtx2042 add x0, x1, w0, sxth #2 br x0 -.Lrtx2040: +.Lrtx2042: .section .rodata .align 0 .align 2 -.L2040: - .2byte (.L2039 - .Lrtx2040) / 4 - .2byte (.L2041 - .Lrtx2040) / 4 - .2byte (.L2042 - .Lrtx2040) / 4 - .2byte (.L2042 - .Lrtx2040) / 4 - .2byte (.L2042 - .Lrtx2040) / 4 - .2byte (.L2043 - .Lrtx2040) / 4 - .2byte (.L2044 - .Lrtx2040) / 4 - .2byte (.L2045 - .Lrtx2040) / 4 - .2byte (.L2042 - .Lrtx2040) / 4 - .2byte (.L2045 - .Lrtx2040) / 4 +.L2042: + .2byte (.L2041 - .Lrtx2042) / 4 + .2byte (.L2043 - .Lrtx2042) / 4 + .2byte (.L2044 - .Lrtx2042) / 4 + .2byte (.L2044 - .Lrtx2042) / 4 + .2byte (.L2044 - .Lrtx2042) / 4 + .2byte (.L2045 - .Lrtx2042) / 4 + .2byte (.L2046 - .Lrtx2042) / 4 + .2byte (.L2047 - .Lrtx2042) / 4 + .2byte (.L2044 - .Lrtx2042) / 4 + .2byte (.L2047 - .Lrtx2042) / 4 .text -.L2039: +.L2041: mov w0, w20 mov w1, 64 bl flash_wait_device_ready - tbz x0, 6, .L2120 + tbz x0, 6, .L2122 add x3, x19, :lo12:.LANCHOR0 add x0, x3, 784 add x0, x0, x21, lsl 6 ldr x2, [x0,16] ldr x1, [x0,8] - cbz x2, .L2047 + cbz x2, .L2049 ldrb w4, [x0,56] ldrb w0, [x3,2832] cmp w4, w0 csel x1, x1, x2, ne -.L2047: +.L2049: add x19, x19, :lo12:.LANCHOR0 mov w0, w20 add x19, x19, 784 @@ -12404,8 +12421,8 @@ queue_wait_first_req_completed: ldrb w0, [x19,2] orr w0, w0, 8 strb w0, [x19,2] - b .L2120 -.L2041: + b .L2122 +.L2043: mov w0, w20 mov w1, 64 bl flash_wait_device_ready @@ -12414,27 +12431,27 @@ queue_wait_first_req_completed: add x3, x2, 784 add x1, x3, x4 ldrb w20, [x3,x4] - tbz x0, 6, .L2120 + tbz x0, 6, .L2122 add x3, x3, x20, lsl 6 ldr x0, [x1,16] ldr x27, [x1,8] ldr x23, [x3,8] - cbz x0, .L2048 + cbz x0, .L2050 ldrb w3, [x1,56] ldrb w1, [x2,2832] cmp w3, w1 csel x27, x27, x0, ne -.L2048: +.L2050: add x2, x19, :lo12:.LANCHOR0 add x0, x2, 784 add x0, x0, x20, lsl 6 ldr x1, [x0,16] - cbz x1, .L2049 + cbz x1, .L2051 ldrb w3, [x0,56] ldrb w0, [x2,2832] cmp w3, w0 csel x23, x23, x1, ne -.L2049: +.L2051: add x24, x19, :lo12:.LANCHOR0 mov x1, x27 add x24, x24, 784 @@ -12452,15 +12469,15 @@ queue_wait_first_req_completed: bl flash_complete_plane_page_read mov w25, w0 cmn w22, #1 - beq .L2050 + beq .L2052 ldr w0, [x28,4] cmn w0, #1 - beq .L2051 + beq .L2053 ldr x1, [x26,8] ldr w1, [x1,4] cmp w0, w1 - beq .L2051 -.L2050: + beq .L2053 +.L2052: add x4, x19, :lo12:.LANCHOR0 mov x2, x27 add x24, x4, 784 @@ -12476,30 +12493,30 @@ queue_wait_first_req_completed: mov w22, w0 ldr w2, [x26,4] cmn w2, #1 - beq .L2052 + beq .L2054 ldr x3, [x24,8] ldr w4, [x3,4] cmp w2, w4 - beq .L2052 + beq .L2054 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 6, .L2052 + tbz x0, 6, .L2054 adrp x0, .LC159 ldr w1, [x26,8] ldr w3, [x3] add x0, x0, :lo12:.LC159 bl printk -.L2052: +.L2054: add x0, x19, :lo12:.LANCHOR0 add x0, x0, 784 add x0, x0, x21, lsl 6 ldr w1, [x0,36] cmn w1, #1 - beq .L2051 + beq .L2053 ldr x0, [x0,24] ldr w0, [x0,4] cmp w1, w0 - beq .L2051 + beq .L2053 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 @@ -12508,7 +12525,7 @@ queue_wait_first_req_completed: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2051: +.L2053: add x3, x19, :lo12:.LANCHOR0 mov w1, 12 add x3, x3, 784 @@ -12519,16 +12536,16 @@ queue_wait_first_req_completed: orr w0, w0, 8 strb w1, [x21,58] strb w0, [x21,2] - beq .L2053 + beq .L2055 add x3, x3, x20, lsl 6 ldr w0, [x3,36] cmn w0, #1 - beq .L2055 + beq .L2057 ldr x1, [x3,24] ldr w1, [x1,4] cmp w0, w1 - beq .L2055 -.L2053: + beq .L2057 +.L2055: add x4, x19, :lo12:.LANCHOR0 mov x2, x23 add x21, x4, 784 @@ -12543,30 +12560,30 @@ queue_wait_first_req_completed: bl flash_read_page_en ldr w2, [x24,4] cmn w2, #1 - beq .L2057 + beq .L2059 ldr x3, [x21,8] ldr w4, [x3,4] cmp w2, w4 - beq .L2057 + beq .L2059 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 6, .L2057 + tbz x0, 6, .L2059 adrp x0, .LC159 ldr w1, [x24,8] ldr w3, [x3] add x0, x0, :lo12:.LC159 bl printk -.L2057: +.L2059: add x0, x19, :lo12:.LANCHOR0 add x0, x0, 784 add x0, x0, x20, lsl 6 ldr w1, [x0,36] cmn w1, #1 - beq .L2055 + beq .L2057 ldr x0, [x0,24] ldr w0, [x0,4] cmp w1, w0 - beq .L2055 + beq .L2057 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 @@ -12575,7 +12592,7 @@ queue_wait_first_req_completed: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2055: +.L2057: add x19, x19, :lo12:.LANCHOR0 mov w1, 12 add x19, x19, 784 @@ -12585,36 +12602,36 @@ queue_wait_first_req_completed: orr w0, w0, 8 strb w1, [x20,58] strb w0, [x20,2] - b .L2120 -.L2042: + b .L2122 +.L2044: bl nandc_iqr_wait_flash_ready mov w0, w20 mov w1, 64 bl flash_wait_device_ready mov w20, w0 - tbz x20, 6, .L2120 + tbz x20, 6, .L2122 mov w1, 5 add x19, x19, :lo12:.LANCHOR0 ands w1, w20, w1 - beq .L2058 + beq .L2060 add x19, x19, 784 mov w0, 11 add x19, x19, x21, lsl 6 + mov w2, w20 mov w4, 11 strb w0, [x19,58] adrp x0, .LC160 ldrb w1, [x19,1] add x0, x0, :lo12:.LC160 - ldr w2, [x19,52] ldr w3, [x19,40] bl printk mov w0, -1 str w0, [x19,52] - b .L2121 -.L2058: + b .L2123 +.L2060: add x19, x19, x21, lsl 6 - b .L2065 -.L2045: + b .L2067 +.L2047: add x22, x19, :lo12:.LANCHOR0 mov w0, 3 cmp w2, 10 @@ -12623,40 +12640,40 @@ queue_wait_first_req_completed: csel w1, w0, w1, ne ubfx x3, x20, 21, 3 add x0, x22, x21, lsl 6 -.L2060: +.L2062: ldrb w23, [x0] cmp w23, 255 - beq .L2122 + beq .L2124 add x0, x22, x23, lsl 6 ldrb w2, [x0,58] cmp w2, w1 - bne .L2060 + bne .L2062 ldr w2, [x0,40] ubfx x2, x2, 21, 3 cmp w3, w2 - bne .L2060 + bne .L2062 bl nandc_iqr_wait_flash_ready mov w0, w20 mov w1, 64 bl flash_wait_device_ready mov w20, w0 and w0, w0, 64 - tbz x20, 6, .L2068 + tbz x20, 6, .L2070 ands w0, w20, 15 add x22, x22, x21, lsl 6 - beq .L2063 - adrp x0, .LC160 + beq .L2065 + adrp x0, .LC161 ldrb w1, [x22,1] - ldr w2, [x22,52] - add x0, x0, :lo12:.LC160 ldr w3, [x22,40] + add x0, x0, :lo12:.LC161 + mov w2, w20 mov w4, 11 bl printk mov w0, 11 strb w0, [x22,58] mov w0, -1 str w0, [x22,52] -.L2062: +.L2064: add x19, x19, :lo12:.LANCHOR0 add x19, x19, 784 add x21, x19, x21, lsl 6 @@ -12665,52 +12682,52 @@ queue_wait_first_req_completed: strb w0, [x23,58] ldr w0, [x21,52] str w0, [x23,52] -.L2121: +.L2123: mov w1, w20 - b .L2038 -.L2063: + b .L2040 +.L2065: mov w1, 12 str w0, [x22,52] strb w1, [x22,58] -.L2068: +.L2070: mov w20, w0 - b .L2062 -.L2122: + b .L2064 +.L2124: mov w1, -1 - b .L2038 -.L2043: + b .L2040 +.L2045: mov w1, 32 mov w0, w20 bl flash_wait_device_ready - tbz x0, 5, .L2120 + tbz x0, 5, .L2122 ands w1, w0, 15 add x19, x19, :lo12:.LANCHOR0 add x19, x19, x21, lsl 6 - beq .L2065 + beq .L2067 mov w1, 11 strb w1, [x19,842] mov w1, -1 str w1, [x19,836] mov w1, w0 - b .L2038 -.L2065: + b .L2040 +.L2067: mov w0, 12 str w1, [x19,836] strb w0, [x19,842] - b .L2038 -.L2044: + b .L2040 +.L2046: mov w1, 64 mov w0, w20 bl flash_wait_device_ready - tbz x0, 6, .L2120 + tbz x0, 6, .L2122 add x19, x19, :lo12:.LANCHOR0 add x19, x19, x21, lsl 6 str w0, [x19,836] mov w0, 6 strb w0, [x19,842] -.L2120: +.L2122: mov w1, 0 -.L2038: +.L2040: mov w0, w1 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -12728,15 +12745,15 @@ sblk_wait_write_queue_completed: add x29, sp, 0 str x19, [sp,16] adrp x19, .LANCHOR0 -.L2124: +.L2126: add x0, x19, :lo12:.LANCHOR0 ldrb w0, [x0,2835] cmp w0, 255 - beq .L2126 + beq .L2128 bl queue_wait_first_req_completed bl queue_remove_completed_req - b .L2124 -.L2126: + b .L2126 +.L2128: ldr x19, [sp,16] ldp x29, x30, [sp], 32 ret @@ -12810,28 +12827,28 @@ sblk_read_page: mov w20, w21 add x27, x22, 784 add x23, x23, 280 -.L2130: - cbz w20, .L2153 +.L2132: + cbz w20, .L2155 ldrb w28, [x19] ldr w26, [x19,40] -.L2131: +.L2133: mov w0, w26 mov w1, 0 bl queue_lun_state - cbz w0, .L2154 + cbz w0, .L2156 bl queue_wait_first_req_completed bl queue_remove_completed_req - b .L2131 -.L2154: + b .L2133 +.L2156: cmp w20, 1 - beq .L2137 + beq .L2139 adrp x0, .LANCHOR4+1265 ldrb w0, [x0,#:lo12:.LANCHOR4+1265] - cbz w0, .L2137 + cbz w0, .L2139 ldrb w0, [x19] ubfx x3, x26, 21, 3 cmp w0, 255 - bne .L2136 + bne .L2138 adrp x0, .LC0 mov x1, x23 mov w2, 624 @@ -12840,18 +12857,18 @@ sblk_read_page: bl printk bl dump_stack ldr x3, [x29,120] -.L2136: +.L2138: ldrb w24, [x19] lsl x24, x24, 6 add x2, x27, x24 ldr w1, [x2,40] ubfx x0, x1, 21, 3 cmp w3, w0 - bne .L2137 + bne .L2139 ldrh w0, [x22,3350] add w26, w0, w26 cmp w1, w26 - bne .L2137 + bne .L2139 ldr w0, [x19,40] add x26, x22, 2835 str x2, [x29,104] @@ -12877,36 +12894,36 @@ sblk_read_page: strb wzr, [x2,59] strb w3, [x27,x24] bl buf_add_tail - b .L2135 -.L2137: + b .L2137 +.L2139: mov x0, x19 bl queue_read_cmd -.L2135: +.L2137: subs w20, w20, #1 - beq .L2153 + beq .L2155 sbfiz x19, x28, 6, 32 add x19, x27, x19 - b .L2130 -.L2153: + b .L2132 +.L2155: adrp x19, .LANCHOR0 add x19, x19, :lo12:.LANCHOR0 add x19, x19, 784 -.L2141: - cbz w21, .L2155 +.L2143: + cbz w21, .L2157 ldrb w0, [x25,58] cmp w0, 12 - bne .L2142 + bne .L2144 ldrb w0, [x25] sub w21, w21, #1 cmp w0, 255 - beq .L2142 + beq .L2144 sbfiz x25, x0, 6, 32 add x25, x19, x25 -.L2142: +.L2144: bl queue_wait_first_req_completed bl queue_remove_completed_req - b .L2141 -.L2155: + b .L2143 +.L2157: mov w0, w21 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -12941,24 +12958,24 @@ flash_prog_page: add x22, x19, x22, lsl 8 and w24, w1, 2097151 ubfx x27, x23, 24, 2 - tbz x0, 4, .L2157 - adrp x0, .LC161 + tbz x0, 4, .L2159 + adrp x0, .LC162 mov w2, w27 - add x0, x0, :lo12:.LC161 + add x0, x0, :lo12:.LC162 bl printk -.L2157: +.L2159: bl nandc_wait_flash_ready mov w0, w20 bl hynix_reconfig_rr_para mov w0, w20 bl nandc_cs mov w0, w20 - cbnz w27, .L2158 + cbnz w27, .L2160 bl zftl_flash_enter_slc_mode - b .L2159 -.L2158: + b .L2161 +.L2160: bl zftl_flash_exit_slc_mode -.L2159: +.L2161: ubfiz x4, x20, 8, 8 mov w0, 128 add x19, x19, x4 @@ -12990,16 +13007,16 @@ flash_prog_page: mov w0, w20 and w19, w21, 4 bl nandc_de_cs - tbz x21, 2, .L2160 + tbz x21, 2, .L2162 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 12, .L2160 - adrp x0, .LC162 + tbz x0, 12, .L2162 + adrp x0, .LC163 mov w1, w23 - add x0, x0, :lo12:.LC162 + add x0, x0, :lo12:.LC163 mov w2, w19 bl printk -.L2160: +.L2162: mov w0, w19 ldr x27, [sp,80] ldp x19, x20, [sp,16] @@ -13014,77 +13031,69 @@ flash_prog_page: .type flash_test_blk, %function flash_test_blk: stp x29, x30, [sp, -48]! + mov w2, 32 add x29, sp, 0 stp x19, x20, [sp,16] - stp x21, x22, [sp,32] - uxtb w22, w0 - uxth w20, w1 adrp x19, .LANCHOR4 - cbnz w22, .L2171 - add x0, x19, :lo12:.LANCHOR4 - ldrb w1, [x0,1266] - mov w0, w22 - cmp w1, w20 - bhi .L2172 -.L2171: + uxth w20, w1 add x19, x19, :lo12:.LANCHOR4 mov w1, 165 - mov w2, 32 - ldr x0, [x19,1256] + stp x21, x22, [sp,32] + uxtb w22, w0 + ldr x0, [x19,1192] bl ftl_memset - ldr x0, [x19,1248] + ldr x0, [x19,1208] mov w1, 90 mov w2, 8 bl ftl_memset adrp x0, .LANCHOR0+2 - ldrh w21, [x0,#:lo12:.LANCHOR0+2] + ldrh w0, [x0,#:lo12:.LANCHOR0+2] + mul w20, w20, w0 mov w0, w22 - mul w21, w20, w21 - mov w1, w21 + mov w1, w20 bl flash_erase_block cmn w0, #1 - beq .L2177 - adrp x20, .LANCHOR2 - ldr x2, [x19,1248] - add x20, x20, :lo12:.LANCHOR2 - ldr x3, [x19,1256] + bne .L2173 +.L2175: + mov w19, -1 + b .L2174 +.L2173: + adrp x21, .LANCHOR2 + ldr x2, [x19,1192] + add x21, x21, :lo12:.LANCHOR2 + ldr x3, [x19,1208] mov w0, w22 - mov w1, w21 - add x20, x20, 376 - ldrb w4, [x20,9] + mov w1, w20 + add x21, x21, 376 + ldrb w4, [x21,9] bl flash_prog_page cmn w0, #1 - beq .L2177 - ldrb w4, [x20,9] + beq .L2175 + ldr x2, [x19,1192] mov w0, w22 - ldr x2, [x19,1248] - mov w1, w21 - ldr x3, [x19,1256] + ldr x3, [x19,1208] + mov w1, w20 + ldrb w4, [x21,9] bl flash_read_page cmn w0, #1 - mov w20, w0 - beq .L2177 - ldr x0, [x19,1248] - ldr w1, [x0] - mov w0, 23130 - bfi w0, w0, 16, 16 - cmp w1, w0 - bne .L2177 - ldr x0, [x19,1256] + beq .L2175 + ldr x0, [x19,1192] ldr w1, [x0] mov w0, 42405 bfi w0, w0, 16, 16 cmp w1, w0 - csinv w20, w20, wzr, eq - b .L2174 -.L2177: - mov w20, -1 + bne .L2175 + ldr x0, [x19,1208] + ldr w1, [x0] + mov w0, 23130 + bfi w0, w0, 16, 16 + cmp w1, w0 + csetm w19, ne .L2174: + mov w1, w20 mov w0, w22 - mov w1, w21 bl flash_erase_block - mov w0, w20 -.L2172: + mov w0, w19 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x29, x30, [sp], 48 @@ -13146,28 +13155,28 @@ flash_start_tlc_page_prog: mov x23, x6 cmp w0, w26 mov x19, x4 - bhi .L2187 + bhi .L2184 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 648 + mov w2, 651 add x1, x1, 296 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2187: +.L2184: add x4, x19, :lo12:.LANCHOR0 add x26, x4, x26, sxtw ldrb w26, [x26,736] mov w0, w26 ldr x19, [x4,536] bl nandc_cs - cbz w25, .L2188 + cbz w25, .L2185 sxtw x1, w26 add x1, x1, 8 add x1, x19, x1, lsl 8 str w25, [x1,8] -.L2188: +.L2185: ubfiz x7, x26, 8, 8 mov w0, 128 add x19, x19, x7 @@ -13273,16 +13282,16 @@ sblk_tlc_prog_one_page: mov x20, x0 ldr x0, [x0] ldr w21, [x0,40] -.L2194: +.L2191: mov w0, w21 mov w1, 1 bl queue_lun_state mov w19, w0 - cbz w0, .L2196 + cbz w0, .L2193 bl queue_wait_first_req_completed bl queue_remove_completed_req - b .L2194 -.L2196: + b .L2191 +.L2193: mov x0, x20 bl queue_tlc_prog_cmd ldr x21, [sp,32] @@ -13305,17 +13314,17 @@ sblk_xlc_prog_pages: ldr x0, [x0] mov w24, w2 ldr w20, [x0,40] -.L2198: +.L2195: mov w0, w20 mov w1, 1 bl queue_lun_state - cbz w0, .L2202 + cbz w0, .L2199 bl queue_wait_first_req_completed bl queue_remove_completed_req - b .L2198 -.L2202: + b .L2195 +.L2199: cmp w24, 2 - bne .L2200 + bne .L2197 ldr x6, [x19] mov w1, 1 ldr x0, [x22] @@ -13399,11 +13408,11 @@ sblk_xlc_prog_pages: add x0, x0, :lo12:.LANCHOR0 add x0, x0, 2835 bl buf_add_tail - b .L2201 -.L2200: + b .L2198 +.L2197: mov x0, x19 bl queue_tlc_prog_cmd -.L2201: +.L2198: mov w0, 0 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -13432,50 +13441,50 @@ flash_start_page_prog: and w20, w1, 2097151 ubfx x23, x1, 24, 2 cmp w0, w24 - bhi .L2204 + bhi .L2201 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 699 + mov w2, 702 add x1, x1, 328 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2204: +.L2201: add x28, x22, :lo12:.LANCHOR0 add x0, x28, x24, sxtw ldrb w21, [x0,736] ldr x19, [x28,536] bl nandc_rdy_status - cbnz w0, .L2205 + cbnz w0, .L2202 ldrb w0, [x28,633] cmp w0, 1 - bne .L2206 + bne .L2203 bl nandc_wait_flash_ready - b .L2205 -.L2206: + b .L2202 +.L2203: mov w0, w24 mov w1, w20 mov w2, 64 bl flash_wait_device_ready_raw -.L2205: +.L2202: mov w0, w21 bl hynix_reconfig_rr_para mov w0, w21 bl nandc_cs - cbnz w23, .L2207 + cbnz w23, .L2204 mov w0, w20 bl slc_phy_page_address_calc mov w20, w0 ldrb w0, [x22,#:lo12:.LANCHOR0] - cbz w0, .L2208 + cbz w0, .L2205 mov w0, w21 bl zftl_flash_enter_slc_mode - b .L2208 -.L2207: + b .L2205 +.L2204: mov w0, w21 bl zftl_flash_exit_slc_mode -.L2208: +.L2205: ubfiz x4, x21, 8, 8 mov w0, 128 add x19, x19, x4 @@ -13525,28 +13534,28 @@ queue_prog_cmd: add x1, x0, :lo12:.LANCHOR0 ldrb w2, [x1,2835] cmp w2, 255 - beq .L2213 + beq .L2210 ubfx x4, x4, 21, 3 add x1, x1, 784 -.L2215: +.L2212: add x3, x1, x2, lsl 6 ldr w5, [x3,40] ubfx x5, x5, 21, 3 cmp w4, w5 - bne .L2214 + bne .L2211 ldrb w5, [x3,58] add x3, x3, 48 cmp w5, 6 - bne .L2214 + bne .L2211 mov w1, 3 strb w1, [x3,10] - b .L2213 -.L2214: + b .L2210 +.L2211: lsl x2, x2, 6 ldrb w2, [x1,x2] cmp w2, 255 - bne .L2215 -.L2213: + bne .L2212 +.L2210: mov w1, 3 strb w1, [x19,58] mov w1, 1 @@ -13575,49 +13584,49 @@ sblk_prog_page: mov x19, x0 uxtb w20, w1 ldrh w0, [x0,50] - cbz w0, .L2221 + cbz w0, .L2218 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L2221 - adrp x0, .LC163 + tbz x0, 8, .L2218 + adrp x0, .LC164 ldr w1, [x19,40] - add x0, x0, :lo12:.LC163 + add x0, x0, :lo12:.LC164 mov w2, w20 bl printk -.L2221: +.L2218: adrp x24, .LANCHOR0 adrp x25, .LC0 add x23, x24, :lo12:.LANCHOR0 mov w21, 0 add x27, x23, 784 add x25, x25, :lo12:.LC0 -.L2222: - cbz w20, .L2252 +.L2219: + cbz w20, .L2249 ldrb w26, [x19] ldr w22, [x19,40] -.L2223: +.L2220: mov w0, w22 mov w1, 1 bl queue_lun_state - cbz w0, .L2253 + cbz w0, .L2250 bl queue_wait_first_req_completed bl queue_remove_completed_req - b .L2223 -.L2253: + b .L2220 +.L2250: cmp w20, 1 - beq .L2225 + beq .L2222 add x0, x24, :lo12:.LANCHOR0 ldrb w0, [x0,781] - cbnz w0, .L2226 -.L2225: + cbnz w0, .L2223 +.L2222: mov x0, x19 bl queue_prog_cmd - b .L2227 -.L2226: + b .L2224 +.L2223: ldrb w0, [x19] ubfx x28, x22, 21, 3 cmp w0, 255 - bne .L2228 + bne .L2225 adrp x1, .LANCHOR3 mov w2, 546 add x1, x1, :lo12:.LANCHOR3 @@ -13625,13 +13634,13 @@ sblk_prog_page: add x1, x1, 352 bl printk bl dump_stack -.L2228: +.L2225: ldrb w0, [x19] add x0, x27, x0, lsl 6 ldr w4, [x0,40] ubfx x0, x4, 21, 3 cmp w28, w0 - bne .L2229 + bne .L2226 ldrh w3, [x23,3340] mov w1, 21 ldrb w6, [x23,3338] @@ -13652,13 +13661,13 @@ sblk_prog_page: and w0, w1, w5 cmp w0, w3 uxth w2, w2 - beq .L2229 + beq .L2226 and w22, w2, w22 and w2, w2, w4 cmp w22, w2 - bne .L2229 + bne .L2226 cmp w21, w6 - beq .L2229 + beq .L2226 ldr w1, [x19,40] mov w0, 17 ldr x2, [x19,8] @@ -13673,20 +13682,20 @@ sblk_prog_page: strb w0, [x19] add x0, x23, 2835 bl buf_add_tail - b .L2227 -.L2229: + b .L2224 +.L2226: mov x0, x19 mov w21, 0 bl queue_prog_cmd -.L2227: +.L2224: subs w20, w20, #1 - beq .L2252 + beq .L2249 add x19, x24, :lo12:.LANCHOR0 sbfiz x26, x26, 6, 32 add x19, x19, 784 add x19, x19, x26 - b .L2222 -.L2252: + b .L2219 +.L2249: mov w0, 0 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -13708,18 +13717,18 @@ ftl_flush: mov x19, x2 adrp x20, .LANCHOR4 ldrb w1, [x0,2857] - cbz w1, .L2255 + cbz w1, .L2252 add x2, x20, :lo12:.LANCHOR4 add x0, x0, 784 - ldrb w2, [x2,1267] + ldrb w2, [x2,1266] add x0, x0, x2, lsl 6 bl sblk_prog_page -.L2255: +.L2252: add x2, x19, :lo12:.LANCHOR0 add x20, x20, :lo12:.LANCHOR4 mov w0, -1 strb wzr, [x2,2857] - strb w0, [x20,1267] + strb w0, [x20,1266] bl sblk_wait_write_queue_completed bl ftl_write_completed mov w0, -1 @@ -13736,15 +13745,15 @@ zftl_cache_flush: stp x29, x30, [sp, -16]! add x29, sp, 0 ldrb w0, [x0,#:lo12:.LANCHOR0+2857] - cbz w0, .L2259 + cbz w0, .L2256 bl timer_get_time adrp x1, .LANCHOR4+1268 ldr w1, [x1,#:lo12:.LANCHOR4+1268] add w1, w1, 100 cmp w0, w1 - bls .L2259 + bls .L2256 bl ftl_flush -.L2259: +.L2256: ldp x29, x30, [sp], 16 ret .size zftl_cache_flush, .-zftl_cache_flush @@ -13771,50 +13780,50 @@ flash_prog_page_en: cmp w0, w21 ubfx x28, x20, 24, 2 mov x19, x6 - bhi .L2264 + bhi .L2261 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 473 + mov w2, 476 add x1, x1, 368 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2264: +.L2261: add x0, x19, :lo12:.LANCHOR0 mov w26, w20 add x1, x0, x21, sxtw ldrb w27, [x1,736] - cbnz w28, .L2265 + cbnz w28, .L2262 adrp x1, .LANCHOR0 ldrb w1, [x1,#:lo12:.LANCHOR0] - cbz w1, .L2266 + cbz w1, .L2263 ldrb w0, [x0,1] - cbz w0, .L2265 -.L2266: + cbz w0, .L2262 +.L2263: add x6, x19, :lo12:.LANCHOR0 ldrh w26, [x6,2] ldrb w1, [x6,1] udiv w2, w20, w26 mul w26, w2, w26 sub w0, w20, w26 - cbz w1, .L2267 + cbz w1, .L2264 add w26, w26, w0, lsl 1 - b .L2265 -.L2267: + b .L2262 +.L2264: add x6, x6, 4 ldrh w0, [x6,w0,uxtw 1] add w26, w0, w26 -.L2265: +.L2262: adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 4, .L2268 - adrp x0, .LC164 + tbz x0, 4, .L2265 + adrp x0, .LC165 mov w1, w27 - add x0, x0, :lo12:.LC164 + add x0, x0, :lo12:.LC165 mov w2, w20 bl printk -.L2268: +.L2265: mov w1, w26 mov w0, w27 mov x2, x23 @@ -13822,7 +13831,7 @@ flash_prog_page_en: mov w4, w24 bl flash_prog_page mov w26, w0 - cbz w25, .L2269 + cbz w25, .L2266 adrp x19, .LANCHOR4 mov w0, w21 add x25, x19, :lo12:.LANCHOR4 @@ -13832,53 +13841,53 @@ flash_prog_page_en: ldr x3, [x25,1256] bl flash_read_page_en cmp w0, 512 - beq .L2270 + beq .L2267 cmn w0, #1 - beq .L2270 + beq .L2267 ldr x0, [x25,1248] ldr w1, [x23] ldr w0, [x0] cmp w1, w0 - bne .L2270 + bne .L2267 ldr x0, [x25,1256] ldr w1, [x22] ldr w0, [x0] cmp w1, w0 - beq .L2269 -.L2270: + beq .L2266 +.L2267: add x19, x19, :lo12:.LANCHOR4 mov w2, 4 - adrp x0, .LC165 + adrp x0, .LC166 mov w3, w2 - add x0, x0, :lo12:.LC165 + add x0, x0, :lo12:.LC166 ldr x1, [x19,1256] bl rknand_print_hex mov w2, 4 - adrp x0, .LC166 + adrp x0, .LC167 ldr x1, [x19,1248] - add x0, x0, :lo12:.LC166 + add x0, x0, :lo12:.LC167 mov w3, w2 bl rknand_print_hex - b .L2271 -.L2269: + b .L2268 +.L2266: cmn w26, #1 mov w0, w26 - bne .L2272 -.L2271: - adrp x0, .LC167 + bne .L2269 +.L2268: + adrp x0, .LC168 mov w1, w20 - add x0, x0, :lo12:.LC167 + add x0, x0, :lo12:.LC168 bl printk adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 499 + mov w2, 502 add x1, x1, 368 add x0, x0, :lo12:.LC0 bl printk bl dump_stack mov w0, -1 -.L2272: +.L2269: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -13909,20 +13918,20 @@ ftl_prog_page: bl flash_prog_page_en cmn w0, #1 mov w19, w0 - bne .L2286 + bne .L2283 adrp x2, .LANCHOR3 adrp x0, .LC0 add x1, x2, :lo12:.LANCHOR3 add x0, x0, :lo12:.LC0 add x1, x1, 392 - mov w2, 2151 + mov w2, 2150 bl printk bl dump_stack - adrp x0, .LC167 + adrp x0, .LC168 mov w1, w20 - add x0, x0, :lo12:.LC167 + add x0, x0, :lo12:.LC168 bl printk -.L2286: +.L2283: mov w0, w19 ldp x19, x20, [sp,16] ldp x29, x30, [sp], 64 @@ -13947,15 +13956,15 @@ ftl_info_flush: adrp x23, .LANCHOR3 add x19, x22, :lo12:.LANCHOR4 ldrb w2, [x0,2832] - adrp x24, .LC168 + adrp x24, .LC169 add x23, x23, :lo12:.LANCHOR3 add x0, x19, 1280 lsl w2, w2, 1 mov w25, 0 - add x24, x24, :lo12:.LC168 + add x24, x24, :lo12:.LC169 add x23, x23, 408 bl ftl_memset -.L2288: +.L2285: add x0, x21, :lo12:.LANCHOR0 ldrb w27, [x19,1536] ldrh w20, [x19,1538] @@ -13970,29 +13979,29 @@ ftl_info_flush: str w0, [x19,1284] adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 12, .L2289 + tbz x0, 12, .L2286 ldr w3, [x3,4] mov x0, x24 mov w1, w27 mov w2, w20 bl printk -.L2289: +.L2286: add x1, x21, :lo12:.LANCHOR0 ldrh w0, [x19,1538] ldrh w1, [x1,3300] cmp w1, w0 - bhi .L2290 + bhi .L2287 adrp x20, .LC0 add x20, x20, :lo12:.LC0 -.L2295: +.L2292: ldrb w1, [x19,1537] add w1, w1, 1 uxtb w1, w1 strb w1, [x19,1537] cmp w1, 7 - bls .L2291 + bls .L2288 mov x1, 0 -.L2294: +.L2291: add x0, x21, :lo12:.LANCHOR0 uxth w25, w1 ldr x2, [x0,728] @@ -14002,24 +14011,24 @@ ftl_info_flush: add w0, w2, 127 uxtb w0, w0 cmp w0, 125 - bhi .L2292 + bhi .L2289 mov x1, x23 mov w2, 742 mov x0, x20 bl printk bl dump_stack - b .L2293 -.L2292: + b .L2290 +.L2289: cmp w2, 255 - bne .L2293 + bne .L2290 add x1, x1, 1 cmp x1, 8 - bne .L2294 + bne .L2291 mov w25, w1 -.L2293: +.L2290: strb w25, [x19,1537] mov w25, 1 -.L2291: +.L2288: add x27, x21, :lo12:.LANCHOR0 ldrb w1, [x19,1537] ldr x0, [x27,728] @@ -14027,7 +14036,7 @@ ftl_info_flush: ldrb w2, [x1,40] strb w2, [x19,1536] cmp w2, 255 - beq .L2295 + beq .L2292 ldrh w20, [x27,3350] mov w0, 0 mul w20, w2, w20 @@ -14042,13 +14051,13 @@ ftl_info_flush: bl ftl_prog_page mov w0, 1 strh w0, [x19,1538] - b .L2296 -.L2290: + b .L2293 +.L2287: madd w20, w27, w28, w20 - cbnz w0, .L2296 + cbnz w0, .L2293 mov w1, w20 bl flash_erase_block -.L2296: +.L2293: add x4, x21, :lo12:.LANCHOR0 mov w1, w20 mov w0, 0 @@ -14061,21 +14070,21 @@ ftl_info_flush: adrp x0, .LANCHOR5 add w1, w1, 1 strh w1, [x19,1538] - beq .L2297 + beq .L2294 add x1, x0, :lo12:.LANCHOR5 ldrb w1, [x1,576] - cbz w1, .L2298 -.L2297: + cbz w1, .L2295 +.L2294: add x0, x0, :lo12:.LANCHOR5 strb wzr, [x0,576] - b .L2288 -.L2298: - cbnz w25, .L2299 -.L2307: + b .L2285 +.L2295: + cbnz w25, .L2296 +.L2304: add x22, x22, :lo12:.LANCHOR4 ldrb w0, [x22,1536] cmp w0, 255 - bne .L2301 + bne .L2298 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 @@ -14084,8 +14093,8 @@ ftl_info_flush: add x0, x0, :lo12:.LC0 bl printk bl dump_stack - b .L2301 -.L2299: + b .L2298 +.L2296: ldrb w19, [x19,1537] adrp x20, .LANCHOR3 adrp x23, .LC0 @@ -14093,9 +14102,9 @@ ftl_info_flush: add w19, w19, 1 add x23, x23, :lo12:.LC0 add x20, x20, 408 -.L2302: +.L2299: cmp w19, 7 - bhi .L2307 + bhi .L2304 add x0, x21, :lo12:.LANCHOR0 ldr x1, [x0,728] add w0, w19, 8 @@ -14104,27 +14113,27 @@ ftl_info_flush: add w0, w24, 127 uxtb w0, w0 cmp w0, 125 - bhi .L2303 + bhi .L2300 mov x1, x20 mov w2, 771 mov x0, x23 bl printk bl dump_stack - b .L2304 -.L2303: + b .L2301 +.L2300: cmp w24, 255 - beq .L2305 -.L2304: + beq .L2302 +.L2301: add x0, x21, :lo12:.LANCHOR0 ldrh w1, [x0,3350] mov w0, 0 mul w1, w24, w1 bl flash_erase_block -.L2305: +.L2302: add w19, w19, 1 uxth w19, w19 - b .L2302 -.L2301: + b .L2299 +.L2298: mov w0, 0 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -14163,10 +14172,10 @@ ftl_info_blk_init: str x1, [x23,2864] mov w1, 0 str x24, [x23,584] - adrp x26, .LC169 + adrp x26, .LC170 adrp x27, .LANCHOR2 bl ftl_memset - add x26, x26, :lo12:.LC169 + add x26, x26, :lo12:.LC170 add x0, x20, 640 mov w1, 0 mov w2, 16384 @@ -14178,7 +14187,7 @@ ftl_info_blk_init: strh wzr, [x22,1538] ldrb w0, [x0,40] strb w0, [x22,1536] -.L2325: +.L2322: add x5, x19, :lo12:.LANCHOR0 add w0, w20, 8 sxth w25, w20 @@ -14186,7 +14195,7 @@ ftl_info_blk_init: add x0, x1, x0, sxtw ldrb w1, [x0,32] cmp w1, 255 - beq .L2321 + beq .L2318 ldrh w22, [x5,3350] mov w0, 0 ldrb w4, [x5,2832] @@ -14199,7 +14208,7 @@ ftl_info_blk_init: cmn w0, #1 mov w28, w0 ldr x5, [x29,104] - bne .L2322 + bne .L2319 ldrb w4, [x5,2832] mov w0, 0 add w1, w22, 1 @@ -14207,9 +14216,9 @@ ftl_info_blk_init: mov x3, x23 bl ftl_read_page mov w28, w0 -.L2322: +.L2319: ldr w0, [x27,#:lo12:.LANCHOR2] - tbz x0, 12, .L2323 + tbz x0, 12, .L2320 add x0, x19, :lo12:.LANCHOR0 mov w1, w20 mov w2, w28 @@ -14218,39 +14227,39 @@ ftl_info_blk_init: mov x0, x26 ldr w4, [x4] bl printk -.L2323: +.L2320: cmn w28, #1 - beq .L2321 + beq .L2318 add x0, x19, :lo12:.LANCHOR0 ldr x0, [x0,2864] ldr w1, [x0] mov w0, 21574 movk w0, 0x494c, lsl 16 cmp w1, w0 - beq .L2333 -.L2321: + beq .L2330 +.L2318: sub w20, w20, #1 cmn w20, #1 - bne .L2325 + bne .L2322 mov w25, 0 - b .L2324 -.L2333: + b .L2321 +.L2330: mov w20, w25 -.L2324: +.L2321: adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 12, .L2326 + tbz x0, 12, .L2323 add x0, x19, :lo12:.LANCHOR0 mov w1, w20 mov w2, 4800 ldr x3, [x0,2864] - adrp x0, .LC170 - add x0, x0, :lo12:.LC170 + adrp x0, .LC171 + add x0, x0, :lo12:.LC171 ldr w3, [x3] bl printk -.L2326: +.L2323: cmn w20, #1 - bne .L2327 + bne .L2324 add x0, x21, :lo12:.LANCHOR4 mov w1, 0 add x19, x19, :lo12:.LANCHOR0 @@ -14261,13 +14270,13 @@ ftl_info_blk_init: mov w0, 21574 movk w0, 0x494c, lsl 16 str w0, [x1] - mov w0, 9 + mov w0, 17 movk w0, 0x6, lsl 16 ldr x1, [x19,2864] str w0, [x1,12] mov w0, w20 - b .L2328 -.L2327: + b .L2325 +.L2324: add x26, x19, :lo12:.LANCHOR0 add x23, x21, :lo12:.LANCHOR4 add w0, w25, 8 @@ -14289,8 +14298,8 @@ ftl_info_blk_init: ldrb w0, [x23,1536] ldrh w23, [x26,3350] mul w23, w0, w23 -.L2329: - tbnz w22, #31, .L2332 +.L2326: + tbnz w22, #31, .L2329 add x26, x19, :lo12:.LANCHOR0 mov w0, 0 add w1, w22, w23 @@ -14299,14 +14308,14 @@ ftl_info_blk_init: ldrb w4, [x26,2832] bl ftl_read_page cmn w0, #1 - beq .L2330 + beq .L2327 ldr x0, [x26,2864] ldr w1, [x0] mov w0, 21574 movk w0, 0x494c, lsl 16 cmp w1, w0 - bne .L2330 -.L2332: + bne .L2327 +.L2329: add x21, x21, :lo12:.LANCHOR4 add x19, x19, :lo12:.LANCHOR0 strh w20, [x21,1538] @@ -14320,12 +14329,12 @@ ftl_info_blk_init: mov w0, 0 bl ftl_info_flush mov w0, 0 - b .L2328 -.L2330: + b .L2325 +.L2327: sub w22, w22, #1 sxth w22, w22 - b .L2329 -.L2328: + b .L2326 +.L2325: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -14352,17 +14361,17 @@ ftl_ext_info_flush: ldr x1, [x1,608] ldr w3, [x1,520] cmp w0, w3 - bls .L2351 + bls .L2348 ldr w2, [x1,12] sub w2, w2, w3 add w2, w2, w0 str w2, [x1,12] - b .L2364 -.L2351: - bcs .L2352 -.L2364: + b .L2361 +.L2348: + bcs .L2349 +.L2361: str w0, [x1,520] -.L2352: +.L2349: adrp x23, .LANCHOR3 adrp x19, .LANCHOR4 add x23, x23, :lo12:.LANCHOR3 @@ -14371,11 +14380,11 @@ ftl_ext_info_flush: add x23, x23, 424 add x19, x19, 1280 bl ftl_total_vpn_update -.L2353: +.L2350: adrp x24, .LANCHOR5 add x24, x24, :lo12:.LANCHOR5 add x25, x24, 640 -.L2356: +.L2353: add x2, x22, :lo12:.LANCHOR0 ldr x0, [x2,2864] ldr w1, [x0,56] @@ -14384,22 +14393,22 @@ ftl_ext_info_flush: ldrh w1, [x0,140] ldrh w0, [x2,3300] cmp w1, w0 - bcc .L2354 + bcc .L2351 bl ftl_ext_alloc_new_blk -.L2354: +.L2351: add x0, x22, :lo12:.LANCHOR0 ldr x0, [x0,2864] ldrh w1, [x0,130] mov w0, 65535 cmp w1, w0 - bne .L2355 + bne .L2352 adrp x0, .LC0 mov x1, x23 - mov w2, 1747 + mov w2, 1746 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2355: +.L2352: add x21, x22, :lo12:.LANCHOR0 mov w0, 21 mov w1, 1 @@ -14436,17 +14445,17 @@ ftl_ext_info_flush: uxth w1, w1 strh w1, [x2,140] cmp w1, 1 - beq .L2356 + beq .L2353 cmn w0, #1 - beq .L2357 + beq .L2354 ldrb w0, [x24,578] - cbz w0, .L2358 -.L2357: + cbz w0, .L2355 +.L2354: adrp x0, .LANCHOR5 add x0, x0, :lo12:.LANCHOR5 strb wzr, [x0,578] - b .L2353 -.L2358: + b .L2350 +.L2355: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -14493,26 +14502,26 @@ ftl_ext_info_init: adrp x0, .LANCHOR2 mov w23, w24 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 12, .L2366 + tbz x0, 12, .L2363 ldr x5, [x26,2864] adrp x1, .LANCHOR3 - adrp x0, .LC171 + adrp x0, .LC172 add x1, x1, :lo12:.LANCHOR3 - add x0, x0, :lo12:.LC171 + add x0, x0, :lo12:.LC172 add x1, x1, 448 ldrh w5, [x5,130] - mov w2, 1791 + mov w2, 1790 mov w3, w24 uxth w4, w27 bl printk -.L2366: +.L2363: add x20, x20, :lo12:.LANCHOR5 add x21, x21, :lo12:.LANCHOR4 mov w26, w24 add x20, x20, 640 add x21, x21, 1280 -.L2367: - tbnz w26, #31, .L2372 +.L2364: + tbnz w26, #31, .L2369 add x27, x19, :lo12:.LANCHOR0 mov w0, w25 mov x2, x20 @@ -14522,31 +14531,31 @@ ftl_ext_info_init: madd w1, w22, w1, w26 bl flash_read_page_en cmp w0, 512 - beq .L2368 + beq .L2365 cmn w0, #1 - beq .L2368 + beq .L2365 ldr x0, [x27,608] ldr w1, [x0] mov w0, 20038 movk w0, 0x4549, lsl 16 cmp w1, w0 - bne .L2368 -.L2372: + bne .L2365 +.L2369: bl zftl_sblk_list_init add x0, x19, :lo12:.LANCHOR0 ldr x0, [x0,2864] ldrh w1, [x0,140] cmp w1, w24 - bgt .L2370 + bgt .L2367 add w23, w23, 1 strh w23, [x0,140] bl ftl_ext_info_flush - b .L2370 -.L2368: + b .L2367 +.L2365: sub w26, w26, #1 sxth w26, w26 - b .L2367 -.L2370: + b .L2364 +.L2367: add x19, x19, :lo12:.LANCHOR0 ldr x20, [x19,608] bl timer_get_time @@ -14607,13 +14616,13 @@ ftl_write_last_log_page: ldrh w24, [x0,12] cmp w1, 1 ldr x22, [x19,3872] - bne .L2384 + bne .L2381 mov x20, x0 bl ftl_get_new_free_page cmn w0, #1 mov w23, w0 mov w21, 0 - beq .L2384 + beq .L2381 ldrh w0, [x20] add x22, x22, x24, uxth 2 bl ftl_vpn_decrement @@ -14638,7 +14647,7 @@ ftl_write_last_log_page: str w21, [x2,8] str w21, [x2,12] bl ftl_prog_ppa_page -.L2384: +.L2381: mov w0, w21 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -14661,34 +14670,34 @@ ftl_open_sblk_recovery: stp x21, x22, [sp,32] stp x25, x26, [sp,64] mov x27, x1 - tbz x0, 12, .L2389 - adrp x0, .LC172 - ldrh w1, [x19,2] - add x0, x0, :lo12:.LC172 - bl printk -.L2389: - ldr w0, [x24,#:lo12:.LANCHOR2] - tbz x0, 12, .L2390 + tbz x0, 12, .L2386 adrp x0, .LC173 - ldrb w1, [x19,5] + ldrh w1, [x19,2] add x0, x0, :lo12:.LC173 bl printk -.L2390: +.L2386: ldr w0, [x24,#:lo12:.LANCHOR2] - tbz x0, 12, .L2391 + tbz x0, 12, .L2387 adrp x0, .LC174 - ldrh w1, [x19] + ldrb w1, [x19,5] add x0, x0, :lo12:.LC174 bl printk -.L2391: +.L2387: ldr w0, [x24,#:lo12:.LANCHOR2] - tbz x0, 12, .L2392 + tbz x0, 12, .L2388 adrp x0, .LC175 - ldrh w1, [x19,16] - ldrh w2, [x19,18] + ldrh w1, [x19] add x0, x0, :lo12:.LC175 bl printk -.L2392: +.L2388: + ldr w0, [x24,#:lo12:.LANCHOR2] + tbz x0, 12, .L2389 + adrp x0, .LC176 + ldrh w1, [x19,16] + ldrh w2, [x19,18] + add x0, x0, :lo12:.LC176 + bl printk +.L2389: ldrh w0, [x19,10] adrp x21, .LANCHOR0 strh w0, [x19,14] @@ -14696,7 +14705,7 @@ ftl_open_sblk_recovery: ldrh w1, [x19] ldrh w0, [x0,576] cmp w1, w0 - bcs .L2388 + bcs .L2385 mov w0, 1 adrp x25, .LANCHOR4 adrp x26, .LANCHOR3 @@ -14710,21 +14719,21 @@ ftl_open_sblk_recovery: mov w28, 0 add x25, x25, 1280 str x0, [x29,120] -.L2395: +.L2392: add x0, x21, :lo12:.LANCHOR0 ldrh w0, [x0,3300] cmp w0, w23 - bls .L2398 + bls .L2395 ldrb w22, [x19,5] -.L2396: +.L2393: ldrb w0, [x19,9] cmp w0, w22 - bls .L2472 + bls .L2469 add x0, x19, x22, sxtw 1 ldrh w0, [x0,16] mov w1, 65535 cmp w0, w1 - beq .L2397 + beq .L2394 add x3, x21, :lo12:.LANCHOR0 ldr x2, [x20,24] ldrh w1, [x3,3350] @@ -14734,21 +14743,21 @@ ftl_open_sblk_recovery: bl ftl_read_ppa_page cmp w0, 512 mov w26, w0 - beq .L2398 + beq .L2395 cmn w0, #1 - beq .L2399 + beq .L2396 ldr x0, [x20,24] ldr w1, [x0] cmn w1, #1 - bne .L2399 + bne .L2396 ldr w0, [x0,4] cmn w0, #1 - bne .L2399 + bne .L2396 ldr x0, [x20,8] ldr w0, [x0] cmn w0, #1 - beq .L2398 -.L2399: + beq .L2395 +.L2396: adrp x0, .LANCHOR5+577 mov w1, 1 strb w1, [x0,#:lo12:.LANCHOR5+577] @@ -14756,14 +14765,14 @@ ftl_open_sblk_recovery: ldrh w1, [x19,10] madd w0, w23, w0, w22 cmp w1, w0 - beq .L2400 + beq .L2397 adrp x0, .LC0 ldr x1, [x29,120] - mov w2, 1396 + mov w2, 1395 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2400: +.L2397: ldrh w0, [x19,10] ldrh w1, [x19,6] ldrb w2, [x19,9] @@ -14772,28 +14781,28 @@ ftl_open_sblk_recovery: ldrh w0, [x0,3300] mul w0, w0, w2 cmp w1, w0 - beq .L2401 + beq .L2398 adrp x0, .LC0 ldr x1, [x29,120] - mov w2, 1397 + mov w2, 1396 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2401: +.L2398: cmn w26, #1 - beq .L2405 + beq .L2402 ldr x0, [x20,24] ldr w0, [x0,4] cmn w0, #1 - beq .L2405 + beq .L2402 bl lpa_hash_get_ppa - cbz x27, .L2403 + cbz x27, .L2400 ldr x2, [x20,24] ldr w3, [x2,8] cmp w0, w3 - beq .L2403 + beq .L2400 cmn w0, #1 - beq .L2403 + beq .L2400 add x4, x21, :lo12:.LANCHOR0 mov w5, 21 mov w28, 1 @@ -14807,7 +14816,7 @@ ftl_open_sblk_recovery: udiv w3, w3, w1 ldrh w1, [x27] cmp w1, w3, uxth - bne .L2403 + bne .L2400 ldr w6, [x2] mov x2, x25 ldrb w3, [x4,2832] @@ -14821,11 +14830,11 @@ ftl_open_sblk_recovery: ldr x4, [x29,112] cmp w0, w6 ldr x5, [x29,96] - bcc .L2403 + bcc .L2400 ldr x0, [x20,24] ldr w1, [x0,8] cmn w1, #1 - beq .L2405 + beq .L2402 ldrh w0, [x4,3340] sub w5, w5, w0 lsr w1, w1, w0 @@ -14835,22 +14844,22 @@ ftl_open_sblk_recovery: and w1, w28, w1 udiv w0, w1, w0 bl ftl_vpn_decrement - b .L2405 -.L2403: + b .L2402 +.L2400: ldr x2, [x20,24] add x1, x21, :lo12:.LANCHOR0 ldr w3, [x2,4] ldr w0, [x1,2840] cmp w3, w0 - bcs .L2405 + bcs .L2402 ldrb w0, [x19,9] ldrh w4, [x1,3300] ldrh w3, [x19,10] mul w0, w0, w4 sub w0, w0, #1 cmp w3, w0 - blt .L2473 -.L2405: + blt .L2470 +.L2402: ldrh w0, [x19,6] mov w28, 1 sub w0, w0, #1 @@ -14858,16 +14867,16 @@ ftl_open_sblk_recovery: ldrh w0, [x19,10] add w0, w0, 1 strh w0, [x19,10] -.L2397: +.L2394: add w22, w22, 1 uxth w22, w22 - b .L2396 -.L2472: + b .L2393 +.L2469: add w23, w23, 1 strb wzr, [x19,5] uxth w23, w23 - b .L2395 -.L2398: + b .L2392 +.L2395: add x2, x21, :lo12:.LANCHOR0 ldrh w0, [x19,10] ldrh w1, [x19,6] @@ -14878,35 +14887,35 @@ ftl_open_sblk_recovery: strb w22, [x19,5] mul w0, w0, w2 cmp w1, w0 - beq .L2409 + beq .L2406 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 1473 + mov w2, 1472 add x1, x1, 472 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2409: +.L2406: add x0, x21, :lo12:.LANCHOR0 ldrh w3, [x19,10] ldr x4, [x0,3872] mov w0, 0 mov w2, w0 -.L2410: +.L2407: cmp w2, w3 - bcs .L2474 + bcs .L2471 ldrh w1, [x19,12] add w1, w2, w1 ldr w1, [x4,x1,lsl 2] cmn w1, #1 - beq .L2411 + beq .L2408 add w1, w0, 1 uxth w0, w1 -.L2411: +.L2408: add w2, w2, 1 - b .L2410 -.L2474: + b .L2407 +.L2471: add x2, x21, :lo12:.LANCHOR0 ldrb w1, [x19,9] sub w0, w0, w3 @@ -14914,44 +14923,44 @@ ftl_open_sblk_recovery: madd w0, w1, w22, w0 uxth w22, w0 ldr w0, [x24,#:lo12:.LANCHOR2] - tbz x0, 12, .L2413 + tbz x0, 12, .L2410 ldrh w1, [x19] - adrp x0, .LC176 + adrp x0, .LC177 ldr x4, [x2,600] - add x0, x0, :lo12:.LC176 + add x0, x0, :lo12:.LC177 ubfiz x3, x1, 1, 16 mov w2, w22 ldrh w3, [x4,x3] bl printk -.L2413: +.L2410: add x0, x21, :lo12:.LANCHOR0 ldrh w1, [x19] - adrp x23, .LC177 + adrp x23, .LC178 mov w25, -1 - add x23, x23, :lo12:.LC177 + add x23, x23, :lo12:.LC178 ldr x0, [x0,600] strh w22, [x0,x1,lsl 1] mov x0, x20 mov w22, 0 bl buf_free -.L2414: +.L2411: add x2, x21, :lo12:.LANCHOR0 ldrb w0, [x2,3276] cmp w22, w0, lsl 1 - bcs .L2475 - cbz w28, .L2415 + bcs .L2472 + cbz w28, .L2412 ldrh w0, [x19,6] cmp w0, 1 - bls .L2415 + bls .L2412 mov x0, x19 bl ftl_get_new_free_page mov w26, w0 ldr w0, [x24,#:lo12:.LANCHOR2] - tbz x0, 12, .L2416 + tbz x0, 12, .L2413 mov x0, x23 mov w1, w26 bl printk -.L2416: +.L2413: add x3, x21, :lo12:.LANCHOR0 ldr x0, [x20,24] ldr x1, [x3,2864] @@ -14972,10 +14981,10 @@ ftl_open_sblk_recovery: bl ftl_prog_ppa_page ldrh w0, [x19] bl ftl_vpn_decrement -.L2415: +.L2412: add w22, w22, 1 - b .L2414 -.L2475: + b .L2411 +.L2472: ldrh w1, [x2,3300] ldrh w0, [x19,12] ldrb w3, [x19,9] @@ -14985,30 +14994,30 @@ ftl_open_sblk_recovery: ldr x1, [x2,3872] ldr w0, [x1,x0] cmn w0, #1 - beq .L2418 + beq .L2415 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 1503 + mov w2, 1502 add x1, x1, 472 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2418: +.L2415: ldrh w0, [x19,6] cmp w0, 1 - bne .L2388 + bne .L2385 mov x0, x19 bl ftl_write_last_log_page - b .L2388 -.L2473: + b .L2385 +.L2470: ldr x0, [x1,2864] ldr w2, [x2] ldr w1, [x0,8] cmp w2, w1 - bls .L2406 + bls .L2403 str w2, [x0,8] -.L2406: +.L2403: ldr x1, [x20,24] ldrh w0, [x19,10] ldrh w2, [x19,12] @@ -15016,8 +15025,8 @@ ftl_open_sblk_recovery: ldr w0, [x1,4] ldr w1, [x1,8] bl lpa_hash_update_ppa - b .L2405 -.L2388: + b .L2402 +.L2385: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -15045,7 +15054,7 @@ pm_write_page: adrp x25, .LANCHOR0 add x23, x23, :lo12:.LC0 add x22, x22, 496 -.L2477: +.L2474: add x2, x25, :lo12:.LANCHOR0 adrp x19, .LANCHOR0 ldr x0, [x2,2864] @@ -15055,28 +15064,28 @@ pm_write_page: str w1, [x0,48] ldrh w1, [x2,3300] cmp w3, w1 - bcs .L2478 + bcs .L2475 ldrh w1, [x0,692] mov w0, 65535 cmp w1, w0 - bne .L2479 -.L2478: + bne .L2476 +.L2475: bl pm_alloc_new_blk mov w0, 0 bl ftl_info_flush -.L2479: +.L2476: add x0, x19, :lo12:.LANCHOR0 ldr x0, [x0,2864] ldrh w1, [x0,692] mov w0, 65535 cmp w1, w0 - bne .L2480 + bne .L2477 mov x1, x22 mov w2, 230 mov x0, x23 bl printk bl dump_stack -.L2480: +.L2477: add x19, x19, :lo12:.LANCHOR0 adrp x20, .LANCHOR7 add x27, x20, :lo12:.LANCHOR7 @@ -15108,28 +15117,28 @@ pm_write_page: uxth w2, w2 strh w2, [x1,696] cmp w2, 1 - beq .L2481 + beq .L2478 ldrb w2, [x27,-120] - cbz w2, .L2482 -.L2481: + cbz w2, .L2479 +.L2478: add x20, x20, :lo12:.LANCHOR7 strb wzr, [x20,-120] - b .L2477 -.L2482: + b .L2474 +.L2479: cmn w0, #1 - bne .L2484 - adrp x0, .LC178 + bne .L2481 + adrp x0, .LC179 mov w1, w26 - add x0, x0, :lo12:.LC178 + add x0, x0, :lo12:.LC179 bl printk - b .L2477 -.L2484: + b .L2474 +.L2481: ldrh w0, [x1,698] cmp w21, w0 - bcs .L2485 + bcs .L2482 add x21, x1, x21, uxtw 2 str w26, [x21,704] -.L2485: +.L2482: mov w0, 0 ldr x27, [sp,80] ldp x19, x20, [sp,16] @@ -15152,7 +15161,7 @@ flash_info_flush: stp x23, x24, [sp,48] stp x25, x26, [sp,64] stp x27, x28, [sp,80] - tbz x0, 12, .L2490 + tbz x0, 12, .L2487 adrp x2, .LANCHOR3 adrp x0, .LC127 add x2, x2, :lo12:.LANCHOR3 @@ -15160,23 +15169,23 @@ flash_info_flush: mov w1, 251 add x2, x2, 512 bl printk -.L2490: +.L2487: adrp x22, .LANCHOR4 adrp x23, .LANCHOR0 add x0, x22, :lo12:.LANCHOR4 mov w1, 0 mov w2, 64 add x19, x23, :lo12:.LANCHOR0 - adrp x24, .LC180 - adrp x25, .LC181 + adrp x24, .LC181 + adrp x25, .LC182 ldr x0, [x0,1232] mov w26, 0 - add x24, x24, :lo12:.LC180 - add x25, x25, :lo12:.LC181 + add x24, x24, :lo12:.LC181 + add x25, x25, :lo12:.LC182 bl ftl_memset ldr x1, [x19,728] - adrp x0, .LC179 - add x0, x0, :lo12:.LC179 + adrp x0, .LC180 + add x0, x0, :lo12:.LC180 mov w2, 4 mov w3, 16 bl rknand_print_hex @@ -15185,7 +15194,7 @@ flash_info_flush: ldr w1, [x19,8] bl js_hash str w0, [x19,12] -.L2491: +.L2488: add x21, x22, :lo12:.LANCHOR4 add x27, x23, :lo12:.LANCHOR0 mov x0, x24 @@ -15199,7 +15208,7 @@ flash_info_flush: ldrh w0, [x21,1242] sub w1, w1, #1 cmp w0, w1 - blt .L2492 + blt .L2489 ldr x1, [x27,728] ldrb w19, [x21,1241] strh wzr, [x21,1242] @@ -15220,14 +15229,14 @@ flash_info_flush: ldrh w0, [x27,2] mul w19, w19, w0 mov w0, 0 - b .L2500 -.L2492: + b .L2497 +.L2489: madd w19, w20, w28, w19 - cbnz w0, .L2493 -.L2500: + cbnz w0, .L2490 +.L2497: mov w1, w19 bl flash_erase_block -.L2493: +.L2490: add x2, x23, :lo12:.LANCHOR0 add x20, x22, :lo12:.LANCHOR4 mov w4, 4 @@ -15249,16 +15258,16 @@ flash_info_flush: ldrh w1, [x20,1242] add w1, w1, 1 strh w1, [x20,1242] - bne .L2494 + bne .L2491 mov x0, x25 mov w1, w19 bl printk - b .L2491 -.L2494: - cbnz w26, .L2501 + b .L2488 +.L2491: + cbnz w26, .L2498 mov w26, 1 - b .L2491 -.L2501: + b .L2488 +.L2498: mov w0, 0 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -15272,7 +15281,7 @@ flash_info_flush: .global nand_flash_init .type nand_flash_init, %function nand_flash_init: - stp x29, x30, [sp, -96]! + stp x29, x30, [sp, -80]! add x29, sp, 0 stp x19, x20, [sp,16] adrp x20, .LANCHOR2 @@ -15280,23 +15289,22 @@ nand_flash_init: stp x21, x22, [sp,32] stp x23, x24, [sp,48] ldr w0, [x20,#:lo12:.LANCHOR2] - stp x25, x26, [sp,64] - str x27, [sp,80] - tbz x0, 12, .L2503 + str x25, [sp,64] + tbz x0, 12, .L2500 adrp x2, .LANCHOR3 adrp x0, .LC127 add x2, x2, :lo12:.LANCHOR3 add x0, x0, :lo12:.LC127 - mov w1, 2209 + mov w1, 2220 add x2, x2, 536 bl printk -.L2503: +.L2500: mov x0, x19 adrp x19, .LANCHOR0 add x22, x19, :lo12:.LANCHOR0 adrp x21, .LANCHOR4 bl nandc_init - add x24, x22, 748 + mov w23, 0 add x0, x20, :lo12:.LANCHOR2 mov w1, 0 add x0, x0, 376 @@ -15305,84 +15313,82 @@ nand_flash_init: mov w2, 8 strb w0, [x22,633] add x0, x22, 736 - mov x23, 0 - mov w26, 2 + add x22, x22, 748 + mov w25, 44 bl ftl_memset - mov x25, x24 + mov x24, x22 add x0, x21, :lo12:.LANCHOR4 mov w1, 0 add x0, x0, 1096 mov w2, 32 - mov w27, 44 bl ftl_memset -.L2509: +.L2506: mov w0, w23 - mov x1, x24 + mov x1, x22 bl flash_read_id - add x0, x22, 744 - strb w26, [x23,x0] - cbnz x23, .L2504 - ldrb w0, [x25] + cbnz w23, .L2501 + ldrb w0, [x24] sub w0, w0, #1 uxtb w0, w0 cmp w0, 253 - bls .L2505 -.L2507: - mov w22, -2 - b .L2571 -.L2505: - ldrb w0, [x25,1] - cmp w0, 255 - beq .L2507 + bls .L2502 .L2504: - ldrb w0, [x24] + mov w22, -2 + b .L2573 +.L2502: + ldrb w0, [x24,1] + cmp w0, 255 + beq .L2504 +.L2501: + ldrb w0, [x22] cmp w0, 181 - bne .L2508 - strb w27, [x24] -.L2508: - add x23, x23, 1 - add x24, x24, 8 - cmp x23, 4 - bne .L2509 + bne .L2505 + strb w25, [x22] +.L2505: + add w23, w23, 1 + add x22, x22, 8 + uxtb w23, w23 + cmp w23, 4 + bne .L2506 add x23, x20, :lo12:.LANCHOR2 add x24, x19, :lo12:.LANCHOR0 add x23, x23, 440 mov w22, 0 add x24, x24, 748 -.L2512: +.L2509: ldrb w2, [x23] add x0, x23, 1 mov x1, x24 bl flash_mem_cmp8 - cbnz w0, .L2510 + cbnz w0, .L2507 add x1, x20, :lo12:.LANCHOR2 ubfiz x22, x22, 5, 32 add x0, x1, 440 adds x22, x0, x22 - beq .L2507 + beq .L2504 ldrb w3, [x22,22] mov x0, 0 - b .L2514 -.L2510: + b .L2511 +.L2507: add w22, w22, 1 add x23, x23, 32 - cmp w22, 30 - bne .L2512 - b .L2507 -.L2514: + cmp w22, 32 + bne .L2509 + b .L2504 +.L2511: add x4, x1, x0, lsl 5 mov w2, w0 - ldrb w4, [x4,1400] + ldrb w4, [x4,1464] cmp w4, w3 - beq .L2513 + beq .L2510 add x0, x0, 1 cmp x0, 4 - bne .L2514 + bne .L2511 mov w2, w0 -.L2513: +.L2510: add x23, x20, :lo12:.LANCHOR2 add x24, x19, :lo12:.LANCHOR0 - add x1, x23, 1400 + add x1, x23, 1464 ubfiz x2, x2, 5, 32 add x1, x1, x2 add x0, x24, 640 @@ -15395,30 +15401,32 @@ nand_flash_init: bl ftl_memcpy ldrb w0, [x24,516] cmp w0, 8 - bhi .L2515 + bhi .L2512 ldrb w1, [x23,20] cmp w1, 60 - bls .L2516 + bls .L2513 mov w1, 60 strb w1, [x23,20] -.L2516: +.L2513: cmp w0, 8 - bne .L2515 + bne .L2512 add x0, x19, :lo12:.LANCHOR0 ldrb w0, [x0,748] + cmp w0, 137 + beq .L2540 cmp w0, 44 - beq .L2577 -.L2515: + beq .L2540 +.L2512: ldr w0, [x20,#:lo12:.LANCHOR2] - tbz x0, 12, .L2517 + tbz x0, 12, .L2515 adrp x2, .LANCHOR3 adrp x0, .LC127 add x2, x2, :lo12:.LANCHOR3 add x0, x0, :lo12:.LC127 - mov w1, 2233 + mov w1, 2244 add x2, x2, 536 bl printk -.L2517: +.L2515: add x23, x21, :lo12:.LANCHOR4 mov w0, 16384 add x22, x19, :lo12:.LANCHOR0 @@ -15439,8 +15447,9 @@ nand_flash_init: str x0, [x23,1208] mov w0, 64 bl ftl_malloc - strb wzr, [x23,1266] str x0, [x23,1232] + adrp x0, .LANCHOR7-119 + strb wzr, [x0,#:lo12:.LANCHOR7-119] bl flash_die_info_init ldrb w0, [x24,394] bl flash_lsb_page_tbl_build @@ -15467,10 +15476,10 @@ nand_flash_init: strb w2, [x22,3348] strb w0, [x19,#:lo12:.LANCHOR0] cmp w1, 9 - bne .L2518 + bne .L2516 mov w1, 70 strb w1, [x22,632] -.L2518: +.L2516: add x2, x20, :lo12:.LANCHOR2 add x1, x21, :lo12:.LANCHOR4 add x2, x2, 376 @@ -15479,26 +15488,26 @@ nand_flash_init: ldrb w0, [x2,19] ldrh w2, [x2,16] strb w0, [x3,725] - tbz x2, 6, .L2520 + tbz x2, 6, .L2518 sub w2, w0, #17 uxtb w2, w2 cmp w2, 2 - bhi .L2521 + bhi .L2519 adrp x2, micron_read_retrial cmp w0, 19 add x2, x2, :lo12:micron_read_retrial str x2, [x1,1224] - bne .L2573 + bne .L2575 mov w0, 15 - b .L2574 -.L2521: + b .L2576 +.L2519: sub w2, w0, #65 uxtb w2, w2 cmp w2, 1 - bls .L2542 + bls .L2541 cmp w0, 33 - bne .L2524 -.L2542: + bne .L2522 +.L2541: add x0, x21, :lo12:.LANCHOR4 adrp x1, toshiba_read_retrial add x1, x1, :lo12:toshiba_read_retrial @@ -15508,115 +15517,117 @@ nand_flash_init: strb w2, [x1,726] mov w1, 7 strb w1, [x0,1216] - b .L2520 -.L2524: + b .L2518 +.L2522: sub w2, w0, #67 uxtb w2, w2 cmp w2, 1 sub w2, w0, #34 cset w3, ls - uxtb w2, w2 - cmp w2, 1 - bls .L2543 - cbz w3, .L2526 -.L2543: - add x2, x21, :lo12:.LANCHOR4 - adrp x1, toshiba_read_retrial - add x1, x1, :lo12:toshiba_read_retrial cmp w0, 35 - str x1, [x2,1224] - beq .L2528 + cset w4, eq + uxtb w2, w2 cmp w0, 68 - beq .L2528 + cset w5, eq + cmp w2, 1 + bls .L2542 + cbz w3, .L2524 +.L2542: + add x1, x21, :lo12:.LANCHOR4 + adrp x0, toshiba_read_retrial + add x0, x0, :lo12:toshiba_read_retrial + str x0, [x1,1224] + cbnz w5, .L2526 + cbnz w4, .L2526 mov w0, 7 - strb w0, [x2,1216] - b .L2529 -.L2528: + strb w0, [x1,1216] + b .L2527 +.L2526: add x0, x21, :lo12:.LANCHOR4 mov w1, 17 strb w1, [x0,1216] -.L2529: +.L2527: add x0, x19, :lo12:.LANCHOR0 mov w1, 4 - cbnz w3, .L2575 + cbnz w3, .L2577 mov w1, 5 -.L2575: +.L2577: strb w1, [x0,726] - b .L2520 -.L2526: + b .L2518 +.L2524: sub w0, w0, #36 uxtb w0, w0 cmp w0, 1 - bhi .L2520 + bhi .L2518 adrp x0, toshiba_3d_read_retrial add x0, x0, :lo12:toshiba_3d_read_retrial str x0, [x1,1224] -.L2573: +.L2575: mov w0, 7 -.L2574: +.L2576: strb w0, [x1,1216] -.L2520: +.L2518: ldr w0, [x20,#:lo12:.LANCHOR2] - tbz x0, 12, .L2531 + tbz x0, 12, .L2529 adrp x2, .LANCHOR3 adrp x0, .LC127 add x2, x2, :lo12:.LANCHOR3 add x0, x0, :lo12:.LC127 - mov w1, 2281 + mov w1, 2292 add x2, x2, 536 bl printk -.L2531: +.L2529: add x0, x19, :lo12:.LANCHOR0 strb wzr, [x0,672] ldrb w0, [x0,780] - tbz x0, 0, .L2532 + tbz x0, 0, .L2530 mov w0, 4 bl nandc_set_if_mode mov w0, 1 bl flash_set_interface_mode mov w0, 1 - b .L2576 -.L2532: + b .L2578 +.L2530: mov w0, 4 -.L2576: +.L2578: bl nandc_set_if_mode bl flash_info_blk_init cmn w0, #1 mov w22, w0 - bne .L2534 + bne .L2532 ldr w0, [x20,#:lo12:.LANCHOR2] - tbz x0, 12, .L2535 + tbz x0, 12, .L2533 adrp x2, .LANCHOR3 adrp x0, .LC127 add x2, x2, :lo12:.LANCHOR3 add x0, x0, :lo12:.LC127 - mov w1, 2301 + mov w1, 2313 add x2, x2, 536 bl printk -.L2535: +.L2533: add x19, x19, :lo12:.LANCHOR0 mov w1, 17 ldr x0, [x19,728] strb w1, [x0,32] - b .L2571 -.L2534: + b .L2573 +.L2532: add x0, x19, :lo12:.LANCHOR0 ldrb w0, [x0,725] sub w0, w0, #1 uxtb w0, w0 cmp w0, 6 - bhi .L2536 + bhi .L2534 add x0, x21, :lo12:.LANCHOR4 adrp x1, hynix_read_retrial add x1, x1, :lo12:hynix_read_retrial str x1, [x0,1224] -.L2536: +.L2534: add x19, x19, :lo12:.LANCHOR0 ldrb w0, [x19,780] - tbz x0, 2, .L2538 + tbz x0, 2, .L2536 ldr x0, [x19,728] ldrb w0, [x0,19] - cbz w0, .L2538 + cbz w0, .L2536 add x21, x21, :lo12:.LANCHOR4 ldrh w1, [x19,2] mov w0, 0 @@ -15624,40 +15635,39 @@ nand_flash_init: mul w1, w2, w1 bl flash_ddr_para_scan ldrb w0, [x19,672] - cbnz w0, .L2538 + cbnz w0, .L2536 ldr x1, [x19,728] strb w0, [x1,19] bl flash_info_flush -.L2538: +.L2536: ldr w0, [x20,#:lo12:.LANCHOR2] - tbz x0, 12, .L2540 + tbz x0, 12, .L2538 adrp x2, .LANCHOR3 adrp x0, .LC127 add x2, x2, :lo12:.LANCHOR3 add x0, x0, :lo12:.LC127 - mov w1, 2356 + mov w1, 2370 add x2, x2, 536 bl printk -.L2540: +.L2538: bl nand_flash_print_info mov w22, 0 - b .L2571 -.L2577: + b .L2573 +.L2540: add x0, x20, :lo12:.LANCHOR2 add x0, x0, 376 ldrb w1, [x0,28] cmp w1, 3 - bne .L2515 + bne .L2512 strb wzr, [x0,28] - b .L2515 -.L2571: + b .L2512 +.L2573: mov w0, w22 - ldr x27, [sp,80] + ldr x25, [sp,64] ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] - ldp x25, x26, [sp,64] - ldp x29, x30, [sp], 96 + ldp x29, x30, [sp], 80 ret .size nand_flash_init, .-nand_flash_init .align 2 @@ -15677,19 +15687,19 @@ ftl_sysblk_dump: bl buf_alloc ldr x24, [x0,8] mov w20, 0 - adrp x22, .LC182 - adrp x23, .LC183 + adrp x22, .LC183 + adrp x23, .LC184 mov x27, x0 mov w19, w20 adrp x28, .LANCHOR0 - add x22, x22, :lo12:.LC182 - add x23, x23, :lo12:.LC183 + add x22, x22, :lo12:.LC183 + add x23, x23, :lo12:.LC184 add x24, x24, 704 -.L2579: +.L2580: add x3, x28, :lo12:.LANCHOR0 ldrh w1, [x3,3300] cmp w1, w19 - bls .L2591 + bls .L2592 ldrh w21, [x3,3350] ldr x1, [x27,8] ldr x2, [x27,24] @@ -15725,28 +15735,28 @@ ftl_sysblk_dump: mov w3, 32 bl rknand_print_hex cmp w26, 512 - beq .L2584 + beq .L2585 cmn w26, #1 - bne .L2580 -.L2584: + bne .L2581 +.L2585: mov w20, 1 -.L2580: +.L2581: add w19, w19, 1 uxth w19, w19 - b .L2579 -.L2591: + b .L2580 +.L2592: mov x0, x27 bl buf_free - cbz w20, .L2583 + cbz w20, .L2584 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 1339 + mov w2, 1338 add x1, x1, 552 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2583: +.L2584: sub sp, x29, #48 mov w0, w20 ldp x19, x20, [sp,64] @@ -15763,31 +15773,31 @@ ftl_sysblk_dump: .type dump_ftl_info, %function dump_ftl_info: stp x29, x30, [sp, -32]! - adrp x0, .LC184 + adrp x0, .LC185 add x29, sp, 0 str x19, [sp,16] adrp x19, .LANCHOR0 add x19, x19, :lo12:.LANCHOR0 - add x0, x0, :lo12:.LC184 + add x0, x0, :lo12:.LC185 ldrb w1, [x19,2834] bl printk adrp x3, .LANCHOR4 - adrp x0, .LC185 + adrp x0, .LC186 add x3, x3, :lo12:.LANCHOR4 - add x0, x0, :lo12:.LC185 + add x0, x0, :lo12:.LC186 ldrb w1, [x3,1536] ldrb w2, [x3,1537] ldrh w3, [x3,1538] bl printk ldr x2, [x19,2864] - adrp x0, .LC186 - add x0, x0, :lo12:.LC186 + adrp x0, .LC187 + add x0, x0, :lo12:.LC187 ldrh w1, [x2,130] ldrh w2, [x2,140] bl printk ldr x1, [x19,608] - adrp x0, .LC187 - add x0, x0, :lo12:.LC187 + adrp x0, .LC188 + add x0, x0, :lo12:.LC188 add x5, x1, 16 ldrh w1, [x1,16] ldrh w2, [x5,2] @@ -15796,8 +15806,8 @@ dump_ftl_info: ldrh w5, [x5,10] bl printk ldr x1, [x19,608] - adrp x0, .LC188 - add x0, x0, :lo12:.LC188 + adrp x0, .LC189 + add x0, x0, :lo12:.LC189 add x5, x1, 48 ldrh w1, [x1,48] ldrh w2, [x5,2] @@ -15806,8 +15816,8 @@ dump_ftl_info: ldrh w5, [x5,10] bl printk ldr x1, [x19,608] - adrp x0, .LC189 - add x0, x0, :lo12:.LC189 + adrp x0, .LC190 + add x0, x0, :lo12:.LC190 add x5, x1, 80 ldrh w1, [x1,80] ldrh w4, [x5,6] @@ -15820,32 +15830,32 @@ dump_ftl_info: ldrb w3, [x19,3276] ldr x1, [x19,3872] mul w3, w0, w3 - adrp x0, .LC190 - add x0, x0, :lo12:.LC190 + adrp x0, .LC191 + add x0, x0, :lo12:.LC191 lsl w3, w3, 1 bl rknand_print_hex ldr x1, [x19,600] - adrp x0, .LC191 + adrp x0, .LC192 ldrh w3, [x19,576] - add x0, x0, :lo12:.LC191 + add x0, x0, :lo12:.LC192 mov w2, 2 bl rknand_print_hex ldr x3, [x19,2864] - adrp x0, .LC183 - add x0, x0, :lo12:.LC183 + adrp x0, .LC184 + add x0, x0, :lo12:.LC184 mov w2, 4 add x1, x3, 704 ldrh w3, [x3,698] bl rknand_print_hex ldr x1, [x19,584] - adrp x0, .LC192 + adrp x0, .LC193 ldrh w3, [x19,576] - add x0, x0, :lo12:.LC192 + add x0, x0, :lo12:.LC193 mov w2, 4 bl rknand_print_hex - adrp x0, .LC193 + adrp x0, .LC194 add x1, x19, 3360 - add x0, x0, :lo12:.LC193 + add x0, x0, :lo12:.LC194 mov w2, 2 mov w3, 256 bl rknand_print_hex @@ -15854,8 +15864,8 @@ dump_ftl_info: ldrb w3, [x19,3276] ldr x1, [x19,3880] mul w3, w0, w3 - adrp x0, .LC194 - add x0, x0, :lo12:.LC194 + adrp x0, .LC195 + add x0, x0, :lo12:.LC195 lsl w3, w3, 1 bl rknand_print_hex ldr x19, [sp,16] @@ -15886,19 +15896,19 @@ pm_ppa_update_check: ubfx x3, x3, 5, 3 cmp w3, 7 cset w4, eq - cbnz w4, .L2597 + cbnz w4, .L2598 cmp w3, w7 - bne .L2594 -.L2597: + bne .L2595 +.L2598: mov w3, w2 mov w2, w1 mov x1, x0 - adrp x0, .LC195 - add x0, x0, :lo12:.LC195 + adrp x0, .LC196 + add x0, x0, :lo12:.LC196 bl printk bl dump_ftl_info mov w4, -1 -.L2594: +.L2595: mov w0, w4 ldp x29, x30, [sp], 16 ret @@ -15914,7 +15924,7 @@ load_l2p_region: stp x19, x20, [sp,16] cmp w22, 31 uxth w20, w0 - bls .L2600 + bls .L2601 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 @@ -15923,17 +15933,17 @@ load_l2p_region: add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2600: +.L2601: adrp x21, .LANCHOR0 adrp x19, .LANCHOR7 add x21, x21, :lo12:.LANCHOR0 ldr x0, [x21,2864] ldrh w2, [x0,698] cmp w20, w2 - bls .L2601 - adrp x0, .LC196 + bls .L2602 + adrp x0, .LC197 mov w1, w20 - add x0, x0, :lo12:.LC196 + add x0, x0, :lo12:.LC197 add x19, x19, :lo12:.LANCHOR7 bl printk mov x0, 0 @@ -15944,15 +15954,15 @@ load_l2p_region: ldr x0, [x21,2864] ldrh w0, [x0,698] cmp w0, w20 - bcs .L2603 + bcs .L2604 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 add x0, x0, :lo12:.LC0 add x1, x1, 568 mov w2, 35 - b .L2607 -.L2601: + b .L2608 +.L2602: add x0, x0, x20, sxtw 2 sbfiz x22, x22, 4, 32 ldr w4, [x0,704] @@ -15960,19 +15970,19 @@ load_l2p_region: add x23, x0, x22 strh w20, [x0,x22] strh wzr, [x23,2] - cbnz w4, .L2604 - adrp x0, .LC197 + cbnz w4, .L2605 + adrp x0, .LC198 mov w1, w20 mov w2, w4 add x19, x19, :lo12:.LANCHOR7 - add x0, x0, :lo12:.LC197 + add x0, x0, :lo12:.LC198 bl printk ldr x0, [x23,8] mov w1, 255 ldrh w2, [x19,-118] bl ftl_memset - b .L2603 -.L2604: + b .L2604 +.L2605: add x22, x19, :lo12:.LANCHOR7 ldrb w3, [x21,2832] ldr x1, [x23,8] @@ -15985,47 +15995,47 @@ load_l2p_region: ldr x4, [x29,72] ldr w2, [x0] cmp w2, w20 - beq .L2605 - adrp x0, .LC198 + beq .L2606 + adrp x0, .LC199 mov w1, w20 - add x0, x0, :lo12:.LC198 + add x0, x0, :lo12:.LC199 bl printk ldr x3, [x21,2864] - adrp x0, .LC199 - add x0, x0, :lo12:.LC199 + adrp x0, .LC200 + add x0, x0, :lo12:.LC200 mov w2, 4 add x1, x3, 704 ldrh w3, [x3,698] bl rknand_print_hex ldrb w3, [x21,2832] - adrp x0, .LC200 + adrp x0, .LC201 ldr x1, [x23,8] - add x0, x0, :lo12:.LC200 + add x0, x0, :lo12:.LC201 mov w2, 4 lsl w3, w3, 7 bl rknand_print_hex - adrp x0, .LC201 + adrp x0, .LC202 ldr x1, [x22,-128] - add x0, x0, :lo12:.LC201 + add x0, x0, :lo12:.LC202 mov w2, 4 mov w3, 16 bl rknand_print_hex -.L2605: +.L2606: add x19, x19, :lo12:.LANCHOR7 ldr x0, [x19,-128] ldr w0, [x0] cmp w0, w20 - beq .L2603 + beq .L2604 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 add x0, x0, :lo12:.LC0 add x1, x1, 568 mov w2, 59 -.L2607: +.L2608: bl printk bl dump_stack -.L2603: +.L2604: mov w0, 0 ldr x23, [sp,48] ldp x19, x20, [sp,16] @@ -16052,19 +16062,19 @@ pm_gc: ldrh w0, [x19,1164] sub w0, w0, #1 cmp w1, w0 - blt .L2610 + blt .L2611 bl pm_free_sblk ldr x2, [x20,2864] ldrh w1, [x19,1164] ldrh w3, [x2,688] sub w1, w1, #1 cmp w3, w1 - blt .L2610 + blt .L2611 add x0, x2, x0, uxth 1 ldrh w21, [x0,416] mov w0, 65535 cmp w21, w0 - bne .L2612 + bne .L2613 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 @@ -16077,7 +16087,7 @@ pm_gc: ldr x1, [x20,2864] add x0, x1, x0, uxth 1 ldrh w21, [x0,416] -.L2612: +.L2613: bl pm_select_ram_region uxth x20, w0 add x0, x23, :lo12:.LANCHOR0 @@ -16088,27 +16098,27 @@ pm_gc: ldrh w0, [x0,x1] mov w1, 65535 cmp w0, w1 - beq .L2613 + beq .L2614 ldr x1, [x19,8] - cbz x1, .L2613 + cbz x1, .L2614 ldrsh w2, [x19,2] - tbz w2, #31, .L2613 + tbz w2, #31, .L2614 bl pm_write_page ldrh w0, [x19,2] and w0, w0, 32767 strh w0, [x19,2] -.L2613: +.L2614: add x23, x23, :lo12:.LANCHOR0 mov w19, 0 add x0, x23, 3904 mov w24, 21 mov w25, 1 add x20, x0, x20, lsl 4 -.L2614: +.L2615: ldr x0, [x23,2864] ldrh w1, [x0,698] cmp w1, w19 - bls .L2620 + bls .L2621 ldrh w1, [x23,3340] add x0, x0, x19, sxtw 2 ldr w0, [x0,704] @@ -16120,7 +16130,7 @@ pm_gc: ldrb w0, [x23,3338] udiv w1, w1, w0 cmp w21, w1, uxth - bne .L2615 + bne .L2616 mov w1, w22 mov w0, w19 bl load_l2p_region @@ -16129,13 +16139,13 @@ pm_gc: bl pm_write_page mov w0, -1 strh w0, [x20] -.L2615: +.L2616: add w19, w19, 1 uxth w19, w19 - b .L2614 -.L2620: + b .L2615 +.L2621: bl pm_free_sblk -.L2610: +.L2611: mov w0, 0 ldr x25, [sp,64] ldp x19, x20, [sp,16] @@ -16163,10 +16173,10 @@ pm_flush_id: and w0, w0, 32767 strh w0, [x20,2] ldr w0, [x19,3896] - cbz w0, .L2622 + cbz w0, .L2623 bl pm_gc str wzr, [x19,3896] -.L2622: +.L2623: mov w0, 0 ldp x19, x20, [sp,16] ldp x29, x30, [sp], 32 @@ -16183,16 +16193,16 @@ pm_flush: mov x19, 0 add x20, x20, :lo12:.LANCHOR0 add x20, x20, 3904 -.L2628: +.L2629: add x1, x20, x19, lsl 4 uxth w0, w19 ldrsh w1, [x1,2] - tbz w1, #31, .L2627 + tbz w1, #31, .L2628 bl pm_flush_id -.L2627: +.L2628: add x19, x19, 1 cmp x19, 32 - bne .L2628 + bne .L2629 mov w0, 0 ldp x19, x20, [sp,16] ldp x29, x30, [sp], 32 @@ -16249,19 +16259,19 @@ pm_init: mov w24, -1 str x0, [x22,-128] add x22, x20, 512 -.L2634: +.L2635: strh w24, [x20] strh wzr, [x20,2] - cbz w23, .L2633 + cbz w23, .L2634 add x0, x19, :lo12:.LANCHOR0 ldrb w0, [x0,2832] lsl w0, w0, 9 bl ftl_malloc str x0, [x20,8] -.L2633: +.L2634: add x20, x20, 16 cmp x20, x22 - bne .L2634 + bne .L2635 add x20, x19, :lo12:.LANCHOR0 add x21, x21, :lo12:.LANCHOR7 mov w4, 4 @@ -16278,20 +16288,20 @@ pm_init: mov w24, w21 ldrh w2, [x1,696] cmp w2, w21 - bgt .L2635 - adrp x0, .LC202 + bgt .L2636 + adrp x0, .LC203 ldrh w1, [x1,692] mov w3, w21 - add x0, x0, :lo12:.LC202 - adrp x26, .LC203 + add x0, x0, :lo12:.LC203 + adrp x26, .LC204 add w21, w21, 1 bl printk - add x26, x26, :lo12:.LC203 + add x26, x26, :lo12:.LC204 ldr x0, [x20,2864] ldrsh w20, [x0,696] -.L2636: +.L2637: cmp w20, w21 - bge .L2649 + bge .L2650 add x27, x19, :lo12:.LANCHOR0 mov x2, x23 mov x3, x25 @@ -16314,21 +16324,21 @@ pm_init: ldr w1, [x25] bl printk cmp w28, 512 - beq .L2637 + beq .L2638 cmn w28, #1 - beq .L2637 + beq .L2638 ldr x1, [x27,2864] ldr w0, [x25] ldrh w2, [x1,698] cmp w0, w2 - bcs .L2637 + bcs .L2638 add x0, x1, x0, uxtw 2 str w22, [x0,704] -.L2637: +.L2638: add w20, w20, 1 sxth w20, w20 - b .L2636 -.L2649: + b .L2637 +.L2650: add x19, x19, :lo12:.LANCHOR0 adrp x0, .LANCHOR5+577 mov w1, 1 @@ -16343,7 +16353,7 @@ pm_init: ldr x1, [x19,3912] mov w0, -1 bl pm_write_page -.L2635: +.L2636: bl pm_free_sblk bl pm_gc mov w0, 0 @@ -16381,28 +16391,28 @@ pm_log2phys: uxth w25, w20 msub w24, w25, w24, w0 uxth x24, w24 - bcc .L2662 - adrp x0, .LC204 + bcc .L2663 + adrp x0, .LC205 mov w1, w5 - add x0, x0, :lo12:.LC204 + add x0, x0, :lo12:.LC205 bl printk mov w0, -1 - b .L2652 -.L2666: + b .L2653 +.L2667: ldrh w0, [x3] cmp w0, w25 - beq .L2654 -.L2653: + beq .L2655 +.L2654: add w19, w19, 1 add x3, x3, 16 uxth x19, w19 cmp w19, 32 - beq .L2665 -.L2662: + beq .L2666 +.L2663: ldr x0, [x3,8] - cbnz x0, .L2666 - b .L2653 -.L2665: + cbnz x0, .L2667 + b .L2654 +.L2666: bl pm_select_ram_region uxth x19, w0 add x2, x21, :lo12:.LANCHOR0 @@ -16413,21 +16423,21 @@ pm_log2phys: ldrh w3, [x2,x3] mov w2, 65535 cmp w3, w2 - bne .L2667 -.L2658: + bne .L2668 +.L2659: adrp x0, .LANCHOR7-116 strb w19, [x0,#:lo12:.LANCHOR7-116] mov w0, w25 bl load_l2p_region -.L2654: - cbnz w23, .L2655 +.L2655: + cbnz w23, .L2656 add x0, x21, :lo12:.LANCHOR0 add x0, x0, x19, lsl 4 ldr x0, [x0,3912] ldr w0, [x0,x24,lsl 2] str w0, [x22] - b .L2656 -.L2655: + b .L2657 +.L2656: add x0, x21, :lo12:.LANCHOR0 ldr w2, [x22] add x0, x0, 3904 @@ -16439,7 +16449,7 @@ pm_log2phys: strh w1, [x0,2] adrp x0, .LANCHOR4+64 strb w20, [x0,#:lo12:.LANCHOR4+64] -.L2656: +.L2657: add x21, x21, :lo12:.LANCHOR0 mov w2, 32767 add x21, x21, 3904 @@ -16448,18 +16458,18 @@ pm_log2phys: ldrh w1, [x19,2] and w3, w1, 32767 cmp w3, w2 - beq .L2652 + beq .L2653 add w1, w1, 1 strh w1, [x19,2] - b .L2652 -.L2667: + b .L2653 +.L2668: ldrsh w2, [x4,2] - tbz w2, #31, .L2658 + tbz w2, #31, .L2659 str x1, [x29,88] bl pm_flush_id ldr x1, [x29,88] - b .L2658 -.L2652: + b .L2659 +.L2653: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -16493,7 +16503,7 @@ gc_recovery: add x22, x21, 80 cmp w1, w0 ldr x0, [x24,608] - beq .L2669 + beq .L2670 mov w1, -1 strh w1, [x0,130] mov w0, 1 @@ -16508,37 +16518,37 @@ gc_recovery: ldrb w1, [x24,3257] str w0, [x29,152] cmp w1, 3 - bne .L2670 + bne .L2671 ldrh w1, [x24,3300] sub w1, w1, #1 add w0, w1, w0 orr w0, w0, 50331648 - b .L2713 -.L2670: + b .L2714 +.L2671: cmp w1, 2 - bne .L2671 + bne .L2672 ldrh w1, [x24,3300] add w0, w0, w1, lsl 1 sub w0, w0, #1 orr w0, w0, 33554432 -.L2713: +.L2714: str w0, [x19,40] -.L2671: +.L2672: mov x0, x19 mov w1, 1 bl sblk_read_page ldr w0, [x19,52] cmp w0, 512 - beq .L2672 + beq .L2673 cmn w0, #1 - beq .L2672 + beq .L2673 ldr x0, [x19,24] ldr w1, [x0] mov w0, 15555 movk w0, 0xf55f, lsl 16 cmp w1, w0 - beq .L2673 -.L2672: + beq .L2674 +.L2673: mov x0, x19 bl buf_free ldr x7, [x19,24] @@ -16549,8 +16559,8 @@ gc_recovery: str w0, [sp,8] ldr w0, [x7,12] str w0, [sp,16] - adrp x0, .LC205 - add x0, x0, :lo12:.LC205 + adrp x0, .LC206 + add x0, x0, :lo12:.LC206 ldr w3, [x6] ldr w4, [x6,4] ldr w5, [x6,8] @@ -16559,8 +16569,8 @@ gc_recovery: ldr w6, [x6,12] ldr w7, [x7] bl printk - b .L2716 -.L2673: + b .L2717 +.L2674: add x24, x20, :lo12:.LANCHOR0 ldr x0, [x29,136] ldr x1, [x19,8] @@ -16582,28 +16592,28 @@ gc_recovery: ldrb w26, [x24,3257] ldrh w25, [x24,3300] cmp w26, 2 - bne .L2675 + bne .L2676 lsl w25, w25, 1 mov w26, 1 -.L2675: +.L2676: mov w23, 0 - adrp x24, .LC206 - add x0, x24, :lo12:.LC206 + adrp x24, .LC207 + add x0, x24, :lo12:.LC207 mov w27, w23 str x0, [x29,112] - b .L2676 -.L2718: + b .L2677 +.L2719: ldr x0, [x0,1144] ldr w1, [x0,x12] ldr w0, [x7,8] cmp w1, w0 - bne .L2680 -.L2703: + bne .L2681 +.L2704: add w27, w27, 1 add w28, w28, 1 -.L2684: +.L2685: cmp w28, w26 - bhi .L2717 + bhi .L2718 ldr x0, [x29,128] add x1, x20, :lo12:.LANCHOR0 add x0, x0, 8 @@ -16613,10 +16623,10 @@ gc_recovery: cmp w1, 3 mul w0, w0, w2 str w0, [x29,152] - bne .L2677 + bne .L2678 add w0, w0, w23 orr w0, w0, w28, lsl 24 -.L2714: +.L2715: str w0, [x19,40] mov w1, 1 mov x0, x19 @@ -16629,8 +16639,8 @@ gc_recovery: ldr x1, [x0,1136] ldr w3, [x1,x12] cmp w3, w6 - beq .L2718 -.L2680: + beq .L2719 +.L2681: ldr x0, [x29,136] str x12, [x29,104] add x13, x0, :lo12:.LANCHOR4 @@ -16650,10 +16660,10 @@ gc_recovery: ldr x0, [x13,1136] ldr w0, [x0,x12] cmn w0, #1 - beq .L2703 + beq .L2704 mov x0, x19 bl buf_free -.L2716: +.L2717: add x0, x20, :lo12:.LANCHOR0 ldrh w2, [x21,80] mov w28, 0 @@ -16662,38 +16672,38 @@ gc_recovery: ldr x0, [x0,608] ldrh w1, [x21,80] strh w1, [x0,130] - b .L2674 -.L2683: + b .L2675 +.L2684: add w23, w23, 1 -.L2676: +.L2677: cmp w23, w25 - beq .L2685 + beq .L2686 sub w0, w23, #1 mov w24, 0 str w0, [x29,124] -.L2686: +.L2687: ldrb w0, [x22,9] cmp w24, w0 - bge .L2683 + bge .L2684 sxtw x0, w24 mov w28, 1 str x0, [x29,128] - b .L2684 -.L2677: + b .L2685 +.L2678: cmp w1, 2 - bne .L2679 + bne .L2680 ldr w1, [x29,124] add w0, w0, w1 add w0, w0, w28 orr w0, w0, 33554432 - b .L2714 -.L2679: + b .L2715 +.L2680: add w0, w0, w23 - b .L2714 -.L2717: + b .L2715 +.L2718: add w24, w24, 1 - b .L2686 -.L2685: + b .L2687 +.L2686: mov x0, x19 mov w28, 0 mov w27, w28 @@ -16706,22 +16716,22 @@ gc_recovery: ldrh w0, [x0,3274] mul w0, w1, w0 strh w0, [x2,x3,lsl 1] -.L2687: +.L2688: cmp w27, w25 - beq .L2698 + beq .L2699 sub w0, w27, #1 mov w24, 0 str w0, [x29,104] -.L2699: +.L2700: ldrb w0, [x22,9] cmp w24, w0 - bge .L2696 + bge .L2697 sxtw x0, w24 mov w23, 1 str x0, [x29,112] -.L2697: +.L2698: cmp w23, w26 - bhi .L2719 + bhi .L2720 ldr x1, [x29,136] ldr w0, [x29,128] add x1, x1, :lo12:.LANCHOR4 @@ -16729,7 +16739,7 @@ gc_recovery: ldr x2, [x1,1136] ldr w6, [x2,x0] cmn w6, #1 - beq .L2688 + beq .L2689 ldr x1, [x1,1144] str x6, [x29,96] ldr w0, [x1,x0] @@ -16739,13 +16749,13 @@ gc_recovery: str w0, [x29,156] cmn w0, #1 ldr x6, [x29,96] - bne .L2689 + bne .L2690 mov w0, w6 add x1, x29, 156 mov w2, 0 bl pm_log2phys ldr x6, [x29,96] -.L2689: +.L2690: ldr x0, [x29,112] add x0, x0, 8 ldrh w1, [x22,x0,lsl 1] @@ -16754,21 +16764,21 @@ gc_recovery: ldrb w0, [x0,3257] cmp w0, 3 mul w1, w1, w2 - bne .L2690 + bne .L2691 add w1, w1, w27 orr w1, w1, w23, lsl 24 - b .L2715 -.L2690: + b .L2716 +.L2691: cmp w0, 2 - bne .L2692 + bne .L2693 ldr w0, [x29,104] add w1, w1, w0 add w1, w1, w23 orr w1, w1, 33554432 - b .L2715 -.L2692: + b .L2716 +.L2693: add w1, w1, w27 -.L2715: +.L2716: add x0, x20, :lo12:.LANCHOR0 ldr w2, [x29,124] str w1, [x29,152] @@ -16786,19 +16796,19 @@ gc_recovery: ldr w1, [x29,124] cmp w0, w1 uxth x19, w19 - bne .L2693 + bne .L2694 mov w0, w6 add x1, x29, 152 add w28, w28, 1 bl pm_log2phys mov w0, w19 bl ftl_vpn_decrement - b .L2694 -.L2693: + b .L2695 +.L2694: ldr w1, [x29,152] cmp w0, w1 csinc w28, w28, w28, ne -.L2694: +.L2695: ldr w0, [x29,128] add x1, x20, :lo12:.LANCHOR0 add w0, w0, 1 @@ -16807,31 +16817,33 @@ gc_recovery: add x0, x0, x19, lsl 2 ldrb w0, [x0,2] ands w0, w0, 224 - bne .L2688 + bne .L2689 lsl x19, x19, 1 ldr x1, [x1,600] ldrh w2, [x1,x19] - cbz w2, .L2688 + cbz w2, .L2689 strh w0, [x1,x19] -.L2688: +.L2689: add w23, w23, 1 - b .L2697 -.L2719: + b .L2698 +.L2720: add w24, w24, 1 - b .L2699 -.L2696: + b .L2700 +.L2697: add w27, w27, 1 - b .L2687 -.L2698: + b .L2688 +.L2699: add x0, x20, :lo12:.LANCHOR0 ldrh w1, [x21,80] ldr x0, [x0,600] strh w28, [x0,x1,lsl 1] -.L2674: + ldrh w0, [x21,80] + bl zftl_insert_data_list +.L2675: ldrh w1, [x21,80] - adrp x0, .LC207 + adrp x0, .LC208 mov w2, w28 - add x0, x0, :lo12:.LC207 + add x0, x0, :lo12:.LC208 bl printk mov w0, -1 strh w0, [x21,80] @@ -16842,9 +16854,9 @@ gc_recovery: ldr x0, [x0,608] ldrh w0, [x0,130] cmp w0, w1 - beq .L2700 + beq .L2701 bl ftl_free_sblk -.L2700: +.L2701: add x20, x20, :lo12:.LANCHOR0 mov w0, -1 ldr x1, [x20,2864] @@ -16853,15 +16865,15 @@ gc_recovery: strh w0, [x1,130] mov w0, 0 bl ftl_info_flush - b .L2668 -.L2669: + b .L2669 +.L2670: ldrh w0, [x0,130] cmp w0, w1 - beq .L2668 + beq .L2669 ldr x1, [x24,2864] ldrh w1, [x1,126] cmp w1, w0 - bne .L2702 + bne .L2703 bl pm_flush ldr x0, [x24,608] ldrh w0, [x0,130] @@ -16871,12 +16883,12 @@ gc_recovery: strh w1, [x0,126] mov w0, 0 bl ftl_info_flush -.L2702: +.L2703: add x20, x20, :lo12:.LANCHOR0 mov w1, -1 ldr x0, [x20,608] strh w1, [x0,130] -.L2668: +.L2669: sub sp, x29, #32 ldp x19, x20, [sp,48] ldp x21, x22, [sp,64] @@ -16905,7 +16917,7 @@ zftl_init: add x23, x21, :lo12:.LANCHOR7 strb w0, [x20,2888] strb w0, [x20,3893] - strb w0, [x1,1267] + strb w0, [x1,1266] mov w0, -1 adrp x1, .LC2 str w0, [x23,-112] @@ -16942,14 +16954,14 @@ zftl_init: strh w7, [x20,576] mov x20, x11 strh w10, [x23,-118] -.L2721: +.L2722: cmp w2, w4 - bhi .L2787 + bhi .L2788 add w1, w1, 1 lsl w2, w2, 1 uxth w1, w1 - b .L2721 -.L2787: + b .L2722 +.L2788: mul w3, w0, w3 add x2, x19, :lo12:.LANCHOR0 sub w1, w1, #1 @@ -16958,14 +16970,14 @@ zftl_init: mov w1, 1 lsr w4, w5, 21 mov w2, 0 -.L2723: +.L2724: cmp w1, w4 - bhi .L2788 + bhi .L2789 add w2, w2, 1 lsl w1, w1, 1 uxth w2, w2 - b .L2723 -.L2788: + b .L2724 +.L2789: mov w1, 57344 mov w4, 1 movk w1, 0x1c, lsl 16 @@ -17002,10 +17014,10 @@ zftl_init: lsr w0, w7, 4 strh w0, [x4,3306] cmp w0, 79 - bhi .L2725 + bhi .L2726 mov w0, 80 strh w0, [x4,3306] -.L2725: +.L2726: add x0, x19, :lo12:.LANCHOR0 mov w2, 2000 mov w3, 256 @@ -17019,10 +17031,10 @@ zftl_init: strh w3, [x2,1162] mov w2, 32 strh w2, [x0,592] - beq .L2726 + beq .L2727 ldrb w0, [x0,3272] - cbz w0, .L2727 -.L2726: + cbz w0, .L2728 +.L2727: add x0, x19, :lo12:.LANCHOR0 mov w2, 150 mov w3, 64 @@ -17032,26 +17044,18 @@ zftl_init: mov w3, 12 strh w3, [x0,592] ldrb w3, [x19,#:lo12:.LANCHOR0] - cbnz w3, .L2727 + cbnz w3, .L2728 mov w3, 4 strh w3, [x0,592] mov w3, 600 strh w3, [x0,3346] mov w0, 128 strh w0, [x2,1160] -.L2727: - ldr w0, [x20,#:lo12:.LANCHOR2] - tbz x0, 12, .L2729 - adrp x0, .LC208 - add x0, x0, :lo12:.LC208 - bl printk -.L2729: +.L2728: ldr w0, [x20,#:lo12:.LANCHOR2] tbz x0, 12, .L2730 - add x1, x19, :lo12:.LANCHOR0 adrp x0, .LC209 add x0, x0, :lo12:.LC209 - ldr w1, [x1,2836] bl printk .L2730: ldr w0, [x20,#:lo12:.LANCHOR2] @@ -17059,15 +17063,15 @@ zftl_init: add x1, x19, :lo12:.LANCHOR0 adrp x0, .LC210 add x0, x0, :lo12:.LC210 - ldr w1, [x1,2840] + ldr w1, [x1,2836] bl printk .L2731: ldr w0, [x20,#:lo12:.LANCHOR2] tbz x0, 12, .L2732 - add x1, x21, :lo12:.LANCHOR7 + add x1, x19, :lo12:.LANCHOR0 adrp x0, .LC211 add x0, x0, :lo12:.LC211 - ldr w1, [x1,-108] + ldr w1, [x1,2840] bl printk .L2732: ldr w0, [x20,#:lo12:.LANCHOR2] @@ -17075,7 +17079,7 @@ zftl_init: add x1, x21, :lo12:.LANCHOR7 adrp x0, .LC212 add x0, x0, :lo12:.LC212 - ldrh w1, [x1,-104] + ldr w1, [x1,-108] bl printk .L2733: ldr w0, [x20,#:lo12:.LANCHOR2] @@ -17083,23 +17087,23 @@ zftl_init: add x1, x21, :lo12:.LANCHOR7 adrp x0, .LC213 add x0, x0, :lo12:.LC213 - ldrh w1, [x1,-118] + ldrh w1, [x1,-104] bl printk .L2734: ldr w0, [x20,#:lo12:.LANCHOR2] tbz x0, 12, .L2735 - add x22, x22, :lo12:.LANCHOR4 + add x1, x21, :lo12:.LANCHOR7 adrp x0, .LC214 add x0, x0, :lo12:.LC214 - ldrh w1, [x22,1164] + ldrh w1, [x1,-118] bl printk .L2735: ldr w0, [x20,#:lo12:.LANCHOR2] tbz x0, 12, .L2736 - add x1, x19, :lo12:.LANCHOR0 + add x22, x22, :lo12:.LANCHOR4 adrp x0, .LC215 add x0, x0, :lo12:.LC215 - ldrh w1, [x1,3306] + ldrh w1, [x22,1164] bl printk .L2736: ldr w0, [x20,#:lo12:.LANCHOR2] @@ -17107,9 +17111,17 @@ zftl_init: add x1, x19, :lo12:.LANCHOR0 adrp x0, .LC216 add x0, x0, :lo12:.LC216 - ldrh w1, [x1,3308] + ldrh w1, [x1,3306] bl printk .L2737: + ldr w0, [x20,#:lo12:.LANCHOR2] + tbz x0, 12, .L2738 + add x1, x19, :lo12:.LANCHOR0 + adrp x0, .LC217 + add x0, x0, :lo12:.LC217 + ldrh w1, [x1,3308] + bl printk +.L2738: add x22, x19, :lo12:.LANCHOR0 bl buf_init mov w0, 6 @@ -17138,11 +17150,11 @@ zftl_init: ldr w0, [x20,#:lo12:.LANCHOR2] add x1, x2, x1, sxtw 2 str x1, [x22,608] - tbz x0, 12, .L2738 - adrp x0, .LC217 - add x0, x0, :lo12:.LC217 + tbz x0, 12, .L2739 + adrp x0, .LC218 + add x0, x0, :lo12:.LC218 bl printk -.L2738: +.L2739: add x2, x19, :lo12:.LANCHOR0 add x3, x21, :lo12:.LANCHOR7 ldrh w0, [x2,3300] @@ -17157,28 +17169,28 @@ zftl_init: add w24, w24, 704 lsl w22, w22, 1 add w22, w22, 632 - tbz x0, 12, .L2739 - adrp x0, .LC218 + tbz x0, 12, .L2740 + adrp x0, .LC219 ldrh w3, [x3,-118] - add x0, x0, :lo12:.LC218 + add x0, x0, :lo12:.LC219 mov w1, w22 mov w2, w24 bl printk -.L2739: +.L2740: add x21, x21, :lo12:.LANCHOR7 ldrh w0, [x21,-118] cmp w22, w0 - bhi .L2741 + bhi .L2742 cmp w24, w0 - bls .L2740 -.L2741: + bls .L2741 .L2742: - b .L2742 -.L2740: +.L2743: + b .L2743 +.L2741: bl sblk_init bl ftl_info_blk_init cmn w0, #1 - beq .L2743 + beq .L2744 bl ftl_ext_info_init add x19, x19, :lo12:.LANCHOR0 mov w0, 1 @@ -17211,18 +17223,18 @@ zftl_init: mov w0, 1 bl ftl_total_vpn_update ldrb w0, [x23,577] - cbz w0, .L2744 + cbz w0, .L2745 ldr x1, [x19,2864] ldr w0, [x1,68] add w0, w0, 1 str w0, [x1,68] -.L2744: +.L2745: bl ftl_ext_info_flush mov w0, 0 bl ftl_info_flush bl print_ftl_debug_info mov w0, 0 -.L2743: +.L2744: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -17248,11 +17260,11 @@ rk_ftl_init: strb wzr, [x21,-102] bl ftl_malloc str x0, [x19,1176] - cbnz x0, .L2790 -.L2792: + cbnz x0, .L2791 +.L2793: mov w0, -1 - b .L2791 -.L2790: + b .L2792 +.L2791: mov w0, 2048 bl ftl_malloc str x0, [x21,-96] @@ -17262,7 +17274,7 @@ rk_ftl_init: str xzr, [x1,-88]! bl rknand_get_reg_addr ldr x0, [x19,1184] - cbz x0, .L2792 + cbz x0, .L2793 bl rk_nandc_irq_init mov w1, 0 ldr x0, [x21,-96] @@ -17322,14 +17334,14 @@ rk_ftl_init: ldr x0, [x19,1184] bl nand_flash_init mov w22, w0 - cbnz w0, .L2793 + cbnz w0, .L2794 bl zftl_init mov w19, w0 bl zftl_proc_debug_init mov w0, 1 strb w0, [x21,-102] - b .L2794 -.L2793: + b .L2795 +.L2794: ldr x1, [x19,1176] adrp x2, ftl_read_flash_info add x2, x2, :lo12:ftl_read_flash_info @@ -17384,7 +17396,7 @@ rk_ftl_init: bl FlashInit mov w19, w0 cmn w22, #2 - bne .L2795 + bne .L2796 add x22, x21, :lo12:.LANCHOR2 adrp x1, gNandParaInfo add x22, x22, 376 @@ -17394,22 +17406,22 @@ rk_ftl_init: bl ftl_memcpy ldrb w0, [x22,18] bl flash_lsb_page_tbl_build -.L2795: +.L2796: adrp x0, g_nandc_version_data ldr w1, [x0,#:lo12:g_nandc_version_data] mov w0, 12336 movk w0, 0x5638, lsl 16 cmp w1, w0 adrp x1, .LANCHOR0 - bne .L2796 + bne .L2797 adrp x0, gFlashSlcMode ldrb w0, [x0,#:lo12:gFlashSlcMode] - cbnz w0, .L2797 -.L2796: + cbnz w0, .L2798 +.L2797: add x0, x20, :lo12:.LANCHOR4 strb wzr, [x1,#:lo12:.LANCHOR0] strb wzr, [x0,1264] -.L2797: +.L2798: adrp x2, gNandFlashIDBEccBits add x0, x1, :lo12:.LANCHOR0 add x21, x21, :lo12:.LANCHOR2 @@ -17423,28 +17435,28 @@ rk_ftl_init: strb w2, [x0,724] mov w2, 1 mov w0, 0 -.L2798: +.L2799: cmp w2, w3 - bhi .L2803 + bhi .L2804 add w0, w0, 1 lsl w2, w2, 1 uxth w0, w0 - b .L2798 -.L2803: + b .L2799 +.L2804: add x1, x1, :lo12:.LANCHOR0 sub w0, w0, #1 strb wzr, [x1,672] strh w0, [x1,3340] - cbnz w19, .L2794 + cbnz w19, .L2795 bl FtlInit mov w19, w0 -.L2794: - adrp x0, .LC219 +.L2795: + adrp x0, .LC220 mov w1, w19 - add x0, x0, :lo12:.LC219 + add x0, x0, :lo12:.LC220 bl printk mov w0, w19 -.L2791: +.L2792: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x29, x30, [sp], 48 @@ -17472,12 +17484,12 @@ gc_update_l2p_map_new: mul w24, w24, w0 bl timer_get_time ldr w0, [x22,#:lo12:.LANCHOR2] - tbz x0, 8, .L2805 - adrp x0, .LC220 + tbz x0, 8, .L2806 + adrp x0, .LC221 ldrh w1, [x20,80] - add x0, x0, :lo12:.LC220 + add x0, x0, :lo12:.LC221 bl printk -.L2805: +.L2806: add x0, x19, :lo12:.LANCHOR0 ldrh w1, [x20,80] sub w2, w24, #1 @@ -17486,21 +17498,21 @@ gc_update_l2p_map_new: adrp x27, .LANCHOR4 ldr x0, [x0,600] strh w2, [x0,x1,lsl 1] + adrp x0, .LC223 + add x0, x0, :lo12:.LC223 + str x0, [x29,120] adrp x0, .LC222 add x0, x0, :lo12:.LC222 - str x0, [x29,120] - adrp x0, .LC221 - add x0, x0, :lo12:.LC221 str x0, [x29,112] -.L2806: +.L2807: cmp w23, w24 - beq .L2838 + beq .L2839 adrp x0, .LANCHOR4 add x0, x0, :lo12:.LANCHOR4 ldr x0, [x0,1136] ldr w2, [x0,w23,sxtw 2] cmn w2, #1 - beq .L2807 + beq .L2808 add x0, x19, :lo12:.LANCHOR0 ldrb w0, [x0,2832] lsl w0, w0, 7 @@ -17508,27 +17520,27 @@ gc_update_l2p_map_new: and w0, w0, 65535 str w0, [x29,140] ldr w0, [x22,#:lo12:.LANCHOR2] - tbz x0, 8, .L2808 + tbz x0, 8, .L2809 ldr x0, [x29,112] mov w3, w23 ldr w1, [x29,140] bl printk -.L2808: +.L2809: mov w25, w23 -.L2814: +.L2815: add x1, x27, :lo12:.LANCHOR4 sbfiz x26, x25, 2, 32 ldr x0, [x1,1136] ldr w4, [x0,x26] cmn w4, #1 - beq .L2809 + beq .L2810 add x0, x19, :lo12:.LANCHOR0 ldr w2, [x29,140] ldrb w0, [x0,2832] lsl w0, w0, 7 udiv w0, w4, w0 cmp w2, w0, uxth - bne .L2809 + bne .L2810 ldr x0, [x1,1144] str x4, [x29,104] ldr w28, [x0,x26] @@ -17537,16 +17549,16 @@ gc_update_l2p_map_new: str w0, [x29,156] cmn w0, #1 ldr x4, [x29,104] - bne .L2810 + bne .L2811 mov w0, w4 add x1, x29, 156 mov w2, 0 bl pm_log2phys ldr x4, [x29,104] -.L2810: +.L2811: ldr w3, [x29,156] cmp w3, w28 - bne .L2811 + bne .L2812 add x0, x27, :lo12:.LANCHOR4 add x1, x29, 152 mov w2, 1 @@ -17567,60 +17579,60 @@ gc_update_l2p_map_new: and w28, w0, w28 ldrb w0, [x2,3338] udiv w0, w28, w0 - b .L2837 -.L2811: + b .L2838 +.L2812: ldr w0, [x22,#:lo12:.LANCHOR2] - tbz x0, 8, .L2813 + tbz x0, 8, .L2814 ldr x0, [x29,120] mov w1, w4 mov w2, w28 bl printk -.L2813: +.L2814: ldr x0, [x29,128] ldrh w0, [x0] -.L2837: +.L2838: bl ftl_vpn_decrement add x0, x27, :lo12:.LANCHOR4 mov w1, -1 ldr x0, [x0,1136] str w1, [x0,x26] bl timer_get_time -.L2809: +.L2810: add w25, w25, 1 cmp w25, w24 - bne .L2814 -.L2807: + bne .L2815 +.L2808: add w23, w23, 1 - b .L2806 -.L2838: + b .L2807 +.L2839: ldr w0, [x22,#:lo12:.LANCHOR2] - tbz x0, 8, .L2816 + tbz x0, 8, .L2817 add x0, x19, :lo12:.LANCHOR0 ldrh w3, [x20,80] ldr x1, [x0,608] ldr x2, [x0,600] - adrp x0, .LC223 - add x0, x0, :lo12:.LC223 + adrp x0, .LC224 + add x0, x0, :lo12:.LC224 ldrh w1, [x1,80] ldrh w2, [x2,x3,lsl 1] mov w3, w21 bl printk -.L2816: +.L2817: add x0, x19, :lo12:.LANCHOR0 ldrh w1, [x20,80] ldr x0, [x0,600] ldrh w0, [x0,x1,lsl 1] cmp w0, w21 - beq .L2817 + beq .L2818 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 488 + mov w2, 489 add x1, x1, 592 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2817: +.L2818: add x19, x19, :lo12:.LANCHOR0 ldrh w1, [x20,80] ldr x0, [x19,600] @@ -17655,48 +17667,48 @@ gc_scan_src_blk_one_page: ldrb w7, [x3,3276] ldrh w1, [x1,40] ldrh w3, [x2,2] -.L2840: +.L2841: cmp w1, w6 - bne .L2882 + bne .L2883 add w0, w0, 1 uxtb w0, w0 cmp w0, w7 - bne .L2841 + bne .L2842 add w3, w3, 1 mov w4, 1 mov w0, 0 uxth w3, w3 -.L2841: +.L2842: add x1, x2, x0, sxtw 1 mov w5, 1 ldrh w1, [x1,40] - b .L2840 -.L2882: - cbz w5, .L2843 + b .L2841 +.L2883: + cbz w5, .L2844 add x2, x19, :lo12:.LANCHOR0 strb w0, [x2,2900] -.L2843: - cbz w4, .L2844 +.L2844: + cbz w4, .L2845 add x0, x19, :lo12:.LANCHOR0 strh w3, [x0,2898] -.L2844: +.L2845: add x0, x19, :lo12:.LANCHOR0 ldrb w2, [x0,3257] ldrh w20, [x0,3350] cmp w2, 2 mul w1, w1, w20 - bne .L2845 + bne .L2846 ldrb w2, [x0,2902] add x0, x0, 2896 - cbnz w2, .L2845 + cbnz w2, .L2846 ldrh w20, [x0,2] add w20, w1, w20, lsl 1 - b .L2846 -.L2845: + b .L2847 +.L2846: add x0, x19, :lo12:.LANCHOR0 ldrh w20, [x0,2898] add w20, w1, w20 -.L2846: +.L2847: add x2, x19, :lo12:.LANCHOR0 add x1, x2, 2896 ldrb w0, [x2,2900] @@ -17705,26 +17717,26 @@ gc_scan_src_blk_one_page: strb w0, [x2,2900] ldrb w2, [x2,3276] cmp w2, w0 - bne .L2847 + bne .L2848 ldrh w0, [x1,2] strb wzr, [x1,4] add w0, w0, 1 strh w0, [x1,2] -.L2847: +.L2848: mov w0, 1 mov w21, 0 add x19, x19, :lo12:.LANCHOR0 bl buf_alloc mov x22, x0 -.L2858: - ldrb w0, [x19,2902] - cbnz w21, .L2860 - cmp w0, 3 - beq .L2848 -.L2860: - cmp w0, w21 - bgt .L2850 .L2859: + ldrb w0, [x19,2902] + cbnz w21, .L2861 + cmp w0, 3 + beq .L2849 +.L2861: + cmp w0, w21 + bgt .L2851 +.L2860: mov x0, x22 bl buf_free ldr x23, [sp,48] @@ -17732,56 +17744,56 @@ gc_scan_src_blk_one_page: ldp x21, x22, [sp,32] ldp x29, x30, [sp], 80 ret -.L2850: +.L2851: ldrb w1, [x19,3257] cmp w1, 2 - bne .L2851 - cbnz w0, .L2851 + bne .L2852 + cbnz w0, .L2852 add w0, w21, w20 orr w0, w0, 33554432 - b .L2881 -.L2851: + b .L2882 +.L2852: orr w0, w20, w21, lsl 24 -.L2881: +.L2882: str w0, [x22,40] mov w1, 1 mov x0, x22 bl sblk_read_page ldr w0, [x22,52] cmp w0, 512 - beq .L2855 + beq .L2856 cmn w0, #1 - beq .L2855 + beq .L2856 ldr x0, [x22,24] ldr w23, [x0,4] mov w0, w23 bl lpa_hash_get_ppa str w0, [x29,76] cmn w0, #1 - bne .L2856 + bne .L2857 mov w0, w23 add x1, x29, 76 mov w2, 0 bl pm_log2phys -.L2856: +.L2857: ldr w0, [x29,76] cmp w20, w0 - bne .L2855 + bne .L2856 ldrh w2, [x19,2920] ldr x1, [x19,3248] str w20, [x1,x2,lsl 2] ldrh w1, [x19,2920] add w1, w1, 1 strh w1, [x19,2920] -.L2855: +.L2856: ldrh w0, [x19,2922] add w0, w0, 1 strh w0, [x19,2922] -.L2848: +.L2849: add w21, w21, 1 cmp w21, 4 - bne .L2858 - b .L2859 + bne .L2859 + b .L2860 .size gc_scan_src_blk_one_page, .-gc_scan_src_blk_one_page .align 2 .global gc_scan_src_blk @@ -17798,32 +17810,32 @@ gc_scan_src_blk: ldrh w1, [x0,2896] mov w0, 65535 cmp w1, w0 - bne .L2884 + bne .L2885 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 925 + mov w2, 926 add x1, x1, 616 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2884: +.L2885: add x2, x19, :lo12:.LANCHOR0 mov w3, 65535 mov w0, 0 ldrh w1, [x2,2896] cmp w1, w3 - beq .L2885 + beq .L2886 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L2886 + tbz x0, 8, .L2887 ubfiz x3, x1, 1, 16 ldr x2, [x2,600] - adrp x0, .LC224 - add x0, x0, :lo12:.LC224 + adrp x0, .LC225 + add x0, x0, :lo12:.LC225 ldrh w2, [x2,x3] bl printk -.L2886: +.L2887: add x20, x19, :lo12:.LANCHOR0 bl timer_get_time add x21, x20, 2896 @@ -17832,74 +17844,74 @@ gc_scan_src_blk: bl ftl_get_blk_list_in_sblk uxtb w1, w0 strb w1, [x21,5] - cbnz w1, .L2887 + cbnz w1, .L2888 mov w0, -1 strh w0, [x20,2896] - b .L2913 -.L2887: + b .L2914 +.L2888: ldrh w3, [x20,2896] ldr x2, [x20,584] add x2, x2, x3, lsl 2 ldrb w2, [x2,2] tst w2, 192 and w4, w2, 224 - beq .L2888 + beq .L2889 cmp w4, 224 - beq .L2888 + beq .L2889 ldr x2, [x20,608] ldrh w5, [x2,16] cmp w5, w3 - beq .L2888 + beq .L2889 ldrh w5, [x2,48] cmp w5, w3 - beq .L2888 + beq .L2889 ldrh w2, [x2,80] cmp w2, w3 - bne .L2889 -.L2888: - cbnz w4, .L2890 + bne .L2890 +.L2889: + cbnz w4, .L2891 add x0, x19, :lo12:.LANCHOR0 ldr x0, [x0,600] ldrh w0, [x0,x3,lsl 1] - cbz w0, .L2891 + cbz w0, .L2892 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 945 + mov w2, 946 add x1, x1, 616 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2891: +.L2892: add x0, x19, :lo12:.LANCHOR0 ldrh w1, [x0,2896] ldr x0, [x0,600] strh wzr, [x0,x1,lsl 1] -.L2890: +.L2891: add x19, x19, :lo12:.LANCHOR0 mov w0, -1 strh wzr, [x19,2920] strh w0, [x19,2896] -.L2913: +.L2914: mov w0, 0 - b .L2885 -.L2889: + b .L2886 +.L2890: and w0, w0, 255 sub w0, w0, #1 add x0, x21, x0, sxtw 1 ldrh w20, [x0,40] mov w0, 65535 cmp w20, w0 - bne .L2892 + bne .L2893 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 953 + mov w2, 954 add x1, x1, 616 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2892: +.L2893: add x2, x19, :lo12:.LANCHOR0 mov w24, 1 ldrh w3, [x2,2896] @@ -17913,16 +17925,16 @@ gc_scan_src_blk: mul w1, w20, w1 and w3, w3, 224 cmp w3, 160 - bne .L2893 + bne .L2894 ldrb w3, [x2,3257] cmp w3, 2 uxth w24, w3 orr w1, w1, w3, lsl 24 - bne .L2893 + bne .L2894 ldrh w0, [x2,3274] sub w0, w0, #1 uxth w0, w0 -.L2893: +.L2894: add x20, x19, :lo12:.LANCHOR0 orr w23, w0, w1 mov w0, 1 @@ -17945,29 +17957,29 @@ gc_scan_src_blk: strh wzr, [x20,2920] ldr w0, [x21,52] cmp w0, 512 - beq .L2914 + beq .L2915 cmn w0, #1 - beq .L2914 + beq .L2915 ldr x0, [x21,24] ldr w1, [x0] mov w0, 15555 movk w0, 0xf55f, lsl 16 cmp w1, w0 - beq .L2896 + beq .L2897 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 985 + mov w2, 986 add x1, x1, 616 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2914: +.L2915: mov x0, x21 bl buf_free mov w0, -1 - b .L2885 -.L2896: + b .L2886 +.L2897: ldrb w0, [x20,3276] mov x26, 0 ldrh w22, [x20,3300] @@ -17977,21 +17989,21 @@ gc_scan_src_blk: mul w22, w24, w22 mov w24, 21 uxth w22, w22 -.L2897: +.L2898: cmp w22, w26 - ble .L2915 + ble .L2916 ldr w0, [x23,x26,lsl 2] cmn w0, #1 - beq .L2899 + beq .L2900 bl lpa_hash_get_ppa str w0, [x29,92] cmn w0, #1 - bne .L2900 + bne .L2901 ldr w0, [x23,x26,lsl 2] add x1, x29, 92 mov w2, 0 bl pm_log2phys -.L2900: +.L2901: ldrh w1, [x20,3340] ldr w2, [x29,92] sub w0, w24, w1 @@ -18003,18 +18015,18 @@ gc_scan_src_blk: ldrb w0, [x20,3338] udiv w1, w1, w0 cmp w1, w3 - bne .L2899 + bne .L2900 ldrh w3, [x20,2920] ldr x1, [x20,3248] str w2, [x1,x3,lsl 2] ldrh w1, [x20,2920] add w1, w1, 1 strh w1, [x20,2920] -.L2899: +.L2900: bl timer_get_time add x26, x26, 1 - b .L2897 -.L2915: + b .L2898 +.L2916: mov x0, x21 bl buf_free add x0, x19, :lo12:.LANCHOR0 @@ -18024,11 +18036,11 @@ gc_scan_src_blk: ldrh w2, [x3,x2] ldrh w3, [x0,2920] cmp w2, w3 - beq .L2903 - adrp x0, .LC225 - add x0, x0, :lo12:.LC225 + beq .L2904 + adrp x0, .LC226 + add x0, x0, :lo12:.LC226 bl printk -.L2903: +.L2904: add x19, x19, :lo12:.LANCHOR0 ldrh w2, [x19,2896] ldr x1, [x19,600] @@ -18036,7 +18048,7 @@ gc_scan_src_blk: strh w3, [x1,x2,lsl 1] strh wzr, [x19,2924] ldrh w0, [x19,2920] -.L2885: +.L2886: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -18058,14 +18070,14 @@ gc_scan_static_data: ldr x0, [x3,608] ldr w1, [x0,544] cmn w1, #1 - beq .L2917 + beq .L2918 adrp x21, .LANCHOR3 adrp x22, .LC0 add x21, x21, :lo12:.LANCHOR3 mov w20, 11 add x22, x22, :lo12:.LC0 add x21, x21, 632 -.L2918: +.L2919: add x24, x19, :lo12:.LANCHOR0 add x1, x29, 76 mov w2, 0 @@ -18074,7 +18086,7 @@ gc_scan_static_data: bl pm_log2phys ldr w0, [x29,76] cmn w0, #1 - beq .L2919 + beq .L2920 mov w0, 1 bl buf_alloc mov x23, x0 @@ -18084,7 +18096,7 @@ gc_scan_static_data: bl sblk_read_page ldr w0, [x23,52] cmp w0, 256 - bne .L2920 + bne .L2921 ldrh w0, [x24,3340] mov w2, 21 mov w1, 1 @@ -18098,23 +18110,23 @@ gc_scan_static_data: udiv w0, w2, w0 mov w2, 0 bl gc_add_sblk -.L2920: +.L2921: add x0, x19, :lo12:.LANCHOR0 ldr x1, [x23,24] ldr x0, [x0,608] ldr w1, [x1,4] ldr w0, [x0,544] cmp w1, w0 - beq .L2921 + beq .L2922 mov x1, x21 - mov w2, 1424 + mov w2, 1425 mov x0, x22 bl printk bl dump_stack -.L2921: +.L2922: mov x0, x23 bl buf_free -.L2919: +.L2920: add x2, x19, :lo12:.LANCHOR0 ldr x1, [x2,608] ldr w2, [x2,2840] @@ -18122,7 +18134,7 @@ gc_scan_static_data: add w0, w0, 1 str w0, [x1,544] cmp w0, w2 - bcc .L2922 + bcc .L2923 mov w0, -1 str w0, [x1,544] ldr w0, [x1,548] @@ -18133,37 +18145,37 @@ gc_scan_static_data: bl ftl_ext_info_flush mov w0, 0 bl ftl_info_flush - b .L2916 -.L2922: + b .L2917 +.L2923: ldr w0, [x29,76] cmn w0, #1 - bne .L2916 + bne .L2917 sub w20, w20, #1 uxth w20, w20 - cbnz w20, .L2918 - b .L2916 -.L2917: + cbnz w20, .L2919 + b .L2917 +.L2918: ldr w1, [x0,536] ldr w2, [x0,12] add w1, w1, 12959744 add w1, w1, 256 cmp w2, w1 - bhi .L2927 + bhi .L2928 ldr x3, [x3,2864] ldr w1, [x0,540] ldr w3, [x3,44] add w1, w1, 98304 add w1, w1, 1696 cmp w3, w1 - bls .L2916 -.L2927: + bls .L2917 +.L2928: add x19, x19, :lo12:.LANCHOR0 ldr x1, [x19,2864] ldr w1, [x1,44] str w1, [x0,540] str w2, [x0,536] str wzr, [x0,544] -.L2916: +.L2917: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -18187,45 +18199,45 @@ gc_block_vpn_scan: ldrh w0, [x20,576] ldr w1, [x1,608] cmp w1, w0 - bcs .L2932 + bcs .L2933 bl timer_get_time ldr x21, [x20,608] ldr w1, [x21,604] add w1, w1, 28672 add w1, w1, 1328 cmp w0, w1 - bls .L2932 + bls .L2933 bl timer_get_time str w0, [x21,604] ldr x0, [x20,608] ldrh w2, [x20,576] ldr w1, [x0,600] cmp w1, w2 - bcs .L2936 + bcs .L2937 ldr x2, [x20,2864] ldrh w2, [x2,134] cmp w1, w2 - bcs .L2937 -.L2936: + bcs .L2938 +.L2937: add x1, x19, :lo12:.LANCHOR0 ldr x1, [x1,2864] ldrh w1, [x1,134] str w1, [x0,600] -.L2937: +.L2938: ldr w25, [x0,600] mov w0, 65535 uxth w20, w25 cmp w20, w0 - bne .L2938 + bne .L2939 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 1717 + mov w2, 1720 add x1, x1, 656 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2938: +.L2939: add x21, x19, :lo12:.LANCHOR0 ldr x0, [x21,608] ldr w1, [x0,600] @@ -18238,47 +18250,47 @@ gc_block_vpn_scan: mov w0, w20 bl ftl_get_blk_list_in_sblk uxth w1, w0 - cbz w1, .L2932 + cbz w1, .L2933 uxtw x22, w20 ldr x24, [x21,584] add x24, x24, x22, lsl 2 ldrb w1, [x24,2] tst w1, 192 and w2, w1, 224 - beq .L2939 + beq .L2940 cmp w2, 224 - beq .L2939 + beq .L2940 ldr x1, [x21,608] ldrh w3, [x1,16] cmp w3, w20 - beq .L2939 + beq .L2940 ldrh w3, [x1,48] cmp w3, w20 - beq .L2939 + beq .L2940 ldrh w1, [x1,80] cmp w1, w20 - bne .L2940 -.L2939: - cbnz w2, .L2932 + bne .L2941 +.L2940: + cbnz w2, .L2933 add x0, x19, :lo12:.LANCHOR0 lsl x22, x22, 1 ldr x0, [x0,600] ldrh w0, [x0,x22] - cbz w0, .L2941 + cbz w0, .L2942 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 1733 + mov w2, 1736 add x1, x1, 656 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2941: +.L2942: add x19, x19, :lo12:.LANCHOR0 ldr x0, [x19,600] strh wzr, [x0,x22] - b .L2932 -.L2940: + b .L2933 +.L2941: and w0, w0, 65535 add x1, x29, 144 sub w0, w0, #1 @@ -18286,16 +18298,16 @@ gc_block_vpn_scan: ldrh w21, [x0,-16] mov w0, 65535 cmp w21, w0 - bne .L2943 + bne .L2944 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 1739 + mov w2, 1742 add x1, x1, 656 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2943: +.L2944: add x2, x19, :lo12:.LANCHOR0 ldrb w3, [x24,2] mov w26, 1 @@ -18306,16 +18318,16 @@ gc_block_vpn_scan: sub w0, w0, #1 mul w1, w21, w1 uxth w0, w0 - bne .L2944 + bne .L2945 ldrb w3, [x2,3257] cmp w3, 2 uxth w26, w3 orr w1, w1, w3, lsl 24 - bne .L2944 + bne .L2945 ldrh w0, [x2,3274] sub w0, w0, #1 uxth w0, w0 -.L2944: +.L2945: orr w21, w0, w1 mov w0, 1 bl buf_alloc @@ -18333,30 +18345,30 @@ gc_block_vpn_scan: bl ftl_memset ldr w0, [x23,52] cmp w0, 512 - beq .L2956 + beq .L2957 cmn w0, #1 cset w2, eq - cbz w2, .L2945 -.L2956: + cbz w2, .L2946 +.L2957: mov w0, w20 mov w1, 1 mov w2, 0 - b .L2969 -.L2945: + b .L2970 +.L2946: ldr x0, [x23,24] ldr w1, [x0] mov w0, 15555 movk w0, 0xf55f, lsl 16 cmp w1, w0 - beq .L2947 + beq .L2948 mov w0, w20 mov w1, 1 -.L2969: +.L2970: bl gc_add_sblk mov x0, x23 bl buf_free - b .L2932 -.L2947: + b .L2933 +.L2948: ldrb w0, [x21,3276] mov x27, 0 ldrh w1, [x21,3300] @@ -18367,22 +18379,22 @@ gc_block_vpn_scan: uxth w0, w26 ldr x26, [x23,8] str w0, [x29,108] -.L2948: +.L2949: ldr w0, [x29,108] cmp w0, w27 - ble .L2970 + ble .L2971 ldr w0, [x26,x27,lsl 2] cmn w0, #1 - beq .L2949 + beq .L2950 bl lpa_hash_get_ppa str w0, [x29,124] cmn w0, #1 - bne .L2950 + bne .L2951 ldr w0, [x26,x27,lsl 2] add x1, x29, 124 mov w2, 0 bl pm_log2phys -.L2950: +.L2951: add x4, x19, :lo12:.LANCHOR0 mov w1, 21 ldrh w0, [x4,3340] @@ -18396,39 +18408,39 @@ gc_block_vpn_scan: and w0, w2, w0 udiv w0, w0, w1 cmp w0, w28 - bne .L2949 + bne .L2950 add w21, w21, 1 uxth w21, w21 -.L2949: +.L2950: add x27, x27, 1 - b .L2948 -.L2970: + b .L2949 +.L2971: mov x0, x23 bl buf_free adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L2952 + tbz x0, 8, .L2953 add x0, x19, :lo12:.LANCHOR0 ldrb w4, [x24,2] uxth w1, w25 mov w3, w21 ubfx x4, x4, 5, 3 ldr x2, [x0,600] - adrp x0, .LC226 - add x0, x0, :lo12:.LC226 + adrp x0, .LC227 + add x0, x0, :lo12:.LC227 ldrh w2, [x2,x22,lsl 1] bl printk -.L2952: +.L2953: add x19, x19, :lo12:.LANCHOR0 cmp w21, 31 ldr x0, [x19,600] strh w21, [x0,x22,lsl 1] - bhi .L2932 + bhi .L2933 mov w0, w20 mov w1, 1 mov w2, 0 bl gc_add_sblk -.L2932: +.L2933: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -18460,9 +18472,9 @@ ftl_sblk_dump: add x1, x0, x25 ldrh w4, [x0,x25] ldr w5, [x0,x25] - adrp x0, .LC227 + adrp x0, .LC228 ldrb w3, [x1,2] - add x0, x0, :lo12:.LC227 + add x0, x0, :lo12:.LC228 mov w1, w20 and w4, w4, 2047 ubfx x2, x3, 5, 3 @@ -18472,19 +18484,19 @@ ftl_sblk_dump: mov w1, 65535 mov w0, 0 cmp w20, w1 - beq .L2972 + beq .L2973 ldrh w1, [x19,576] cmp w1, w20 - bls .L2972 + bls .L2973 ldr x0, [x19,584] mov w26, 1 add x0, x0, x25 ldrb w0, [x0,2] and w0, w0, 224 cmp w0, 160 - bne .L2973 + bne .L2974 ldrb w26, [x19,3257] -.L2973: +.L2974: add x1, x29, 192 mov w0, w20 strh w20, [x29,176] @@ -18505,8 +18517,8 @@ ftl_sblk_dump: mul w1, w1, w2 strh w1, [x29,182] ldr x1, [x0,584] - adrp x0, .LC228 - add x0, x0, :lo12:.LC228 + adrp x0, .LC229 + add x0, x0, :lo12:.LC229 add x1, x1, x25 ldrb w2, [x1,2] mov w1, w20 @@ -18515,56 +18527,56 @@ ftl_sblk_dump: mov w0, 1 bl buf_alloc mov x28, x0 - adrp x0, .LC182 + adrp x0, .LC183 str w22, [x29,152] - add x0, x0, :lo12:.LC182 + add x0, x0, :lo12:.LC183 str x0, [x29,120] adrp x0, .LANCHOR3 add x0, x0, :lo12:.LANCHOR3 add x0, x0, 680 str x0, [x29,112] -.L2974: +.L2975: add x21, x23, :lo12:.LANCHOR0 ldrh w0, [x21,3300] cmp w0, w19 - bls .L2990 + bls .L2991 lsl w0, w19, 1 str wzr, [x29,156] sub w0, w0, #1 str w0, [x29,132] -.L2991: +.L2992: ldrb w0, [x29,185] ldr w1, [x29,156] cmp w0, w1 - bls .L2988 + bls .L2989 mov w24, 1 -.L2989: +.L2990: cmp w24, w26 ldr w0, [x29,156] - bhi .L3008 + bhi .L3009 add x1, x29, 176 add x0, x1, x0, sxtw 1 ldrh w2, [x0,16] mov w0, 65535 cmp w2, w0 - beq .L2975 + beq .L2976 add x1, x23, :lo12:.LANCHOR0 cmp w26, 3 ldrh w0, [x1,3350] mul w0, w2, w0 add w21, w0, w19 - bne .L2976 - orr w21, w21, w24, lsl 24 - b .L2977 -.L2976: - cmp w26, 2 bne .L2977 + orr w21, w21, w24, lsl 24 + b .L2978 +.L2977: + cmp w26, 2 + bne .L2978 ldr w3, [x29,132] ldrb w21, [x1,3257] add w0, w0, w3 add w0, w0, w24 orr w21, w0, w21, lsl 24 -.L2977: +.L2978: mov w1, 1 str w21, [x28,40] mov x0, x28 @@ -18596,23 +18608,23 @@ ftl_sblk_dump: bl printk ldr x9, [x29,104] cmp w9, 512 - beq .L2995 + beq .L2996 cmn w9, #1 - bne .L2979 -.L2995: + bne .L2980 +.L2996: mov w0, 1 str w0, [x29,152] -.L2979: +.L2980: add x0, x23, :lo12:.LANCHOR0 ldr x0, [x0,584] add x0, x0, x25 ldrb w0, [x0,2] and w0, w0, 224 cmp w0, 32 - beq .L2975 + beq .L2976 cmp w0, 224 cset w2, eq - cbnz w2, .L2975 + cbnz w2, .L2976 ldr x0, [x28,24] str x2, [x29,104] ldr w0, [x0,4] @@ -18620,82 +18632,82 @@ ftl_sblk_dump: str w0, [x29,172] cmn w0, #1 ldr x2, [x29,104] - bne .L2981 + bne .L2982 ldr x0, [x28,24] add x1, x29, 172 ldr w0, [x0,4] bl pm_log2phys -.L2981: +.L2982: ldr w0, [x29,172] cmp w0, w21 - bne .L2982 + bne .L2983 ldr x2, [x28,24] add w22, w22, 1 - adrp x0, .LC229 + adrp x0, .LC230 mov w1, w21 - add x0, x0, :lo12:.LC229 + add x0, x0, :lo12:.LC230 mov w3, w22 ldr w2, [x2,4] bl printk -.L2982: +.L2983: ldr x0, [x29,144] - cbz x0, .L2984 + cbz x0, .L2985 ubfiz x21, x27, 2, 32 ldr w2, [x0,x21] ldr x0, [x28,24] ldr w0, [x0,4] cmp w0, w2 - beq .L2985 + beq .L2986 adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 12, .L2985 - adrp x0, .LC230 + tbz x0, 12, .L2986 + adrp x0, .LC231 mov w1, w27 - add x0, x0, :lo12:.LC230 + add x0, x0, :lo12:.LC231 bl printk -.L2985: +.L2986: ldr x0, [x29,144] ldr x1, [x28,24] ldr w0, [x0,x21] ldr w1, [x1,4] cmp w1, w0 - beq .L2984 + beq .L2985 cmn w0, #1 - beq .L2984 + beq .L2985 adrp x0, .LC0 ldr x1, [x29,112] - mov w2, 1300 + mov w2, 1299 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L2984: +.L2985: add w27, w27, 1 -.L2975: +.L2976: add w24, w24, 1 uxth w24, w24 - b .L2989 -.L3008: + b .L2990 +.L3009: add w0, w0, 1 uxth w0, w0 str w0, [x29,156] - b .L2991 -.L2988: + b .L2992 +.L2989: add w19, w19, 1 uxth w19, w19 - b .L2974 -.L2990: + b .L2975 +.L2991: mov x0, x28 bl buf_free ldr x3, [x29,136] - adrp x0, .LC231 + adrp x0, .LC232 ldr x2, [x21,600] - add x0, x0, :lo12:.LC231 + add x0, x0, :lo12:.LC232 mov w1, w20 ldrh w2, [x2,x3,lsl 1] mov w3, w22 bl printk ldr w0, [x29,152] -.L2972: +.L2973: sub sp, x29, #48 ldp x19, x20, [sp,64] ldp x21, x22, [sp,80] @@ -18723,30 +18735,30 @@ zftl_read: stp x27, x28, [sp,80] mov w25, w2 mov x23, x3 - tbz x0, 12, .L3010 - adrp x0, .LC232 + tbz x0, 12, .L3011 + adrp x0, .LC233 mov w1, w19 - add x0, x0, :lo12:.LC232 + add x0, x0, :lo12:.LC233 mov w2, w22 mov w3, w25 bl printk -.L3010: - cbnz w19, .L3011 +.L3011: + cbnz w19, .L3012 adrp x0, .LANCHOR0+520 mov w19, 24576 ldr w2, [x0,#:lo12:.LANCHOR0+520] - b .L3012 -.L3011: + b .L3013 +.L3012: cmp w19, 3 mov w0, -1 - bhi .L3013 + bhi .L3014 lsl w19, w19, 13 mov w2, 8192 -.L3012: +.L3013: add w1, w22, w25 mov w0, -1 cmp w1, w2 - bhi .L3013 + bhi .L3014 add w22, w19, w22 adrp x19, .LANCHOR0 add x1, x19, :lo12:.LANCHOR0 @@ -18771,8 +18783,8 @@ zftl_read: add x0, x0, :lo12:.LANCHOR3 add x0, x0, 696 str x0, [x29,120] -.L3014: - cbz w24, .L3074 +.L3015: + cbz w24, .L3075 add x0, x19, :lo12:.LANCHOR0 ldr w1, [x29,136] cmp w20, w27 @@ -18781,12 +18793,12 @@ zftl_read: ldrb w0, [x0,2832] cset w26, eq uxth w21, w0 - cbnz w26, .L3044 - cbz w2, .L3015 - b .L3073 -.L3044: - cbz w2, .L3017 -.L3073: + cbnz w26, .L3045 + cbz w2, .L3016 + b .L3074 +.L3045: + cbz w2, .L3018 +.L3074: udiv w26, w22, w0 msub w26, w26, w0, w22 uxth w0, w25 @@ -18795,21 +18807,21 @@ zftl_read: uxth w21, w21 cmp w21, w25 csel w21, w0, w21, hi - b .L3015 -.L3017: + b .L3016 +.L3018: msub w21, w0, w20, w28 mov w26, w2 uxtb w21, w21 -.L3015: +.L3016: add x1, x19, :lo12:.LANCHOR0 mov w0, 0 add x1, x1, 784 -.L3020: +.L3021: ldr w2, [x1,36] cmp w2, w20 - bne .L3018 + bne .L3019 ldrb w2, [x1,2] - tbz x2, 3, .L3018 + tbz x2, 3, .L3019 add x2, x19, :lo12:.LANCHOR0 ubfiz x1, x0, 6, 32 add x0, x2, x1 @@ -18821,48 +18833,48 @@ zftl_read: add x23, x23, x21 add x1, x1, x26 bl ftl_memcpy - b .L3019 -.L3018: + b .L3020 +.L3019: add w0, w0, 1 add x1, x1, 64 cmp w0, 32 - bne .L3020 + bne .L3021 mov w0, w20 bl lpa_hash_get_ppa str w0, [x29,156] cmn w0, #1 - bne .L3021 + bne .L3022 mov w0, w20 add x1, x29, 156 mov w2, 0 bl pm_log2phys -.L3021: +.L3022: ldr w0, [x29,156] cmn w0, #1 - bne .L3022 + bne .L3023 mov w21, 0 -.L3023: +.L3024: add x0, x19, :lo12:.LANCHOR0 ldrb w0, [x0,2832] cmp w21, w0 - bcs .L3019 + bcs .L3020 madd w0, w20, w0, w21 cmp w0, w22 - bcc .L3024 + bcc .L3025 cmp w0, w28 - bcs .L3024 + bcs .L3025 mov x0, x23 mov w1, 0 mov w2, 512 add x23, x23, 512 bl ftl_memset -.L3024: +.L3025: add w21, w21, 1 - b .L3023 -.L3022: + b .L3024 +.L3023: mov w0, 0 bl buf_alloc - cbz x0, .L3026 + cbz x0, .L3027 add x2, x19, :lo12:.LANCHOR0 ldr x3, [x2,2864] ldr w2, [x3,40] @@ -18878,36 +18890,36 @@ zftl_read: str w20, [x0,36] strb w26, [x0,57] bl zftl_add_read_buf -.L3019: +.L3020: add w20, w20, 1 sub w24, w24, #1 -.L3026: - cbz w24, .L3045 +.L3027: + cbz w24, .L3046 add x0, x19, :lo12:.LANCHOR0 ldrb w0, [x0,2834] cmp w0, 2 - bhi .L3014 -.L3045: + bhi .L3015 +.L3046: add x2, x19, :lo12:.LANCHOR0 ldrb w1, [x2,3894] - cbz w1, .L3014 + cbz w1, .L3015 add x0, x2, 784 ldrb w2, [x2,3893] add x0, x0, x2, lsl 6 bl sblk_read_page -.L3029: +.L3030: add x0, x19, :lo12:.LANCHOR0 ldrb w1, [x0,3894] - cbz w1, .L3075 + cbz w1, .L3076 ldrb w0, [x0,3893] cmp w0, 255 - bne .L3030 + bne .L3031 ldr x1, [x29,120] - mov w2, 1064 + mov w2, 1065 ldr x0, [x29,128] bl printk bl dump_stack -.L3030: +.L3031: add x2, x19, :lo12:.LANCHOR0 add x1, x2, 784 ldrb w21, [x2,3893] @@ -18917,16 +18929,16 @@ zftl_read: ldr w8, [x26,52] strb w0, [x2,3893] cmn w8, #1 - bne .L3031 + bne .L3032 ldr x1, [x2,608] str w8, [x29,140] ldr w0, [x1,552] add w0, w0, 1 str w0, [x1,552] - b .L3032 -.L3031: + b .L3033 +.L3032: cmp w8, 256 - bne .L3032 + bne .L3033 ldrh w0, [x2,3340] mov w1, 21 mov w5, 1 @@ -18941,8 +18953,8 @@ zftl_read: ldrb w4, [x2,3338] ldr w2, [x26,36] udiv w4, w0, w4 - adrp x0, .LC233 - add x0, x0, :lo12:.LC233 + adrp x0, .LC234 + add x0, x0, :lo12:.LC234 str x4, [x29,112] uxth w1, w4 bl printk @@ -18953,7 +18965,7 @@ zftl_read: mov w1, w5 bl gc_add_sblk ldr x8, [x29,96] -.L3032: +.L3033: add x9, x19, :lo12:.LANCHOR0 add x1, x9, 784 add x1, x1, x21, lsl 6 @@ -18962,7 +18974,7 @@ zftl_read: ldr w3, [x0,4] ldr w0, [x1,36] cmp w3, w0 - beq .L3033 + beq .L3034 ldr x3, [x9,608] str x8, [x29,96] str x9, [x29,104] @@ -18970,9 +18982,9 @@ zftl_read: str x10, [x29,112] add w0, w0, 1 str w0, [x3,552] - adrp x0, .LC234 + adrp x0, .LC235 ldr x7, [x1,24] - add x0, x0, :lo12:.LC234 + add x0, x0, :lo12:.LC235 ldr w2, [x10,4] ldr w3, [x10,8] ldr w4, [x7] @@ -18997,7 +19009,7 @@ zftl_read: mov x1, 0 bl ftl_sblk_dump ldr x8, [x29,96] -.L3033: +.L3034: add x0, x19, :lo12:.LANCHOR0 add x0, x0, 784 add x0, x0, x21, lsl 6 @@ -19005,35 +19017,35 @@ zftl_read: ldr w0, [x0,36] ldr w1, [x1,4] cmp w1, w0 - bne .L3046 + bne .L3047 cmn w8, #1 - bne .L3034 -.L3046: + bne .L3035 +.L3047: ldr x1, [x29,120] - mov w2, 1085 + mov w2, 1086 ldr x0, [x29,128] bl printk bl dump_stack -.L3034: +.L3035: add x1, x19, :lo12:.LANCHOR0 add x0, x1, 784 add x21, x0, x21, lsl 6 ldrb w1, [x1,2832] ldrb w2, [x21,56] cmp w1, w2 - bls .L3036 + bls .L3037 ldrb w3, [x21,57] lsl w2, w2, 9 ldr x1, [x21,8] ldr x0, [x21,16] add x1, x1, x3, lsl 9 bl ftl_memcpy - b .L3037 -.L3036: + b .L3038 +.L3037: ldrb w0, [x21,2] and w0, w0, -9 strb w0, [x21,2] -.L3037: +.L3038: add x21, x19, :lo12:.LANCHOR0 mov x1, x26 add x0, x21, 3895 @@ -19043,18 +19055,18 @@ zftl_read: ldrb w0, [x21,3894] sub w0, w0, #1 strb w0, [x21,3894] - b .L3029 -.L3075: + b .L3030 +.L3076: mov w2, -1 strb w1, [x0,3894] strb w2, [x0,3893] - b .L3014 -.L3074: + b .L3015 +.L3075: bl timer_get_time adrp x1, .LANCHOR7-80 str w0, [x1,#:lo12:.LANCHOR7-80] ldr w0, [x29,140] -.L3013: +.L3014: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -19109,34 +19121,34 @@ zftl_debug_proc_write: stp x23, x24, [sp,80] stp x25, x26, [sp,96] mov x21, x2 - bhi .L3079 + bhi .L3080 mov x0, x19 bl rk_copy_from_user mov x22, x0 mov x0, -14 - cbnz x22, .L3079 - adrp x0, .LC235 - mov x1, x19 - add x0, x0, :lo12:.LC235 - strb w22, [x19,x21] - bl printk + cbnz x22, .L3080 adrp x0, .LC236 mov x1, x19 add x0, x0, :lo12:.LC236 + strb w22, [x19,x21] + bl printk + adrp x0, .LC237 + mov x1, x19 + add x0, x0, :lo12:.LC237 mov w2, 1 mov w3, 16 bl rknand_print_hex bl rknand_device_lock - adrp x1, .LC237 + adrp x1, .LC238 mov x0, x19 - add x1, x1, :lo12:.LC237 + add x1, x1, :lo12:.LC238 mov x2, 7 bl memcmp - cbnz w0, .L3080 + cbnz w0, .L3081 adrp x23, .LANCHOR0 - adrp x0, .LC238 + adrp x0, .LC239 add x19, x23, :lo12:.LANCHOR0 - add x0, x0, :lo12:.LC238 + add x0, x0, :lo12:.LC239 mov w2, 4 adrp x20, .LANCHOR4 ldr x3, [x19,2864] @@ -19145,19 +19157,19 @@ zftl_debug_proc_write: bl rknand_print_hex add x3, x20, :lo12:.LANCHOR4 ldr x1, [x19,2864] - adrp x0, .LC239 + adrp x0, .LC240 mov w2, 2 - add x0, x0, :lo12:.LC239 + add x0, x0, :lo12:.LC240 add x1, x1, 416 ldrh w3, [x3,1164] mov w19, w22 mov w22, 65535 bl rknand_print_hex -.L3081: +.L3082: add x0, x20, :lo12:.LANCHOR4 ldrh w0, [x0,1164] cmp w19, w0 - bge .L3084 + bge .L3085 mov w0, 300 bl msleep add x0, x23, :lo12:.LANCHOR0 @@ -19165,63 +19177,63 @@ zftl_debug_proc_write: add x0, x0, x19, sxtw 1 ldrh w0, [x0,416] cmp w0, w22 - beq .L3082 + beq .L3083 mov x1, 0 bl ftl_sblk_dump -.L3082: +.L3083: add w19, w19, 1 - b .L3081 -.L3080: - adrp x1, .LC240 + b .L3082 +.L3081: + adrp x1, .LC241 mov x0, x19 - add x1, x1, :lo12:.LC240 + add x1, x1, :lo12:.LC241 mov x2, 7 bl memcmp - cbnz w0, .L3085 + cbnz w0, .L3086 adrp x23, .LANCHOR0 - adrp x0, .LC238 + adrp x0, .LC239 add x20, x23, :lo12:.LANCHOR0 - add x0, x0, :lo12:.LC238 + add x0, x0, :lo12:.LC239 mov w2, 4 add x22, x29, 192 - adrp x24, .LC243 + adrp x24, .LC244 ldr x3, [x20,2864] - add x24, x24, :lo12:.LC243 + add x24, x24, :lo12:.LC244 add x1, x3, 704 ldrh w3, [x3,698] bl rknand_print_hex adrp x3, .LANCHOR4+1164 ldr x1, [x20,2864] - adrp x0, .LC239 + adrp x0, .LC240 mov w2, 2 - add x0, x0, :lo12:.LC239 + add x0, x0, :lo12:.LC240 add x1, x1, 416 ldrh w3, [x3,#:lo12:.LANCHOR4+1164] bl rknand_print_hex - adrp x0, .LC241 + adrp x0, .LC242 add x1, x19, 7 - add x0, x0, :lo12:.LC241 + add x0, x0, :lo12:.LC242 str x1, [x22,-88]! add x19, x20, 3904 mov x20, x23 bl printk - adrp x23, .LC242 + adrp x23, .LC243 ldr x0, [x29,104] mov x1, x22 add x25, x19, 512 - add x23, x23, :lo12:.LC242 + add x23, x23, :lo12:.LC243 bl rk_simple_strtoull.constprop.31 mov w22, w0 str w0, [x29,100] uxth w26, w0 -.L3087: +.L3088: ldrh w1, [x19] mov x0, x23 ldrh w2, [x19,2] bl printk ldrh w0, [x19] cmp w0, w26 - bne .L3086 + bne .L3087 add x0, x20, :lo12:.LANCHOR0 ldr x1, [x19,8] mov w2, 4 @@ -19229,10 +19241,10 @@ zftl_debug_proc_write: mov x0, x24 lsl w3, w3, 7 bl rknand_print_hex -.L3086: +.L3087: add x19, x19, 16 cmp x19, x25 - bne .L3087 + bne .L3088 mov w0, 300 add x20, x20, :lo12:.LANCHOR0 bl msleep @@ -19255,8 +19267,8 @@ zftl_debug_proc_write: str w0, [sp,8] ldr w0, [x7,12] str w0, [sp,16] - adrp x0, .LC205 - add x0, x0, :lo12:.LC205 + adrp x0, .LC206 + add x0, x0, :lo12:.LC206 ldr w3, [x6] ldr w2, [x19,52] ldr w4, [x6,4] @@ -19265,28 +19277,28 @@ zftl_debug_proc_write: ldr w6, [x6,12] bl printk ldrb w3, [x20,2832] - adrp x0, .LC244 - add x0, x0, :lo12:.LC244 + adrp x0, .LC245 + add x0, x0, :lo12:.LC245 ldr x1, [x19,8] mov w2, 4 lsl w3, w3, 7 - b .L3102 -.L3085: - adrp x1, .LC245 - mov x0, x19 - add x1, x1, :lo12:.LC245 - mov x2, 7 - bl memcmp - cbnz w0, .L3088 - bl dump_ftl_info - b .L3084 -.L3088: + b .L3103 +.L3086: adrp x1, .LC246 mov x0, x19 add x1, x1, :lo12:.LC246 - mov x2, 9 + mov x2, 7 bl memcmp cbnz w0, .L3089 + bl dump_ftl_info + b .L3085 +.L3089: + adrp x1, .LC247 + mov x0, x19 + add x1, x1, :lo12:.LC247 + mov x2, 9 + bl memcmp + cbnz w0, .L3090 add x1, x29, 192 add x0, x19, 9 str x0, [x1,-88]! @@ -19295,24 +19307,24 @@ zftl_debug_proc_write: adrp x1, .LANCHOR0+3336 strh w0, [x1,#:lo12:.LANCHOR0+3336] bl dump_all_list_info - b .L3084 -.L3089: - adrp x1, .LC247 - mov x0, x19 - add x1, x1, :lo12:.LC247 - mov x2, 8 - bl memcmp - cbz w0, .L3084 + b .L3085 +.L3090: adrp x1, .LC248 mov x0, x19 add x1, x1, :lo12:.LC248 mov x2, 8 bl memcmp - cbnz w0, .L3091 + cbz w0, .L3085 + adrp x1, .LC249 + mov x0, x19 + add x1, x1, :lo12:.LC249 + mov x2, 8 + bl memcmp + cbnz w0, .L3092 add x20, x29, 192 - adrp x0, .LC241 + adrp x0, .LC242 add x1, x19, 8 - add x0, x0, :lo12:.LC241 + add x0, x0, :lo12:.LC242 str x1, [x20,-88]! bl printk ldr x0, [x29,104] @@ -19337,8 +19349,8 @@ zftl_debug_proc_write: str w0, [sp,8] ldr w0, [x7,12] str w0, [sp,16] - adrp x0, .LC205 - add x0, x0, :lo12:.LC205 + adrp x0, .LC206 + add x0, x0, :lo12:.LC206 ldr w3, [x6] ldr w4, [x6,4] ldr w5, [x6,8] @@ -19347,34 +19359,34 @@ zftl_debug_proc_write: ldr w7, [x7] bl printk ldrb w3, [x20,2832] - adrp x0, .LC200 + adrp x0, .LC201 ldr x1, [x19,8] - add x0, x0, :lo12:.LC200 + add x0, x0, :lo12:.LC201 mov w2, 4 lsl w3, w3, 7 bl rknand_print_hex ldrb w3, [x20,2832] - adrp x0, .LC201 + adrp x0, .LC202 ldr x1, [x19,24] - add x0, x0, :lo12:.LC201 + add x0, x0, :lo12:.LC202 mov w2, 4 lsl w3, w3, 1 -.L3102: +.L3103: bl rknand_print_hex mov x0, x19 bl buf_free - b .L3084 -.L3091: - adrp x1, .LC249 + b .L3085 +.L3092: + adrp x1, .LC250 mov x0, x19 - add x1, x1, :lo12:.LC249 + add x1, x1, :lo12:.LC250 mov x2, 8 bl memcmp - cbnz w0, .L3092 + cbnz w0, .L3093 add x20, x29, 192 - adrp x0, .LC241 + adrp x0, .LC242 add x1, x19, 8 - add x0, x0, :lo12:.LC241 + add x0, x0, :lo12:.LC242 str x1, [x20,-88]! bl printk ldr x0, [x29,104] @@ -19383,18 +19395,18 @@ zftl_debug_proc_write: str w0, [x29,100] mov x1, x22 bl ftl_sblk_dump - b .L3084 -.L3092: - adrp x1, .LC250 + b .L3085 +.L3093: + adrp x1, .LC251 mov x0, x19 - add x1, x1, :lo12:.LC250 + add x1, x1, :lo12:.LC251 mov x2, 10 bl memcmp - cbnz w0, .L3093 + cbnz w0, .L3094 add x20, x29, 192 - adrp x0, .LC241 + adrp x0, .LC242 add x1, x19, 10 - add x0, x0, :lo12:.LC241 + add x0, x0, :lo12:.LC242 str x1, [x20,-88]! bl printk ldr x0, [x29,104] @@ -19403,20 +19415,20 @@ zftl_debug_proc_write: str w0, [x29,100] adrp x1, .LANCHOR2 str w0, [x1,#:lo12:.LANCHOR2] - b .L3084 -.L3093: - adrp x1, .LC251 + b .L3085 +.L3094: + adrp x1, .LC252 mov x2, 8 mov x0, x19 - add x1, x1, :lo12:.LC251 + add x1, x1, :lo12:.LC252 bl memcmp mov w2, w0 str x2, [x29,88] - cbnz w0, .L3094 + cbnz w0, .L3095 add x1, x19, 8 - adrp x0, .LC241 + adrp x0, .LC242 add x19, x29, 192 - add x0, x0, :lo12:.LC241 + add x0, x0, :lo12:.LC242 str x1, [x19,-88]! bl printk ldr x0, [x29,104] @@ -19427,21 +19439,18 @@ zftl_debug_proc_write: str w0, [x29,100] cmn w0, #1 ldr x2, [x29,88] - bne .L3095 + bne .L3096 mov w0, w19 add x1, x29, 100 bl pm_log2phys -.L3095: - adrp x0, .LC252 +.L3096: + adrp x0, .LC253 ldr w2, [x29,100] mov w1, w19 - add x0, x0, :lo12:.LC252 - bl printk - b .L3084 -.L3094: - adrp x0, .LC253 add x0, x0, :lo12:.LC253 bl printk + b .L3085 +.L3095: adrp x0, .LC254 add x0, x0, :lo12:.LC254 bl printk @@ -19466,10 +19475,13 @@ zftl_debug_proc_write: adrp x0, .LC261 add x0, x0, :lo12:.LC261 bl printk -.L3084: + adrp x0, .LC262 + add x0, x0, :lo12:.LC262 + bl printk +.L3085: bl rknand_device_unlock mov x0, x21 -.L3079: +.L3080: sub sp, x29, #32 ldp x19, x20, [sp,48] ldp x21, x22, [sp,64] @@ -19496,38 +19508,38 @@ gc_check_data_one_wl: ldr x0, [x20,2904] ldr x23, [x20,608] add x20, x20, 2896 - cbnz x0, .L3104 + cbnz x0, .L3105 mov w0, 1 bl buf_alloc str x0, [x20,8] -.L3104: +.L3105: add x0, x19, :lo12:.LANCHOR0 ldr x20, [x0,2904] - cbnz x20, .L3105 + cbnz x20, .L3106 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 366 + mov w2, 367 add x1, x1, 712 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L3105: +.L3106: mov w24, 0 add x25, x23, 80 add x21, x19, :lo12:.LANCHOR0 adrp x27, .LANCHOR4 -.L3106: +.L3107: ldrb w0, [x25,9] cmp w24, w0 - bge .L3129 + bge .L3130 mov w22, 1 sxtw x28, w24 -.L3115: +.L3116: add x0, x21, 2896 ldrh w1, [x0,20] cmp w22, w1 - bgt .L3130 + bgt .L3131 add x1, x28, 8 ldrh w2, [x21,3350] ldrh w0, [x0,16] @@ -19535,28 +19547,28 @@ gc_check_data_one_wl: mul w1, w1, w2 ldrb w2, [x21,3257] cmp w2, 3 - bne .L3107 + bne .L3108 add w1, w1, w0 orr w1, w1, w22, lsl 24 - b .L3128 -.L3107: + b .L3129 +.L3108: cmp w2, 2 - bne .L3109 + bne .L3110 sub w0, w0, #1 add w1, w0, w1 add w1, w1, w22 orr w1, w1, 33554432 - b .L3128 -.L3109: + b .L3129 +.L3110: add w1, w1, w0 -.L3128: +.L3129: str w1, [x20,40] mov x0, x20 mov w1, 1 bl sblk_read_page ldr w0, [x20,52] cmn w0, #1 - beq .L3110 + beq .L3111 add x2, x27, :lo12:.LANCHOR4 ldrh w0, [x21,2918] ldr x1, [x20,24] @@ -19565,32 +19577,32 @@ gc_check_data_one_wl: ldr w4, [x3,x0] ldr w3, [x1,4] cmp w4, w3 - bne .L3110 + bne .L3111 ldr x2, [x2,1144] ldr w2, [x2,x0] ldr w0, [x1,8] cmp w2, w0 - beq .L3111 -.L3110: + beq .L3112 +.L3111: add x26, x27, :lo12:.LANCHOR4 ldrh w0, [x21,2918] add x4, x21, 2896 ldr x1, [x26,1136] ldr w0, [x1,x0,lsl 2] cmn w0, #1 - beq .L3111 + beq .L3112 ldrb w5, [x25,9] - adrp x0, .LC262 + adrp x0, .LC263 ldrh w3, [x21,3274] - add x0, x0, :lo12:.LC262 + add x0, x0, :lo12:.LC263 mov w2, 4 str x4, [x29,104] mul w3, w5, w3 bl rknand_print_hex ldrb w5, [x25,9] - adrp x0, .LC263 + adrp x0, .LC264 ldrh w3, [x21,3274] - add x0, x0, :lo12:.LC263 + add x0, x0, :lo12:.LC264 ldr x1, [x26,1144] mov w2, 4 mul w3, w5, w3 @@ -19598,7 +19610,7 @@ gc_check_data_one_wl: adrp x0, .LANCHOR2 ldr x4, [x29,104] ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 10, .L3112 + tbz x0, 10, .L3113 ldr x7, [x20,24] ldrh w4, [x4,22] ldr x5, [x26,1144] @@ -19606,8 +19618,8 @@ gc_check_data_one_wl: lsl x4, x4, 2 ldr x3, [x26,1136] str w0, [sp] - adrp x0, .LC264 - add x0, x0, :lo12:.LC264 + adrp x0, .LC265 + add x0, x0, :lo12:.LC265 ldr w3, [x3,x4] ldr w6, [x7,4] ldr w4, [x5,x4] @@ -19616,7 +19628,7 @@ gc_check_data_one_wl: ldr w2, [x20,52] ldr w7, [x7,8] bl printk -.L3112: +.L3113: add x19, x19, :lo12:.LANCHOR0 mov x1, 0 ldr x0, [x19,608] @@ -19626,27 +19638,27 @@ gc_check_data_one_wl: ldrh w1, [x23,80] strh wzr, [x0,x1,lsl 1] mov w0, -1 - b .L3113 -.L3111: + b .L3114 +.L3112: ldrh w0, [x21,2918] add w22, w22, 1 add w0, w0, 1 strh w0, [x21,2918] - b .L3115 -.L3130: + b .L3116 +.L3131: add w24, w24, 1 - b .L3106 -.L3129: + b .L3107 +.L3130: add x19, x19, :lo12:.LANCHOR0 ldrh w1, [x19,2912] ldrb w3, [x19,3348] add w0, w1, 1 strh w0, [x19,2912] mov w0, 0 - cbz w3, .L3113 + cbz w3, .L3114 add w1, w1, 2 strh w1, [x19,2912] -.L3113: +.L3114: sub sp, x29, #16 ldp x19, x20, [sp,32] ldp x21, x22, [sp,48] @@ -19680,33 +19692,33 @@ ftl_update_l2p_map: add x0, x20, x24, sxtw 2 ldr w0, [x0,-4] cmn w0, #1 - beq .L3132 + beq .L3133 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 1576 + mov w2, 1575 add x1, x1, 736 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L3132: - adrp x0, .LC266 - mov x28, 0 - add x0, x0, :lo12:.LC266 - adrp x27, .LC265 - str x0, [x29,120] +.L3133: adrp x0, .LC267 + mov x28, 0 add x0, x0, :lo12:.LC267 + adrp x27, .LC266 + str x0, [x29,120] + adrp x0, .LC268 + add x0, x0, :lo12:.LC268 mov w22, w28 str x0, [x29,112] - add x27, x27, :lo12:.LC265 -.L3133: + add x27, x27, :lo12:.LC266 +.L3134: cmp w28, w24 mov w25, w28 - bge .L3160 + bge .L3161 ldr w2, [x20,x28,lsl 2] cmn w2, #1 - beq .L3134 + beq .L3135 add x0, x19, :lo12:.LANCHOR0 ldrb w21, [x0,2832] adrp x0, .LANCHOR2 @@ -19714,22 +19726,22 @@ ftl_update_l2p_map: ldr w0, [x0,#:lo12:.LANCHOR2] udiv w21, w2, w21 and w21, w21, 65535 - tbz x0, 12, .L3138 + tbz x0, 12, .L3139 mov x0, x27 mov w1, w21 mov w3, w28 bl printk -.L3138: +.L3139: sbfiz x26, x25, 2, 32 ldr w0, [x20,x26] cmn w0, #1 - beq .L3136 + beq .L3137 add x3, x19, :lo12:.LANCHOR0 ldrb w1, [x3,2832] lsl w1, w1, 7 udiv w0, w0, w1 cmp w21, w0, uxth - bne .L3136 + bne .L3137 ldrb w0, [x23,9] ldrh w2, [x3,3350] str x3, [x29,104] @@ -19743,13 +19755,13 @@ ftl_update_l2p_map: ldr w1, [x20,x26] bl pm_ppa_update_check ldr x3, [x29,104] - cbz w0, .L3137 + cbz w0, .L3138 ldr x1, [x3,3872] mov w2, 4 ldr x0, [x29,112] mov w3, w24 bl rknand_print_hex -.L3137: +.L3138: ldr w0, [x20,x26] add x1, x29, 140 mov w2, 1 @@ -19758,27 +19770,27 @@ ftl_update_l2p_map: uxth w22, w22 mov w0, -1 str w0, [x20,x26] -.L3136: +.L3137: add w25, w25, 1 cmp w25, w24 - bne .L3138 -.L3134: + bne .L3139 +.L3135: add x28, x28, 1 - b .L3133 -.L3160: + b .L3134 +.L3161: adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 12, .L3140 + tbz x0, 12, .L3141 add x0, x19, :lo12:.LANCHOR0 ldrh w1, [x23] mov w2, w22 ubfiz x3, x1, 1, 16 ldr x4, [x0,600] - adrp x0, .LC268 - add x0, x0, :lo12:.LC268 + adrp x0, .LC269 + add x0, x0, :lo12:.LC269 ldrh w3, [x4,x3] bl printk -.L3140: +.L3141: add x19, x19, :lo12:.LANCHOR0 ldrh w1, [x23] ldr x0, [x19,600] @@ -19804,9 +19816,9 @@ ftl_alloc_new_data_sblk: ldrh w0, [x19] mov w1, 65535 cmp w0, w1 - beq .L3162 + beq .L3163 bl zftl_insert_data_list -.L3162: +.L3163: adrp x0, .LANCHOR0+608 mov w2, 2 mov w1, 3 @@ -19840,15 +19852,15 @@ ftl_write_commit: add x0, x0, :lo12:.LANCHOR4 str x0, [x29,120] stp x19, x20, [sp,16] - add x0, x0, 1267 + add x0, x0, 1266 str x0, [x29,104] stp x21, x22, [sp,32] stp x25, x26, [sp,64] stp x27, x28, [sp,80] -.L3166: +.L3167: ldrb w0, [x24,2856] adrp x21, .LANCHOR0 - cbz w0, .L3168 + cbz w0, .L3169 ldrb w1, [x24,2888] sub w0, w0, #1 ldr x2, [x29,112] @@ -19861,16 +19873,16 @@ ftl_write_commit: strb w1, [x24,2888] ldr w1, [x27,36] cmp w1, w0 - bcc .L3169 + bcc .L3170 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 495 + mov w2, 496 add x1, x1, 760 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L3169: +.L3170: ldr x0, [x29,128] add x1, x21, :lo12:.LANCHOR0 add x4, x1, 784 @@ -19878,32 +19890,32 @@ ftl_write_commit: ldr w2, [x1,2840] ldr w23, [x0,36] cmp w23, w2 - bcc .L3170 + bcc .L3171 mov x0, x27 bl buf_free mov w0, -1 - b .L3224 -.L3170: + b .L3225 +.L3171: ldr x25, [x0,8] ldr x28, [x0,24] ldrb w22, [x0,57] ldrb w20, [x0,56] ldrb w0, [x1,2857] - cbz w0, .L3172 + cbz w0, .L3173 ldr x0, [x29,120] - ldrb w3, [x0,1267] + ldrb w3, [x0,1266] add x3, x4, x3, lsl 6 -.L3173: +.L3174: ldrb w5, [x3] cmp w5, 255 - beq .L3226 + beq .L3227 sbfiz x3, x5, 6, 32 add x3, x4, x3 - b .L3173 -.L3226: + b .L3174 +.L3227: ldr w0, [x3,36] cmp w0, w23 - bne .L3172 + bne .L3173 ldr x0, [x3,8] ubfiz x1, x22, 9, 8 lsl w2, w20, 9 @@ -19912,29 +19924,29 @@ ftl_write_commit: bl ftl_memcpy mov x0, x27 bl buf_free - b .L3166 -.L3172: + b .L3167 +.L3173: mov w0, w23 bl lpa_hash_get_ppa str w0, [x29,156] cmn w0, #1 - bne .L3176 + bne .L3177 mov w0, w23 add x1, x29, 156 mov w2, 0 bl pm_log2phys -.L3176: +.L3177: add x4, x21, :lo12:.LANCHOR0 mov w3, 0 add x4, x4, 784 ldr x19, [x4,-176] add x19, x19, 16 -.L3179: +.L3180: ldr w0, [x4,36] cmp w0, w23 - bne .L3177 + bne .L3178 ldrb w5, [x4,2] - tbz x5, 3, .L3177 + tbz x5, 3, .L3178 add x0, x21, :lo12:.LANCHOR0 ubfiz x3, x3, 6, 32 add x0, x0, 784 @@ -19944,22 +19956,22 @@ ftl_write_commit: strb w5, [x3,2] ldr x26, [x3,8] str w0, [x29,156] - b .L3178 -.L3177: + b .L3179 +.L3178: add w3, w3, 1 add x4, x4, 64 cmp w3, 32 - bne .L3179 + bne .L3180 mov x26, 0 -.L3178: +.L3179: add x3, x21, :lo12:.LANCHOR0 str wzr, [x29,136] ldrb w0, [x3,2832] cmp w20, w0 - bcs .L3180 + bcs .L3181 add w20, w22, w20 - cbz x26, .L3181 - cbz w22, .L3182 + cbz x26, .L3182 + cbz w22, .L3183 mov x0, x25 mov x1, x26 lsl w2, w22, 9 @@ -19968,28 +19980,28 @@ ftl_write_commit: ldr x3, [x29,136] ldr x19, [x3,608] add x19, x19, 48 -.L3182: +.L3183: add x0, x21, :lo12:.LANCHOR0 ldrb w2, [x0,2832] cmp w20, w2 - bcc .L3183 + bcc .L3184 ldr x19, [x0,608] add x19, x19, 16 - b .L3225 -.L3183: + b .L3226 +.L3184: ubfiz x1, x20, 9, 9 sub w2, w2, w20 add x0, x25, x1 lsl w2, w2, 9 add x1, x26, x1 bl ftl_memcpy -.L3225: +.L3226: str wzr, [x29,136] - b .L3180 -.L3181: + b .L3181 +.L3182: ldr w0, [x29,156] cmn w0, #1 - beq .L3184 + beq .L3185 mov w0, 1 bl buf_alloc mov x26, x0 @@ -20004,11 +20016,11 @@ ftl_write_commit: add w1, w1, 1 str w1, [x29,136] cmp w0, w23 - bne .L3185 + bne .L3186 ldr w0, [x26,52] cmn w0, #1 - bne .L3186 -.L3185: + bne .L3187 +.L3186: add x0, x21, :lo12:.LANCHOR0 ldr w2, [x29,156] mov w3, w23 @@ -20016,83 +20028,83 @@ ftl_write_commit: ldr w0, [x1,552] add w0, w0, 1 str w0, [x1,552] - adrp x0, .LC269 + adrp x0, .LC270 ldrb w1, [x26,1] - add x0, x0, :lo12:.LC269 + add x0, x0, :lo12:.LC270 ldr w4, [x26,52] bl printk - adrp x0, .LC201 + adrp x0, .LC202 mov w2, 4 ldr x1, [x26,24] - add x0, x0, :lo12:.LC201 + add x0, x0, :lo12:.LC202 mov w3, w2 bl rknand_print_hex -.L3186: +.L3187: ldr x0, [x26,24] ldr w0, [x0,4] cmp w0, w23 - bne .L3187 + bne .L3188 ldr w0, [x26,52] cmn w0, #1 - bne .L3188 -.L3187: + bne .L3189 +.L3188: adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 566 + mov w2, 567 add x1, x1, 760 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L3188: - cbz w22, .L3189 +.L3189: + cbz w22, .L3190 ldr w0, [x29,156] lsl w2, w22, 9 cmn w0, #1 - beq .L3190 + beq .L3191 ldr x1, [x26,8] mov x0, x25 bl ftl_memcpy - b .L3191 -.L3184: - cbz w22, .L3189 + b .L3192 +.L3185: + cbz w22, .L3190 lsl w2, w22, 9 -.L3190: +.L3191: mov x0, x25 mov w1, 0 bl ftl_memset -.L3191: +.L3192: add x0, x21, :lo12:.LANCHOR0 ldr x19, [x0,608] add x19, x19, 48 -.L3189: +.L3190: add x0, x21, :lo12:.LANCHOR0 ldrb w2, [x0,2832] cmp w20, w2 - bcc .L3192 - bls .L3193 + bcc .L3193 + bls .L3194 ldr x19, [x0,608] add x19, x19, 16 - b .L3193 -.L3192: + b .L3194 +.L3193: ldr w0, [x29,156] sub w2, w2, w20 lsl w2, w2, 9 cmn w0, #1 ubfiz x0, x20, 7, 9 - beq .L3194 + beq .L3195 ldr x1, [x26,8] lsl x20, x0, 2 add x0, x25, x20 add x1, x1, x20 bl ftl_memcpy - b .L3193 -.L3194: + b .L3194 +.L3195: add x0, x25, x0, lsl 2 mov w1, 0 bl ftl_memset -.L3193: - cbz x26, .L3180 +.L3194: + cbz x26, .L3181 ldrb w0, [x26,2] mov x1, x26 and w0, w0, -9 @@ -20102,13 +20114,13 @@ ftl_write_commit: bl buf_remove_buf mov x0, x26 bl buf_free -.L3180: +.L3181: ldrh w0, [x19,6] - cbnz w0, .L3195 + cbnz w0, .L3196 bl ftl_flush mov x0, x19 bl ftl_alloc_new_data_sblk -.L3195: +.L3196: mov x0, x19 add x20, x21, :lo12:.LANCHOR0 bl ftl_get_new_free_page @@ -20148,11 +20160,11 @@ ftl_write_commit: str w0, [x1,1268] cmp w2, 2 adrp x0, .LANCHOR4 - bhi .L3196 + bhi .L3197 ldrh w1, [x19,6] cmp w1, 1 - bne .L3168 -.L3196: + bne .L3169 +.L3197: ldrb w1, [x19,5] mov w4, 2 add x6, x21, :lo12:.LANCHOR0 @@ -20163,22 +20175,22 @@ ftl_write_commit: cmp w1, 1 add x1, x0, :lo12:.LANCHOR4 csel w4, w4, w2, ne - ldrb w5, [x1,1267] + ldrb w5, [x1,1266] mov w1, 0 mov w3, w5 -.L3200: +.L3201: cmp w1, w4 - beq .L3227 + beq .L3228 ubfiz x3, x3, 6, 8 add w1, w1, 1 ldrb w3, [x6,x3] - b .L3200 -.L3227: + b .L3201 +.L3228: add x0, x0, :lo12:.LANCHOR4 uxtb w1, w1 sub w2, w2, w1 ubfiz x5, x5, 6, 8 - strb w3, [x0,1267] + strb w3, [x0,1266] add x0, x21, :lo12:.LANCHOR0 add x0, x0, 784 strb w2, [x0,2073] @@ -20186,20 +20198,20 @@ ftl_write_commit: bl sblk_prog_page ldrh w0, [x19,6] cmp w0, 1 - bne .L3168 + bne .L3169 bl sblk_wait_write_queue_completed bl ftl_write_completed mov x0, x19 bl ftl_write_last_log_page mov x0, x19 bl ftl_alloc_new_data_sblk -.L3168: +.L3169: add x21, x21, :lo12:.LANCHOR0 ldrb w19, [x21,2856] - cbnz w19, .L3166 + cbnz w19, .L3167 bl ftl_write_completed mov w0, w19 -.L3224: +.L3225: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -20224,10 +20236,10 @@ gc_do_copy_back: stp x27, x28, [sp,96] ldrb w0, [x21,3273] ldr x22, [x21,608] - cbnz w0, .L3229 + cbnz w0, .L3230 bl buf_alloc mov x20, x0 - cbz x0, .L3228 + cbz x0, .L3229 ldrh w22, [x21,2922] mov w0, w22 add w22, w22, 1 @@ -20240,60 +20252,60 @@ gc_do_copy_back: bl sblk_read_page ldr w0, [x20,52] cmp w0, 512 - beq .L3282 + beq .L3283 cmn w0, #1 - bne .L3231 -.L3282: + bne .L3232 +.L3283: adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 600 + mov w2, 601 add x1, x1, 784 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L3231: +.L3232: ldr x0, [x20,24] ldr w21, [x0,4] mov w0, w21 bl lpa_hash_get_ppa str w0, [x29,144] cmn w0, #1 - bne .L3233 + bne .L3234 mov w0, w21 add x1, x29, 144 mov w2, 0 bl pm_log2phys -.L3233: +.L3234: ldr w22, [x29,144] cmp w22, w23 - bne .L3234 + bne .L3235 add x1, x19, :lo12:.LANCHOR0 add x0, x1, 784 add x1, x1, 2832 -.L3237: +.L3238: ldr w2, [x0,36] cmp w2, w21 - bne .L3235 + bne .L3236 ldrb w2, [x0,2] - tbz x2, 1, .L3235 + tbz x2, 1, .L3236 mov x0, x20 bl buf_free adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L3228 + tbz x0, 8, .L3229 add x19, x19, :lo12:.LANCHOR0 - adrp x0, .LC270 + adrp x0, .LC271 mov w1, w21 mov w2, w22 - add x0, x0, :lo12:.LC270 + add x0, x0, :lo12:.LC271 ldrh w3, [x19,2922] bl printk - b .L3228 -.L3235: + b .L3229 +.L3236: add x0, x0, 64 cmp x0, x1 - bne .L3237 + bne .L3238 add x23, x19, :lo12:.LANCHOR0 ldrb w1, [x20,2] str w21, [x20,36] @@ -20308,20 +20320,20 @@ gc_do_copy_back: str w0, [x20,32] adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L3238 + tbz x0, 8, .L3239 ldr w2, [x29,144] mov w0, w21 str x2, [x29,136] bl lpa_hash_get_ppa mov w3, w0 ldr x2, [x29,136] - adrp x0, .LC271 + adrp x0, .LC272 ldrh w5, [x23,2922] - add x0, x0, :lo12:.LC271 + add x0, x0, :lo12:.LC272 mov w1, w21 mov w4, w22 bl printk -.L3238: +.L3239: add x19, x19, :lo12:.LANCHOR0 mov x0, x20 bl ftl_gc_write_buf @@ -20333,34 +20345,34 @@ gc_do_copy_back: ldrh w0, [x19,2924] add w0, w0, 1 strh w0, [x19,2924] - b .L3228 -.L3234: + b .L3229 +.L3235: adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L3240 + tbz x0, 8, .L3241 mov w0, w21 add x19, x19, :lo12:.LANCHOR0 bl lpa_hash_get_ppa mov w3, w0 ldrh w5, [x19,2922] - adrp x0, .LC271 - add x0, x0, :lo12:.LC271 + adrp x0, .LC272 + add x0, x0, :lo12:.LC272 mov w1, w21 mov w2, w22 mov w4, w23 bl printk -.L3240: +.L3241: mov x0, x20 bl buf_free - b .L3228 -.L3229: + b .L3229 +.L3230: ldrb w24, [x21,3257] add x0, x21, 2896 add x22, x22, 80 cmp w24, 3 - bne .L3241 + bne .L3242 ldrb w1, [x21,3272] - cbz w1, .L3242 + cbz w1, .L3243 ldrb w20, [x22,9] ldrh w21, [x0,314] str w24, [x29,136] @@ -20369,13 +20381,13 @@ gc_do_copy_back: sdiv w23, w21, w23 madd w20, w23, w20, w21 uxth w20, w20 - b .L3244 -.L3242: + b .L3245 +.L3243: ldrh w20, [x0,314] adrp x0, .LANCHOR2 ldrb w21, [x22,9] add x0, x0, :lo12:.LANCHOR2 - add x0, x0, 1528 + add x0, x0, 1592 str w24, [x29,136] sdiv w1, w20, w21 msub w20, w1, w21, w20 @@ -20387,9 +20399,9 @@ gc_do_copy_back: cmp w25, 1 add w21, w21, w21, lsl 1 uxth w21, w21 - bne .L3245 - b .L3244 -.L3241: + bne .L3246 + b .L3245 +.L3242: ldrb w20, [x22,9] ldrb w1, [x21,3348] ldrh w21, [x0,314] @@ -20397,38 +20409,38 @@ gc_do_copy_back: sdiv w23, w21, w20 msub w20, w23, w20, w21 uxth w20, w20 - cbz w1, .L3323 + cbz w1, .L3324 mov w0, 2 -.L3323: +.L3324: str w0, [x29,136] -.L3244: +.L3245: mov w25, 0 add x24, x19, :lo12:.LANCHOR0 adrp x3, .LANCHOR4 -.L3247: +.L3248: ldrb w1, [x22,9] ldr w0, [x29,136] mul w0, w0, w1 cmp w25, w0 - bge .L3280 + bge .L3281 ldrh w0, [x24,3274] add w26, w21, w25 mul w0, w0, w1 sub w0, w0, #1 cmp w26, w0 - beq .L3280 + beq .L3281 add x0, x3, :lo12:.LANCHOR4 sbfiz x26, x26, 2, 32 ldr x1, [x0,1144] ldr w0, [x1,x26] cmn w0, #1 - bne .L3248 + bne .L3249 ldrh w27, [x24,2922] ldrh w0, [x24,2920] str x3, [x29,120] str x1, [x29,128] cmp w0, w27 - bls .L3228 + bls .L3229 mov w0, w27 add w27, w27, 1 bl gc_get_src_ppa_from_index @@ -20436,17 +20448,17 @@ gc_do_copy_back: ldr x1, [x29,128] ldr x3, [x29,120] str w0, [x1,x26] -.L3248: +.L3249: add w25, w25, 1 uxth w25, w25 - b .L3247 -.L3280: + b .L3248 +.L3281: mov w25, 1 -.L3245: +.L3246: adrp x0, .LANCHOR2 str x0, [x29,120] ldr w1, [x0,#:lo12:.LANCHOR2] - tbz x1, 8, .L3250 + tbz x1, 8, .L3251 adrp x0, .LANCHOR4+1144 add x4, x19, :lo12:.LANCHOR0 ubfiz x5, x21, 2, 16 @@ -20454,13 +20466,13 @@ gc_do_copy_back: mov w2, w25 mov w3, w20 ldr x6, [x0,#:lo12:.LANCHOR4+1144] - adrp x0, .LC272 + adrp x0, .LC273 ldrh w4, [x4,3210] - add x0, x0, :lo12:.LC272 + add x0, x0, :lo12:.LC273 ldr w5, [x6,x5] mov w6, w21 bl printk -.L3250: +.L3251: adrp x0, .LC0 mov w27, 0 add x0, x0, :lo12:.LC0 @@ -20469,12 +20481,12 @@ gc_do_copy_back: add x0, x0, :lo12:.LANCHOR3 add x0, x0, 784 str x0, [x29,104] -.L3251: +.L3252: ldrb w0, [x22,9] ldr w1, [x29,136] mul w0, w1, w0 cmp w27, w0 - bge .L3327 + bge .L3328 add w26, w21, w27 sxtw x0, w26 str x0, [x29,128] @@ -20483,11 +20495,11 @@ gc_do_copy_back: ldr x0, [x0,3264] ldrb w0, [x0,x1] cmp w0, 255 - bne .L3252 + bne .L3253 mov w0, 0 bl buf_alloc mov x24, x0 - cbnz x0, .L3253 + cbnz x0, .L3254 bl sblk_wait_write_queue_completed bl ftl_write_completed bl gc_write_completed @@ -20495,8 +20507,8 @@ gc_do_copy_back: mov w0, w24 bl buf_alloc mov x24, x0 - cbz x0, .L3228 -.L3253: + cbz x0, .L3229 +.L3254: add x28, x19, :lo12:.LANCHOR0 ldr x2, [x29,128] ldrb w1, [x24,1] @@ -20513,7 +20525,7 @@ gc_do_copy_back: sub w0, w0, #1 cmp w26, w0 adrp x26, .LANCHOR4 - bne .L3254 + bne .L3255 add x26, x26, :lo12:.LANCHOR4 mov w1, -1 ldr x0, [x26,1136] @@ -20553,8 +20565,8 @@ gc_do_copy_back: ldr x1, [x28,608] ldr x0, [x24,24] ldr w1, [x1,132] - b .L3324 -.L3254: + b .L3325 +.L3255: ldr x0, [x29,128] mov w1, 1 lsl x28, x0, 2 @@ -20566,10 +20578,10 @@ gc_do_copy_back: bl sblk_read_page ldr w0, [x24,52] cmp w0, 512 - beq .L3255 + beq .L3256 cmn w0, #1 - bne .L3256 -.L3255: + bne .L3257 +.L3256: add x4, x19, :lo12:.LANCHOR0 mov w2, 21 mov w1, 1 @@ -20586,35 +20598,35 @@ gc_do_copy_back: bl ftl_sblk_dump ldr w0, [x24,52] cmp w0, 512 - beq .L3283 + beq .L3284 cmn w0, #1 - bne .L3256 -.L3283: + bne .L3257 +.L3284: ldr x0, [x24,24] mov w1, -1 str w1, [x0,4] -.L3256: +.L3257: ldr w0, [x24,52] cmp w0, 512 - beq .L3284 + beq .L3285 cmn w0, #1 - bne .L3259 -.L3284: + bne .L3260 +.L3285: ldr x1, [x29,104] - mov w2, 715 + mov w2, 716 ldr x0, [x29,112] bl printk bl dump_stack -.L3259: +.L3260: ldr x1, [x24,24] add x0, x19, :lo12:.LANCHOR0 ldr w2, [x1,4] ldr w0, [x0,2840] cmp w2, w0 - bcc .L3261 + bcc .L3262 mov w0, -1 str w0, [x1,4] -.L3261: +.L3262: ldr x0, [x24,24] add x26, x26, :lo12:.LANCHOR4 ldr w1, [x0,4] @@ -20622,9 +20634,9 @@ gc_do_copy_back: str w1, [x0,x28] ldr x0, [x24,24] ldr w1, [x24,40] -.L3324: +.L3325: str w1, [x0,8] -.L3252: +.L3253: add x3, x19, :lo12:.LANCHOR0 ldr x2, [x29,128] add x1, x3, 784 @@ -20640,7 +20652,7 @@ gc_do_copy_back: cmp w0, 3 strb w25, [x1,61] adrp x2, .LANCHOR4 - bne .L3262 + bne .L3263 udiv w0, w27, w0 ldrh w3, [x3,3350] add x2, x2, :lo12:.LANCHOR4 @@ -20658,30 +20670,30 @@ gc_do_copy_back: add w0, w0, 1 orr w0, w3, w0, lsl 24 str w0, [x1,x4,lsl 2] - b .L3263 -.L3262: + b .L3264 +.L3263: cmp w0, 2 - bne .L3264 + bne .L3265 ldrb w6, [x3,3348] add x1, x1, 32 ldrh w0, [x3,3350] - cbnz w6, .L3265 + cbnz w6, .L3266 add w3, w27, w20 add x3, x22, x3, sxtw 1 ldrh w3, [x3,16] madd w0, w3, w0, w23 - b .L3326 -.L3265: + b .L3327 +.L3266: add w3, w20, w27, lsr 1 add x3, x22, x3, sxtw 1 ldrh w3, [x3,16] madd w0, w3, w0, w23 and w3, w27, 1 add w0, w0, w3 -.L3326: +.L3327: orr w0, w0, 33554432 str w0, [x1,8] -.L3264: +.L3265: add x0, x19, :lo12:.LANCHOR0 add x2, x2, :lo12:.LANCHOR4 add x0, x0, 784 @@ -20690,10 +20702,10 @@ gc_do_copy_back: ldrh w1, [x0,48] ldr x0, [x2,1152] str w3, [x0,x1,lsl 2] -.L3263: +.L3264: ldr x0, [x29,120] ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L3266 + tbz x0, 8, .L3267 add x0, x29, 144 ldr x1, [x29,128] mov w2, w25 @@ -20712,57 +20724,57 @@ gc_do_copy_back: ldr x0, [x5,24] ldr w0, [x0,4] str w0, [sp,8] - adrp x0, .LC273 - add x0, x0, :lo12:.LC273 + adrp x0, .LC274 + add x0, x0, :lo12:.LC274 ldr w5, [x5,40] bl printk -.L3266: +.L3267: add w8, w27, 1 uxth w27, w8 - b .L3251 -.L3327: + b .L3252 +.L3328: add x2, x19, :lo12:.LANCHOR0 mov w1, 0 ldrb w0, [x2,3257] cmp w0, 3 add x0, x29, 144 - bne .L3310 + bne .L3311 ldrb w1, [x2,3272] - cbz w1, .L3269 -.L3272: + cbz w1, .L3270 +.L3273: ldr x1, [x29,144] strb wzr, [x1,60] - b .L3270 -.L3269: + b .L3271 +.L3270: cmp w25, 1 mov w2, 9 - beq .L3325 + beq .L3326 cmp w25, 2 - bne .L3272 + bne .L3273 mov w2, 13 -.L3325: +.L3326: ldr x1, [x29,144] strb w2, [x1,60] -.L3270: +.L3271: ldrb w2, [x22,9] add x1, x0, 24 bl sblk_xlc_prog_pages - b .L3273 -.L3310: + b .L3274 +.L3311: ldrb w2, [x22,9] ldr w3, [x29,136] mul w2, w2, w3 sub w2, w2, #1 cmp w1, w2 - bge .L3328 + bge .L3329 ldr x2, [x0,w1,sxtw 3] add w1, w1, 1 ldr x3, [x0,w1,sxtw 3] uxth w1, w1 ldrb w3, [x3,1] strb w3, [x2] - b .L3310 -.L3328: + b .L3311 +.L3329: ldr x0, [x0,w2,sxtw 3] mov w1, -1 strb w1, [x0] @@ -20770,20 +20782,20 @@ gc_do_copy_back: ldr x0, [x29,144] mul w1, w3, w1 bl sblk_prog_page -.L3273: +.L3274: add x1, x19, :lo12:.LANCHOR0 ldrb w2, [x22,9] ldrb w3, [x1,3272] - cbz w3, .L3275 + cbz w3, .L3276 add w0, w2, w2, lsl 1 and w2, w0, 1023 - b .L3276 -.L3275: + b .L3277 +.L3276: ldrb w1, [x1,3348] ubfiz w0, w2, 1, 8 cmp w1, wzr csel w2, w0, w2, ne -.L3276: +.L3277: add x19, x19, :lo12:.LANCHOR0 ldr x1, [x19,2864] ldr w0, [x1,52] @@ -20797,12 +20809,12 @@ gc_do_copy_back: ldrb w2, [x22,9] mul w1, w1, w2 cmp w0, w1 - blt .L3277 + blt .L3278 ldr x0, [x19,608] strh wzr, [x0,86] -.L3277: +.L3278: bl gc_write_completed -.L3228: +.L3229: sub sp, x29, #16 ldp x19, x20, [sp,32] ldp x21, x22, [sp,48] @@ -20835,63 +20847,63 @@ zftl_do_gc: add w20, w0, w20 ldrh w22, [x1,2846] uxth w20, w20 - bne .L3330 + bne .L3331 adrp x21, .LANCHOR7 add x1, x21, :lo12:.LANCHOR7 ldr w23, [x1,-80] - cbnz w23, .L3331 + cbnz w23, .L3332 ldr w1, [x1,-76] - cbz w1, .L3330 -.L3331: + cbz w1, .L3331 +.L3332: add x1, x19, :lo12:.LANCHOR0 ldrh w2, [x1,3306] cmp w20, w2, lsr 2 - bls .L3330 + bls .L3331 ldrh w1, [x1,2872] cmp w1, w20 - bcs .L3330 + bcs .L3331 add w23, w23, 20 bl timer_get_time cmp w23, w0 - bcs .L3332 + bcs .L3333 add x0, x21, :lo12:.LANCHOR7 str wzr, [x0,-80] -.L3332: +.L3333: add x19, x21, :lo12:.LANCHOR7 ldr w20, [x19,-76] bl timer_get_time add w20, w20, 20 cmp w20, w0 - bcs .L3515 + bcs .L3516 str wzr, [x19,-76] - b .L3515 -.L3330: + b .L3516 +.L3331: adrp x23, .LANCHOR4 add x1, x23, :lo12:.LANCHOR4 ldrb w2, [x1,1130] mov w1, 16 cmp w2, 6 - bhi .L3488 - adrp x1, .L3336 - add x1, x1, :lo12:.L3336 + bhi .L3489 + adrp x1, .L3337 + add x1, x1, :lo12:.L3337 ldrh w1, [x1,w2,uxtw #1] - adr x2, .Lrtx3336 + adr x2, .Lrtx3337 add x1, x2, w1, sxth #2 br x1 -.Lrtx3336: +.Lrtx3337: .section .rodata .align 0 .align 2 -.L3336: - .2byte (.L3335 - .Lrtx3336) / 4 - .2byte (.L3337 - .Lrtx3336) / 4 - .2byte (.L3338 - .Lrtx3336) / 4 - .2byte (.L3339 - .Lrtx3336) / 4 - .2byte (.L3340 - .Lrtx3336) / 4 - .2byte (.L3446 - .Lrtx3336) / 4 - .2byte (.L3342 - .Lrtx3336) / 4 +.L3337: + .2byte (.L3336 - .Lrtx3337) / 4 + .2byte (.L3338 - .Lrtx3337) / 4 + .2byte (.L3339 - .Lrtx3337) / 4 + .2byte (.L3340 - .Lrtx3337) / 4 + .2byte (.L3341 - .Lrtx3337) / 4 + .2byte (.L3447 - .Lrtx3337) / 4 + .2byte (.L3343 - .Lrtx3337) / 4 .text -.L3335: +.L3336: add x21, x19, :lo12:.LANCHOR0 add w22, w22, w0 ldrh w1, [x24,80] @@ -20902,12 +20914,12 @@ zftl_do_gc: mov w0, 65535 cmp w1, w0 uxth w25, w25 - beq .L3343 - cbnz w26, .L3344 + beq .L3344 + cbnz w26, .L3345 ldrh w0, [x21,2872] cmp w20, w0, lsl 1 - bge .L3515 -.L3344: + bge .L3516 +.L3345: add x21, x19, :lo12:.LANCHOR0 mov w1, 5 ldrh w0, [x21,3304] @@ -20918,7 +20930,7 @@ zftl_do_gc: uxth w2, w0 mov w1, 65535 cmp w2, w1 - beq .L3346 + beq .L3347 add x3, x23, :lo12:.LANCHOR4 ubfiz x2, x2, 1, 16 ldr w1, [x3,1132] @@ -20928,112 +20940,112 @@ zftl_do_gc: ldrh w2, [x3,x2] ldrh w3, [x21,3300] cmp w3, w2 - bcs .L3347 + bcs .L3348 ldrh w3, [x21,576] cmp w1, w3, lsr 4 - bls .L3346 + bls .L3347 ldrh w1, [x21,2874] cmp w1, w2 - bls .L3346 -.L3347: + bls .L3347 +.L3348: add x2, x19, :lo12:.LANCHOR0 mov w1, 0 ldrb w2, [x2,3273] bl gc_add_sblk - cbz w0, .L3348 + cbz w0, .L3349 add x23, x23, :lo12:.LANCHOR4 mov w0, 1 str wzr, [x23,1132] strb w0, [x23,1130] - b .L3515 -.L3346: + b .L3516 +.L3347: add x0, x19, :lo12:.LANCHOR0 strh wzr, [x0,3304] -.L3348: +.L3349: cmp w22, 15 mov w21, 2 - bls .L3349 - cbz w25, .L3448 + bls .L3350 + cbz w25, .L3449 add x0, x19, :lo12:.LANCHOR0 mov w21, 1 ldrh w1, [x0,2854] ldrh w0, [x0,3308] cmp w1, w0 - bls .L3349 -.L3448: + bls .L3350 +.L3449: mov w21, 2 -.L3349: +.L3350: adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L3350 + tbz x0, 8, .L3351 add x1, x19, :lo12:.LANCHOR0 mov w3, w20 mov w4, w22 ldr x0, [x1,608] ldrb w2, [x1,3273] - mov w1, 1853 + mov w1, 1856 ldrh w5, [x0,124] ldrh w6, [x0,120] ldrh w7, [x0,122] ldrh w0, [x24,80] str w0, [sp] - adrp x0, .LC274 - add x0, x0, :lo12:.LC274 + adrp x0, .LC275 + add x0, x0, :lo12:.LC275 bl printk -.L3350: +.L3351: add x19, x19, :lo12:.LANCHOR0 mov w1, w21 mov w2, 1 ldrb w0, [x19,3273] bl gc_search_src_blk cmp w0, wzr - ble .L3351 -.L3352: + ble .L3352 +.L3353: add x23, x23, :lo12:.LANCHOR4 mov w0, 1 - b .L3518 -.L3351: + b .L3519 +.L3352: ldrb w0, [x19,3273] mov w1, 3 mov w2, 1 bl gc_search_src_blk cmp w0, wzr - bgt .L3352 - b .L3515 -.L3343: + bgt .L3353 + b .L3516 +.L3344: cmp w26, 1 - bne .L3353 + bne .L3354 bl gc_scan_static_data ldr x0, [x21,608] ldrh w0, [x0,122] - cbz w0, .L3354 -.L3355: + cbz w0, .L3355 +.L3356: add x19, x19, :lo12:.LANCHOR0 mov w0, 1 add x23, x23, :lo12:.LANCHOR4 strb w0, [x19,3273] - b .L3518 -.L3354: + b .L3519 +.L3355: bl gc_static_wearleveling - cbnz w0, .L3355 + cbnz w0, .L3356 bl gc_block_vpn_scan - cbz w22, .L3449 + cbz w22, .L3450 cmp w20, w25 - bcs .L3358 + bcs .L3359 ldrh w0, [x21,3306] cmp w20, w0, lsl 1 - blt .L3359 -.L3358: + blt .L3360 +.L3359: add x0, x19, :lo12:.LANCHOR0 add w1, w20, w25 ldrh w2, [x0,3306] cmp w1, w2, lsl 1 - blt .L3359 + blt .L3360 ldrh w1, [x0,2854] ldrh w0, [x0,3308] cmp w1, w0 - bcc .L3449 -.L3359: + bcc .L3450 +.L3360: add x21, x19, :lo12:.LANCHOR0 add x27, x23, :lo12:.LANCHOR4 mov w28, 1 @@ -21043,17 +21055,17 @@ zftl_do_gc: strb w28, [x21,3273] str w1, [x27,1132] cmp w1, w0, lsr 5 - bls .L3361 + bls .L3362 ldrh w0, [x21,2854] cmp w0, w22 - bls .L3361 + bls .L3362 mov w1, 5 mov w0, 0 bl zftl_get_gc_node uxth w1, w0 mov w0, 65535 cmp w1, w0 - beq .L3449 + beq .L3450 ubfiz x1, x1, 1, 16 ldr x0, [x21,600] ldrb w2, [x21,3276] @@ -21062,47 +21074,47 @@ zftl_do_gc: ldrh w1, [x21,3300] mul w1, w1, w2 cmp w0, w1 - bgt .L3357 + bgt .L3358 str wzr, [x27,1132] mov w0, w28 mov w1, 2 - b .L3508 -.L3361: + b .L3509 +.L3362: add x0, x19, :lo12:.LANCHOR0 ldrh w2, [x0,2854] ldrh w1, [x0,3308] cmp w2, w1 - bcc .L3364 + bcc .L3365 mov w0, 1 mov w1, 2 mov w2, w0 - b .L3509 -.L3364: + b .L3510 +.L3365: ldrh w24, [x0,2850] - cbnz w24, .L3365 + cbnz w24, .L3366 ldrh w0, [x0,2852] cmp w0, 8 - bls .L3357 -.L3365: + bls .L3358 +.L3366: mov w0, 1 mov w1, w0 -.L3508: - mov w2, 4 .L3509: + mov w2, 4 +.L3510: bl gc_search_src_blk uxth w0, w0 - cbnz w0, .L3352 - b .L3449 -.L3353: + cbnz w0, .L3353 + b .L3450 +.L3354: ldrh w0, [x21,2872] cmp w0, w20 - bcc .L3515 -.L3449: + bcc .L3516 +.L3450: mov w24, 16 -.L3357: +.L3358: add x21, x19, :lo12:.LANCHOR0 ldr w0, [x21,2884] - cbz w0, .L3366 + cbz w0, .L3367 mov w0, 1 mov w1, 5 strb w0, [x21,3273] @@ -21112,105 +21124,105 @@ zftl_do_gc: uxth w1, w0 mov w2, 65535 cmp w1, w2 - beq .L3367 + beq .L3368 ubfiz x1, x1, 1, 16 ldr x2, [x21,600] ldrh w1, [x2,x1] cmp w1, 8 - bhi .L3367 + bhi .L3368 mov w2, 1 mov w1, 0 str w2, [x21,2884] bl gc_add_sblk - cbnz w0, .L3352 -.L3367: + cbnz w0, .L3353 +.L3368: mov w1, 4 mov w0, 0 bl zftl_get_gc_node uxth w1, w0 mov w2, 65535 cmp w1, w2 - beq .L3368 + beq .L3369 add x3, x19, :lo12:.LANCHOR0 ubfiz x1, x1, 1, 16 ldr x2, [x3,600] ldrh w1, [x2,x1] cmp w1, 4 - bhi .L3368 + bhi .L3369 mov w2, 1 mov w1, 0 str w2, [x3,2884] bl gc_add_sblk - cbnz w0, .L3352 -.L3368: + cbnz w0, .L3353 +.L3369: mov w0, 0 bl zftl_get_gc_node.part.12 uxth w1, w0 mov w2, 65535 cmp w1, w2 - beq .L3366 + beq .L3367 add x2, x19, :lo12:.LANCHOR0 ubfiz x1, x1, 1, 16 ldr x3, [x2,600] ldrh w1, [x3,x1] cmp w1, 4 - bhi .L3366 + bhi .L3367 mov w1, 1 str w1, [x2,2884] mov w2, 0 bl gc_add_sblk - cbnz w0, .L3352 -.L3366: + cbnz w0, .L3353 +.L3367: add x21, x19, :lo12:.LANCHOR0 mov w0, 1 ldr x7, [x21,608] strb w0, [x21,3273] ldrh w5, [x7,124] - cbz w5, .L3369 + cbz w5, .L3370 add x23, x23, :lo12:.LANCHOR4 strb wzr, [x21,3273] strb w0, [x23,1130] adrp x0, .LANCHOR2 ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L3370 + tbz x0, 8, .L3371 ldrh w6, [x7,120] - adrp x0, .LC275 + adrp x0, .LC276 ldrh w7, [x7,122] - mov w1, 1951 + mov w1, 1954 mov w2, 0 mov w3, w20 mov w4, w22 - add x0, x0, :lo12:.LC275 + add x0, x0, :lo12:.LC276 bl printk - b .L3370 -.L3369: + b .L3371 +.L3370: ldrh w2, [x21,2872] cmp w20, w2 - bcs .L3371 - cbz w22, .L3372 + bcs .L3372 + cbz w22, .L3373 cmp w22, 16 - bls .L3373 + bls .L3374 ldrh w2, [x21,2854] ldrh w1, [x21,3308] cmp w2, w1 - bhi .L3373 + bhi .L3374 mov w1, w0 mov w2, 4 str x5, [x29,104] bl gc_search_src_blk uxth w0, w0 ldr x5, [x29,104] - cbnz w0, .L3374 + cbnz w0, .L3375 ldrb w0, [x21,3273] - b .L3517 -.L3374: + b .L3518 +.L3375: mov w1, 5 mov w0, w5 bl zftl_get_gc_node uxth w2, w0 mov w1, 65535 cmp w2, w1 - beq .L3443 + beq .L3444 add x3, x23, :lo12:.LANCHOR4 ubfiz x2, x2, 1, 16 ldr w1, [x3,1132] @@ -21220,14 +21232,14 @@ zftl_do_gc: ldrh w2, [x3,x2] ldrh w3, [x21,3300] cmp w3, w2 - bcs .L3377 + bcs .L3378 ldrh w3, [x21,576] cmp w1, w3, lsr 4 - bls .L3443 + bls .L3444 ldrh w1, [x21,2874] cmp w1, w2 - bls .L3443 -.L3377: + bls .L3444 +.L3378: add x19, x19, :lo12:.LANCHOR0 mov w1, 0 ldrb w2, [x19,3273] @@ -21236,71 +21248,71 @@ zftl_do_gc: str w0, [x19,2884] add x0, x23, :lo12:.LANCHOR4 str wzr, [x0,1132] - b .L3443 -.L3373: + b .L3444 +.L3374: mov w0, 1 mov w1, 2 mov w2, w0 bl gc_search_src_blk uxth w0, w0 - cbnz w0, .L3443 + cbnz w0, .L3444 add x19, x19, :lo12:.LANCHOR0 -.L3514: +.L3515: ldrb w0, [x19,3273] mov w1, 3 mov w2, 2 -.L3511: +.L3512: bl gc_search_src_blk uxth w0, w0 - b .L3375 -.L3372: + b .L3376 +.L3373: adrp x0, .LANCHOR2 strb w22, [x21,3273] ldr w0, [x0,#:lo12:.LANCHOR2] - tbz x0, 8, .L3379 - adrp x0, .LC275 + tbz x0, 8, .L3380 + adrp x0, .LC276 ldrh w6, [x7,120] ldrh w7, [x7,122] - add x0, x0, :lo12:.LC275 - mov w1, 1981 + add x0, x0, :lo12:.LC276 + mov w1, 1984 mov w2, w22 mov w3, w20 mov w4, w22 mov w5, w22 bl printk -.L3379: +.L3380: add x19, x19, :lo12:.LANCHOR0 cmp w20, 16 ldrb w0, [x19,3273] - bls .L3380 -.L3517: + bls .L3381 +.L3518: mov w1, 3 mov w2, 4 - b .L3511 -.L3380: + b .L3512 +.L3381: mov w1, 1 mov w2, w1 bl gc_search_src_blk uxth w0, w0 - cbnz w0, .L3443 - b .L3514 -.L3371: + cbnz w0, .L3444 + b .L3515 +.L3372: cmp w26, 1 mov w1, w24 - bne .L3488 + bne .L3489 cmp w20, w2, lsl 1 - bge .L3381 + bge .L3382 cmp w25, w22, lsr 1 - bcs .L3382 + bcs .L3383 ldrh w2, [x21,2854] ldrh w0, [x21,3308] cmp w2, w0 - bcs .L3382 + bcs .L3383 ldrh w0, [x21,3306] lsr w0, w0, 2 strh w0, [x21,2872] - b .L3488 -.L3382: + b .L3489 +.L3383: mov w1, 5 mov w0, 0 bl zftl_get_gc_node @@ -21308,12 +21320,12 @@ zftl_do_gc: mov w1, 65535 mov w27, w21 cmp w21, w1 - bne .L3383 -.L3388: + bne .L3384 +.L3389: cmp w22, 1 - bhi .L3384 - b .L3385 -.L3383: + bhi .L3385 + b .L3386 +.L3384: add x26, x23, :lo12:.LANCHOR4 add x2, x19, :lo12:.LANCHOR0 uxtw x21, w21 @@ -21322,94 +21334,94 @@ zftl_do_gc: add w1, w1, 1 str w1, [x26,1132] cmp w1, w3, lsr 4 - bls .L3386 + bls .L3387 ldr x1, [x2,600] str wzr, [x26,1132] ldrh w3, [x1,x21,lsl 1] ldrh w1, [x2,2874] cmp w3, w1 - bcs .L3386 + bcs .L3387 mov w1, 0 mov w2, 1 bl gc_add_sblk - cbz w0, .L3386 + cbz w0, .L3387 mov w0, 1 strb w0, [x26,1130] - b .L3370 -.L3386: + b .L3371 +.L3387: add x1, x19, :lo12:.LANCHOR0 ldr x0, [x1,600] ldrh w2, [x0,x21,lsl 1] ldrh w0, [x1,3300] cmp w2, w0, lsr 1 - bhi .L3387 + bhi .L3388 mov w0, w27 mov w1, 1 mov w2, 0 bl gc_add_sblk - b .L3443 -.L3387: + b .L3444 +.L3388: ldrh w3, [x1,2850] ldrh w0, [x1,2852] add w0, w3, w0 ldrh w3, [x1,3306] cmp w0, w3, lsl 1 - ble .L3388 + ble .L3389 ldrh w0, [x1,2874] cmp w0, w2 - bcc .L3385 - b .L3388 -.L3384: + bcc .L3386 + b .L3389 +.L3385: add x21, x19, :lo12:.LANCHOR0 mov w0, 1 cmp w22, 16 strb w0, [x21,3273] - bls .L3389 + bls .L3390 ldrh w2, [x21,2854] ldrh w1, [x21,3308] cmp w2, w1 - bhi .L3389 + bhi .L3390 mov w1, w0 mov w2, 4 bl gc_search_src_blk uxth w0, w0 - cbnz w0, .L3390 + cbnz w0, .L3391 ldrb w0, [x21,3273] mov w1, 3 mov w2, 4 - b .L3510 -.L3389: + b .L3511 +.L3390: mov w0, 1 mov w1, 2 mov w2, w0 bl gc_search_src_blk uxth w0, w0 - cbnz w0, .L3390 + cbnz w0, .L3391 add x0, x19, :lo12:.LANCHOR0 mov w1, 3 mov w2, 2 ldrb w0, [x0,3273] -.L3510: +.L3511: bl gc_search_src_blk uxth w0, w0 -.L3390: +.L3391: add x19, x19, :lo12:.LANCHOR0 cmp w20, w25, lsr 1 ldrh w1, [x19,3306] - bls .L3512 + bls .L3513 lsr w1, w1, 2 - b .L3513 -.L3385: + b .L3514 +.L3386: cmp w20, w25 add x19, x19, :lo12:.LANCHOR0 - bcs .L3392 + bcs .L3393 mov w0, 4 strb wzr, [x19,3273] bl zftl_get_gc_node.part.12 uxth w0, w0 mov w1, 65535 cmp w0, w1 - beq .L3392 + beq .L3393 ubfiz x0, x0, 1, 16 ldr x1, [x19,600] ldrb w2, [x19,3276] @@ -21417,134 +21429,134 @@ zftl_do_gc: ldrh w0, [x19,3300] mul w0, w0, w2 cmp w1, w0, lsr 1 - bgt .L3392 + bgt .L3393 mov w1, 3 mov w0, 0 mov w2, 4 bl gc_search_src_blk uxth w0, w0 ldrh w1, [x19,3306] -.L3512: - lsr w1, w1, 1 .L3513: + lsr w1, w1, 1 +.L3514: strh w1, [x19,2872] - b .L3375 -.L3392: + b .L3376 +.L3393: ldrh w0, [x19,3306] lsr w0, w0, 2 strh w0, [x19,2872] - b .L3370 -.L3381: + b .L3371 +.L3382: ldrh w0, [x21,3306] mov w24, w5 lsr w0, w0, 2 strh w0, [x21,2872] - b .L3370 -.L3375: + b .L3371 +.L3376: mov w1, w24 - cbz w0, .L3488 -.L3443: + cbz w0, .L3489 +.L3444: add x23, x23, :lo12:.LANCHOR4 mov w0, 1 strb w0, [x23,1130] - b .L3370 -.L3337: + b .L3371 +.L3338: add x20, x19, :lo12:.LANCHOR0 mov w0, 65535 ldrh w1, [x20,2896] cmp w1, w0 - bne .L3395 + bne .L3396 bl gc_get_src_blk strh w0, [x20,2896] -.L3395: +.L3396: add x0, x19, :lo12:.LANCHOR0 mov w2, 65535 add x1, x0, 2896 ldrh w3, [x0,2896] cmp w3, w2 - beq .L3516 + beq .L3517 ldrh w5, [x1,56] uxtw x4, w3 ldr x2, [x0,584] add x2, x2, x4, lsl 2 - cbz w5, .L3398 + cbz w5, .L3399 mov x0, 0 -.L3397: +.L3398: cmp w5, w0, uxth - bls .L3398 + bls .L3399 add x0, x0, 1 add x6, x1, x0, lsl 1 ldrh w6, [x6,56] cmp w6, w3 - bne .L3397 -.L3403: + bne .L3398 +.L3404: add x19, x19, :lo12:.LANCHOR0 mov w0, -1 strh w0, [x19,2896] - b .L3515 -.L3398: + b .L3516 +.L3399: ldrb w0, [x2,2] tst w0, 192 - beq .L3456 + beq .L3457 and w0, w0, 224 cmp w0, 224 - bne .L3400 -.L3456: + bne .L3401 +.L3457: add x0, x19, :lo12:.LANCHOR0 ldr x0, [x0,600] ldrh w0, [x0,x4,lsl 1] - cbz w0, .L3403 + cbz w0, .L3404 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 2214 + mov w2, 2217 add x1, x1, 800 add x0, x0, :lo12:.LC0 bl printk bl dump_stack - b .L3403 -.L3400: + b .L3404 +.L3401: add x23, x23, :lo12:.LANCHOR4 mov w0, 2 - b .L3518 -.L3338: + b .L3519 +.L3339: bl gc_scan_src_blk cmn w0, #1 - bne .L3404 + bne .L3405 add x23, x23, :lo12:.LANCHOR4 mov w0, 3 -.L3518: +.L3519: strb w0, [x23,1130] - b .L3515 -.L3404: + b .L3516 +.L3405: add x1, x19, :lo12:.LANCHOR0 mov w3, 65535 ldrh w0, [x1,2896] cmp w0, w3 - beq .L3352 + beq .L3353 ldrh w3, [x1,2920] add x23, x23, :lo12:.LANCHOR4 - cbz w3, .L3405 + cbz w3, .L3406 mov w0, 4 strh wzr, [x1,2922] strb w0, [x23,1130] - b .L3515 -.L3405: + b .L3516 +.L3406: ubfiz x0, x0, 1, 16 ldr x1, [x1,600] mov w2, 1 strb w2, [x23,1130] ldrh w0, [x1,x0] - cbz w0, .L3406 + cbz w0, .L3407 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 2242 + mov w2, 2245 add x1, x1, 800 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L3406: +.L3407: add x20, x19, :lo12:.LANCHOR0 add x21, x20, 2896 ldrh w0, [x20,2896] @@ -21556,70 +21568,70 @@ zftl_do_gc: add w0, w0, 1 uxth w0, w0 cmp w0, 8 - bhi .L3407 + bhi .L3408 strh w0, [x21,30] - b .L3403 -.L3407: + b .L3404 +.L3408: strh wzr, [x21,30] bl ftl_flush bl pm_flush bl ftl_ext_info_flush mov w0, 0 bl ftl_info_flush - b .L3403 -.L3339: + b .L3404 +.L3340: add x21, x19, :lo12:.LANCHOR0 -.L3489: +.L3490: bl gc_scan_src_blk_one_page ldrh w2, [x21,2898] add x0, x21, 2896 ldrh w1, [x21,3300] cmp w2, w1 - bcs .L3409 + bcs .L3410 cmp w20, 7 - bls .L3489 - b .L3515 -.L3409: + bls .L3490 + b .L3516 +.L3410: ldrh w3, [x0,24] adrp x2, .LANCHOR2 - cbz w3, .L3410 + cbz w3, .L3411 add x23, x23, :lo12:.LANCHOR4 mov w1, 4 strh wzr, [x0,26] strb w1, [x23,1130] ldr w1, [x2,#:lo12:.LANCHOR2] - tbz x1, 8, .L3411 + tbz x1, 8, .L3412 ldrh w1, [x0] - adrp x0, .LC276 + adrp x0, .LC277 ldr x4, [x21,600] - add x0, x0, :lo12:.LC276 + add x0, x0, :lo12:.LC277 ubfiz x2, x1, 1, 16 ldrh w2, [x4,x2] bl printk -.L3411: +.L3412: add x0, x19, :lo12:.LANCHOR0 ldrh w2, [x0,2896] ldr x1, [x0,600] ldrh w0, [x0,2920] ldrh w1, [x1,x2,lsl 1] cmp w1, w0 - beq .L3412 + beq .L3413 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 2276 + mov w2, 2279 add x1, x1, 800 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L3412: +.L3413: add x19, x19, :lo12:.LANCHOR0 ldrh w1, [x19,2896] ldr x0, [x19,600] ldrh w2, [x19,2920] strh w2, [x0,x1,lsl 1] - b .L3515 -.L3410: + b .L3516 +.L3411: add x23, x23, :lo12:.LANCHOR4 ldrh w1, [x0] mov w0, 1 @@ -21627,29 +21639,29 @@ zftl_do_gc: add x20, x20, x1, uxth 2 strb w0, [x23,1130] ldr w0, [x2,#:lo12:.LANCHOR2] - tbz x0, 8, .L3413 + tbz x0, 8, .L3414 ldrb w2, [x20,2] - adrp x0, .LC277 - add x0, x0, :lo12:.LC277 + adrp x0, .LC278 + add x0, x0, :lo12:.LC278 ubfx x2, x2, 5, 3 bl printk -.L3413: +.L3414: ldrb w0, [x20,2] tst w0, 192 - beq .L3457 + beq .L3458 and w0, w0, 224 cmp w0, 224 - bne .L3414 -.L3457: + bne .L3415 +.L3458: adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 2286 + mov w2, 2289 add x1, x1, 800 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L3414: +.L3415: add x19, x19, :lo12:.LANCHOR0 add x20, x19, 2896 ldrh w0, [x19,2896] @@ -21660,59 +21672,59 @@ zftl_do_gc: add w0, w0, 1 uxth w0, w0 cmp w0, 8 - bhi .L3416 + bhi .L3417 strh w0, [x20,30] - b .L3515 -.L3416: + b .L3516 +.L3417: strh wzr, [x20,30] - b .L3519 -.L3340: - cbnz w26, .L3417 + b .L3520 +.L3341: + cbnz w26, .L3418 add x0, x19, :lo12:.LANCHOR0 ldrh w0, [x0,2872] cmp w0, w20 - bcc .L3515 -.L3417: + bcc .L3516 +.L3418: ldrh w1, [x24,80] mov w0, 65535 cmp w1, w0 - bne .L3418 + bne .L3419 add x22, x19, :lo12:.LANCHOR0 ldrb w21, [x22,3273] cmp w21, 1 - bne .L3418 + bne .L3419 bl ftl_flush ldrh w0, [x22,3214] - cbz w0, .L3419 + cbz w0, .L3420 mov w0, w21 -.L3419: +.L3420: mov w1, 5 bl zftl_gc_get_free_sblk uxth w20, w0 mov w0, 65535 cmp w20, w0 - beq .L3421 + beq .L3422 add x0, x19, :lo12:.LANCHOR0 ldr x21, [x0,584] add x21, x21, x20, uxth 2 ldrb w0, [x21,2] tst w0, 224 - beq .L3422 + beq .L3423 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 2315 + mov w2, 2318 add x1, x1, 800 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L3422: +.L3423: ldrb w0, [x21,2] mov w1, 5 bfi w0, w1, 5, 3 orr w0, w0, 16 strb w0, [x21,2] -.L3444: +.L3445: mov w0, w20 mov w1, 1 add x19, x19, :lo12:.LANCHOR0 @@ -21769,75 +21781,77 @@ zftl_do_gc: strh wzr, [x19,3212] strh wzr, [x19,3216] bl ftl_info_flush - b .L3515 -.L3418: + b .L3516 +.L3419: cmp w26, 1 mov w21, 4 csinc w21, w21, wzr, eq cmp w20, 15 add w0, w21, 4 - add x20, x19, :lo12:.LANCHOR0 + add x22, x19, :lo12:.LANCHOR0 csel w21, w0, w21, ls -.L3425: +.L3426: sub w21, w21, #1 uxtb w21, w21 cmp w21, 255 - beq .L3515 + beq .L3516 bl gc_do_copy_back - ldrb w0, [x20,3273] - cbnz w0, .L3426 - ldrb w0, [x20,2834] + ldrb w0, [x22,3273] + cbnz w0, .L3427 + ldrb w0, [x22,2834] cmp w0, 3 - bhi .L3427 + bhi .L3428 bl ftl_write_commit -.L3427: - ldrh w1, [x20,2922] - ldrh w0, [x20,2920] +.L3428: + ldrh w1, [x22,2922] + ldrh w0, [x22,2920] cmp w1, w0 - bcc .L3425 + bcc .L3426 add x23, x23, :lo12:.LANCHOR4 mov w0, 1 strb w0, [x23,1130] bl ftl_write_commit bl ftl_flush - ldrh w1, [x20,2896] - ldr x0, [x20,600] + ldrh w1, [x22,2896] + ldr x0, [x22,600] ldrh w0, [x0,x1,lsl 1] - cbz w0, .L3429 + cbz w0, .L3430 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 2390 + mov w2, 2393 add x1, x1, 800 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L3429: +.L3430: add x1, x19, :lo12:.LANCHOR0 ldrh w0, [x1,2896] ldr x3, [x1,600] ubfiz x2, x0, 1, 16 ldrh w4, [x3,x2] - cbnz w4, .L3430 + cbnz w4, .L3431 strh w4, [x3,x2] ldrh w0, [x1,2896] bl ftl_free_sblk - b .L3403 -.L3430: + b .L3404 +.L3431: mov w1, 0 mov w2, 1 bl gc_add_sblk - b .L3403 -.L3426: - add x0, x20, 2896 - ldrh w1, [x0,320] - cbz w1, .L3431 - strh wzr, [x0,320] - ldr w0, [x0,324] + b .L3404 +.L3427: + add x20, x22, 2896 + ldrh w0, [x20,320] + cbz w0, .L3432 + strh wzr, [x20,320] + bl sblk_wait_write_queue_completed + bl gc_write_completed + ldr w0, [x20,324] cmn w0, #1 - beq .L3432 + beq .L3433 bl ftl_mask_bad_block -.L3432: +.L3433: add x20, x19, :lo12:.LANCHOR0 ldr x0, [x20,608] str wzr, [x20,3220] @@ -21851,9 +21865,9 @@ zftl_do_gc: strh w0, [x2,126] strh w0, [x1,130] ldr x0, [x20,2904] - cbz x0, .L3433 + cbz x0, .L3434 bl buf_free -.L3433: +.L3434: add x19, x19, :lo12:.LANCHOR0 add x23, x23, :lo12:.LANCHOR4 str xzr, [x19,2904] @@ -21861,50 +21875,50 @@ zftl_do_gc: adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 2426 + mov w2, 2431 add x1, x1, 800 add x0, x0, :lo12:.LC0 strb wzr, [x23,1130] bl printk bl dump_stack - b .L3515 -.L3431: - ldrh w1, [x24,86] - cmp w1, 1 - bls .L3434 - ldrh w2, [x0,26] - ldrh w1, [x0,24] - cmp w2, w1 - bcc .L3425 + b .L3516 +.L3432: + ldrh w0, [x24,86] + cmp w0, 1 + bls .L3435 + ldrh w1, [x20,26] + ldrh w0, [x20,24] + cmp w1, w0 + bcc .L3426 add x23, x23, :lo12:.LANCHOR4 - mov w1, 1 - strb w1, [x23,1130] - ldrh w1, [x0,56] - add w2, w1, 1 - add x1, x0, x1, sxtw 1 - strh w2, [x0,56] - ldrh w2, [x0] - strh w2, [x1,58] - mov w1, -1 - strh w1, [x0] - b .L3515 -.L3434: - add x23, x23, :lo12:.LANCHOR4 - mov w1, 5 - ldrh w2, [x0,26] - strb w1, [x23,1130] - ldrh w1, [x0,24] - cmp w2, w1 - bcc .L3435 - ldrh w1, [x0,56] - add w2, w1, 1 - add x1, x0, x1, sxtw 1 - strh w2, [x0,56] - ldrh w2, [x0] - strh w2, [x1,58] - mov w1, -1 - strh w1, [x0] + mov w0, 1 + strb w0, [x23,1130] + ldrh w0, [x20,56] + add w1, w0, 1 + add x0, x20, x0, sxtw 1 + strh w1, [x20,56] + ldrh w1, [x20] + strh w1, [x0,58] + mov w0, -1 + strh w0, [x20] + b .L3516 .L3435: + add x23, x23, :lo12:.LANCHOR4 + mov w0, 5 + ldrh w1, [x20,26] + strb w0, [x23,1130] + ldrh w0, [x20,24] + cmp w1, w0 + bcc .L3436 + ldrh w0, [x20,56] + add w1, w0, 1 + add x0, x20, x0, sxtw 1 + strh w1, [x20,56] + ldrh w1, [x20] + strh w1, [x0,58] + mov w0, -1 + strh w0, [x20] +.L3436: add x20, x19, :lo12:.LANCHOR0 bl ftl_flush bl sblk_wait_write_queue_completed @@ -21920,23 +21934,23 @@ zftl_do_gc: strh w1, [x20,2914] cmp w2, 2 strh w2, [x20,2916] - bne .L3437 + bne .L3438 lsl w1, w1, 1 strh w1, [x20,2914] ldrb w1, [x20,3348] - cbnz w1, .L3437 + cbnz w1, .L3438 mov w1, 1 strh w1, [x20,2916] -.L3437: +.L3438: add x19, x19, :lo12:.LANCHOR0 strh wzr, [x19,2918] - b .L3515 -.L3446: + b .L3516 +.L3447: mov w21, 0 add x24, x19, :lo12:.LANCHOR0 -.L3341: +.L3342: bl gc_check_data_one_wl - cbz w0, .L3440 + cbz w0, .L3441 add x19, x19, :lo12:.LANCHOR0 add x23, x23, :lo12:.LANCHOR4 ldr x0, [x19,608] @@ -21953,32 +21967,32 @@ zftl_do_gc: bl buf_free str xzr, [x19,2904] strb wzr, [x23,1130] -.L3519: +.L3520: bl flt_sys_flush - b .L3515 -.L3440: + b .L3516 +.L3441: ldrh w1, [x24,2912] ldrh w0, [x24,2914] cmp w1, w0 - bcc .L3441 + bcc .L3442 add x23, x23, :lo12:.LANCHOR4 mov w0, 6 strb w0, [x23,1130] ldr x0, [x24,2904] bl buf_free str xzr, [x24,2904] - b .L3515 -.L3441: + b .L3516 +.L3442: cmp w20, 15 - bls .L3341 + bls .L3342 cmp w26, 1 - bne .L3515 + bne .L3516 add w21, w21, 1 uxtb w21, w21 cmp w21, 4 - bls .L3341 - b .L3515 -.L3342: + bls .L3342 + b .L3516 +.L3343: bl gc_update_l2p_map_new mov w20, -1 bl gc_free_src_blk @@ -21991,26 +22005,26 @@ zftl_do_gc: strh w20, [x0,126] mov w0, 0 bl ftl_info_flush -.L3516: +.L3517: add x23, x23, :lo12:.LANCHOR4 strb wzr, [x23,1130] -.L3515: +.L3516: mov w1, 16 - b .L3488 -.L3370: + b .L3489 +.L3371: mov w1, w24 - b .L3488 -.L3421: + b .L3489 +.L3422: adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 2321 + mov w2, 2324 add x1, x1, 800 add x0, x0, :lo12:.LC0 bl printk bl dump_stack - b .L3444 -.L3488: + b .L3445 +.L3489: sub sp, x29, #16 mov w0, w1 ldp x19, x20, [sp,32] @@ -22039,30 +22053,30 @@ zftl_write: stp x21, x22, [sp,32] mov w28, w1 mov x25, x3 - tbz x0, 12, .L3521 - adrp x0, .LC278 + tbz x0, 12, .L3522 + adrp x0, .LC279 mov w1, w19 - add x0, x0, :lo12:.LC278 + add x0, x0, :lo12:.LC279 mov w2, w28 mov w3, w23 bl printk -.L3521: - cbnz w19, .L3522 +.L3522: + cbnz w19, .L3523 adrp x0, .LANCHOR0+520 mov w19, 24576 ldr w2, [x0,#:lo12:.LANCHOR0+520] - b .L3523 -.L3522: + b .L3524 +.L3523: cmp w19, 3 mov w0, -1 - bhi .L3524 + bhi .L3525 lsl w19, w19, 13 mov w2, 8192 -.L3523: +.L3524: add w1, w28, w23 mov w0, -1 cmp w1, w2 - bhi .L3524 + bhi .L3525 add w28, w19, w28 adrp x19, .LANCHOR0 add x0, x19, :lo12:.LANCHOR0 @@ -22075,15 +22089,15 @@ zftl_write: udiv w22, w22, w0 sub w20, w22, w24 add w20, w20, 1 -.L3525: - cbz w20, .L3544 +.L3526: + cbz w20, .L3545 mov w0, 0 bl buf_alloc mov x27, x0 - cbnz x0, .L3526 + cbnz x0, .L3527 bl ftl_write_commit - b .L3525 -.L3526: + b .L3526 +.L3527: strb wzr, [x0,57] add x0, x19, :lo12:.LANCHOR0 cmp w21, w24 @@ -22091,12 +22105,12 @@ zftl_write: cset w0, eq strb w4, [x27,56] cmp w21, w22 - beq .L3528 - cbz w0, .L3529 - b .L3538 -.L3528: + beq .L3529 cbz w0, .L3530 -.L3538: + b .L3539 +.L3529: + cbz w0, .L3531 +.L3539: udiv w0, w28, w4 msub w0, w0, w4, w28 uxtb w0, w0 @@ -22105,12 +22119,12 @@ zftl_write: uxtb w4, w4 cmp w4, w23 csel w4, w23, w4, hi - b .L3542 -.L3530: + b .L3543 +.L3531: msub w4, w4, w21, w26 -.L3542: +.L3543: strb w4, [x27,56] -.L3529: +.L3530: ldrb w1, [x27,57] sub w20, w20, #1 ldr x0, [x27,8] @@ -22131,11 +22145,11 @@ zftl_write: bl ftl_write_buf ldrb w0, [x27,56] add x25, x25, x0, lsl 9 - b .L3525 -.L3544: + b .L3526 +.L3545: bl ftl_write_commit mov w0, w20 -.L3543: +.L3544: mov w1, 1 bl zftl_do_gc add x1, x19, :lo12:.LANCHOR0 @@ -22143,15 +22157,15 @@ zftl_write: ldrh w0, [x1,2848] add w0, w2, w0 cmp w0, 7 - bgt .L3545 + bgt .L3546 mov w0, 0 - b .L3543 -.L3545: + b .L3544 +.L3546: bl timer_get_time adrp x1, .LANCHOR7-76 str w0, [x1,#:lo12:.LANCHOR7-76] mov w0, 0 -.L3524: +.L3525: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -22209,7 +22223,7 @@ zftl_discard: stp x27, x28, [sp,80] ldr w1, [x1,520] cmp w2, w1 - bhi .L3549 + bhi .L3550 adrp x23, .LANCHOR7 add w24, w0, 24576 add x0, x23, :lo12:.LANCHOR7 @@ -22218,14 +22232,14 @@ zftl_discard: add w1, w19, w1 str w1, [x0,-72] ldr w0, [x25,#:lo12:.LANCHOR2] - tbz x0, 12, .L3550 - adrp x0, .LC279 + tbz x0, 12, .L3551 + adrp x0, .LC280 mov w2, w24 - add x0, x0, :lo12:.LC279 + add x0, x0, :lo12:.LC280 mov w3, w19 mov w4, 0 bl printk -.L3550: +.L3551: add x20, x21, :lo12:.LANCHOR0 ldr x0, [x20,2864] ldr w26, [x0,8] @@ -22236,7 +22250,7 @@ zftl_discard: ldrb w22, [x20,2832] udiv w20, w24, w22 msub w27, w20, w22, w24 - cbz w27, .L3551 + cbz w27, .L3552 sub w22, w22, w27 mov w0, w20 cmp w22, w19 @@ -22244,20 +22258,20 @@ zftl_discard: bl lpa_hash_get_ppa str w0, [x29,120] cmn w0, #1 - bne .L3552 + bne .L3553 mov w0, w20 add x1, x29, 120 mov w2, 0 bl pm_log2phys -.L3552: +.L3553: ldr w0, [x29,120] and w28, w22, 65535 cmn w0, #1 - beq .L3554 + beq .L3555 mov w0, 0 bl buf_alloc mov x3, x0 - cbz x0, .L3554 + cbz x0, .L3555 strb w27, [x0,57] ubfiz x27, x27, 9, 25 str w20, [x0,36] @@ -22278,31 +22292,31 @@ zftl_discard: ldr w0, [x1,76] add w0, w0, 1 str w0, [x1,76] -.L3554: +.L3555: add w20, w20, 1 sub w19, w19, w28 -.L3551: - cbz w19, .L3556 +.L3552: + cbz w19, .L3557 bl ftl_flush -.L3556: +.L3557: mov w0, -1 mov w27, 1 str w0, [x29,124] mov w28, 21 -.L3557: +.L3558: add x22, x21, :lo12:.LANCHOR0 ldrb w0, [x22,2832] cmp w19, w0 - bcc .L3596 + bcc .L3597 mov w0, w20 bl lpa_hash_get_ppa str w0, [x29,120] cmn w0, #1 - beq .L3558 + beq .L3559 mov w0, 0 bl buf_alloc mov x3, x0 - cbz x0, .L3560 + cbz x0, .L3561 ldrb w2, [x22,2832] mov w1, 0 str w20, [x0,36] @@ -22317,15 +22331,15 @@ zftl_discard: mov x0, x3 bl ftl_write_buf bl ftl_write_commit - b .L3595 -.L3558: + b .L3596 +.L3559: mov w0, w20 add x1, x29, 120 mov w2, 0 bl pm_log2phys ldr w0, [x29,120] cmn w0, #1 - beq .L3560 + beq .L3561 add x1, x29, 124 mov w2, 1 mov w0, w20 @@ -22340,36 +22354,36 @@ zftl_discard: and w0, w2, w0 udiv w0, w0, w1 bl ftl_vpn_decrement -.L3595: +.L3596: ldr x1, [x22,2864] ldr w0, [x1,76] add w0, w0, 1 str w0, [x1,76] -.L3560: +.L3561: add x0, x21, :lo12:.LANCHOR0 add w20, w20, 1 ldrb w0, [x0,2832] sub w19, w19, w0 - b .L3557 -.L3596: - cbz w19, .L3564 + b .L3558 +.L3597: + cbz w19, .L3565 mov w0, w20 bl lpa_hash_get_ppa str w0, [x29,120] cmn w0, #1 - bne .L3565 + bne .L3566 mov w0, w20 add x1, x29, 120 mov w2, 0 bl pm_log2phys -.L3565: +.L3566: ldr w0, [x29,120] cmn w0, #1 - beq .L3564 + beq .L3565 mov w0, 0 bl buf_alloc mov x22, x0 - cbz x0, .L3564 + cbz x0, .L3565 str w20, [x0,36] strb wzr, [x0,57] strb w19, [x0,56] @@ -22377,16 +22391,16 @@ zftl_discard: add x0, x21, :lo12:.LANCHOR0 ldrb w0, [x0,2832] cmp w19, w0 - bcc .L3567 + bcc .L3568 adrp x1, .LANCHOR3 adrp x0, .LC0 add x1, x1, :lo12:.LANCHOR3 - mov w2, 1235 + mov w2, 1236 add x1, x1, 816 add x0, x0, :lo12:.LC0 bl printk bl dump_stack -.L3567: +.L3568: ldr x0, [x22,8] mov w1, 0 lsl w2, w19, 9 @@ -22399,20 +22413,20 @@ zftl_discard: ldr w0, [x1,76] add w0, w0, 1 str w0, [x1,76] -.L3564: +.L3565: add x0, x23, :lo12:.LANCHOR7 mov w4, 0 ldr w1, [x0,-72] cmp w1, 8192 - bls .L3549 + bls .L3550 ldr w0, [x25,#:lo12:.LANCHOR2] - tbz x0, 12, .L3568 - adrp x0, .LC279 + tbz x0, 12, .L3569 + adrp x0, .LC280 mov w2, w24 - add x0, x0, :lo12:.LC279 + add x0, x0, :lo12:.LC280 mov w3, w19 bl printk -.L3568: +.L3569: add x23, x23, :lo12:.LANCHOR7 add x21, x21, :lo12:.LANCHOR0 str wzr, [x23,-72] @@ -22420,7 +22434,7 @@ zftl_discard: mov w0, 1 mov w4, 0 str w0, [x21,2884] -.L3549: +.L3550: mov w0, w4 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -22450,29 +22464,29 @@ id_block_prog_msb_ff_data: ldrb w2, [x0,19] add x0, x20, :lo12:.LANCHOR4 ldrb w0, [x0,1264] - cbnz w0, .L3597 + cbnz w0, .L3598 sub w0, w2, #5 uxtb w0, w0 cmp w0, 2 - bls .L3599 + bls .L3600 cmp w2, 68 - beq .L3599 + beq .L3600 sub w2, w2, #19 and w2, w2, -17 uxtb w2, w2 - cbnz w2, .L3597 -.L3599: - adrp x24, .LC280 + cbnz w2, .L3598 +.L3600: + adrp x24, .LC281 mov w25, w1 - add x24, x24, :lo12:.LC280 + add x24, x24, :lo12:.LC281 add x20, x20, :lo12:.LANCHOR4 mov w27, 65535 -.L3601: +.L3602: add x28, x21, :lo12:.LANCHOR0 ldr x0, [x28,624] ldrh w0, [x0,10] cmp w0, w19 - bls .L3597 + bls .L3598 add x22, x20, 68 add w26, w19, w25 mov x0, x24 @@ -22482,7 +22496,7 @@ id_block_prog_msb_ff_data: bl printk ldrh w0, [x22,w19,sxtw 1] cmp w0, w27 - bne .L3597 + bne .L3598 ldr x0, [x20,1192] mov w1, 255 mov w2, 16384 @@ -22496,8 +22510,8 @@ id_block_prog_msb_ff_data: ldrb w4, [x4,9] mov x3, x2 bl flash_prog_page - b .L3601 -.L3597: + b .L3602 +.L3598: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -22530,17 +22544,17 @@ write_idblock: bl ftl_malloc mov x23, x0 mov w0, -1 - cbz x23, .L3648 + cbz x23, .L3649 add w19, w19, 511 lsr w19, w19, 9 cmp w19, 8 - bls .L3634 + bls .L3635 cmp w19, 500 - bhi .L3648 - b .L3605 -.L3634: + bhi .L3649 + b .L3606 +.L3635: mov w19, 8 -.L3605: +.L3606: mul w20, w20, w21 add x3, x26, 253952 mov w2, 63999 @@ -22551,9 +22565,9 @@ write_idblock: udiv w0, w19, w0 str w0, [x29,120] mov w0, 0 -.L3609: +.L3610: ldr w1, [x3] - cbnz w1, .L3606 + cbnz w1, .L3607 ldr w1, [x26,w0,uxtw 2] add w0, w0, 1 cmp w0, w4 @@ -22561,56 +22575,56 @@ write_idblock: csel w0, w0, wzr, cc str w1, [x3],-4 cmp w2, 4096 - bne .L3609 - b .L3608 -.L3606: - adrp x0, .LC281 - add x0, x0, :lo12:.LC281 - bl printk -.L3608: - ldr x1, [x29,128] + bne .L3610 + b .L3609 +.L3607: adrp x0, .LC282 add x0, x0, :lo12:.LC282 + bl printk +.L3609: + ldr x1, [x29,128] + adrp x0, .LC283 + add x0, x0, :lo12:.LC283 mov w2, 4 mov w3, 5 mov x21, 0 mov w28, w21 bl rknand_print_hex - adrp x0, .LC283 + adrp x0, .LC284 mov w1, w19 - add x0, x0, :lo12:.LC283 + add x0, x0, :lo12:.LC284 mov w2, w19 bl printk -.L3631: +.L3632: adrp x1, .LANCHOR7 add x1, x1, :lo12:.LANCHOR7 ldrb w1, [x1,-102] - cbnz w1, .L3610 + cbnz w1, .L3611 ldr x1, [x29,128] ldr w2, [x29,152] ldr w1, [x1,x21,lsl 2] mul w20, w1, w2 - cbz w21, .L3611 + cbz w21, .L3612 ldr w2, [x29,120] cmp w2, 1 - bls .L3611 + bls .L3612 sub w0, w21, #1 ldr x2, [x29,128] ldr w0, [x2,x0,lsl 2] add w0, w0, 1 cmp w1, w0 - bne .L3611 - b .L3612 -.L3610: + bne .L3612 + b .L3613 +.L3611: add x0, x22, :lo12:.LANCHOR0 ldr x0, [x0,728] add x0, x0, x21, uxtw ldrb w20, [x0,32] cmp w20, 255 - beq .L3612 + beq .L3613 ldr w0, [x29,152] mul w20, w20, w0 -.L3611: +.L3612: mov w2, 512 mov w1, 0 mov x0, x23 @@ -22629,12 +22643,12 @@ write_idblock: bl flash_erase_block cmp w19, w24 mov w2, 1 - bls .L3613 + bls .L3614 mov w0, 0 add w1, w20, w24 bl flash_erase_block mov w2, 2 -.L3613: +.L3614: add x27, x22, :lo12:.LANCHOR0 ldr x1, [x27,624] ldrh w0, [x1,10] @@ -22649,10 +22663,10 @@ write_idblock: sub w0, w20, w0 str w0, [x29,156] cmp w20, w0 - bne .L3638 + bne .L3639 ldrb w0, [x27,516] cmp w0, 9 - bne .L3638 + bne .L3639 adrp x0, .LANCHOR4 mov w1, 0 add x0, x0, :lo12:.LANCHOR4 @@ -22690,18 +22704,18 @@ write_idblock: str w0, [x3,8] sub w0, w19, #4 str w0, [x29,144] - b .L3614 -.L3638: + b .L3615 +.L3639: str w19, [x29,144] mov x3, 0 -.L3614: +.L3615: str x26, [x29,136] mov w24, 0 add x27, x22, :lo12:.LANCHOR0 -.L3616: +.L3617: ldr w0, [x29,112] cmp w24, w0 - bcs .L3657 + bcs .L3658 ldr w0, [x29,124] adrp x2, .LANCHOR4 add x2, x2, :lo12:.LANCHOR4 @@ -22711,34 +22725,34 @@ write_idblock: add w1, w4, 1 ldrb w2, [x2,1264] ldrh w0, [x0,w1,sxtw 1] - cbz w2, .L3618 + cbz w2, .L3619 ldrb w6, [x27,1] lsl w0, w1, 1 cmp w6, wzr csel w0, w0, w1, ne -.L3618: +.L3619: ldrb w1, [x27,516] cmp w1, 9 - beq .L3656 + beq .L3657 sub w0, w0, #1 lsl w0, w0, 2 -.L3656: +.L3657: str w0, [x29,160] mov w0, 61424 str w0, [x29,164] add x0, x27, 4 ldrh w0, [x0,w4,sxtw 1] - cbnz w2, .L3622 + cbnz w2, .L3623 mov w4, w0 - b .L3623 -.L3622: + b .L3624 +.L3623: ldrb w1, [x27,1] lsl w0, w4, 1 cmp w1, wzr csel w4, w0, w4, ne -.L3623: +.L3624: mul w0, w4, w25 - cbnz x3, .L3624 + cbnz x3, .L3625 ldr w1, [x29,156] add x2, x29, 160 str x4, [x29,104] @@ -22749,28 +22763,28 @@ write_idblock: ldr x4, [x29,104] add x0, x0, :lo12:.LANCHOR4 ldrb w0, [x0,1264] - cbnz w0, .L3625 + cbnz w0, .L3626 ldr w1, [x29,156] add w2, w4, 1 udiv w1, w1, w25 bl id_block_prog_msb_ff_data -.L3625: +.L3626: ldr x0, [x29,136] add x0, x0, 2048 str x0, [x29,136] - b .L3626 -.L3624: + b .L3627 +.L3625: ldr w1, [x29,156] add x2, x29, 160 add w0, w0, w1 mov x1, x3 bl fw_flash_page_prog.constprop.28 -.L3626: +.L3627: add w24, w24, 4 mov x3, 0 uxth w24, w24 - b .L3616 -.L3657: + b .L3617 +.L3658: add x0, x22, :lo12:.LANCHOR0 ldrb w1, [x29,116] mov x2, x23 @@ -22781,15 +22795,15 @@ write_idblock: ldr w0, [x29,144] mov x1, 0 lsl w0, w0, 7 -.L3628: +.L3629: cmp w0, w1 - bls .L3658 + bls .L3659 ldr w3, [x23,x1,lsl 2] add x1, x1, 1 add x2, x26, x1, lsl 2 ldr w2, [x2,-4] cmp w3, w2 - beq .L3628 + beq .L3629 mov x0, x23 mov w1, 0 mov w2, 512 @@ -22797,21 +22811,21 @@ write_idblock: mov w1, w20 mov w0, 0 bl flash_erase_block - b .L3612 -.L3658: + b .L3613 +.L3659: add w28, w28, 1 cmp w28, 5 - bhi .L3632 -.L3612: + bhi .L3633 +.L3613: add x21, x21, 1 cmp x21, 4 - bne .L3631 -.L3632: + bne .L3632 +.L3633: mov x0, x23 bl ftl_free cmp w28, wzr csetm w0, eq -.L3648: +.L3649: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x23, x24, [sp,48] @@ -22829,17 +22843,17 @@ CRC_32: mov x5, x0 add x3, x3, :lo12:.LANCHOR2 mov w0, w2 -.L3660: +.L3661: cmp w1, w2 - bls .L3662 + bls .L3663 ldrb w4, [x5,x2] - add x6, x3, 2296 + add x6, x3, 2360 add x2, x2, 1 eor w4, w4, w0, lsr 24 ldr w4, [x6,w4,uxtw 2] eor w0, w4, w0, lsl 8 - b .L3660 -.L3662: + b .L3661 +.L3663: ret .size CRC_32, .-CRC_32 .align 2 @@ -22856,146 +22870,146 @@ rknand_sys_storage_ioctl: stp x21, x22, [sp,32] mov w19, w1 mov x20, x2 - beq .L3665 + beq .L3666 mov w0, 29187 movk w0, 0x4004, lsl 16 cmp w1, w0 - bhi .L3666 + bhi .L3667 mov w0, 25726 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3667 + beq .L3668 mov w0, 25726 movk w0, 0x4004, lsl 16 cmp w1, w0 - bhi .L3668 + bhi .L3669 mov w0, 25601 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3669 + beq .L3670 mov w0, 25601 movk w0, 0x4004, lsl 16 cmp w1, w0 - bhi .L3670 + bhi .L3671 mov w0, 25364 movk w0, 0x4004, lsl 16 cmp w1, w0 - bne .L3727 + bne .L3728 bl rknand_dev_flush - b .L3761 -.L3670: + b .L3762 +.L3671: mov w0, 25602 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3672 + beq .L3673 mov w0, 25603 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3673 - b .L3727 -.L3668: - mov w0, 27688 - movk w0, 0x4004, lsl 16 - cmp w1, w0 beq .L3674 + b .L3728 +.L3669: mov w0, 27688 movk w0, 0x4004, lsl 16 cmp w1, w0 - bhi .L3675 + beq .L3675 + mov w0, 27688 + movk w0, 0x4004, lsl 16 + cmp w1, w0 + bhi .L3676 mov w0, 25727 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3676 - b .L3727 -.L3675: + beq .L3677 + b .L3728 +.L3676: mov w0, 27698 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3674 + beq .L3675 mov w0, 27708 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3674 - b .L3727 -.L3666: + beq .L3675 + b .L3728 +.L3667: mov w0, 29267 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3677 + beq .L3678 mov w0, 29267 movk w0, 0x4004, lsl 16 cmp w1, w0 - bhi .L3678 + bhi .L3679 mov w0, 29189 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3679 + beq .L3680 mov w0, 29189 movk w0, 0x4004, lsl 16 cmp w1, w0 - bcc .L3680 + bcc .L3681 mov w0, 29210 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3681 + beq .L3682 mov w0, 29266 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3682 - b .L3727 -.L3678: - mov w0, 30225 - movk w0, 0x4004, lsl 16 - cmp w1, w0 beq .L3683 + b .L3728 +.L3679: mov w0, 30225 movk w0, 0x4004, lsl 16 cmp w1, w0 - bhi .L3684 + beq .L3684 + mov w0, 30225 + movk w0, 0x4004, lsl 16 + cmp w1, w0 + bhi .L3685 mov w0, 29268 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3685 + beq .L3686 mov w0, 30224 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3686 - b .L3727 -.L3684: + beq .L3687 + b .L3728 +.L3685: mov w0, 30226 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3686 + beq .L3687 mov w0, 30227 movk w0, 0x4004, lsl 16 cmp w1, w0 - beq .L3683 - b .L3727 -.L3680: - adrp x0, .LC284 - add x0, x0, :lo12:.LC284 + beq .L3684 + b .L3728 +.L3681: + adrp x0, .LC285 + add x0, x0, :lo12:.LC285 bl printk mov w0, 4096 bl ftl_malloc mov x19, x0 - cbnz x0, .L3687 -.L3692: + cbnz x0, .L3688 +.L3693: mov x0, -12 - b .L3664 -.L3687: + b .L3665 +.L3688: mov x1, x20 mov x2, 512 bl rk_copy_from_user - cbnz x0, .L3768 - adrp x0, .LC286 + cbnz x0, .L3769 + adrp x0, .LC287 ldr w1, [x19] ldr w2, [x19,4] - add x0, x0, :lo12:.LC286 + add x0, x0, :lo12:.LC287 bl printk ldr w0, [x19,4] str w0, [x29,52] cmp w0, 8 - bhi .L3765 + bhi .L3766 bl rknand_device_lock ldr w1, [x29,52] mov x2, x19 @@ -23007,106 +23021,106 @@ rknand_sys_storage_ioctl: mov x1, x19 ubfiz x2, x2, 9, 23 bl rk_copy_to_user - cbz x0, .L3771 - adrp x0, .LC287 - add x0, x0, :lo12:.LC287 -.L3763: - bl printk -.L3765: - mov x0, x19 -.L3766: - bl ftl_free -.L3764: - mov x0, -14 - b .L3664 -.L3679: + cbz x0, .L3772 adrp x0, .LC288 add x0, x0, :lo12:.LC288 +.L3764: + bl printk +.L3766: + mov x0, x19 +.L3767: + bl ftl_free +.L3765: + mov x0, -14 + b .L3665 +.L3680: + adrp x0, .LC289 + add x0, x0, :lo12:.LC289 bl printk mov w0, 4096 bl ftl_malloc mov x19, x0 - cbz x0, .L3692 + cbz x0, .L3693 mov x1, x20 mov x2, 4096 bl rk_copy_from_user - cbnz x0, .L3768 - adrp x0, .LC289 + cbnz x0, .L3769 + adrp x0, .LC290 ldr w1, [x19] ldr w2, [x19,4] - add x0, x0, :lo12:.LC289 + add x0, x0, :lo12:.LC290 bl printk adrp x0, .LANCHOR7 add x22, x0, :lo12:.LANCHOR7 mov x20, x0 ldr x21, [x22,-64] - cbnz x21, .L3694 + cbnz x21, .L3695 mov w0, 260096 bl ftl_malloc str x0, [x22,-64] - cbz x0, .L3765 + cbz x0, .L3766 mov w1, w21 mov x2, 260096 bl memset -.L3694: +.L3695: ldr w2, [x19,4] cmp w2, 4088 - bhi .L3765 + bhi .L3766 ldr w0, [x19] mov w1, 55296 movk w1, 0x3, lsl 16 cmp w0, w1 - bhi .L3765 + bhi .L3766 add x20, x20, :lo12:.LANCHOR7 uxtw x2, w2 ldr x1, [x20,-64] add x0, x1, x0, uxtw add x1, x19, 8 bl memcpy -.L3771: +.L3772: mov x0, x19 bl ftl_free - b .L3761 -.L3682: - adrp x0, .LC290 - add x0, x0, :lo12:.LC290 + b .L3762 +.L3683: + adrp x0, .LC291 + add x0, x0, :lo12:.LC291 bl printk mov w0, 4096 bl ftl_malloc mov x19, x0 - cbz x0, .L3692 + cbz x0, .L3693 mov x1, x20 mov x2, 28 bl rk_copy_from_user - cbz x0, .L3697 -.L3768: - adrp x0, .LC285 - add x0, x0, :lo12:.LC285 - b .L3763 -.L3697: + cbz x0, .L3698 +.L3769: + adrp x0, .LC286 + add x0, x0, :lo12:.LC286 + b .L3764 +.L3698: ldr w1, [x19] - adrp x0, .LC291 + adrp x0, .LC292 ldr w2, [x19,4] - add x0, x0, :lo12:.LC291 + add x0, x0, :lo12:.LC292 bl printk ldr w1, [x19] mov w0, 59392 movk w0, 0x3, lsl 16 cmp w1, w0 - bhi .L3765 + bhi .L3766 adrp x20, .LANCHOR7 add x20, x20, :lo12:.LANCHOR7 ldr x0, [x20,-64] - cbz x0, .L3765 + cbz x0, .L3766 bl CRC_32 ldr w1, [x19,4] cmp w1, w0 - beq .L3700 + beq .L3701 mov x0, x19 bl ftl_free mov x0, -2 - b .L3664 -.L3700: + b .L3665 +.L3701: bl rknand_device_lock ldr x1, [x20,-64] add x2, x19, 8 @@ -23116,39 +23130,39 @@ rknand_sys_storage_ioctl: ldr x0, [x20,-64] bl ftl_free str xzr, [x20,-64] - b .L3771 -.L3681: - adrp x0, .LC292 - add x0, x0, :lo12:.LC292 + b .L3772 +.L3682: + adrp x0, .LC293 + add x0, x0, :lo12:.LC293 bl printk mov w0, 4096 bl ftl_malloc mov x21, x0 - cbz x0, .L3692 + cbz x0, .L3693 bl ReadFlashInfo mov x0, x20 mov x1, x21 mov x2, 11 - b .L3773 -.L3665: - adrp x0, .LC293 - add x0, x0, :lo12:.LC293 + b .L3774 +.L3666: + adrp x0, .LC294 + add x0, x0, :lo12:.LC294 bl printk bl nand_blk_add_whole_disk mov w0, 4096 bl ftl_malloc mov x21, x0 - cbz x0, .L3692 + cbz x0, .L3693 mov w1, 0 mov w2, 64 bl ftl_memset mov x0, x20 mov x1, x21 mov x2, 64 - b .L3773 -.L3677: - adrp x0, .LC294 - add x0, x0, :lo12:.LC294 + b .L3774 +.L3678: + adrp x0, .LC295 + add x0, x0, :lo12:.LC295 bl printk adrp x0, .LANCHOR7-56 add x1, x29, 52 @@ -23157,18 +23171,18 @@ rknand_sys_storage_ioctl: ldr w0, [x0,20] str w0, [x29,52] mov x0, x20 -.L3756: +.L3757: bl rk_copy_to_user - cbnz x0, .L3764 - b .L3761 -.L3685: - adrp x0, .LC295 - add x0, x0, :lo12:.LC295 + cbnz x0, .L3765 + b .L3762 +.L3686: + adrp x0, .LC296 + add x0, x0, :lo12:.LC296 bl printk mov w0, 4096 bl ftl_malloc mov x21, x0 - cbz x0, .L3692 + cbz x0, .L3693 bl rknand_device_lock mov w1, 264 mov w2, 2 @@ -23179,41 +23193,41 @@ rknand_sys_storage_ioctl: mov x0, x20 mov x1, x21 mov x2, 1024 -.L3773: +.L3774: bl rk_copy_to_user mov x19, x0 mov x0, x21 - cbnz x19, .L3766 + cbnz x19, .L3767 bl ftl_free - b .L3691 -.L3669: - adrp x0, .LC296 - add x0, x0, :lo12:.LC296 + b .L3692 +.L3670: + adrp x0, .LC297 + add x0, x0, :lo12:.LC297 bl printk add x0, x29, 56 mov x1, x20 mov x2, 520 bl rk_copy_from_user mov x19, x0 - cbz x0, .L3705 -.L3710: - adrp x0, .LC285 - add x0, x0, :lo12:.LC285 + cbz x0, .L3706 +.L3711: + adrp x0, .LC286 + add x0, x0, :lo12:.LC286 bl printk - b .L3764 -.L3705: + b .L3765 +.L3706: ldr w1, [x29,56] mov w0, 21060 movk w0, 0x4b4d, lsl 16 cmp w1, w0 - beq .L3706 -.L3707: + beq .L3707 +.L3708: mov x19, -1 - b .L3691 -.L3706: + b .L3692 +.L3707: ldr w0, [x29,60] cmp w0, 512 - bhi .L3707 + bhi .L3708 adrp x21, .LANCHOR7 add x0, x29, 56 add x21, x21, :lo12:.LANCHOR7 @@ -23224,37 +23238,37 @@ rknand_sys_storage_ioctl: mov w0, 5161 movk w0, 0xc059, lsl 16 cmp w1, w0 - beq .L3708 + beq .L3709 add x0, x29, 120 mov w1, w19 mov x2, 128 str w19, [x29,64] str w19, [x29,68] bl memset -.L3708: +.L3709: add x0, x29, 312 mov w1, 0 mov x2, 256 str wzr, [x29,72] bl memset - b .L3770 -.L3672: - adrp x0, .LC297 - add x0, x0, :lo12:.LC297 + b .L3771 +.L3673: + adrp x0, .LC298 + add x0, x0, :lo12:.LC298 bl printk add x0, x29, 56 mov x1, x20 mov x2, 520 bl rk_copy_from_user - cbnz x0, .L3710 + cbnz x0, .L3711 ldr w1, [x29,56] mov w0, 21060 movk w0, 0x4b4d, lsl 16 cmp w1, w0 - bne .L3707 + bne .L3708 ldr w0, [x29,60] cmp w0, 512 - bhi .L3707 + bhi .L3708 adrp x1, .LANCHOR7 mov w2, 5161 add x1, x1, :lo12:.LANCHOR7 @@ -23262,12 +23276,12 @@ rknand_sys_storage_ioctl: mov x0, -2 ldr w3, [x1,-48] cmp w3, w2 - bne .L3664 + bne .L3665 ldr w2, [x29,68] mov x0, -3 sub w3, w2, #1 cmp w3, 127 - bhi .L3664 + bhi .L3665 ldr x19, [x1,-56] add x1, x29, 120 add x0, x19, 64 @@ -23276,38 +23290,38 @@ rknand_sys_storage_ioctl: bl memcpy mov w0, 1 mov x1, x19 - b .L3762 -.L3676: - adrp x0, .LC298 - add x0, x0, :lo12:.LC298 + b .L3763 +.L3677: + adrp x0, .LC299 + add x0, x0, :lo12:.LC299 bl printk add x0, x29, 56 mov x1, x20 mov x2, 520 bl rk_copy_from_user - cbnz x0, .L3710 + cbnz x0, .L3711 ldr w1, [x29,56] mov w0, 17476 movk w0, 0x4253, lsl 16 cmp w1, w0 - bne .L3707 + bne .L3708 ldr w0, [x29,60] cmp w0, 512 - bhi .L3707 + bhi .L3708 adrp x19, .LANCHOR7 add x0, x19, :lo12:.LANCHOR7 ldr w1, [x0,-44] - cbnz w1, .L3711 -.L3714: + cbnz w1, .L3712 +.L3715: mov x0, 0 - b .L3664 -.L3711: + b .L3665 +.L3712: ldr x1, [x0,-40] mov w2, 22867 movk w2, 0x4453, lsl 16 ldr w3, [x1] cmp w3, w2 - beq .L3712 + beq .L3713 mov w2, 22867 movk w2, 0x4453, lsl 16 str w2, [x1] @@ -23317,7 +23331,7 @@ rknand_sys_storage_ioctl: ldr x0, [x0,-40] str wzr, [x0,8] str wzr, [x0,12] -.L3712: +.L3713: add x20, x19, :lo12:.LANCHOR7 mov w0, 0 ldr x1, [x20,-40] @@ -23328,7 +23342,7 @@ rknand_sys_storage_ioctl: movk w1, 0x4b4d, lsl 16 ldr w2, [x0] cmp w2, w1 - beq .L3713 + beq .L3714 mov w1, 21060 movk w1, 0x4b4d, lsl 16 str w1, [x0] @@ -23337,7 +23351,7 @@ rknand_sys_storage_ioctl: str w1, [x0,4] ldr x0, [x20,-56] str wzr, [x0,8] -.L3713: +.L3714: add x19, x19, :lo12:.LANCHOR7 mov w1, 0 mov x2, 128 @@ -23350,35 +23364,35 @@ rknand_sys_storage_ioctl: bl StorageSysDataStore str wzr, [x19,-44] str wzr, [x19,-48] - b .L3761 -.L3667: - adrp x0, .LC299 - add x0, x0, :lo12:.LC299 + b .L3762 +.L3668: + adrp x0, .LC300 + add x0, x0, :lo12:.LC300 bl printk add x0, x29, 56 mov x1, x20 mov x2, 520 bl rk_copy_from_user - cbnz x0, .L3710 + cbnz x0, .L3711 ldr w2, [x29,56] mov w1, 20037 movk w1, 0x4253, lsl 16 cmp w2, w1 - bne .L3707 + bne .L3708 ldr w1, [x29,60] cmp w1, 512 - bhi .L3707 + bhi .L3708 adrp x19, .LANCHOR7 add x1, x19, :lo12:.LANCHOR7 ldr w2, [x1,-44] cmp w2, 1 - beq .L3714 + beq .L3715 ldr x2, [x1,-40] mov w3, 22867 movk w3, 0x4453, lsl 16 ldr w4, [x2] cmp w4, w3 - beq .L3715 + beq .L3716 mov w3, 22867 movk w3, 0x4453, lsl 16 str w3, [x2] @@ -23388,7 +23402,7 @@ rknand_sys_storage_ioctl: ldr x1, [x1,-40] str w0, [x1,8] str w0, [x1,12] -.L3715: +.L3716: add x20, x19, :lo12:.LANCHOR7 mov w0, 1 ldr x1, [x20,-40] @@ -23400,7 +23414,7 @@ rknand_sys_storage_ioctl: movk w1, 0x4b4d, lsl 16 ldr w2, [x0] cmp w2, w1 - beq .L3716 + beq .L3717 mov w1, 21060 movk w1, 0x4b4d, lsl 16 str w1, [x0] @@ -23409,7 +23423,7 @@ rknand_sys_storage_ioctl: str w1, [x0,4] ldr x0, [x20,-56] str wzr, [x0,8] -.L3716: +.L3717: add x19, x19, :lo12:.LANCHOR7 mov w1, 0 mov x2, 128 @@ -23422,66 +23436,66 @@ rknand_sys_storage_ioctl: bl StorageSysDataStore mov w0, 1 str w0, [x19,-44] - b .L3761 -.L3673: - adrp x0, .LC300 - add x0, x0, :lo12:.LC300 + b .L3762 +.L3674: + adrp x0, .LC301 + add x0, x0, :lo12:.LC301 bl printk add x0, x29, 56 mov x1, x20 mov x2, 520 bl rk_copy_from_user - cbnz x0, .L3710 + cbnz x0, .L3711 ldr w1, [x29,56] mov w0, 20051 movk w0, 0x4144, lsl 16 cmp w1, w0 - bne .L3707 + bne .L3708 ldr w2, [x29,60] cmp w2, 512 - bhi .L3707 + bhi .L3708 adrp x1, .LANCHOR7 add x0, x29, 64 add x1, x1, :lo12:.LANCHOR7 uxtw x2, w2 sub x1, x1, #32 - b .L3769 -.L3674: + b .L3770 +.L3675: mov w0, 27698 movk w0, 0x4004, lsl 16 cmp w19, w0 - bne .L3717 - adrp x0, .LC301 - add x0, x0, :lo12:.LC301 - b .L3759 -.L3717: + bne .L3718 + adrp x0, .LC302 + add x0, x0, :lo12:.LC302 + b .L3760 +.L3718: mov w0, 27708 movk w0, 0x4004, lsl 16 cmp w19, w0 - bne .L3719 - adrp x0, .LC302 - add x0, x0, :lo12:.LC302 - b .L3759 -.L3719: + bne .L3720 adrp x0, .LC303 add x0, x0, :lo12:.LC303 -.L3759: + b .L3760 +.L3720: + adrp x0, .LC304 + add x0, x0, :lo12:.LC304 +.L3760: bl printk add x0, x29, 56 mov x1, x20 mov x2, 520 bl rk_copy_from_user - cbnz x0, .L3710 + cbnz x0, .L3711 ldr w1, [x29,56] mov w0, 17227 movk w0, 0x4c4f, lsl 16 cmp w1, w0 - bne .L3764 + bne .L3765 mov w0, 27708 movk w0, 0x4004, lsl 16 cmp w19, w0 adrp x0, .LANCHOR7 - bne .L3720 + bne .L3721 add x0, x0, :lo12:.LANCHOR7 add x1, x29, 56 mov x2, 16 @@ -23491,87 +23505,49 @@ rknand_sys_storage_ioctl: strb w0, [x29,64] mov x0, x20 bl rk_copy_to_user - cbz x0, .L3664 - b .L3764 -.L3720: + cbz x0, .L3665 + b .L3765 +.L3721: add x20, x0, :lo12:.LANCHOR7 ldr w1, [x20,480] cmp w1, 10 - bhi .L3764 + bhi .L3765 ldr x1, [x20,-56] ldr w2, [x29,60] ldr w3, [x1,24] cmp w3, w2 - beq .L3721 - cbz w3, .L3721 - adrp x0, .LC304 + beq .L3722 + cbz w3, .L3722 + adrp x0, .LC305 mov w1, w2 - add x0, x0, :lo12:.LC304 + add x0, x0, :lo12:.LC305 bl printk ldr w0, [x20,480] add w0, w0, 1 str w0, [x20,480] - b .L3764 -.L3721: + b .L3765 +.L3722: add x0, x0, :lo12:.LANCHOR7 str wzr, [x0,480] mov w0, 27698 movk w0, 0x4004, lsl 16 cmp w19, w0 - bne .L3722 + bne .L3723 str wzr, [x1,20] str wzr, [x1,24] - b .L3723 -.L3722: + b .L3724 +.L3723: mov w0, 1 str w2, [x1,24] str w0, [x1,20] -.L3723: +.L3724: mov w0, 1 mov x19, -2 bl StorageSysDataStore cmn w0, #1 - bne .L3761 - b .L3691 -.L3686: - adrp x0, .LC305 - add x0, x0, :lo12:.LC305 - bl printk - add x0, x29, 56 - mov x1, x20 - mov x2, 520 - bl rk_copy_from_user - cbnz x0, .L3710 - ldr w1, [x29,56] - mov w0, 17750 - movk w0, 0x444e, lsl 16 - cmp w1, w0 - bne .L3707 - ldr w2, [x29,60] - cmp w2, 504 - bhi .L3707 - mov w0, 30224 - adrp x1, .LANCHOR7 - movk w0, 0x4004, lsl 16 - uxtw x2, w2 - cmp w19, w0 - add x1, x1, :lo12:.LANCHOR7 - add x0, x29, 64 - bne .L3724 - ldr x1, [x1,488] - b .L3760 -.L3724: - ldr x1, [x1,496] -.L3760: - add x1, x1, 8 -.L3769: - bl memcpy -.L3770: - mov x0, x20 - add x1, x29, 56 - mov x2, 520 - b .L3756 -.L3683: + bne .L3762 + b .L3692 +.L3687: adrp x0, .LC306 add x0, x0, :lo12:.LC306 bl printk @@ -23579,50 +23555,88 @@ rknand_sys_storage_ioctl: mov x1, x20 mov x2, 520 bl rk_copy_from_user - cbnz x0, .L3710 + cbnz x0, .L3711 ldr w1, [x29,56] mov w0, 17750 movk w0, 0x444e, lsl 16 cmp w1, w0 - bne .L3707 + bne .L3708 ldr w2, [x29,60] cmp w2, 504 - bhi .L3707 + bhi .L3708 + mov w0, 30224 + adrp x1, .LANCHOR7 + movk w0, 0x4004, lsl 16 + uxtw x2, w2 + cmp w19, w0 + add x1, x1, :lo12:.LANCHOR7 + add x0, x29, 64 + bne .L3725 + ldr x1, [x1,488] + b .L3761 +.L3725: + ldr x1, [x1,496] +.L3761: + add x1, x1, 8 +.L3770: + bl memcpy +.L3771: + mov x0, x20 + add x1, x29, 56 + mov x2, 520 + b .L3757 +.L3684: + adrp x0, .LC307 + add x0, x0, :lo12:.LC307 + bl printk + add x0, x29, 56 + mov x1, x20 + mov x2, 520 + bl rk_copy_from_user + cbnz x0, .L3711 + ldr w1, [x29,56] + mov w0, 17750 + movk w0, 0x444e, lsl 16 + cmp w1, w0 + bne .L3708 + ldr w2, [x29,60] + cmp w2, 504 + bhi .L3708 mov w0, 30225 add w2, w2, 8 movk w0, 0x4004, lsl 16 cmp w19, w0 adrp x19, .LANCHOR7 add x19, x19, :lo12:.LANCHOR7 - bne .L3726 + bne .L3727 ldr x0, [x19,488] add x1, x29, 56 bl memcpy mov w0, 2 ldr x1, [x19,488] - b .L3762 -.L3726: + b .L3763 +.L3727: ldr x0, [x19,496] add x1, x29, 56 bl memcpy ldr x1, [x19,496] mov w0, 3 -.L3762: +.L3763: bl StorageSysDataStore uxtw x19, w0 - b .L3691 -.L3761: + b .L3692 +.L3762: mov x19, 0 -.L3691: - adrp x0, .LC307 +.L3692: + adrp x0, .LC308 mov x1, x19 - add x0, x0, :lo12:.LC307 + add x0, x0, :lo12:.LC308 bl printk mov x0, x19 - b .L3664 -.L3727: + b .L3665 +.L3728: mov x0, -22 -.L3664: +.L3665: ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] ldp x29, x30, [sp], 48 @@ -23657,25 +23671,25 @@ rk_ftl_storage_sys_init: ldr w0, [x21,16] ldr w22, [x21,508] str w0, [x19,-44] - cbz w22, .L3776 + cbz w22, .L3777 mov x0, x21 mov w1, 508 bl js_hash cmp w22, w0 - beq .L3776 - adrp x0, .LC308 + beq .L3777 + adrp x0, .LC309 str wzr, [x21,16] - add x0, x0, :lo12:.LC308 + add x0, x0, :lo12:.LC309 str wzr, [x19,-44] bl printk -.L3776: +.L3777: add x0, x20, :lo12:.LANCHOR7 ldr w1, [x0,-44] - cbz w1, .L3777 + cbz w1, .L3778 mov w1, 5161 movk w1, 0xc059, lsl 16 str w1, [x0,-48] -.L3777: +.L3778: add x20, x20, :lo12:.LANCHOR7 mov w0, 2 ldr x1, [x20,488] @@ -23711,19 +23725,19 @@ rk_ftl_vendor_storage_init: add x1, x21, :lo12:.LANCHOR7 mov w19, -12 str x0, [x1,504] - cbz x0, .L3786 + cbz x0, .L3787 mov w23, 0 - adrp x24, .LC309 + adrp x24, .LC310 mov w19, w23 mov w22, w23 - add x24, x24, :lo12:.LC309 -.L3790: + add x24, x24, :lo12:.LC310 +.L3791: add x20, x21, :lo12:.LANCHOR7 lsl w0, w22, 7 mov w1, 128 ldr x2, [x20,504] bl FlashBootVendorRead - cbnz w0, .L3787 + cbnz w0, .L3788 ldr x3, [x20,504] mov x0, x24 add x2, x3, 61440 @@ -23736,29 +23750,29 @@ rk_ftl_vendor_storage_init: movk w0, 0x524b, lsl 16 ldr w1, [x20] cmp w1, w0 - bne .L3788 + bne .L3789 ldr w0, [x20,4] cmp w19, w0 - bcs .L3788 + bcs .L3789 add x1, x20, 61440 ldr w1, [x1,4092] cmp w1, w0 csel w23, w23, w22, ne csel w19, w19, w0, ne -.L3788: - cbnz w22, .L3798 +.L3789: + cbnz w22, .L3799 mov w22, 1 - b .L3790 -.L3798: - cbz w19, .L3791 + b .L3791 +.L3799: + cbz w19, .L3792 lsl w0, w23, 7 mov w1, 128 mov x2, x20 bl FlashBootVendorRead mov w19, w0 - cbz w0, .L3786 - b .L3787 -.L3791: + cbz w0, .L3787 + b .L3788 +.L3792: mov x0, x20 mov w1, w19 mov x2, 65536 @@ -23772,14 +23786,14 @@ rk_ftl_vendor_storage_init: mov w0, -1032 strh w19, [x20,12] strh w0, [x20,14] - b .L3786 -.L3787: + b .L3787 +.L3788: add x21, x21, :lo12:.LANCHOR7 mov w19, -1 ldr x0, [x21,504] bl kfree str xzr, [x21,504] -.L3786: +.L3787: mov w0, w19 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -23797,18 +23811,18 @@ rk_ftl_vendor_read: ldr x5, [x3,#:lo12:.LANCHOR7+504] mov w3, -1 str x19, [sp,16] - cbz x5, .L3800 + cbz x5, .L3801 ldrh w3, [x5,10] mov x4, 0 -.L3801: +.L3802: cmp w4, w3 mov w6, w4 - bcs .L3805 + bcs .L3806 add x7, x5, x4, lsl 3 add x4, x4, 1 ldrh w7, [x7,16] cmp w7, w0 - bne .L3801 + bne .L3802 add x6, x5, x6, uxtw 3 ldrh w4, [x6,20] mov x0, x1 @@ -23820,10 +23834,10 @@ rk_ftl_vendor_read: uxtw x2, w19 bl memcpy mov w3, w19 - b .L3800 -.L3805: + b .L3801 +.L3806: mov w3, -1 -.L3800: +.L3801: mov w0, w3 ldr x19, [sp,16] ldp x29, x30, [sp], 32 @@ -23846,38 +23860,38 @@ rk_ftl_vendor_write: mov w26, w2 mov x28, x1 mov w2, -1 - cbz x19, .L3807 + cbz x19, .L3808 add w20, w26, 63 ldrh w3, [x19,10] ldrh w23, [x19,8] and w20, w20, -64 mov x2, 0 -.L3808: +.L3809: cmp w2, w3 mov w4, w2 - bcs .L3823 + bcs .L3824 add x0, x19, x2, lsl 3 add x2, x2, 1 ldrh w0, [x0,16] cmp w0, w6 - bne .L3808 + bne .L3809 add x21, x19, x4, uxtw 3 ldrh w24, [x21,20] add x5, x19, 1024 add w24, w24, 63 and w24, w24, -64 cmp w26, w24 - bls .L3809 + bls .L3810 ldrh w0, [x19,14] mov w2, -1 cmp w0, w20 - bcc .L3807 + bcc .L3808 ldrh w21, [x21,18] add w22, w3, w2 -.L3810: +.L3811: cmp w4, w22 uxtw x3, w4 - bcs .L3824 + bcs .L3825 add x3, x19, x3, lsl 3 add w25, w4, 1 add x1, x19, x25, uxtw 3 @@ -23900,8 +23914,8 @@ rk_ftl_vendor_write: mov w4, w25 ldr x6, [x29,96] ldr x5, [x29,104] - b .L3810 -.L3824: + b .L3811 +.L3825: add x3, x19, x3, lsl 3 uxth w21, w21 mov x1, x28 @@ -23918,20 +23932,20 @@ rk_ftl_vendor_write: add w24, w24, w0 sub w24, w24, w20 strh w24, [x19,14] - b .L3822 -.L3809: + b .L3823 +.L3810: ldrh w0, [x21,18] mov x1, x28 uxtw x2, w26 add x0, x5, x0 bl memcpy strh w26, [x21,20] - b .L3822 -.L3823: + b .L3823 +.L3824: ldrh w4, [x19,14] mov w2, -1 cmp w4, w20 - bcc .L3807 + bcc .L3808 add x3, x19, x3, uxth 3 strh w6, [x3,16] uxth w20, w20 @@ -23951,7 +23965,7 @@ rk_ftl_vendor_write: ldrh w0, [x19,10] add w0, w0, 1 strh w0, [x19,10] -.L3822: +.L3823: ldr w0, [x19,4] add x1, x19, 61440 mov x2, x19 @@ -23968,7 +23982,7 @@ rk_ftl_vendor_write: lsl w0, w23, 7 bl FlashBootVendorWrite mov w2, 0 -.L3807: +.L3808: mov w0, w2 ldp x19, x20, [sp,16] ldp x21, x22, [sp,32] @@ -23992,37 +24006,37 @@ rk_ftl_vendor_storage_ioctl: mov x21, x2 bl ftl_malloc mov x19, x0 - cbz x0, .L3826 + cbz x0, .L3827 mov w2, 30209 ldr x1, [x29,56] movk w2, 0x4004, lsl 16 cmp w1, w2 - beq .L3828 + beq .L3829 mov w2, 30210 movk w2, 0x4004, lsl 16 cmp w1, w2 - beq .L3829 - b .L3840 -.L3828: + beq .L3830 + b .L3841 +.L3829: mov x1, x21 mov x2, 8 bl rk_copy_from_user - cbnz x0, .L3840 + cbnz x0, .L3841 ldr w1, [x19] mov w0, 17745 movk w0, 0x5652, lsl 16 cmp w1, w0 - beq .L3831 -.L3832: + beq .L3832 +.L3833: mov x20, -1 - b .L3827 -.L3831: + b .L3828 +.L3832: ldrh w0, [x19,4] add x1, x19, 8 ldrh w2, [x19,6] bl rk_ftl_vendor_read cmn w0, #1 - beq .L3832 + beq .L3833 uxth x2, w0 strh w0, [x19,6] mov x1, x19 @@ -24032,38 +24046,38 @@ rk_ftl_vendor_storage_ioctl: bl rk_copy_to_user cmp x0, xzr csel x20, xzr, x20, eq - b .L3827 -.L3829: + b .L3828 +.L3830: mov x1, x21 mov x2, 8 bl rk_copy_from_user - cbnz x0, .L3840 + cbnz x0, .L3841 ldr w1, [x19] mov w0, 17745 movk w0, 0x5652, lsl 16 cmp w1, w0 - bne .L3832 + bne .L3833 ldrh w3, [x19,6] cmp w3, 4087 - bhi .L3832 + bhi .L3833 add w2, w3, 8 mov x0, x19 mov x1, x21 sxtw x2, w2 bl rk_copy_from_user - cbnz x0, .L3840 + cbnz x0, .L3841 ldrh w0, [x19,4] add x1, x19, 8 ldrh w2, [x19,6] bl rk_ftl_vendor_write sxtw x20, w0 - b .L3827 -.L3840: + b .L3828 +.L3841: mov x20, -14 -.L3827: +.L3828: mov x0, x19 bl kfree -.L3826: +.L3827: mov x0, x20 ldr x21, [sp,32] ldp x19, x20, [sp,16] @@ -24242,24 +24256,24 @@ rk_ftl_vendor_storage_ioctl: .section .rodata .align 3 .LANCHOR1 = . + 0 - .type __func__.33878, %object - .size __func__.33878, 18 -__func__.33878: + .type __func__.33888, %object + .size __func__.33888, 18 +__func__.33888: .string "_list_remove_node" .zero 6 - .type __func__.33903, %object - .size __func__.33903, 23 -__func__.33903: + .type __func__.33913, %object + .size __func__.33913, 23 +__func__.33913: .string "_list_update_data_list" .zero 1 - .type __func__.18927, %object - .size __func__.18927, 22 -__func__.18927: + .type __func__.18934, %object + .size __func__.18934, 22 +__func__.18934: .string "nand_flash_print_info" .zero 2 - .type __func__.19012, %object - .size __func__.19012, 11 -__func__.19012: + .type __func__.19019, %object + .size __func__.19019, 11 +__func__.19019: .string "nandc_init" .zero 5 .type toshiba_A19ref_value, %object @@ -24421,9 +24435,9 @@ toshiba_ref_value: .byte 8 .byte 12 .byte 112 - .type __func__.18515, %object - .size __func__.18515, 28 -__func__.18515: + .type __func__.18522, %object + .size __func__.18522, 28 +__func__.18522: .string "flash_wait_device_ready_raw" .zero 4 .type toshiba_3D_tlc_value, %object @@ -24844,24 +24858,24 @@ toshiba_3D_slc_value: .byte -56 .byte 56 .zero 5 - .type __func__.18568, %object - .size __func__.18568, 22 -__func__.18568: + .type __func__.18575, %object + .size __func__.18575, 22 +__func__.18575: .string "flash_start_page_read" .zero 2 - .type __func__.18593, %object - .size __func__.18593, 23 -__func__.18593: + .type __func__.18600, %object + .size __func__.18600, 23 +__func__.18600: .string "flash_start_plane_read" .zero 1 - .type __func__.18490, %object - .size __func__.18490, 26 -__func__.18490: + .type __func__.18497, %object + .size __func__.18497, 26 +__func__.18497: .string "flash_erase_duplane_block" .zero 6 - .type __func__.18501, %object - .size __func__.18501, 21 -__func__.18501: + .type __func__.18508, %object + .size __func__.18508, 21 +__func__.18508: .string "flash_erase_block_en" .zero 3 .type random_seed, %object @@ -24995,19 +25009,19 @@ random_seed: .hword 28406 .hword 17598 .hword 28087 - .type __func__.19182, %object - .size __func__.19182, 13 -__func__.19182: + .type __func__.19189, %object + .size __func__.19189, 13 +__func__.19189: .string "buf_add_tail" .zero 3 - .type __func__.19195, %object - .size __func__.19195, 10 -__func__.19195: + .type __func__.19202, %object + .size __func__.19202, 10 +__func__.19202: .string "buf_alloc" .zero 6 - .type __func__.19209, %object - .size __func__.19209, 16 -__func__.19209: + .type __func__.19216, %object + .size __func__.19216, 16 +__func__.19216: .string "buf_remove_free" .type zftl_debug_proc_fops, %object .size zftl_debug_proc_fops, 216 @@ -25021,249 +25035,249 @@ zftl_debug_proc_fops: .zero 8 .xword single_release .zero 104 - .type __func__.33472, %object - .size __func__.33472, 12 -__func__.33472: + .type __func__.33482, %object + .size __func__.33482, 12 +__func__.33482: .string "gc_add_sblk" .zero 4 - .type __func__.33540, %object - .size __func__.33540, 19 -__func__.33540: + .type __func__.33550, %object + .size __func__.33550, 19 +__func__.33550: .string "gc_write_completed" .zero 5 - .type __func__.33591, %object - .size __func__.33591, 16 -__func__.33591: + .type __func__.33601, %object + .size __func__.33601, 16 +__func__.33601: .string "gc_free_src_blk" - .type __func__.34084, %object - .size __func__.34084, 18 -__func__.34084: + .type __func__.34094, %object + .size __func__.34094, 18 +__func__.34094: .string "ftl_alloc_sys_blk" .zero 6 - .type __func__.34094, %object - .size __func__.34094, 17 -__func__.34094: + .type __func__.34104, %object + .size __func__.34104, 17 +__func__.34104: .string "ftl_free_sys_blk" .zero 7 - .type __func__.34198, %object - .size __func__.34198, 23 -__func__.34198: + .type __func__.34208, %object + .size __func__.34208, 23 +__func__.34208: .string "ftl_get_ppa_from_index" .zero 1 - .type __func__.34237, %object - .size __func__.34237, 22 -__func__.34237: + .type __func__.34247, %object + .size __func__.34247, 22 +__func__.34247: .string "ftl_get_new_free_page" .zero 2 - .type __func__.34248, %object - .size __func__.34248, 22 -__func__.34248: + .type __func__.34258, %object + .size __func__.34258, 22 +__func__.34258: .string "ftl_ext_alloc_new_blk" .zero 2 - .type __func__.33254, %object - .size __func__.33254, 14 -__func__.33254: + .type __func__.33264, %object + .size __func__.33264, 14 +__func__.33264: .string "ftl_write_buf" .zero 2 - .type __func__.33298, %object - .size __func__.33298, 18 -__func__.33298: + .type __func__.33308, %object + .size __func__.33308, 18 +__func__.33308: .string "zftl_add_read_buf" .zero 6 - .type __func__.34043, %object - .size __func__.34043, 15 -__func__.34043: + .type __func__.34053, %object + .size __func__.34053, 15 +__func__.34053: .string "ftl_alloc_sblk" .align 3 .LANCHOR3 = . + 0 - .type __func__.34595, %object - .size __func__.34595, 17 -__func__.34595: + .type __func__.34605, %object + .size __func__.34605, 17 +__func__.34605: .string "pm_alloc_new_blk" .zero 7 - .type __func__.34623, %object - .size __func__.34623, 21 -__func__.34623: + .type __func__.34633, %object + .size __func__.34633, 21 +__func__.34633: .string "pm_select_ram_region" .zero 3 - .type __func__.18917, %object - .size __func__.18917, 20 -__func__.18917: + .type __func__.18924, %object + .size __func__.18924, 20 +__func__.18924: .string "flash_die_info_init" .zero 4 - .type __func__.33189, %object - .size __func__.33189, 17 -__func__.33189: + .type __func__.33199, %object + .size __func__.33199, 17 +__func__.33199: .string "lpa_rebuild_hash" .zero 7 - .type __func__.34559, %object - .size __func__.34559, 13 -__func__.34559: + .type __func__.34569, %object + .size __func__.34569, 13 +__func__.34569: .string "pm_free_sblk" .zero 3 - .type __func__.19232, %object - .size __func__.19232, 21 -__func__.19232: - .string "flash_into_data_init" + .type __func__.19239, %object + .size __func__.19239, 21 +__func__.19239: + .string "flash_info_data_init" .zero 3 - .type __func__.18446, %object - .size __func__.18446, 19 -__func__.18446: + .type __func__.18453, %object + .size __func__.18453, 19 +__func__.18453: .string "flash_read_page_en" .zero 5 - .type __func__.19221, %object - .size __func__.19221, 20 -__func__.19221: + .type __func__.19228, %object + .size __func__.19228, 20 +__func__.19228: .string "flash_info_blk_init" .zero 4 - .type __func__.18581, %object - .size __func__.18581, 31 -__func__.18581: + .type __func__.18588, %object + .size __func__.18588, 31 +__func__.18588: .string "flash_complete_plane_page_read" .zero 1 - .type __func__.18606, %object - .size __func__.18606, 25 -__func__.18606: + .type __func__.18613, %object + .size __func__.18613, 25 +__func__.18613: .string "flash_complete_page_read" .zero 7 - .type __func__.34426, %object - .size __func__.34426, 31 -__func__.34426: + .type __func__.34436, %object + .size __func__.34436, 31 +__func__.34436: .string "queue_wait_first_req_completed" .zero 1 - .type __func__.34506, %object - .size __func__.34506, 15 -__func__.34506: + .type __func__.34516, %object + .size __func__.34516, 15 +__func__.34516: .string "sblk_read_page" .zero 1 - .type __func__.18539, %object - .size __func__.18539, 26 -__func__.18539: + .type __func__.18546, %object + .size __func__.18546, 26 +__func__.18546: .string "flash_start_tlc_page_prog" .zero 6 - .type __func__.18557, %object - .size __func__.18557, 22 -__func__.18557: + .type __func__.18564, %object + .size __func__.18564, 22 +__func__.18564: .string "flash_start_page_prog" .zero 2 - .type __func__.34479, %object - .size __func__.34479, 15 -__func__.34479: + .type __func__.34489, %object + .size __func__.34489, 15 +__func__.34489: .string "sblk_prog_page" .zero 1 - .type __func__.18475, %object - .size __func__.18475, 19 -__func__.18475: + .type __func__.18482, %object + .size __func__.18482, 19 +__func__.18482: .string "flash_prog_page_en" .zero 5 - .type __func__.34309, %object - .size __func__.34309, 14 -__func__.34309: + .type __func__.34319, %object + .size __func__.34319, 14 +__func__.34319: .string "ftl_prog_page" .zero 2 - .type __func__.34011, %object - .size __func__.34011, 15 -__func__.34011: + .type __func__.34021, %object + .size __func__.34021, 15 +__func__.34021: .string "ftl_info_flush" .zero 1 - .type __func__.34273, %object - .size __func__.34273, 19 -__func__.34273: + .type __func__.34283, %object + .size __func__.34283, 19 +__func__.34283: .string "ftl_ext_info_flush" .zero 5 - .type __func__.34285, %object - .size __func__.34285, 18 -__func__.34285: + .type __func__.34295, %object + .size __func__.34295, 18 +__func__.34295: .string "ftl_ext_info_init" .zero 6 - .type __func__.34172, %object - .size __func__.34172, 23 -__func__.34172: + .type __func__.34182, %object + .size __func__.34182, 23 +__func__.34182: .string "ftl_open_sblk_recovery" .zero 1 - .type __func__.34605, %object - .size __func__.34605, 14 -__func__.34605: + .type __func__.34615, %object + .size __func__.34615, 14 +__func__.34615: .string "pm_write_page" .zero 2 - .type __func__.19254, %object - .size __func__.19254, 17 -__func__.19254: + .type __func__.19261, %object + .size __func__.19261, 17 +__func__.19261: .string "flash_info_flush" .zero 7 - .type __func__.18971, %object - .size __func__.18971, 16 -__func__.18971: + .type __func__.18978, %object + .size __func__.18978, 16 +__func__.18978: .string "nand_flash_init" - .type __func__.34153, %object - .size __func__.34153, 16 -__func__.34153: + .type __func__.34163, %object + .size __func__.34163, 16 +__func__.34163: .string "ftl_sysblk_dump" - .type __func__.34545, %object - .size __func__.34545, 16 -__func__.34545: + .type __func__.34555, %object + .size __func__.34555, 16 +__func__.34555: .string "load_l2p_region" - .type __func__.34579, %object - .size __func__.34579, 6 -__func__.34579: + .type __func__.34589, %object + .size __func__.34589, 6 +__func__.34589: .string "pm_gc" .zero 2 - .type __func__.33527, %object - .size __func__.33527, 22 -__func__.33527: + .type __func__.33537, %object + .size __func__.33537, 22 +__func__.33537: .string "gc_update_l2p_map_new" .zero 2 - .type __func__.33636, %object - .size __func__.33636, 16 -__func__.33636: + .type __func__.33646, %object + .size __func__.33646, 16 +__func__.33646: .string "gc_scan_src_blk" - .type __func__.33694, %object - .size __func__.33694, 20 -__func__.33694: + .type __func__.33704, %object + .size __func__.33704, 20 +__func__.33704: .string "gc_scan_static_data" .zero 4 - .type __func__.33757, %object - .size __func__.33757, 18 -__func__.33757: + .type __func__.33767, %object + .size __func__.33767, 18 +__func__.33767: .string "gc_block_vpn_scan" .zero 6 - .type __func__.34129, %object - .size __func__.34129, 14 -__func__.34129: + .type __func__.34139, %object + .size __func__.34139, 14 +__func__.34139: .string "ftl_sblk_dump" .zero 2 - .type __func__.33331, %object - .size __func__.33331, 10 -__func__.33331: + .type __func__.33341, %object + .size __func__.33341, 10 +__func__.33341: .string "zftl_read" .zero 6 - .type __func__.33493, %object - .size __func__.33493, 21 -__func__.33493: + .type __func__.33503, %object + .size __func__.33503, 21 +__func__.33503: .string "gc_check_data_one_wl" .zero 3 - .type __func__.34219, %object - .size __func__.34219, 19 -__func__.34219: + .type __func__.34229, %object + .size __func__.34229, 19 +__func__.34229: .string "ftl_update_l2p_map" .zero 5 - .type __func__.33236, %object - .size __func__.33236, 17 -__func__.33236: + .type __func__.33246, %object + .size __func__.33246, 17 +__func__.33246: .string "ftl_write_commit" .zero 7 - .type __func__.33569, %object - .size __func__.33569, 16 -__func__.33569: + .type __func__.33579, %object + .size __func__.33579, 16 +__func__.33579: .string "gc_do_copy_back" - .type __func__.33785, %object - .size __func__.33785, 11 -__func__.33785: + .type __func__.33795, %object + .size __func__.33795, 11 +__func__.33795: .string "zftl_do_gc" .zero 5 - .type __func__.33362, %object - .size __func__.33362, 13 -__func__.33362: + .type __func__.33372, %object + .size __func__.33372, 13 +__func__.33372: .string "_ftl_discard" .section .rodata.str1.1,"aMS",%progbits,1 .LC0: @@ -25271,7 +25285,7 @@ __func__.33362: .LC1: .string "%s\n" .LC2: - .string "FTL version: 6.0.9 20180704" + .string "FTL version: 6.0.11 20180718" .LC3: .string "zftl_debug:0x%x\n" .LC4: @@ -25587,304 +25601,306 @@ __func__.33362: .LC159: .string "read: %x %x %x %x\n" .LC160: - .string "set buf %d,status = %x, ppa = %x lun state = %d\n" + .string "0set buf %d,status = %x, ppa = %x lun state = %d\n" .LC161: - .string "flash_prog_page %x %x %x\n" + .string "1set buf %d,status = %x, ppa = %x lun state = %d\n" .LC162: - .string "flash_prog_page page_addr = %x status = %x\n" + .string "flash_prog_page %x %x %x\n" .LC163: - .string "sblk_prog_page ppa = %x, count = %d\n" + .string "flash_prog_page page_addr = %x status = %x\n" .LC164: - .string "flash_prog_page_en:%x %x\n" + .string "sblk_prog_page ppa = %x, count = %d\n" .LC165: - .string "spare" + .string "flash_prog_page_en:%x %x\n" .LC166: - .string "data" + .string "spare" .LC167: - .string "write error: %x\n" + .string "data" .LC168: - .string "g_ftl_info_blk blk = %x, page = %x version = %d\n" + .string "write error: %x\n" .LC169: - .string "%d %x @%d %x\n" + .string "g_ftl_info_blk blk = %x, page = %x version = %d\n" .LC170: - .string "ftl_info_blk_init %d %d %x\n" + .string "%d %x @%d %x\n" .LC171: - .string "%s %d %d %x %x\n" + .string "ftl_info_blk_init %d %d %x\n" .LC172: - .string "saved_active_page = %x\n" + .string "%s %d %d %x %x\n" .LC173: - .string "saved_active_plane = %x\n" + .string "saved_active_page = %x\n" .LC174: - .string "sblk = %x\n" + .string "saved_active_plane = %x\n" .LC175: - .string "phy_blk = %x %x\n" + .string "sblk = %x\n" .LC176: - .string "sblk = %x, vpn0 = %d, vpn1 = %d\n" + .string "phy_blk = %x %x\n" .LC177: - .string "dump write = %x\n" + .string "sblk = %x, vpn0 = %d, vpn1 = %d\n" .LC178: - .string "pm_write_page write error: %x\n" + .string "dump write = %x\n" .LC179: - .string "finfo:" + .string "pm_write_page write error: %x\n" .LC180: - .string "flash_info_flush id = %x, page = %x\n" + .string "finfo:" .LC181: - .string "sys_info_flush error:%x\n" + .string "flash_info_flush id = %x, page = %x\n" .LC182: - .string "blk= %x, page=%x, ppa = %x, status = %x, data:%x %x %x %x, spare: %x %x %x %x\n" + .string "sys_info_flush error:%x\n" .LC183: - .string "l2p:" + .string "blk= %x, page=%x, ppa = %x, status = %x, data:%x %x %x %x, spare: %x %x %x %x\n" .LC184: - .string "free_buf_count: %d\n" + .string "l2p:" .LC185: - .string "g_ftl_info_blk blk:0x%x, index:0x%x, page:0x%x\n" + .string "free_buf_count: %d\n" .LC186: - .string "ftl_ext_info_blk blk:0x%x, page:0x%x\n" + .string "g_ftl_info_blk blk:0x%x, index:0x%x, page:0x%x\n" .LC187: - .string "ac_blk:0x%x, page:0x%x, index:0x%x, free:0x%x, page_index:0x%x\n" + .string "ftl_ext_info_blk blk:0x%x, page:0x%x\n" .LC188: - .string "tmp_blk:0x%x, page:0x%x, index:0x%x, free:0x%x, page_index:0x%x\n" + .string "ac_blk:0x%x, page:0x%x, index:0x%x, free:0x%x, page_index:0x%x\n" .LC189: - .string "gc_blk:0x%x, page:0x%x, index:0x%x, free:0x%x, page_index:0x%x\n" + .string "tmp_blk:0x%x, page:0x%x, index:0x%x, free:0x%x, page_index:0x%x\n" .LC190: - .string "lpa:" + .string "gc_blk:0x%x, page:0x%x, index:0x%x, free:0x%x, page_index:0x%x\n" .LC191: - .string "vpn:" + .string "lpa:" .LC192: - .string "sblk:" + .string "vpn:" .LC193: - .string "lpa_hash:" + .string "sblk:" .LC194: - .string "lpa_hash_index:" + .string "lpa_hash:" .LC195: - .string "%s w error lpn = %x, max ppa = %d\n" + .string "lpa_hash_index:" .LC196: - .string "region_id = %d, pm_max_region = %d\n" + .string "%s w error lpn = %x, max ppa = %d\n" .LC197: - .string "load_l2p_region no ppa = %x , %x, all setting 0xff....\n" + .string "region_id = %d, pm_max_region = %d\n" .LC198: - .string "load_l2p_region = %x,%x,%x, %x\n" + .string "load_l2p_region no ppa = %x , %x, all setting 0xff....\n" .LC199: - .string "pm_ppa:" + .string "load_l2p_region = %x,%x,%x, %x\n" .LC200: - .string "data:" + .string "pm_ppa:" .LC201: - .string "spare:" + .string "data:" .LC202: - .string "pm_init posr %x %x %x\n" + .string "spare:" .LC203: - .string "pm_init recovery %x %x %x\n" + .string "pm_init posr %x %x %x\n" .LC204: - .string "pm_log2phys lpn = %d, max lpn = %d\n" + .string "pm_init recovery %x %x %x\n" .LC205: - .string "ppa = %x, status = %x, data:%x %x %x %x, spare: %x %x %x %x\n" + .string "pm_log2phys lpn = %d, max lpn = %d\n" .LC206: - .string "ppa = %x, status = %x, %x %x spare: %x %x %x %x\n" + .string "ppa = %x, status = %x, data:%x %x %x %x, spare: %x %x %x %x\n" .LC207: - .string "gc_recovery: %x vpn = %x\n" + .string "ppa = %x, status = %x, %x %x spare: %x %x %x %x\n" .LC208: - .string "_c_user_data_density := %d\n" + .string "gc_recovery: %x vpn = %x\n" .LC209: - .string "_c_totle_phy_density := %d\n" + .string "_c_user_data_density := %d\n" .LC210: - .string "_c_totle_log_page := %d\n" + .string "_c_totle_phy_density := %d\n" .LC211: - .string "_c_totle_data_density := %d\n" + .string "_c_totle_log_page := %d\n" .LC212: - .string "_c_ftl_pm_page_num := %d\n" + .string "_c_totle_data_density := %d\n" .LC213: - .string "_c_ftl_byte_pre_page := %d\n" + .string "_c_ftl_pm_page_num := %d\n" .LC214: - .string "_c_max_pm_sblk := %d\n" + .string "_c_ftl_byte_pre_page := %d\n" .LC215: - .string "_min_slc_super_block := %d\n" + .string "_c_max_pm_sblk := %d\n" .LC216: - .string "_max_xlc_super_block := %d\n" + .string "_min_slc_super_block := %d\n" .LC217: - .string "gp_ftl_ext_info %p %p %p\n" + .string "_max_xlc_super_block := %d\n" .LC218: - .string "flash info size: %d %d %d\n" + .string "gp_ftl_ext_info %p %p %p\n" .LC219: - .string "ftl_init %x\n" + .string "flash info size: %d %d %d\n" .LC220: - .string "gc_update_l2p_map_new sblk %x\n" + .string "ftl_init %x\n" .LC221: - .string "gc_update_l2p_map_new: %x %x %x\n" + .string "gc_update_l2p_map_new sblk %x\n" .LC222: - .string "lpa: %x %x %x\n" + .string "gc_update_l2p_map_new: %x %x %x\n" .LC223: - .string "gc_update_l2p_map_new: %x vpn = %x vpn1 = %x done\n" + .string "lpa: %x %x %x\n" .LC224: - .string "gc_scan_src_blk = %x, vpn = %d\n" + .string "gc_update_l2p_map_new: %x vpn = %x vpn1 = %x done\n" .LC225: - .string "gc_scan_src_blk = %x, s vpn0 = %d, c vpn1 = %d\n" + .string "gc_scan_src_blk = %x, vpn = %d\n" .LC226: - .string "gc_block_vpn_scan = %x, s vpn0 = %d, c vpn1 = %d f:%d\n" + .string "gc_scan_src_blk = %x, s vpn0 = %d, c vpn1 = %d\n" .LC227: - .string "ftl_sblk_dump = %x %d %d %d %d\n" + .string "gc_block_vpn_scan = %x, s vpn0 = %d, c vpn1 = %d f:%d\n" .LC228: - .string "ftl_sblk_dump = %x %x %x %x\n" + .string "ftl_sblk_dump = %x %d %d %d %d\n" .LC229: - .string "page_addr = %x, lpa=%x vpn = %d\n" + .string "ftl_sblk_dump = %x %x %x %x\n" .LC230: - .string "index= %x, lpa=%x\n" + .string "page_addr = %x, lpa=%x vpn = %d\n" .LC231: - .string "block = %x, vpn=%x check vpn = %d\n" + .string "index= %x, lpa=%x\n" .LC232: - .string "ftl_read %x %x %x\n" + .string "block = %x, vpn=%x check vpn = %d\n" .LC233: - .string "ftl_read refresh =%x, lpa = %x, ppa= %x\n" + .string "ftl_read %x %x %x\n" .LC234: - .string "id=%d, lpa = %x, ppa = %x spare = %x %x %x %x\n" + .string "ftl_read refresh =%x, lpa = %x, ppa= %x\n" .LC235: - .string "zftl debug cmd: %s\n" + .string "id=%d, lpa = %x, ppa = %x spare = %x %x %x %x\n" .LC236: - .string "cmd:" + .string "zftl debug cmd: %s\n" .LC237: - .string "dumpl2p" + .string "cmd:" .LC238: - .string "pm l2p:" + .string "dumpl2p" .LC239: - .string "pm blk:" + .string "pm l2p:" .LC240: - .string "dumppm:" + .string "pm blk:" .LC241: - .string "p_cmd: %s\n" + .string "dumppm:" .LC242: - .string "pm ram = %x, %x\n" + .string "p_cmd: %s\n" .LC243: - .string "ram:" + .string "pm ram = %x, %x\n" .LC244: - .string "pm:" + .string "ram:" .LC245: - .string "dumpsys" + .string "pm:" .LC246: - .string "dumplist:" + .string "dumpsys" .LC247: - .string "vpncheck" + .string "dumplist:" .LC248: - .string "dumpppa:" + .string "vpncheck" .LC249: - .string "dumpblk:" + .string "dumpppa:" .LC250: - .string "setzdebug:" + .string "dumpblk:" .LC251: - .string "lpa2ppa:" + .string "setzdebug:" .LC252: - .string "lpa: %x--> ppa: %x\n" + .string "lpa2ppa:" .LC253: - .string "help:\n" + .string "lpa: %x--> ppa: %x\n" .LC254: - .string "1. echo dumpl2p > /proc/zftl_debug\n" + .string "help:\n" .LC255: - .string "2. echo dumppm:x > /proc/zftl_debug\n" + .string "1. echo dumpl2p > /proc/zftl_debug\n" .LC256: - .string "3. echo dumpsys > /proc/zftl_debug\n" + .string "2. echo dumppm:x > /proc/zftl_debug\n" .LC257: - .string "4. echo dumpppa:x > /proc/zftl_debug\n" + .string "3. echo dumpsys > /proc/zftl_debug\n" .LC258: - .string "5. echo vpncheck > /proc/zftl_debug\n" + .string "4. echo dumpppa:x > /proc/zftl_debug\n" .LC259: - .string "6. echo setzdebug:x > /proc/zftl_debug\n" + .string "5. echo vpncheck > /proc/zftl_debug\n" .LC260: - .string "7. echo dumplist > /proc/zftl_debug\n" + .string "6. echo setzdebug:x > /proc/zftl_debug\n" .LC261: - .string "8. echo lpa2ppa:x> /proc/zftl_debug\n" + .string "7. echo dumplist > /proc/zftl_debug\n" .LC262: - .string "gc_lpa:" + .string "8. echo lpa2ppa:x> /proc/zftl_debug\n" .LC263: - .string "gc_ppa:" + .string "gc_lpa:" .LC264: - .string "err: ppa = %x, status = %x, %x %x spare: %x %x %x %x\n" + .string "gc_ppa:" .LC265: - .string "ftl_update_l2p_map: %x %x %x\n" + .string "err: ppa = %x, status = %x, %x %x spare: %x %x %x %x\n" .LC266: - .string "ftl_update_l2p_map" + .string "ftl_update_l2p_map: %x %x %x\n" .LC267: - .string "lpa_tbl:" + .string "ftl_update_l2p_map" .LC268: - .string "sblk %x vpn: %d %d\n" + .string "lpa_tbl:" .LC269: - .string "%d read error: ppa:%x, lpa:%x, status:%x\n" + .string "sblk %x vpn: %d %d\n" .LC270: - .string "gc page in buf: lpa %x ppa = %x pageindex= %x\n" + .string "%d read error: ppa:%x, lpa:%x, status:%x\n" .LC271: - .string "gc_do_copy_back: lpa %x des_ppa = %x %x gc_ppa= %x page_index= %d\n" + .string "gc page in buf: lpa %x ppa = %x pageindex= %x\n" .LC272: - .string "gc_do_copy_back: %x %x %x %x gc_ppa:%x %x\n" + .string "gc_do_copy_back: lpa %x des_ppa = %x %x gc_ppa= %x page_index= %d\n" .LC273: - .string "%d prog_step: %x %x buf id= %x ppa = %x hash=%x id = %x plane = %x lpa=%x\n" + .string "gc_do_copy_back: %x %x %x %x gc_ppa:%x %x\n" .LC274: - .string "gc %d: %d %d %d %d %d %d %d\n" + .string "%d prog_step: %x %x buf id= %x ppa = %x hash=%x id = %x plane = %x lpa=%x\n" .LC275: - .string "gc %d: %d %d %d %d %d %d\n" + .string "gc %d: %d %d %d %d %d %d %d\n" .LC276: - .string "GC_STATE_SCAN_ALL_PAGE = %x, vpn0 = %d, vpn1 = %d\n" + .string "gc %d: %d %d %d %d %d %d\n" .LC277: - .string "gc free %x, %d\n" + .string "GC_STATE_SCAN_ALL_PAGE = %x, vpn0 = %d, vpn1 = %d\n" .LC278: - .string "ftlwrite %x %x %x\n" + .string "gc free %x, %d\n" .LC279: - .string "ftl_discard:(%x, %x, %x, %x)\n" + .string "ftlwrite %x %x %x\n" .LC280: - .string "id_block_prog_msb_ff_data slc page = %d pageadd=%x %x\n" + .string "ftl_discard:(%x, %x, %x, %x)\n" .LC281: - .string "write_idblock fix data %x %x\n" + .string "id_block_prog_msb_ff_data slc page = %d pageadd=%x %x\n" .LC282: - .string "idblk:" + .string "write_idblock fix data %x %x\n" .LC283: - .string "write_idblock totle_sec %x %x\n" + .string "idblk:" .LC284: - .string "READ_SECTOR_IO\n" + .string "write_idblock totle_sec %x %x\n" .LC285: - .string "rk_copy_from_user error\n" + .string "READ_SECTOR_IO\n" .LC286: - .string "READ_SECTOR_IO %x %x\n" + .string "rk_copy_from_user error\n" .LC287: - .string "rk_copy_to_user error\n" + .string "READ_SECTOR_IO %x %x\n" .LC288: - .string "WRITE_SECTOR_IO\n" + .string "rk_copy_to_user error\n" .LC289: - .string "WRITE_SECTOR_IO %x %x\n" + .string "WRITE_SECTOR_IO\n" .LC290: - .string "END_WRITE_SECTOR_IO\n" + .string "WRITE_SECTOR_IO %x %x\n" .LC291: - .string "END_WRITE_SECTOR_IO %x %x\n" + .string "END_WRITE_SECTOR_IO\n" .LC292: - .string "GET_FLASH_INFO_IO\n" + .string "END_WRITE_SECTOR_IO %x %x\n" .LC293: - .string "GET_BAD_BLOCK_IO\n" + .string "GET_FLASH_INFO_IO\n" .LC294: - .string "GET_LOCK_FLAG_IO\n" + .string "GET_BAD_BLOCK_IO\n" .LC295: - .string "GET_PUBLIC_KEY_IO\n" + .string "GET_LOCK_FLAG_IO\n" .LC296: - .string "RKNAND_GET_DRM_KEY\n" + .string "GET_PUBLIC_KEY_IO\n" .LC297: - .string "RKNAND_STORE_DRM_KEY\n" + .string "RKNAND_GET_DRM_KEY\n" .LC298: - .string "RKNAND_DIASBLE_SECURE_BOOT\n" + .string "RKNAND_STORE_DRM_KEY\n" .LC299: - .string "RKNAND_ENASBLE_SECURE_BOOT\n" + .string "RKNAND_DIASBLE_SECURE_BOOT\n" .LC300: - .string "RKNAND_GET_SN_SECTOR\n" + .string "RKNAND_ENASBLE_SECURE_BOOT\n" .LC301: - .string "RKNAND_LOADER_UNLOCK\n" + .string "RKNAND_GET_SN_SECTOR\n" .LC302: - .string "RKNAND_LOADER_STATUS\n" + .string "RKNAND_LOADER_UNLOCK\n" .LC303: - .string "RKNAND_LOADER_LOCK\n" + .string "RKNAND_LOADER_STATUS\n" .LC304: - .string "LockKey not match %d\n" + .string "RKNAND_LOADER_LOCK\n" .LC305: - .string "RKNAND_GET_VENDOR_SECTOR\n" + .string "LockKey not match %d\n" .LC306: - .string "RKNAND_STORE_VENDOR_SECTOR\n" + .string "RKNAND_GET_VENDOR_SECTOR\n" .LC307: - .string "return ret = %lx\n" + .string "RKNAND_STORE_VENDOR_SECTOR\n" .LC308: - .string "secureBootEn check error\n" + .string "return ret = %lx\n" .LC309: + .string "secureBootEn check error\n" +.LC310: .string "\0013vendor storage %x,%x,%x\n" .data .align 3 @@ -26320,7 +26336,7 @@ hy_f26_ref_value: .byte -37 .zero 4 .type zftl_nand_flash_para_tbl, %object - .size zftl_nand_flash_para_tbl, 960 + .size zftl_nand_flash_para_tbl, 1024 zftl_nand_flash_para_tbl: .byte 6 .byte -104 @@ -27036,7 +27052,7 @@ zftl_nand_flash_para_tbl: .byte 2 .byte 2 .hword 1056 - .hword 473 + .hword 455 .byte 2 .byte 6 .byte 40 @@ -27162,6 +27178,62 @@ zftl_nand_flash_para_tbl: .byte -65 .byte -66 .byte 0 + .byte 5 + .byte -119 + .byte 100 + .byte 100 + .byte 60 + .byte -95 + .byte 0 + .byte 4 + .byte 1 + .byte 32 + .hword 512 + .byte 2 + .byte 1 + .hword 1024 + .hword 455 + .byte 3 + .byte 17 + .byte 40 + .byte 32 + .byte 1 + .byte 0 + .byte 1 + .byte 0 + .hword 512 + .byte 3 + .byte 0 + .byte 0 + .byte 0 + .byte 5 + .byte -119 + .byte -124 + .byte 100 + .byte 60 + .byte -91 + .byte 0 + .byte 4 + .byte 1 + .byte 32 + .hword 512 + .byte 2 + .byte 2 + .hword 1024 + .hword 455 + .byte 3 + .byte 17 + .byte 40 + .byte 32 + .byte 1 + .byte 0 + .byte 1 + .byte 0 + .hword 512 + .byte 3 + .byte 0 + .byte 0 + .byte 0 .type nand_opt_para, %object .size nand_opt_para, 128 nand_opt_para: @@ -28452,14 +28524,11 @@ g_idb_slc_mode_enable: .type g_flash_multi_page_read_en, %object .size g_flash_multi_page_read_en, 1 g_flash_multi_page_read_en: - .zero 1 - .type g_flash_reversd_blks, %object - .size g_flash_reversd_blks, 1 -g_flash_reversd_blks: .zero 1 .type write_commit_head, %object .size write_commit_head, 1 write_commit_head: + .zero 1 .zero 1 .type ftl_flush_jiffies, %object .size ftl_flush_jiffies, 4 @@ -28508,6 +28577,9 @@ g_pm_spare: .size pm_first_write, 1 pm_first_write: .zero 1 + .type g_flash_reversd_blks, %object + .size g_flash_reversd_blks, 1 +g_flash_reversd_blks: .zero 1 .type _c_ftl_byte_pre_page, %object .size _c_ftl_byte_pre_page, 2