summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYifeng Zhao <zyf@rock-chips.com>2018-11-09 11:04:17 +0800
committerTao Huang <huangtao@rock-chips.com>2018-11-12 10:47:02 +0800
commitfe3b47bd58454b912d8d6ce12c75191e7057076c (patch)
tree554c60521bbd6ad6fecdc5cf4954fd66c7e22861
parent200ac31b901a191bc620bc0dbdd7e2d44193de8a (diff)
drivers: rk_nand: zftl: fix spectek nand flash read error data issue
fix bug: [ 4.739135] id=24, lpa = 2866c, ppa = aa8f8 spare = 2aa4b 2866b ffffffff 0 [ 4.739166] ftl_sblk_dump = 2aa 2 1 1 0 [ 4.739176] ftl_sblk_dump = 2aa 2 1 2 [ 4.739779] blk= 554, page=0, ppa = aa800, status = 1, data:b00edcd 48e6e14d 4ae749e6 4478a3dd, spare: 2a85d 284e0 ffffffff 0 [ 4.740372] blk= 555, page=0, ppa = aaa00, status = 2, data:b00edcd 48e6e14d 4ae749e6 4478a3dd, spare: 2a85e 284e0 aa800 0 Change-Id: Id992fcec771368d2809fd5bb0ecf2448a9d064f1 Signed-off-by: Yifeng Zhao <zyf@rock-chips.com>
-rw-r--r--drivers/rk_nand/rk_zftl_arm64.S8592
1 files changed, 4325 insertions, 4267 deletions
diff --git a/drivers/rk_nand/rk_zftl_arm64.S b/drivers/rk_nand/rk_zftl_arm64.S
index 1afe30373e59..54c4a5c99d38 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-09-08
+ * date: 2018-11-08
* 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, 606
+ mov w2, 612
add x1, x1, 240
add x0, x0, :lo12:.LC0
bl printk
@@ -1606,9 +1606,9 @@ flash_wait_device_ready:
ret
.size flash_wait_device_ready, .-flash_wait_device_ready
.align 2
- .global nandc_wait_flash_ready
- .type nandc_wait_flash_ready, %function
-nandc_wait_flash_ready:
+ .global nandc_wait_flash_ready_no_delay
+ .type nandc_wait_flash_ready_no_delay, %function
+nandc_wait_flash_ready_no_delay:
stp x29, x30, [sp, -48]!
add x29, sp, 0
stp x19, x20, [sp,16]
@@ -1616,14 +1616,14 @@ nandc_wait_flash_ready:
adrp x20, .LANCHOR0
movk w19, 0x1, lsl 16
.L314:
- mov w0, 100
- bl timer_delay_ns
add x0, x20, :lo12:.LANCHOR0
ldr x0, [x0,536]
ldr w0, [x0]
str w0, [x29,40]
ldr w0, [x29,40]
tbnz x0, 9, .L315
+ mov w0, 10
+ bl timer_delay_ns
subs w19, w19, #1
bne .L314
mov w0, -1
@@ -1634,6 +1634,261 @@ nandc_wait_flash_ready:
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 48
ret
+ .size nandc_wait_flash_ready_no_delay, .-nandc_wait_flash_ready_no_delay
+ .align 2
+ .global zftl_flash_enter_slc_mode
+ .type zftl_flash_enter_slc_mode, %function
+zftl_flash_enter_slc_mode:
+ adrp x2, .LANCHOR0
+ uxtb x0, w0
+ stp x29, x30, [sp, -32]!
+ add x1, x2, :lo12:.LANCHOR0
+ add x29, sp, 0
+ ldrb w2, [x2,#:lo12:.LANCHOR0]
+ str x19, [sp,16]
+ cbz w2, .L317
+ cmp w2, 1
+ ldr x19, [x1,536]
+ bne .L320
+ adrp x1, .LANCHOR2+37
+ ldrb w2, [x1,#:lo12:.LANCHOR2+37]
+ cbz w2, .L317
+ sxtw x1, w0
+ add x1, x1, 8
+ add x0, x19, x1, lsl 8
+ str w2, [x0,8]
+ b .L317
+.L320:
+ cmp w2, 2
+ bne .L322
+ add x1, x1, x0
+ ldrb w2, [x1,744]
+ cbz w2, .L317
+ strb wzr, [x1,744]
+ adrp x1, .LANCHOR2+37
+ ldrb w1, [x1,#:lo12:.LANCHOR2+37]
+ cbz w1, .L317
+ add x0, x0, 8
+ add x0, x19, x0, lsl 8
+ str w1, [x0,8]
+ b .L317
+.L322:
+ cmp w2, 3
+ bne .L317
+ add x1, x1, x0, sxtw
+ ldrb w2, [x1,744]
+ cbz w2, .L317
+ strb wzr, [x1,744]
+ ubfiz x1, x0, 8, 8
+ add x19, x19, x1
+ mov w0, 239
+ str w0, [x19,2056]
+ mov w0, 145
+ str w0, [x19,2052]
+ mov w0, 50
+ bl timer_delay_ns
+ str wzr, [x19,2048]
+ mov w0, 1
+ str w0, [x19,2048]
+ str wzr, [x19,2048]
+ str wzr, [x19,2048]
+ bl nandc_wait_flash_ready_no_delay
+ mov w0, 218
+ str w0, [x19,2056]
+ bl nandc_wait_flash_ready_no_delay
+.L317:
+ ldr x19, [sp,16]
+ ldp x29, x30, [sp], 32
+ ret
+ .size zftl_flash_enter_slc_mode, .-zftl_flash_enter_slc_mode
+ .align 2
+ .global zftl_flash_exit_slc_mode
+ .type zftl_flash_exit_slc_mode, %function
+zftl_flash_exit_slc_mode:
+ stp x29, x30, [sp, -48]!
+ adrp x1, .LANCHOR0
+ uxtb x0, w0
+ add x29, sp, 0
+ stp x19, x20, [sp,16]
+ add x20, x1, :lo12:.LANCHOR0
+ ldrb w1, [x1,#:lo12:.LANCHOR0]
+ str x21, [sp,32]
+ cbz w1, .L335
+ cmp w1, 1
+ ldr x19, [x20,536]
+ bne .L338
+ adrp x1, .LANCHOR2+38
+ ldrb w2, [x1,#:lo12:.LANCHOR2+38]
+ cbz w2, .L335
+ sxtw x1, w0
+ add x1, x1, 8
+ add x0, x19, x1, lsl 8
+ str w2, [x0,8]
+ b .L335
+.L338:
+ cmp w1, 2
+ bne .L340
+ add x20, x20, x0
+ ldrb w1, [x20,744]
+ cbnz w1, .L335
+ adrp x1, .LANCHOR2
+ mov w3, 4
+ add x1, x1, :lo12:.LANCHOR2
+ add x1, x1, 8
+ ldrb w2, [x1,12]
+ ldrb w1, [x1,30]
+ cmp w2, 2
+ csel w2, w2, w3, eq
+ strb w2, [x20,744]
+ cbz w1, .L335
+ add x0, x0, 8
+ add x0, x19, x0, lsl 8
+ str w1, [x0,8]
+ b .L335
+.L340:
+ cmp w1, 3
+ bne .L335
+ add x20, x20, x0, sxtw
+ ldrb w21, [x20,744]
+ cbnz w21, .L335
+ adrp x1, .LANCHOR2+20
+ mov w2, 4
+ ldrb w1, [x1,#:lo12:.LANCHOR2+20]
+ cmp w1, 2
+ csel w1, w1, w2, eq
+ strb w1, [x20,744]
+ ubfiz x1, x0, 8, 8
+ mov w0, 239
+ add x19, x19, x1
+ str w0, [x19,2056]
+ mov w0, 145
+ str w0, [x19,2052]
+ mov w0, 50
+ bl timer_delay_ns
+ ldrb w0, [x20,744]
+ str w0, [x19,2048]
+ mov w0, 1
+ str w0, [x19,2048]
+ str w21, [x19,2048]
+ str w21, [x19,2048]
+ bl nandc_wait_flash_ready_no_delay
+ mov w0, 223
+ str w0, [x19,2056]
+ bl nandc_wait_flash_ready_no_delay
+.L335:
+ ldp x19, x20, [sp,16]
+ ldr x21, [sp,32]
+ ldp x29, x30, [sp], 48
+ ret
+ .size zftl_flash_exit_slc_mode, .-zftl_flash_exit_slc_mode
+ .align 2
+ .global flash_start_page_read
+ .type flash_start_page_read, %function
+flash_start_page_read:
+ stp x29, x30, [sp, -64]!
+ add x29, sp, 0
+ stp x19, x20, [sp,16]
+ adrp x20, .LANCHOR0
+ ubfx x19, x1, 21, 3
+ stp x23, x24, [sp,48]
+ uxtb w23, w0
+ add x0, x20, :lo12:.LANCHOR0
+ stp x21, x22, [sp,32]
+ and w21, w1, 2097151
+ ubfx x22, x1, 24, 2
+ ldrb w0, [x0,633]
+ cmp w0, w19
+ bhi .L354
+ adrp x1, .LANCHOR1
+ adrp x0, .LC0
+ add x1, x1, :lo12:.LANCHOR1
+ mov w2, 754
+ add x1, x1, 272
+ add x0, x0, :lo12:.LC0
+ bl printk
+ bl dump_stack
+.L354:
+ add x20, x20, :lo12:.LANCHOR0
+ add x19, x20, x19, sxtw
+ ldrb w19, [x19,736]
+ mov w0, w19
+ ldr x24, [x20,536]
+ bl nandc_cs
+ cbnz w22, .L355
+ mov w0, w21
+ bl slc_phy_page_address_calc
+ mov w21, w0
+ adrp x0, .LANCHOR0
+ ldrb w0, [x0,#:lo12:.LANCHOR0]
+ cbz w0, .L356
+ mov w0, w19
+ bl zftl_flash_enter_slc_mode
+ b .L356
+.L355:
+ ldr x0, [x20,624]
+ ldrb w0, [x0,12]
+ cmp w0, 3
+ bne .L357
+ sxtw x0, w19
+ add x0, x0, 8
+ add x0, x24, x0, lsl 8
+ str w22, [x0,8]
+ b .L356
+.L357:
+ mov w0, w19
+ bl zftl_flash_exit_slc_mode
+.L356:
+ ubfiz x19, x19, 8, 8
+ and w0, w21, 255
+ add x1, x24, x19
+ str wzr, [x1,2056]
+ str wzr, [x1,2052]
+ str wzr, [x1,2052]
+ str w0, [x1,2052]
+ lsr w0, w21, 8
+ str w0, [x1,2052]
+ lsr w21, w21, 16
+ str w21, [x1,2052]
+ mov w0, 0
+ str w23, [x1,2056]
+ bl nandc_de_cs
+ ldp x19, x20, [sp,16]
+ ldp x21, x22, [sp,32]
+ ldp x23, x24, [sp,48]
+ ldp x29, x30, [sp], 64
+ ret
+ .size flash_start_page_read, .-flash_start_page_read
+ .align 2
+ .global nandc_wait_flash_ready
+ .type nandc_wait_flash_ready, %function
+nandc_wait_flash_ready:
+ stp x29, x30, [sp, -48]!
+ mov w0, 150
+ add x29, sp, 0
+ stp x19, x20, [sp,16]
+ mov w19, 34464
+ adrp x20, .LANCHOR0
+ movk w19, 0x1, lsl 16
+ bl timer_delay_ns
+.L363:
+ add x0, x20, :lo12:.LANCHOR0
+ ldr x0, [x0,536]
+ ldr w0, [x0]
+ str w0, [x29,40]
+ ldr w0, [x29,40]
+ tbnz x0, 9, .L364
+ mov w0, 10
+ bl timer_delay_ns
+ subs w19, w19, #1
+ bne .L363
+ mov w0, -1
+ b .L362
+.L364:
+ mov w0, 0
+.L362:
+ ldp x19, x20, [sp,16]
+ ldp x29, x30, [sp], 48
+ ret
.size nandc_wait_flash_ready, .-nandc_wait_flash_ready
.align 2
.global sandisk_set_rr_para
@@ -1661,23 +1916,23 @@ sandisk_set_rr_para:
add x0, x0, x1
add x1, x2, x1
mov x2, 0
-.L318:
+.L367:
add x3, x5, :lo12:.LANCHOR0
ldrb w4, [x3,726]
cmp w4, w2
- bls .L323
+ bls .L372
ldrb w3, [x3,725]
cmp w3, 67
- bne .L319
+ bne .L368
ldrsb w3, [x0,x2]
- b .L322
-.L319:
+ b .L371
+.L368:
ldrsb w3, [x1,x2]
-.L322:
+.L371:
str w3, [x20]
add x2, x2, 1
- b .L318
-.L323:
+ b .L367
+.L372:
bl nandc_wait_flash_ready
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 32
@@ -1702,7 +1957,7 @@ toshiba_3d_set_tlc_rr_para:
adrp x0, .LANCHOR1
madd x1, x2, x1, x1
add x0, x0, :lo12:.LANCHOR1
- add x0, x0, 272
+ add x0, x0, 296
add x20, x0, x1
ldrsb w0, [x0,x1]
str w0, [x19]
@@ -1744,7 +1999,7 @@ toshiba_3d_set_slc_rr_para:
adrp x2, .LANCHOR1
add x2, x2, :lo12:.LANCHOR1
add x1, x2, x1, uxtb
- ldrsb w1, [x1,673]
+ ldrsb w1, [x1,697]
str w1, [x0]
str wzr, [x0]
str wzr, [x0]
@@ -1766,12 +2021,12 @@ toshiba_tlc_set_rr_para:
mov w21, 239
adrp x0, .LANCHOR2
str w21, [x19,8]
- cbz w2, .L327
+ cbz w2, .L376
mov w2, 18
str w2, [x19,4]
mov x2, 7
add x0, x0, :lo12:.LANCHOR2
- add x0, x0, 8
+ add x0, x0, 40
mul x1, x1, x2
add x20, x0, x1
ldrb w0, [x0,x1]
@@ -1793,18 +2048,18 @@ toshiba_tlc_set_rr_para:
ldrb w0, [x20,6]
str w0, [x19]
str wzr, [x19]
- b .L328
-.L327:
+ b .L377
+.L376:
add x0, x0, :lo12:.LANCHOR2
mov w3, 20
- add x0, x0, 344
+ add x0, x0, 376
str w3, [x19,4]
ldrb w0, [x0,x1]
str w0, [x19]
str w2, [x19]
str w2, [x19]
str w2, [x19]
-.L328:
+.L377:
bl nandc_wait_flash_ready
ldr x21, [sp,32]
ldp x19, x20, [sp,16]
@@ -1812,211 +2067,6 @@ toshiba_tlc_set_rr_para:
ret
.size toshiba_tlc_set_rr_para, .-toshiba_tlc_set_rr_para
.align 2
- .global zftl_flash_enter_slc_mode
- .type zftl_flash_enter_slc_mode, %function
-zftl_flash_enter_slc_mode:
- adrp x2, .LANCHOR0
- uxtb x0, w0
- stp x29, x30, [sp, -16]!
- add x1, x2, :lo12:.LANCHOR0
- add x29, sp, 0
- ldrb w2, [x2,#:lo12:.LANCHOR0]
- cbz w2, .L329
- cmp w2, 1
- ldr x3, [x1,536]
- bne .L332
- adrp x1, .LANCHOR2+405
- ldrb w2, [x1,#:lo12:.LANCHOR2+405]
- cbz w2, .L329
- sxtw x1, w0
- add x1, x1, 8
- add x0, x3, x1, lsl 8
- str w2, [x0,8]
- b .L329
-.L332:
- cmp w2, 2
- bne .L334
- add x1, x1, x0
- ldrb w2, [x1,744]
- cbz w2, .L329
- strb wzr, [x1,744]
- adrp x1, .LANCHOR2+405
- ldrb w1, [x1,#:lo12:.LANCHOR2+405]
- cbz w1, .L329
- add x0, x0, 8
- add x0, x3, x0, lsl 8
- str w1, [x0,8]
- b .L329
-.L334:
- cmp w2, 3
- bne .L329
- add x1, x1, x0, sxtw
- ldrb w2, [x1,744]
- cbz w2, .L329
- strb wzr, [x1,744]
- ubfiz x1, x0, 8, 8
- add x0, x3, x1
- mov w1, 239
- str w1, [x0,2056]
- mov w1, 145
- str w1, [x0,2052]
- mov w1, 1
- str wzr, [x0,2048]
- str w1, [x0,2048]
- str wzr, [x0,2048]
- str wzr, [x0,2048]
- bl nandc_wait_flash_ready
-.L329:
- ldp x29, x30, [sp], 16
- ret
- .size zftl_flash_enter_slc_mode, .-zftl_flash_enter_slc_mode
- .align 2
- .global zftl_flash_exit_slc_mode
- .type zftl_flash_exit_slc_mode, %function
-zftl_flash_exit_slc_mode:
- adrp x2, .LANCHOR0
- uxtb x0, w0
- stp x29, x30, [sp, -16]!
- add x1, x2, :lo12:.LANCHOR0
- add x29, sp, 0
- ldrb w2, [x2,#:lo12:.LANCHOR0]
- cbz w2, .L347
- cmp w2, 1
- ldr x4, [x1,536]
- bne .L350
- adrp x1, .LANCHOR2+406
- ldrb w2, [x1,#:lo12:.LANCHOR2+406]
- cbz w2, .L347
- sxtw x1, w0
- add x1, x1, 8
- add x0, x4, x1, lsl 8
- str w2, [x0,8]
- b .L347
-.L350:
- cmp w2, 2
- bne .L352
- add x1, x1, x0
- ldrb w2, [x1,744]
- cbnz w2, .L347
- adrp x2, .LANCHOR2
- mov w5, 4
- add x2, x2, :lo12:.LANCHOR2
- ldrb w3, [x2,388]
- cmp w3, 2
- csel w3, w3, w5, eq
- strb w3, [x1,744]
- ldrb w1, [x2,406]
- cbz w1, .L347
- add x0, x0, 8
- add x0, x4, x0, lsl 8
- str w1, [x0,8]
- b .L347
-.L352:
- cmp w2, 3
- bne .L347
- add x1, x1, x0, sxtw
- ldrb w3, [x1,744]
- cbnz w3, .L347
- adrp x2, .LANCHOR2+388
- mov w5, 4
- ldrb w2, [x2,#:lo12:.LANCHOR2+388]
- cmp w2, 2
- csel w2, w2, w5, eq
- strb w2, [x1,744]
- ubfiz x1, x0, 8, 8
- add x0, x4, x1
- mov w1, 239
- str w1, [x0,2056]
- mov w1, 145
- str w1, [x0,2052]
- mov w1, 1
- str w2, [x0,2048]
- str w1, [x0,2048]
- str w3, [x0,2048]
- str w3, [x0,2048]
- bl nandc_wait_flash_ready
-.L347:
- ldp x29, x30, [sp], 16
- ret
- .size zftl_flash_exit_slc_mode, .-zftl_flash_exit_slc_mode
- .align 2
- .global flash_start_page_read
- .type flash_start_page_read, %function
-flash_start_page_read:
- stp x29, x30, [sp, -64]!
- add x29, sp, 0
- stp x19, x20, [sp,16]
- adrp x20, .LANCHOR0
- ubfx x19, x1, 21, 3
- stp x23, x24, [sp,48]
- uxtb w23, w0
- add x0, x20, :lo12:.LANCHOR0
- stp x21, x22, [sp,32]
- and w21, w1, 2097151
- ubfx x22, x1, 24, 2
- ldrb w0, [x0,633]
- cmp w0, w19
- bhi .L366
- adrp x1, .LANCHOR1
- adrp x0, .LC0
- add x1, x1, :lo12:.LANCHOR1
- mov w2, 748
- add x1, x1, 688
- add x0, x0, :lo12:.LC0
- bl printk
- bl dump_stack
-.L366:
- add x20, x20, :lo12:.LANCHOR0
- add x19, x20, x19, sxtw
- ldrb w19, [x19,736]
- mov w0, w19
- ldr x24, [x20,536]
- bl nandc_cs
- cbnz w22, .L367
- mov w0, w21
- bl slc_phy_page_address_calc
- mov w21, w0
- adrp x0, .LANCHOR0
- ldrb w0, [x0,#:lo12:.LANCHOR0]
- cbz w0, .L368
- mov w0, w19
- bl zftl_flash_enter_slc_mode
- b .L368
-.L367:
- ldr x0, [x20,624]
- ldrb w0, [x0,12]
- cmp w0, 3
- bne .L369
- sxtw x0, w19
- add x0, x0, 8
- add x0, x24, x0, lsl 8
- str w22, [x0,8]
- b .L368
-.L369:
- mov w0, w19
- bl zftl_flash_exit_slc_mode
-.L368:
- ubfiz x19, x19, 8, 8
- and w0, w21, 255
- add x1, x24, x19
- str wzr, [x1,2056]
- str wzr, [x1,2052]
- str wzr, [x1,2052]
- str w0, [x1,2052]
- lsr w0, w21, 8
- str w0, [x1,2052]
- lsr w21, w21, 16
- str w21, [x1,2052]
- mov w0, 0
- str w23, [x1,2056]
- bl nandc_de_cs
- ldp x19, x20, [sp,16]
- ldp x21, x22, [sp,32]
- ldp x23, x24, [sp,48]
- ldp x29, x30, [sp], 64
- ret
- .size flash_start_page_read, .-flash_start_page_read
- .align 2
.global flash_start_plane_read
.type flash_start_plane_read, %function
flash_start_plane_read:
@@ -2035,23 +2085,23 @@ flash_start_plane_read:
stp x27, x28, [sp,80]
ldrb w0, [x0,633]
cmp w0, w19
- bhi .L374
+ bhi .L379
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
- mov w2, 843
+ mov w2, 849
add x1, x1, 712
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L374:
+.L379:
add x26, x22, :lo12:.LANCHOR0
add x19, x26, x19, sxtw
ldrb w24, [x19,736]
mov w0, w24
ldr x25, [x26,536]
bl nandc_cs
- cbnz w20, .L375
+ cbnz w20, .L380
mov w0, w23
bl slc_phy_page_address_calc
mov w23, w0
@@ -2060,24 +2110,24 @@ flash_start_plane_read:
mov w21, w0
adrp x0, .LANCHOR0
ldrb w0, [x0,#:lo12:.LANCHOR0]
- cbz w0, .L376
+ cbz w0, .L381
mov w0, w24
bl zftl_flash_enter_slc_mode
- b .L376
-.L375:
+ b .L381
+.L380:
ldr x0, [x26,624]
ldrb w0, [x0,12]
cmp w0, 3
- bne .L377
+ bne .L382
sxtw x0, w24
add x0, x0, 8
add x0, x25, x0, lsl 8
str w20, [x0,8]
- b .L376
-.L377:
+ b .L381
+.L382:
mov w0, w24
bl zftl_flash_exit_slc_mode
-.L376:
+.L381:
add x26, x22, :lo12:.LANCHOR0
and w2, w23, 255
add x0, x26, 640
@@ -2089,7 +2139,7 @@ flash_start_plane_read:
cmp w1, 1
lsr w1, w23, 8
lsr w23, w23, 16
- bne .L378
+ bne .L383
add x19, x25, x19, lsl 8
ldrb w3, [x0,8]
ldrb w0, [x0,9]
@@ -2101,35 +2151,35 @@ flash_start_plane_read:
str w23, [x19,2052]
str w0, [x19,2056]
bl nandc_wait_flash_ready
- cbz w20, .L379
+ cbz w20, .L384
ldr x0, [x26,624]
ldrb w0, [x0,12]
cmp w0, 3
- bne .L379
+ bne .L384
str w20, [x19,2056]
-.L379:
+.L384:
str wzr, [x19,2056]
str wzr, [x19,2052]
str wzr, [x19,2052]
- b .L397
-.L378:
+ b .L402
+.L383:
add x19, x25, x19, lsl 8
ldrb w0, [x0,8]
str w0, [x19,2056]
str w2, [x19,2052]
str w1, [x19,2052]
str w23, [x19,2052]
- cbz w20, .L381
+ cbz w20, .L386
ldr x0, [x26,624]
ldrb w0, [x0,12]
cmp w0, 3
- bne .L381
+ bne .L386
str w20, [x19,2056]
-.L381:
+.L386:
add x22, x22, :lo12:.LANCHOR0
ldrb w0, [x22,649]
str w0, [x19,2056]
-.L397:
+.L402:
str w28, [x19,2052]
mov w0, 48
str w27, [x19,2052]
@@ -2163,80 +2213,80 @@ flash_set_interface_mode:
add x26, x22, 748
adrp x24, .LANCHOR2
add x23, x23, :lo12:.LC38
-.L411:
+.L416:
lsl x0, x21, 3
ldr x20, [x22,536]
ldrb w19, [x0,x26]
adrp x0, .LANCHOR0
cmp w19, 152
- beq .L399
+ beq .L404
cmp w19, 69
- beq .L399
+ beq .L404
cmp w19, 44
- beq .L399
+ beq .L404
cmp w19, 137
- bne .L400
-.L399:
+ bne .L405
+.L404:
add x0, x0, :lo12:.LANCHOR0
cmp w25, 1
ldrb w1, [x0,780]
- bne .L402
- tbz x1, 0, .L400
+ bne .L407
+ tbz x1, 0, .L405
ldr w0, [x24,#:lo12:.LANCHOR2]
- tbz x0, 12, .L403
+ tbz x0, 12, .L408
adrp x0, .LC37
add x0, x0, :lo12:.LC37
bl printk
-.L403:
+.L408:
add x1, x20, x21, lsl 8
mov w0, 239
cmp w19, 137
str w0, [x1,2056]
- beq .L412
+ beq .L417
cmp w19, 44
- bne .L404
-.L412:
+ bne .L409
+.L417:
mov w0, 1
str w0, [x1,2052]
mov w0, 5
- b .L431
-.L404:
+ b .L436
+.L409:
mov w0, 128
str w0, [x1,2052]
mov w0, 1
- b .L431
-.L402:
- tbz x1, 2, .L400
+ b .L436
+.L407:
+ tbz x1, 2, .L405
ldr w0, [x24,#:lo12:.LANCHOR2]
- tbz x0, 12, .L407
+ tbz x0, 12, .L412
mov x0, x23
bl printk
-.L407:
+.L412:
add x1, x20, x21, lsl 8
mov w0, 239
cmp w19, 137
str w0, [x1,2056]
- beq .L413
+ beq .L418
cmp w19, 44
cset w0, eq
- cbz w0, .L408
-.L413:
+ cbz w0, .L413
+.L418:
mov w0, 1
str w0, [x1,2052]
mov w0, 35
- b .L431
-.L408:
+ b .L436
+.L413:
mov w2, 128
str w2, [x1,2052]
-.L431:
+.L436:
str w0, [x1,2048]
str wzr, [x1,2048]
str wzr, [x1,2048]
str wzr, [x1,2048]
-.L400:
+.L405:
add x21, x21, 1
cmp x21, 4
- bne .L411
+ bne .L416
bl nandc_wait_flash_ready
mov w0, 0
ldp x19, x20, [sp,16]
@@ -2308,7 +2358,7 @@ flash_read_id:
sub w0, w2, #1
uxtb w0, w0
cmp w0, 253
- bhi .L434
+ bhi .L439
adrp x0, .LC39
ldrb w3, [x19,1]
ldrb w4, [x19,2]
@@ -2318,7 +2368,7 @@ flash_read_id:
ldrb w6, [x19,4]
ldrb w7, [x19,5]
bl printk
-.L434:
+.L439:
ldp x19, x20, [sp,16]
ldr x21, [sp,32]
ldp x29, x30, [sp], 48
@@ -2333,11 +2383,11 @@ flash_read_spare:
ubfiz x0, x0, 8, 8
add x29, sp, 0
str x19, [sp,16]
- adrp x3, .LANCHOR2+385
+ adrp x3, .LANCHOR2+17
ldr x19, [x4,#:lo12:.LANCHOR0+536]
str x2, [x29,40]
add x19, x19, x0
- ldrb w3, [x3,#:lo12:.LANCHOR2+385]
+ ldrb w3, [x3,#:lo12:.LANCHOR2+17]
and w0, w1, 255
lsl w3, w3, 9
str wzr, [x19,2056]
@@ -2374,11 +2424,11 @@ sandisk_prog_test_bad_block:
mov x20, x2
sxtw x2, w0
add x2, x2, 8
- ldrb w3, [x3,405]
+ ldrb w3, [x3,37]
add x2, x19, x2, lsl 8
- cbnz w3, .L447
+ cbnz w3, .L452
mov w3, 162
-.L447:
+.L452:
ubfiz x0, x0, 8, 8
str w3, [x2,8]
add x19, x19, x0
@@ -2403,14 +2453,14 @@ sandisk_prog_test_bad_block:
ldr w2, [x19,2048]
mov w0, 5
ands w19, w2, w0
- beq .L440
+ beq .L445
ldr w0, [x20,#:lo12:.LANCHOR2]
ldr x1, [x29,40]
- tbz x0, 12, .L440
+ tbz x0, 12, .L445
adrp x0, .LC40
add x0, x0, :lo12:.LC40
bl printk
-.L440:
+.L445:
mov w0, w19
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 48
@@ -2441,44 +2491,44 @@ nandc_bch_sel:
strb w0, [x1,724]
cmp w2, 9
ldr x2, [x1,536]
- bne .L450
+ bne .L455
str w3, [x2,16]
cmp w0, 70
mov w1, 0
- beq .L451
+ beq .L456
cmp w0, 60
mov w1, 3
- beq .L451
+ beq .L456
cmp w0, 40
mov w1, 2
csel w1, w1, w3, eq
-.L451:
+.L456:
lsl w1, w1, 25
orr w1, w1, 1
str w1, [x2,32]
- b .L449
-.L450:
+ b .L454
+.L455:
str w3, [x2,8]
cmp w0, 16
mov w1, 4096
- bne .L453
-.L456:
+ bne .L458
+.L461:
and w1, w1, -17
- b .L454
-.L453:
+ b .L459
+.L458:
cmp w0, 24
- bne .L455
+ bne .L460
orr w1, w1, 16
- b .L454
-.L455:
+ b .L459
+.L460:
cmp w0, 40
orr w1, w1, 262144
orr w1, w1, 16
- beq .L456
-.L454:
+ beq .L461
+.L459:
orr w1, w1, 1
str w1, [x2,12]
-.L449:
+.L454:
ret
.size nandc_bch_sel, .-nandc_bch_sel
.align 2
@@ -2502,7 +2552,7 @@ zftl_flash_resume:
str w2, [x1,4]
ldr x1, [x0,536]
ldr w2, [x0,552]
- bne .L464
+ bne .L469
str w2, [x1,16]
ldr w2, [x0,556]
str w2, [x1,32]
@@ -2514,8 +2564,8 @@ zftl_flash_resume:
str w2, [x1,520]
ldr w0, [x0,572]
str w0, [x1,8]
- b .L465
-.L464:
+ b .L470
+.L469:
str w2, [x1,8]
ldr w2, [x0,556]
str w2, [x1,12]
@@ -2527,18 +2577,18 @@ zftl_flash_resume:
str w2, [x1,336]
ldr w0, [x0,572]
str w0, [x1,344]
-.L465:
+.L470:
add x22, x20, :lo12:.LANCHOR0
mov x19, 0
add x23, x22, 748
mov w24, 2
-.L467:
+.L472:
lsl x0, x19, 3
ldrb w0, [x0,x23]
sub w0, w0, #1
uxtb w0, w0
cmp w0, 253
- bhi .L466
+ bhi .L471
uxtb w21, w19
mov w0, w21
bl flash_reset
@@ -2546,13 +2596,13 @@ zftl_flash_resume:
strb w24, [x19,x0]
mov w0, w21
bl zftl_flash_enter_slc_mode
-.L466:
+.L471:
add x19, x19, 1
cmp x19, 4
- bne .L467
+ bne .L472
add x20, x20, :lo12:.LANCHOR0
ldrb w0, [x20,672]
- cbz w0, .L468
+ cbz w0, .L473
mov w0, 1
bl nandc_set_if_mode
mov w0, w19
@@ -2562,9 +2612,9 @@ zftl_flash_resume:
ldr w0, [x20,560]
lsr w0, w0, 8
bl nandc_set_ddr_para
-.L468:
- adrp x0, .LANCHOR2+396
- ldrb w0, [x0,#:lo12:.LANCHOR2+396]
+.L473:
+ adrp x0, .LANCHOR2+28
+ ldrb w0, [x0,#:lo12:.LANCHOR2+28]
bl nandc_bch_sel
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -2597,30 +2647,30 @@ nandc_iqr_wait_flash_ready:
ldrb w1, [x19,516]
ldr x0, [x19,536]
cmp w1, 9
- bne .L475
+ bne .L480
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 .L476
-.L475:
+ b .L481
+.L480:
ldr w1, [x0,368]
orr w1, w1, 2
str w1, [x0,368]
ldr w1, [x0,364]
orr w1, w1, 2
str w1, [x0,364]
-.L476:
+.L481:
ldr w1, [x0]
- tbnz x1, 9, .L477
+ tbnz x1, 9, .L482
bl wait_for_nand_flash_ready
- b .L474
-.L477:
+ b .L479
+.L482:
mov w1, 1
bl nandc_irq_disable
-.L474:
+.L479:
ldr x19, [sp,16]
ldp x29, x30, [sp], 32
ret
@@ -2643,16 +2693,16 @@ flash_erase_duplane_block:
ldrb w0, [x0,633]
mov w24, w3
cmp w0, w19
- bhi .L480
+ bhi .L485
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
- mov w2, 517
+ mov w2, 523
add x1, x1, 736
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L480:
+.L485:
add x0, x20, :lo12:.LANCHOR0
add x19, x0, x19, sxtw
ldrb w23, [x19,736]
@@ -2662,24 +2712,24 @@ flash_erase_duplane_block:
add x23, x23, 8
ldr w0, [x0,#:lo12:.LANCHOR2]
add x23, x19, x23, lsl 8
- tbz x0, 4, .L481
+ tbz x0, 4, .L486
adrp x0, .LC41
mov w1, w21
add x0, x0, :lo12:.LC41
mov w2, w22
mov w3, w24
bl printk
-.L481:
+.L486:
bl nandc_wait_flash_ready
mov w0, w21
bl nandc_cs
mov w0, w21
- cbnz w25, .L482
+ cbnz w25, .L487
bl zftl_flash_enter_slc_mode
- b .L483
-.L482:
+ b .L488
+.L487:
bl zftl_flash_exit_slc_mode
-.L483:
+.L488:
ubfiz x4, x21, 8, 8
mov w0, 96
add x19, x19, x4
@@ -2693,7 +2743,7 @@ flash_erase_duplane_block:
str w0, [x19,2052]
ldrb w0, [x20,781]
mov w20, 0
- cbnz w0, .L484
+ cbnz w0, .L489
mov w0, 208
str w0, [x19,2056]
mov w20, 5
@@ -2701,7 +2751,7 @@ flash_erase_duplane_block:
mov x0, x23
bl flash_read_status
and w20, w0, w20
-.L484:
+.L489:
mov w0, 96
str w0, [x19,2056]
and w0, w24, 255
@@ -2724,12 +2774,12 @@ flash_erase_duplane_block:
ldr x2, [x29,88]
and w19, w2, w19
orr w19, w19, w20
- cbz w19, .L485
+ cbz w19, .L490
adrp x0, .LC42
mov w1, w22
add x0, x0, :lo12:.LC42
bl printk
-.L485:
+.L490:
mov w0, w19
ldr x25, [sp,64]
ldp x19, x20, [sp,16]
@@ -2756,16 +2806,16 @@ flash_erase_block_en:
ldrb w0, [x0,633]
and w24, w2, 2097151
cmp w0, w23
- bhi .L494
+ bhi .L499
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
- mov w2, 562
+ mov w2, 568
add x1, x1, 768
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L494:
+.L499:
add x0, x19, :lo12:.LANCHOR0
add x1, x0, x23, sxtw
ldrb w21, [x1,736]
@@ -2775,24 +2825,24 @@ flash_erase_block_en:
add x21, x21, 8
ldr w0, [x0,#:lo12:.LANCHOR2]
add x21, x25, x21, lsl 8
- tbz x0, 4, .L495
+ tbz x0, 4, .L500
adrp x0, .LC43
mov w1, w20
add x0, x0, :lo12:.LC43
mov w2, w22
mov w3, w26
bl printk
-.L495:
+.L500:
bl nandc_wait_flash_ready
mov w0, w20
bl nandc_cs
mov w0, w20
- cbnz w26, .L496
+ cbnz w26, .L501
bl zftl_flash_enter_slc_mode
- b .L497
-.L496:
+ b .L502
+.L501:
bl zftl_flash_exit_slc_mode
-.L497:
+.L502:
ubfiz x3, x20, 8, 8
mov w0, 96
add x3, x25, x3
@@ -2814,7 +2864,7 @@ flash_erase_block_en:
bl nandc_de_cs
mov w3, 5
ands w20, w21, w3
- beq .L498
+ beq .L503
add x19, x19, :lo12:.LANCHOR0
adrp x0, .LC44
add x0, x0, :lo12:.LC44
@@ -2823,7 +2873,7 @@ flash_erase_block_en:
ldrh w2, [x19,2]
udiv w2, w22, w2
bl printk
-.L498:
+.L503:
mov w0, w20
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -2856,35 +2906,35 @@ flash_erase_all:
stp x21, x22, [sp,32]
stp x23, x24, [sp,48]
mov w19, 0
- ldrb w1, [x0,389]
- ldrh w20, [x0,390]
+ ldrb w1, [x0,21]
+ ldrh w20, [x0,22]
adrp x0, .LANCHOR0
add x23, x0, :lo12:.LANCHOR0
mov x21, x0
mul w20, w1, w20
uxth w20, w20
-.L507:
+.L512:
ldrb w0, [x23,633]
cmp w0, w19
- bls .L511
+ bls .L516
add x0, x23, x19, sxtw
ldrb w24, [x0,736]
mov w22, 0
-.L508:
+.L513:
cmp w20, w22, uxth
- bls .L512
+ bls .L517
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 .L508
-.L512:
+ b .L513
+.L517:
add w19, w19, 1
uxth w19, w19
- b .L507
-.L511:
+ b .L512
+.L516:
adrp x0, .LC45
mov w1, 0
add x0, x0, :lo12:.LC45
@@ -2918,21 +2968,21 @@ nandc_xfer_start:
add x21, x22, :lo12:.LANCHOR0
str x2, [x29,80]
stp x23, x24, [sp,48]
- stp x19, x20, [sp,16]
- uxtb w24, w0
- uxtb w23, w1
+ uxtb w23, w0
+ uxtb w24, w1
ldr x0, [x21,536]
- add w20, w23, 1
+ stp x19, x20, [sp,16]
str x3, [x29,88]
+ add w20, w24, 1
bl rk_nandc_xfer_irq_flag_init
ldrb w0, [x21,516]
ldr x4, [x21,536]
cmp w0, 9
ldr x3, [x29,88]
ldr x2, [x29,80]
- bne .L515
+ bne .L520
ldr w0, [x4,292]
- ubfiz w19, w24, 1, 1
+ ubfiz w19, w23, 1, 1
orr w19, w19, 8
asr w20, w20, 1
orr w0, w0, 1
@@ -2948,15 +2998,15 @@ nandc_xfer_start:
and w19, w19, -17
bfi w19, w20, 22, 6
orr w19, w19, 128
- cbz w0, .L517
+ cbz w0, .L522
ldrb w1, [x21,720]
orr w0, w19, 512
cmp w1, wzr
csel w19, w0, w19, ne
- b .L517
-.L515:
+ b .L522
+.L520:
ldr w0, [x4,368]
- ubfiz w19, w24, 1, 1
+ ubfiz w19, w23, 1, 1
orr w19, w19, 8
asr w20, w20, 1
orr w0, w0, 1
@@ -2975,40 +3025,40 @@ nandc_xfer_start:
orr w19, w19, 1024
and w19, w19, -17
bfi w19, w20, 22, 6
- cbz w24, .L529
+ cbz w23, .L534
ldrb w0, [x21,724]
- ubfx x23, x23, 1, 7
+ ubfx x24, x24, 1, 7
mov w1, 64
mov w4, 128
cmp w0, 25
- add x23, x3, x23, lsl 2
+ add x24, x3, x24, lsl 2
csel w4, w1, w4, cc
mov w1, 0
- b .L522
-.L517:
+ b .L527
+.L522:
add x22, x22, :lo12:.LANCHOR0
- ubfx x21, x19, 22, 6
+ and w20, w20, 63
mov x0, x2
- lsl w1, w21, 10
+ lsl w1, w20, 10
str x2, [x22,688]
- mov w2, w24
+ mov w2, w23
str x3, [x22,696]
bl rknand_dma_map_single
str w0, [x22,704]
ldr x0, [x22,696]
- lsl w1, w21, 2
- mov w2, w24
+ lsl w1, w20, 2
+ mov w2, w23
bl rknand_dma_map_single
str w0, [x22,708]
- ldr x3, [x22,536]
+ ldr x2, [x22,536]
mov w1, 1
str w1, [x22,712]
- cmp w24, wzr
+ cmp w23, wzr
ldr w1, [x22,704]
- str w1, [x3,52]
- str w0, [x3,56]
+ str w1, [x2,52]
+ str w0, [x2,56]
mov w0, 16
- ldr w1, [x3,48]
+ ldr w1, [x2,48]
bfi w1, w0, 9, 5
mov w0, 2
orr w1, w1, 448
@@ -3019,15 +3069,15 @@ nandc_xfer_start:
ldrh w0, [x22,722]
orr w1, w1, 1
bfi w1, w0, 16, 11
- str w1, [x3,48]
- str w19, [x3,16]
+ str w1, [x2,48]
+ str w19, [x2,16]
orr w19, w19, 4
- str w19, [x3,16]
- b .L514
-.L522:
- cmp x3, x23
+ str w19, [x2,16]
+ b .L519
+.L527:
+ cmp x3, x24
add w0, w1, w4
- beq .L524
+ beq .L529
ldrh w5, [x3,2]
and x1, x1, 4294967292
ldr x6, [x21,680]
@@ -3035,11 +3085,11 @@ nandc_xfer_start:
orr w5, w7, w5, lsl 16
str w5, [x6,x1]
mov w1, w0
- b .L522
-.L529:
+ b .L527
+.L534:
ldr x1, [x21,680]
str w0, [x1]
-.L524:
+.L529:
add x22, x22, :lo12:.LANCHOR0
and w20, w20, 63
lsl w1, w20, 10
@@ -3047,18 +3097,18 @@ nandc_xfer_start:
str x2, [x22,688]
str x0, [x22,696]
mov x0, x2
- mov w2, w24
+ mov w2, w23
bl rknand_dma_map_single
str w0, [x22,704]
ldr x0, [x22,696]
lsl w1, w20, 7
- mov w2, w24
+ mov w2, w23
bl rknand_dma_map_single
str w0, [x22,708]
ldr x3, [x22,536]
mov w0, 1
str w0, [x22,712]
- cmp w24, wzr
+ cmp w23, wzr
ldr w0, [x22,704]
mov w1, 8660
str w0, [x3,20]
@@ -3072,7 +3122,7 @@ nandc_xfer_start:
str w19, [x3,8]
orr w19, w19, 4
str w19, [x3,8]
-.L514:
+.L519:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -3098,12 +3148,12 @@ nandc_set_seed:
ldrb w2, [x0,516]
ldr x0, [x0,536]
cmp w2, 9
- bne .L532
+ bne .L537
str w1, [x0,520]
- b .L530
-.L532:
+ b .L535
+.L537:
str w1, [x0,336]
-.L530:
+.L535:
ret
.size nandc_set_seed, .-nandc_set_seed
.align 2
@@ -3119,24 +3169,24 @@ zftl_flash_de_init:
add x20, x19, :lo12:.LANCHOR0
bl hynix_reconfig_rr_para
ldrb w0, [x20,672]
- cbz w0, .L537
+ cbz w0, .L542
ldrb w0, [x20,780]
- tbz x0, 0, .L537
+ tbz x0, 0, .L542
mov w0, 1
bl flash_set_interface_mode
mov w0, 1
bl nandc_set_if_mode
strb wzr, [x20,672]
-.L537:
+.L542:
add x19, x19, :lo12:.LANCHOR0
ldrb w0, [x19,720]
- cbz w0, .L538
+ cbz w0, .L543
mov w0, 0
strb wzr, [x19,720]
bl nandc_set_seed
mov w0, 1
strb w0, [x19,720]
-.L538:
+.L543:
mov w0, 0
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 32
@@ -3174,7 +3224,7 @@ buf_init:
add x19, x19, 784
mov w21, 0
mov x22, x0
-.L551:
+.L556:
add x20, x22, :lo12:.LANCHOR0
uxtb w0, w21
add w1, w0, 1
@@ -3193,7 +3243,7 @@ buf_init:
bl ftl_malloc
str x0, [x19,-40]
cmp w21, 32
- bne .L551
+ bne .L556
strb w21, [x20,2834]
mov w0, -1
strb wzr, [x20,2833]
@@ -3211,7 +3261,7 @@ buf_reinit:
mov w2, 0
add x1, x0, :lo12:.LANCHOR0
add x1, x1, 784
-.L554:
+.L559:
uxtb w3, w2
add w2, w2, 1
add w4, w3, 1
@@ -3221,7 +3271,7 @@ buf_reinit:
strb wzr, [x1,2]
add x1, x1, 64
str xzr, [x1,-48]
- bne .L554
+ bne .L559
add x0, x0, :lo12:.LANCHOR0
mov w1, -1
strb wzr, [x0,2833]
@@ -3242,10 +3292,10 @@ buf_add_tail:
mov x19, x1
ldrb w1, [x20]
cmp w1, 255
- bne .L562
+ bne .L567
ldrb w0, [x19,1]
cmp w0, 255
- bne .L558
+ bne .L563
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -3254,23 +3304,23 @@ buf_add_tail:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L558:
+.L563:
ldrb w0, [x19,1]
strb w0, [x20]
- b .L556
-.L562:
+ b .L561
+.L567:
adrp x0, .LANCHOR0
add x0, x0, :lo12:.LANCHOR0
add x0, x0, 784
-.L563:
+.L568:
mov w20, w1
sbfiz x1, x1, 6, 32
ldrb w1, [x0,x1]
cmp w1, 255
- bne .L563
+ bne .L568
ldrb w0, [x19,1]
cmp w0, 255
- bne .L560
+ bne .L565
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -3279,14 +3329,14 @@ buf_add_tail:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L560:
+.L565:
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]
-.L556:
+.L561:
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 32
ret
@@ -3327,22 +3377,22 @@ buf_free:
and w1, w1, 8
uxtb w1, w1
strb w1, [x0,2]
- cbz w1, .L566
+ cbz w1, .L571
ldr w1, [x0,36]
cmn w1, #1
- beq .L566
+ beq .L571
mov x1, x0
add x0, x19, :lo12:.LANCHOR0
add x0, x0, 2833
bl buf_add_tail
- b .L567
-.L566:
+ b .L572
+.L571:
add x1, x19, :lo12:.LANCHOR0
ldrb w2, [x1,2833]
strb w2, [x0]
ldrb w0, [x0,1]
strb w0, [x1,2833]
-.L567:
+.L572:
add x19, x19, :lo12:.LANCHOR0
ldrb w0, [x19,2834]
add w0, w0, 1
@@ -3364,15 +3414,15 @@ buf_alloc:
uxtb w21, w0
mov x19, x1
ldrb w0, [x20,2834]
- cbz w0, .L575
-.L578:
+ cbz w0, .L580
+.L583:
add x1, x19, :lo12:.LANCHOR0
add x0, x1, 784
ldrb w2, [x1,2833]
add x0, x0, x2, lsl 6
- cbz w21, .L576
- b .L577
-.L575:
+ cbz w21, .L581
+ b .L582
+.L580:
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -3382,15 +3432,15 @@ buf_alloc:
bl printk
bl dump_stack
ldrb w1, [x20,2834]
- cbnz w1, .L578
-.L580:
+ cbnz w1, .L583
+.L585:
mov x0, 0
- b .L579
-.L576:
+ b .L584
+.L581:
ldrb w1, [x1,2834]
cmp w1, 1
- beq .L580
-.L577:
+ beq .L585
+.L582:
add x1, x19, :lo12:.LANCHOR0
lsl x2, x2, 6
add x4, x1, 784
@@ -3410,7 +3460,7 @@ buf_alloc:
strb wzr, [x3,56]
str w1, [x3,36]
strb wzr, [x3,57]
-.L579:
+.L584:
ldp x19, x20, [sp,16]
ldr x21, [sp,32]
ldp x29, x30, [sp], 48
@@ -3423,33 +3473,33 @@ buf_remove_buf:
ldrb w4, [x1,1]
ldrb w2, [x0]
cmp w4, w2
- bne .L587
+ bne .L592
ldrb w1, [x1]
strb w1, [x0]
- b .L591
-.L587:
+ b .L596
+.L592:
adrp x0, .LANCHOR0
add x0, x0, :lo12:.LANCHOR0
add x0, x0, 784
-.L589:
+.L594:
cmp w2, 255
- beq .L592
+ beq .L597
mov w3, w2
sbfiz x2, x2, 6, 32
ldrb w2, [x0,x2]
cmp w2, w4
- bne .L589
+ bne .L594
sbfiz x3, x3, 6, 32
ldrb w2, [x1]
strb w2, [x0,x3]
mov w0, -1
strb w0, [x1]
-.L591:
+.L596:
mov w0, 1
- b .L586
-.L592:
+ b .L591
+.L597:
mov w0, 0
-.L586:
+.L591:
ret
.size buf_remove_buf, .-buf_remove_buf
.align 2
@@ -3463,7 +3513,7 @@ buf_remove_free:
mov x20, x0
add x0, x19, :lo12:.LANCHOR0
ldrb w0, [x0,2834]
- cbnz w0, .L594
+ cbnz w0, .L599
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -3472,22 +3522,22 @@ buf_remove_free:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L594:
+.L599:
add x19, x19, :lo12:.LANCHOR0
ldrb w0, [x19,2834]
- cbz w0, .L593
+ cbz w0, .L598
add x0, x19, 2833
mov x1, x20
bl buf_remove_buf
cmp w0, 1
- bne .L593
+ bne .L598
ldrb w0, [x19,2834]
sub w0, w0, #1
strb w0, [x19,2834]
ldrb w0, [x20,2]
orr w0, w0, 1
strb w0, [x20,2]
-.L593:
+.L598:
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 32
ret
@@ -3499,7 +3549,7 @@ flash_check_bad_block:
adrp x2, .LANCHOR2
uxtb w0, w0
add x2, x2, :lo12:.LANCHOR2
- add x2, x2, 376
+ add x2, x2, 8
ldrb w3, [x2,13]
ldrh w2, [x2,14]
mul w2, w3, w2
@@ -3532,9 +3582,9 @@ flash_mask_bad_block:
uxtb w19, w0
mov w21, w1
mov w1, w19
- ldrb w0, [x3,389]
+ ldrb w0, [x3,21]
mov w2, w21
- ldrh w20, [x3,390]
+ ldrh w20, [x3,22]
mul w20, w0, w20
adrp x0, .LC46
add x0, x0, :lo12:.LC46
@@ -3567,49 +3617,49 @@ flash_mask_bad_block:
str2hex:
ldrb w1, [x0]
cmp w1, 48
- bne .L601
+ bne .L606
ldrb w1, [x0,1]
add x2, x0, 2
and w1, w1, -33
uxtb w1, w1
cmp w1, 88
csel x0, x0, x2, ne
-.L601:
+.L606:
ldrb w1, [x0]
and w1, w1, -33
uxtb w1, w1
cmp w1, 88
mov w1, 0
csinc x0, x0, x0, ne
-.L603:
+.L608:
ldrb w2, [x0]
- cbz w2, .L610
+ cbz w2, .L615
sub w3, w2, #48
uxtb w3, w3
cmp w3, 9
- bhi .L604
+ bhi .L609
add w1, w2, w1, lsl 4
sub w1, w1, #48
- b .L605
-.L604:
+ b .L610
+.L609:
sub w3, w2, #97
uxtb w3, w3
cmp w3, 5
- bhi .L606
+ bhi .L611
add w1, w2, w1, lsl 4
sub w1, w1, #87
- b .L605
-.L606:
+ b .L610
+.L611:
sub w3, w2, #65
uxtb w3, w3
cmp w3, 5
- bhi .L610
+ bhi .L615
add w1, w2, w1, lsl 4
sub w1, w1, #55
-.L605:
- add x0, x0, 1
- b .L603
.L610:
+ add x0, x0, 1
+ b .L608
+.L615:
mov w0, w1
ret
.size str2hex, .-str2hex
@@ -3649,7 +3699,7 @@ ftl_print_info_to_buf:
adrp x22, .LANCHOR0
add x7, x7, :lo12:.LANCHOR2
adrp x1, .LC48
- add x7, x7, 376
+ add x7, x7, 8
add x21, x22, :lo12:.LANCHOR0
add x19, x20, x0, sxtw
add x1, x1, :lo12:.LC48
@@ -3991,7 +4041,7 @@ gc_add_sblk:
uxth w20, w2
ldrh w0, [x0,576]
cmp w0, w21
- bhi .L618
+ bhi .L623
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -4000,7 +4050,7 @@ gc_add_sblk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L618:
+.L623:
add x6, x22, :lo12:.LANCHOR0
uxtw x19, w21
lsl x25, x19, 1
@@ -4008,7 +4058,7 @@ gc_add_sblk:
ldr x0, [x6,600]
ldrh w26, [x0,x25]
ldr w0, [x24,#:lo12:.LANCHOR2]
- tbz x0, 8, .L619
+ tbz x0, 8, .L624
ldr x0, [x6,584]
mov w1, w21
ldrh w5, [x6,2952]
@@ -4021,14 +4071,14 @@ gc_add_sblk:
add x0, x0, :lo12:.LC84
ubfx x3, x3, 5, 3
bl printk
-.L619:
+.L624:
add x3, x22, :lo12:.LANCHOR0
ldr x0, [x3,584]
add x0, x0, x19, lsl 2
ldrb w19, [x0,2]
ands w19, w19, 224
- bne .L620
- cbz w26, .L621
+ bne .L625
+ cbz w26, .L626
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -4037,51 +4087,51 @@ gc_add_sblk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
- b .L621
-.L620:
+ b .L626
+.L625:
ldrh w1, [x3,2896]
add x6, x3, 2896
mov w19, 0
cmp w1, w21
- beq .L621
+ beq .L626
ldr x3, [x3,608]
ldrh w1, [x3,48]
cmp w1, w21
- beq .L621
+ beq .L626
ldrh w1, [x3,16]
cmp w1, w21
- beq .L621
+ beq .L626
ldrh w1, [x3,80]
cmp w1, w21
- beq .L621
+ beq .L626
ldrh w5, [x6,56]
mov x4, 0
-.L622:
+.L627:
cmp w5, w4
- bls .L653
+ bls .L658
add x4, x4, 1
add x1, x6, x4, lsl 1
ldrh w1, [x1,56]
cmp w1, w21
- bne .L622
+ bne .L627
mov w19, 0
- b .L621
-.L653:
- cbnz w23, .L624
+ b .L626
+.L658:
+ cbnz w23, .L629
add x4, x22, :lo12:.LANCHOR0
mov w19, w23
ldrh w7, [x4,3224]
cmp w7, w21
- beq .L621
+ beq .L626
mov x6, 0
-.L626:
+.L631:
add x1, x4, 3232
ldrh w1, [x6,x1]
cmp w21, w1
- bne .L625
+ bne .L630
ldr w1, [x24,#:lo12:.LANCHOR2]
mov w19, 0
- tbz x1, 8, .L621
+ tbz x1, 8, .L626
ldr x3, [x4,600]
mov w1, w21
ldrb w2, [x0,2]
@@ -4092,20 +4142,20 @@ gc_add_sblk:
ubfx x2, x2, 5, 3
add x0, x0, :lo12:.LC85
bl printk
- b .L621
-.L625:
+ b .L626
+.L630:
add x6, x6, 2
cmp x6, 16
- bne .L626
+ bne .L631
sxtw x4, w20
add x3, x3, x4, lsl 7
add x19, x3, 136
- b .L628
-.L624:
+ b .L633
+.L629:
add x19, x3, 392
-.L628:
+.L633:
ldr w1, [x24,#:lo12:.LANCHOR2]
- tbz x1, 8, .L629
+ tbz x1, 8, .L634
add x6, x22, :lo12:.LANCHOR0
ldrb w3, [x0,2]
adrp x0, .LC84
@@ -4117,37 +4167,37 @@ gc_add_sblk:
ldrh w6, [x6,2878]
ldrh w4, [x4,x25]
bl printk
-.L629:
+.L634:
mov x3, x19
add x0, x19, 128
mov w1, 65535
-.L632:
+.L637:
ldrh w2, [x3]
cmp w2, w1
- bne .L630
+ bne .L635
strh w21, [x3]
add x22, x22, :lo12:.LANCHOR0
- cbz w23, .L631
+ cbz w23, .L636
ldr x1, [x22,608]
ldrh w0, [x1,124]
add w0, w0, 1
strh w0, [x1,124]
- b .L652
-.L631:
+ b .L657
+.L636:
ldr x0, [x22,608]
add x2, x0, x20, uxth 1
ldrh w0, [x2,120]
add w0, w0, 1
strh w0, [x2,120]
-.L652:
+.L657:
mov w19, 1
- b .L621
-.L630:
+ b .L626
+.L635:
add x3, x3, 2
cmp x3, x0
- bne .L632
- b .L652
-.L621:
+ bne .L637
+ b .L657
+.L626:
mov w0, w19
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -4183,11 +4233,11 @@ gc_write_completed:
str x27, [sp,80]
add x23, x21, 784
add x22, x22, 1328
-.L656:
+.L661:
ldrb w0, [x21,3256]
adrp x19, .LANCHOR0
cmp w0, 255
- beq .L678
+ beq .L683
sxtw x25, w0
lsl x0, x25, 6
add x2, x23, x0
@@ -4195,7 +4245,7 @@ gc_write_completed:
ldr w1, [x2,52]
strb w0, [x21,3256]
ldrh w24, [x2,48]
- cbz w1, .L657
+ cbz w1, .L662
ldr w2, [x2,40]
adrp x0, .LC86
mov w3, 1
@@ -4209,21 +4259,21 @@ gc_write_completed:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L657:
+.L662:
add x0, x19, :lo12:.LANCHOR0
mov w20, 1
ldrb w1, [x0,3257]
cmp w1, 3
- bne .L658
+ bne .L663
ldr x0, [x0,608]
ldrb w20, [x0,89]
add w20, w20, w20, lsl 1
and w20, w20, 1023
-.L658:
+.L663:
adrp x0, .LANCHOR2
uxth x26, w24
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L659
+ tbz x0, 8, .L664
add x0, x19, :lo12:.LANCHOR0
mov w1, w24
add x2, x0, x25, lsl 6
@@ -4234,43 +4284,43 @@ gc_write_completed:
add x0, x0, :lo12:.LC87
ldrb w4, [x4,x26]
bl printk
-.L659:
+.L664:
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 .L660
+ beq .L665
adrp x0, .LC0
mov x1, x22
mov w2, 552
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L660:
+.L665:
add x2, x19, :lo12:.LANCHOR0
add x1, x2, 784
add x0, x1, x25, lsl 6
ldrb w0, [x0,61]
cmp w0, 3
- beq .L661
+ beq .L666
ldrb w0, [x2,3257]
cmp w0, 3
- bne .L661
+ bne .L666
ldrb w0, [x2,3272]
- cbnz w0, .L661
+ cbnz w0, .L666
ldr x3, [x2,3264]
- b .L662
-.L661:
+ b .L667
+.L666:
add x19, x19, :lo12:.LANCHOR0
mov w25, 0
mov w26, -1
add x27, x19, 784
strh w24, [x19,3212]
-.L663:
+.L668:
cmp w20, w25, uxth
- bls .L656
+ bls .L661
add w1, w25, w24
ldr x2, [x19,3264]
add w25, w25, 1
@@ -4283,17 +4333,17 @@ gc_write_completed:
ldrb w0, [x19,2903]
sub w0, w0, #1
strb w0, [x19,2903]
- b .L663
-.L662:
+ b .L668
+.L667:
cmp w20, w0, uxth
- bls .L656
+ bls .L661
add w2, w0, w24
add w0, w0, 1
ldrb w2, [x3,x2]
add x2, x1, x2, lsl 6
strb wzr, [x2,61]
- b .L662
-.L678:
+ b .L667
+.L683:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -4311,48 +4361,48 @@ gc_get_src_blk:
ldr x1, [x0,608]
ldrb w0, [x0,3273]
ldrh w4, [x1,124]
- cbz w4, .L680
+ cbz w4, .L685
add x1, x1, 392
mov w2, 1
- b .L681
-.L680:
+ b .L686
+.L685:
sxtw x2, w0
add x0, x1, x2, lsl 1
ldrh w5, [x0,120]
mov w0, 65535
- cbz w5, .L682
+ cbz w5, .L687
add x1, x1, x2, lsl 7
mov w2, w4
add x1, x1, 136
-.L681:
+.L686:
add x4, x1, 128
mov w5, 65535
-.L685:
+.L690:
ldrh w0, [x1]
cmp w0, w5
- beq .L683
+ beq .L688
mov w4, -1
strh w4, [x1]
add x3, x3, :lo12:.LANCHOR0
- cbz w2, .L684
+ cbz w2, .L689
ldr x2, [x3,608]
ldrh w1, [x2,124]
sub w1, w1, #1
strh w1, [x2,124]
- b .L682
-.L684:
+ b .L687
+.L689:
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 .L682
-.L683:
+ b .L687
+.L688:
add x1, x1, 2
cmp x1, x4
- bne .L685
-.L682:
+ bne .L690
+.L687:
ret
.size gc_get_src_blk, .-gc_get_src_blk
.align 2
@@ -4367,10 +4417,10 @@ gc_free_temp_buf:
str x21, [sp,32]
add x2, x19, :lo12:.LANCHOR0
ldrb w3, [x2,2903]
- cbz w3, .L690
+ cbz w3, .L695
ldrb w3, [x2,2834]
cmp w3, 1
- bhi .L690
+ bhi .L695
ldrh w4, [x2,3274]
mov x20, x2
ldrb w0, [x2,3276]
@@ -4381,29 +4431,29 @@ gc_free_temp_buf:
ldr x4, [x2,2480]
cmp w0, w3
csel w3, w0, w3, ls
-.L691:
+.L696:
cmp w1, w3
- bcs .L704
+ bcs .L709
uxtw x21, w1
ldrb w0, [x4,x21]
cmp w0, 255
- beq .L692
+ beq .L697
sbfiz x0, x0, 6, 32
add x0, x2, x0
ldrb w5, [x0,61]
- cbnz w5, .L692
+ cbnz w5, .L697
str x1, [x29,56]
bl buf_free
adrp x0, .LANCHOR2
ldr x1, [x29,56]
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L693
+ tbz x0, 8, .L698
ldr x2, [x20,3264]
adrp x0, .LC88
add x0, x0, :lo12:.LC88
ldrb w2, [x2,x21]
bl printk
-.L693:
+.L698:
add x19, x19, :lo12:.LANCHOR0
mov w1, -1
ldr x0, [x19,3264]
@@ -4412,13 +4462,13 @@ gc_free_temp_buf:
sub w0, w0, #1
strb w0, [x19,2903]
mov w0, 1
- b .L690
-.L692:
+ b .L695
+.L697:
add w1, w1, 1
- b .L691
-.L704:
+ b .L696
+.L709:
mov w0, 0
-.L690:
+.L695:
ldp x19, x20, [sp,16]
ldr x21, [sp,32]
ldp x29, x30, [sp], 64
@@ -4453,23 +4503,23 @@ zftl_get_gc_node:
uxth w2, w0
cmp w1, 5
add x29, sp, 0
- bne .L707
+ bne .L712
adrp x0, .LANCHOR0+3280
ldr x0, [x0,#:lo12:.LANCHOR0+3280]
- b .L710
-.L707:
+ b .L715
+.L712:
cmp w1, 2
- bne .L709
+ bne .L714
mov w0, w2
bl zftl_get_gc_node.part.12
- b .L711
-.L709:
+ b .L716
+.L714:
adrp x0, .LANCHOR0+3288
ldr x0, [x0,#:lo12:.LANCHOR0+3288]
-.L710:
+.L715:
mov w1, w2
bl _list_get_gc_head_node.isra.5
-.L711:
+.L716:
uxth w0, w0
ldp x29, x30, [sp], 16
ret
@@ -4493,8 +4543,8 @@ gc_search_src_blk:
ldr x1, [x0,608]
add x1, x1, x21, sxtw 1
ldrh w19, [x1,120]
- cbnz w19, .L759
- cbnz w21, .L715
+ cbnz w19, .L764
+ cbnz w21, .L720
adrp x26, .LC90
strh w21, [x0,3296]
mov w19, w21
@@ -4503,9 +4553,9 @@ gc_search_src_blk:
mov w27, 65535
adrp x28, .LANCHOR2
add x26, x26, :lo12:.LC90
-.L716:
+.L721:
cmp w25, w23
- bcs .L721
+ bcs .L726
add x3, x20, :lo12:.LANCHOR0
mov w1, 3
str x3, [x29,96]
@@ -4521,10 +4571,10 @@ gc_search_src_blk:
add w2, w2, 1
uxth w2, w2
strh w2, [x3,3296]
- beq .L717
+ beq .L722
ldr w0, [x28,#:lo12:.LANCHOR2]
uxtw x5, w1
- tbz x0, 8, .L718
+ tbz x0, 8, .L723
ldr x3, [x3,600]
mov x0, x26
str x4, [x29,96]
@@ -4533,40 +4583,40 @@ gc_search_src_blk:
bl printk
ldr x4, [x29,96]
ldr x5, [x29,104]
-.L718:
+.L723:
add x1, x20, :lo12:.LANCHOR0
ldr x0, [x1,600]
ldrh w2, [x0,x5,lsl 1]
ldrh w0, [x1,2878]
cmp w2, w0
- bcs .L719
+ bcs .L724
mov w1, 0
mov w0, w4
mov w2, w1
bl gc_add_sblk
- cbz w0, .L720
+ cbz w0, .L725
add w19, w19, 1
uxth w19, w19
cmp w19, w23
- bls .L720
- b .L721
-.L719:
+ bls .L725
+ b .L726
+.L724:
strh wzr, [x1,3296]
- b .L721
-.L717:
+ b .L726
+.L722:
strh wzr, [x3,3296]
- b .L721
-.L720:
+ b .L726
+.L725:
add w25, w25, 1
uxth w25, w25
- b .L716
-.L721:
- tbz x24, 1, .L723
+ b .L721
+.L726:
+ tbz x24, 1, .L728
mov w26, 0
mov w27, 65535
-.L724:
+.L729:
cmp w26, w23
- beq .L728
+ beq .L733
add x25, x20, :lo12:.LANCHOR0
mov w1, 5
ldrh w28, [x25,3298]
@@ -4576,32 +4626,32 @@ gc_search_src_blk:
uxth w1, w0
strh w28, [x25,3298]
cmp w1, w27
- beq .L725
+ beq .L730
ubfiz x1, x1, 1, 16
ldr x2, [x25,600]
ldrh w2, [x2,x1]
ldrh w1, [x25,2880]
cmp w2, w1
- bcs .L725
+ bcs .L730
mov w1, 0
mov w2, w1
bl gc_add_sblk
- cbz w0, .L727
+ cbz w0, .L732
add w19, w19, 1
uxth w19, w19
cmp w19, w23
- bls .L727
- b .L730
-.L725:
+ bls .L732
+ b .L735
+.L730:
strh wzr, [x25,3298]
- b .L728
-.L727:
+ b .L733
+.L732:
add w26, w26, 1
uxth w26, w26
- b .L724
-.L728:
+ b .L729
+.L733:
cmp w19, w23
- bcs .L730
+ bcs .L735
add x0, x20, :lo12:.LANCHOR0
ldrh w1, [x0,3274]
ldrb w4, [x0,3276]
@@ -4610,27 +4660,27 @@ gc_search_src_blk:
mul w1, w1, w4
sub w1, w1, w2, lsr 2
cmp w3, w1
- bge .L723
+ bge .L728
add w2, w3, w2, lsr 3
strh w2, [x0,2880]
- b .L723
-.L730:
+ b .L728
+.L735:
add x1, x20, :lo12:.LANCHOR0
ldrh w2, [x1,2880]
ldrh w0, [x1,3300]
cmp w2, w0
- bls .L723
+ bls .L728
sub w0, w2, w0, lsr 3
strh w0, [x1,2880]
-.L723:
- tbz x24, 0, .L731
+.L728:
+ tbz x24, 0, .L736
cmp w19, w23
- bcs .L731
+ bcs .L736
mov w25, 0
mov w27, 65535
-.L732:
+.L737:
cmp w25, w23
- beq .L735
+ beq .L740
add x28, x20, :lo12:.LANCHOR0
ldrh w26, [x28,3302]
mov w0, w26
@@ -4638,57 +4688,57 @@ gc_search_src_blk:
bl zftl_get_gc_node.part.12
strh w26, [x28,3302]
cmp w27, w0, uxth
- beq .L733
+ beq .L738
mov w1, 0
mov w2, w1
bl gc_add_sblk
- cbz w0, .L734
+ cbz w0, .L739
add w19, w19, 1
uxth w19, w19
cmp w19, w23
- bcc .L734
- b .L737
-.L733:
+ bcc .L739
+ b .L742
+.L738:
strh wzr, [x28,3302]
- b .L735
-.L734:
+ b .L740
+.L739:
add w25, w25, 1
uxth w25, w25
- b .L732
-.L735:
+ b .L737
+.L740:
cmp w19, w23
- bcs .L737
+ bcs .L742
add x20, x20, :lo12:.LANCHOR0
ldrh w1, [x20,2878]
ldrh w0, [x20,3300]
cmp w1, w0
- bcs .L731
+ bcs .L736
add w0, w1, w0, lsr 3
- b .L812
-.L737:
+ b .L817
+.L742:
add x20, x20, :lo12:.LANCHOR0
ldrh w0, [x20,3300]
ldrh w1, [x20,2878]
cmp w1, w0, lsr 1
- bls .L731
+ bls .L736
sub w0, w1, w0, lsr 3
-.L812:
+.L817:
strh w0, [x20,2878]
- b .L731
-.L715:
+ b .L736
+.L720:
and w1, w24, 1
strh w19, [x0,3214]
strh w19, [x0,3304]
str w1, [x29,104]
- tbz x24, 0, .L738
+ tbz x24, 0, .L743
ldrh w2, [x0,3306]
ldrh w1, [x0,2852]
cmp w1, w2, lsr 2
- bcc .L739
+ bcc .L744
ldrh w0, [x0,2850]
cmp w0, w1
- bls .L740
-.L739:
+ bls .L745
+.L744:
add x23, x20, :lo12:.LANCHOR0
mov w19, 0
ldrh w0, [x23,2850]
@@ -4699,24 +4749,24 @@ gc_search_src_blk:
uxth w1, w0
mov w2, 65535
cmp w1, w2
- beq .L741
+ beq .L746
ubfiz x1, x1, 1, 16
ldr x3, [x23,600]
ldrh w2, [x23,3300]
ldrh w1, [x3,x1]
cmp w1, w2, lsr 2
- bcs .L741
+ bcs .L746
mov w1, w19
mov w2, w21
strh w19, [x23,3302]
bl gc_add_sblk
cmp w0, w19
cset w19, ne
-.L741:
+.L746:
mov w23, 64
mov w26, 65535
uxth w27, w22
-.L743:
+.L748:
add x25, x20, :lo12:.LANCHOR0
ldrh w28, [x25,3302]
mov w0, w28
@@ -4724,38 +4774,38 @@ gc_search_src_blk:
bl zftl_get_gc_node.part.12
strh w28, [x25,3302]
cmp w26, w0, uxth
- beq .L740
+ beq .L745
mov w1, 0
mov w2, w21
bl gc_add_sblk
- cbz w0, .L742
+ cbz w0, .L747
add w19, w19, 1
uxth w19, w19
cmp w19, w27
- bcs .L740
-.L742:
+ bcs .L745
+.L747:
sub w23, w23, #1
uxth w23, w23
- cbnz w23, .L743
-.L740:
+ cbnz w23, .L748
+.L745:
add x0, x20, :lo12:.LANCHOR0
ldrh w2, [x0,3306]
ldrh w1, [x0,2852]
cmp w1, w2, lsr 3
- bhi .L760
+ bhi .L765
ldrh w0, [x0,2850]
add w0, w0, 8
cmp w1, w0
- bgt .L760
-.L738:
- tbz x24, 1, .L746
+ bgt .L765
+.L743:
+ tbz x24, 1, .L751
add x0, x20, :lo12:.LANCHOR0
mov w25, 64
mov w26, 0
mov w27, 65535
uxth w28, w22
strh wzr, [x0,3298]
-.L751:
+.L756:
add x23, x20, :lo12:.LANCHOR0
mov w1, 5
ldrh w2, [x23,3298]
@@ -4767,51 +4817,51 @@ gc_search_src_blk:
cmp w1, w27
add w2, w2, 1
strh w2, [x23,3298]
- beq .L747
+ beq .L752
cmp w22, 1
- bne .L748
+ bne .L753
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]
-.L748:
+.L753:
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 .L749
+ bcs .L754
mov w1, 0
mov w2, w21
bl gc_add_sblk
- cbz w0, .L750
+ cbz w0, .L755
add w19, w19, 1
add w26, w26, 1
uxth w19, w19
uxth w26, w26
cmp w19, w28
- bcc .L750
- b .L747
-.L749:
+ bcc .L755
+ b .L752
+.L754:
strh wzr, [x2,3298]
- b .L747
-.L750:
+ b .L752
+.L755:
sub w0, w25, #1
uxth w25, w0
- cbnz w25, .L751
-.L747:
+ cbnz w25, .L756
+.L752:
cmp w19, w22
- bcc .L752
- cbnz w26, .L753
+ bcc .L757
+ cbnz w26, .L758
add x0, x20, :lo12:.LANCHOR0
ldrh w1, [x0,2854]
ldrh w0, [x0,3308]
cmp w1, w0
- bls .L753
-.L752:
+ bls .L758
+.L757:
add x0, x20, :lo12:.LANCHOR0
ldrh w1, [x0,3274]
ldrb w4, [x0,3276]
@@ -4821,29 +4871,29 @@ gc_search_src_blk:
lsr w3, w3, 3
sub w1, w1, w3
cmp w2, w1
- bge .L746
+ bge .L751
add w2, w3, w2
strh w2, [x0,2874]
- b .L746
-.L753:
+ b .L751
+.L758:
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 .L746
+ ble .L751
sub w1, w3, w1, lsr 3
strh w1, [x0,2874]
-.L746:
+.L751:
ldr w0, [x29,104]
- cbz w0, .L731
+ cbz w0, .L736
add x0, x20, :lo12:.LANCHOR0
mov w25, 64
mov w26, 65535
uxth w27, w22
strh wzr, [x0,3296]
-.L757:
+.L762:
add x23, x20, :lo12:.LANCHOR0
mov w1, 3
ldrh w28, [x23,3296]
@@ -4853,57 +4903,57 @@ gc_search_src_blk:
uxth w1, w0
strh w28, [x23,3296]
cmp w1, w26
- beq .L754
+ beq .L759
ubfiz x1, x1, 1, 16
ldr x2, [x23,600]
ldrh w1, [x2,x1]
cmp w1, 2
- bls .L755
+ bls .L760
ldrh w2, [x23,2876]
cmp w2, w1
- bls .L755
+ bls .L760
ldrh w2, [x23,3306]
ldrh w1, [x23,2852]
cmp w1, w2, lsr 1
- bls .L754
-.L755:
+ bls .L759
+.L760:
mov w1, 0
mov w2, w21
bl gc_add_sblk
- cbz w0, .L756
+ cbz w0, .L761
add w19, w19, 1
uxth w19, w19
cmp w19, w27
- bcs .L754
-.L756:
+ bcs .L759
+.L761:
sub w25, w25, #1
uxth w25, w25
- cbnz w25, .L757
-.L754:
+ cbnz w25, .L762
+.L759:
cmp w19, w22
add x20, x20, :lo12:.LANCHOR0
- bcs .L758
+ bcs .L763
ldrh w0, [x20,3300]
ldrh w1, [x20,2876]
cmp w1, w0, lsr 1
- bls .L731
+ bls .L736
sub w0, w1, w0, lsr 3
strh w0, [x20,2876]
- b .L731
-.L758:
+ b .L736
+.L763:
ldrh w1, [x20,3300]
ldrb w0, [x20,3276]
ldrh w2, [x20,2876]
mul w0, w1, w0
sub w0, w0, #32
cmp w2, w0
- bge .L731
+ bge .L736
add w1, w2, w1, lsr 3
strh w1, [x20,2876]
-.L731:
+.L736:
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L759
+ tbz x0, 8, .L764
adrp x0, .LC91
mov w1, w21
add x0, x0, :lo12:.LC91
@@ -4911,7 +4961,7 @@ gc_search_src_blk:
mov w3, w19
mov w4, w22
bl printk
-.L759:
+.L764:
mov w0, w19
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -4920,13 +4970,13 @@ gc_search_src_blk:
ldp x27, x28, [sp,80]
ldp x29, x30, [sp], 112
ret
-.L760:
+.L765:
add x0, x20, :lo12:.LANCHOR0
mov w23, 64
mov w26, 65535
uxth w27, w22
strh wzr, [x0,3296]
-.L745:
+.L750:
add x25, x20, :lo12:.LANCHOR0
mov w1, 3
ldrh w28, [x25,3296]
@@ -4935,20 +4985,20 @@ gc_search_src_blk:
bl zftl_get_gc_node
strh w28, [x25,3296]
cmp w26, w0, uxth
- beq .L738
+ beq .L743
mov w1, 0
mov w2, w21
bl gc_add_sblk
- cbz w0, .L744
+ cbz w0, .L749
add w19, w19, 1
uxth w19, w19
cmp w19, w27
- bcs .L738
-.L744:
+ bcs .L743
+.L749:
sub w23, w23, #1
uxth w23, w23
- cbnz w23, .L745
- b .L738
+ cbnz w23, .L750
+ b .L743
.size gc_search_src_blk, .-gc_search_src_blk
.align 2
.global zftl_insert_free_list
@@ -4963,20 +5013,20 @@ zftl_insert_free_list:
add x0, x0, x1, uxth 2
ldrb w0, [x0,2]
ands w0, w0, 24
- bne .L814
+ bne .L819
add x0, x2, 3312
add x2, x2, 2844
- b .L817
-.L814:
+ b .L822
+.L819:
cmp w0, 16
- bne .L816
+ bne .L821
add x0, x2, 3320
add x2, x2, 2846
- b .L817
-.L816:
+ b .L822
+.L821:
add x0, x2, 3328
add x2, x2, 2848
-.L817:
+.L822:
bl _insert_free_list
ldp x29, x30, [sp], 16
ret
@@ -4995,24 +5045,24 @@ zftl_insert_data_list:
ldrb w3, [x0,2]
and w3, w3, 224
cmp w3, 64
- bne .L819
+ bne .L824
add x0, x2, 616
add x2, x2, 2850
- b .L822
-.L819:
+ b .L827
+.L824:
cmp w3, 96
- bne .L821
+ bne .L826
add x0, x2, 3288
add x2, x2, 2852
- b .L822
-.L821:
+ b .L827
+.L826:
cmp w3, 160
- bne .L818
+ bne .L823
add x0, x2, 3280
add x2, x2, 2854
-.L822:
+.L827:
bl _insert_data_list
-.L818:
+.L823:
ldp x29, x30, [sp], 16
ret
.size zftl_insert_data_list, .-zftl_insert_data_list
@@ -5031,10 +5081,10 @@ zftl_gc_get_free_sblk:
uxth w22, w1
ldr x0, [x23,608]
ldrh w19, [x0,588]
- cbnz w21, .L824
+ cbnz w21, .L829
mov w0, 65535
cmp w19, w0
- beq .L824
+ beq .L829
adrp x0, .LC92
mov w1, w19
add x0, x0, :lo12:.LC92
@@ -5042,13 +5092,13 @@ zftl_gc_get_free_sblk:
ldr x0, [x23,608]
mov w1, -1
strh w1, [x0,588]
- b .L825
-.L824:
+ b .L830
+.L829:
add x0, x20, :lo12:.LANCHOR0
ldrh w3, [x0,2846]
ldrh w1, [x0,2848]
cmp w3, w1
- bls .L826
+ bls .L831
mov w1, 0
mov x2, x0
lsr w3, w3, 3
@@ -5056,25 +5106,25 @@ zftl_gc_get_free_sblk:
csel w1, w3, w1, ne
add x0, x0, 3320
add x2, x2, 2846
- b .L844
-.L826:
+ b .L849
+.L831:
lsr w1, w1, 2
- cbz w21, .L830
+ cbz w21, .L835
mov w1, 7
mul w3, w3, w1
mov w1, 8
sdiv w3, w3, w1
uxth w1, w3
-.L830:
+.L835:
add x2, x20, :lo12:.LANCHOR0
add x0, x2, 3328
add x2, x2, 2848
-.L844:
+.L849:
bl _list_pop_index_node
uxth w19, w0
mov w0, 65535
cmp w19, w0
- bne .L831
+ bne .L836
add x5, x20, :lo12:.LANCHOR0
adrp x0, .LC93
add x0, x0, :lo12:.LC93
@@ -5084,11 +5134,11 @@ zftl_gc_get_free_sblk:
ldrh w4, [x5,2844]
ldrh w5, [x5,2848]
bl printk
-.L831:
- cbz w21, .L825
+.L836:
+ cbz w21, .L830
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L825
+ tbz x0, 8, .L830
add x20, x20, :lo12:.LANCHOR0
uxtw x6, w19
lsl x0, x6, 2
@@ -5107,7 +5157,7 @@ zftl_gc_get_free_sblk:
ubfx x3, x3, 3, 2
and w5, w5, 2047
bl printk
-.L825:
+.L830:
mov w0, w19
ldr x23, [sp,48]
ldp x19, x20, [sp,16]
@@ -5127,36 +5177,36 @@ zftl_get_free_sblk:
stp x19, x20, [sp,16]
cmp w21, 5
adrp x19, .LANCHOR0
- bne .L846
+ bne .L851
add x0, x19, :lo12:.LANCHOR0
ldrh w2, [x0,2846]
ldrh w1, [x0,2848]
cmp w2, w1
- bcc .L847
+ bcc .L852
ldrh w0, [x0,2844]
cmp w0, w2
- bls .L848
- cbz w1, .L848
-.L847:
+ bls .L853
+ cbz w1, .L853
+.L852:
add x2, x19, :lo12:.LANCHOR0
lsr w1, w1, 1
add x0, x2, 3328
- b .L876
-.L848:
+ b .L881
+.L853:
add x2, x19, :lo12:.LANCHOR0
mov w1, 0
add x0, x2, 3320
add x2, x2, 2846
- b .L875
-.L846:
+ b .L880
+.L851:
add x22, x19, :lo12:.LANCHOR0
cmp w21, 1
ldr x0, [x22,608]
ldrh w20, [x0,590]
- beq .L850
+ beq .L855
mov w0, 65535
cmp w20, w0
- beq .L850
+ beq .L855
adrp x0, .LC95
mov w1, w20
add x0, x0, :lo12:.LC95
@@ -5164,28 +5214,28 @@ zftl_get_free_sblk:
ldr x0, [x22,608]
mov w1, -1
strh w1, [x0,590]
- b .L851
-.L850:
+ b .L856
+.L855:
add x2, x19, :lo12:.LANCHOR0
ldrh w0, [x2,2844]
ldrh w1, [x2,2848]
cmp w0, w1
- bcc .L852
+ bcc .L857
ldrh w2, [x2,2846]
cmp w2, w0
- bls .L853
- cbz w1, .L853
-.L852:
+ bls .L858
+ cbz w1, .L858
+.L857:
lsr w1, w1, 1
cmp w21, 1
csel w3, w1, w3, eq
add x2, x19, :lo12:.LANCHOR0
add x0, x2, 3328
mov w1, w3
-.L876:
+.L881:
add x2, x2, 2848
- b .L875
-.L853:
+ b .L880
+.L858:
lsr w0, w0, 1
cmp w21, 1
csel w3, w0, w3, eq
@@ -5193,13 +5243,13 @@ zftl_get_free_sblk:
add x0, x2, 3312
mov w1, w3
add x2, x2, 2844
-.L875:
+.L880:
bl _list_pop_index_node
uxth w0, w0
mov w20, w0
mov w0, 65535
cmp w20, w0
- bne .L851
+ bne .L856
add x19, x19, :lo12:.LANCHOR0
adrp x0, .LC93
add x0, x0, :lo12:.LC93
@@ -5209,7 +5259,7 @@ zftl_get_free_sblk:
ldrh w4, [x19,2844]
ldrh w5, [x19,2848]
bl printk
-.L851:
+.L856:
mov w0, w20
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -5230,24 +5280,24 @@ zftl_remove_data_node:
ldrb w3, [x0,2]
and w3, w3, 224
cmp w3, 64
- bne .L878
+ bne .L883
add x0, x2, 616
add x2, x2, 2850
- b .L881
-.L878:
+ b .L886
+.L883:
cmp w3, 96
- bne .L880
+ bne .L885
add x0, x2, 3288
add x2, x2, 2852
- b .L881
-.L880:
+ b .L886
+.L885:
cmp w3, 160
- bne .L877
+ bne .L882
add x0, x2, 3280
add x2, x2, 2854
-.L881:
+.L886:
bl _list_remove_node
-.L877:
+.L882:
ldp x29, x30, [sp], 16
ret
.size zftl_remove_data_node, .-zftl_remove_data_node
@@ -5264,20 +5314,20 @@ zftl_remove_free_node:
add x0, x0, x1, uxth 2
ldrb w0, [x0,2]
ands w0, w0, 24
- bne .L883
+ bne .L888
add x0, x2, 3312
add x2, x2, 2844
- b .L886
-.L883:
+ b .L891
+.L888:
cmp w0, 16
- bne .L885
+ bne .L890
add x0, x2, 3320
add x2, x2, 2846
- b .L886
-.L885:
+ b .L891
+.L890:
add x0, x2, 3328
add x2, x2, 2848
-.L886:
+.L891:
bl _list_remove_node
ldp x29, x30, [sp], 16
ret
@@ -5296,24 +5346,24 @@ zftl_list_update_data_list:
ldrb w3, [x0,2]
and w3, w3, 224
cmp w3, 64
- bne .L888
+ bne .L893
add x0, x2, 616
add x2, x2, 2850
- b .L891
-.L888:
+ b .L896
+.L893:
cmp w3, 96
- bne .L890
+ bne .L895
add x0, x2, 3288
add x2, x2, 2852
- b .L891
-.L890:
+ b .L896
+.L895:
cmp w3, 160
- bne .L887
+ bne .L892
add x0, x2, 3280
add x2, x2, 2854
-.L891:
+.L896:
bl _list_update_data_list
-.L887:
+.L892:
ldp x29, x30, [sp], 16
ret
.size zftl_list_update_data_list, .-zftl_list_update_data_list
@@ -5335,7 +5385,7 @@ print_list_info:
ldr x1, [x19]
bl printk
ldr x19, [x19]
- cbz x19, .L892
+ cbz x19, .L897
mov x22, -6148914691236517206
adrp x23, .LC97
mov w20, 0
@@ -5344,7 +5394,7 @@ print_list_info:
add x23, x23, :lo12:.LC97
mov w26, 65535
mov w24, 6
-.L895:
+.L900:
add x21, x25, :lo12:.LANCHOR0
ldrh w3, [x19]
ldrh w4, [x19,2]
@@ -5375,7 +5425,7 @@ print_list_info:
bl printk
ldrh w19, [x19]
cmp w19, w26
- beq .L892
+ beq .L897
ldr x0, [x21,528]
add w20, w20, 1
umull x19, w19, w24
@@ -5383,8 +5433,8 @@ print_list_info:
add x19, x0, x19
ldrh w0, [x21,3336]
cmp w0, w20
- bcs .L895
-.L892:
+ bcs .L900
+.L897:
sub sp, x29, #32
ldp x19, x20, [sp,48]
ldp x21, x22, [sp,64]
@@ -5433,44 +5483,44 @@ ftl_tmp_into_update:
ldr x0, [x0,#:lo12:.LANCHOR0+2864]
ldr w2, [x0,16]
cmp w2, 2048
- bls .L898
+ bls .L903
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]
-.L898:
+.L903:
ldr w2, [x0,24]
cmp w2, 2048
- bls .L899
+ bls .L904
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]
-.L899:
+.L904:
ldr w2, [x0,32]
cmp w2, 1024
- bls .L900
+ bls .L905
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]
-.L900:
+.L905:
ldr w2, [x0,40]
cmp w2, 1024
- bls .L897
+ bls .L902
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]
-.L897:
+.L902:
ret
.size ftl_tmp_into_update, .-ftl_tmp_into_update
.align 2
@@ -5486,13 +5536,13 @@ ftl_get_blk_list_in_sblk:
ldrb w11, [x2,3]
mov w2, 0
mov w6, w2
-.L903:
+.L908:
add x8, x7, :lo12:.LANCHOR0
ldrb w3, [x8,3276]
cmp w6, w3
- bge .L909
+ bge .L914
asr w3, w11, w6
- tbnz x3, 0, .L904
+ tbnz x3, 0, .L909
ldrb w5, [x8,3338]
sbfiz x10, x2, 1, 32
ldrh w3, [x8,3340]
@@ -5504,28 +5554,28 @@ ftl_get_blk_list_in_sblk:
strh w4, [x1,x10]
ldrb w3, [x8,3338]
cmp w3, 1
- bls .L905
+ bls .L910
sub w3, w3, #1
and w3, w6, w3
add w3, w4, w3
strh w3, [x1,x10]
-.L905:
+.L910:
add w2, w2, 1
-.L904:
- add w6, w6, 1
- b .L903
.L909:
+ add w6, w6, 1
+ b .L908
+.L914:
mov w0, w2
mov w4, -1
-.L907:
+.L912:
add x3, x7, :lo12:.LANCHOR0
ldrb w3, [x3,3276]
cmp w2, w3
- bge .L910
+ bge .L915
strh w4, [x1,w2,sxtw 1]
add w2, w2, 1
- b .L907
-.L910:
+ b .L912
+.L915:
ret
.size ftl_get_blk_list_in_sblk, .-ftl_get_blk_list_in_sblk
.align 2
@@ -5545,7 +5595,7 @@ ftl_free_sblk:
ldr x7, [x3,584]
add x20, x7, x19
ldrb w2, [x20,2]
- tbz x2, 3, .L913
+ tbz x2, 3, .L918
ldr x6, [x3,2864]
ldrh w4, [x7,x19]
ldrh w10, [x3,3342]
@@ -5562,14 +5612,14 @@ ftl_free_sblk:
udiv w6, w8, w4
add w6, w0, w6
cmp w6, w10
- ble .L914
+ ble .L919
ldrh w0, [x3,2846]
ldrh w6, [x3,2854]
add w6, w6, w0
ldrh w0, [x3,3308]
add w0, w0, 8
cmp w6, w0
- blt .L930
+ blt .L935
ldrh w0, [x3,2844]
ldrh w6, [x3,2850]
add w6, w6, w0
@@ -5578,13 +5628,13 @@ ftl_free_sblk:
ldrh w0, [x3,3344]
add w0, w0, 8
cmp w6, w0
- bge .L930
- b .L919
-.L914:
+ bge .L935
+ b .L924
+.L919:
madd w0, w0, w4, w8
ldrh w6, [x3,3346]
cmp w0, w6
- ble .L916
+ ble .L921
ldrh w0, [x3,2844]
ldrh w6, [x3,2850]
add w6, w6, w0
@@ -5593,26 +5643,26 @@ ftl_free_sblk:
ldrh w0, [x3,3344]
add w0, w0, 8
cmp w6, w0
- blt .L919
+ blt .L924
ldrh w0, [x3,2846]
ldrh w6, [x3,2854]
add w6, w6, w0
ldrh w0, [x3,3308]
add w0, w0, 8
cmp w6, w0
- bge .L919
-.L930:
+ bge .L924
+.L935:
mov w0, 2
bfi w2, w0, 3, 2
- b .L928
-.L919:
+ b .L933
+.L924:
and w2, w2, -25
-.L928:
+.L933:
strb w2, [x20,2]
-.L916:
+.L921:
ldrb w0, [x20,2]
ands w0, w0, 24
- bne .L920
+ bne .L925
mul w4, w9, w4
ldrh w0, [x7,x19]
add w4, w4, w4, lsl 1
@@ -5620,10 +5670,10 @@ ftl_free_sblk:
ubfx x5, x4, 2, 9
bfi w0, w5, 0, 11
strh w0, [x7,x19]
- b .L913
-.L920:
+ b .L918
+.L925:
cmp w0, 16
- bne .L913
+ bne .L918
sdiv w4, w5, w4
ldr w0, [x7,x19]
add w4, w4, w4, lsl 1
@@ -5631,7 +5681,7 @@ ftl_free_sblk:
ubfx x4, x4, 2, 6
bfi w0, w4, 11, 8
str w0, [x7,x19]
-.L913:
+.L918:
mov w0, w1
str x1, [x29,56]
bl zftl_remove_data_node
@@ -5645,41 +5695,41 @@ ftl_free_sblk:
ldr x2, [x0,600]
strh wzr, [x2,x22,lsl 1]
ldrb w2, [x20,2]
- tbz x2, 3, .L922
+ tbz x2, 3, .L927
ldr x2, [x0,608]
ldrh w0, [x2,584]
cmp w0, w1
- bne .L923
+ bne .L928
mov w0, -1
ldrh w3, [x2,588]
strh w0, [x2,584]
mov w0, 65535
cmp w3, w0
- bne .L922
+ bne .L927
adrp x0, .LC98
strh w1, [x2,588]
add x0, x0, :lo12:.LC98
- b .L929
-.L923:
+ b .L934
+.L928:
ldrh w0, [x2,586]
cmp w0, w1
- bne .L922
+ bne .L927
mov w0, -1
ldrh w3, [x2,590]
strh w0, [x2,586]
mov w0, 65535
cmp w3, w0
- bne .L922
+ bne .L927
adrp x0, .LC99
strh w1, [x2,590]
add x0, x0, :lo12:.LC99
-.L929:
+.L934:
bl printk
- b .L911
-.L922:
+ b .L916
+.L927:
mov w0, w1
bl zftl_insert_free_list
-.L911:
+.L916:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x29, x30, [sp], 64
@@ -5702,129 +5752,129 @@ gc_free_src_blk:
mov w20, 0
add x24, x23, 2896
add x21, x21, 1352
-.L932:
+.L937:
ldrh w0, [x24,56]
adrp x25, .LANCHOR0
cmp w0, w20
- bls .L970
+ bls .L975
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, .L933
+ cbz w2, .L938
adrp x0, .LC100
mov w1, w22
add x0, x0, :lo12:.LC100
bl printk
-.L933:
+.L938:
add x0, x25, :lo12:.LANCHOR0
ldr x1, [x0,600]
strh wzr, [x1,x26]
ldr x1, [x0,600]
ldrh w1, [x1,x26]
- cbnz w1, .L934
+ cbnz w1, .L939
ldr x0, [x0,584]
add x22, x0, x22, lsl 2
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L935
+ tbz x0, 8, .L940
ldrb w2, [x22,2]
adrp x0, .LC101
add x0, x0, :lo12:.LC101
mov w1, w19
ubfx x2, x2, 5, 3
bl printk
-.L935:
+.L940:
ldrb w0, [x22,2]
tst w0, 192
- beq .L948
+ beq .L953
and w0, w0, 224
cmp w0, 224
- bne .L936
-.L948:
+ bne .L941
+.L953:
adrp x0, .LC0
mov x1, x21
mov w2, 799
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L936:
+.L941:
mov w0, w19
add x25, x25, :lo12:.LANCHOR0
bl ftl_free_sblk
ldr x2, [x25,608]
ldrh w1, [x2,124]
- cbz w1, .L938
+ cbz w1, .L943
mov x0, 0
-.L940:
+.L945:
add x4, x2, x0, lsl 1
mov w3, w0
ldrh w4, [x4,392]
cmp w4, w19
- bne .L939
+ bne .L944
add x0, x2, x3, sxtw 1
mov w3, -1
strh w3, [x0,392]
sub w1, w1, #1
strh w1, [x2,124]
- b .L938
-.L939:
+ b .L943
+.L944:
add x0, x0, 1
cmp x0, 64
- bne .L940
-.L938:
+ bne .L945
+.L943:
ldrh w1, [x2,120]
- cbz w1, .L941
+ cbz w1, .L946
mov x0, 0
-.L943:
+.L948:
add x4, x2, x0, lsl 1
mov w3, w0
ldrh w4, [x4,136]
cmp w4, w19
- bne .L942
+ bne .L947
add x0, x2, x3, sxtw 1
mov w3, -1
strh w3, [x0,136]
sub w1, w1, #1
strh w1, [x2,120]
- b .L941
-.L942:
+ b .L946
+.L947:
add x0, x0, 1
cmp x0, 64
- bne .L943
-.L941:
+ bne .L948
+.L946:
ldrh w1, [x2,122]
- cbz w1, .L944
+ cbz w1, .L949
mov x0, 0
-.L946:
+.L951:
add x4, x2, x0, lsl 1
mov w3, w0
ldrh w4, [x4,264]
cmp w4, w19
- bne .L945
+ bne .L950
add x0, x2, x3, sxtw 1
mov w3, -1
strh w3, [x0,264]
sub w1, w1, #1
strh w1, [x2,122]
- b .L944
-.L945:
+ b .L949
+.L950:
add x0, x0, 1
cmp x0, 64
- bne .L946
- b .L944
-.L934:
+ bne .L951
+ b .L949
+.L939:
mov w0, w19
mov w1, 1
mov w2, 0
bl gc_add_sblk
-.L944:
+.L949:
add w20, w20, 1
uxth w20, w20
- b .L932
-.L970:
+ b .L937
+.L975:
strh wzr, [x24,56]
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -5856,14 +5906,14 @@ ftl_erase_phy_blk:
sub w19, w19, #1
and w19, w19, w2
sxth w19, w19
- cbz w0, .L972
+ cbz w0, .L977
ldrh w2, [x5,3350]
cmp w1, wzr
mov w0, w22
cset w1, eq
mul w2, w19, w2
bl flash_erase_block_en
-.L972:
+.L977:
add x3, x20, :lo12:.LANCHOR0
mov w1, w21
mov w0, w22
@@ -5894,11 +5944,11 @@ ftl_erase_sblk:
mov w19, 0
add x0, x0, x20
ldrb w25, [x0,3]
-.L977:
+.L982:
add x2, x23, :lo12:.LANCHOR0
ldrb w0, [x2,3352]
cmp w19, w0
- bge .L988
+ bge .L993
ldrb w3, [x2,3338]
mov w21, 0
ldrh w2, [x2,3350]
@@ -5906,75 +5956,75 @@ ftl_erase_sblk:
sub w4, w3, #1
mul w6, w19, w3
mul w5, w24, w3
-.L989:
+.L994:
cmp w1, w3
- bge .L1002
+ bge .L1007
add w0, w1, w6
asr w0, w25, w0
- tbnz x0, 0, .L978
+ tbnz x0, 0, .L983
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
-.L978:
+.L983:
add w1, w1, 1
- b .L989
-.L1002:
+ b .L994
+.L1007:
cmp w3, 4
- bne .L1001
+ bne .L1006
mov x26, 0
-.L980:
+.L985:
cmp w21, w26
- ble .L983
+ ble .L988
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 .L980
-.L1001:
+ b .L985
+.L1006:
cmp w21, 2
- bne .L984
+ bne .L989
add x0, x23, :lo12:.LANCHOR0
ldrb w0, [x0,3348]
- cbz w0, .L985
+ cbz w0, .L990
cmp w22, wzr
ldr w2, [x29,80]
ldr w3, [x29,84]
mov w0, w19
cset w1, eq
bl flash_erase_duplane_block
-.L985:
+.L990:
ldr w2, [x29,80]
mov w0, w19
ldr w3, [x29,84]
mov w1, w22
bl flash_erase_duplane_block
- b .L983
-.L984:
+ b .L988
+.L989:
cmp w21, 1
- bne .L983
+ bne .L988
add x0, x23, :lo12:.LANCHOR0
ldrb w0, [x0,3348]
- cbz w0, .L987
+ cbz w0, .L992
cmp w22, wzr
ldr w2, [x29,80]
mov w0, w19
cset w1, eq
bl flash_erase_block_en
-.L987:
+.L992:
ldr w2, [x29,80]
mov w0, w19
mov w1, w22
bl flash_erase_block_en
-.L983:
- add w19, w19, 1
- b .L977
.L988:
- cbnz w22, .L990
+ add w19, w19, 1
+ b .L982
+.L993:
+ cbnz w22, .L995
ldr x1, [x2,584]
ldrh w0, [x1,x20]
add w3, w0, 1
@@ -5990,10 +6040,10 @@ ftl_erase_sblk:
ubfx x1, x1, 0, 11
uxth w2, w1
cmp w3, w2
- bge .L992
+ bge .L997
strh w1, [x0,96]
- b .L992
-.L990:
+ b .L997
+.L995:
ldr x3, [x2,584]
ldr w0, [x3,x20]
ubfx x1, x0, 11, 8
@@ -6009,9 +6059,9 @@ ftl_erase_sblk:
ldr w1, [x1,x20]
ubfx x1, x1, 11, 8
cmp w2, w1, uxtb
- bcs .L992
+ bcs .L997
strh w1, [x0,98]
-.L992:
+.L997:
mov w0, 0
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -6033,11 +6083,11 @@ ftl_alloc_sys_blk:
ldr x1, [x1,2864]
ldrh w2, [x1,136]
cmp w2, 63
- bls .L1004
+ bls .L1009
strh wzr, [x1,136]
-.L1004:
+.L1009:
ldrh w0, [x1,112]
- cbnz w0, .L1005
+ cbnz w0, .L1010
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -6046,26 +6096,26 @@ ftl_alloc_sys_blk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1005:
+.L1010:
add x0, x19, :lo12:.LANCHOR0
mov w4, 65535
ldr x1, [x0,2864]
-.L1009:
+.L1014:
ldrh w2, [x1,136]
-.L1006:
+.L1011:
cmp w2, 63
- bgt .L1012
+ bgt .L1017
sxtw x3, w2
add x3, x3, 80
ldrh w0, [x1,x3,lsl 1]
cmp w0, w4
- bne .L1011
+ bne .L1016
add w2, w2, 1
- b .L1006
-.L1012:
+ b .L1011
+.L1017:
strh wzr, [x1,136]
- b .L1009
-.L1011:
+ b .L1014
+.L1016:
mov w4, -1
strh w4, [x1,x3,lsl 1]
strh w2, [x1,136]
@@ -6090,12 +6140,12 @@ ftl_free_sys_blk:
ldr x2, [x0,2864]
ldrh w0, [x2,138]
cmp w0, 63
- bls .L1014
+ bls .L1019
strh wzr, [x2,138]
-.L1014:
+.L1019:
ldrh w0, [x2,112]
cmp w0, 63
- bls .L1015
+ bls .L1020
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -6104,20 +6154,20 @@ ftl_free_sys_blk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1015:
+.L1020:
add x1, x19, :lo12:.LANCHOR0
mov w0, 65535
ldr x1, [x1,2864]
-.L1019:
+.L1024:
ldrh w2, [x1,138]
-.L1016:
+.L1021:
cmp w2, 63
- bgt .L1021
+ bgt .L1026
sxtw x3, w2
add x3, x3, 80
ldrh w4, [x1,x3,lsl 1]
cmp w4, w0
- bne .L1017
+ bne .L1022
strh w20, [x1,x3,lsl 1]
strh w2, [x1,138]
ldrh w0, [x1,112]
@@ -6126,12 +6176,12 @@ ftl_free_sys_blk:
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 32
ret
-.L1017:
+.L1022:
add w2, w2, 1
- b .L1016
-.L1021:
+ b .L1021
+.L1026:
strh wzr, [x1,138]
- b .L1019
+ b .L1024
.size ftl_free_sys_blk, .-ftl_free_sys_blk
.align 2
.global ftl_info_data_recovery
@@ -6145,7 +6195,7 @@ ftl_info_data_recovery:
str x23, [sp,48]
ldrh w2, [x0]
cmp w2, w1
- beq .L1022
+ beq .L1027
adrp x19, .LANCHOR0
ubfiz x20, x2, 2, 16
add x23, x19, :lo12:.LANCHOR0
@@ -6153,36 +6203,36 @@ ftl_info_data_recovery:
add x22, x21, x20
ldrb w1, [x22,2]
tst w1, 224
- bne .L1022
+ bne .L1027
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, .L1026
+ tbz x0, 3, .L1031
ldr x1, [x23,2864]
ldrh w0, [x1,116]
sub w0, w0, #1
strh w0, [x1,116]
- b .L1027
-.L1026:
+ b .L1032
+.L1031:
tst w0, 24
ldr x1, [x23,2864]
- bne .L1028
+ bne .L1033
ldrh w0, [x1,114]
sub w0, w0, #1
strh w0, [x1,114]
- b .L1027
-.L1028:
+ b .L1032
+.L1033:
ldrh w0, [x1,118]
sub w0, w0, #1
strh w0, [x1,118]
-.L1027:
+.L1032:
ldrb w0, [x22,2]
and w0, w0, 224
cmp w0, 160
- bne .L1029
+ bne .L1034
ldr w0, [x21,x20]
add x19, x19, :lo12:.LANCHOR0
ubfx x1, x0, 11, 8
@@ -6193,29 +6243,29 @@ ftl_info_data_recovery:
ldrh w0, [x1,120]
sub w0, w0, #1
strh w0, [x1,120]
- b .L1022
-.L1029:
+ b .L1027
+.L1034:
ldrh w1, [x21,x20]
cmp w0, 64
add w2, w1, 1
bfi w1, w2, 0, 11
strh w1, [x21,x20]
- bne .L1030
+ bne .L1035
add x19, x19, :lo12:.LANCHOR0
ldr x1, [x19,2864]
ldrh w0, [x1,122]
sub w0, w0, #1
strh w0, [x1,122]
- b .L1022
-.L1030:
+ b .L1027
+.L1035:
cmp w0, 96
- bne .L1022
+ bne .L1027
add x19, x19, :lo12:.LANCHOR0
ldr x1, [x19,2864]
ldrh w0, [x1,124]
sub w0, w0, #1
strh w0, [x1,124]
-.L1022:
+.L1027:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldr x23, [sp,48]
@@ -6239,14 +6289,14 @@ ftl_get_ppa_from_index:
ldrb w4, [x4,3276]
mul w0, w0, w4
cmp w1, w0
- bge .L1032
+ bge .L1037
add x3, x3, 16
- b .L1033
-.L1032:
+ b .L1038
+.L1037:
sub w1, w1, w0
add x3, x3, 48
uxth w1, w1
-.L1033:
+.L1038:
ldrb w2, [x3,9]
mov w0, 65535
sdiv w20, w1, w2
@@ -6254,7 +6304,7 @@ ftl_get_ppa_from_index:
add x1, x3, x1, uxth 1
ldrh w21, [x1,16]
cmp w21, w0
- bne .L1034
+ bne .L1039
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -6263,7 +6313,7 @@ ftl_get_ppa_from_index:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1034:
+.L1039:
add x2, x19, :lo12:.LANCHOR0
ldrh w0, [x2,3350]
madd w0, w21, w0, w20
@@ -6285,22 +6335,22 @@ lpa_hash_get_ppa:
ldrh w2, [x2,3360]
ldr x4, [x1,3872]
ldr x5, [x1,3880]
-.L1036:
+.L1041:
cmp w2, w3
- beq .L1040
+ beq .L1045
uxtw x1, w2
ldr w6, [x4,x1,lsl 2]
cmp w6, w0
- bne .L1037
+ bne .L1042
mov w0, w2
bl ftl_get_ppa_from_index
- b .L1038
-.L1037:
+ b .L1043
+.L1042:
ldrh w2, [x5,x1,lsl 1]
- b .L1036
-.L1040:
+ b .L1041
+.L1045:
mov w0, -1
-.L1038:
+.L1043:
ldp x29, x30, [sp], 16
ret
.size lpa_hash_get_ppa, .-lpa_hash_get_ppa
@@ -6315,7 +6365,7 @@ ftl_get_new_free_page:
ldrh w1, [x0]
mov w0, 65535
cmp w1, w0
- bne .L1042
+ bne .L1047
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -6324,13 +6374,13 @@ ftl_get_new_free_page:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1042:
+.L1047:
adrp x20, .LANCHOR0
ldrh w1, [x19,2]
add x0, x20, :lo12:.LANCHOR0
ldrh w0, [x0,3300]
cmp w1, w0
- bne .L1043
+ bne .L1048
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -6339,9 +6389,9 @@ ftl_get_new_free_page:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1043:
+.L1048:
ldrh w0, [x19,6]
- cbnz w0, .L1044
+ cbnz w0, .L1049
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -6350,32 +6400,32 @@ ftl_get_new_free_page:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1044:
+.L1049:
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]
-.L1045:
+.L1050:
cmp w0, w1
- bne .L1049
+ bne .L1054
ldrb w0, [x19,5]
add w0, w0, 1
uxtb w0, w0
strb w0, [x19,5]
cmp w0, w2
- bne .L1046
+ bne .L1051
ldrh w0, [x19,2]
strb wzr, [x19,5]
add w0, w0, 1
strh w0, [x19,2]
-.L1046:
+.L1051:
ldrb w0, [x19,5]
add x0, x0, 8
ldrh w0, [x19,x0,lsl 1]
- b .L1045
-.L1049:
+ b .L1050
+.L1054:
add x20, x20, :lo12:.LANCHOR0
ldrh w2, [x19,2]
ldrh w1, [x20,3350]
@@ -6393,11 +6443,11 @@ ftl_get_new_free_page:
uxtb w1, w1
strb w1, [x19,5]
cmp w3, w1
- bne .L1048
+ bne .L1053
add w2, w2, 1
strb wzr, [x19,5]
strh w2, [x19,2]
-.L1048:
+.L1053:
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 32
ret
@@ -6415,7 +6465,7 @@ ftl_ext_alloc_new_blk:
mov w1, 65533
sub w0, w0, #1
cmp w1, w0, uxth
- bcs .L1051
+ bcs .L1056
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -6424,7 +6474,7 @@ ftl_ext_alloc_new_blk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1051:
+.L1056:
adrp x19, .LANCHOR0
mov w1, 0
add x19, x19, :lo12:.LANCHOR0
@@ -6448,13 +6498,13 @@ ftl_total_vpn_update:
adrp x1, .LANCHOR0
add x3, x1, :lo12:.LANCHOR0
ldrh w2, [x3,3888]
- cbnz w0, .L1053
+ cbnz w0, .L1058
cmp w2, 4
- bhi .L1053
+ bhi .L1058
add w2, w2, 1
strh w2, [x3,3888]
- b .L1052
-.L1053:
+ b .L1057
+.L1058:
add x0, x1, :lo12:.LANCHOR0
mov w9, 65535
strh wzr, [x0,3888]
@@ -6464,35 +6514,35 @@ ftl_total_vpn_update:
mov x0, 0
mov w2, w0
mov w3, w0
-.L1055:
+.L1060:
cmp w6, w0, uxth
- bls .L1063
+ bls .L1068
ldrh w4, [x7,x0,lsl 1]
cmp w4, w9
- beq .L1056
+ beq .L1061
add x5, x8, x0, lsl 2
ldrb w5, [x5,2]
and w5, w5, 224
cmp w5, 160
- bne .L1057
+ bne .L1062
add w2, w2, w4
- b .L1056
-.L1057:
+ b .L1061
+.L1062:
add w3, w3, w4
-.L1056:
+.L1061:
add x0, x0, 1
- b .L1055
-.L1063:
+ b .L1060
+.L1068:
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, .L1052
+ cbz w1, .L1057
udiv w2, w2, w1
str w2, [x0,532]
-.L1052:
+.L1057:
ret
.size ftl_total_vpn_update, .-ftl_total_vpn_update
.align 2
@@ -6518,10 +6568,10 @@ ftl_vpn_update:
ldr x0, [x1,600]
ldrh w2, [x0,x19]
mov w0, 0
- cbnz w2, .L1066
+ cbnz w2, .L1071
mov w0, 1
str w0, [x1,2884]
-.L1066:
+.L1071:
ldr x19, [sp,16]
ldp x29, x30, [sp], 32
ret
@@ -6537,13 +6587,13 @@ ftl_vpn_decrement:
str x19, [sp,16]
cmp w1, w0
adrp x2, .LANCHOR0
- beq .L1069
+ beq .L1074
add x5, x2, :lo12:.LANCHOR0
uxtw x0, w1
lsl x3, x0, 1
ldr x4, [x5,600]
ldrh w19, [x4,x3]
- cbnz w19, .L1070
+ cbnz w19, .L1075
ldr x2, [x5,584]
add x0, x2, x0, lsl 2
mov w2, w19
@@ -6552,24 +6602,24 @@ ftl_vpn_decrement:
add x0, x0, :lo12:.LC102
ubfx x3, x3, 5, 3
bl printk
- b .L1076
-.L1070:
+ b .L1081
+.L1075:
sub w19, w19, #1
strh w19, [x4,x3]
-.L1069:
+.L1074:
add x19, x2, :lo12:.LANCHOR0
mov w0, 0
ldrh w2, [x19,3224]
cmp w2, w1
- beq .L1071
+ beq .L1076
mov w0, 65535
cmp w2, w0
- bne .L1072
+ bne .L1077
strh w1, [x19,3224]
-.L1076:
+.L1081:
mov w0, 0
- b .L1071
-.L1072:
+ b .L1076
+.L1077:
mov w0, w2
str x1, [x29,40]
bl ftl_vpn_update
@@ -6586,7 +6636,7 @@ ftl_vpn_decrement:
strh w3, [x19,3890]
add x3, x19, x3, uxth 1
strh w2, [x3,3232]
-.L1071:
+.L1076:
ldr x19, [sp,16]
ldp x29, x30, [sp], 48
ret
@@ -6607,42 +6657,42 @@ lpa_hash_update_ppa:
mov w6, 65535
ldrh w4, [x4,w5,sxtw 1]
mov w11, w6
-.L1078:
+.L1083:
cmp w4, w11
- beq .L1082
+ beq .L1087
uxtw x9, w4
uxth x7, w4
lsl x10, x9, 2
add x13, x8, x10
ldr w10, [x8,x10]
cmp w10, w0
- bne .L1079
+ bne .L1084
mov w4, -1
str w4, [x13]
mov w4, 65535
cmp w6, w4
add x4, x3, :lo12:.LANCHOR0
- bne .L1080
+ bne .L1085
ldr x6, [x4,3880]
add x4, x4, 3360
ldrh w6, [x6,x7,lsl 1]
strh w6, [x4,w5,sxtw 1]
- b .L1081
-.L1080:
+ b .L1086
+.L1085:
ldr x4, [x4,3880]
ldrh w8, [x4,x7,lsl 1]
strh w8, [x4,w6,uxtw 1]
-.L1081:
+.L1086:
add x4, x3, :lo12:.LANCHOR0
mov w6, -1
ldr x4, [x4,3880]
strh w6, [x4,x7,lsl 1]
- b .L1082
-.L1079:
+ b .L1087
+.L1084:
mov w6, w4
ldrh w4, [x12,x9,lsl 1]
- b .L1078
-.L1082:
+ b .L1083
+.L1087:
add x3, x3, :lo12:.LANCHOR0
uxtw x4, w2
cmn w1, #1
@@ -6653,7 +6703,7 @@ lpa_hash_update_ppa:
strh w2, [x0,w5,sxtw 1]
ldr x0, [x3,3880]
strh w6, [x0,x4,lsl 1]
- beq .L1084
+ beq .L1089
ldrh w0, [x3,3340]
mov w2, 21
mov w4, 1
@@ -6665,7 +6715,7 @@ lpa_hash_update_ppa:
and w1, w2, w1
udiv w0, w1, w0
bl ftl_vpn_decrement
-.L1084:
+.L1089:
mov w0, -1
ldp x29, x30, [sp], 16
ret
@@ -6695,17 +6745,17 @@ ftl_mask_bad_block:
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
uxth w20, w2
- tbz x0, 14, .L1089
+ tbz x0, 14, .L1094
adrp x0, .LC103
mov w1, w21
add x0, x0, :lo12:.LC103
mov w2, w20
bl printk
-.L1089:
+.L1094:
add x0, x19, :lo12:.LANCHOR0
ldrh w1, [x0,576]
cmp w1, w20
- bls .L1088
+ bls .L1093
ldr x0, [x0,584]
add x20, x0, x20, uxth 2
mov w0, 1
@@ -6713,7 +6763,7 @@ ftl_mask_bad_block:
ldrb w0, [x20,3]
orr w1, w1, w0
strb w1, [x20,3]
-.L1088:
+.L1093:
ldp x19, x20, [sp,16]
ldr x21, [sp,32]
ldp x29, x30, [sp], 48
@@ -6801,7 +6851,7 @@ ftl_write_buf:
stp x19, x20, [sp,16]
str x21, [sp,32]
mov x20, x0
- cbnz x0, .L1096
+ cbnz x0, .L1101
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -6812,14 +6862,14 @@ ftl_write_buf:
bl dump_stack
bl print_ftl_debug_info
mov w0, -1
- b .L1105
-.L1096:
+ b .L1110
+.L1101:
adrp x19, .LANCHOR0
ldrb w1, [x20,56]
add x0, x19, :lo12:.LANCHOR0
ldrb w0, [x0,2832]
cmp w1, w0
- bls .L1101
+ bls .L1106
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -6828,20 +6878,20 @@ ftl_write_buf:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1101:
+.L1106:
ldrb w0, [x20,56]
- cbz w0, .L1098
+ cbz w0, .L1103
add x21, x19, :lo12:.LANCHOR0
ldrb w1, [x21,2832]
cmp w1, w0
- bcs .L1099
-.L1098:
+ bcs .L1104
+.L1103:
mov x0, x20
add x19, x19, :lo12:.LANCHOR0
bl buf_free
ldrb w0, [x19,2856]
- b .L1105
-.L1099:
+ b .L1110
+.L1104:
add x0, x21, 2888
mov x1, x20
bl buf_add_tail
@@ -6858,7 +6908,7 @@ ftl_write_buf:
add w1, w1, 1
str w1, [x0,32]
mov w0, w2
-.L1105:
+.L1110:
ldp x19, x20, [sp,16]
ldr x21, [sp,32]
ldp x29, x30, [sp], 48
@@ -6881,10 +6931,10 @@ ftl_write_completed:
mov w23, 21
mov w24, 1
add x21, x21, :lo12:.LC109
-.L1107:
+.L1112:
ldrb w0, [x19,3892]
cmp w0, 255
- beq .L1114
+ beq .L1119
sbfiz x0, x0, 6, 32
add x20, x22, x0
add x4, x20, 32
@@ -6892,7 +6942,7 @@ ftl_write_completed:
strb w0, [x19,3892]
ldr w0, [x20,52]
cmn w0, #1
- bne .L1108
+ bne .L1113
ldrh w2, [x19,3340]
mov x0, x21
ldr w3, [x4,8]
@@ -6917,33 +6967,33 @@ ftl_write_completed:
str w1, [x0,556]
ldrh w1, [x0,16]
cmp w1, w25
- bne .L1109
+ bne .L1114
strh wzr, [x0,22]
- b .L1110
-.L1109:
+ b .L1115
+.L1114:
ldrh w1, [x0,48]
cmp w1, w25
- bne .L1110
+ bne .L1115
strh wzr, [x0,54]
-.L1110:
+.L1115:
mov x0, x20
bl ftl_write_buf
- b .L1107
-.L1108:
+ b .L1112
+.L1113:
ldr w0, [x4,4]
ldr w1, [x4,12]
ldrh w2, [x20,48]
bl lpa_hash_update_ppa
ldrb w0, [x20,2]
- tbz x0, 2, .L1112
+ tbz x0, 2, .L1117
and w0, w0, -3
strb w0, [x20,2]
- b .L1107
-.L1112:
+ b .L1112
+.L1117:
mov x0, x20
bl buf_free
- b .L1107
-.L1114:
+ b .L1112
+.L1119:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -6959,7 +7009,7 @@ zftl_add_read_buf:
add x29, sp, 0
stp x19, x20, [sp,16]
mov x20, x0
- cbnz x0, .L1116
+ cbnz x0, .L1121
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -6969,14 +7019,14 @@ zftl_add_read_buf:
bl printk
bl dump_stack
bl print_ftl_debug_info
- b .L1115
-.L1116:
+ b .L1120
+.L1121:
adrp x19, .LANCHOR0
ldrb w1, [x20,56]
add x0, x19, :lo12:.LANCHOR0
ldrb w0, [x0,2832]
cmp w1, w0
- bls .L1119
+ bls .L1124
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -6985,7 +7035,7 @@ zftl_add_read_buf:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1119:
+.L1124:
add x19, x19, :lo12:.LANCHOR0
mov x1, x20
add x0, x19, 3893
@@ -6993,7 +7043,7 @@ zftl_add_read_buf:
ldrb w0, [x19,3894]
add w0, w0, 1
strb w0, [x19,3894]
-.L1115:
+.L1120:
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 32
ret
@@ -7018,13 +7068,13 @@ ftl_alloc_sblk:
uxth w19, w0
mov w0, 65535
cmp w19, w0
- beq .L1122
+ beq .L1127
adrp x0, .LANCHOR0+584
ldr x21, [x0,#:lo12:.LANCHOR0+584]
add x21, x21, x19, uxth 2
ldrb w0, [x21,2]
tst w0, 224
- beq .L1123
+ beq .L1128
adrp x1, .LANCHOR1
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR1
@@ -7033,15 +7083,15 @@ ftl_alloc_sblk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1123:
+.L1128:
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 .L1129
-.L1122:
+ b .L1134
+.L1127:
adrp x21, .LC110
bl print_ftl_debug_info
add x21, x21, :lo12:.LC110
@@ -7066,7 +7116,7 @@ ftl_alloc_sblk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1129:
+.L1134:
mov w0, w19
ldr x23, [sp,48]
ldp x19, x20, [sp,16]
@@ -7104,13 +7154,13 @@ dump_sblk_queue:
bl printk
ldrb w19, [x20,2835]
cmp w19, 255
- beq .L1131
+ beq .L1136
add x20, x20, 784
sbfiz x19, x19, 6, 32
adrp x21, .LC112
add x19, x20, x19
add x21, x21, :lo12:.LC112
-.L1133:
+.L1138:
ldrb w1, [x19,1]
mov x0, x21
ldrb w2, [x19,58]
@@ -7118,11 +7168,11 @@ dump_sblk_queue:
bl printk
ldrb w19, [x19]
cmp w19, 255
- beq .L1131
+ beq .L1136
sbfiz x19, x19, 6, 32
add x19, x20, x19
- b .L1133
-.L1131:
+ b .L1138
+.L1136:
ldp x19, x20, [sp,16]
ldr x21, [sp,32]
ldp x29, x30, [sp], 48
@@ -7138,7 +7188,7 @@ queue_lun_state:
mov w0, 0
ldrb w2, [x3,2835]
cmp w2, 255
- beq .L1141
+ beq .L1146
ldrh w8, [x3,3340]
mov w4, 21
ldrb w7, [x3,3338]
@@ -7150,60 +7200,60 @@ queue_lun_state:
sub w4, w4, #1
asr w5, w5, w8
uxth w7, w7
- adrp x10, .L1144
+ adrp x10, .L1149
uxth w4, w4
and w5, w5, w7
and w5, w5, w4
add x3, x3, 784
- add x10, x10, :lo12:.L1144
-.L1147:
+ add x10, x10, :lo12:.L1149
+.L1152:
add x0, x3, x2, lsl 6
ldr w6, [x0,40]
ubfx x11, x6, 21, 3
cmp w11, w9
- bne .L1142
+ bne .L1147
lsr w6, w6, w8
ldrb w0, [x0,58]
and w6, w7, w6
and w6, w4, w6
cmp w6, w5
- bne .L1143
+ bne .L1148
cmp w1, 1
- beq .L1145
- b .L1141
-.L1143:
+ beq .L1150
+ b .L1146
+.L1148:
cmp w1, 3
- bhi .L1142
+ bhi .L1147
ldrb w6, [x10,w1,uxtw]
- adr x11, .Lrtx1144
+ adr x11, .Lrtx1149
add x6, x11, w6, sxtb #2
br x6
-.Lrtx1144:
+.Lrtx1149:
.section .rodata
.align 0
.align 2
-.L1144:
- .byte (.L1141 - .Lrtx1144) / 4
- .byte (.L1145 - .Lrtx1144) / 4
- .byte (.L1146 - .Lrtx1144) / 4
- .byte (.L1141 - .Lrtx1144) / 4
+.L1149:
+ .byte (.L1146 - .Lrtx1149) / 4
+ .byte (.L1150 - .Lrtx1149) / 4
+ .byte (.L1151 - .Lrtx1149) / 4
+ .byte (.L1146 - .Lrtx1149) / 4
.text
-.L1145:
+.L1150:
sub w6, w0, #6
and w6, w6, -3
uxtb w6, w6
- cbz w6, .L1142
- b .L1141
-.L1146:
+ cbz w6, .L1147
+ b .L1146
+.L1151:
cmp w0, 10
- bne .L1141
-.L1142:
+ bne .L1146
+.L1147:
lsl x2, x2, 6
ldrb w2, [x3,x2]
cmp w2, 255
- bne .L1147
+ bne .L1152
mov w0, 0
-.L1141:
+.L1146:
ret
.size queue_lun_state, .-queue_lun_state
.align 2
@@ -7221,9 +7271,9 @@ queue_remove_completed_req:
ldrb w9, [x0,3895]
ldrb w8, [x0,3256]
ldrb w10, [x0,3892]
-.L1157:
+.L1162:
cmp w7, 255
- beq .L1158
+ beq .L1163
sbfiz x6, x7, 6, 32
sxtw x1, w7
add x2, x4, x6
@@ -7231,64 +7281,64 @@ queue_remove_completed_req:
sub w2, w2, #11
uxtb w2, w2
cmp w2, 1
- bls .L1159
- cbz w5, .L1156
+ bls .L1164
+ cbz w5, .L1161
strb w7, [x0,2835]
- b .L1156
-.L1159:
+ b .L1161
+.L1164:
lsl x5, x1, 6
ldrb w7, [x4,x6]
add x2, x4, x5
strb w11, [x4,x5]
ldrb w5, [x2,59]
cmp w5, 1
- bne .L1162
+ bne .L1167
ldrh w2, [x2,50]
- cbnz w2, .L1170
+ cbnz w2, .L1175
mov w2, w10
mov x5, x13
- b .L1163
-.L1162:
- cbz w5, .L1180
-.L1164:
+ b .L1168
+.L1167:
+ cbz w5, .L1185
+.L1169:
mov w5, 1
- b .L1157
-.L1180:
+ b .L1162
+.L1185:
ldr w2, [x2,36]
cmn w2, #1
- beq .L1164
+ beq .L1169
mov w2, w9
mov x5, x12
- b .L1163
-.L1170:
+ b .L1168
+.L1175:
mov w2, w8
add x5, x0, 3256
-.L1163:
+.L1168:
cmp w2, 255
- bne .L1168
+ bne .L1173
add x3, x3, :lo12:.LANCHOR0
add x1, x3, x1, lsl 6
strb w7, [x3,2835]
ldrb w0, [x1,785]
strb w0, [x5]
- b .L1156
-.L1168:
+ b .L1161
+.L1173:
mov w5, w2
sbfiz x2, x2, 6, 32
ldrb w2, [x4,x2]
cmp w2, 255
- bne .L1168
+ bne .L1173
add x1, x4, x1, lsl 6
sbfiz x5, x5, 6, 32
ldrb w1, [x1,1]
strb w1, [x4,x5]
- b .L1164
-.L1158:
- cbz w5, .L1156
+ b .L1169
+.L1163:
+ cbz w5, .L1161
add x3, x3, :lo12:.LANCHOR0
mov w0, -1
strb w0, [x3,2835]
-.L1156:
+.L1161:
ret
.size queue_remove_completed_req, .-queue_remove_completed_req
.align 2
@@ -7309,16 +7359,16 @@ pm_alloc_new_blk:
ldrb w1, [x3,3276]
strh w0, [x2,690]
cmp w1, w0
- bls .L1182
+ bls .L1187
add x0, x2, x0, sxtw 1
ldrh w1, [x0,672]
mov w0, 65535
cmp w1, w0
- bne .L1183
-.L1182:
+ bne .L1188
+.L1187:
adrp x22, .LC113
add x22, x22, :lo12:.LC113
-.L1195:
+.L1200:
mov w0, 1
add x20, x19, :lo12:.LANCHOR0
bl ftl_alloc_sblk
@@ -7330,7 +7380,7 @@ pm_alloc_new_blk:
add x1, x1, 672
bl ftl_get_blk_list_in_sblk
uxth w0, w0
- cbnz w0, .L1184
+ cbnz w0, .L1189
mov w1, w21
mov x0, x22
bl printk
@@ -7339,23 +7389,23 @@ pm_alloc_new_blk:
ldrb w2, [x1,2]
orr w2, w2, -32
strb w2, [x1,2]
- b .L1195
-.L1184:
+ b .L1200
+.L1189:
ldr x1, [x20,2864]
mov w0, 1
mov w2, 65535
str w0, [x20,3896]
mov x20, 0
strh wzr, [x1,690]
-.L1186:
+.L1191:
add x3, x1, x20, lsl 1
uxth w0, w20
ldrh w3, [x3,416]
cmp w3, w2
- beq .L1185
+ beq .L1190
add x20, x20, 1
cmp x20, 128
- bne .L1186
+ bne .L1191
adrp x0, .LC0
adrp x1, .LANCHOR3
add x1, x1, :lo12:.LANCHOR3
@@ -7364,7 +7414,7 @@ pm_alloc_new_blk:
bl printk
bl dump_stack
mov w0, w20
-.L1185:
+.L1190:
add x1, x19, :lo12:.LANCHOR0
ldr x1, [x1,2864]
add x0, x1, x0, sxtw 1
@@ -7372,7 +7422,7 @@ pm_alloc_new_blk:
ldrh w0, [x1,688]
add w0, w0, 1
strh w0, [x1,688]
-.L1183:
+.L1188:
add x0, x19, :lo12:.LANCHOR0
ldr x1, [x0,2864]
ldrh w0, [x1,690]
@@ -7381,7 +7431,7 @@ pm_alloc_new_blk:
mov w0, 65533
sub w1, w20, #1
cmp w0, w1, uxth
- bcs .L1188
+ bcs .L1193
adrp x0, .LC0
adrp x1, .LANCHOR3
add x1, x1, :lo12:.LANCHOR3
@@ -7389,7 +7439,7 @@ pm_alloc_new_blk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1188:
+.L1193:
add x19, x19, :lo12:.LANCHOR0
mov w0, 21
ldr x1, [x19,2864]
@@ -7401,7 +7451,7 @@ pm_alloc_new_blk:
strh w4, [x1,694]
adrp x1, .LANCHOR2
ldr w1, [x1,#:lo12:.LANCHOR2]
- tbz x1, 12, .L1192
+ tbz x1, 12, .L1197
mov w2, 1
mov w1, w20
lsl w2, w2, w0
@@ -7411,7 +7461,7 @@ pm_alloc_new_blk:
mov w3, w20
uxth w4, w4
bl printk
-.L1192:
+.L1197:
mov w0, 0
ldr x23, [sp,48]
ldp x19, x20, [sp,16]
@@ -7430,34 +7480,34 @@ pm_select_ram_region:
str x19, [sp,16]
add x2, x2, :lo12:.LANCHOR0
mov x19, 0
-.L1199:
+.L1204:
add x1, x2, 3904
lsl x4, x19, 4
uxth w0, w19
ldrh w4, [x4,x1]
cmp w4, w3
- beq .L1198
+ beq .L1203
add x19, x19, 1
cmp x19, 32
- bne .L1199
+ bne .L1204
mov x0, 0
mov w3, 32768
-.L1201:
+.L1206:
add x2, x1, x0, lsl 4
uxth w4, w0
ldrh w2, [x2,2]
- tbnz x2, 15, .L1200
+ tbnz x2, 15, .L1205
cmp w2, w3
- bcs .L1200
+ bcs .L1205
mov w3, w2
mov w19, w4
-.L1200:
+.L1205:
add x0, x0, 1
cmp x0, 32
- bne .L1201
+ bne .L1206
cmp w19, 32
mov w0, w19
- bne .L1198
+ bne .L1203
adrp x0, .LANCHOR4+64
mov w2, -1
mov w1, 0
@@ -7465,23 +7515,23 @@ pm_select_ram_region:
adrp x0, .LANCHOR0
add x0, x0, :lo12:.LANCHOR0
add x0, x0, 3904
-.L1203:
+.L1208:
ldrh w5, [x0,2]
cmp w5, w2
- bcs .L1202
+ bcs .L1207
ldrh w4, [x0]
cmp w4, w3
csel w2, w2, w5, eq
cmp w4, w3
csel w19, w19, w1, eq
-.L1202:
+.L1207:
add w1, w1, 1
add x0, x0, 16
uxth w1, w1
cmp w1, 32
- bne .L1203
+ bne .L1208
cmp w19, 32
- bne .L1204
+ bne .L1209
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -7490,9 +7540,9 @@ pm_select_ram_region:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1204:
+.L1209:
mov w0, w19
-.L1198:
+.L1203:
ldr x19, [sp,16]
ldp x29, x30, [sp], 32
ret
@@ -7516,16 +7566,16 @@ flash_lsb_page_tbl_build:
add x29, sp, 0
stp x19, x20, [sp,16]
adrp x19, .LANCHOR0
- cbnz w0, .L1212
+ cbnz w0, .L1217
mov x0, 0
add x2, x19, :lo12:.LANCHOR0
-.L1213:
+.L1218:
add x1, x2, 4
strh w0, [x1,x0,lsl 1]
add x0, x0, 1
cmp x0, 256
- bne .L1213
-.L1219:
+ bne .L1218
+.L1224:
adrp x20, .LANCHOR4
mov w1, 255
add x20, x20, :lo12:.LANCHOR4
@@ -7534,39 +7584,39 @@ flash_lsb_page_tbl_build:
add x19, x19, :lo12:.LANCHOR0
bl ftl_memset
mov x0, 0
- b .L1214
-.L1212:
+ b .L1219
+.L1217:
cmp w0, 1
- bne .L1215
+ bne .L1220
mov x0, 0
mov w4, 3
mov w5, 2
add x3, x19, :lo12:.LANCHOR0
-.L1218:
+.L1223:
cmp x0, 3
uxth w2, w0
mov w1, w2
- bls .L1216
+ bls .L1221
ubfiz w1, w2, 1, 15
and w2, w2, 1
cmp w2, wzr
csel w2, w4, w5, ne
sub w1, w1, w2
uxth w1, w1
-.L1216:
+.L1221:
add x2, x3, 4
strh w1, [x2,x0,lsl 1]
add x0, x0, 1
cmp x0, 256
- bne .L1218
- b .L1219
-.L1215:
+ bne .L1223
+ b .L1224
+.L1220:
cmp w0, 2
- bne .L1220
+ bne .L1225
mov w1, 65535
mov x0, 0
add x4, x19, :lo12:.LANCHOR0
-.L1222:
+.L1227:
add x3, x4, 4
cmp x0, 1
uxth w2, w0
@@ -7576,36 +7626,36 @@ flash_lsb_page_tbl_build:
add x0, x0, 1
cmp x0, 256
uxth w1, w1
- bne .L1222
- b .L1219
-.L1220:
+ bne .L1227
+ b .L1224
+.L1225:
cmp w0, 3
- bne .L1223
+ bne .L1228
mov x0, 0
mov w4, 5
mov w5, 4
add x3, x19, :lo12:.LANCHOR0
-.L1226:
+.L1231:
cmp x0, 5
uxth w2, w0
mov w1, w2
- bls .L1224
+ bls .L1229
ubfiz w1, w2, 1, 15
and w2, w2, 1
cmp w2, wzr
csel w2, w4, w5, ne
sub w1, w1, w2
uxth w1, w1
-.L1224:
+.L1229:
add x2, x3, 4
strh w1, [x2,x0,lsl 1]
add x0, x0, 1
cmp x0, 256
- bne .L1226
- b .L1219
-.L1223:
+ bne .L1231
+ b .L1224
+.L1228:
cmp w0, 4
- bne .L1227
+ bne .L1232
add x2, x19, :lo12:.LANCHOR0
mov w5, 7
add x1, x2, 4
@@ -7625,7 +7675,7 @@ flash_lsb_page_tbl_build:
strh w0, [x1,14]
mov w0, 8
strh w2, [x1,6]
-.L1229:
+.L1234:
and w3, w0, 1
ubfiz w2, w0, 1, 15
add w0, w0, 1
@@ -7636,48 +7686,48 @@ flash_lsb_page_tbl_build:
sub w2, w2, w3
cmp w0, 256
strh w2, [x1,14]
- bne .L1229
- b .L1219
-.L1227:
+ bne .L1234
+ b .L1224
+.L1232:
cmp w0, 5
- bne .L1230
+ bne .L1235
mov x0, 0
add x2, x19, :lo12:.LANCHOR0
-.L1231:
+.L1236:
add x1, x2, 4
strh w0, [x1,x0,lsl 1]
add x0, x0, 1
cmp x0, 16
- bne .L1231
+ bne .L1236
mov x0, 0
-.L1232:
+.L1237:
add x2, x1, x0
add w3, w0, 16
add x0, x0, 2
cmp x0, 480
strh w3, [x2,32]
- bne .L1232
- b .L1219
-.L1230:
+ bne .L1237
+ b .L1224
+.L1235:
cmp w0, 8
- bne .L1219
+ bne .L1224
mov x0, 0
add x2, x19, :lo12:.LANCHOR0
-.L1233:
+.L1238:
add x1, x2, 4
strh w0, [x0,x1]
add x0, x0, 2
cmp x0, 512
- bne .L1233
- b .L1219
-.L1214:
+ bne .L1238
+ b .L1224
+.L1219:
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 .L1214
+ bne .L1219
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 32
ret
@@ -7695,27 +7745,27 @@ flash_die_info_init:
ldr w0, [x19,#:lo12:.LANCHOR2]
stp x25, x26, [sp,64]
stp x27, x28, [sp,80]
- tbz x0, 12, .L1250
+ tbz x0, 12, .L1255
adrp x1, .LANCHOR3
adrp x0, .LC4
add x1, x1, :lo12:.LANCHOR3
add x0, x0, :lo12:.LC4
add x1, x1, 48
bl printk
-.L1250:
+.L1255:
add x24, x19, :lo12:.LANCHOR2
adrp x21, .LANCHOR0
add x20, x21, :lo12:.LANCHOR0
adrp x22, .LANCHOR4
add x25, x22, :lo12:.LANCHOR4
mov w2, 8
- ldrh w0, [x24,402]
+ ldrh w0, [x24,34]
mov x23, 0
- ldrb w1, [x24,388]
+ ldrb w1, [x24,20]
mov w26, 2
strh w0, [x20,2]
- add x27, x24, 377
- ldrh w0, [x24,386]
+ add x27, x24, 9
+ ldrh w0, [x24,18]
add x28, x20, 748
strb wzr, [x20,633]
sdiv w0, w0, w1
@@ -7727,14 +7777,14 @@ flash_die_info_init:
mov w1, 0
mov w2, 32
bl ftl_memset
-.L1252:
+.L1257:
add x0, x20, 744
- ldrb w2, [x24,376]
+ ldrb w2, [x24,8]
add x1, x28, x23, lsl 3
strb w26, [x23,x0]
mov x0, x27
bl flash_mem_cmp8
- cbnz w0, .L1251
+ cbnz w0, .L1256
ldrb w1, [x20,633]
add x2, x25, 1096
str w0, [x2,w1,sxtw 2]
@@ -7744,48 +7794,48 @@ flash_die_info_init:
add x1, x20, x1, sxtw
strb w0, [x1,736]
bl zftl_flash_enter_slc_mode
-.L1251:
+.L1256:
add x23, x23, 1
cmp x23, 4
- bne .L1252
+ bne .L1257
add x0, x19, :lo12:.LANCHOR2
- add x1, x0, 376
+ add x1, x0, 8
ldrb w2, [x1,8]
cmp w2, 2
- beq .L1253
-.L1257:
+ beq .L1258
+.L1262:
add x19, x19, :lo12:.LANCHOR2
add x21, x21, :lo12:.LANCHOR0
add x22, x22, :lo12:.LANCHOR4
ldp x23, x24, [sp,48]
- ldrb w1, [x19,389]
+ ldrb w1, [x19,21]
ldrb w0, [x21,633]
ldp x25, x26, [sp,64]
ldp x27, x28, [sp,80]
mul w0, w0, w1
- ldrh w1, [x19,390]
+ ldrh w1, [x19,22]
ldp x19, x20, [sp,16]
mul w0, w0, w1
strh w0, [x22,1128]
ldp x21, x22, [sp,32]
ldp x29, x30, [sp], 112
ret
-.L1253:
+.L1258:
add x23, x21, :lo12:.LANCHOR0
ldrh w20, [x1,14]
- ldrb w26, [x0,376]
+ ldrb w26, [x0,8]
mov x24, 0
and w20, w20, 65280
ldrb w27, [x1,23]
ldrh w2, [x23,2]
- add x25, x0, 377
+ add x25, x0, 9
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
-.L1256:
+.L1261:
add x1, x3, x24, lsl 3
mov x0, x25
mov w2, w26
@@ -7794,7 +7844,7 @@ flash_die_info_init:
bl flash_mem_cmp8
ldr x3, [x29,104]
ldr x4, [x29,96]
- cbnz w0, .L1254
+ cbnz w0, .L1259
ldrb w0, [x23,633]
add x1, x4, 1096
cmp w27, wzr
@@ -7804,11 +7854,11 @@ flash_die_info_init:
add x0, x23, x0, sxtw
strb w1, [x23,633]
strb w24, [x0,736]
-.L1254:
+.L1259:
add x24, x24, 1
cmp x24, 4
- bne .L1256
- b .L1257
+ bne .L1261
+ b .L1262
.size flash_die_info_init, .-flash_die_info_init
.align 2
.global lpa_hash_init
@@ -7843,7 +7893,7 @@ lpa_rebuild_hash:
add x29, sp, 0
ldr w0, [x0,#:lo12:.LANCHOR2]
str x19, [sp,16]
- tbz x0, 12, .L1268
+ tbz x0, 12, .L1273
adrp x1, .LANCHOR3
adrp x0, .LC115
add x1, x1, :lo12:.LANCHOR3
@@ -7852,7 +7902,7 @@ lpa_rebuild_hash:
mov w2, 222
mov w3, 0
bl printk
-.L1268:
+.L1273:
adrp x19, .LANCHOR0
mov w1, 255
add x19, x19, :lo12:.LANCHOR0
@@ -7867,28 +7917,28 @@ lpa_rebuild_hash:
lsl w2, w2, 2
bl ftl_memset
mov w0, 0
-.L1269:
+.L1274:
ldrh w1, [x19,3300]
ldrb w2, [x19,3276]
mul w1, w1, w2
cmp w0, w1, lsl 1
- bge .L1278
+ bge .L1283
uxtw x2, w0
ldr x1, [x19,3872]
ldr w1, [x1,x2,lsl 2]
cmn w1, #1
- beq .L1270
+ beq .L1275
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]
-.L1270:
+.L1275:
add w0, w0, 1
uxth w0, w0
- b .L1269
-.L1278:
+ b .L1274
+.L1283:
ldr x19, [sp,16]
ldp x29, x30, [sp], 32
ret
@@ -7908,7 +7958,7 @@ zftl_read_flash_info:
adrp x0, .LANCHOR0
add x0, x0, :lo12:.LANCHOR0
add x1, x1, :lo12:.LANCHOR2
- add x1, x1, 376
+ add x1, x1, 8
strb wzr, [x19,10]
mov w5, 1
ldrb w2, [x1,9]
@@ -7927,9 +7977,9 @@ zftl_read_flash_info:
strb w1, [x19,9]
mov x1, 0
strb w2, [x19,8]
-.L1280:
+.L1285:
cmp w4, w1, uxtb
- bls .L1282
+ bls .L1287
add x2, x0, 736
ldrb w3, [x19,10]
ldrb w2, [x1,x2]
@@ -7937,8 +7987,8 @@ zftl_read_flash_info:
lsl w2, w5, w2
orr w2, w2, w3
strb w2, [x19,10]
- b .L1280
-.L1282:
+ b .L1285
+.L1287:
ldr x19, [sp,16]
ldp x29, x30, [sp], 32
ret
@@ -8036,9 +8086,9 @@ gc_static_wearleveling:
ldr w1, [x0,32]
mov w0, 10240
cmp w1, w0
- bls .L1285
+ bls .L1290
bl ftl_tmp_into_update
-.L1285:
+.L1290:
add x3, x19, :lo12:.LANCHOR0
ldr x0, [x3,608]
ldr w1, [x0,568]
@@ -8046,14 +8096,14 @@ gc_static_wearleveling:
add w1, w1, 860160
add w1, w1, 3840
cmp w2, w1
- bhi .L1286
+ bhi .L1291
ldr x3, [x3,2864]
ldr w1, [x0,572]
ldr w3, [x3,36]
add w1, w1, 32
cmp w3, w1
- bls .L1336
-.L1286:
+ bls .L1341
+.L1291:
add x1, x19, :lo12:.LANCHOR0
mov w22, 0
mov w20, 65535
@@ -8074,11 +8124,11 @@ gc_static_wearleveling:
adrp x10, .LANCHOR2
add x8, x8, :lo12:.LC116
ldrh w23, [x1,134]
-.L1288:
+.L1293:
add x4, x19, :lo12:.LANCHOR0
ldrh w0, [x4,576]
cmp w0, w23
- bls .L1397
+ bls .L1402
uxtw x7, w23
ldr x0, [x4,584]
lsl x1, x7, 2
@@ -8086,70 +8136,70 @@ gc_static_wearleveling:
ldrb w2, [x6,2]
and w3, w2, 224
cmp w3, 224
- beq .L1289
- tbz x2, 3, .L1290
+ beq .L1294
+ tbz x2, 3, .L1295
ldrh w3, [x0,x1]
ldr w2, [x0,x1]
and w3, w3, 2047
ubfx x2, x2, 11, 8
- b .L1291
-.L1290:
+ b .L1296
+.L1295:
tst w2, 24
- bne .L1292
+ bne .L1297
ldrh w3, [x0,x1]
mov w2, 65535
and w3, w3, 2047
- b .L1291
-.L1292:
+ b .L1296
+.L1297:
ldr w2, [x0,x1]
mov w3, 65535
ubfx x2, x2, 11, 8
- b .L1293
-.L1291:
+ b .L1298
+.L1296:
ldr w4, [x29,136]
add w26, w26, 1
cmp w20, w3
add w4, w4, w3
str w4, [x29,136]
uxth w26, w26
- bls .L1335
+ bls .L1340
add x4, x19, :lo12:.LANCHOR0
mov w20, w3
ldr x4, [x4,608]
strh w23, [x4,586]
-.L1335:
+.L1340:
cmp w25, w3
- bcs .L1294
+ bcs .L1299
mov w22, w23
mov w25, w3
-.L1294:
+.L1299:
cmp w2, w9
- beq .L1295
-.L1293:
+ beq .L1300
+.L1298:
ldr w4, [x29,140]
add w27, w27, 1
cmp w21, w2
add w4, w4, w2
str w4, [x29,140]
uxth w27, w27
- bls .L1296
+ bls .L1301
add x4, x19, :lo12:.LANCHOR0
mov w21, w2
ldr x4, [x4,608]
strh w23, [x4,584]
-.L1296:
+.L1301:
cmp w24, w2
- bcs .L1295
+ bcs .L1300
mov w28, w23
mov w24, w2
-.L1295:
+.L1300:
cmp w3, 9
- bls .L1338
+ bls .L1343
cmp w2, 9
- bhi .L1289
-.L1338:
+ bhi .L1294
+.L1343:
ldr w2, [x10,#:lo12:.LANCHOR2]
- tbz x2, 8, .L1289
+ tbz x2, 8, .L1294
ldrh w2, [x0,x1]
ldr w3, [x0,x1]
add x0, x19, :lo12:.LANCHOR0
@@ -8170,11 +8220,11 @@ gc_static_wearleveling:
ldr x10, [x29,112]
ldr x9, [x29,120]
ldr x8, [x29,128]
-.L1289:
+.L1294:
add w23, w23, 1
uxth w23, w23
- b .L1288
-.L1397:
+ b .L1293
+.L1402:
ldr x0, [x4,608]
mov w1, 255
mov w2, 128
@@ -8191,7 +8241,7 @@ gc_static_wearleveling:
lsl x0, x7, 2
mov x1, x7
add x8, x3, x0
- tbz x2, 10, .L1299
+ tbz x2, 10, .L1304
ldr x9, [x4,600]
ldrh w2, [x3,x0]
ldrb w5, [x8,2]
@@ -8207,13 +8257,13 @@ gc_static_wearleveling:
str x8, [x29,128]
bl printk
ldr x8, [x29,128]
-.L1299:
+.L1304:
ldrb w0, [x8,2]
- tbz x0, 3, .L1300
+ tbz x0, 3, .L1305
ldrb w0, [x8,2]
and w1, w0, 192
cmp w1, 64
- bne .L1301
+ bne .L1306
add x3, x19, :lo12:.LANCHOR0
mov w1, 0
mov w2, 1
@@ -8224,21 +8274,21 @@ gc_static_wearleveling:
ldr x3, [x29,128]
mov w0, 1
strh w0, [x3,3214]
- b .L1300
-.L1301:
+ b .L1305
+.L1306:
tst w0, 224
- bne .L1300
+ bne .L1305
add x2, x19, :lo12:.LANCHOR0
mov w0, 65535
ldr x1, [x2,608]
ldrh w3, [x1,590]
cmp w3, w0
- bne .L1300
+ bne .L1305
ldrh w0, [x1,586]
ldrh w1, [x1,588]
str x2, [x29,128]
cmp w1, w0
- beq .L1300
+ beq .L1305
bl zftl_remove_free_node
ldr x2, [x29,128]
ldr x0, [x2,608]
@@ -8246,7 +8296,7 @@ gc_static_wearleveling:
strh w1, [x0,590]
mov w1, -1
strh w1, [x0,586]
-.L1300:
+.L1305:
add x0, x19, :lo12:.LANCHOR0
ldr w2, [x23,#:lo12:.LANCHOR2]
ldr x1, [x0,608]
@@ -8255,7 +8305,7 @@ gc_static_wearleveling:
lsl x3, x7, 2
mov x1, x7
add x8, x4, x3
- tbz x2, 10, .L1302
+ tbz x2, 10, .L1307
ldr x9, [x0,600]
adrp x0, .LC118
ldrh w2, [x4,x3]
@@ -8271,13 +8321,13 @@ gc_static_wearleveling:
str x8, [x29,128]
bl printk
ldr x8, [x29,128]
-.L1302:
+.L1307:
ldrb w0, [x8,2]
- tbz x0, 3, .L1303
+ tbz x0, 3, .L1308
ldrb w0, [x8,2]
and w1, w0, 192
cmp w1, 64
- bne .L1304
+ bne .L1309
add x3, x19, :lo12:.LANCHOR0
mov w1, 0
mov w2, 1
@@ -8288,21 +8338,21 @@ gc_static_wearleveling:
ldr x3, [x29,128]
mov w0, 1
strh w0, [x3,3214]
- b .L1303
-.L1304:
+ b .L1308
+.L1309:
tst w0, 224
- bne .L1303
+ bne .L1308
add x2, x19, :lo12:.LANCHOR0
mov w0, 65535
ldr x1, [x2,608]
ldrh w3, [x1,588]
cmp w3, w0
- bne .L1303
+ bne .L1308
ldrh w0, [x1,584]
ldrh w1, [x1,590]
str x2, [x29,128]
cmp w1, w0
- beq .L1303
+ beq .L1308
bl zftl_remove_free_node
ldr x2, [x29,128]
ldr x0, [x2,608]
@@ -8310,11 +8360,11 @@ gc_static_wearleveling:
strh w1, [x0,588]
mov w1, -1
strh w1, [x0,584]
-.L1303:
+.L1308:
add x4, x19, :lo12:.LANCHOR0
ldr w0, [x23,#:lo12:.LANCHOR2]
ldr x1, [x4,584]
- tbz x0, 10, .L1305
+ tbz x0, 10, .L1310
uxtw x7, w22
ldr x8, [x4,600]
lsl x0, x7, 2
@@ -8332,11 +8382,11 @@ gc_static_wearleveling:
ubfx x3, x3, 11, 8
ubfx x5, x5, 5, 3
bl printk
-.L1305:
+.L1310:
add x4, x19, :lo12:.LANCHOR0
ldr w0, [x23,#:lo12:.LANCHOR2]
ldr x1, [x4,584]
- tbz x0, 10, .L1306
+ tbz x0, 10, .L1311
uxtw x7, w28
ldr x8, [x4,600]
lsl x0, x7, 2
@@ -8354,7 +8404,7 @@ gc_static_wearleveling:
ubfx x3, x3, 11, 8
ubfx x5, x5, 5, 3
bl printk
-.L1306:
+.L1311:
ldr w1, [x29,136]
add x0, x19, :lo12:.LANCHOR0
udiv w3, w1, w26
@@ -8368,7 +8418,7 @@ gc_static_wearleveling:
strh w3, [x0,88]
strh w4, [x0,90]
ldr w0, [x23,#:lo12:.LANCHOR2]
- tbz x0, 10, .L1307
+ tbz x0, 10, .L1312
adrp x0, .LC121
mov w1, w26
add x0, x0, :lo12:.LC121
@@ -8376,10 +8426,10 @@ gc_static_wearleveling:
uxth w3, w3
uxth w4, w4
bl printk
-.L1307:
+.L1312:
ldr w0, [x23,#:lo12:.LANCHOR2]
adrp x28, .LANCHOR4
- tbz x0, 10, .L1308
+ tbz x0, 10, .L1313
add x6, x28, :lo12:.LANCHOR4
adrp x0, .LC122
add x0, x0, :lo12:.LC122
@@ -8390,19 +8440,19 @@ gc_static_wearleveling:
mov w4, w24
ldrh w6, [x6,1162]
bl printk
-.L1308:
+.L1313:
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 .L1309
+ bgt .L1314
ldrh w1, [x1,1160]
sub w0, w25, w20
cmp w0, w1
- ble .L1337
-.L1309:
+ ble .L1342
+.L1314:
add x0, x19, :lo12:.LANCHOR0
mov w26, 0
mov w22, w26
@@ -8418,11 +8468,11 @@ gc_static_wearleveling:
str x0, [x29,128]
add x0, x25, :lo12:.LC123
str x0, [x29,120]
-.L1311:
+.L1316:
add x1, x19, :lo12:.LANCHOR0
ldrh w0, [x1,576]
cmp w27, w0
- bcs .L1320
+ bcs .L1325
add w7, w24, 1
ldr x4, [x1,584]
uxth w24, w7
@@ -8434,31 +8484,31 @@ gc_static_wearleveling:
ldrb w0, [x0,2]
and w2, w0, 224
cmp w2, 224
- beq .L1313
+ beq .L1318
tst w0, 192
- beq .L1313
+ beq .L1318
ubfx x0, x0, 3, 2
cmp w2, 160
and w1, w0, 1
- tbnz x0, 0, .L1395
+ tbnz x0, 0, .L1400
cmp w0, 2
-.L1395:
+.L1400:
add x0, x28, :lo12:.LANCHOR4
- bne .L1316
+ bne .L1321
ldrh w0, [x0,1162]
ldr w2, [x29,140]
cmp w2, w0
- ble .L1317
+ ble .L1322
ldr w0, [x4,x3]
ubfx x0, x0, 11, 8
cmp w0, w21
- bls .L1318
- cbz w1, .L1317
+ bls .L1323
+ cbz w1, .L1322
ldrh w0, [x4,x3]
and w0, w0, 2047
cmp w0, w20
- bgt .L1317
-.L1318:
+ bgt .L1322
+.L1323:
mov w1, 0
mov w0, w24
mov w2, 1
@@ -8473,7 +8523,7 @@ gc_static_wearleveling:
ldr x4, [x29,104]
strh w1, [x0,3214]
ldr w1, [x23,#:lo12:.LANCHOR2]
- tbz x1, 10, .L1317
+ tbz x1, 10, .L1322
ldr x1, [x0,584]
ldr x10, [x0,600]
add x1, x1, x3
@@ -8481,24 +8531,24 @@ gc_static_wearleveling:
ldr w6, [x4,x3]
ldr x0, [x29,120]
ldrb w2, [x1,2]
- b .L1396
-.L1316:
+ b .L1401
+.L1321:
ldrh w0, [x0,1160]
ldr w2, [x29,136]
cmp w2, w0
- ble .L1317
+ ble .L1322
ldrh w0, [x4,x3]
add w2, w20, 8
and w0, w0, 2047
cmp w0, w2
- ble .L1319
- cbz w1, .L1317
+ ble .L1324
+ cbz w1, .L1322
ldr w0, [x4,x3]
add w1, w21, 4
ubfx x0, x0, 11, 8
cmp w0, w1
- bgt .L1317
-.L1319:
+ bgt .L1322
+.L1324:
mov w1, 0
mov w0, w24
mov w2, 1
@@ -8513,7 +8563,7 @@ gc_static_wearleveling:
ldr x4, [x29,104]
strh w1, [x0,3214]
ldr w1, [x23,#:lo12:.LANCHOR2]
- tbz x1, 10, .L1317
+ tbz x1, 10, .L1322
ldr x1, [x0,584]
ldr x10, [x0,600]
add x1, x1, x3
@@ -8521,7 +8571,7 @@ gc_static_wearleveling:
ldr w6, [x4,x3]
ldr x0, [x29,128]
ldrb w2, [x1,2]
-.L1396:
+.L1401:
ldrh w3, [x10,x25,lsl 1]
mov w1, w24
ldrh w4, [x9,56]
@@ -8529,122 +8579,122 @@ gc_static_wearleveling:
and w5, w5, 2047
ubfx x6, x6, 11, 8
bl printk
-.L1317:
+.L1322:
cmp w26, 4
- bhi .L1320
+ bhi .L1325
cmp w22, 4
- bhi .L1320
-.L1313:
+ bhi .L1325
+.L1318:
add w27, w27, 1
uxth w27, w27
- b .L1311
-.L1320:
+ b .L1316
+.L1325:
add x0, x19, :lo12:.LANCHOR0
ldr x0, [x0,608]
str w24, [x0,580]
- b .L1310
-.L1337:
+ b .L1315
+.L1342:
mov w26, 0
mov w22, w26
-.L1310:
- cbz w21, .L1323
+.L1315:
+ cbz w21, .L1328
add x0, x19, :lo12:.LANCHOR0
ldr x0, [x0,2864]
ldrh w0, [x0,134]
-.L1324:
+.L1329:
add x1, x19, :lo12:.LANCHOR0
ldrh w2, [x1,576]
cmp w2, w0
- bls .L1398
+ bls .L1403
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 .L1325
+ bcc .L1330
ldrb w5, [x5,2]
tst w5, 24
- beq .L1325
+ beq .L1330
sub w2, w2, w21
bfi w1, w2, 11, 8
str w1, [x4,x3]
-.L1325:
+.L1330:
add w0, w0, 1
uxth w0, w0
- b .L1324
-.L1398:
+ b .L1329
+.L1403:
ldr x0, [x1,2864]
ldrh w1, [x0,72]
add w1, w21, w1
strh w1, [x0,72]
ldrh w1, [x0,98]
cmp w1, w21
- bls .L1323
+ bls .L1328
sub w21, w1, w21
strh w21, [x0,98]
-.L1323:
- cbz w20, .L1329
+.L1328:
+ cbz w20, .L1334
add x0, x19, :lo12:.LANCHOR0
ldr x0, [x0,2864]
ldrh w0, [x0,134]
-.L1330:
+.L1335:
add x1, x19, :lo12:.LANCHOR0
ldrh w2, [x1,576]
cmp w2, w0
- bls .L1399
+ bls .L1404
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 .L1331
+ blt .L1336
ldrb w5, [x5,2]
and w5, w5, 24
cmp w5, 16
- beq .L1331
+ beq .L1336
sub w2, w2, w20
bfi w1, w2, 0, 11
strh w1, [x4,x3]
-.L1331:
+.L1336:
add w0, w0, 1
uxth w0, w0
- b .L1330
-.L1399:
+ b .L1335
+.L1404:
ldr x0, [x1,2864]
ldrh w1, [x0,74]
add w1, w20, w1
strh w1, [x0,74]
ldrh w1, [x0,96]
cmp w1, w20
- bls .L1329
+ bls .L1334
sub w20, w1, w20
strh w20, [x0,96]
-.L1329:
+.L1334:
mov w1, 5
mov w0, 0
bl zftl_get_gc_node
uxth w1, w0
mov w2, 65535
cmp w1, w2
- beq .L1287
+ beq .L1292
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 .L1287
+ bhi .L1292
mov w1, 0
mov w2, 1
add w22, w22, 1
bl gc_add_sblk
- b .L1287
-.L1336:
+ b .L1292
+.L1341:
mov w26, 0
mov w22, w26
-.L1287:
+.L1292:
add w0, w26, w22
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -8700,52 +8750,52 @@ zftl_sblk_list_init:
ldr x0, [x19,2864]
ldrsh w19, [x0,134]
strh wzr, [x0,146]
-.L1401:
+.L1406:
add x0, x21, :lo12:.LANCHOR0
ldrh w1, [x0,576]
cmp w19, w1
- bge .L1431
+ bge .L1436
sxtw x22, w19
ldr x27, [x0,584]
ldr w1, [x29,108]
add x27, x27, x22, lsl 2
ldrb w2, [x27,3]
- cbz w2, .L1402
+ cbz w2, .L1407
ldrb w5, [x0,3276]
ldrh w6, [x0,3274]
ldr x4, [x0,2864]
mov w0, 0
mov w1, w0
-.L1403:
+.L1408:
cmp w0, w5
- bge .L1432
+ bge .L1437
ldrb w2, [x27,3]
asr w2, w2, w0
- tbnz x2, 0, .L1404
+ tbnz x2, 0, .L1409
add w1, w6, w1
sxth w1, w1
- b .L1405
-.L1404:
+ b .L1410
+.L1409:
ldrh w2, [x4,146]
add w2, w2, 1
strh w2, [x4,146]
-.L1405:
+.L1410:
add w0, w0, 1
- b .L1403
-.L1432:
- cbz w1, .L1407
+ b .L1408
+.L1437:
+ cbz w1, .L1412
sdiv w1, w23, w1
add w1, w1, 1
sxth w1, w1
- b .L1402
-.L1407:
+ b .L1407
+.L1412:
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]
-.L1402:
+.L1407:
add x20, x21, :lo12:.LANCHOR0
smull x0, w19, w24
ldr x2, [x20,528]
@@ -8758,101 +8808,101 @@ zftl_sblk_list_init:
ldrb w1, [x27,2]
and w0, w1, 224
cmp w0, 224
- beq .L1410
+ beq .L1415
cmp w0, 32
cset w28, eq
- cbnz w28, .L1410
+ cbnz w28, .L1415
ldr x2, [x20,608]
ldrh w4, [x2,16]
cmp w19, w4
- beq .L1410
+ beq .L1415
ldrh w4, [x2,48]
cmp w19, w4
- beq .L1410
+ beq .L1415
ldrh w2, [x2,80]
cmp w19, w2
- beq .L1410
+ beq .L1415
cmp w0, 64
- bne .L1412
+ bne .L1417
uxth w27, w19
add x0, x20, 616
mov w1, w27
add x2, x20, 2850
- b .L1429
-.L1412:
+ b .L1434
+.L1417:
cmp w0, 96
- bne .L1413
+ bne .L1418
uxth w27, w19
add x0, x20, 3288
mov w1, w27
add x2, x20, 2852
- b .L1429
-.L1413:
+ b .L1434
+.L1418:
cmp w0, 160
- bne .L1414
+ bne .L1419
uxth w27, w19
add x0, x20, 3280
mov w1, w27
add x2, x20, 2854
-.L1429:
+.L1434:
bl _insert_data_list
ldr x0, [x20,600]
ldrh w0, [x0,x22,lsl 1]
cmp w0, 7
- bhi .L1410
+ bhi .L1415
mov w0, w27
mov w1, 1
mov w2, w28
- b .L1427
-.L1414:
- cbnz w0, .L1410
+ b .L1432
+.L1419:
+ cbnz w0, .L1415
ldr x0, [x20,600]
ldrh w2, [x0,x22,lsl 1]
- cbz w2, .L1415
+ cbz w2, .L1420
mov x0, x26
mov w1, w19
bl printk
ldrb w0, [x27,2]
- tbz x0, 4, .L1416
+ tbz x0, 4, .L1421
mov w1, 5
- b .L1423
-.L1416:
+ b .L1428
+.L1421:
mov w1, 2
-.L1423:
+.L1428:
bfi w0, w1, 5, 3
mov w2, 0
strb w0, [x27,2]
mov w1, 1
mov w0, w19
-.L1427:
+.L1432:
bl gc_add_sblk
- b .L1410
-.L1415:
+ b .L1415
+.L1420:
ands w1, w1, 24
add x2, x21, :lo12:.LANCHOR0
- bne .L1418
+ bne .L1423
add x0, x2, 3312
mov w1, w19
add x2, x2, 2844
- b .L1425
-.L1418:
+ b .L1430
+.L1423:
cmp w1, 16
- bne .L1419
+ bne .L1424
add x0, x2, 3320
mov w1, w19
add x2, x2, 2846
- b .L1425
-.L1419:
+ b .L1430
+.L1424:
add x0, x2, 3328
mov w1, w19
add x2, x2, 2848
-.L1425:
+.L1430:
bl _insert_free_list
-.L1410:
+.L1415:
add w19, w19, 1
sxth w19, w19
- b .L1401
-.L1431:
+ b .L1406
+.L1436:
ldr x1, [x0,2864]
ldrh w2, [x0,2844]
strh w2, [x1,114]
@@ -8893,8 +8943,8 @@ ftl_open_sblk_init:
mov x26, x23
add x20, x20, :lo12:.LC113
mov w24, -1
-.L1434:
-.L1437:
+.L1439:
+.L1442:
mov w0, w21
bl ftl_alloc_sblk
uxth w22, w0
@@ -8916,11 +8966,11 @@ ftl_open_sblk_init:
mul w2, w1, w2
strh w2, [x19,6]
strb w21, [x19,4]
- beq .L1435
+ beq .L1440
ldrb w3, [x0,3276]
mul w3, w1, w3
uxth w3, w3
-.L1435:
+.L1440:
add x27, x26, :lo12:.LANCHOR0
strh w3, [x19,12]
ubfiz x28, x22, 1, 16
@@ -8935,7 +8985,7 @@ ftl_open_sblk_init:
ldrh w1, [x19,6]
strh w1, [x0,x28]
ldrb w0, [x19,9]
- cbnz w0, .L1433
+ cbnz w0, .L1438
mov x0, x20
mov w1, w22
bl printk
@@ -8943,8 +8993,8 @@ ftl_open_sblk_init:
strh w24, [x0,x28]
mov w0, 7
strb w0, [x19,4]
- b .L1437
-.L1433:
+ b .L1442
+.L1438:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -8968,7 +9018,7 @@ pm_free_sblk:
stp x27, x28, [sp,80]
ldrh w0, [x0,1164]
cmp w0, 128
- bls .L1440
+ bls .L1445
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -8977,7 +9027,7 @@ pm_free_sblk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1440:
+.L1445:
add x28, x29, 112
mov w1, 0
mov w2, 256
@@ -8997,9 +9047,9 @@ pm_free_sblk:
ldrh w7, [x4,698]
sub w0, w0, #1
ldrh w9, [x1,1164]
-.L1441:
+.L1446:
cmp w7, w3, uxth
- bls .L1466
+ bls .L1471
add x1, x4, x3, lsl 2
mov x2, 0
ldr w1, [x1,704]
@@ -9007,23 +9057,23 @@ pm_free_sblk:
and w1, w1, w0
udiv w1, w1, w8
uxth w1, w1
-.L1442:
+.L1447:
cmp w9, w2, uxth
- bls .L1467
+ bls .L1472
add x5, x4, x2, lsl 1
ldrh w5, [x5,416]
cmp w5, w1
- bne .L1443
+ bne .L1448
ldrh w5, [x28,x2,lsl 1]
add w5, w5, 1
strh w5, [x28,x2,lsl 1]
-.L1443:
+.L1448:
add x2, x2, 1
- b .L1442
-.L1467:
+ b .L1447
+.L1472:
add x3, x3, 1
- b .L1441
-.L1466:
+ b .L1446
+.L1471:
add x1, x21, :lo12:.LANCHOR0
mov w25, 0
adrp x24, .LC126
@@ -9035,11 +9085,11 @@ pm_free_sblk:
ldrh w20, [x1,3300]
mul w20, w0, w20
uxth w20, w20
-.L1446:
+.L1451:
add x0, x23, :lo12:.LANCHOR4
ldrh w0, [x0,1164]
cmp w0, w19
- bls .L1468
+ bls .L1473
add x0, x21, :lo12:.LANCHOR0
sxtw x22, w19
add x1, x22, 208
@@ -9049,31 +9099,31 @@ pm_free_sblk:
ldrh w1, [x4,692]
sdiv w1, w1, w2
cmp w1, w3
- bne .L1447
+ bne .L1452
ldrb w1, [x0,3276]
ldrh w0, [x0,3300]
mul w0, w1, w0
strh w0, [x28,w19,sxtw 1]
-.L1447:
+.L1452:
ldrh w0, [x28,x22,lsl 1]
cmp w20, w0
- bls .L1448
+ bls .L1453
cmp w0, wzr
csel w25, w25, w19, eq
csel w20, w20, w0, eq
-.L1448:
- cbnz w0, .L1450
+.L1453:
+ cbnz w0, .L1455
mov w0, 65535
cmp w3, w0
- beq .L1450
+ beq .L1455
ldr w0, [x26,#:lo12:.LANCHOR2]
- tbz x0, 12, .L1451
+ tbz x0, 12, .L1456
ldrh w4, [x4,688]
mov x0, x24
mov w1, w19
mov w2, 0
bl printk
-.L1451:
+.L1456:
add x1, x21, :lo12:.LANCHOR0
add x22, x22, 208
str x1, [x29,104]
@@ -9086,11 +9136,11 @@ pm_free_sblk:
ldrh w1, [x0,688]
sub w1, w1, #1
strh w1, [x0,688]
-.L1450:
+.L1455:
add w19, w19, 1
uxth w19, w19
- b .L1446
-.L1468:
+ b .L1451
+.L1473:
mov w0, w25
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -9121,7 +9171,7 @@ flash_info_data_init:
ldr w0, [x1,#:lo12:.LANCHOR2]
stp x19, x20, [sp,16]
mov x20, x1
- tbz x0, 12, .L1471
+ tbz x0, 12, .L1476
adrp x2, .LANCHOR3
adrp x0, .LC127
add x2, x2, :lo12:.LANCHOR3
@@ -9129,7 +9179,7 @@ flash_info_data_init:
mov w1, 100
add x2, x2, 112
bl printk
-.L1471:
+.L1476:
adrp x19, .LANCHOR0
mov w1, 0
add x19, x19, :lo12:.LANCHOR0
@@ -9151,7 +9201,7 @@ flash_info_data_init:
bl ftl_memcpy
ldr x0, [x19,728]
add x1, x20, :lo12:.LANCHOR2
- add x1, x1, 376
+ add x1, x1, 8
mov w2, 32
add x0, x0, 48
bl ftl_memcpy
@@ -9164,14 +9214,14 @@ flash_info_data_init:
.type ftl_memcpy32, %function
ftl_memcpy32:
mov x3, 0
-.L1476:
+.L1481:
cmp w2, w3
- bls .L1478
+ bls .L1483
ldr w4, [x1,x3,lsl 2]
str w4, [x0,x3,lsl 2]
add x3, x3, 1
- b .L1476
-.L1478:
+ b .L1481
+.L1483:
ret
.size ftl_memcpy32, .-ftl_memcpy32
.align 2
@@ -9193,17 +9243,17 @@ js_hash:
mov w0, 42982
mov x2, 0
movk w0, 0x47c6, lsl 16
-.L1481:
+.L1486:
cmp w1, w2
- bls .L1483
+ bls .L1488
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 .L1481
-.L1483:
+ b .L1486
+.L1488:
ret
.size js_hash, .-js_hash
.align 2
@@ -9328,13 +9378,13 @@ flash_sram_load_store:
add x29, sp, 0
ldr x4, [x4,#:lo12:.LANCHOR4+1184]
add x4, x4, 4096
- cbnz w2, .L1490
+ cbnz w2, .L1495
add x1, x4, x1
- b .L1492
-.L1490:
+ b .L1497
+.L1495:
add x0, x4, x1
mov x1, x6
-.L1492:
+.L1497:
mov w2, w3
bl ftl_memcpy
ldp x29, x30, [sp], 16
@@ -9519,42 +9569,42 @@ rknand_print_hex:
add x23, x23, :lo12:.LC129
add x21, x21, :lo12:.LC130
add x24, x24, :lo12:.LC1
-.L1506:
+.L1511:
cmp x19, x26
- beq .L1514
- cbnz w20, .L1507
+ beq .L1519
+ cbnz w20, .L1512
mov x0, x23
mov x1, x27
mov x2, x22
mov w3, w19
bl printk
-.L1507:
+.L1512:
cmp w25, 4
mov x0, x21
- bne .L1508
+ bne .L1513
ldr w1, [x22,x19,lsl 2]
- b .L1513
-.L1508:
+ b .L1518
+.L1513:
cmp w25, 2
- bne .L1510
+ bne .L1515
ldrsh w1, [x22,x19,lsl 1]
- b .L1513
-.L1510:
+ b .L1518
+.L1515:
ldrb w1, [x22,x19]
-.L1513:
+.L1518:
bl printk
add w20, w20, 1
cmp w20, 15
- bls .L1511
+ bls .L1516
adrp x1, .LC131
mov x0, x24
add x1, x1, :lo12:.LC131
mov w20, 0
bl printk
-.L1511:
+.L1516:
add x19, x19, 1
- b .L1506
-.L1514:
+ b .L1511
+.L1519:
adrp x0, .LC1
adrp x1, .LC131
add x1, x1, :lo12:.LC131
@@ -9597,30 +9647,30 @@ hynix_get_read_retry_default:
add x26, x27, 128
strb w1, [x27,130]
strb w0, [x27,131]
- bne .L1516
+ bne .L1521
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 .L1571
-.L1516:
+ b .L1576
+.L1521:
cmp w25, 3
- bne .L1518
+ bne .L1523
mov x4, 0
-.L1519:
+.L1524:
sub w0, w4, #80
strb w0, [x26,x4]
add x4, x4, 1
cmp x4, 8
- bne .L1519
+ bne .L1524
mov w21, w4
mov w28, w4
- b .L1517
-.L1518:
+ b .L1522
+.L1523:
cmp w25, 4
- bne .L1520
+ bne .L1525
mov w4, -52
strb w4, [x27,128]
mov w4, -65
@@ -9636,10 +9686,10 @@ hynix_get_read_retry_default:
strb w1, [x27,134]
strb w4, [x27,132]
strb w0, [x27,135]
- b .L1517
-.L1520:
+ b .L1522
+.L1525:
cmp w25, 5
- bne .L1521
+ bne .L1526
mov w0, 56
strb w0, [x27,128]
mov w0, 57
@@ -9649,10 +9699,10 @@ hynix_get_read_retry_default:
strb w0, [x27,130]
mov w0, 59
strb w0, [x27,131]
- b .L1605
-.L1521:
+ b .L1610
+.L1526:
cmp w25, 6
- bne .L1522
+ bne .L1527
mov w0, 14
strb w0, [x27,128]
mov w0, 15
@@ -9662,32 +9712,32 @@ hynix_get_read_retry_default:
strb w0, [x27,130]
mov w0, 17
strb w0, [x27,131]
- b .L1605
-.L1522:
+ b .L1610
+.L1527:
cmp w25, 7
- bne .L1571
+ bne .L1576
mov x0, 0
-.L1523:
+.L1528:
sub w1, w0, #80
strb w1, [x26,x0]
add x0, x0, 1
cmp x0, 8
- bne .L1523
+ bne .L1528
mov w0, -44
mov w21, 12
strb w0, [x27,136]
mov w28, 10
mov w0, -43
strb w0, [x27,137]
- b .L1517
-.L1571:
+ b .L1522
+.L1576:
mov w21, 7
-.L1605:
+.L1610:
mov w28, 4
-.L1517:
+.L1522:
sub w0, w25, #1
cmp w0, 1
- bhi .L1602
+ bhi .L1607
ldr x0, [x29,128]
adrp x24, .LANCHOR2
add x24, x24, :lo12:.LANCHOR2
@@ -9695,10 +9745,10 @@ hynix_get_read_retry_default:
add x19, x0, :lo12:.LANCHOR0
mov w27, 55
add x24, x24, 408
-.L1524:
+.L1529:
ldrb w0, [x19,633]
cmp w0, w23
- bls .L1531
+ bls .L1536
add x0, x19, x23, sxtw
ldr x2, [x29,136]
ldrb w0, [x0,736]
@@ -9709,7 +9759,7 @@ hynix_get_read_retry_default:
madd x20, x0, x20, x2
add x22, x22, x1
add x20, x20, 32
-.L1526:
+.L1531:
str w27, [x22,2056]
ldrb w0, [x26,x25]
str w0, [x22,2052]
@@ -9719,12 +9769,12 @@ hynix_get_read_retry_default:
strb w0, [x20,x25]
add x25, x25, 1
cmp w28, w25, uxtb
- bhi .L1526
+ bhi .L1531
mov x0, 0
-.L1527:
+.L1532:
add w2, w0, 8
mov x1, 0
-.L1528:
+.L1533:
add x3, x1, x0
add x1, x1, 4
add x3, x24, x3
@@ -9734,10 +9784,10 @@ hynix_get_read_retry_default:
add w3, w5, w3
strb w3, [x20,w2,sxtw]
add w2, w2, 8
- bne .L1528
+ bne .L1533
add x0, x0, 1
cmp x0, 4
- bne .L1527
+ bne .L1532
add w23, w23, 1
strb wzr, [x20,16]
strb wzr, [x20,24]
@@ -9747,11 +9797,11 @@ hynix_get_read_retry_default:
strb wzr, [x20,48]
strb wzr, [x20,41]
strb wzr, [x20,49]
- b .L1524
-.L1602:
+ b .L1529
+.L1607:
sub w0, w25, #3
cmp w0, 4
- bhi .L1531
+ bhi .L1536
mul w0, w28, w21
sub w23, w28, #1
mov w20, 0
@@ -9765,13 +9815,13 @@ hynix_get_read_retry_default:
adrp x26, .LANCHOR4
add x0, x23, 1
str x0, [x29,112]
-.L1532:
+.L1537:
ldr x0, [x29,128]
add x1, x0, :lo12:.LANCHOR0
ldrb w0, [x1,633]
cmp w0, w20
- bhi .L1570
-.L1531:
+ bhi .L1575
+.L1536:
ldr x0, [x29,136]
strb w28, [x0,1]
strb w21, [x0,2]
@@ -9782,7 +9832,7 @@ hynix_get_read_retry_default:
ldp x27, x28, [sp,80]
ldp x29, x30, [sp], 144
ret
-.L1570:
+.L1575:
add x0, x1, x20, sxtw
ldrb w23, [x0,736]
str x1, [x29,104]
@@ -9805,28 +9855,28 @@ hynix_get_read_retry_default:
cmp w25, 4
str w0, [x23,2056]
ldr x1, [x29,104]
- bne .L1533
+ bne .L1538
mov w0, 64
str w1, [x23,2052]
str w0, [x23,2048]
mov w0, 204
- b .L1606
-.L1533:
+ b .L1611
+.L1538:
cmp w19, 1
- bhi .L1535
+ bhi .L1540
ldrb w0, [x27,128]
str w0, [x23,2052]
mov w0, 82
- b .L1607
-.L1535:
+ b .L1612
+.L1540:
mov w0, 174
str w0, [x23,2052]
str wzr, [x23,2048]
mov w0, 176
-.L1606:
+.L1611:
str w0, [x23,2052]
mov w0, 77
-.L1607:
+.L1612:
str w0, [x23,2048]
mov w0, 22
str w0, [x23,2056]
@@ -9840,13 +9890,13 @@ hynix_get_read_retry_default:
str wzr, [x23,2056]
str wzr, [x23,2052]
str wzr, [x23,2052]
- bne .L1536
+ bne .L1541
mov w0, 31
str w0, [x23,2052]
- b .L1537
-.L1536:
+ b .L1542
+.L1541:
str wzr, [x23,2052]
-.L1537:
+.L1542:
mov w7, 2
str w7, [x23,2052]
str wzr, [x23,2052]
@@ -9856,89 +9906,89 @@ hynix_get_read_retry_default:
bl nandc_wait_flash_ready
cmp w19, 1
mov w1, 16
- bls .L1539
+ bls .L1544
ldr x7, [x29,104]
cmp w25, 7
mov w1, 32
csel w1, w1, w7, eq
-.L1539:
+.L1544:
adrp x0, .LANCHOR4
mov x7, 0
add x0, x0, :lo12:.LANCHOR4
ldr x0, [x0,1192]
-.L1540:
+.L1545:
ldr w8, [x23,2048]
strb w8, [x0,x7]
add x7, x7, 1
cmp w1, w7, uxtb
- bhi .L1540
+ bhi .L1545
cmp w25, 7
- bne .L1541
+ bne .L1546
mov w1, 0
-.L1543:
+.L1548:
ldrb w7, [x0]
cmp w7, 12
- beq .L1542
+ beq .L1547
ldrb w7, [x0,1]
cmp w7, 10
- beq .L1542
+ beq .L1547
add w1, w1, 1
add x0, x0, 4
uxtb w1, w1
cmp w1, 8
- bne .L1543
- b .L1544
-.L1542:
+ bne .L1548
+ b .L1549
+.L1547:
cmp w1, 7
- bne .L1545
-.L1544:
+ bne .L1550
+.L1549:
adrp x0, .LC132
mov w1, 0
add x0, x0, :lo12:.LC132
bl printk
+.L1551:
+ b .L1551
.L1546:
- b .L1546
-.L1541:
cmp w25, 6
- bne .L1545
+ bne .L1550
mov x1, 0
-.L1547:
+.L1552:
ldrb w7, [x0,x1]
cmp w7, 12
- beq .L1545
+ beq .L1550
add x7, x0, x1
ldrb w7, [x7,8]
cmp w7, 4
- beq .L1545
+ beq .L1550
add x1, x1, 1
cmp x1, 8
- bne .L1547
+ bne .L1552
adrp x0, .LC132
mov w1, 0
add x0, x0, :lo12:.LC132
bl printk
-.L1549:
- b .L1549
-.L1545:
+.L1554:
+ b .L1554
+.L1550:
add x0, x26, :lo12:.LANCHOR4
ldr x9, [x0,1192]
mov x0, 0
-.L1550:
+.L1555:
ldr w1, [x29,120]
cmp w1, w0
- ble .L1609
+ ble .L1614
ldr w1, [x23,2048]
strb w1, [x9,x0]
add x0, x0, 1
- b .L1550
-.L1609:
+ b .L1555
+.L1614:
add x0, x26, :lo12:.LANCHOR4
mov w8, w22
mov w7, 8
ldr x11, [x0,1192]
-.L1553:
+.L1558:
mov w0, 0
-.L1552:
+.L1557:
add w1, w0, w8
add w0, w0, 1
sbfiz x1, x1, 2, 32
@@ -9946,54 +9996,54 @@ hynix_get_read_retry_default:
ldr w10, [x11,x1]
mvn w10, w10
str w10, [x11,x1]
- bne .L1552
+ bne .L1557
ldr w0, [x29,124]
subs w7, w7, #1
add w8, w8, w0
- bne .L1553
+ bne .L1558
mov x7, 0
mov w15, 1
-.L1554:
+.L1559:
add x0, x26, :lo12:.LANCHOR4
mov w1, 0
mov w10, w1
ldr x14, [x0,1192]
-.L1558:
+.L1563:
lsl w8, w15, w10
mov w12, w7
mov w0, 16
mov w11, 0
-.L1556:
+.L1561:
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 .L1556
+ bne .L1561
cmp w11, 9
orr w8, w1, w8
add w10, w10, 1
csel w1, w8, w1, cs
cmp w10, 32
- bne .L1558
+ bne .L1563
str w1, [x14,x7,lsl 2]
add x7, x7, 1
cmp w22, w7
- bgt .L1554
+ bgt .L1559
add x1, x26, :lo12:.LANCHOR4
mov x7, 0
mov w8, w7
ldr x1, [x1,1192]
-.L1561:
+.L1566:
ldr w10, [x1,x7]
add x7, x7, 4
cmp w10, wzr
csinc w8, w8, w8, ne
cmp x7, 32
- bne .L1561
+ bne .L1566
cmp w8, 7
- ble .L1562
+ ble .L1567
adrp x0, .LC133
mov w2, 1
add x0, x0, :lo12:.LC133
@@ -10003,39 +10053,39 @@ hynix_get_read_retry_default:
mov w1, 0
add x0, x0, :lo12:.LC132
bl printk
-.L1563:
- b .L1563
-.L1562:
+.L1568:
+ b .L1568
+.L1567:
cmp w25, 6
mov w7, 4
- beq .L1564
+ beq .L1569
cmp w25, 7
mov w7, 10
mov w1, 8
csel w7, w1, w7, ne
-.L1564:
+.L1569:
mov w8, 0
-.L1565:
+.L1570:
mov x1, 0
-.L1566:
+.L1571:
add w10, w0, w1
ldrb w11, [x9,x1]
add x1, x1, 1
cmp w28, w1, uxtb
strb w11, [x24,w10,sxtw]
- bhi .L1566
+ bhi .L1571
add w8, w8, 1
ldr x1, [x29,112]
cmp w8, w21
add w0, w0, w7
add x9, x9, x1
- blt .L1565
+ blt .L1570
mov w24, 255
str w24, [x23,2056]
bl nandc_wait_flash_ready
cmp w19, 1
mov w0, 56
- bhi .L1608
+ bhi .L1613
mov w0, 54
str w0, [x23,2056]
ldrb w0, [x27,128]
@@ -10050,27 +10100,27 @@ hynix_get_read_retry_default:
str w24, [x23,2052]
str w24, [x23,2052]
str w24, [x23,2052]
-.L1608:
+.L1613:
str w0, [x23,2056]
add w20, w20, 1
bl nandc_wait_flash_ready
uxtb w20, w20
- b .L1532
+ b .L1537
.size hynix_get_read_retry_default, .-hynix_get_read_retry_default
.align 2
.global flash_get_read_retry_tbl
.type flash_get_read_retry_tbl, %function
flash_get_read_retry_tbl:
- adrp x0, .LANCHOR2+395
+ adrp x0, .LANCHOR2+27
stp x29, x30, [sp, -16]!
add x29, sp, 0
- ldrb w0, [x0,#:lo12:.LANCHOR2+395]
+ ldrb w0, [x0,#:lo12:.LANCHOR2+27]
sub w1, w0, #1
uxtb w1, w1
cmp w1, 6
- bhi .L1610
+ bhi .L1615
bl hynix_get_read_retry_default
-.L1610:
+.L1615:
ldp x29, x30, [sp], 16
ret
.size flash_get_read_retry_tbl, .-flash_get_read_retry_tbl
@@ -10093,51 +10143,51 @@ nandc_xfer_done:
strb wzr, [x1,1200]
ldrb w1, [x20,516]
cmp w1, 9
- bne .L1613
+ bne .L1618
ldr x24, [x20,536]
ldr w0, [x24,16]
str w0, [x29,64]
ldr w20, [x24,48]
ubfx x20, x20, 1, 1
- cbnz w20, .L1633
+ cbnz w20, .L1638
adrp x21, .LC137
adrp x23, .LC136
add x21, x21, :lo12:.LC137
add x23, x23, :lo12:.LC136
- b .L1615
-.L1633:
+ b .L1620
+.L1638:
adrp x21, .LC135
adrp x22, .LC136
mov w20, 0
add x21, x21, :lo12:.LC135
add x22, x22, :lo12:.LC136
-.L1614:
+.L1619:
ldr w2, [x24,64]
ldr w1, [x29,64]
ubfx x2, x2, 16, 6
ubfx x1, x1, 22, 6
cmp w2, w1
- bge .L1617
+ bge .L1622
add x0, x19, :lo12:.LANCHOR0
ldr x0, [x0,536]
ldr w0, [x0]
str w0, [x29,72]
ldr w0, [x29,72]
- tbz x0, 13, .L1616
+ tbz x0, 13, .L1621
ldr w0, [x29,72]
- tbz x0, 17, .L1616
+ tbz x0, 17, .L1621
ldr w1, [x29,72]
adrp x0, .LC134
add x0, x0, :lo12:.LC134
ubfx x1, x1, 17, 1
bl printk
- b .L1617
-.L1616:
+ b .L1622
+.L1621:
ldr w0, [x29,64]
add w20, w20, 1
ubfx x0, x0, 22, 6
cmp w20, w0, lsl 12
- bne .L1614
+ bne .L1619
ldr w2, [x24,64]
mov w1, w20
ldr w3, [x29,64]
@@ -10152,15 +10202,15 @@ nandc_xfer_done:
ldr x1, [x1,536]
bl rknand_print_hex
ldr w0, [x29,72]
- tbz x0, 13, .L1614
+ tbz x0, 13, .L1619
add x0, x23, :lo12:.LANCHOR4
mov w1, 1
strb w1, [x0,1200]
-.L1617:
+.L1622:
add x20, x19, :lo12:.LANCHOR0
add x20, x20, 680
ldr w0, [x20,32]
- cbz w0, .L1621
+ cbz w0, .L1626
ldr w1, [x29,64]
mov w2, 0
ldr w0, [x20,24]
@@ -10171,15 +10221,15 @@ nandc_xfer_done:
ldr w0, [x20,28]
ubfx x1, x1, 22, 6
lsl w1, w1, 2
- b .L1661
-.L1623:
+ b .L1666
+.L1628:
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, .L1615
+ cbnz w0, .L1620
ldr w2, [x29,64]
mov w1, w20
ldr w3, [x24,64]
@@ -10191,13 +10241,13 @@ nandc_xfer_done:
mov w2, 4
mov w3, 64
bl rknand_print_hex
-.L1615:
+.L1620:
ldr w0, [x29,64]
- tbz x0, 20, .L1623
+ tbz x0, 20, .L1628
add x20, x19, :lo12:.LANCHOR0
add x20, x20, 680
ldr w0, [x20,32]
- cbz w0, .L1621
+ cbz w0, .L1626
ldr w1, [x29,64]
mov w2, 1
ldr w0, [x20,24]
@@ -10208,49 +10258,49 @@ nandc_xfer_done:
ldr w0, [x20,28]
ubfx x1, x1, 22, 6
lsl w1, w1, 2
- b .L1660
-.L1613:
+ b .L1665
+.L1618:
ldr x23, [x20,536]
ldr w0, [x23,8]
str w0, [x29,64]
ldr w20, [x23,16]
ubfx x20, x20, 1, 1
- cbnz w20, .L1634
+ cbnz w20, .L1639
adrp x21, .LC137
adrp x24, .LC136
add x21, x21, :lo12:.LC137
add x24, x24, :lo12:.LC136
- b .L1626
-.L1634:
+ b .L1631
+.L1639:
adrp x21, .LC135
adrp x22, .LC136
mov w20, 0
add x21, x21, :lo12:.LC135
add x22, x22, :lo12:.LC136
-.L1625:
+.L1630:
ldr w2, [x23,28]
ldr w1, [x29,64]
ubfx x2, x2, 16, 5
ubfx x1, x1, 22, 6
cmp w2, w1
- bge .L1628
+ bge .L1633
add x0, x19, :lo12:.LANCHOR0
ldr x0, [x0,536]
ldr w0, [x0]
str w0, [x29,72]
ldr w0, [x29,72]
- tbz x0, 13, .L1627
+ tbz x0, 13, .L1632
ldr w0, [x29,72]
- tbz x0, 17, .L1627
+ tbz x0, 17, .L1632
ldr w1, [x29,72]
adrp x0, .LC138
add x0, x0, :lo12:.LC138
bl printk
- b .L1628
-.L1627:
+ b .L1633
+.L1632:
add w20, w20, 1
and w0, w20, 16777215
- cbnz w0, .L1625
+ cbnz w0, .L1630
ldr w2, [x23,28]
mov w1, w20
ldr w3, [x29,64]
@@ -10264,12 +10314,12 @@ nandc_xfer_done:
mov w3, 64
ldr x1, [x1,536]
bl rknand_print_hex
- b .L1625
-.L1628:
+ b .L1630
+.L1633:
add x20, x19, :lo12:.LANCHOR0
add x20, x20, 680
ldr w0, [x20,32]
- cbz w0, .L1621
+ cbz w0, .L1626
ldr w1, [x29,64]
mov w2, 0
ldr w0, [x20,24]
@@ -10280,17 +10330,17 @@ nandc_xfer_done:
ldr w0, [x20,28]
ubfx x1, x1, 22, 6
lsl w1, w1, 7
-.L1661:
+.L1666:
mov w2, 0
- b .L1659
-.L1632:
+ b .L1664
+.L1637:
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, .L1626
+ cbnz w0, .L1631
ldr w2, [x29,64]
mov w1, w20
ldr w3, [x23,28]
@@ -10302,13 +10352,13 @@ nandc_xfer_done:
mov w2, 4
mov w3, 64
bl rknand_print_hex
-.L1626:
+.L1631:
ldr w0, [x29,64]
- tbz x0, 20, .L1632
+ tbz x0, 20, .L1637
add x20, x19, :lo12:.LANCHOR0
add x20, x20, 680
ldr w0, [x20,32]
- cbz w0, .L1621
+ cbz w0, .L1626
ldr w1, [x29,64]
mov w2, 1
ldr w0, [x20,24]
@@ -10319,11 +10369,11 @@ nandc_xfer_done:
ldr w0, [x20,28]
ubfx x1, x1, 22, 6
lsl w1, w1, 7
-.L1660:
+.L1665:
mov w2, 1
-.L1659:
+.L1664:
bl rknand_dma_unmap_single
-.L1621:
+.L1626:
add x19, x19, :lo12:.LANCHOR0
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -10352,19 +10402,19 @@ nandc_xfer:
bl nandc_xfer_start
bl nandc_xfer_done
mov w0, 0
- cbnz w20, .L1692
+ cbnz w20, .L1697
adrp x19, .LANCHOR0
add x2, x19, :lo12:.LANCHOR0
ldrb w1, [x2,516]
cmp w1, 9
- bne .L1664
+ bne .L1669
ldr x5, [x2,536]
lsr w22, w22, 2
mov w4, 1
mov w3, w0
-.L1665:
+.L1670:
cmp w3, w22
- bcs .L1701
+ bcs .L1706
uxtw x1, w3
add x1, x1, 84
ldr w1, [x5,x1,lsl 2]
@@ -10376,30 +10426,30 @@ nandc_xfer:
and w1, w1, w2
and w4, w4, w1
ldr w1, [x29,72]
- tbnz x1, 2, .L1684
+ tbnz x1, 2, .L1689
ldr w1, [x29,72]
- tbnz x1, 18, .L1684
+ tbnz x1, 18, .L1689
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 .L1667
+ ble .L1672
ubfx x1, x1, 3, 7
- b .L1668
-.L1667:
+ b .L1673
+.L1672:
ubfx x1, x1, 19, 7
-.L1668:
+.L1673:
cmp w0, w1
csel w0, w0, w1, cs
- b .L1666
-.L1684:
+ b .L1671
+.L1689:
mov w0, -1
-.L1666:
+.L1671:
add w3, w3, 1
- b .L1665
-.L1701:
+ b .L1670
+.L1706:
add x22, x19, :lo12:.LANCHOR0
cmp w4, wzr
ldr x1, [x22,536]
@@ -10410,7 +10460,7 @@ nandc_xfer:
movk w1, 0x2, lsl 16
and w1, w20, w1
cmp w1, 139264
- bne .L1671
+ bne .L1676
adrp x0, .LC139
mov w1, w20
add x0, x0, :lo12:.LC139
@@ -10419,11 +10469,11 @@ nandc_xfer:
ldr x0, [x22,536]
str w20, [x0]
mov w0, -1
-.L1671:
- tbz x20, 13, .L1672
+.L1676:
+ tbz x20, 13, .L1677
adrp x1, .LANCHOR4+1200
ldrb w1, [x1,#:lo12:.LANCHOR4+1200]
- cbz w1, .L1672
+ cbz w1, .L1677
adrp x0, .LC140
mov w1, w20
add x0, x0, :lo12:.LC140
@@ -10432,8 +10482,8 @@ nandc_xfer:
ldr x0, [x19,536]
mov w1, 1
str w1, [x0,16]
- b .L1673
-.L1664:
+ b .L1678
+.L1669:
ldrb w0, [x2,724]
mov w5, 128
lsr w6, w22, 1
@@ -10443,10 +10493,10 @@ nandc_xfer:
csel w5, w0, w5, cc
mov w1, w20
mov w4, w20
-.L1675:
+.L1680:
cmp w4, w6
add w7, w1, w5
- bcs .L1702
+ bcs .L1707
ldr x0, [x2,680]
and x1, x1, 4294967292
ldr w0, [x0,x1]
@@ -10463,24 +10513,24 @@ nandc_xfer:
add w3, w3, 4
strb w0, [x23,x1]
mov w1, w7
- b .L1675
-.L1702:
+ b .L1680
+.L1707:
add x0, x19, :lo12:.LANCHOR0
mov w2, 0
lsr w22, w22, 2
ldr x6, [x0,536]
mov w0, w2
-.L1677:
+.L1682:
cmp w2, w22
- bcs .L1703
+ bcs .L1708
uxtw x1, w2
add x1, x1, 8
ldr w1, [x6,x1,lsl 2]
str w1, [x29,72]
ldr w1, [x29,72]
- tbnz x1, 2, .L1687
+ tbnz x1, 2, .L1692
ldr w1, [x29,72]
- tbnz x1, 15, .L1687
+ tbnz x1, 15, .L1692
ldr w3, [x29,72]
ubfx x5, x3, 3, 5
ldr w3, [x29,72]
@@ -10493,26 +10543,26 @@ nandc_xfer:
orr w1, w4, w1, lsl 5
cmp w3, w1
ldr w1, [x29,72]
- bls .L1679
+ bls .L1684
ubfx x3, x1, 3, 5
ldr w1, [x29,72]
ubfx x1, x1, 27, 1
- b .L1700
-.L1679:
+ b .L1705
+.L1684:
ubfx x3, x1, 16, 5
ldr w1, [x29,72]
ubfx x1, x1, 29, 1
-.L1700:
+.L1705:
orr w1, w3, w1, lsl 5
cmp w0, w1
csel w0, w0, w1, cs
- b .L1678
-.L1687:
+ b .L1683
+.L1692:
mov w0, -1
-.L1678:
+.L1683:
add w2, w2, 1
- b .L1677
-.L1703:
+ b .L1682
+.L1708:
add x19, x19, :lo12:.LANCHOR0
ldr x1, [x19,536]
str wzr, [x1,16]
@@ -10521,7 +10571,7 @@ nandc_xfer:
movk w1, 0x2, lsl 16
and w1, w20, w1
cmp w1, 139264
- bne .L1672
+ bne .L1677
adrp x0, .LC141
mov w1, w20
add x0, x0, :lo12:.LC141
@@ -10529,24 +10579,24 @@ nandc_xfer:
bl printk
ldr x0, [x19,536]
str w20, [x0]
- b .L1673
-.L1672:
+ b .L1678
+.L1677:
cmn w0, #1
- beq .L1692
+ beq .L1697
ldr w1, [x23]
cmn w1, #1
- bne .L1692
+ bne .L1697
ldr w1, [x23,4]
cmn w1, #1
- bne .L1692
+ bne .L1697
ldr w1, [x21]
cmn w1, #1
mov w1, 512
csel w0, w0, w1, ne
- b .L1692
-.L1673:
+ b .L1697
+.L1678:
mov w0, -1
-.L1692:
+.L1697:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldr x23, [sp,48]
@@ -10576,36 +10626,36 @@ flash_read_page:
and w20, w1, 2097151
ubfx x24, x23, 24, 2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 4, .L1705
+ tbz x0, 4, .L1710
adrp x0, .LC142
mov w1, w21
add x0, x0, :lo12:.LC142
mov w2, w24
mov w3, w23
bl printk
-.L1705:
+.L1710:
bl nandc_wait_flash_ready
mov w0, w21
bl nandc_cs
- cbnz w24, .L1706
+ cbnz w24, .L1711
mov w0, w21
bl zftl_flash_enter_slc_mode
- b .L1707
-.L1706:
+ b .L1712
+.L1711:
add x0, x22, :lo12:.LANCHOR0
ldr x0, [x0,624]
ldrb w0, [x0,12]
cmp w0, 3
- bne .L1708
+ bne .L1713
sxtw x0, w21
add x0, x0, 8
add x0, x19, x0, lsl 8
str w24, [x0,8]
- b .L1707
-.L1708:
+ b .L1712
+.L1713:
mov w0, w21
bl zftl_flash_exit_slc_mode
-.L1707:
+.L1712:
ubfiz x5, x21, 8, 8
and w23, w23, 255
add x19, x19, x5
@@ -10619,19 +10669,19 @@ flash_read_page:
str w0, [x19,2052]
mov w0, 48
str w0, [x19,2056]
- cbz w24, .L1709
+ cbz w24, .L1714
add x22, x22, :lo12:.LANCHOR0
ldr x0, [x22,624]
ldrb w0, [x0,12]
cmp w0, 3
- bne .L1709
+ bne .L1714
add w20, w20, w20, lsl 1
sub w0, w20, #1
add w0, w0, w24
- b .L1720
-.L1709:
+ b .L1725
+.L1714:
mov w0, w20
-.L1720:
+.L1725:
bl nandc_set_seed
bl nandc_wait_flash_ready
mov w0, 5
@@ -10691,11 +10741,11 @@ micron_read_retrial:
adrp x0, .LC143
add x0, x0, :lo12:.LC143
str x0, [x29,104]
-.L1722:
+.L1727:
add x0, x23, :lo12:.LANCHOR4
ldrb w0, [x0,1216]
cmp w20, w0
- bcs .L1726
+ bcs .L1731
ldr x0, [x29,112]
add w27, w20, 1
add x1, x22, x0
@@ -10720,7 +10770,7 @@ micron_read_retrial:
mov w6, w0
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 12, .L1723
+ tbz x0, 12, .L1728
ldr x0, [x29,104]
mov w4, w6
mov w1, w20
@@ -10729,9 +10779,9 @@ micron_read_retrial:
str x6, [x29,96]
bl printk
ldr x6, [x29,96]
-.L1723:
+.L1728:
cmn w6, #1
- beq .L1724
+ beq .L1729
adrp x0, .LANCHOR4
cmn w28, #1
add x0, x0, :lo12:.LANCHOR4
@@ -10740,13 +10790,13 @@ micron_read_retrial:
ldr x26, [x0,1208]
ldr w0, [x29,124]
cmp w6, w0
- bcc .L1731
-.L1724:
+ bcc .L1736
+.L1729:
mov w20, w27
- b .L1722
-.L1731:
+ b .L1727
+.L1736:
mov w28, w6
-.L1726:
+.L1731:
add x19, x22, x19, lsl 8
mov w0, 239
str w0, [x19,2056]
@@ -10760,16 +10810,16 @@ micron_read_retrial:
str wzr, [x19,2048]
str wzr, [x19,2048]
cmp w28, w0
- bcc .L1728
+ bcc .L1733
cmn w28, #1
mov w0, 256
csel w28, w28, w0, eq
-.L1728:
+.L1733:
cmn w28, #1
- beq .L1732
+ beq .L1737
cmp w28, 256
- bne .L1729
-.L1732:
+ bne .L1734
+.L1737:
adrp x0, .LC144
mov w1, w20
add x0, x0, :lo12:.LC144
@@ -10777,7 +10827,8 @@ micron_read_retrial:
mov w3, w20
mov w4, w28
bl printk
-.L1729:
+.L1734:
+ bl nandc_wait_flash_ready
mov w0, w28
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -10822,19 +10873,19 @@ toshiba_3d_read_retrial:
cmp w1, 36
mov w1, 26
csel w21, w21, w1, ne
- cbnz w19, .L1746
+ cbnz w19, .L1751
str x0, [x29,112]
adrp x0, .LC145
add x0, x0, :lo12:.LC145
mov w19, -1
mov w28, 1
str x0, [x29,104]
-.L1753:
+.L1758:
add x0, x20, :lo12:.LANCHOR0
ldrb w0, [x0,725]
cmp w0, 36
mov x0, x23
- bne .L1747
+ bne .L1752
mov w1, w28
mov w2, 0
bl toshiba_tlc_set_rr_para
@@ -10842,11 +10893,11 @@ toshiba_3d_read_retrial:
mov w1, 93
add x0, x25, x0
str w1, [x0,8]
- b .L1748
-.L1747:
+ b .L1753
+.L1752:
mov w1, w28
bl toshiba_3d_set_slc_rr_para
-.L1748:
+.L1753:
ldr w4, [x29,124]
mov w0, w22
mov w1, w24
@@ -10856,7 +10907,7 @@ toshiba_3d_read_retrial:
mov w4, w0
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 4, .L1749
+ tbz x0, 4, .L1754
ldr x0, [x29,104]
mov w3, w4
mov w1, w28
@@ -10864,9 +10915,9 @@ toshiba_3d_read_retrial:
str x4, [x29,96]
bl printk
ldr x4, [x29,96]
-.L1749:
+.L1754:
cmn w4, #1
- beq .L1750
+ beq .L1755
adrp x0, .LANCHOR4
cmn w19, #1
add x0, x0, :lo12:.LANCHOR4
@@ -10877,53 +10928,53 @@ toshiba_3d_read_retrial:
ldrb w0, [x0,724]
add w0, w0, w0, lsl 1
cmp w4, w0, lsr 2
- bcc .L1769
-.L1750:
+ bcc .L1774
+.L1755:
add w28, w28, 1
cmp w28, w21
- bne .L1753
- b .L1752
-.L1769:
+ bne .L1758
+ b .L1757
+.L1774:
mov w21, w28
mov w19, w4
-.L1752:
+.L1757:
add x0, x20, :lo12:.LANCHOR0
ldrb w0, [x0,725]
cmp w0, 36
mov x0, x23
- bne .L1754
+ bne .L1759
mov w1, 0
mov w2, w1
- b .L1792
-.L1754:
+ b .L1797
+.L1759:
mov w1, 0
bl toshiba_3d_set_slc_rr_para
- b .L1755
-.L1746:
+ b .L1760
+.L1751:
mov x28, x0
adrp x0, .LC146
add x0, x0, :lo12:.LC146
mov w19, -1
mov w21, 1
str x0, [x29,104]
-.L1762:
+.L1767:
add x0, x20, :lo12:.LANCHOR0
ldrb w0, [x0,725]
cmp w0, 36
mov x0, x23
- bne .L1756
+ bne .L1761
mov w1, w21
mov w2, 1
bl toshiba_tlc_set_rr_para
add x0, x25, x28
mov w1, 93
- b .L1791
-.L1756:
+ b .L1796
+.L1761:
mov w1, w21
bl toshiba_3d_set_tlc_rr_para
add x0, x25, x28
mov w1, 38
-.L1791:
+.L1796:
str w1, [x0,8]
mov x2, x26
mov w0, w22
@@ -10934,7 +10985,7 @@ toshiba_3d_read_retrial:
mov w4, w0
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 4, .L1758
+ tbz x0, 4, .L1763
ldr x0, [x29,104]
mov w3, w4
mov w1, w21
@@ -10942,9 +10993,9 @@ toshiba_3d_read_retrial:
str x4, [x29,96]
bl printk
ldr x4, [x29,96]
-.L1758:
+.L1763:
cmn w4, #1
- beq .L1759
+ beq .L1764
adrp x0, .LANCHOR4
cmn w19, #1
add x0, x0, :lo12:.LANCHOR4
@@ -10955,34 +11006,34 @@ toshiba_3d_read_retrial:
ldrb w0, [x0,724]
add w0, w0, w0, lsl 1
cmp w4, w0, lsr 2
- bcc .L1770
-.L1759:
+ bcc .L1775
+.L1764:
ldr w0, [x29,112]
add w21, w21, 1
cmp w21, w0
- bne .L1762
- b .L1761
-.L1770:
+ bne .L1767
+ b .L1766
+.L1775:
mov w19, w4
-.L1761:
+.L1766:
add x0, x20, :lo12:.LANCHOR0
ldrb w0, [x0,725]
cmp w0, 36
mov x0, x23
- bne .L1763
+ bne .L1768
mov w1, 0
mov w2, 1
-.L1792:
+.L1797:
bl toshiba_tlc_set_rr_para
- b .L1755
-.L1763:
+ b .L1760
+.L1768:
mov w1, 0
bl toshiba_3d_set_tlc_rr_para
-.L1755:
+.L1760:
add x0, x20, :lo12:.LANCHOR0
ldrb w0, [x0,725]
cmp w0, 36
- bne .L1764
+ bne .L1769
ubfiz x22, x22, 8, 8
mov w0, 85
add x25, x25, x22
@@ -10991,21 +11042,21 @@ toshiba_3d_read_retrial:
str wzr, [x25,2052]
str wzr, [x25,2048]
str w0, [x25,2056]
-.L1764:
+.L1769:
add x20, x20, :lo12:.LANCHOR0
ldrb w0, [x20,724]
add w0, w0, w0, lsl 1
cmp w19, w0, lsr 2
- bcc .L1765
+ bcc .L1770
cmn w19, #1
mov w0, 256
csel w19, w19, w0, eq
-.L1765:
+.L1770:
cmn w19, #1
- beq .L1771
+ beq .L1776
cmp w19, 256
- bne .L1766
-.L1771:
+ bne .L1771
+.L1776:
adrp x0, .LC147
mov w1, w21
add x0, x0, :lo12:.LC147
@@ -11013,7 +11064,7 @@ toshiba_3d_read_retrial:
mov w3, w21
mov w4, w19
bl printk
-.L1766:
+.L1771:
bl nandc_wait_flash_ready
mov w0, w19
ldp x19, x20, [sp,16]
@@ -11053,20 +11104,20 @@ toshiba_read_retrial:
add x21, x22, x21, lsl 8
uxtb w0, w0
cmp w0, 1
- bls .L1794
+ bls .L1799
ldrb w0, [x1,672]
- cbz w0, .L1795
+ cbz w0, .L1800
mov w0, 1
mov w25, 1
bl nandc_set_if_mode
-.L1795:
+.L1800:
ubfiz x0, x23, 8, 8
mov w1, 92
add x0, x22, x0
str w1, [x0,2056]
mov w1, 197
str w1, [x0,2056]
-.L1794:
+.L1799:
ldr x0, [x29,112]
mov w20, 1
mov w24, -1
@@ -11075,13 +11126,13 @@ toshiba_read_retrial:
str x0, [x29,104]
ubfiz x0, x23, 8, 8
str x0, [x29,96]
-.L1796:
+.L1801:
adrp x0, .LANCHOR4
add x0, x0, :lo12:.LANCHOR4
ldrb w0, [x0,1216]
add w0, w0, 1
cmp w20, w0
- bcs .L1827
+ bcs .L1832
add x0, x19, :lo12:.LANCHOR0
mov w1, w20
ldrb w0, [x0,725]
@@ -11089,27 +11140,27 @@ toshiba_read_retrial:
uxtb w0, w0
cmp w0, 1
mov x0, x21
- bhi .L1797
+ bhi .L1802
bl sandisk_set_rr_para
- b .L1798
-.L1797:
+ b .L1803
+.L1802:
bl toshiba_set_rr_para
-.L1798:
+.L1803:
add x0, x19, :lo12:.LANCHOR0
ldrb w0, [x0,725]
cmp w0, 34
- bne .L1799
+ bne .L1804
adrp x0, .LANCHOR4
add x0, x0, :lo12:.LANCHOR4
ldrb w0, [x0,1216]
sub w0, w0, #3
cmp w20, w0
- bne .L1799
+ bne .L1804
ldr x0, [x29,104]
mov w1, 179
add x0, x22, x0
str w1, [x0,8]
-.L1799:
+.L1804:
ldr x0, [x29,96]
mov w1, 38
ldr w4, [x29,120]
@@ -11124,7 +11175,7 @@ toshiba_read_retrial:
bl flash_read_page
cmn w0, #1
mov w28, w0
- beq .L1802
+ beq .L1807
cmn w24, #1
csel w24, w24, w0, ne
adrp x0, .LANCHOR4
@@ -11135,13 +11186,13 @@ toshiba_read_retrial:
ldrb w0, [x0,724]
add w0, w0, w0, lsl 1
cmp w28, w0, lsr 2
- bcc .L1804
-.L1802:
+ bcc .L1809
+.L1807:
add w20, w20, 1
- b .L1796
-.L1827:
+ b .L1801
+.L1832:
mov w28, w24
-.L1804:
+.L1809:
add x0, x19, :lo12:.LANCHOR0
mov w1, 0
ldrb w0, [x0,725]
@@ -11149,12 +11200,12 @@ toshiba_read_retrial:
uxtb w0, w0
cmp w0, 1
mov x0, x21
- bhi .L1806
+ bhi .L1811
bl sandisk_set_rr_para
- b .L1807
-.L1806:
+ b .L1812
+.L1811:
bl toshiba_set_rr_para
-.L1807:
+.L1812:
ldr x0, [x29,112]
add x19, x19, :lo12:.LANCHOR0
add x0, x0, 8
@@ -11164,16 +11215,16 @@ toshiba_read_retrial:
ldrb w0, [x19,724]
add w0, w0, w0, lsl 1
cmp w28, w0, lsr 2
- bcc .L1808
+ bcc .L1813
cmn w28, #1
mov w0, 256
csel w28, w28, w0, eq
-.L1808:
+.L1813:
cmn w28, #1
- beq .L1814
+ beq .L1819
cmp w28, 256
- bne .L1809
-.L1814:
+ bne .L1814
+.L1819:
adrp x0, .LC147
ldr w2, [x29,124]
add x0, x0, :lo12:.LC147
@@ -11181,12 +11232,12 @@ toshiba_read_retrial:
mov w3, w20
mov w4, w28
bl printk
-.L1809:
+.L1814:
bl nandc_wait_flash_ready
- cbz w25, .L1811
+ cbz w25, .L1816
mov w0, 4
bl nandc_set_if_mode
-.L1811:
+.L1816:
mov w0, w28
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -11224,9 +11275,9 @@ hynix_read_retrial:
bl nandc_wait_flash_ready
mov w6, 0
adrp x7, .LANCHOR4
-.L1829:
+.L1834:
cmp w6, w24
- bcs .L1833
+ bcs .L1838
add w20, w20, 1
mov w0, w22
str x7, [x29,104]
@@ -11245,7 +11296,7 @@ hynix_read_retrial:
cmn w0, #1
ldr x6, [x29,112]
ldr x7, [x29,104]
- beq .L1831
+ beq .L1836
add x1, x7, :lo12:.LANCHOR4
cmn w19, #1
csel w19, w19, w0, ne
@@ -11255,29 +11306,29 @@ hynix_read_retrial:
ldrb w1, [x1,724]
add w1, w1, w1, lsl 1
cmp w0, w1, lsr 2
- bcc .L1838
-.L1831:
+ bcc .L1843
+.L1836:
add w6, w6, 1
- b .L1829
-.L1838:
+ b .L1834
+.L1843:
mov w19, w0
-.L1833:
+.L1838:
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 .L1835
+ bcc .L1840
cmn w19, #1
mov w0, 256
csel w19, w19, w0, eq
-.L1835:
+.L1840:
cmn w19, #1
- beq .L1839
+ beq .L1844
cmp w19, 256
- bne .L1836
-.L1839:
+ bne .L1841
+.L1844:
adrp x0, .LC148
mov w1, w6
add x0, x0, :lo12:.LC148
@@ -11285,7 +11336,8 @@ hynix_read_retrial:
mov w3, w6
mov w4, w19
bl printk
-.L1836:
+.L1841:
+ bl nandc_wait_flash_ready
mov w0, w19
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -11323,7 +11375,7 @@ flash_ddr_tuning_read:
mov w26, 6
mov w21, -1
str x0, [x29,104]
-.L1854:
+.L1859:
mov w0, w26
bl nandc_set_ddr_para
ldr w4, [x29,120]
@@ -11335,7 +11387,7 @@ flash_ddr_tuning_read:
mov w4, w0
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 4, .L1849
+ tbz x0, 4, .L1854
ldr x0, [x29,104]
mov w3, w4
mov w1, w26
@@ -11343,10 +11395,10 @@ flash_ddr_tuning_read:
str x4, [x29,96]
bl printk
ldr x4, [x29,96]
-.L1849:
+.L1854:
add w0, w19, 1
cmp w4, w0
- bhi .L1850
+ bhi .L1855
adrp x0, .LANCHOR4
add x0, x0, :lo12:.LANCHOR4
ldr x24, [x0,1192]
@@ -11355,57 +11407,57 @@ flash_ddr_tuning_read:
add x0, x0, :lo12:.LANCHOR0
ldrb w0, [x0,724]
cmp w4, w0, lsr 2
- bcs .L1860
+ bcs .L1865
add w28, w28, 1
cmp w28, 7
- bls .L1860
+ bls .L1865
sub w27, w26, w28
mov w19, w4
mov w21, 0
- b .L1852
-.L1850:
+ b .L1857
+.L1855:
cmp w25, w28
- bcs .L1861
+ bcs .L1866
sub w0, w27, w28
cmp w28, 7
str w0, [x29,124]
- bhi .L1853
+ bhi .L1858
mov w25, w28
- b .L1861
-.L1860:
+ b .L1866
+.L1865:
mov w27, w26
mov w19, w4
mov w21, 0
- b .L1851
-.L1861:
+ b .L1856
+.L1866:
mov w28, 0
-.L1851:
+.L1856:
add w26, w26, 2
cmp w26, 50
- bne .L1854
-.L1852:
+ bne .L1859
+.L1857:
ldr w0, [x29,124]
cmp w25, w28
csel w27, w27, w0, ls
-.L1853:
- cbz w27, .L1855
+.L1858:
+ cbz w27, .L1860
adrp x0, .LANCHOR0+724
mov w1, 3
ldrb w0, [x0,#:lo12:.LANCHOR0+724]
udiv w0, w0, w1
cmp w19, w0
- bcs .L1855
+ bcs .L1860
adrp x0, .LC150
mov w1, w27
add x0, x0, :lo12:.LC150
bl printk
mov w0, w27
- b .L1870
-.L1855:
+ b .L1875
+.L1860:
ldrb w0, [x29,116]
-.L1870:
+.L1875:
bl nandc_set_ddr_para
- cbz w21, .L1857
+ cbz w21, .L1862
adrp x0, .LC151
mov w2, w22
mov w1, w20
@@ -11439,25 +11491,25 @@ flash_ddr_tuning_read:
bl printk
ldrb w0, [x27,724]
cmp w19, w0
- bhi .L1862
+ bhi .L1867
adrp x1, .LANCHOR4
add x1, x1, :lo12:.LANCHOR4
ldr w0, [x1,1220]
add w0, w0, 1
str w0, [x1,1220]
cmp w0, 100
- bls .L1858
+ bls .L1863
strb wzr, [x27,672]
- b .L1857
-.L1862:
+ b .L1862
+.L1867:
mov w19, w21
-.L1858:
+.L1863:
add x26, x26, :lo12:.LANCHOR0
ldrb w0, [x26,780]
bl flash_set_interface_mode
ldrb w0, [x26,780]
bl nandc_set_if_mode
-.L1857:
+.L1862:
mov w0, w19
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -11471,109 +11523,110 @@ flash_ddr_tuning_read:
.global flash_read_page_en
.type flash_read_page_en, %function
flash_read_page_en:
- stp x29, x30, [sp, -96]!
+ stp x29, x30, [sp, -80]!
add x29, sp, 0
stp x19, x20, [sp,16]
adrp x20, .LANCHOR0
- str x27, [sp,80]
- stp x21, x22, [sp,32]
- uxtb w21, w0
+ mov w19, w1
+ stp x25, x26, [sp,64]
+ uxtb w25, w0
add x0, x20, :lo12:.LANCHOR0
stp x23, x24, [sp,48]
- stp x25, x26, [sp,64]
- mov w19, w1
- mov x25, x2
+ stp x21, x22, [sp,32]
+ mov x24, x2
+ mov x23, x3
ldrb w0, [x0,633]
- mov x24, x3
- mov w23, w4
- ubfx x26, x19, 24, 2
- cmp w0, w21
- bhi .L1872
+ mov w22, w4
+ cmp w0, w25
+ bhi .L1877
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
- mov w2, 382
+ mov w2, 386
add x1, x1, 136
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1872:
+.L1877:
add x0, x20, :lo12:.LANCHOR0
- add x1, x0, x21, sxtw
- ldrb w22, [x1,736]
- ldrb w0, [x0,633]
- cmp w0, w21
- bcs .L1873
+ add x1, x0, x25, sxtw
+ ldrb w21, [x1,736]
+ ldrb w1, [x0,633]
+ cmp w1, w25
+ bcs .L1878
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 6, .L1873
+ tbz x0, 6, .L1904
adrp x0, .LC153
- mov w1, w22
+ mov w1, w21
add x0, x0, :lo12:.LC153
- mov w2, w21
+ mov w2, w25
mov w3, w19
bl printk
-.L1873:
- cbnz w26, .L1874
- ldrb w1, [x20,#:lo12:.LANCHOR0]
- add x0, x20, :lo12:.LANCHOR0
- cbz w1, .L1875
+.L1904:
+ mov w0, -1
+ b .L1903
+.L1878:
+ ubfx x1, x19, 24, 2
+ cbnz w1, .L1881
+ adrp x1, .LANCHOR0
+ ldrb w1, [x1,#:lo12:.LANCHOR0]
+ cbz w1, .L1882
ldrb w0, [x0,1]
- cbz w0, .L1874
-.L1875:
+ cbz w0, .L1881
+.L1882:
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, .L1876
+ cbz w2, .L1883
add w19, w0, w19, lsl 1
- b .L1874
-.L1876:
+ b .L1881
+.L1883:
add x1, x1, 4
ldrh w19, [x1,w19,uxtw 1]
add w19, w19, w0
-.L1874:
- mov w0, w22
+.L1881:
+ mov w0, w21
mov w1, w19
- mov x2, x25
- mov x3, x24
- mov w4, w23
+ mov x2, x24
+ mov x3, x23
+ mov w4, w22
bl flash_read_page
cmn w0, #1
- mov w21, w0
- bne .L1883
- add x26, x20, :lo12:.LANCHOR0
- ldrb w27, [x26,720]
- cbnz w27, .L1878
-.L1881:
+ bne .L1903
+ add x25, x20, :lo12:.LANCHOR0
+ ldrb w26, [x25,720]
+ cbnz w26, .L1885
+.L1888:
adrp x0, .LANCHOR4+1224
ldr x5, [x0,#:lo12:.LANCHOR4+1224]
- cbnz x5, .L1879
- b .L1880
-.L1878:
- mov w0, w22
+ cbnz x5, .L1886
+ b .L1887
+.L1885:
+ mov w0, w21
mov w1, w19
- mov x2, x25
- mov x3, x24
- mov w4, w23
- strb wzr, [x26,720]
+ mov x2, x24
+ mov x3, x23
+ mov w4, w22
+ strb wzr, [x25,720]
bl flash_read_page
- strb w27, [x26,720]
+ strb w26, [x25,720]
cmn w0, #1
- beq .L1881
- b .L1899
-.L1879:
- mov w0, w22
+ beq .L1888
+ b .L1903
+.L1886:
+ mov w0, w21
mov w1, w19
- mov x2, x25
- mov x3, x24
- mov w4, w23
+ mov x2, x24
+ mov x3, x23
+ mov w4, w22
blr x5
cmn w0, #1
- bne .L1899
-.L1880:
+ bne .L1903
+.L1887:
add x20, x20, :lo12:.LANCHOR0
adrp x0, .LC154
add x0, x0, :lo12:.LC154
@@ -11583,23 +11636,19 @@ flash_read_page_en:
ldrb w4, [x20,720]
bl printk
ldrb w0, [x20,672]
- cbz w0, .L1883
- mov w0, w22
+ cbz w0, .L1904
+ mov w0, w21
mov w1, w19
- mov x2, x25
- mov x3, x24
- mov w4, w23
+ mov x2, x24
+ mov x3, x23
+ mov w4, w22
bl flash_ddr_tuning_read
-.L1899:
- mov w21, w0
-.L1883:
- mov w0, w21
- ldr x27, [sp,80]
+.L1903:
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 flash_read_page_en, .-flash_read_page_en
.align 2
@@ -11621,7 +11670,7 @@ flash_get_last_written_page:
stp x27, x28, [sp,80]
uxth w22, w1
sub w19, w19, #1
- ldrh w26, [x0,402]
+ ldrh w26, [x0,34]
mov w0, w23
sxth w19, w19
mov x21, x3
@@ -11631,12 +11680,12 @@ flash_get_last_written_page:
add w1, w26, w19
bl flash_read_page_en
cmp w0, 512
- bne .L1901
+ bne .L1906
mov w28, 0
mov w5, 2
-.L1902:
+.L1907:
cmp w28, w19
- bgt .L1901
+ bgt .L1906
add w0, w28, w19
mov x2, x24
mov x3, x21
@@ -11648,24 +11697,24 @@ flash_get_last_written_page:
bl flash_read_page_en
cmp w0, 512
ldr x5, [x29,104]
- bne .L1903
+ bne .L1908
sub w19, w20, #1
sxth w19, w19
- b .L1902
-.L1903:
+ b .L1907
+.L1908:
add w20, w20, 1
sxth w28, w20
- b .L1902
-.L1901:
+ b .L1907
+.L1906:
ldr w0, [x27,#:lo12:.LANCHOR2]
- tbz x0, 12, .L1906
+ tbz x0, 12, .L1911
adrp x0, .LC155
ldr w3, [x21]
add x0, x0, :lo12:.LC155
mov w1, w22
mov w2, w19
bl printk
-.L1906:
+.L1911:
mov w0, w19
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -11712,7 +11761,7 @@ flash_info_blk_init:
stp x21, x22, [sp,32]
stp x23, x24, [sp,48]
adrp x20, .LANCHOR0
- tbz x0, 12, .L1912
+ tbz x0, 12, .L1917
add x4, x20, :lo12:.LANCHOR0
adrp x2, .LANCHOR3
adrp x0, .LC156
@@ -11723,10 +11772,10 @@ flash_info_blk_init:
add x2, x2, 160
mov w3, 2048
bl printk
-.L1912:
+.L1917:
mov w22, 4
adrp x24, .LANCHOR4
-.L1915:
+.L1920:
add x19, x20, :lo12:.LANCHOR0
add x21, x24, :lo12:.LANCHOR4
mov w0, 0
@@ -11738,21 +11787,21 @@ flash_info_blk_init:
mul w1, w22, w1
bl flash_read_page_en
cmn w0, #1
- beq .L1913
+ beq .L1918
ldr x2, [x19,728]
mov w0, 21321
movk w0, 0x5359, lsl 16
ldr w1, [x2]
cmp w1, w0
- beq .L1914
-.L1913:
+ beq .L1919
+.L1918:
add w22, w22, 1
cmp w22, 16
- bne .L1915
-.L1939:
+ bne .L1920
+.L1944:
mov w0, -1
- b .L1938
-.L1914:
+ b .L1943
+.L1919:
ldrb w1, [x2,36]
mov w4, 4
ldrh w3, [x19,2]
@@ -11765,16 +11814,16 @@ flash_info_blk_init:
mov w21, 0
bl flash_read_page_en
cmn w0, #1
- beq .L1917
+ beq .L1922
ldr x0, [x19,728]
mov w1, 21321
movk w1, 0x5359, lsl 16
mov w21, 0
ldr w2, [x0]
cmp w2, w1
- bne .L1917
+ bne .L1922
ldr w21, [x0,4]
-.L1917:
+.L1922:
add x19, x23, :lo12:.LANCHOR4
add x22, x20, :lo12:.LANCHOR0
mov w0, 0
@@ -11786,21 +11835,21 @@ flash_info_blk_init:
ldr x2, [x22,728]
bl flash_read_page_en
cmn w0, #1
- beq .L1918
+ beq .L1923
ldr x0, [x22,728]
mov w1, 21321
movk w1, 0x5359, lsl 16
ldr w2, [x0]
cmp w2, w1
- bne .L1918
+ bne .L1923
ldr w1, [x0,4]
cmp w21, w1
- bcs .L1918
+ bcs .L1923
ldrb w1, [x0,37]
ldrb w0, [x0,36]
strb w1, [x19,1240]
strb w0, [x19,1241]
-.L1918:
+.L1923:
add x21, x23, :lo12:.LANCHOR4
add x22, x20, :lo12:.LANCHOR0
mov w0, 0
@@ -11815,8 +11864,8 @@ flash_info_blk_init:
ldrb w0, [x21,1240]
ldrh w21, [x22,2]
mul w21, w0, w21
-.L1919:
- tbnz w19, #31, .L1940
+.L1924:
+ tbnz w19, #31, .L1945
add x22, x20, :lo12:.LANCHOR0
add x3, x23, :lo12:.LANCHOR4
mov w0, 0
@@ -11826,31 +11875,31 @@ flash_info_blk_init:
ldr x3, [x3,1232]
bl flash_read_page_en
cmn w0, #1
- beq .L1920
+ beq .L1925
ldr x0, [x22,728]
ldr w1, [x0]
mov w0, 21321
movk w0, 0x5359, lsl 16
cmp w1, w0
- bne .L1920
-.L1922:
+ bne .L1925
+.L1927:
mov w0, 0
- b .L1938
-.L1920:
+ b .L1943
+.L1925:
sub w19, w19, #1
sxth w19, w19
- b .L1919
-.L1940:
+ b .L1924
+.L1945:
cmn w19, #1
- bne .L1922
+ bne .L1927
add x20, x20, :lo12:.LANCHOR0
adrp x0, .LC157
add x0, x0, :lo12:.LC157
ldr x1, [x20,728]
ldr w1, [x1]
bl printk
- b .L1939
-.L1938:
+ b .L1944
+.L1943:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -11891,20 +11940,20 @@ flash_ddr_para_scan:
mov w4, 4
bl flash_read_page
cmn w0, #1
- bne .L1942
+ bne .L1947
ldrb w0, [x21,780]
- tbz x0, 0, .L1942
+ tbz x0, 0, .L1947
mov w0, 1
bl flash_set_interface_mode
mov w0, w22
bl nandc_set_if_mode
strb wzr, [x21,672]
- b .L1943
-.L1942:
+ b .L1948
+.L1947:
add x19, x19, :lo12:.LANCHOR0
mov w0, 1
strb w0, [x19,672]
-.L1943:
+.L1948:
mov w0, 0
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -11951,9 +12000,9 @@ id_block_read_data.constprop.31:
adrp x0, .LC158
add x0, x0, :lo12:.LC158
str x0, [x29,112]
-.L1948:
+.L1953:
cmp w22, w27
- bcs .L1985
+ bcs .L1990
ldr w0, [x29,168]
adrp x1, .LANCHOR4
add x1, x1, :lo12:.LANCHOR4
@@ -11967,15 +12016,15 @@ id_block_read_data.constprop.31:
udiv w20, w20, w23
and w20, w20, 65535
ldrh w0, [x0,w20,sxtw 1]
- cbnz w1, .L1949
+ cbnz w1, .L1954
mov w20, w0
- b .L1950
-.L1949:
+ b .L1955
+.L1954:
ldrb w1, [x19,1]
lsl w0, w20, 1
cmp w1, wzr
csel w20, w0, w20, ne
-.L1950:
+.L1955:
ldr w1, [x29,160]
ldr w0, [x29,164]
ldrb w28, [x19,632]
@@ -11990,7 +12039,7 @@ id_block_read_data.constprop.31:
str w0, [x29,132]
mov w0, w28
bl nandc_bch_sel
-.L1951:
+.L1956:
mov w0, 0
mov w1, w24
mov x2, x21
@@ -11999,16 +12048,16 @@ id_block_read_data.constprop.31:
bl flash_read_page
cmn w0, #1
mov w20, w0
- bne .L1958
+ bne .L1963
ldrb w6, [x19,720]
- cbnz w6, .L1953
-.L1956:
+ cbnz w6, .L1958
+.L1961:
adrp x0, .LANCHOR4
add x0, x0, :lo12:.LANCHOR4
ldr x6, [x0,1224]
- cbnz x6, .L1954
- b .L1955
-.L1953:
+ cbnz x6, .L1959
+ b .L1960
+.L1958:
mov w0, 0
mov w1, w24
mov x2, x21
@@ -12020,9 +12069,9 @@ id_block_read_data.constprop.31:
cmn w0, #1
ldr x6, [x29,104]
strb w6, [x19,720]
- beq .L1956
- b .L1984
-.L1954:
+ beq .L1961
+ b .L1989
+.L1959:
mov w0, 0
mov w1, w24
mov x2, x21
@@ -12030,28 +12079,28 @@ id_block_read_data.constprop.31:
mov w4, w23
blr x6
cmn w0, #1
- bne .L1984
-.L1955:
+ bne .L1989
+.L1960:
ldrb w0, [x19,672]
- cbz w0, .L1958
+ cbz w0, .L1963
mov w0, 0
mov w1, w24
mov x2, x21
add x3, x29, 176
mov w4, w23
bl flash_ddr_tuning_read
-.L1984:
+.L1989:
mov w20, w0
-.L1958:
+.L1963:
cmn w20, #1
- bne .L1959
+ bne .L1964
cmp w28, 16
- beq .L1959
+ beq .L1964
mov w0, 16
mov w28, 16
bl nandc_bch_sel
- b .L1951
-.L1959:
+ b .L1956
+.L1964:
ldr w0, [x29,132]
bl nandc_bch_sel
cmn w20, #1
@@ -12062,18 +12111,18 @@ id_block_read_data.constprop.31:
cmp w0, w26
cset w0, eq
tst w1, w0
- beq .L1961
- cbnz w25, .L1961
+ beq .L1966
+ cbnz w25, .L1966
ldr w1, [x21]
mov w0, 18766
movk w0, 0x464e, lsl 16
cmp w1, w0
- bne .L1961
+ bne .L1966
ldr w0, [x29,144]
ldrb w23, [x21,17]
add w27, w27, w0
- b .L1962
-.L1961:
+ b .L1967
+.L1966:
ldr x0, [x29,144]
mov w2, w22
ldr w1, [x29,140]
@@ -12084,12 +12133,12 @@ id_block_read_data.constprop.31:
ldr x0, [x29,112]
bl printk
str wzr, [x29,168]
-.L1962:
+.L1967:
ldr w0, [x29,144]
add w22, w0, w22
uxth w22, w22
- b .L1948
-.L1985:
+ b .L1953
+.L1990:
ldr x0, [x29,120]
ldrb w1, [x29,136]
add x0, x0, :lo12:.LANCHOR0
@@ -12122,27 +12171,27 @@ flash_complete_plane_page_read:
mov x23, x2
ldrb w0, [x0,633]
cmp w0, w22
- bhi .L1987
+ bhi .L1992
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
- mov w2, 789
+ mov w2, 795
add x1, x1, 184
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L1987:
+.L1992:
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, .L1988
+ cbnz w20, .L1993
mov w0, w19
bl slc_phy_page_address_calc
mov w19, w0
-.L1988:
+.L1993:
add x3, x21, :lo12:.LANCHOR0
uxtb x5, w22
and w2, w19, 255
@@ -12150,26 +12199,26 @@ flash_complete_plane_page_read:
ldrb w0, [x3,656]
cmp w0, 1
lsr w0, w19, 16
- bne .L1989
+ bne .L1994
add x5, x25, x5, lsl 8
mov w3, 6
- b .L2002
-.L1989:
+ b .L2007
+.L1994:
ldr x3, [x3,624]
add x5, x25, x5, lsl 8
ldrb w3, [x3,12]
cmp w3, 3
- bne .L1991
+ bne .L1996
mov w3, 5
-.L2002:
+.L2007:
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 .L2000
-.L1991:
+ b .L2005
+.L1996:
str wzr, [x5,2056]
str wzr, [x5,2052]
str wzr, [x5,2052]
@@ -12180,29 +12229,29 @@ flash_complete_plane_page_read:
str w0, [x5,2056]
str wzr, [x5,2052]
str wzr, [x5,2052]
-.L2000:
+.L2005:
mov w0, 224
str w0, [x5,2056]
- cbz w20, .L1992
+ cbz w20, .L1997
add x21, x21, :lo12:.LANCHOR0
ldr x0, [x21,624]
ldrb w0, [x0,12]
cmp w0, 3
- bne .L1992
+ bne .L1997
sub w20, w20, #1
add w0, w19, w19, lsl 1
add w0, w20, w0
- b .L2001
-.L1992:
+ b .L2006
+.L1997:
mov w0, w19
-.L2001:
+.L2006:
bl nandc_set_seed
- adrp x2, .LANCHOR2+385
+ adrp x2, .LANCHOR2+17
mov x3, x24
mov x4, x23
mov w1, 0
mov w0, w22
- ldrb w2, [x2,#:lo12:.LANCHOR2+385]
+ ldrb w2, [x2,#:lo12:.LANCHOR2+17]
bl nandc_xfer
mov w19, w0
mov w0, w22
@@ -12236,27 +12285,27 @@ flash_complete_page_read:
mov x26, x2
ubfx x22, x24, 24, 2
cmp w0, w21
- bhi .L2004
+ bhi .L2009
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
- mov w2, 911
+ mov w2, 917
add x1, x1, 216
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2004:
+.L2009:
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, .L2005
+ cbnz w22, .L2010
mov w0, w20
bl slc_phy_page_address_calc
mov w20, w0
-.L2005:
+.L2010:
ubfiz x0, x23, 8, 8
add x5, x21, x0
mov w0, 5
@@ -12271,19 +12320,19 @@ flash_complete_page_read:
str w0, [x5,2052]
mov w0, 224
str w0, [x5,2056]
- cbz w22, .L2006
+ cbz w22, .L2011
add x0, x19, :lo12:.LANCHOR0
ldr x0, [x0,624]
ldrb w0, [x0,12]
cmp w0, 3
- bne .L2006
+ bne .L2011
sub w0, w22, #1
add w1, w20, w20, lsl 1
add w0, w0, w1
- b .L2038
-.L2006:
+ b .L2043
+.L2011:
mov w0, w20
-.L2038:
+.L2043:
adrp x21, .LANCHOR2
bl nandc_set_seed
add x27, x21, :lo12:.LANCHOR2
@@ -12291,14 +12340,14 @@ flash_complete_page_read:
mov w1, 0
mov x3, x25
mov x4, x26
- add x27, x27, 376
+ add x27, x27, 8
ldrb w2, [x27,9]
bl nandc_xfer
cmn w0, #1
- bne .L2008
+ bne .L2013
add x28, x19, :lo12:.LANCHOR0
ldrb w5, [x28,720]
- cbz w5, .L2009
+ cbz w5, .L2014
ldrb w4, [x27,9]
mov w0, w23
orr w1, w20, w22, lsl 24
@@ -12309,31 +12358,31 @@ flash_complete_page_read:
bl flash_read_page
ldr x5, [x29,104]
strb w5, [x28,720]
- cbnz w22, .L2010
-.L2017:
+ cbnz w22, .L2015
+.L2022:
ldrb w2, [x19,#:lo12:.LANCHOR0]
add x1, x19, :lo12:.LANCHOR0
- cbz w2, .L2010
+ cbz w2, .L2015
ldrb w1, [x1,724]
add w1, w1, w1, lsl 1
cmp w0, w1, lsr 2
- blt .L2010
+ blt .L2015
add x21, x21, :lo12:.LANCHOR2
- ldrb w1, [x21,395]
+ ldrb w1, [x21,27]
sub w1, w1, #4
uxtb w1, w1
cmp w1, 3
mov w1, 256
csel w0, w0, w1, hi
- b .L2025
-.L2010:
+ b .L2030
+.L2015:
cmn w0, #1
- bne .L2025
-.L2018:
+ bne .L2030
+.L2023:
adrp x0, .LANCHOR4+1224
ldr x5, [x0,#:lo12:.LANCHOR4+1224]
- cbnz x5, .L2013
-.L2016:
+ cbnz x5, .L2018
+.L2021:
add x19, x19, :lo12:.LANCHOR0
adrp x0, .LC159
add x0, x0, :lo12:.LC159
@@ -12343,36 +12392,36 @@ flash_complete_page_read:
ldrb w4, [x19,720]
bl printk
ldrb w0, [x19,672]
- cbnz w0, .L2014
+ cbnz w0, .L2019
mov w0, -1
- b .L2025
-.L2013:
+ b .L2030
+.L2018:
add x4, x21, :lo12:.LANCHOR2
mov w0, w23
orr w1, w20, w22, lsl 24
mov x2, x25
mov x3, x26
- ldrb w4, [x4,385]
+ ldrb w4, [x4,17]
blr x5
cmn w0, #1
- bne .L2025
- b .L2016
-.L2014:
+ bne .L2030
+ b .L2021
+.L2019:
add x21, x21, :lo12:.LANCHOR2
mov w0, w23
orr w1, w20, w22, lsl 24
mov x2, x25
mov x3, x26
- ldrb w4, [x21,385]
+ ldrb w4, [x21,17]
bl flash_ddr_tuning_read
- b .L2025
-.L2008:
- cbz w22, .L2017
- b .L2025
-.L2009:
- cbz w22, .L2017
- b .L2018
-.L2025:
+ b .L2030
+.L2013:
+ cbz w22, .L2022
+ b .L2030
+.L2014:
+ cbz w22, .L2022
+ b .L2023
+.L2030:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -12395,7 +12444,7 @@ queue_wait_first_req_completed:
stp x27, x28, [sp,80]
ldrb w21, [x0,2835]
cmp w21, 255
- beq .L2123
+ beq .L2128
add x0, x0, 784
mov w1, 0
add x0, x0, x21, lsl 6
@@ -12403,45 +12452,45 @@ queue_wait_first_req_completed:
ldr w20, [x0,40]
sub w3, w2, #1
cmp w3, 9
- bhi .L2041
- adrp x0, .L2043
- add x0, x0, :lo12:.L2043
+ bhi .L2046
+ adrp x0, .L2048
+ add x0, x0, :lo12:.L2048
ldrh w0, [x0,w3,uxtw #1]
- adr x1, .Lrtx2043
+ adr x1, .Lrtx2048
add x0, x1, w0, sxth #2
br x0
-.Lrtx2043:
+.Lrtx2048:
.section .rodata
.align 0
.align 2
-.L2043:
- .2byte (.L2042 - .Lrtx2043) / 4
- .2byte (.L2044 - .Lrtx2043) / 4
- .2byte (.L2045 - .Lrtx2043) / 4
- .2byte (.L2045 - .Lrtx2043) / 4
- .2byte (.L2045 - .Lrtx2043) / 4
- .2byte (.L2046 - .Lrtx2043) / 4
- .2byte (.L2047 - .Lrtx2043) / 4
- .2byte (.L2048 - .Lrtx2043) / 4
- .2byte (.L2045 - .Lrtx2043) / 4
- .2byte (.L2048 - .Lrtx2043) / 4
+.L2048:
+ .2byte (.L2047 - .Lrtx2048) / 4
+ .2byte (.L2049 - .Lrtx2048) / 4
+ .2byte (.L2050 - .Lrtx2048) / 4
+ .2byte (.L2050 - .Lrtx2048) / 4
+ .2byte (.L2050 - .Lrtx2048) / 4
+ .2byte (.L2051 - .Lrtx2048) / 4
+ .2byte (.L2052 - .Lrtx2048) / 4
+ .2byte (.L2053 - .Lrtx2048) / 4
+ .2byte (.L2050 - .Lrtx2048) / 4
+ .2byte (.L2053 - .Lrtx2048) / 4
.text
-.L2042:
+.L2047:
mov w0, w20
mov w1, 64
bl flash_wait_device_ready
- tbz x0, 6, .L2123
+ tbz x0, 6, .L2128
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, .L2050
+ cbz x2, .L2055
ldrb w4, [x0,56]
ldrb w0, [x3,2832]
cmp w4, w0
csel x1, x1, x2, ne
-.L2050:
+.L2055:
add x19, x19, :lo12:.LANCHOR0
mov w0, w20
add x19, x19, 784
@@ -12454,8 +12503,8 @@ queue_wait_first_req_completed:
ldrb w0, [x19,2]
orr w0, w0, 8
strb w0, [x19,2]
- b .L2123
-.L2044:
+ b .L2128
+.L2049:
mov w0, w20
mov w1, 64
bl flash_wait_device_ready
@@ -12464,27 +12513,27 @@ queue_wait_first_req_completed:
add x3, x2, 784
add x1, x3, x4
ldrb w20, [x3,x4]
- tbz x0, 6, .L2123
+ tbz x0, 6, .L2128
add x3, x3, x20, lsl 6
ldr x0, [x1,16]
ldr x27, [x1,8]
ldr x23, [x3,8]
- cbz x0, .L2051
+ cbz x0, .L2056
ldrb w3, [x1,56]
ldrb w1, [x2,2832]
cmp w3, w1
csel x27, x27, x0, ne
-.L2051:
+.L2056:
add x2, x19, :lo12:.LANCHOR0
add x0, x2, 784
add x0, x0, x20, lsl 6
ldr x1, [x0,16]
- cbz x1, .L2052
+ cbz x1, .L2057
ldrb w3, [x0,56]
ldrb w0, [x2,2832]
cmp w3, w0
csel x23, x23, x1, ne
-.L2052:
+.L2057:
add x24, x19, :lo12:.LANCHOR0
mov x1, x27
add x24, x24, 784
@@ -12502,15 +12551,15 @@ queue_wait_first_req_completed:
bl flash_complete_plane_page_read
mov w25, w0
cmn w22, #1
- beq .L2053
+ beq .L2058
ldr w0, [x28,4]
cmn w0, #1
- beq .L2054
+ beq .L2059
ldr x1, [x26,8]
ldr w1, [x1,4]
cmp w0, w1
- beq .L2054
-.L2053:
+ beq .L2059
+.L2058:
add x4, x19, :lo12:.LANCHOR0
mov x2, x27
add x24, x4, 784
@@ -12526,30 +12575,30 @@ queue_wait_first_req_completed:
mov w22, w0
ldr w2, [x26,4]
cmn w2, #1
- beq .L2055
+ beq .L2060
ldr x3, [x24,8]
ldr w4, [x3,4]
cmp w2, w4
- beq .L2055
+ beq .L2060
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 6, .L2055
+ tbz x0, 6, .L2060
adrp x0, .LC160
ldr w1, [x26,8]
ldr w3, [x3]
add x0, x0, :lo12:.LC160
bl printk
-.L2055:
+.L2060:
add x0, x19, :lo12:.LANCHOR0
add x0, x0, 784
add x0, x0, x21, lsl 6
ldr w1, [x0,36]
cmn w1, #1
- beq .L2054
+ beq .L2059
ldr x0, [x0,24]
ldr w0, [x0,4]
cmp w1, w0
- beq .L2054
+ beq .L2059
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -12558,7 +12607,7 @@ queue_wait_first_req_completed:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2054:
+.L2059:
add x3, x19, :lo12:.LANCHOR0
mov w1, 12
add x3, x3, 784
@@ -12569,16 +12618,16 @@ queue_wait_first_req_completed:
orr w0, w0, 8
strb w1, [x21,58]
strb w0, [x21,2]
- beq .L2056
+ beq .L2061
add x3, x3, x20, lsl 6
ldr w0, [x3,36]
cmn w0, #1
- beq .L2058
+ beq .L2063
ldr x1, [x3,24]
ldr w1, [x1,4]
cmp w0, w1
- beq .L2058
-.L2056:
+ beq .L2063
+.L2061:
add x4, x19, :lo12:.LANCHOR0
mov x2, x23
add x21, x4, 784
@@ -12593,30 +12642,30 @@ queue_wait_first_req_completed:
bl flash_read_page_en
ldr w2, [x24,4]
cmn w2, #1
- beq .L2060
+ beq .L2065
ldr x3, [x21,8]
ldr w4, [x3,4]
cmp w2, w4
- beq .L2060
+ beq .L2065
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 6, .L2060
+ tbz x0, 6, .L2065
adrp x0, .LC160
ldr w1, [x24,8]
ldr w3, [x3]
add x0, x0, :lo12:.LC160
bl printk
-.L2060:
+.L2065:
add x0, x19, :lo12:.LANCHOR0
add x0, x0, 784
add x0, x0, x20, lsl 6
ldr w1, [x0,36]
cmn w1, #1
- beq .L2058
+ beq .L2063
ldr x0, [x0,24]
ldr w0, [x0,4]
cmp w1, w0
- beq .L2058
+ beq .L2063
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -12625,7 +12674,7 @@ queue_wait_first_req_completed:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2058:
+.L2063:
add x19, x19, :lo12:.LANCHOR0
mov w1, 12
add x19, x19, 784
@@ -12635,18 +12684,18 @@ queue_wait_first_req_completed:
orr w0, w0, 8
strb w1, [x20,58]
strb w0, [x20,2]
- b .L2123
-.L2045:
+ b .L2128
+.L2050:
bl nandc_iqr_wait_flash_ready
mov w0, w20
mov w1, 64
bl flash_wait_device_ready
mov w20, w0
- tbz x20, 6, .L2123
+ tbz x20, 6, .L2128
mov w1, 5
add x19, x19, :lo12:.LANCHOR0
ands w1, w20, w1
- beq .L2061
+ beq .L2066
add x19, x19, 784
mov w0, 11
add x19, x19, x21, lsl 6
@@ -12660,11 +12709,11 @@ queue_wait_first_req_completed:
bl printk
mov w0, -1
str w0, [x19,52]
- b .L2124
-.L2061:
+ b .L2129
+.L2066:
add x19, x19, x21, lsl 6
- b .L2068
-.L2048:
+ b .L2073
+.L2053:
add x22, x19, :lo12:.LANCHOR0
mov w0, 3
cmp w2, 10
@@ -12673,28 +12722,28 @@ queue_wait_first_req_completed:
csel w1, w0, w1, ne
ubfx x3, x20, 21, 3
add x0, x22, x21, lsl 6
-.L2063:
+.L2068:
ldrb w23, [x0]
cmp w23, 255
- beq .L2125
+ beq .L2130
add x0, x22, x23, lsl 6
ldrb w2, [x0,58]
cmp w2, w1
- bne .L2063
+ bne .L2068
ldr w2, [x0,40]
ubfx x2, x2, 21, 3
cmp w3, w2
- bne .L2063
+ bne .L2068
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, .L2071
+ tbz x20, 6, .L2076
ands w0, w20, 15
add x22, x22, x21, lsl 6
- beq .L2066
+ beq .L2071
adrp x0, .LC162
ldrb w1, [x22,1]
ldr w3, [x22,40]
@@ -12706,7 +12755,7 @@ queue_wait_first_req_completed:
strb w0, [x22,58]
mov w0, -1
str w0, [x22,52]
-.L2065:
+.L2070:
add x19, x19, :lo12:.LANCHOR0
add x19, x19, 784
add x21, x19, x21, lsl 6
@@ -12715,52 +12764,52 @@ queue_wait_first_req_completed:
strb w0, [x23,58]
ldr w0, [x21,52]
str w0, [x23,52]
-.L2124:
+.L2129:
mov w1, w20
- b .L2041
-.L2066:
+ b .L2046
+.L2071:
mov w1, 12
str w0, [x22,52]
strb w1, [x22,58]
-.L2071:
+.L2076:
mov w20, w0
- b .L2065
-.L2125:
+ b .L2070
+.L2130:
mov w1, -1
- b .L2041
-.L2046:
+ b .L2046
+.L2051:
mov w1, 32
mov w0, w20
bl flash_wait_device_ready
- tbz x0, 5, .L2123
+ tbz x0, 5, .L2128
ands w1, w0, 15
add x19, x19, :lo12:.LANCHOR0
add x19, x19, x21, lsl 6
- beq .L2068
+ beq .L2073
mov w1, 11
strb w1, [x19,842]
mov w1, -1
str w1, [x19,836]
mov w1, w0
- b .L2041
-.L2068:
+ b .L2046
+.L2073:
mov w0, 12
str w1, [x19,836]
strb w0, [x19,842]
- b .L2041
-.L2047:
+ b .L2046
+.L2052:
mov w1, 64
mov w0, w20
bl flash_wait_device_ready
- tbz x0, 6, .L2123
+ tbz x0, 6, .L2128
add x19, x19, :lo12:.LANCHOR0
add x19, x19, x21, lsl 6
str w0, [x19,836]
mov w0, 6
strb w0, [x19,842]
-.L2123:
+.L2128:
mov w1, 0
-.L2041:
+.L2046:
mov w0, w1
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -12778,15 +12827,15 @@ sblk_wait_write_queue_completed:
add x29, sp, 0
str x19, [sp,16]
adrp x19, .LANCHOR0
-.L2127:
+.L2132:
add x0, x19, :lo12:.LANCHOR0
ldrb w0, [x0,2835]
cmp w0, 255
- beq .L2129
+ beq .L2134
bl queue_wait_first_req_completed
bl queue_remove_completed_req
- b .L2127
-.L2129:
+ b .L2132
+.L2134:
ldr x19, [sp,16]
ldp x29, x30, [sp], 32
ret
@@ -12860,28 +12909,28 @@ sblk_read_page:
mov w20, w21
add x27, x22, 784
add x23, x23, 280
-.L2133:
- cbz w20, .L2156
+.L2138:
+ cbz w20, .L2161
ldrb w28, [x19]
ldr w26, [x19,40]
-.L2134:
+.L2139:
mov w0, w26
mov w1, 0
bl queue_lun_state
- cbz w0, .L2157
+ cbz w0, .L2162
bl queue_wait_first_req_completed
bl queue_remove_completed_req
- b .L2134
-.L2157:
+ b .L2139
+.L2162:
cmp w20, 1
- beq .L2140
+ beq .L2145
adrp x0, .LANCHOR4+1265
ldrb w0, [x0,#:lo12:.LANCHOR4+1265]
- cbz w0, .L2140
+ cbz w0, .L2145
ldrb w0, [x19]
ubfx x3, x26, 21, 3
cmp w0, 255
- bne .L2139
+ bne .L2144
adrp x0, .LC0
mov x1, x23
mov w2, 624
@@ -12890,18 +12939,18 @@ sblk_read_page:
bl printk
bl dump_stack
ldr x3, [x29,120]
-.L2139:
+.L2144:
ldrb w24, [x19]
lsl x24, x24, 6
add x2, x27, x24
ldr w1, [x2,40]
ubfx x0, x1, 21, 3
cmp w3, w0
- bne .L2140
+ bne .L2145
ldrh w0, [x22,3350]
add w26, w0, w26
cmp w1, w26
- bne .L2140
+ bne .L2145
ldr w0, [x19,40]
add x26, x22, 2835
str x2, [x29,104]
@@ -12927,36 +12976,36 @@ sblk_read_page:
strb wzr, [x2,59]
strb w3, [x27,x24]
bl buf_add_tail
- b .L2138
-.L2140:
+ b .L2143
+.L2145:
mov x0, x19
bl queue_read_cmd
-.L2138:
+.L2143:
subs w20, w20, #1
- beq .L2156
+ beq .L2161
sbfiz x19, x28, 6, 32
add x19, x27, x19
- b .L2133
-.L2156:
+ b .L2138
+.L2161:
adrp x19, .LANCHOR0
add x19, x19, :lo12:.LANCHOR0
add x19, x19, 784
-.L2144:
- cbz w21, .L2158
+.L2149:
+ cbz w21, .L2163
ldrb w0, [x25,58]
cmp w0, 12
- bne .L2145
+ bne .L2150
ldrb w0, [x25]
sub w21, w21, #1
cmp w0, 255
- beq .L2145
+ beq .L2150
sbfiz x25, x0, 6, 32
add x25, x19, x25
-.L2145:
+.L2150:
bl queue_wait_first_req_completed
bl queue_remove_completed_req
- b .L2144
-.L2158:
+ b .L2149
+.L2163:
mov w0, w21
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -12991,24 +13040,24 @@ flash_prog_page:
add x22, x19, x22, lsl 8
and w24, w1, 2097151
ubfx x27, x23, 24, 2
- tbz x0, 4, .L2160
+ tbz x0, 4, .L2165
adrp x0, .LC163
mov w2, w27
add x0, x0, :lo12:.LC163
bl printk
-.L2160:
+.L2165:
bl nandc_wait_flash_ready
mov w0, w20
bl hynix_reconfig_rr_para
mov w0, w20
bl nandc_cs
mov w0, w20
- cbnz w27, .L2161
+ cbnz w27, .L2166
bl zftl_flash_enter_slc_mode
- b .L2162
-.L2161:
+ b .L2167
+.L2166:
bl zftl_flash_exit_slc_mode
-.L2162:
+.L2167:
ubfiz x4, x20, 8, 8
mov w0, 128
add x19, x19, x4
@@ -13024,7 +13073,7 @@ flash_prog_page:
str w0, [x19,2052]
mov w0, w24
bl nandc_set_seed
- ldrb w1, [x21,385]
+ ldrb w1, [x21,17]
mov x2, x26
mov x3, x25
mov w0, 1
@@ -13040,16 +13089,16 @@ flash_prog_page:
mov w0, w20
and w19, w21, 4
bl nandc_de_cs
- tbz x21, 2, .L2163
+ tbz x21, 2, .L2168
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2163
+ tbz x0, 12, .L2168
adrp x0, .LC164
mov w1, w23
add x0, x0, :lo12:.LC164
mov w2, w19
bl printk
-.L2163:
+.L2168:
mov w0, w19
ldr x27, [sp,80]
ldp x19, x20, [sp,16]
@@ -13086,22 +13135,22 @@ flash_test_blk:
mov w1, w20
bl flash_erase_block
cmn w0, #1
- bne .L2174
-.L2176:
+ bne .L2179
+.L2181:
mov w19, -1
- b .L2175
-.L2174:
+ b .L2180
+.L2179:
adrp x21, .LANCHOR2
ldr x2, [x19,1192]
add x21, x21, :lo12:.LANCHOR2
ldr x3, [x19,1208]
mov w0, w22
mov w1, w20
- add x21, x21, 376
+ add x21, x21, 8
ldrb w4, [x21,9]
bl flash_prog_page
cmn w0, #1
- beq .L2176
+ beq .L2181
ldr x2, [x19,1192]
mov w0, w22
ldr x3, [x19,1208]
@@ -13109,20 +13158,20 @@ flash_test_blk:
ldrb w4, [x21,9]
bl flash_read_page
cmn w0, #1
- beq .L2176
+ beq .L2181
ldr x0, [x19,1192]
ldr w1, [x0]
mov w0, 42405
bfi w0, w0, 16, 16
cmp w1, w0
- bne .L2176
+ bne .L2181
ldr x0, [x19,1208]
ldr w1, [x0]
mov w0, 23130
bfi w0, w0, 16, 16
cmp w1, w0
csetm w19, ne
-.L2175:
+.L2180:
mov w1, w20
mov w0, w22
bl flash_erase_block
@@ -13187,50 +13236,50 @@ flash_start_page_prog:
and w20, w1, 2097151
ubfx x23, x1, 24, 2
cmp w0, w24
- bhi .L2185
+ bhi .L2190
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
- mov w2, 706
+ mov w2, 712
add x1, x1, 296
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2185:
+.L2190:
add x28, x22, :lo12:.LANCHOR0
add x0, x28, x24, sxtw
ldrb w21, [x0,736]
ldr x19, [x28,536]
bl nandc_rdy_status
- cbnz w0, .L2186
+ cbnz w0, .L2191
ldrb w0, [x28,633]
cmp w0, 1
- bne .L2187
+ bne .L2192
bl nandc_wait_flash_ready
- b .L2186
-.L2187:
+ b .L2191
+.L2192:
mov w0, w24
mov w1, w20
mov w2, 64
bl flash_wait_device_ready_raw
-.L2186:
+.L2191:
mov w0, w21
bl hynix_reconfig_rr_para
mov w0, w21
bl nandc_cs
- cbnz w23, .L2188
+ cbnz w23, .L2193
mov w0, w20
bl slc_phy_page_address_calc
mov w20, w0
ldrb w0, [x22,#:lo12:.LANCHOR0]
- cbz w0, .L2189
+ cbz w0, .L2194
mov w0, w21
bl zftl_flash_enter_slc_mode
- b .L2189
-.L2188:
+ b .L2194
+.L2193:
mov w0, w21
bl zftl_flash_exit_slc_mode
-.L2189:
+.L2194:
ubfiz x4, x21, 8, 8
mov w0, 128
add x19, x19, x4
@@ -13245,11 +13294,11 @@ flash_start_page_prog:
str w0, [x19,2052]
mov w0, w20
bl nandc_set_seed
- adrp x1, .LANCHOR2+385
+ adrp x1, .LANCHOR2+17
mov x2, x27
mov x3, x26
mov w0, 1
- ldrb w1, [x1,#:lo12:.LANCHOR2+385]
+ ldrb w1, [x1,#:lo12:.LANCHOR2+17]
bl nandc_xfer_start
bl nandc_xfer_done
str w25, [x19,2056]
@@ -13280,28 +13329,28 @@ queue_prog_cmd:
add x1, x0, :lo12:.LANCHOR0
ldrb w2, [x1,2835]
cmp w2, 255
- beq .L2194
+ beq .L2199
ubfx x4, x4, 21, 3
add x1, x1, 784
-.L2196:
+.L2201:
add x3, x1, x2, lsl 6
ldr w5, [x3,40]
ubfx x5, x5, 21, 3
cmp w4, w5
- bne .L2195
+ bne .L2200
ldrb w5, [x3,58]
add x3, x3, 48
cmp w5, 6
- bne .L2195
+ bne .L2200
mov w1, 3
strb w1, [x3,10]
- b .L2194
-.L2195:
+ b .L2199
+.L2200:
lsl x2, x2, 6
ldrb w2, [x1,x2]
cmp w2, 255
- bne .L2196
-.L2194:
+ bne .L2201
+.L2199:
mov w1, 3
strb w1, [x19,58]
mov w1, 1
@@ -13330,49 +13379,49 @@ sblk_prog_page:
mov x19, x0
uxtb w20, w1
ldrh w0, [x0,50]
- cbz w0, .L2202
+ cbz w0, .L2207
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L2202
+ tbz x0, 8, .L2207
adrp x0, .LC165
ldr w1, [x19,40]
add x0, x0, :lo12:.LC165
mov w2, w20
bl printk
-.L2202:
+.L2207:
adrp x24, .LANCHOR0
adrp x25, .LC0
add x23, x24, :lo12:.LANCHOR0
mov w21, 0
add x27, x23, 784
add x25, x25, :lo12:.LC0
-.L2203:
- cbz w20, .L2233
+.L2208:
+ cbz w20, .L2238
ldrb w26, [x19]
ldr w22, [x19,40]
-.L2204:
+.L2209:
mov w0, w22
mov w1, 1
bl queue_lun_state
- cbz w0, .L2234
+ cbz w0, .L2239
bl queue_wait_first_req_completed
bl queue_remove_completed_req
- b .L2204
-.L2234:
+ b .L2209
+.L2239:
cmp w20, 1
- beq .L2206
+ beq .L2211
add x0, x24, :lo12:.LANCHOR0
ldrb w0, [x0,781]
- cbnz w0, .L2207
-.L2206:
+ cbnz w0, .L2212
+.L2211:
mov x0, x19
bl queue_prog_cmd
- b .L2208
-.L2207:
+ b .L2213
+.L2212:
ldrb w0, [x19]
ubfx x28, x22, 21, 3
cmp w0, 255
- bne .L2209
+ bne .L2214
adrp x1, .LANCHOR3
mov w2, 546
add x1, x1, :lo12:.LANCHOR3
@@ -13380,13 +13429,13 @@ sblk_prog_page:
add x1, x1, 320
bl printk
bl dump_stack
-.L2209:
+.L2214:
ldrb w0, [x19]
add x0, x27, x0, lsl 6
ldr w4, [x0,40]
ubfx x0, x4, 21, 3
cmp w28, w0
- bne .L2210
+ bne .L2215
ldrh w3, [x23,3340]
mov w1, 21
ldrb w6, [x23,3338]
@@ -13407,13 +13456,13 @@ sblk_prog_page:
and w0, w1, w5
cmp w0, w3
uxth w2, w2
- beq .L2210
+ beq .L2215
and w22, w2, w22
and w2, w2, w4
cmp w22, w2
- bne .L2210
+ bne .L2215
cmp w21, w6
- beq .L2210
+ beq .L2215
ldr w1, [x19,40]
mov w0, 17
ldr x2, [x19,8]
@@ -13428,20 +13477,20 @@ sblk_prog_page:
strb w0, [x19]
add x0, x23, 2835
bl buf_add_tail
- b .L2208
-.L2210:
+ b .L2213
+.L2215:
mov x0, x19
mov w21, 0
bl queue_prog_cmd
-.L2208:
+.L2213:
subs w20, w20, #1
- beq .L2233
+ beq .L2238
add x19, x24, :lo12:.LANCHOR0
sbfiz x26, x26, 6, 32
add x19, x19, 784
add x19, x19, x26
- b .L2203
-.L2233:
+ b .L2208
+.L2238:
mov w0, 0
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -13463,13 +13512,13 @@ ftl_flush:
mov x19, x2
adrp x20, .LANCHOR4
ldrb w1, [x0,2857]
- cbz w1, .L2236
+ cbz w1, .L2241
add x2, x20, :lo12:.LANCHOR4
add x0, x0, 784
ldrb w2, [x2,1266]
add x0, x0, x2, lsl 6
bl sblk_prog_page
-.L2236:
+.L2241:
add x2, x19, :lo12:.LANCHOR0
add x20, x20, :lo12:.LANCHOR4
mov w0, -1
@@ -13491,15 +13540,15 @@ zftl_cache_flush:
stp x29, x30, [sp, -16]!
add x29, sp, 0
ldrb w0, [x0,#:lo12:.LANCHOR0+2857]
- cbz w0, .L2240
+ cbz w0, .L2245
bl timer_get_time
adrp x1, .LANCHOR4+1268
ldr w1, [x1,#:lo12:.LANCHOR4+1268]
add w1, w1, 100
cmp w0, w1
- bls .L2240
+ bls .L2245
bl ftl_flush
-.L2240:
+.L2245:
ldp x29, x30, [sp], 16
ret
.size zftl_cache_flush, .-zftl_cache_flush
@@ -13525,28 +13574,28 @@ flash_start_tlc_page_prog:
mov x23, x6
cmp w0, w26
mov x19, x4
- bhi .L2245
+ bhi .L2250
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
- mov w2, 655
+ mov w2, 661
add x1, x1, 336
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2245:
+.L2250:
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, .L2246
+ cbz w25, .L2251
sxtw x1, w26
add x1, x1, 8
add x1, x19, x1, lsl 8
str w25, [x1,8]
-.L2246:
+.L2251:
ubfiz x7, x26, 8, 8
mov w0, 128
add x19, x19, x7
@@ -13564,11 +13613,11 @@ flash_start_tlc_page_prog:
sub w0, w20, #1
add w0, w0, w21
bl nandc_set_seed
- adrp x1, .LANCHOR2+385
+ adrp x1, .LANCHOR2+17
mov x2, x24
mov x3, x23
mov w0, 1
- ldrb w1, [x1,#:lo12:.LANCHOR2+385]
+ ldrb w1, [x1,#:lo12:.LANCHOR2+17]
bl nandc_xfer_start
bl nandc_xfer_done
str w22, [x19,2056]
@@ -13652,16 +13701,16 @@ sblk_tlc_prog_one_page:
mov x20, x0
ldr x0, [x0]
ldr w21, [x0,40]
-.L2252:
+.L2257:
mov w0, w21
mov w1, 1
bl queue_lun_state
mov w19, w0
- cbz w0, .L2254
+ cbz w0, .L2259
bl queue_wait_first_req_completed
bl queue_remove_completed_req
- b .L2252
-.L2254:
+ b .L2257
+.L2259:
mov x0, x20
bl queue_tlc_prog_cmd
ldr x21, [sp,32]
@@ -13684,17 +13733,17 @@ sblk_xlc_prog_pages:
ldr x0, [x0]
mov w24, w2
ldr w20, [x0,40]
-.L2256:
+.L2261:
mov w0, w20
mov w1, 1
bl queue_lun_state
- cbz w0, .L2260
+ cbz w0, .L2265
bl queue_wait_first_req_completed
bl queue_remove_completed_req
- b .L2256
-.L2260:
+ b .L2261
+.L2265:
cmp w24, 2
- bne .L2258
+ bne .L2263
ldr x6, [x19]
mov w1, 1
ldr x0, [x22]
@@ -13778,11 +13827,11 @@ sblk_xlc_prog_pages:
add x0, x0, :lo12:.LANCHOR0
add x0, x0, 2835
bl buf_add_tail
- b .L2259
-.L2258:
+ b .L2264
+.L2263:
mov x0, x19
bl queue_tlc_prog_cmd
-.L2259:
+.L2264:
mov w0, 0
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -13813,50 +13862,50 @@ flash_prog_page_en:
cmp w0, w23
ubfx x28, x20, 24, 2
mov x19, x6
- bhi .L2262
+ bhi .L2267
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
- mov w2, 478
+ mov w2, 484
add x1, x1, 368
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2262:
+.L2267:
add x0, x19, :lo12:.LANCHOR0
mov w26, w20
add x1, x0, x23, sxtw
ldrb w27, [x1,736]
- cbnz w28, .L2263
+ cbnz w28, .L2268
adrp x1, .LANCHOR0
ldrb w1, [x1,#:lo12:.LANCHOR0]
- cbz w1, .L2264
+ cbz w1, .L2269
ldrb w0, [x0,1]
- cbz w0, .L2263
-.L2264:
+ cbz w0, .L2268
+.L2269:
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, .L2265
+ cbz w1, .L2270
add w26, w26, w0, lsl 1
- b .L2263
-.L2265:
+ b .L2268
+.L2270:
add x6, x6, 4
ldrh w0, [x6,w0,uxtw 1]
add w26, w0, w26
-.L2263:
+.L2268:
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 4, .L2266
+ tbz x0, 4, .L2271
adrp x0, .LC166
mov w1, w27
add x0, x0, :lo12:.LC166
mov w2, w20
bl printk
-.L2266:
+.L2271:
mov w1, w26
mov w0, w27
mov x2, x22
@@ -13864,7 +13913,7 @@ flash_prog_page_en:
mov w4, w24
bl flash_prog_page
mov w26, w0
- cbz w25, .L2267
+ cbz w25, .L2272
adrp x19, .LANCHOR4
mov w0, w23
add x25, x19, :lo12:.LANCHOR4
@@ -13874,20 +13923,20 @@ flash_prog_page_en:
ldr x3, [x25,1256]
bl flash_read_page_en
cmp w0, 512
- beq .L2268
+ beq .L2273
cmn w0, #1
- beq .L2268
+ beq .L2273
ldr x0, [x25,1248]
ldr w1, [x22]
ldr w0, [x0]
cmp w1, w0
- bne .L2268
+ bne .L2273
ldr x0, [x25,1256]
ldr w1, [x21]
ldr w0, [x0]
cmp w1, w0
- beq .L2267
-.L2268:
+ beq .L2272
+.L2273:
mov w2, 4
adrp x0, .LC167
mov x1, x22
@@ -13913,12 +13962,12 @@ flash_prog_page_en:
add x0, x0, :lo12:.LC170
mov w3, w2
bl rknand_print_hex
- b .L2269
-.L2267:
+ b .L2274
+.L2272:
cmn w26, #1
mov w0, w26
- bne .L2270
-.L2269:
+ bne .L2275
+.L2274:
adrp x0, .LC171
mov w1, w20
add x0, x0, :lo12:.LC171
@@ -13926,13 +13975,13 @@ flash_prog_page_en:
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
- mov w2, 506
+ mov w2, 512
add x1, x1, 368
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
mov w0, -1
-.L2270:
+.L2275:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -13963,7 +14012,7 @@ ftl_prog_page:
bl flash_prog_page_en
cmn w0, #1
mov w19, w0
- bne .L2284
+ bne .L2289
adrp x2, .LANCHOR3
adrp x0, .LC0
add x1, x2, :lo12:.LANCHOR3
@@ -13976,7 +14025,7 @@ ftl_prog_page:
mov w1, w20
add x0, x0, :lo12:.LC171
bl printk
-.L2284:
+.L2289:
mov w0, w19
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 64
@@ -14009,7 +14058,7 @@ ftl_info_flush:
add x24, x24, :lo12:.LC172
add x23, x23, 408
bl ftl_memset
-.L2286:
+.L2291:
add x0, x21, :lo12:.LANCHOR0
ldrb w27, [x19,1536]
ldrh w20, [x19,1538]
@@ -14024,29 +14073,29 @@ ftl_info_flush:
str w0, [x19,1284]
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2287
+ tbz x0, 12, .L2292
ldr w3, [x3,4]
mov x0, x24
mov w1, w27
mov w2, w20
bl printk
-.L2287:
+.L2292:
add x1, x21, :lo12:.LANCHOR0
ldrh w0, [x19,1538]
ldrh w1, [x1,3300]
cmp w1, w0
- bhi .L2288
+ bhi .L2293
adrp x20, .LC0
add x20, x20, :lo12:.LC0
-.L2293:
+.L2298:
ldrb w1, [x19,1537]
add w1, w1, 1
uxtb w1, w1
strb w1, [x19,1537]
cmp w1, 7
- bls .L2289
+ bls .L2294
mov x1, 0
-.L2292:
+.L2297:
add x0, x21, :lo12:.LANCHOR0
uxth w25, w1
ldr x2, [x0,728]
@@ -14056,24 +14105,24 @@ ftl_info_flush:
add w0, w2, 127
uxtb w0, w0
cmp w0, 125
- bhi .L2290
+ bhi .L2295
mov x1, x23
mov w2, 742
mov x0, x20
bl printk
bl dump_stack
- b .L2291
-.L2290:
+ b .L2296
+.L2295:
cmp w2, 255
- bne .L2291
+ bne .L2296
add x1, x1, 1
cmp x1, 8
- bne .L2292
+ bne .L2297
mov w25, w1
-.L2291:
+.L2296:
strb w25, [x19,1537]
mov w25, 1
-.L2289:
+.L2294:
add x27, x21, :lo12:.LANCHOR0
ldrb w1, [x19,1537]
ldr x0, [x27,728]
@@ -14081,7 +14130,7 @@ ftl_info_flush:
ldrb w2, [x1,40]
strb w2, [x19,1536]
cmp w2, 255
- beq .L2293
+ beq .L2298
ldrh w20, [x27,3350]
mov w0, 0
mul w20, w2, w20
@@ -14096,13 +14145,13 @@ ftl_info_flush:
bl ftl_prog_page
mov w0, 1
strh w0, [x19,1538]
- b .L2294
-.L2288:
+ b .L2299
+.L2293:
madd w20, w27, w28, w20
- cbnz w0, .L2294
+ cbnz w0, .L2299
mov w1, w20
bl flash_erase_block
-.L2294:
+.L2299:
add x4, x21, :lo12:.LANCHOR0
mov w1, w20
mov w0, 0
@@ -14115,21 +14164,21 @@ ftl_info_flush:
adrp x0, .LANCHOR5
add w1, w1, 1
strh w1, [x19,1538]
- beq .L2295
+ beq .L2300
add x1, x0, :lo12:.LANCHOR5
ldrb w1, [x1,576]
- cbz w1, .L2296
-.L2295:
+ cbz w1, .L2301
+.L2300:
add x0, x0, :lo12:.LANCHOR5
strb wzr, [x0,576]
- b .L2286
-.L2296:
- cbnz w25, .L2297
-.L2305:
+ b .L2291
+.L2301:
+ cbnz w25, .L2302
+.L2310:
add x22, x22, :lo12:.LANCHOR4
ldrb w0, [x22,1536]
cmp w0, 255
- bne .L2299
+ bne .L2304
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -14138,8 +14187,8 @@ ftl_info_flush:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
- b .L2299
-.L2297:
+ b .L2304
+.L2302:
ldrb w19, [x19,1537]
adrp x20, .LANCHOR3
adrp x23, .LC0
@@ -14147,9 +14196,9 @@ ftl_info_flush:
add w19, w19, 1
add x23, x23, :lo12:.LC0
add x20, x20, 408
-.L2300:
+.L2305:
cmp w19, 7
- bhi .L2305
+ bhi .L2310
add x0, x21, :lo12:.LANCHOR0
ldr x1, [x0,728]
add w0, w19, 8
@@ -14158,27 +14207,27 @@ ftl_info_flush:
add w0, w24, 127
uxtb w0, w0
cmp w0, 125
- bhi .L2301
+ bhi .L2306
mov x1, x20
mov w2, 771
mov x0, x23
bl printk
bl dump_stack
- b .L2302
-.L2301:
+ b .L2307
+.L2306:
cmp w24, 255
- beq .L2303
-.L2302:
+ beq .L2308
+.L2307:
add x0, x21, :lo12:.LANCHOR0
ldrh w1, [x0,3350]
mov w0, 0
mul w1, w24, w1
bl flash_erase_block
-.L2303:
+.L2308:
add w19, w19, 1
uxth w19, w19
- b .L2300
-.L2299:
+ b .L2305
+.L2304:
mov w0, 0
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -14232,7 +14281,7 @@ ftl_info_blk_init:
strh wzr, [x22,1538]
ldrb w0, [x0,40]
strb w0, [x22,1536]
-.L2323:
+.L2328:
add x5, x19, :lo12:.LANCHOR0
add w0, w20, 8
sxth w25, w20
@@ -14240,7 +14289,7 @@ ftl_info_blk_init:
add x0, x1, x0, sxtw
ldrb w1, [x0,32]
cmp w1, 255
- beq .L2319
+ beq .L2324
ldrh w22, [x5,3350]
mov w0, 0
ldrb w4, [x5,2832]
@@ -14253,7 +14302,7 @@ ftl_info_blk_init:
cmn w0, #1
mov w28, w0
ldr x5, [x29,104]
- bne .L2320
+ bne .L2325
ldrb w4, [x5,2832]
mov w0, 0
add w1, w22, 1
@@ -14261,9 +14310,9 @@ ftl_info_blk_init:
mov x3, x23
bl ftl_read_page
mov w28, w0
-.L2320:
+.L2325:
ldr w0, [x27,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2321
+ tbz x0, 12, .L2326
add x0, x19, :lo12:.LANCHOR0
mov w1, w20
mov w2, w28
@@ -14272,28 +14321,28 @@ ftl_info_blk_init:
mov x0, x26
ldr w4, [x4]
bl printk
-.L2321:
+.L2326:
cmn w28, #1
- beq .L2319
+ beq .L2324
add x0, x19, :lo12:.LANCHOR0
ldr x0, [x0,2864]
ldr w1, [x0]
mov w0, 21574
movk w0, 0x494c, lsl 16
cmp w1, w0
- beq .L2331
-.L2319:
+ beq .L2336
+.L2324:
sub w20, w20, #1
cmn w20, #1
- bne .L2323
+ bne .L2328
mov w25, 0
- b .L2322
-.L2331:
+ b .L2327
+.L2336:
mov w20, w25
-.L2322:
+.L2327:
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2324
+ tbz x0, 12, .L2329
add x0, x19, :lo12:.LANCHOR0
mov w1, w20
mov w2, 4800
@@ -14302,9 +14351,9 @@ ftl_info_blk_init:
add x0, x0, :lo12:.LC174
ldr w3, [x3]
bl printk
-.L2324:
+.L2329:
cmn w20, #1
- bne .L2325
+ bne .L2330
add x0, x21, :lo12:.LANCHOR4
mov w1, 0
add x19, x19, :lo12:.LANCHOR0
@@ -14320,8 +14369,8 @@ ftl_info_blk_init:
ldr x1, [x19,2864]
str w0, [x1,12]
mov w0, w20
- b .L2326
-.L2325:
+ b .L2331
+.L2330:
add x26, x19, :lo12:.LANCHOR0
add x23, x21, :lo12:.LANCHOR4
add w0, w25, 8
@@ -14343,8 +14392,8 @@ ftl_info_blk_init:
ldrb w0, [x23,1536]
ldrh w23, [x26,3350]
mul w23, w0, w23
-.L2327:
- tbnz w22, #31, .L2330
+.L2332:
+ tbnz w22, #31, .L2335
add x26, x19, :lo12:.LANCHOR0
mov w0, 0
add w1, w22, w23
@@ -14353,14 +14402,14 @@ ftl_info_blk_init:
ldrb w4, [x26,2832]
bl ftl_read_page
cmn w0, #1
- beq .L2328
+ beq .L2333
ldr x0, [x26,2864]
ldr w1, [x0]
mov w0, 21574
movk w0, 0x494c, lsl 16
cmp w1, w0
- bne .L2328
-.L2330:
+ bne .L2333
+.L2335:
add x21, x21, :lo12:.LANCHOR4
add x19, x19, :lo12:.LANCHOR0
strh w20, [x21,1538]
@@ -14374,12 +14423,12 @@ ftl_info_blk_init:
mov w0, 0
bl ftl_info_flush
mov w0, 0
- b .L2326
-.L2328:
+ b .L2331
+.L2333:
sub w22, w22, #1
sxth w22, w22
- b .L2327
-.L2326:
+ b .L2332
+.L2331:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -14406,17 +14455,17 @@ ftl_ext_info_flush:
ldr x1, [x1,608]
ldr w3, [x1,520]
cmp w0, w3
- bls .L2349
+ bls .L2354
ldr w2, [x1,12]
sub w2, w2, w3
add w2, w2, w0
str w2, [x1,12]
- b .L2362
-.L2349:
- bcs .L2350
-.L2362:
+ b .L2367
+.L2354:
+ bcs .L2355
+.L2367:
str w0, [x1,520]
-.L2350:
+.L2355:
adrp x23, .LANCHOR3
adrp x19, .LANCHOR4
add x23, x23, :lo12:.LANCHOR3
@@ -14425,11 +14474,11 @@ ftl_ext_info_flush:
add x23, x23, 424
add x19, x19, 1280
bl ftl_total_vpn_update
-.L2351:
+.L2356:
adrp x24, .LANCHOR5
add x24, x24, :lo12:.LANCHOR5
add x25, x24, 640
-.L2354:
+.L2359:
add x2, x22, :lo12:.LANCHOR0
ldr x0, [x2,2864]
ldr w1, [x0,56]
@@ -14438,22 +14487,22 @@ ftl_ext_info_flush:
ldrh w1, [x0,140]
ldrh w0, [x2,3300]
cmp w1, w0
- bcc .L2352
+ bcc .L2357
bl ftl_ext_alloc_new_blk
-.L2352:
+.L2357:
add x0, x22, :lo12:.LANCHOR0
ldr x0, [x0,2864]
ldrh w1, [x0,130]
mov w0, 65535
cmp w1, w0
- bne .L2353
+ bne .L2358
adrp x0, .LC0
mov x1, x23
mov w2, 1746
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2353:
+.L2358:
add x21, x22, :lo12:.LANCHOR0
mov w0, 21
mov w1, 1
@@ -14490,17 +14539,17 @@ ftl_ext_info_flush:
uxth w1, w1
strh w1, [x2,140]
cmp w1, 1
- beq .L2354
+ beq .L2359
cmn w0, #1
- beq .L2355
+ beq .L2360
ldrb w0, [x24,578]
- cbz w0, .L2356
-.L2355:
+ cbz w0, .L2361
+.L2360:
adrp x0, .LANCHOR5
add x0, x0, :lo12:.LANCHOR5
strb wzr, [x0,578]
- b .L2351
-.L2356:
+ b .L2356
+.L2361:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -14547,7 +14596,7 @@ ftl_ext_info_init:
adrp x0, .LANCHOR2
mov w23, w24
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2364
+ tbz x0, 12, .L2369
ldr x5, [x26,2864]
adrp x1, .LANCHOR3
adrp x0, .LC175
@@ -14559,14 +14608,14 @@ ftl_ext_info_init:
mov w3, w24
uxth w4, w27
bl printk
-.L2364:
+.L2369:
add x20, x20, :lo12:.LANCHOR5
add x21, x21, :lo12:.LANCHOR4
mov w26, w24
add x20, x20, 640
add x21, x21, 1280
-.L2365:
- tbnz w26, #31, .L2370
+.L2370:
+ tbnz w26, #31, .L2375
add x27, x19, :lo12:.LANCHOR0
mov w0, w25
mov x2, x20
@@ -14576,31 +14625,31 @@ ftl_ext_info_init:
madd w1, w22, w1, w26
bl flash_read_page_en
cmp w0, 512
- beq .L2366
+ beq .L2371
cmn w0, #1
- beq .L2366
+ beq .L2371
ldr x0, [x27,608]
ldr w1, [x0]
mov w0, 20038
movk w0, 0x4549, lsl 16
cmp w1, w0
- bne .L2366
-.L2370:
+ bne .L2371
+.L2375:
bl zftl_sblk_list_init
add x0, x19, :lo12:.LANCHOR0
ldr x0, [x0,2864]
ldrh w1, [x0,140]
cmp w1, w24
- bgt .L2368
+ bgt .L2373
add w23, w23, 1
strh w23, [x0,140]
bl ftl_ext_info_flush
- b .L2368
-.L2366:
+ b .L2373
+.L2371:
sub w26, w26, #1
sxth w26, w26
- b .L2365
-.L2368:
+ b .L2370
+.L2373:
add x19, x19, :lo12:.LANCHOR0
ldr x20, [x19,608]
bl timer_get_time
@@ -14661,13 +14710,13 @@ ftl_write_last_log_page:
ldrh w24, [x0,12]
cmp w1, 1
ldr x22, [x19,3872]
- bne .L2382
+ bne .L2387
mov x20, x0
bl ftl_get_new_free_page
cmn w0, #1
mov w23, w0
mov w21, 0
- beq .L2382
+ beq .L2387
ldrh w0, [x20]
add x22, x22, x24, uxth 2
bl ftl_vpn_decrement
@@ -14692,7 +14741,7 @@ ftl_write_last_log_page:
str w21, [x2,8]
str w21, [x2,12]
bl ftl_prog_ppa_page
-.L2382:
+.L2387:
mov w0, w21
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -14715,34 +14764,34 @@ ftl_open_sblk_recovery:
stp x21, x22, [sp,32]
stp x25, x26, [sp,64]
mov x27, x1
- tbz x0, 12, .L2387
+ tbz x0, 12, .L2392
adrp x0, .LC176
ldrh w1, [x19,2]
add x0, x0, :lo12:.LC176
bl printk
-.L2387:
+.L2392:
ldr w0, [x24,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2388
+ tbz x0, 12, .L2393
adrp x0, .LC177
ldrb w1, [x19,5]
add x0, x0, :lo12:.LC177
bl printk
-.L2388:
+.L2393:
ldr w0, [x24,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2389
+ tbz x0, 12, .L2394
adrp x0, .LC178
ldrh w1, [x19]
add x0, x0, :lo12:.LC178
bl printk
-.L2389:
+.L2394:
ldr w0, [x24,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2390
+ tbz x0, 12, .L2395
adrp x0, .LC179
ldrh w1, [x19,16]
ldrh w2, [x19,18]
add x0, x0, :lo12:.LC179
bl printk
-.L2390:
+.L2395:
ldrh w0, [x19,10]
adrp x21, .LANCHOR0
strh w0, [x19,14]
@@ -14750,7 +14799,7 @@ ftl_open_sblk_recovery:
ldrh w1, [x19]
ldrh w0, [x0,576]
cmp w1, w0
- bcs .L2386
+ bcs .L2391
mov w0, 1
adrp x25, .LANCHOR4
adrp x26, .LANCHOR3
@@ -14764,21 +14813,21 @@ ftl_open_sblk_recovery:
mov w28, 0
add x25, x25, 1280
str x0, [x29,120]
-.L2393:
+.L2398:
add x0, x21, :lo12:.LANCHOR0
ldrh w0, [x0,3300]
cmp w0, w23
- bls .L2396
+ bls .L2401
ldrb w22, [x19,5]
-.L2394:
+.L2399:
ldrb w0, [x19,9]
cmp w0, w22
- bls .L2470
+ bls .L2475
add x0, x19, x22, sxtw 1
ldrh w0, [x0,16]
mov w1, 65535
cmp w0, w1
- beq .L2395
+ beq .L2400
add x3, x21, :lo12:.LANCHOR0
ldr x2, [x20,24]
ldrh w1, [x3,3350]
@@ -14788,21 +14837,21 @@ ftl_open_sblk_recovery:
bl ftl_read_ppa_page
cmp w0, 512
mov w26, w0
- beq .L2396
+ beq .L2401
cmn w0, #1
- beq .L2397
+ beq .L2402
ldr x0, [x20,24]
ldr w1, [x0]
cmn w1, #1
- bne .L2397
+ bne .L2402
ldr w0, [x0,4]
cmn w0, #1
- bne .L2397
+ bne .L2402
ldr x0, [x20,8]
ldr w0, [x0]
cmn w0, #1
- beq .L2396
-.L2397:
+ beq .L2401
+.L2402:
adrp x0, .LANCHOR5+577
mov w1, 1
strb w1, [x0,#:lo12:.LANCHOR5+577]
@@ -14810,14 +14859,14 @@ ftl_open_sblk_recovery:
ldrh w1, [x19,10]
madd w0, w23, w0, w22
cmp w1, w0
- beq .L2398
+ beq .L2403
adrp x0, .LC0
ldr x1, [x29,120]
mov w2, 1395
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2398:
+.L2403:
ldrh w0, [x19,10]
ldrh w1, [x19,6]
ldrb w2, [x19,9]
@@ -14826,28 +14875,28 @@ ftl_open_sblk_recovery:
ldrh w0, [x0,3300]
mul w0, w0, w2
cmp w1, w0
- beq .L2399
+ beq .L2404
adrp x0, .LC0
ldr x1, [x29,120]
mov w2, 1396
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2399:
+.L2404:
cmn w26, #1
- beq .L2403
+ beq .L2408
ldr x0, [x20,24]
ldr w0, [x0,4]
cmn w0, #1
- beq .L2403
+ beq .L2408
bl lpa_hash_get_ppa
- cbz x27, .L2401
+ cbz x27, .L2406
ldr x2, [x20,24]
ldr w3, [x2,8]
cmp w0, w3
- beq .L2401
+ beq .L2406
cmn w0, #1
- beq .L2401
+ beq .L2406
add x4, x21, :lo12:.LANCHOR0
mov w5, 21
mov w28, 1
@@ -14861,7 +14910,7 @@ ftl_open_sblk_recovery:
udiv w3, w3, w1
ldrh w1, [x27]
cmp w1, w3, uxth
- bne .L2401
+ bne .L2406
ldr w6, [x2]
mov x2, x25
ldrb w3, [x4,2832]
@@ -14875,11 +14924,11 @@ ftl_open_sblk_recovery:
ldr x4, [x29,112]
cmp w0, w6
ldr x5, [x29,96]
- bcc .L2401
+ bcc .L2406
ldr x0, [x20,24]
ldr w1, [x0,8]
cmn w1, #1
- beq .L2403
+ beq .L2408
ldrh w0, [x4,3340]
sub w5, w5, w0
lsr w1, w1, w0
@@ -14889,22 +14938,22 @@ ftl_open_sblk_recovery:
and w1, w28, w1
udiv w0, w1, w0
bl ftl_vpn_decrement
- b .L2403
-.L2401:
+ b .L2408
+.L2406:
ldr x2, [x20,24]
add x1, x21, :lo12:.LANCHOR0
ldr w3, [x2,4]
ldr w0, [x1,2840]
cmp w3, w0
- bcs .L2403
+ bcs .L2408
ldrb w0, [x19,9]
ldrh w4, [x1,3300]
ldrh w3, [x19,10]
mul w0, w0, w4
sub w0, w0, #1
cmp w3, w0
- blt .L2471
-.L2403:
+ blt .L2476
+.L2408:
ldrh w0, [x19,6]
mov w28, 1
sub w0, w0, #1
@@ -14912,16 +14961,16 @@ ftl_open_sblk_recovery:
ldrh w0, [x19,10]
add w0, w0, 1
strh w0, [x19,10]
-.L2395:
+.L2400:
add w22, w22, 1
uxth w22, w22
- b .L2394
-.L2470:
+ b .L2399
+.L2475:
add w23, w23, 1
strb wzr, [x19,5]
uxth w23, w23
- b .L2393
-.L2396:
+ b .L2398
+.L2401:
add x2, x21, :lo12:.LANCHOR0
ldrh w0, [x19,10]
ldrh w1, [x19,6]
@@ -14932,7 +14981,7 @@ ftl_open_sblk_recovery:
strb w22, [x19,5]
mul w0, w0, w2
cmp w1, w0
- beq .L2407
+ beq .L2412
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -14941,26 +14990,26 @@ ftl_open_sblk_recovery:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2407:
+.L2412:
add x0, x21, :lo12:.LANCHOR0
ldrh w3, [x19,10]
ldr x4, [x0,3872]
mov w0, 0
mov w2, w0
-.L2408:
+.L2413:
cmp w2, w3
- bcs .L2472
+ bcs .L2477
ldrh w1, [x19,12]
add w1, w2, w1
ldr w1, [x4,x1,lsl 2]
cmn w1, #1
- beq .L2409
+ beq .L2414
add w1, w0, 1
uxth w0, w1
-.L2409:
+.L2414:
add w2, w2, 1
- b .L2408
-.L2472:
+ b .L2413
+.L2477:
add x2, x21, :lo12:.LANCHOR0
ldrb w1, [x19,9]
sub w0, w0, w3
@@ -14968,7 +15017,7 @@ ftl_open_sblk_recovery:
madd w0, w1, w22, w0
uxth w22, w0
ldr w0, [x24,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2411
+ tbz x0, 12, .L2416
ldrh w1, [x19]
adrp x0, .LC180
ldr x4, [x2,600]
@@ -14977,7 +15026,7 @@ ftl_open_sblk_recovery:
mov w2, w22
ldrh w3, [x4,x3]
bl printk
-.L2411:
+.L2416:
add x0, x21, :lo12:.LANCHOR0
ldrh w1, [x19]
adrp x23, .LC181
@@ -14988,24 +15037,24 @@ ftl_open_sblk_recovery:
mov x0, x20
mov w22, 0
bl buf_free
-.L2412:
+.L2417:
add x2, x21, :lo12:.LANCHOR0
ldrb w0, [x2,3276]
cmp w22, w0, lsl 1
- bcs .L2473
- cbz w28, .L2413
+ bcs .L2478
+ cbz w28, .L2418
ldrh w0, [x19,6]
cmp w0, 1
- bls .L2413
+ bls .L2418
mov x0, x19
bl ftl_get_new_free_page
mov w26, w0
ldr w0, [x24,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2414
+ tbz x0, 12, .L2419
mov x0, x23
mov w1, w26
bl printk
-.L2414:
+.L2419:
add x3, x21, :lo12:.LANCHOR0
ldr x0, [x20,24]
ldr x1, [x3,2864]
@@ -15026,10 +15075,10 @@ ftl_open_sblk_recovery:
bl ftl_prog_ppa_page
ldrh w0, [x19]
bl ftl_vpn_decrement
-.L2413:
+.L2418:
add w22, w22, 1
- b .L2412
-.L2473:
+ b .L2417
+.L2478:
ldrh w1, [x2,3300]
ldrh w0, [x19,12]
ldrb w3, [x19,9]
@@ -15039,7 +15088,7 @@ ftl_open_sblk_recovery:
ldr x1, [x2,3872]
ldr w0, [x1,x0]
cmn w0, #1
- beq .L2416
+ beq .L2421
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -15048,21 +15097,21 @@ ftl_open_sblk_recovery:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2416:
+.L2421:
ldrh w0, [x19,6]
cmp w0, 1
- bne .L2386
+ bne .L2391
mov x0, x19
bl ftl_write_last_log_page
- b .L2386
-.L2471:
+ b .L2391
+.L2476:
ldr x0, [x1,2864]
ldr w2, [x2]
ldr w1, [x0,8]
cmp w2, w1
- bls .L2404
+ bls .L2409
str w2, [x0,8]
-.L2404:
+.L2409:
ldr x1, [x20,24]
ldrh w0, [x19,10]
ldrh w2, [x19,12]
@@ -15070,8 +15119,8 @@ ftl_open_sblk_recovery:
ldr w0, [x1,4]
ldr w1, [x1,8]
bl lpa_hash_update_ppa
- b .L2403
-.L2386:
+ b .L2408
+.L2391:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -15099,7 +15148,7 @@ pm_write_page:
adrp x25, .LANCHOR0
add x23, x23, :lo12:.LC0
add x22, x22, 496
-.L2475:
+.L2480:
add x2, x25, :lo12:.LANCHOR0
adrp x19, .LANCHOR0
ldr x0, [x2,2864]
@@ -15109,28 +15158,28 @@ pm_write_page:
str w1, [x0,48]
ldrh w1, [x2,3300]
cmp w3, w1
- bcs .L2476
+ bcs .L2481
ldrh w1, [x0,692]
mov w0, 65535
cmp w1, w0
- bne .L2477
-.L2476:
+ bne .L2482
+.L2481:
bl pm_alloc_new_blk
mov w0, 0
bl ftl_info_flush
-.L2477:
+.L2482:
add x0, x19, :lo12:.LANCHOR0
ldr x0, [x0,2864]
ldrh w1, [x0,692]
mov w0, 65535
cmp w1, w0
- bne .L2478
+ bne .L2483
mov x1, x22
mov w2, 230
mov x0, x23
bl printk
bl dump_stack
-.L2478:
+.L2483:
add x19, x19, :lo12:.LANCHOR0
adrp x20, .LANCHOR7
add x27, x20, :lo12:.LANCHOR7
@@ -15162,28 +15211,28 @@ pm_write_page:
uxth w2, w2
strh w2, [x1,696]
cmp w2, 1
- beq .L2479
+ beq .L2484
ldrb w2, [x27,-120]
- cbz w2, .L2480
-.L2479:
+ cbz w2, .L2485
+.L2484:
add x20, x20, :lo12:.LANCHOR7
strb wzr, [x20,-120]
- b .L2475
-.L2480:
+ b .L2480
+.L2485:
cmn w0, #1
- bne .L2482
+ bne .L2487
adrp x0, .LC182
mov w1, w26
add x0, x0, :lo12:.LC182
bl printk
- b .L2475
-.L2482:
+ b .L2480
+.L2487:
ldrh w0, [x1,698]
cmp w21, w0
- bcs .L2483
+ bcs .L2488
add x21, x1, x21, uxtw 2
str w26, [x21,704]
-.L2483:
+.L2488:
mov w0, 0
ldr x27, [sp,80]
ldp x19, x20, [sp,16]
@@ -15206,7 +15255,7 @@ flash_info_flush:
stp x23, x24, [sp,48]
stp x25, x26, [sp,64]
stp x27, x28, [sp,80]
- tbz x0, 12, .L2488
+ tbz x0, 12, .L2493
adrp x2, .LANCHOR3
adrp x0, .LC127
add x2, x2, :lo12:.LANCHOR3
@@ -15214,7 +15263,7 @@ flash_info_flush:
mov w1, 250
add x2, x2, 512
bl printk
-.L2488:
+.L2493:
adrp x22, .LANCHOR4
adrp x23, .LANCHOR0
add x0, x22, :lo12:.LANCHOR4
@@ -15239,7 +15288,7 @@ flash_info_flush:
ldr w1, [x19,8]
bl js_hash
str w0, [x19,12]
-.L2489:
+.L2494:
add x21, x22, :lo12:.LANCHOR4
add x27, x23, :lo12:.LANCHOR0
mov x0, x24
@@ -15253,7 +15302,7 @@ flash_info_flush:
ldrh w0, [x21,1242]
sub w1, w1, #1
cmp w0, w1
- blt .L2490
+ blt .L2495
ldr x1, [x27,728]
ldrb w19, [x21,1241]
strh wzr, [x21,1242]
@@ -15274,14 +15323,14 @@ flash_info_flush:
ldrh w0, [x27,2]
mul w19, w19, w0
mov w0, 0
- b .L2498
-.L2490:
+ b .L2503
+.L2495:
madd w19, w20, w28, w19
- cbnz w0, .L2491
-.L2498:
+ cbnz w0, .L2496
+.L2503:
mov w1, w19
bl flash_erase_block
-.L2491:
+.L2496:
add x2, x23, :lo12:.LANCHOR0
add x20, x22, :lo12:.LANCHOR4
mov w4, 4
@@ -15303,16 +15352,16 @@ flash_info_flush:
ldrh w1, [x20,1242]
add w1, w1, 1
strh w1, [x20,1242]
- bne .L2492
+ bne .L2497
mov x0, x25
mov w1, w19
bl printk
- b .L2489
-.L2492:
- cbnz w26, .L2499
+ b .L2494
+.L2497:
+ cbnz w26, .L2504
mov w26, 1
- b .L2489
-.L2499:
+ b .L2494
+.L2504:
mov w0, 0
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -15335,15 +15384,15 @@ nand_flash_init:
stp x23, x24, [sp,48]
ldr w0, [x20,#:lo12:.LANCHOR2]
str x25, [sp,64]
- tbz x0, 12, .L2501
+ tbz x0, 12, .L2506
adrp x2, .LANCHOR3
adrp x0, .LC127
add x2, x2, :lo12:.LANCHOR3
add x0, x0, :lo12:.LC127
- mov w1, 2239
+ mov w1, 2258
add x2, x2, 536
bl printk
-.L2501:
+.L2506:
adrp x21, .LANCHOR4
mov x0, x19
add x23, x21, :lo12:.LANCHOR4
@@ -15354,7 +15403,7 @@ nand_flash_init:
bl nandc_init
add x1, x20, :lo12:.LANCHOR2
mov w0, 1
- add x1, x1, 376
+ add x1, x1, 8
strb w0, [x22,633]
str x1, [x22,624]
add x0, x22, 736
@@ -15368,70 +15417,70 @@ nand_flash_init:
mov w2, 32
mov w23, 0
bl ftl_memset
-.L2507:
+.L2512:
mov w0, w23
mov x1, x22
bl flash_read_id
- cbnz w23, .L2502
+ cbnz w23, .L2507
ldrb w0, [x24]
sub w0, w0, #1
uxtb w0, w0
cmp w0, 253
- bls .L2503
-.L2505:
+ bls .L2508
+.L2510:
mov w22, -2
- b .L2574
-.L2503:
+ b .L2579
+.L2508:
ldrb w0, [x24,1]
cmp w0, 255
- beq .L2505
-.L2502:
+ beq .L2510
+.L2507:
ldrb w0, [x22]
cmp w0, 181
- bne .L2506
+ bne .L2511
strb w25, [x22]
-.L2506:
+.L2511:
add w23, w23, 1
add x22, x22, 8
uxtb w23, w23
cmp w23, 4
- bne .L2507
+ bne .L2512
add x23, x20, :lo12:.LANCHOR2
add x24, x19, :lo12:.LANCHOR0
add x23, x23, 440
mov w22, 0
add x24, x24, 748
-.L2510:
+.L2515:
ldrb w2, [x23]
add x0, x23, 1
mov x1, x24
bl flash_mem_cmp8
- cbnz w0, .L2508
+ cbnz w0, .L2513
add x1, x20, :lo12:.LANCHOR2
ubfiz x22, x22, 5, 32
add x0, x1, 440
adds x22, x0, x22
- beq .L2505
+ beq .L2510
ldrb w3, [x22,22]
mov x0, 0
- b .L2512
-.L2508:
+ b .L2517
+.L2513:
add w22, w22, 1
add x23, x23, 32
cmp w22, 36
- bne .L2510
- b .L2505
-.L2512:
+ bne .L2515
+ b .L2510
+.L2517:
add x4, x1, x0, lsl 5
mov w2, w0
ldrb w4, [x4,1592]
cmp w4, w3
- beq .L2511
+ beq .L2516
add x0, x0, 1
cmp x0, 4
- bne .L2512
+ bne .L2517
mov w2, w0
-.L2511:
+.L2516:
add x23, x20, :lo12:.LANCHOR2
add x24, x19, :lo12:.LANCHOR0
add x1, x23, 1592
@@ -15439,7 +15488,7 @@ nand_flash_init:
add x1, x1, x2
add x0, x24, 640
mov w2, 32
- add x23, x23, 376
+ add x23, x23, 8
bl ftl_memcpy
mov x0, x23
mov x1, x22
@@ -15447,32 +15496,32 @@ nand_flash_init:
bl ftl_memcpy
ldrb w0, [x24,516]
cmp w0, 8
- bhi .L2513
+ bhi .L2518
ldrb w1, [x23,20]
cmp w1, 60
- bls .L2514
+ bls .L2519
mov w1, 60
strb w1, [x23,20]
-.L2514:
+.L2519:
cmp w0, 8
- bne .L2513
+ bne .L2518
add x0, x19, :lo12:.LANCHOR0
ldrb w0, [x0,748]
cmp w0, 137
- beq .L2538
+ beq .L2543
cmp w0, 44
- beq .L2538
-.L2513:
+ beq .L2543
+.L2518:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2516
+ tbz x0, 12, .L2521
adrp x2, .LANCHOR3
adrp x0, .LC127
add x2, x2, :lo12:.LANCHOR3
add x0, x0, :lo12:.LC127
- mov w1, 2264
+ mov w1, 2283
add x2, x2, 536
bl printk
-.L2516:
+.L2521:
add x23, x21, :lo12:.LANCHOR4
mov w0, 16384
add x22, x19, :lo12:.LANCHOR0
@@ -15497,9 +15546,9 @@ nand_flash_init:
adrp x0, .LANCHOR7-119
strb wzr, [x0,#:lo12:.LANCHOR7-119]
bl flash_die_info_init
- ldrb w0, [x24,394]
+ ldrb w0, [x24,26]
bl flash_lsb_page_tbl_build
- ldrb w0, [x24,396]
+ ldrb w0, [x24,28]
bl nandc_bch_sel
str xzr, [x23,1224]
ldr x1, [x22,624]
@@ -15522,36 +15571,36 @@ nand_flash_init:
strb w2, [x22,3348]
strb w0, [x19,#:lo12:.LANCHOR0]
cmp w1, 9
- bne .L2517
+ bne .L2522
mov w1, 70
strb w1, [x22,632]
-.L2517:
+.L2522:
add x2, x20, :lo12:.LANCHOR2
add x1, x21, :lo12:.LANCHOR4
- add x2, x2, 376
+ add x2, x2, 8
add x3, x19, :lo12:.LANCHOR0
strb w0, [x1,1264]
ldrb w0, [x2,19]
ldrh w2, [x2,16]
strb w0, [x3,725]
- tbz x2, 6, .L2518
+ tbz x2, 6, .L2523
sub w2, w0, #17
uxtb w2, w2
cmp w2, 2
- bhi .L2519
+ bhi .L2524
adrp x0, micron_read_retrial
add x0, x0, :lo12:micron_read_retrial
str x0, [x1,1224]
mov w0, 15
- b .L2576
-.L2519:
+ b .L2581
+.L2524:
sub w2, w0, #65
uxtb w2, w2
cmp w2, 1
- bls .L2539
+ bls .L2544
cmp w0, 33
- bne .L2520
-.L2539:
+ bne .L2525
+.L2544:
add x0, x21, :lo12:.LANCHOR4
adrp x1, toshiba_read_retrial
add x1, x1, :lo12:toshiba_read_retrial
@@ -15561,8 +15610,8 @@ nand_flash_init:
strb w2, [x1,726]
mov w1, 7
strb w1, [x0,1216]
- b .L2518
-.L2520:
+ b .L2523
+.L2525:
sub w2, w0, #67
uxtb w2, w2
cmp w2, 1
@@ -15570,105 +15619,105 @@ nand_flash_init:
cset w3, ls
uxtb w2, w2
cmp w2, 1
- bls .L2540
- cbz w3, .L2522
-.L2540:
+ bls .L2545
+ cbz w3, .L2527
+.L2545:
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 .L2524
+ beq .L2529
cmp w0, 68
- beq .L2524
+ beq .L2529
mov w0, 7
strb w0, [x2,1216]
- b .L2525
-.L2524:
+ b .L2530
+.L2529:
add x0, x21, :lo12:.LANCHOR4
mov w1, 17
strb w1, [x0,1216]
-.L2525:
+.L2530:
add x0, x19, :lo12:.LANCHOR0
mov w1, 4
- cbnz w3, .L2577
+ cbnz w3, .L2582
mov w1, 5
-.L2577:
+.L2582:
strb w1, [x0,726]
- b .L2518
-.L2522:
+ b .L2523
+.L2527:
sub w0, w0, #36
uxtb w0, w0
cmp w0, 1
- bhi .L2518
+ bhi .L2523
adrp x0, toshiba_3d_read_retrial
add x0, x0, :lo12:toshiba_3d_read_retrial
str x0, [x1,1224]
mov w0, 7
-.L2576:
+.L2581:
strb w0, [x1,1216]
-.L2518:
+.L2523:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2527
+ tbz x0, 12, .L2532
adrp x2, .LANCHOR3
adrp x0, .LC127
add x2, x2, :lo12:.LANCHOR3
add x0, x0, :lo12:.LC127
- mov w1, 2312
+ mov w1, 2331
add x2, x2, 536
bl printk
-.L2527:
+.L2532:
add x0, x19, :lo12:.LANCHOR0
strb wzr, [x0,672]
ldrb w0, [x0,780]
- tbz x0, 0, .L2528
+ tbz x0, 0, .L2533
mov w0, 4
bl nandc_set_if_mode
mov w0, 1
bl flash_set_interface_mode
mov w0, 1
- b .L2578
-.L2528:
+ b .L2583
+.L2533:
mov w0, 4
-.L2578:
+.L2583:
bl nandc_set_if_mode
bl flash_info_blk_init
cmn w0, #1
mov w22, w0
- bne .L2530
+ bne .L2535
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2531
+ tbz x0, 12, .L2536
adrp x2, .LANCHOR3
adrp x0, .LC127
add x2, x2, :lo12:.LANCHOR3
add x0, x0, :lo12:.LC127
- mov w1, 2347
+ mov w1, 2352
add x2, x2, 536
bl printk
-.L2531:
+.L2536:
add x19, x19, :lo12:.LANCHOR0
mov w1, 17
ldr x0, [x19,728]
strb w1, [x0,32]
- b .L2574
-.L2530:
+ b .L2579
+.L2535:
add x0, x19, :lo12:.LANCHOR0
ldrb w0, [x0,725]
sub w0, w0, #1
uxtb w0, w0
cmp w0, 6
- bhi .L2532
+ bhi .L2537
add x0, x21, :lo12:.LANCHOR4
adrp x1, hynix_read_retrial
add x1, x1, :lo12:hynix_read_retrial
str x1, [x0,1224]
-.L2532:
+.L2537:
add x19, x19, :lo12:.LANCHOR0
ldrb w0, [x19,780]
- tbz x0, 2, .L2534
+ tbz x0, 2, .L2539
ldr x0, [x19,728]
ldrb w0, [x0,19]
- cbz w0, .L2534
+ cbz w0, .L2539
add x21, x21, :lo12:.LANCHOR4
ldrh w1, [x19,2]
mov w0, 0
@@ -15676,33 +15725,33 @@ nand_flash_init:
mul w1, w2, w1
bl flash_ddr_para_scan
ldrb w0, [x19,672]
- cbnz w0, .L2534
+ cbnz w0, .L2539
ldr x1, [x19,728]
strb w0, [x1,19]
bl flash_info_flush
-.L2534:
+.L2539:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2536
+ tbz x0, 12, .L2541
adrp x2, .LANCHOR3
adrp x0, .LC127
add x2, x2, :lo12:.LANCHOR3
add x0, x0, :lo12:.LC127
- mov w1, 2404
+ mov w1, 2409
add x2, x2, 536
bl printk
-.L2536:
+.L2541:
bl nand_flash_print_info
mov w22, 0
- b .L2574
-.L2538:
+ b .L2579
+.L2543:
add x0, x20, :lo12:.LANCHOR2
- add x0, x0, 376
+ add x0, x0, 8
ldrb w1, [x0,28]
cmp w1, 3
- bne .L2513
+ bne .L2518
strb wzr, [x0,28]
- b .L2513
-.L2574:
+ b .L2518
+.L2579:
mov w0, w22
ldr x25, [sp,64]
ldp x19, x20, [sp,16]
@@ -15736,11 +15785,11 @@ ftl_sysblk_dump:
add x22, x22, :lo12:.LC186
add x23, x23, :lo12:.LC187
add x24, x24, 704
-.L2580:
+.L2585:
add x3, x28, :lo12:.LANCHOR0
ldrh w1, [x3,3300]
cmp w1, w19
- bls .L2592
+ bls .L2597
ldrh w21, [x3,3350]
ldr x1, [x27,8]
ldr x2, [x27,24]
@@ -15776,19 +15825,19 @@ ftl_sysblk_dump:
mov w3, 32
bl rknand_print_hex
cmp w26, 512
- beq .L2585
+ beq .L2590
cmn w26, #1
- bne .L2581
-.L2585:
+ bne .L2586
+.L2590:
mov w20, 1
-.L2581:
+.L2586:
add w19, w19, 1
uxth w19, w19
- b .L2580
-.L2592:
+ b .L2585
+.L2597:
mov x0, x27
bl buf_free
- cbz w20, .L2584
+ cbz w20, .L2589
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -15797,7 +15846,7 @@ ftl_sysblk_dump:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2584:
+.L2589:
sub sp, x29, #48
mov w0, w20
ldp x19, x20, [sp,64]
@@ -15937,10 +15986,10 @@ pm_ppa_update_check:
ubfx x3, x3, 5, 3
cmp w3, 7
cset w4, eq
- cbnz w4, .L2598
+ cbnz w4, .L2603
cmp w3, w7
- bne .L2595
-.L2598:
+ bne .L2600
+.L2603:
mov w3, w2
mov w2, w1
mov x1, x0
@@ -15949,7 +15998,7 @@ pm_ppa_update_check:
bl printk
bl dump_ftl_info
mov w4, -1
-.L2595:
+.L2600:
mov w0, w4
ldp x29, x30, [sp], 16
ret
@@ -15965,7 +16014,7 @@ load_l2p_region:
stp x19, x20, [sp,16]
cmp w22, 31
uxth w20, w0
- bls .L2601
+ bls .L2606
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -15974,14 +16023,14 @@ load_l2p_region:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2601:
+.L2606:
adrp x21, .LANCHOR0
adrp x19, .LANCHOR7
add x21, x21, :lo12:.LANCHOR0
ldr x0, [x21,2864]
ldrh w2, [x0,698]
cmp w20, w2
- bls .L2602
+ bls .L2607
adrp x0, .LC200
mov w1, w20
add x0, x0, :lo12:.LC200
@@ -15995,15 +16044,15 @@ load_l2p_region:
ldr x0, [x21,2864]
ldrh w0, [x0,698]
cmp w0, w20
- bcs .L2604
+ bcs .L2609
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
add x0, x0, :lo12:.LC0
add x1, x1, 568
mov w2, 35
- b .L2608
-.L2602:
+ b .L2613
+.L2607:
add x0, x0, x20, sxtw 2
sbfiz x22, x22, 4, 32
ldr w4, [x0,704]
@@ -16011,7 +16060,7 @@ load_l2p_region:
add x23, x0, x22
strh w20, [x0,x22]
strh wzr, [x23,2]
- cbnz w4, .L2605
+ cbnz w4, .L2610
adrp x0, .LC201
mov w1, w20
mov w2, w4
@@ -16022,8 +16071,8 @@ load_l2p_region:
mov w1, 255
ldrh w2, [x19,-118]
bl ftl_memset
- b .L2604
-.L2605:
+ b .L2609
+.L2610:
add x22, x19, :lo12:.LANCHOR7
ldrb w3, [x21,2832]
ldr x1, [x23,8]
@@ -16036,7 +16085,7 @@ load_l2p_region:
ldr x4, [x29,72]
ldr w2, [x0]
cmp w2, w20
- beq .L2606
+ beq .L2611
adrp x0, .LC202
mov w1, w20
add x0, x0, :lo12:.LC202
@@ -16061,22 +16110,22 @@ load_l2p_region:
mov w2, 4
mov w3, 16
bl rknand_print_hex
-.L2606:
+.L2611:
add x19, x19, :lo12:.LANCHOR7
ldr x0, [x19,-128]
ldr w0, [x0]
cmp w0, w20
- beq .L2604
+ beq .L2609
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
add x0, x0, :lo12:.LC0
add x1, x1, 568
mov w2, 59
-.L2608:
+.L2613:
bl printk
bl dump_stack
-.L2604:
+.L2609:
mov w0, 0
ldr x23, [sp,48]
ldp x19, x20, [sp,16]
@@ -16103,19 +16152,19 @@ pm_gc:
ldrh w0, [x19,1164]
sub w0, w0, #1
cmp w1, w0
- blt .L2611
+ blt .L2616
bl pm_free_sblk
ldr x2, [x20,2864]
ldrh w1, [x19,1164]
ldrh w3, [x2,688]
sub w1, w1, #1
cmp w3, w1
- blt .L2611
+ blt .L2616
add x0, x2, x0, uxth 1
ldrh w21, [x0,416]
mov w0, 65535
cmp w21, w0
- bne .L2613
+ bne .L2618
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -16128,7 +16177,7 @@ pm_gc:
ldr x1, [x20,2864]
add x0, x1, x0, uxth 1
ldrh w21, [x0,416]
-.L2613:
+.L2618:
bl pm_select_ram_region
uxth x20, w0
add x0, x23, :lo12:.LANCHOR0
@@ -16139,27 +16188,27 @@ pm_gc:
ldrh w0, [x0,x1]
mov w1, 65535
cmp w0, w1
- beq .L2614
+ beq .L2619
ldr x1, [x19,8]
- cbz x1, .L2614
+ cbz x1, .L2619
ldrsh w2, [x19,2]
- tbz w2, #31, .L2614
+ tbz w2, #31, .L2619
bl pm_write_page
ldrh w0, [x19,2]
and w0, w0, 32767
strh w0, [x19,2]
-.L2614:
+.L2619:
add x23, x23, :lo12:.LANCHOR0
mov w19, 0
add x0, x23, 3904
mov w24, 21
mov w25, 1
add x20, x0, x20, lsl 4
-.L2615:
+.L2620:
ldr x0, [x23,2864]
ldrh w1, [x0,698]
cmp w1, w19
- bls .L2621
+ bls .L2626
ldrh w1, [x23,3340]
add x0, x0, x19, sxtw 2
ldr w0, [x0,704]
@@ -16171,7 +16220,7 @@ pm_gc:
ldrb w0, [x23,3338]
udiv w1, w1, w0
cmp w21, w1, uxth
- bne .L2616
+ bne .L2621
mov w1, w22
mov w0, w19
bl load_l2p_region
@@ -16180,13 +16229,13 @@ pm_gc:
bl pm_write_page
mov w0, -1
strh w0, [x20]
-.L2616:
+.L2621:
add w19, w19, 1
uxth w19, w19
- b .L2615
-.L2621:
+ b .L2620
+.L2626:
bl pm_free_sblk
-.L2611:
+.L2616:
mov w0, 0
ldr x25, [sp,64]
ldp x19, x20, [sp,16]
@@ -16214,10 +16263,10 @@ pm_flush_id:
and w0, w0, 32767
strh w0, [x20,2]
ldr w0, [x19,3896]
- cbz w0, .L2623
+ cbz w0, .L2628
bl pm_gc
str wzr, [x19,3896]
-.L2623:
+.L2628:
mov w0, 0
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 32
@@ -16234,16 +16283,16 @@ pm_flush:
mov x19, 0
add x20, x20, :lo12:.LANCHOR0
add x20, x20, 3904
-.L2629:
+.L2634:
add x1, x20, x19, lsl 4
uxth w0, w19
ldrsh w1, [x1,2]
- tbz w1, #31, .L2628
+ tbz w1, #31, .L2633
bl pm_flush_id
-.L2628:
+.L2633:
add x19, x19, 1
cmp x19, 32
- bne .L2629
+ bne .L2634
mov w0, 0
ldp x19, x20, [sp,16]
ldp x29, x30, [sp], 32
@@ -16300,19 +16349,19 @@ pm_init:
mov w24, -1
str x0, [x22,-128]
add x22, x20, 512
-.L2635:
+.L2640:
strh w24, [x20]
strh wzr, [x20,2]
- cbz w23, .L2634
+ cbz w23, .L2639
add x0, x19, :lo12:.LANCHOR0
ldrb w0, [x0,2832]
lsl w0, w0, 9
bl ftl_malloc
str x0, [x20,8]
-.L2634:
+.L2639:
add x20, x20, 16
cmp x20, x22
- bne .L2635
+ bne .L2640
add x20, x19, :lo12:.LANCHOR0
add x21, x21, :lo12:.LANCHOR7
mov w4, 4
@@ -16329,7 +16378,7 @@ pm_init:
mov w24, w21
ldrh w2, [x1,696]
cmp w2, w21
- bgt .L2636
+ bgt .L2641
adrp x0, .LC206
ldrh w1, [x1,692]
mov w3, w21
@@ -16340,9 +16389,9 @@ pm_init:
add x26, x26, :lo12:.LC207
ldr x0, [x20,2864]
ldrsh w20, [x0,696]
-.L2637:
+.L2642:
cmp w20, w21
- bge .L2650
+ bge .L2655
add x27, x19, :lo12:.LANCHOR0
mov x2, x23
mov x3, x25
@@ -16365,36 +16414,43 @@ pm_init:
ldr w1, [x25]
bl printk
cmp w28, 512
- beq .L2638
+ beq .L2643
cmn w28, #1
- beq .L2638
+ beq .L2643
ldr x1, [x27,2864]
ldr w0, [x25]
ldrh w2, [x1,698]
cmp w0, w2
- bcs .L2638
+ bcs .L2643
add x0, x1, x0, uxtw 2
str w22, [x0,704]
-.L2638:
+.L2643:
add w20, w20, 1
sxth w20, w20
- b .L2637
-.L2650:
- add x19, x19, :lo12:.LANCHOR0
+ b .L2642
+.L2655:
adrp x0, .LANCHOR5+577
mov w1, 1
add w24, w24, 1
strb w1, [x0,#:lo12:.LANCHOR5+577]
- ldr x0, [x19,2864]
+ add x0, x19, :lo12:.LANCHOR0
+ ldr x0, [x0,2864]
strh w24, [x0,696]
bl pm_free_sblk
+.L2641:
+ add x19, x19, :lo12:.LANCHOR0
+ mov w0, -1
+ ldr x1, [x19,3912]
+ bl pm_write_page
+ ldr x1, [x19,3912]
+ mov w0, -1
+ bl pm_write_page
ldr x1, [x19,3912]
mov w0, -1
bl pm_write_page
ldr x1, [x19,3912]
mov w0, -1
bl pm_write_page
-.L2636:
bl pm_free_sblk
bl pm_gc
mov w0, 0
@@ -16432,28 +16488,30 @@ pm_log2phys:
uxth w25, w20
msub w24, w25, w24, w0
uxth x24, w24
- bcc .L2663
+ bcc .L2669
adrp x0, .LC208
mov w1, w5
add x0, x0, :lo12:.LC208
bl printk
mov w0, -1
- b .L2653
-.L2667:
+ cbnz w23, .L2658
+ str w0, [x22]
+ b .L2658
+.L2673:
ldrh w0, [x3]
cmp w0, w25
- beq .L2655
-.L2654:
+ beq .L2660
+.L2659:
add w19, w19, 1
add x3, x3, 16
uxth x19, w19
cmp w19, 32
- beq .L2666
-.L2663:
+ beq .L2672
+.L2669:
ldr x0, [x3,8]
- cbnz x0, .L2667
- b .L2654
-.L2666:
+ cbnz x0, .L2673
+ b .L2659
+.L2672:
bl pm_select_ram_region
uxth x19, w0
add x2, x21, :lo12:.LANCHOR0
@@ -16464,21 +16522,21 @@ pm_log2phys:
ldrh w3, [x2,x3]
mov w2, 65535
cmp w3, w2
- bne .L2668
-.L2659:
+ bne .L2674
+.L2664:
adrp x0, .LANCHOR7-116
strb w19, [x0,#:lo12:.LANCHOR7-116]
mov w0, w25
bl load_l2p_region
-.L2655:
- cbnz w23, .L2656
+.L2660:
+ cbnz w23, .L2661
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 .L2657
-.L2656:
+ b .L2662
+.L2661:
add x0, x21, :lo12:.LANCHOR0
ldr w2, [x22]
add x0, x0, 3904
@@ -16490,7 +16548,7 @@ pm_log2phys:
strh w1, [x0,2]
adrp x0, .LANCHOR4+64
strb w20, [x0,#:lo12:.LANCHOR4+64]
-.L2657:
+.L2662:
add x21, x21, :lo12:.LANCHOR0
mov w2, 32767
add x21, x21, 3904
@@ -16499,18 +16557,18 @@ pm_log2phys:
ldrh w1, [x19,2]
and w3, w1, 32767
cmp w3, w2
- beq .L2653
+ beq .L2658
add w1, w1, 1
strh w1, [x19,2]
- b .L2653
-.L2668:
+ b .L2658
+.L2674:
ldrsh w2, [x4,2]
- tbz w2, #31, .L2659
+ tbz w2, #31, .L2664
str x1, [x29,88]
bl pm_flush_id
ldr x1, [x29,88]
- b .L2659
-.L2653:
+ b .L2664
+.L2658:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -16544,7 +16602,7 @@ gc_recovery:
add x22, x21, 80
cmp w1, w0
ldr x0, [x24,608]
- beq .L2670
+ beq .L2676
mov w1, -1
strh w1, [x0,130]
mov w0, 1
@@ -16559,37 +16617,37 @@ gc_recovery:
ldrb w1, [x24,3257]
str w0, [x29,152]
cmp w1, 3
- bne .L2671
+ bne .L2677
ldrh w1, [x24,3300]
sub w1, w1, #1
add w0, w1, w0
orr w0, w0, 50331648
- b .L2714
-.L2671:
+ b .L2720
+.L2677:
cmp w1, 2
- bne .L2672
+ bne .L2678
ldrh w1, [x24,3300]
add w0, w0, w1, lsl 1
sub w0, w0, #1
orr w0, w0, 33554432
-.L2714:
+.L2720:
str w0, [x19,40]
-.L2672:
+.L2678:
mov x0, x19
mov w1, 1
bl sblk_read_page
ldr w0, [x19,52]
cmp w0, 512
- beq .L2673
+ beq .L2679
cmn w0, #1
- beq .L2673
+ beq .L2679
ldr x0, [x19,24]
ldr w1, [x0]
mov w0, 15555
movk w0, 0xf55f, lsl 16
cmp w1, w0
- beq .L2674
-.L2673:
+ beq .L2680
+.L2679:
mov x0, x19
bl buf_free
ldr x7, [x19,24]
@@ -16610,8 +16668,8 @@ gc_recovery:
ldr w6, [x6,12]
ldr w7, [x7]
bl printk
- b .L2717
-.L2674:
+ b .L2723
+.L2680:
add x24, x20, :lo12:.LANCHOR0
ldr x0, [x29,136]
ldr x1, [x19,8]
@@ -16633,28 +16691,28 @@ gc_recovery:
ldrb w26, [x24,3257]
ldrh w25, [x24,3300]
cmp w26, 2
- bne .L2676
+ bne .L2682
lsl w25, w25, 1
mov w26, 1
-.L2676:
+.L2682:
mov w23, 0
adrp x24, .LC210
add x0, x24, :lo12:.LC210
mov w27, w23
str x0, [x29,112]
- b .L2677
-.L2719:
+ b .L2683
+.L2725:
ldr x0, [x0,1144]
ldr w1, [x0,x12]
ldr w0, [x7,8]
cmp w1, w0
- bne .L2681
-.L2704:
+ bne .L2687
+.L2710:
add w27, w27, 1
add w28, w28, 1
-.L2685:
+.L2691:
cmp w28, w26
- bhi .L2718
+ bhi .L2724
ldr x0, [x29,128]
add x1, x20, :lo12:.LANCHOR0
add x0, x0, 8
@@ -16664,10 +16722,10 @@ gc_recovery:
cmp w1, 3
mul w0, w0, w2
str w0, [x29,152]
- bne .L2678
+ bne .L2684
add w0, w0, w23
orr w0, w0, w28, lsl 24
-.L2715:
+.L2721:
str w0, [x19,40]
mov w1, 1
mov x0, x19
@@ -16680,8 +16738,8 @@ gc_recovery:
ldr x1, [x0,1136]
ldr w3, [x1,x12]
cmp w3, w6
- beq .L2719
-.L2681:
+ beq .L2725
+.L2687:
ldr x0, [x29,136]
str x12, [x29,104]
add x13, x0, :lo12:.LANCHOR4
@@ -16701,10 +16759,10 @@ gc_recovery:
ldr x0, [x13,1136]
ldr w0, [x0,x12]
cmn w0, #1
- beq .L2704
+ beq .L2710
mov x0, x19
bl buf_free
-.L2717:
+.L2723:
add x0, x20, :lo12:.LANCHOR0
ldrh w2, [x21,80]
mov w28, 0
@@ -16713,38 +16771,38 @@ gc_recovery:
ldr x0, [x0,608]
ldrh w1, [x21,80]
strh w1, [x0,130]
- b .L2675
-.L2684:
+ b .L2681
+.L2690:
add w23, w23, 1
-.L2677:
+.L2683:
cmp w23, w25
- beq .L2686
+ beq .L2692
sub w0, w23, #1
mov w24, 0
str w0, [x29,124]
-.L2687:
+.L2693:
ldrb w0, [x22,9]
cmp w24, w0
- bge .L2684
+ bge .L2690
sxtw x0, w24
mov w28, 1
str x0, [x29,128]
- b .L2685
-.L2678:
+ b .L2691
+.L2684:
cmp w1, 2
- bne .L2680
+ bne .L2686
ldr w1, [x29,124]
add w0, w0, w1
add w0, w0, w28
orr w0, w0, 33554432
- b .L2715
-.L2680:
+ b .L2721
+.L2686:
add w0, w0, w23
- b .L2715
-.L2718:
+ b .L2721
+.L2724:
add w24, w24, 1
- b .L2687
-.L2686:
+ b .L2693
+.L2692:
mov x0, x19
mov w28, 0
mov w27, w28
@@ -16757,22 +16815,22 @@ gc_recovery:
ldrh w0, [x0,3274]
mul w0, w1, w0
strh w0, [x2,x3,lsl 1]
-.L2688:
+.L2694:
cmp w27, w25
- beq .L2699
+ beq .L2705
sub w0, w27, #1
mov w24, 0
str w0, [x29,104]
-.L2700:
+.L2706:
ldrb w0, [x22,9]
cmp w24, w0
- bge .L2697
+ bge .L2703
sxtw x0, w24
mov w23, 1
str x0, [x29,112]
-.L2698:
+.L2704:
cmp w23, w26
- bhi .L2720
+ bhi .L2726
ldr x1, [x29,136]
ldr w0, [x29,128]
add x1, x1, :lo12:.LANCHOR4
@@ -16780,7 +16838,7 @@ gc_recovery:
ldr x2, [x1,1136]
ldr w6, [x2,x0]
cmn w6, #1
- beq .L2689
+ beq .L2695
ldr x1, [x1,1144]
str x6, [x29,96]
ldr w0, [x1,x0]
@@ -16790,13 +16848,13 @@ gc_recovery:
str w0, [x29,156]
cmn w0, #1
ldr x6, [x29,96]
- bne .L2690
+ bne .L2696
mov w0, w6
add x1, x29, 156
mov w2, 0
bl pm_log2phys
ldr x6, [x29,96]
-.L2690:
+.L2696:
ldr x0, [x29,112]
add x0, x0, 8
ldrh w1, [x22,x0,lsl 1]
@@ -16805,21 +16863,21 @@ gc_recovery:
ldrb w0, [x0,3257]
cmp w0, 3
mul w1, w1, w2
- bne .L2691
+ bne .L2697
add w1, w1, w27
orr w1, w1, w23, lsl 24
- b .L2716
-.L2691:
+ b .L2722
+.L2697:
cmp w0, 2
- bne .L2693
+ bne .L2699
ldr w0, [x29,104]
add w1, w1, w0
add w1, w1, w23
orr w1, w1, 33554432
- b .L2716
-.L2693:
+ b .L2722
+.L2699:
add w1, w1, w27
-.L2716:
+.L2722:
add x0, x20, :lo12:.LANCHOR0
ldr w2, [x29,124]
str w1, [x29,152]
@@ -16837,19 +16895,19 @@ gc_recovery:
ldr w1, [x29,124]
cmp w0, w1
uxth x19, w19
- bne .L2694
+ bne .L2700
mov w0, w6
add x1, x29, 152
add w28, w28, 1
bl pm_log2phys
mov w0, w19
bl ftl_vpn_decrement
- b .L2695
-.L2694:
+ b .L2701
+.L2700:
ldr w1, [x29,152]
cmp w0, w1
csinc w28, w28, w28, ne
-.L2695:
+.L2701:
ldr w0, [x29,128]
add x1, x20, :lo12:.LANCHOR0
add w0, w0, 1
@@ -16858,29 +16916,29 @@ gc_recovery:
add x0, x0, x19, lsl 2
ldrb w0, [x0,2]
ands w0, w0, 224
- bne .L2689
+ bne .L2695
lsl x19, x19, 1
ldr x1, [x1,600]
ldrh w2, [x1,x19]
- cbz w2, .L2689
+ cbz w2, .L2695
strh w0, [x1,x19]
-.L2689:
+.L2695:
add w23, w23, 1
- b .L2698
-.L2720:
+ b .L2704
+.L2726:
add w24, w24, 1
- b .L2700
-.L2697:
+ b .L2706
+.L2703:
add w27, w27, 1
- b .L2688
-.L2699:
+ b .L2694
+.L2705:
add x0, x20, :lo12:.LANCHOR0
ldrh w1, [x21,80]
ldr x0, [x0,600]
strh w28, [x0,x1,lsl 1]
ldrh w0, [x21,80]
bl zftl_insert_data_list
-.L2675:
+.L2681:
ldrh w1, [x21,80]
adrp x0, .LC211
mov w2, w28
@@ -16895,9 +16953,9 @@ gc_recovery:
ldr x0, [x0,608]
ldrh w0, [x0,130]
cmp w0, w1
- beq .L2701
+ beq .L2707
bl ftl_free_sblk
-.L2701:
+.L2707:
add x20, x20, :lo12:.LANCHOR0
mov w0, -1
ldr x1, [x20,2864]
@@ -16906,15 +16964,15 @@ gc_recovery:
strh w0, [x1,130]
mov w0, 0
bl ftl_info_flush
- b .L2669
-.L2670:
+ b .L2675
+.L2676:
ldrh w0, [x0,130]
cmp w0, w1
- beq .L2669
+ beq .L2675
ldr x1, [x24,2864]
ldrh w1, [x1,126]
cmp w1, w0
- bne .L2703
+ bne .L2709
bl pm_flush
ldr x0, [x24,608]
ldrh w0, [x0,130]
@@ -16924,12 +16982,12 @@ gc_recovery:
strh w1, [x0,126]
mov w0, 0
bl ftl_info_flush
-.L2703:
+.L2709:
add x20, x20, :lo12:.LANCHOR0
mov w1, -1
ldr x0, [x20,608]
strh w1, [x0,130]
-.L2669:
+.L2675:
sub sp, x29, #32
ldp x19, x20, [sp,48]
ldp x21, x22, [sp,64]
@@ -16975,12 +17033,12 @@ zftl_init:
strb w6, [x20,3352]
ldrh w4, [x20,2]
strh w4, [x20,3350]
- ldrb w2, [x1,389]
- ldrb w8, [x1,388]
- ldrh w3, [x1,386]
+ ldrb w2, [x1,21]
+ ldrb w8, [x1,20]
+ ldrh w3, [x1,18]
mul w6, w2, w6
- ldrb w0, [x1,385]
- ldrh w7, [x1,390]
+ ldrb w0, [x1,17]
+ ldrh w7, [x1,22]
mov w1, 0
sdiv w9, w3, w8
strb w2, [x20,3338]
@@ -16995,14 +17053,14 @@ zftl_init:
strh w7, [x20,576]
mov x20, x11
strh w10, [x23,-118]
-.L2722:
+.L2728:
cmp w2, w4
- bhi .L2788
+ bhi .L2794
add w1, w1, 1
lsl w2, w2, 1
uxth w1, w1
- b .L2722
-.L2788:
+ b .L2728
+.L2794:
mul w3, w0, w3
add x2, x19, :lo12:.LANCHOR0
sub w1, w1, #1
@@ -17011,14 +17069,14 @@ zftl_init:
mov w1, 1
lsr w4, w5, 21
mov w2, 0
-.L2724:
+.L2730:
cmp w1, w4
- bhi .L2789
+ bhi .L2795
add w2, w2, 1
lsl w1, w1, 1
uxth w2, w2
- b .L2724
-.L2789:
+ b .L2730
+.L2795:
mov w1, 57344
mov w4, 1
movk w1, 0x1c, lsl 16
@@ -17055,10 +17113,10 @@ zftl_init:
lsr w0, w7, 4
strh w0, [x4,3306]
cmp w0, 79
- bhi .L2726
+ bhi .L2732
mov w0, 80
strh w0, [x4,3306]
-.L2726:
+.L2732:
add x0, x19, :lo12:.LANCHOR0
mov w2, 2000
mov w3, 256
@@ -17072,10 +17130,10 @@ zftl_init:
strh w3, [x2,1162]
mov w2, 32
strh w2, [x0,592]
- beq .L2727
+ beq .L2733
ldrb w0, [x0,3272]
- cbz w0, .L2728
-.L2727:
+ cbz w0, .L2734
+.L2733:
add x0, x19, :lo12:.LANCHOR0
mov w2, 150
mov w3, 64
@@ -17085,84 +17143,84 @@ zftl_init:
mov w3, 12
strh w3, [x0,592]
ldrb w3, [x19,#:lo12:.LANCHOR0]
- cbnz w3, .L2728
+ cbnz w3, .L2734
mov w3, 4
strh w3, [x0,592]
mov w3, 600
strh w3, [x0,3346]
mov w0, 128
strh w0, [x2,1160]
-.L2728:
+.L2734:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2730
+ tbz x0, 12, .L2736
adrp x0, .LC212
add x0, x0, :lo12:.LC212
bl printk
-.L2730:
+.L2736:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2731
+ tbz x0, 12, .L2737
add x1, x19, :lo12:.LANCHOR0
adrp x0, .LC213
add x0, x0, :lo12:.LC213
ldr w1, [x1,2836]
bl printk
-.L2731:
+.L2737:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2732
+ tbz x0, 12, .L2738
add x1, x19, :lo12:.LANCHOR0
adrp x0, .LC214
add x0, x0, :lo12:.LC214
ldr w1, [x1,2840]
bl printk
-.L2732:
+.L2738:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2733
+ tbz x0, 12, .L2739
add x1, x21, :lo12:.LANCHOR7
adrp x0, .LC215
add x0, x0, :lo12:.LC215
ldr w1, [x1,-108]
bl printk
-.L2733:
+.L2739:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2734
+ tbz x0, 12, .L2740
add x1, x21, :lo12:.LANCHOR7
adrp x0, .LC216
add x0, x0, :lo12:.LC216
ldrh w1, [x1,-104]
bl printk
-.L2734:
+.L2740:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2735
+ tbz x0, 12, .L2741
add x1, x21, :lo12:.LANCHOR7
adrp x0, .LC217
add x0, x0, :lo12:.LC217
ldrh w1, [x1,-118]
bl printk
-.L2735:
+.L2741:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2736
+ tbz x0, 12, .L2742
add x22, x22, :lo12:.LANCHOR4
adrp x0, .LC218
add x0, x0, :lo12:.LC218
ldrh w1, [x22,1164]
bl printk
-.L2736:
+.L2742:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2737
+ tbz x0, 12, .L2743
add x1, x19, :lo12:.LANCHOR0
adrp x0, .LC219
add x0, x0, :lo12:.LC219
ldrh w1, [x1,3306]
bl printk
-.L2737:
+.L2743:
ldr w0, [x20,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2738
+ tbz x0, 12, .L2744
add x1, x19, :lo12:.LANCHOR0
adrp x0, .LC220
add x0, x0, :lo12:.LC220
ldrh w1, [x1,3308]
bl printk
-.L2738:
+.L2744:
add x22, x19, :lo12:.LANCHOR0
bl buf_init
mov w0, 6
@@ -17191,11 +17249,11 @@ zftl_init:
ldr w0, [x20,#:lo12:.LANCHOR2]
add x1, x2, x1, sxtw 2
str x1, [x22,608]
- tbz x0, 12, .L2739
+ tbz x0, 12, .L2745
adrp x0, .LC221
add x0, x0, :lo12:.LC221
bl printk
-.L2739:
+.L2745:
add x2, x19, :lo12:.LANCHOR0
add x3, x21, :lo12:.LANCHOR7
ldrh w0, [x2,3300]
@@ -17210,28 +17268,28 @@ zftl_init:
add w24, w24, 704
lsl w22, w22, 1
add w22, w22, 632
- tbz x0, 12, .L2740
+ tbz x0, 12, .L2746
adrp x0, .LC222
ldrh w3, [x3,-118]
add x0, x0, :lo12:.LC222
mov w1, w22
mov w2, w24
bl printk
-.L2740:
+.L2746:
add x21, x21, :lo12:.LANCHOR7
ldrh w0, [x21,-118]
cmp w22, w0
- bhi .L2742
+ bhi .L2748
cmp w24, w0
- bls .L2741
-.L2742:
-.L2743:
- b .L2743
-.L2741:
+ bls .L2747
+.L2748:
+.L2749:
+ b .L2749
+.L2747:
bl sblk_init
bl ftl_info_blk_init
cmn w0, #1
- beq .L2744
+ beq .L2750
bl ftl_ext_info_init
add x19, x19, :lo12:.LANCHOR0
mov w0, 1
@@ -17264,18 +17322,18 @@ zftl_init:
mov w0, 1
bl ftl_total_vpn_update
ldrb w0, [x23,577]
- cbz w0, .L2745
+ cbz w0, .L2751
ldr x1, [x19,2864]
ldr w0, [x1,68]
add w0, w0, 1
str w0, [x1,68]
-.L2745:
+.L2751:
bl ftl_ext_info_flush
mov w0, 0
bl ftl_info_flush
bl print_ftl_debug_info
mov w0, 0
-.L2744:
+.L2750:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -17301,11 +17359,11 @@ rk_ftl_init:
strb wzr, [x21,-102]
bl ftl_malloc
str x0, [x19,1176]
- cbnz x0, .L2791
-.L2793:
+ cbnz x0, .L2797
+.L2799:
mov w0, -1
- b .L2792
-.L2791:
+ b .L2798
+.L2797:
mov w0, 2048
bl ftl_malloc
str x0, [x21,-96]
@@ -17315,7 +17373,7 @@ rk_ftl_init:
str xzr, [x1,-88]!
bl rknand_get_reg_addr
ldr x0, [x19,1184]
- cbz x0, .L2793
+ cbz x0, .L2799
bl rk_nandc_irq_init
mov w1, 0
ldr x0, [x21,-96]
@@ -17375,14 +17433,14 @@ rk_ftl_init:
ldr x0, [x19,1184]
bl nand_flash_init
mov w22, w0
- cbnz w0, .L2794
+ cbnz w0, .L2800
bl zftl_init
mov w19, w0
bl zftl_proc_debug_init
mov w0, 1
strb w0, [x21,-102]
- b .L2795
-.L2794:
+ b .L2801
+.L2800:
ldr x1, [x19,1176]
adrp x2, ftl_read_flash_info
add x2, x2, :lo12:ftl_read_flash_info
@@ -17437,10 +17495,10 @@ rk_ftl_init:
mov w19, w0
cmn w22, #2
adrp x22, .LANCHOR2
- bne .L2796
+ bne .L2802
add x21, x22, :lo12:.LANCHOR2
adrp x1, gNandParaInfo
- add x21, x21, 376
+ add x21, x21, 8
add x1, x1, :lo12:gNandParaInfo
mov w2, 32
mov x0, x21
@@ -17449,22 +17507,22 @@ rk_ftl_init:
bl flash_lsb_page_tbl_build
ldrh w0, [x21,10]
strh w0, [x21,26]
-.L2796:
+.L2802:
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 .L2797
+ bne .L2803
adrp x0, gFlashSlcMode
ldrb w0, [x0,#:lo12:gFlashSlcMode]
- cbnz w0, .L2798
-.L2797:
+ cbnz w0, .L2804
+.L2803:
add x0, x20, :lo12:.LANCHOR4
strb wzr, [x1,#:lo12:.LANCHOR0]
strb wzr, [x0,1264]
-.L2798:
+.L2804:
adrp x2, gNandFlashIDBEccBits
add x0, x1, :lo12:.LANCHOR0
add x22, x22, :lo12:.LANCHOR2
@@ -17472,34 +17530,34 @@ rk_ftl_init:
ldrb w2, [x2,#:lo12:gNandFlashIDBEccBits]
strb w2, [x0,632]
adrp x2, gNandFlashEccBits
- ldrh w3, [x22,386]
+ ldrh w3, [x22,18]
str xzr, [x20,1224]
ldrb w2, [x2,#:lo12:gNandFlashEccBits]
strb w2, [x0,724]
mov w2, 1
mov w0, 0
-.L2799:
+.L2805:
cmp w2, w3
- bhi .L2804
+ bhi .L2810
add w0, w0, 1
lsl w2, w2, 1
uxth w0, w0
- b .L2799
-.L2804:
+ b .L2805
+.L2810:
add x1, x1, :lo12:.LANCHOR0
sub w0, w0, #1
strb wzr, [x1,672]
strh w0, [x1,3340]
- cbnz w19, .L2795
+ cbnz w19, .L2801
bl FtlInit
mov w19, w0
-.L2795:
+.L2801:
adrp x0, .LC223
mov w1, w19
add x0, x0, :lo12:.LC223
bl printk
mov w0, w19
-.L2792:
+.L2798:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x29, x30, [sp], 48
@@ -17527,12 +17585,12 @@ gc_update_l2p_map_new:
mul w24, w24, w0
bl timer_get_time
ldr w0, [x22,#:lo12:.LANCHOR2]
- tbz x0, 8, .L2806
+ tbz x0, 8, .L2812
adrp x0, .LC224
ldrh w1, [x20,80]
add x0, x0, :lo12:.LC224
bl printk
-.L2806:
+.L2812:
add x0, x19, :lo12:.LANCHOR0
ldrh w1, [x20,80]
sub w2, w24, #1
@@ -17547,15 +17605,15 @@ gc_update_l2p_map_new:
adrp x0, .LC225
add x0, x0, :lo12:.LC225
str x0, [x29,112]
-.L2807:
+.L2813:
cmp w23, w24
- beq .L2839
+ beq .L2845
adrp x0, .LANCHOR4
add x0, x0, :lo12:.LANCHOR4
ldr x0, [x0,1136]
ldr w2, [x0,w23,sxtw 2]
cmn w2, #1
- beq .L2808
+ beq .L2814
add x0, x19, :lo12:.LANCHOR0
ldrb w0, [x0,2832]
lsl w0, w0, 7
@@ -17563,27 +17621,27 @@ gc_update_l2p_map_new:
and w0, w0, 65535
str w0, [x29,140]
ldr w0, [x22,#:lo12:.LANCHOR2]
- tbz x0, 8, .L2809
+ tbz x0, 8, .L2815
ldr x0, [x29,112]
mov w3, w23
ldr w1, [x29,140]
bl printk
-.L2809:
- mov w25, w23
.L2815:
+ mov w25, w23
+.L2821:
add x1, x27, :lo12:.LANCHOR4
sbfiz x26, x25, 2, 32
ldr x0, [x1,1136]
ldr w4, [x0,x26]
cmn w4, #1
- beq .L2810
+ beq .L2816
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 .L2810
+ bne .L2816
ldr x0, [x1,1144]
str x4, [x29,104]
ldr w28, [x0,x26]
@@ -17592,16 +17650,16 @@ gc_update_l2p_map_new:
str w0, [x29,156]
cmn w0, #1
ldr x4, [x29,104]
- bne .L2811
+ bne .L2817
mov w0, w4
add x1, x29, 156
mov w2, 0
bl pm_log2phys
ldr x4, [x29,104]
-.L2811:
+.L2817:
ldr w3, [x29,156]
cmp w3, w28
- bne .L2812
+ bne .L2818
add x0, x27, :lo12:.LANCHOR4
add x1, x29, 152
mov w2, 1
@@ -17622,34 +17680,34 @@ gc_update_l2p_map_new:
and w28, w0, w28
ldrb w0, [x2,3338]
udiv w0, w28, w0
- b .L2838
-.L2812:
+ b .L2844
+.L2818:
ldr w0, [x22,#:lo12:.LANCHOR2]
- tbz x0, 8, .L2814
+ tbz x0, 8, .L2820
ldr x0, [x29,120]
mov w1, w4
mov w2, w28
bl printk
-.L2814:
+.L2820:
ldr x0, [x29,128]
ldrh w0, [x0]
-.L2838:
+.L2844:
bl ftl_vpn_decrement
add x0, x27, :lo12:.LANCHOR4
mov w1, -1
ldr x0, [x0,1136]
str w1, [x0,x26]
bl timer_get_time
-.L2810:
+.L2816:
add w25, w25, 1
cmp w25, w24
- bne .L2815
-.L2808:
+ bne .L2821
+.L2814:
add w23, w23, 1
- b .L2807
-.L2839:
+ b .L2813
+.L2845:
ldr w0, [x22,#:lo12:.LANCHOR2]
- tbz x0, 8, .L2817
+ tbz x0, 8, .L2823
add x0, x19, :lo12:.LANCHOR0
ldrh w3, [x20,80]
ldr x1, [x0,608]
@@ -17660,13 +17718,13 @@ gc_update_l2p_map_new:
ldrh w2, [x2,x3,lsl 1]
mov w3, w21
bl printk
-.L2817:
+.L2823:
add x0, x19, :lo12:.LANCHOR0
ldrh w1, [x20,80]
ldr x0, [x0,600]
ldrh w0, [x0,x1,lsl 1]
cmp w0, w21
- beq .L2818
+ beq .L2824
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -17675,7 +17733,7 @@ gc_update_l2p_map_new:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2818:
+.L2824:
add x19, x19, :lo12:.LANCHOR0
ldrh w1, [x20,80]
ldr x0, [x19,600]
@@ -17710,62 +17768,62 @@ gc_scan_src_blk_one_page:
mov w3, 0
ldrh w2, [x1,2]
mov w4, w3
-.L2841:
+.L2847:
cmp w22, w5
- bne .L2867
+ bne .L2873
add w0, w0, 1
uxtb w0, w0
cmp w0, w6
- bne .L2842
+ bne .L2848
add w2, w2, 1
mov w0, 0
mov w4, 1
uxth w2, w2
-.L2842:
+.L2848:
add x3, x1, x0, sxtw 1
ldrh w22, [x3,40]
mov w3, 1
- b .L2841
-.L2867:
- cbz w4, .L2844
+ b .L2847
+.L2873:
+ cbz w4, .L2850
add x1, x19, :lo12:.LANCHOR0
strh w2, [x1,2898]
-.L2844:
- cbz w3, .L2845
+.L2850:
+ cbz w3, .L2851
add x1, x19, :lo12:.LANCHOR0
strb w0, [x1,2900]
-.L2845:
+.L2851:
mov w0, 1
mov w23, 1
add x19, x19, :lo12:.LANCHOR0
bl buf_alloc
mov x21, x0
-.L2846:
+.L2852:
add x20, x19, 2896
ldrb w1, [x20,6]
cmp w23, w1
- bgt .L2868
+ bgt .L2874
ldrh w0, [x19,3350]
cmp w1, 3
mul w0, w22, w0
- bne .L2847
+ bne .L2853
ldrh w1, [x20,2]
add w0, w0, w1
orr w0, w0, w23, lsl 24
- b .L2866
-.L2847:
+ b .L2872
+.L2853:
cmp w1, 2
ldrh w1, [x20,2]
- bne .L2849
+ bne .L2855
add w0, w0, w1, lsl 1
ldrb w1, [x19,3257]
sub w0, w0, #1
add w0, w0, w23
orr w0, w0, w1, lsl 24
- b .L2866
-.L2849:
+ b .L2872
+.L2855:
add w0, w0, w1
-.L2866:
+.L2872:
str w0, [x21,40]
mov w1, 1
mov x0, x21
@@ -17773,38 +17831,38 @@ gc_scan_src_blk_one_page:
bl sblk_read_page
ldr w0, [x21,52]
cmp w0, 512
- beq .L2852
+ beq .L2858
cmn w0, #1
- beq .L2852
+ beq .L2858
ldr x0, [x21,24]
ldr w20, [x0,4]
mov w0, w20
bl lpa_hash_get_ppa
str w0, [x29,76]
cmn w0, #1
- bne .L2853
+ bne .L2859
mov w0, w20
add x1, x29, 76
mov w2, 0
bl pm_log2phys
-.L2853:
+.L2859:
ldr w1, [x21,40]
ldr w0, [x29,76]
cmp w1, w0
- bne .L2852
+ bne .L2858
ldrh w2, [x19,2920]
ldr x1, [x19,3248]
str w24, [x1,x2,lsl 2]
ldrh w1, [x19,2920]
add w1, w1, 1
strh w1, [x19,2920]
-.L2852:
+.L2858:
ldrh w0, [x19,2922]
add w23, w23, 1
add w0, w0, 1
strh w0, [x19,2922]
- b .L2846
-.L2868:
+ b .L2852
+.L2874:
mov x0, x21
bl buf_free
ldrb w0, [x20,4]
@@ -17813,12 +17871,12 @@ gc_scan_src_blk_one_page:
uxtb w0, w0
strb w0, [x20,4]
cmp w1, w0
- bne .L2840
+ bne .L2846
ldrh w0, [x20,2]
strb wzr, [x20,4]
add w0, w0, 1
strh w0, [x20,2]
-.L2840:
+.L2846:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -17840,7 +17898,7 @@ gc_scan_src_blk:
ldrh w1, [x0,2896]
mov w0, 65535
cmp w1, w0
- bne .L2870
+ bne .L2876
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -17849,23 +17907,23 @@ gc_scan_src_blk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2870:
+.L2876:
add x2, x19, :lo12:.LANCHOR0
mov w3, 65535
mov w0, 0
ldrh w1, [x2,2896]
cmp w1, w3
- beq .L2871
+ beq .L2877
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L2872
+ tbz x0, 8, .L2878
ubfiz x3, x1, 1, 16
ldr x2, [x2,600]
adrp x0, .LC228
add x0, x0, :lo12:.LC228
ldrh w2, [x2,x3]
bl printk
-.L2872:
+.L2878:
add x20, x19, :lo12:.LANCHOR0
bl timer_get_time
add x21, x20, 2896
@@ -17874,36 +17932,36 @@ gc_scan_src_blk:
bl ftl_get_blk_list_in_sblk
uxtb w1, w0
strb w1, [x21,5]
- cbnz w1, .L2873
+ cbnz w1, .L2879
mov w0, -1
strh w0, [x20,2896]
- b .L2899
-.L2873:
+ b .L2905
+.L2879:
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 .L2874
+ beq .L2880
cmp w4, 224
- beq .L2874
+ beq .L2880
ldr x2, [x20,608]
ldrh w5, [x2,16]
cmp w5, w3
- beq .L2874
+ beq .L2880
ldrh w5, [x2,48]
cmp w5, w3
- beq .L2874
+ beq .L2880
ldrh w2, [x2,80]
cmp w2, w3
- bne .L2875
-.L2874:
- cbnz w4, .L2876
+ bne .L2881
+.L2880:
+ cbnz w4, .L2882
add x0, x19, :lo12:.LANCHOR0
ldr x0, [x0,600]
ldrh w0, [x0,x3,lsl 1]
- cbz w0, .L2877
+ cbz w0, .L2883
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -17912,27 +17970,27 @@ gc_scan_src_blk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2877:
+.L2883:
add x0, x19, :lo12:.LANCHOR0
ldrh w1, [x0,2896]
ldr x0, [x0,600]
strh wzr, [x0,x1,lsl 1]
-.L2876:
+.L2882:
add x19, x19, :lo12:.LANCHOR0
mov w0, -1
strh wzr, [x19,2920]
strh w0, [x19,2896]
-.L2899:
+.L2905:
mov w0, 0
- b .L2871
-.L2875:
+ b .L2877
+.L2881:
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 .L2878
+ bne .L2884
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -17941,7 +17999,7 @@ gc_scan_src_blk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2878:
+.L2884:
add x2, x19, :lo12:.LANCHOR0
mov w25, 1
ldrh w3, [x2,2896]
@@ -17955,16 +18013,16 @@ gc_scan_src_blk:
mul w1, w20, w1
and w3, w3, 224
cmp w3, 160
- bne .L2879
+ bne .L2885
ldrb w3, [x2,3257]
cmp w3, 2
uxth w25, w3
orr w1, w1, w3, lsl 24
- bne .L2879
+ bne .L2885
ldrh w0, [x2,3274]
sub w0, w0, #1
uxth w0, w0
-.L2879:
+.L2885:
add x20, x19, :lo12:.LANCHOR0
orr w23, w0, w1
mov w0, 1
@@ -17988,15 +18046,15 @@ gc_scan_src_blk:
strh wzr, [x20,2920]
ldr w0, [x21,52]
cmp w0, 512
- beq .L2900
+ beq .L2906
cmn w0, #1
- beq .L2900
+ beq .L2906
ldr x0, [x21,24]
ldr w1, [x0]
mov w0, 15555
movk w0, 0xf55f, lsl 16
cmp w1, w0
- beq .L2882
+ beq .L2888
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -18005,12 +18063,12 @@ gc_scan_src_blk:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2900:
+.L2906:
mov x0, x21
bl buf_free
mov w0, -1
- b .L2871
-.L2882:
+ b .L2877
+.L2888:
ldrb w0, [x20,3276]
mov x26, 0
ldrh w22, [x20,3300]
@@ -18020,21 +18078,21 @@ gc_scan_src_blk:
mul w22, w25, w22
mov w25, 1
uxth w22, w22
-.L2883:
+.L2889:
cmp w22, w26
- ble .L2901
+ ble .L2907
ldr w0, [x23,x26,lsl 2]
cmn w0, #1
- beq .L2885
+ beq .L2891
bl lpa_hash_get_ppa
str w0, [x29,92]
cmn w0, #1
- bne .L2886
+ bne .L2892
ldr w0, [x23,x26,lsl 2]
add x1, x29, 92
mov w2, 0
bl pm_log2phys
-.L2886:
+.L2892:
ldrh w1, [x20,3340]
ldr w2, [x29,92]
sub w0, w24, w1
@@ -18046,18 +18104,18 @@ gc_scan_src_blk:
ldrb w0, [x20,3338]
udiv w1, w1, w0
cmp w1, w3
- bne .L2885
+ bne .L2891
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]
-.L2885:
+.L2891:
bl timer_get_time
add x26, x26, 1
- b .L2883
-.L2901:
+ b .L2889
+.L2907:
mov x0, x21
bl buf_free
add x0, x19, :lo12:.LANCHOR0
@@ -18067,11 +18125,11 @@ gc_scan_src_blk:
ldrh w2, [x3,x2]
ldrh w3, [x0,2920]
cmp w2, w3
- beq .L2889
+ beq .L2895
adrp x0, .LC229
add x0, x0, :lo12:.LC229
bl printk
-.L2889:
+.L2895:
add x19, x19, :lo12:.LANCHOR0
ldrh w2, [x19,2896]
ldr x1, [x19,600]
@@ -18079,7 +18137,7 @@ gc_scan_src_blk:
strh w3, [x1,x2,lsl 1]
strh wzr, [x19,2924]
ldrh w0, [x19,2920]
-.L2871:
+.L2877:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -18101,14 +18159,14 @@ gc_scan_static_data:
ldr x0, [x3,608]
ldr w1, [x0,544]
cmn w1, #1
- beq .L2903
+ beq .L2909
adrp x21, .LANCHOR3
adrp x22, .LC0
add x21, x21, :lo12:.LANCHOR3
mov w20, 11
add x22, x22, :lo12:.LC0
add x21, x21, 632
-.L2904:
+.L2910:
add x24, x19, :lo12:.LANCHOR0
add x1, x29, 76
mov w2, 0
@@ -18117,7 +18175,7 @@ gc_scan_static_data:
bl pm_log2phys
ldr w0, [x29,76]
cmn w0, #1
- beq .L2905
+ beq .L2911
mov w0, 1
bl buf_alloc
mov x23, x0
@@ -18127,7 +18185,7 @@ gc_scan_static_data:
bl sblk_read_page
ldr w0, [x23,52]
cmp w0, 256
- bne .L2906
+ bne .L2912
ldrh w0, [x24,3340]
mov w2, 21
mov w1, 1
@@ -18141,23 +18199,23 @@ gc_scan_static_data:
udiv w0, w2, w0
mov w2, 0
bl gc_add_sblk
-.L2906:
+.L2912:
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 .L2907
+ beq .L2913
mov x1, x21
mov w2, 1419
mov x0, x22
bl printk
bl dump_stack
-.L2907:
+.L2913:
mov x0, x23
bl buf_free
-.L2905:
+.L2911:
add x2, x19, :lo12:.LANCHOR0
ldr x1, [x2,608]
ldr w2, [x2,2840]
@@ -18165,7 +18223,7 @@ gc_scan_static_data:
add w0, w0, 1
str w0, [x1,544]
cmp w0, w2
- bcc .L2908
+ bcc .L2914
mov w0, -1
str w0, [x1,544]
ldr w0, [x1,548]
@@ -18176,37 +18234,37 @@ gc_scan_static_data:
bl ftl_ext_info_flush
mov w0, 0
bl ftl_info_flush
- b .L2902
-.L2908:
+ b .L2908
+.L2914:
ldr w0, [x29,76]
cmn w0, #1
- bne .L2902
+ bne .L2908
sub w20, w20, #1
uxth w20, w20
- cbnz w20, .L2904
- b .L2902
-.L2903:
+ cbnz w20, .L2910
+ b .L2908
+.L2909:
ldr w1, [x0,536]
ldr w2, [x0,12]
add w1, w1, 12959744
add w1, w1, 256
cmp w2, w1
- bhi .L2913
+ bhi .L2919
ldr x3, [x3,2864]
ldr w1, [x0,540]
ldr w3, [x3,44]
add w1, w1, 98304
add w1, w1, 1696
cmp w3, w1
- bls .L2902
-.L2913:
+ bls .L2908
+.L2919:
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]
-.L2902:
+.L2908:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -18230,36 +18288,36 @@ gc_block_vpn_scan:
ldrh w0, [x20,576]
ldr w1, [x1,608]
cmp w1, w0
- bcs .L2918
+ bcs .L2924
bl timer_get_time
ldr x21, [x20,608]
ldr w1, [x21,604]
add w1, w1, 28672
add w1, w1, 1328
cmp w0, w1
- bls .L2918
+ bls .L2924
bl timer_get_time
str w0, [x21,604]
ldr x0, [x20,608]
ldrh w2, [x20,576]
ldr w1, [x0,600]
cmp w1, w2
- bcs .L2922
+ bcs .L2928
ldr x2, [x20,2864]
ldrh w2, [x2,134]
cmp w1, w2
- bcs .L2923
-.L2922:
+ bcs .L2929
+.L2928:
add x1, x19, :lo12:.LANCHOR0
ldr x1, [x1,2864]
ldrh w1, [x1,134]
str w1, [x0,600]
-.L2923:
+.L2929:
ldr w25, [x0,600]
mov w0, 65535
uxth w20, w25
cmp w20, w0
- bne .L2924
+ bne .L2930
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -18268,7 +18326,7 @@ gc_block_vpn_scan:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2924:
+.L2930:
add x21, x19, :lo12:.LANCHOR0
ldr x0, [x21,608]
ldr w1, [x0,600]
@@ -18281,33 +18339,33 @@ gc_block_vpn_scan:
mov w0, w20
bl ftl_get_blk_list_in_sblk
uxth w1, w0
- cbz w1, .L2918
+ cbz w1, .L2924
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 .L2925
+ beq .L2931
cmp w2, 224
- beq .L2925
+ beq .L2931
ldr x1, [x21,608]
ldrh w3, [x1,16]
cmp w3, w20
- beq .L2925
+ beq .L2931
ldrh w3, [x1,48]
cmp w3, w20
- beq .L2925
+ beq .L2931
ldrh w1, [x1,80]
cmp w1, w20
- bne .L2926
-.L2925:
- cbnz w2, .L2918
+ bne .L2932
+.L2931:
+ cbnz w2, .L2924
add x0, x19, :lo12:.LANCHOR0
lsl x22, x22, 1
ldr x0, [x0,600]
ldrh w0, [x0,x22]
- cbz w0, .L2927
+ cbz w0, .L2933
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -18316,12 +18374,12 @@ gc_block_vpn_scan:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2927:
+.L2933:
add x19, x19, :lo12:.LANCHOR0
ldr x0, [x19,600]
strh wzr, [x0,x22]
- b .L2918
-.L2926:
+ b .L2924
+.L2932:
and w0, w0, 65535
add x1, x29, 144
sub w0, w0, #1
@@ -18329,7 +18387,7 @@ gc_block_vpn_scan:
ldrh w21, [x0,-16]
mov w0, 65535
cmp w21, w0
- bne .L2929
+ bne .L2935
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -18338,7 +18396,7 @@ gc_block_vpn_scan:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2929:
+.L2935:
add x2, x19, :lo12:.LANCHOR0
ldrb w3, [x24,2]
mov w26, 1
@@ -18349,16 +18407,16 @@ gc_block_vpn_scan:
sub w0, w0, #1
mul w1, w21, w1
uxth w0, w0
- bne .L2930
+ bne .L2936
ldrb w3, [x2,3257]
cmp w3, 2
uxth w26, w3
orr w1, w1, w3, lsl 24
- bne .L2930
+ bne .L2936
ldrh w0, [x2,3274]
sub w0, w0, #1
uxth w0, w0
-.L2930:
+.L2936:
orr w21, w0, w1
mov w0, 1
bl buf_alloc
@@ -18376,30 +18434,30 @@ gc_block_vpn_scan:
bl ftl_memset
ldr w0, [x23,52]
cmp w0, 512
- beq .L2942
+ beq .L2948
cmn w0, #1
cset w2, eq
- cbz w2, .L2931
-.L2942:
+ cbz w2, .L2937
+.L2948:
mov w0, w20
mov w1, 1
mov w2, 0
- b .L2955
-.L2931:
+ b .L2961
+.L2937:
ldr x0, [x23,24]
ldr w1, [x0]
mov w0, 15555
movk w0, 0xf55f, lsl 16
cmp w1, w0
- beq .L2933
+ beq .L2939
mov w0, w20
mov w1, 1
-.L2955:
+.L2961:
bl gc_add_sblk
mov x0, x23
bl buf_free
- b .L2918
-.L2933:
+ b .L2924
+.L2939:
ldrb w0, [x21,3276]
mov x27, 0
ldrh w1, [x21,3300]
@@ -18410,22 +18468,22 @@ gc_block_vpn_scan:
uxth w0, w26
ldr x26, [x23,8]
str w0, [x29,108]
-.L2934:
+.L2940:
ldr w0, [x29,108]
cmp w0, w27
- ble .L2956
+ ble .L2962
ldr w0, [x26,x27,lsl 2]
cmn w0, #1
- beq .L2935
+ beq .L2941
bl lpa_hash_get_ppa
str w0, [x29,124]
cmn w0, #1
- bne .L2936
+ bne .L2942
ldr w0, [x26,x27,lsl 2]
add x1, x29, 124
mov w2, 0
bl pm_log2phys
-.L2936:
+.L2942:
add x4, x19, :lo12:.LANCHOR0
mov w1, 21
ldrh w0, [x4,3340]
@@ -18439,18 +18497,18 @@ gc_block_vpn_scan:
and w0, w2, w0
udiv w0, w0, w1
cmp w0, w28
- bne .L2935
+ bne .L2941
add w21, w21, 1
uxth w21, w21
-.L2935:
+.L2941:
add x27, x27, 1
- b .L2934
-.L2956:
+ b .L2940
+.L2962:
mov x0, x23
bl buf_free
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L2938
+ tbz x0, 8, .L2944
add x0, x19, :lo12:.LANCHOR0
ldrb w4, [x24,2]
uxth w1, w25
@@ -18461,17 +18519,17 @@ gc_block_vpn_scan:
add x0, x0, :lo12:.LC230
ldrh w2, [x2,x22,lsl 1]
bl printk
-.L2938:
+.L2944:
add x19, x19, :lo12:.LANCHOR0
cmp w21, 31
ldr x0, [x19,600]
strh w21, [x0,x22,lsl 1]
- bhi .L2918
+ bhi .L2924
mov w0, w20
mov w1, 1
mov w2, 0
bl gc_add_sblk
-.L2918:
+.L2924:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -18515,19 +18573,19 @@ ftl_sblk_dump:
mov w1, 65535
mov w0, 0
cmp w20, w1
- beq .L2958
+ beq .L2964
ldrh w1, [x19,576]
cmp w1, w20
- bls .L2958
+ bls .L2964
ldr x0, [x19,584]
mov w26, 1
add x0, x0, x25
ldrb w0, [x0,2]
and w0, w0, 224
cmp w0, 160
- bne .L2959
+ bne .L2965
ldrb w26, [x19,3257]
-.L2959:
+.L2965:
add x1, x29, 192
mov w0, w20
strh w20, [x29,176]
@@ -18566,48 +18624,48 @@ ftl_sblk_dump:
add x0, x0, :lo12:.LANCHOR3
add x0, x0, 680
str x0, [x29,112]
-.L2960:
+.L2966:
add x21, x23, :lo12:.LANCHOR0
ldrh w0, [x21,3300]
cmp w0, w19
- bls .L2976
+ bls .L2982
lsl w0, w19, 1
str wzr, [x29,156]
sub w0, w0, #1
str w0, [x29,132]
-.L2977:
+.L2983:
ldrb w0, [x29,185]
ldr w1, [x29,156]
cmp w0, w1
- bls .L2974
+ bls .L2980
mov w24, 1
-.L2975:
+.L2981:
cmp w24, w26
ldr w0, [x29,156]
- bhi .L2994
+ bhi .L3000
add x1, x29, 176
add x0, x1, x0, sxtw 1
ldrh w2, [x0,16]
mov w0, 65535
cmp w2, w0
- beq .L2961
+ beq .L2967
add x1, x23, :lo12:.LANCHOR0
cmp w26, 3
ldrh w0, [x1,3350]
mul w0, w2, w0
add w21, w0, w19
- bne .L2962
+ bne .L2968
orr w21, w21, w24, lsl 24
- b .L2963
-.L2962:
+ b .L2969
+.L2968:
cmp w26, 2
- bne .L2963
+ bne .L2969
ldr w3, [x29,132]
ldrb w21, [x1,3257]
add w0, w0, w3
add w0, w0, w24
orr w21, w0, w21, lsl 24
-.L2963:
+.L2969:
mov w1, 1
str w21, [x28,40]
mov x0, x28
@@ -18639,23 +18697,23 @@ ftl_sblk_dump:
bl printk
ldr x9, [x29,104]
cmp w9, 512
- beq .L2981
+ beq .L2987
cmn w9, #1
- bne .L2965
-.L2981:
+ bne .L2971
+.L2987:
mov w0, 1
str w0, [x29,152]
-.L2965:
+.L2971:
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 .L2961
+ beq .L2967
cmp w0, 224
cset w2, eq
- cbnz w2, .L2961
+ cbnz w2, .L2967
ldr x0, [x28,24]
str x2, [x29,104]
ldr w0, [x0,4]
@@ -18663,15 +18721,15 @@ ftl_sblk_dump:
str w0, [x29,172]
cmn w0, #1
ldr x2, [x29,104]
- bne .L2967
+ bne .L2973
ldr x0, [x28,24]
add x1, x29, 172
ldr w0, [x0,4]
bl pm_log2phys
-.L2967:
+.L2973:
ldr w0, [x29,172]
cmp w0, w21
- bne .L2968
+ bne .L2974
ldr x2, [x28,24]
add w22, w22, 1
adrp x0, .LC233
@@ -18680,53 +18738,53 @@ ftl_sblk_dump:
mov w3, w22
ldr w2, [x2,4]
bl printk
-.L2968:
+.L2974:
ldr x0, [x29,144]
- cbz x0, .L2970
+ cbz x0, .L2976
ubfiz x21, x27, 2, 32
ldr w2, [x0,x21]
ldr x0, [x28,24]
ldr w0, [x0,4]
cmp w0, w2
- beq .L2971
+ beq .L2977
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 12, .L2971
+ tbz x0, 12, .L2977
adrp x0, .LC234
mov w1, w27
add x0, x0, :lo12:.LC234
bl printk
-.L2971:
+.L2977:
ldr x0, [x29,144]
ldr x1, [x28,24]
ldr w0, [x0,x21]
ldr w1, [x1,4]
cmp w1, w0
- beq .L2970
+ beq .L2976
cmn w0, #1
- beq .L2970
+ beq .L2976
adrp x0, .LC0
ldr x1, [x29,112]
mov w2, 1299
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L2970:
+.L2976:
add w27, w27, 1
-.L2961:
+.L2967:
add w24, w24, 1
uxth w24, w24
- b .L2975
-.L2994:
+ b .L2981
+.L3000:
add w0, w0, 1
uxth w0, w0
str w0, [x29,156]
- b .L2977
-.L2974:
+ b .L2983
+.L2980:
add w19, w19, 1
uxth w19, w19
- b .L2960
-.L2976:
+ b .L2966
+.L2982:
mov x0, x28
bl buf_free
ldr x3, [x29,136]
@@ -18738,7 +18796,7 @@ ftl_sblk_dump:
mov w3, w22
bl printk
ldr w0, [x29,152]
-.L2958:
+.L2964:
sub sp, x29, #48
ldp x19, x20, [sp,64]
ldp x21, x22, [sp,80]
@@ -18766,30 +18824,30 @@ zftl_read:
stp x27, x28, [sp,80]
mov w25, w2
mov x23, x3
- tbz x0, 12, .L2996
+ tbz x0, 12, .L3002
adrp x0, .LC236
mov w1, w19
add x0, x0, :lo12:.LC236
mov w2, w22
mov w3, w25
bl printk
-.L2996:
- cbnz w19, .L2997
+.L3002:
+ cbnz w19, .L3003
adrp x0, .LANCHOR0+520
mov w19, 24576
ldr w2, [x0,#:lo12:.LANCHOR0+520]
- b .L2998
-.L2997:
+ b .L3004
+.L3003:
cmp w19, 3
mov w0, -1
- bhi .L2999
+ bhi .L3005
lsl w19, w19, 13
mov w2, 8192
-.L2998:
+.L3004:
add w1, w22, w25
mov w0, -1
cmp w1, w2
- bhi .L2999
+ bhi .L3005
add w22, w19, w22
adrp x19, .LANCHOR0
add x1, x19, :lo12:.LANCHOR0
@@ -18814,8 +18872,8 @@ zftl_read:
add x0, x0, :lo12:.LANCHOR3
add x0, x0, 696
str x0, [x29,120]
-.L3000:
- cbz w24, .L3060
+.L3006:
+ cbz w24, .L3066
add x0, x19, :lo12:.LANCHOR0
ldr w1, [x29,136]
cmp w20, w27
@@ -18824,12 +18882,12 @@ zftl_read:
ldrb w0, [x0,2832]
cset w26, eq
uxth w21, w0
- cbnz w26, .L3030
- cbz w2, .L3001
- b .L3059
-.L3030:
- cbz w2, .L3003
-.L3059:
+ cbnz w26, .L3036
+ cbz w2, .L3007
+ b .L3065
+.L3036:
+ cbz w2, .L3009
+.L3065:
udiv w26, w22, w0
msub w26, w26, w0, w22
uxth w0, w25
@@ -18838,21 +18896,21 @@ zftl_read:
uxth w21, w21
cmp w21, w25
csel w21, w0, w21, hi
- b .L3001
-.L3003:
+ b .L3007
+.L3009:
msub w21, w0, w20, w28
mov w26, w2
uxtb w21, w21
-.L3001:
+.L3007:
add x1, x19, :lo12:.LANCHOR0
mov w0, 0
add x1, x1, 784
-.L3006:
+.L3012:
ldr w2, [x1,36]
cmp w2, w20
- bne .L3004
+ bne .L3010
ldrb w2, [x1,2]
- tbz x2, 3, .L3004
+ tbz x2, 3, .L3010
add x2, x19, :lo12:.LANCHOR0
ubfiz x1, x0, 6, 32
add x0, x2, x1
@@ -18864,48 +18922,48 @@ zftl_read:
add x23, x23, x21
add x1, x1, x26
bl ftl_memcpy
- b .L3005
-.L3004:
+ b .L3011
+.L3010:
add w0, w0, 1
add x1, x1, 64
cmp w0, 32
- bne .L3006
+ bne .L3012
mov w0, w20
bl lpa_hash_get_ppa
str w0, [x29,156]
cmn w0, #1
- bne .L3007
+ bne .L3013
mov w0, w20
add x1, x29, 156
mov w2, 0
bl pm_log2phys
-.L3007:
+.L3013:
ldr w0, [x29,156]
cmn w0, #1
- bne .L3008
+ bne .L3014
mov w21, 0
-.L3009:
+.L3015:
add x0, x19, :lo12:.LANCHOR0
ldrb w0, [x0,2832]
cmp w21, w0
- bcs .L3005
+ bcs .L3011
madd w0, w20, w0, w21
cmp w0, w22
- bcc .L3010
+ bcc .L3016
cmp w0, w28
- bcs .L3010
+ bcs .L3016
mov x0, x23
mov w1, 0
mov w2, 512
add x23, x23, 512
bl ftl_memset
-.L3010:
+.L3016:
add w21, w21, 1
- b .L3009
-.L3008:
+ b .L3015
+.L3014:
mov w0, 0
bl buf_alloc
- cbz x0, .L3012
+ cbz x0, .L3018
add x2, x19, :lo12:.LANCHOR0
ldr x3, [x2,2864]
ldr w2, [x3,40]
@@ -18921,36 +18979,36 @@ zftl_read:
str w20, [x0,36]
strb w26, [x0,57]
bl zftl_add_read_buf
-.L3005:
+.L3011:
add w20, w20, 1
sub w24, w24, #1
-.L3012:
- cbz w24, .L3031
+.L3018:
+ cbz w24, .L3037
add x0, x19, :lo12:.LANCHOR0
ldrb w0, [x0,2834]
cmp w0, 2
- bhi .L3000
-.L3031:
+ bhi .L3006
+.L3037:
add x2, x19, :lo12:.LANCHOR0
ldrb w1, [x2,3894]
- cbz w1, .L3000
+ cbz w1, .L3006
add x0, x2, 784
ldrb w2, [x2,3893]
add x0, x0, x2, lsl 6
bl sblk_read_page
-.L3015:
+.L3021:
add x0, x19, :lo12:.LANCHOR0
ldrb w1, [x0,3894]
- cbz w1, .L3061
+ cbz w1, .L3067
ldrb w0, [x0,3893]
cmp w0, 255
- bne .L3016
+ bne .L3022
ldr x1, [x29,120]
mov w2, 1065
ldr x0, [x29,128]
bl printk
bl dump_stack
-.L3016:
+.L3022:
add x2, x19, :lo12:.LANCHOR0
add x1, x2, 784
ldrb w21, [x2,3893]
@@ -18960,16 +19018,16 @@ zftl_read:
ldr w8, [x26,52]
strb w0, [x2,3893]
cmn w8, #1
- bne .L3017
+ bne .L3023
ldr x1, [x2,608]
str w8, [x29,140]
ldr w0, [x1,552]
add w0, w0, 1
str w0, [x1,552]
- b .L3018
-.L3017:
+ b .L3024
+.L3023:
cmp w8, 256
- bne .L3018
+ bne .L3024
ldrh w0, [x2,3340]
mov w1, 21
mov w5, 1
@@ -18996,7 +19054,7 @@ zftl_read:
mov w1, w5
bl gc_add_sblk
ldr x8, [x29,96]
-.L3018:
+.L3024:
add x9, x19, :lo12:.LANCHOR0
add x1, x9, 784
add x1, x1, x21, lsl 6
@@ -19005,7 +19063,7 @@ zftl_read:
ldr w3, [x0,4]
ldr w0, [x1,36]
cmp w3, w0
- beq .L3019
+ beq .L3025
ldr x3, [x9,608]
str x8, [x29,96]
str x9, [x29,104]
@@ -19040,7 +19098,7 @@ zftl_read:
mov x1, 0
bl ftl_sblk_dump
ldr x8, [x29,96]
-.L3019:
+.L3025:
add x0, x19, :lo12:.LANCHOR0
add x0, x0, 784
add x0, x0, x21, lsl 6
@@ -19048,35 +19106,35 @@ zftl_read:
ldr w0, [x0,36]
ldr w1, [x1,4]
cmp w1, w0
- bne .L3032
+ bne .L3038
cmn w8, #1
- bne .L3020
-.L3032:
+ bne .L3026
+.L3038:
ldr x1, [x29,120]
mov w2, 1086
ldr x0, [x29,128]
bl printk
bl dump_stack
-.L3020:
+.L3026:
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 .L3022
+ bls .L3028
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 .L3023
-.L3022:
+ b .L3029
+.L3028:
ldrb w0, [x21,2]
and w0, w0, -9
strb w0, [x21,2]
-.L3023:
+.L3029:
add x21, x19, :lo12:.LANCHOR0
mov x1, x26
add x0, x21, 3895
@@ -19086,18 +19144,18 @@ zftl_read:
ldrb w0, [x21,3894]
sub w0, w0, #1
strb w0, [x21,3894]
- b .L3015
-.L3061:
+ b .L3021
+.L3067:
mov w2, -1
strb w1, [x0,3894]
strb w2, [x0,3893]
- b .L3000
-.L3060:
+ b .L3006
+.L3066:
bl timer_get_time
adrp x1, .LANCHOR7-80
str w0, [x1,#:lo12:.LANCHOR7-80]
ldr w0, [x29,140]
-.L2999:
+.L3005:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -19152,12 +19210,12 @@ zftl_debug_proc_write:
stp x23, x24, [sp,80]
stp x25, x26, [sp,96]
mov x21, x2
- bhi .L3065
+ bhi .L3071
mov x0, x19
bl rk_copy_from_user
mov x22, x0
mov x0, -14
- cbnz x22, .L3065
+ cbnz x22, .L3071
adrp x0, .LC239
mov x1, x19
add x0, x0, :lo12:.LC239
@@ -19175,7 +19233,7 @@ zftl_debug_proc_write:
add x1, x1, :lo12:.LC241
mov x2, 7
bl memcmp
- cbnz w0, .L3066
+ cbnz w0, .L3072
adrp x23, .LANCHOR0
adrp x0, .LC242
add x19, x23, :lo12:.LANCHOR0
@@ -19196,11 +19254,11 @@ zftl_debug_proc_write:
mov w19, w22
mov w22, 65535
bl rknand_print_hex
-.L3067:
+.L3073:
add x0, x20, :lo12:.LANCHOR4
ldrh w0, [x0,1164]
cmp w19, w0
- bge .L3070
+ bge .L3076
mov w0, 300
bl msleep
add x0, x23, :lo12:.LANCHOR0
@@ -19208,19 +19266,19 @@ zftl_debug_proc_write:
add x0, x0, x19, sxtw 1
ldrh w0, [x0,416]
cmp w0, w22
- beq .L3068
+ beq .L3074
mov x1, 0
bl ftl_sblk_dump
-.L3068:
+.L3074:
add w19, w19, 1
- b .L3067
-.L3066:
+ b .L3073
+.L3072:
adrp x1, .LC244
mov x0, x19
add x1, x1, :lo12:.LC244
mov x2, 7
bl memcmp
- cbnz w0, .L3071
+ cbnz w0, .L3077
adrp x23, .LANCHOR0
adrp x0, .LC242
add x20, x23, :lo12:.LANCHOR0
@@ -19257,14 +19315,14 @@ zftl_debug_proc_write:
mov w22, w0
str w0, [x29,100]
uxth w26, w0
-.L3073:
+.L3079:
ldrh w1, [x19]
mov x0, x23
ldrh w2, [x19,2]
bl printk
ldrh w0, [x19]
cmp w0, w26
- bne .L3072
+ bne .L3078
add x0, x20, :lo12:.LANCHOR0
ldr x1, [x19,8]
mov w2, 4
@@ -19272,10 +19330,10 @@ zftl_debug_proc_write:
mov x0, x24
lsl w3, w3, 7
bl rknand_print_hex
-.L3072:
+.L3078:
add x19, x19, 16
cmp x19, x25
- bne .L3073
+ bne .L3079
mov w0, 300
add x20, x20, :lo12:.LANCHOR0
bl msleep
@@ -19313,23 +19371,23 @@ zftl_debug_proc_write:
ldr x1, [x19,8]
mov w2, 4
lsl w3, w3, 7
- b .L3088
-.L3071:
+ b .L3094
+.L3077:
adrp x1, .LC249
mov x0, x19
add x1, x1, :lo12:.LC249
mov x2, 7
bl memcmp
- cbnz w0, .L3074
+ cbnz w0, .L3080
bl dump_ftl_info
- b .L3070
-.L3074:
+ b .L3076
+.L3080:
adrp x1, .LC250
mov x0, x19
add x1, x1, :lo12:.LC250
mov x2, 9
bl memcmp
- cbnz w0, .L3075
+ cbnz w0, .L3081
add x1, x29, 192
add x0, x19, 9
str x0, [x1,-88]!
@@ -19338,20 +19396,20 @@ zftl_debug_proc_write:
adrp x1, .LANCHOR0+3336
strh w0, [x1,#:lo12:.LANCHOR0+3336]
bl dump_all_list_info
- b .L3070
-.L3075:
+ b .L3076
+.L3081:
adrp x1, .LC251
mov x0, x19
add x1, x1, :lo12:.LC251
mov x2, 8
bl memcmp
- cbz w0, .L3070
+ cbz w0, .L3076
adrp x1, .LC252
mov x0, x19
add x1, x1, :lo12:.LC252
mov x2, 8
bl memcmp
- cbnz w0, .L3077
+ cbnz w0, .L3083
add x20, x29, 192
adrp x0, .LC245
add x1, x19, 8
@@ -19402,18 +19460,18 @@ zftl_debug_proc_write:
add x0, x0, :lo12:.LC205
mov w2, 4
lsl w3, w3, 1
-.L3088:
+.L3094:
bl rknand_print_hex
mov x0, x19
bl buf_free
- b .L3070
-.L3077:
+ b .L3076
+.L3083:
adrp x1, .LC253
mov x0, x19
add x1, x1, :lo12:.LC253
mov x2, 8
bl memcmp
- cbnz w0, .L3078
+ cbnz w0, .L3084
add x20, x29, 192
adrp x0, .LC245
add x1, x19, 8
@@ -19426,14 +19484,14 @@ zftl_debug_proc_write:
str w0, [x29,100]
mov x1, x22
bl ftl_sblk_dump
- b .L3070
-.L3078:
+ b .L3076
+.L3084:
adrp x1, .LC254
mov x0, x19
add x1, x1, :lo12:.LC254
mov x2, 10
bl memcmp
- cbnz w0, .L3079
+ cbnz w0, .L3085
add x20, x29, 192
adrp x0, .LC245
add x1, x19, 10
@@ -19446,8 +19504,8 @@ zftl_debug_proc_write:
str w0, [x29,100]
adrp x1, .LANCHOR2
str w0, [x1,#:lo12:.LANCHOR2]
- b .L3070
-.L3079:
+ b .L3076
+.L3085:
adrp x1, .LC255
mov x2, 8
mov x0, x19
@@ -19455,7 +19513,7 @@ zftl_debug_proc_write:
bl memcmp
mov w2, w0
str x2, [x29,88]
- cbnz w0, .L3080
+ cbnz w0, .L3086
add x1, x19, 8
adrp x0, .LC245
add x19, x29, 192
@@ -19470,18 +19528,18 @@ zftl_debug_proc_write:
str w0, [x29,100]
cmn w0, #1
ldr x2, [x29,88]
- bne .L3081
+ bne .L3087
mov w0, w19
add x1, x29, 100
bl pm_log2phys
-.L3081:
+.L3087:
adrp x0, .LC256
ldr w2, [x29,100]
mov w1, w19
add x0, x0, :lo12:.LC256
bl printk
- b .L3070
-.L3080:
+ b .L3076
+.L3086:
adrp x0, .LC257
add x0, x0, :lo12:.LC257
bl printk
@@ -19509,10 +19567,10 @@ zftl_debug_proc_write:
adrp x0, .LC265
add x0, x0, :lo12:.LC265
bl printk
-.L3070:
+.L3076:
bl rknand_device_unlock
mov x0, x21
-.L3065:
+.L3071:
sub sp, x29, #32
ldp x19, x20, [sp,48]
ldp x21, x22, [sp,64]
@@ -19539,14 +19597,14 @@ gc_check_data_one_wl:
ldr x0, [x20,2904]
ldr x23, [x20,608]
add x20, x20, 2896
- cbnz x0, .L3090
+ cbnz x0, .L3096
mov w0, 1
bl buf_alloc
str x0, [x20,8]
-.L3090:
+.L3096:
add x0, x19, :lo12:.LANCHOR0
ldr x20, [x0,2904]
- cbnz x20, .L3091
+ cbnz x20, .L3097
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -19555,22 +19613,22 @@ gc_check_data_one_wl:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L3091:
+.L3097:
mov w24, 0
add x25, x23, 80
add x21, x19, :lo12:.LANCHOR0
adrp x27, .LANCHOR4
-.L3092:
+.L3098:
ldrb w0, [x25,9]
cmp w24, w0
- bge .L3115
+ bge .L3121
mov w22, 1
sxtw x28, w24
-.L3101:
+.L3107:
add x0, x21, 2896
ldrh w1, [x0,20]
cmp w22, w1
- bgt .L3116
+ bgt .L3122
add x1, x28, 8
ldrh w2, [x21,3350]
ldrh w0, [x0,16]
@@ -19578,28 +19636,28 @@ gc_check_data_one_wl:
mul w1, w1, w2
ldrb w2, [x21,3257]
cmp w2, 3
- bne .L3093
+ bne .L3099
add w1, w1, w0
orr w1, w1, w22, lsl 24
- b .L3114
-.L3093:
+ b .L3120
+.L3099:
cmp w2, 2
- bne .L3095
+ bne .L3101
sub w0, w0, #1
add w1, w0, w1
add w1, w1, w22
orr w1, w1, 33554432
- b .L3114
-.L3095:
+ b .L3120
+.L3101:
add w1, w1, w0
-.L3114:
+.L3120:
str w1, [x20,40]
mov x0, x20
mov w1, 1
bl sblk_read_page
ldr w0, [x20,52]
cmn w0, #1
- beq .L3096
+ beq .L3102
add x2, x27, :lo12:.LANCHOR4
ldrh w0, [x21,2918]
ldr x1, [x20,24]
@@ -19608,20 +19666,20 @@ gc_check_data_one_wl:
ldr w4, [x3,x0]
ldr w3, [x1,4]
cmp w4, w3
- bne .L3096
+ bne .L3102
ldr x2, [x2,1144]
ldr w2, [x2,x0]
ldr w0, [x1,8]
cmp w2, w0
- beq .L3097
-.L3096:
+ beq .L3103
+.L3102:
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 .L3097
+ beq .L3103
ldrb w5, [x25,9]
adrp x0, .LC266
ldrh w3, [x21,3274]
@@ -19641,7 +19699,7 @@ gc_check_data_one_wl:
adrp x0, .LANCHOR2
ldr x4, [x29,104]
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 10, .L3098
+ tbz x0, 10, .L3104
ldr x7, [x20,24]
ldrh w4, [x4,22]
ldr x5, [x26,1144]
@@ -19659,7 +19717,7 @@ gc_check_data_one_wl:
ldr w2, [x20,52]
ldr w7, [x7,8]
bl printk
-.L3098:
+.L3104:
add x19, x19, :lo12:.LANCHOR0
mov x1, 0
ldr x0, [x19,608]
@@ -19669,27 +19727,27 @@ gc_check_data_one_wl:
ldrh w1, [x23,80]
strh wzr, [x0,x1,lsl 1]
mov w0, -1
- b .L3099
-.L3097:
+ b .L3105
+.L3103:
ldrh w0, [x21,2918]
add w22, w22, 1
add w0, w0, 1
strh w0, [x21,2918]
- b .L3101
-.L3116:
+ b .L3107
+.L3122:
add w24, w24, 1
- b .L3092
-.L3115:
+ b .L3098
+.L3121:
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, .L3099
+ cbz w3, .L3105
add w1, w1, 2
strh w1, [x19,2912]
-.L3099:
+.L3105:
sub sp, x29, #16
ldp x19, x20, [sp,32]
ldp x21, x22, [sp,48]
@@ -19723,7 +19781,7 @@ ftl_update_l2p_map:
add x0, x20, x24, sxtw 2
ldr w0, [x0,-4]
cmn w0, #1
- beq .L3118
+ beq .L3124
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -19732,7 +19790,7 @@ ftl_update_l2p_map:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L3118:
+.L3124:
adrp x0, .LC270
mov x28, 0
add x0, x0, :lo12:.LC270
@@ -19743,13 +19801,13 @@ ftl_update_l2p_map:
mov w22, w28
str x0, [x29,112]
add x27, x27, :lo12:.LC269
-.L3119:
+.L3125:
cmp w28, w24
mov w25, w28
- bge .L3146
+ bge .L3152
ldr w2, [x20,x28,lsl 2]
cmn w2, #1
- beq .L3120
+ beq .L3126
add x0, x19, :lo12:.LANCHOR0
ldrb w21, [x0,2832]
adrp x0, .LANCHOR2
@@ -19757,22 +19815,22 @@ ftl_update_l2p_map:
ldr w0, [x0,#:lo12:.LANCHOR2]
udiv w21, w2, w21
and w21, w21, 65535
- tbz x0, 12, .L3124
+ tbz x0, 12, .L3130
mov x0, x27
mov w1, w21
mov w3, w28
bl printk
-.L3124:
+.L3130:
sbfiz x26, x25, 2, 32
ldr w0, [x20,x26]
cmn w0, #1
- beq .L3122
+ beq .L3128
add x3, x19, :lo12:.LANCHOR0
ldrb w1, [x3,2832]
lsl w1, w1, 7
udiv w0, w0, w1
cmp w21, w0, uxth
- bne .L3122
+ bne .L3128
ldrb w0, [x23,9]
ldrh w2, [x3,3350]
str x3, [x29,104]
@@ -19786,13 +19844,13 @@ ftl_update_l2p_map:
ldr w1, [x20,x26]
bl pm_ppa_update_check
ldr x3, [x29,104]
- cbz w0, .L3123
+ cbz w0, .L3129
ldr x1, [x3,3872]
mov w2, 4
ldr x0, [x29,112]
mov w3, w24
bl rknand_print_hex
-.L3123:
+.L3129:
ldr w0, [x20,x26]
add x1, x29, 140
mov w2, 1
@@ -19801,17 +19859,17 @@ ftl_update_l2p_map:
uxth w22, w22
mov w0, -1
str w0, [x20,x26]
-.L3122:
+.L3128:
add w25, w25, 1
cmp w25, w24
- bne .L3124
-.L3120:
+ bne .L3130
+.L3126:
add x28, x28, 1
- b .L3119
-.L3146:
+ b .L3125
+.L3152:
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 12, .L3126
+ tbz x0, 12, .L3132
add x0, x19, :lo12:.LANCHOR0
ldrh w1, [x23]
mov w2, w22
@@ -19821,7 +19879,7 @@ ftl_update_l2p_map:
add x0, x0, :lo12:.LC272
ldrh w3, [x4,x3]
bl printk
-.L3126:
+.L3132:
add x19, x19, :lo12:.LANCHOR0
ldrh w1, [x23]
ldr x0, [x19,600]
@@ -19847,9 +19905,9 @@ ftl_alloc_new_data_sblk:
ldrh w0, [x19]
mov w1, 65535
cmp w0, w1
- beq .L3148
+ beq .L3154
bl zftl_insert_data_list
-.L3148:
+.L3154:
adrp x0, .LANCHOR0+608
mov w2, 2
mov w1, 3
@@ -19888,10 +19946,10 @@ ftl_write_commit:
stp x21, x22, [sp,32]
stp x25, x26, [sp,64]
stp x27, x28, [sp,80]
-.L3152:
+.L3158:
ldrb w0, [x24,2856]
adrp x21, .LANCHOR0
- cbz w0, .L3154
+ cbz w0, .L3160
ldrb w1, [x24,2888]
sub w0, w0, #1
ldr x2, [x29,112]
@@ -19904,7 +19962,7 @@ ftl_write_commit:
strb w1, [x24,2888]
ldr w1, [x27,36]
cmp w1, w0
- bcc .L3155
+ bcc .L3161
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -19913,7 +19971,7 @@ ftl_write_commit:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L3155:
+.L3161:
ldr x0, [x29,128]
add x1, x21, :lo12:.LANCHOR0
add x4, x1, 784
@@ -19921,32 +19979,32 @@ ftl_write_commit:
ldr w2, [x1,2840]
ldr w23, [x0,36]
cmp w23, w2
- bcc .L3156
+ bcc .L3162
mov x0, x27
bl buf_free
mov w0, -1
- b .L3210
-.L3156:
+ b .L3216
+.L3162:
ldr x25, [x0,8]
ldr x28, [x0,24]
ldrb w22, [x0,57]
ldrb w20, [x0,56]
ldrb w0, [x1,2857]
- cbz w0, .L3158
+ cbz w0, .L3164
ldr x0, [x29,120]
ldrb w3, [x0,1266]
add x3, x4, x3, lsl 6
-.L3159:
+.L3165:
ldrb w5, [x3]
cmp w5, 255
- beq .L3212
+ beq .L3218
sbfiz x3, x5, 6, 32
add x3, x4, x3
- b .L3159
-.L3212:
+ b .L3165
+.L3218:
ldr w0, [x3,36]
cmp w0, w23
- bne .L3158
+ bne .L3164
ldr x0, [x3,8]
ubfiz x1, x22, 9, 8
lsl w2, w20, 9
@@ -19955,29 +20013,29 @@ ftl_write_commit:
bl ftl_memcpy
mov x0, x27
bl buf_free
- b .L3152
-.L3158:
+ b .L3158
+.L3164:
mov w0, w23
bl lpa_hash_get_ppa
str w0, [x29,156]
cmn w0, #1
- bne .L3162
+ bne .L3168
mov w0, w23
add x1, x29, 156
mov w2, 0
bl pm_log2phys
-.L3162:
+.L3168:
add x4, x21, :lo12:.LANCHOR0
mov w3, 0
add x4, x4, 784
ldr x19, [x4,-176]
add x19, x19, 16
-.L3165:
+.L3171:
ldr w0, [x4,36]
cmp w0, w23
- bne .L3163
+ bne .L3169
ldrb w5, [x4,2]
- tbz x5, 3, .L3163
+ tbz x5, 3, .L3169
add x0, x21, :lo12:.LANCHOR0
ubfiz x3, x3, 6, 32
add x0, x0, 784
@@ -19987,22 +20045,22 @@ ftl_write_commit:
strb w5, [x3,2]
ldr x26, [x3,8]
str w0, [x29,156]
- b .L3164
-.L3163:
+ b .L3170
+.L3169:
add w3, w3, 1
add x4, x4, 64
cmp w3, 32
- bne .L3165
+ bne .L3171
mov x26, 0
-.L3164:
+.L3170:
add x3, x21, :lo12:.LANCHOR0
str wzr, [x29,136]
ldrb w0, [x3,2832]
cmp w20, w0
- bcs .L3166
+ bcs .L3172
add w20, w22, w20
- cbz x26, .L3167
- cbz w22, .L3168
+ cbz x26, .L3173
+ cbz w22, .L3174
mov x0, x25
mov x1, x26
lsl w2, w22, 9
@@ -20011,28 +20069,28 @@ ftl_write_commit:
ldr x3, [x29,136]
ldr x19, [x3,608]
add x19, x19, 48
-.L3168:
+.L3174:
add x0, x21, :lo12:.LANCHOR0
ldrb w2, [x0,2832]
cmp w20, w2
- bcc .L3169
+ bcc .L3175
ldr x19, [x0,608]
add x19, x19, 16
- b .L3211
-.L3169:
+ b .L3217
+.L3175:
ubfiz x1, x20, 9, 9
sub w2, w2, w20
add x0, x25, x1
lsl w2, w2, 9
add x1, x26, x1
bl ftl_memcpy
-.L3211:
+.L3217:
str wzr, [x29,136]
- b .L3166
-.L3167:
+ b .L3172
+.L3173:
ldr w0, [x29,156]
cmn w0, #1
- beq .L3170
+ beq .L3176
mov w0, 1
bl buf_alloc
mov x26, x0
@@ -20047,11 +20105,11 @@ ftl_write_commit:
add w1, w1, 1
str w1, [x29,136]
cmp w0, w23
- bne .L3171
+ bne .L3177
ldr w0, [x26,52]
cmn w0, #1
- bne .L3172
-.L3171:
+ bne .L3178
+.L3177:
add x0, x21, :lo12:.LANCHOR0
ldr w2, [x29,156]
mov w3, w23
@@ -20070,15 +20128,15 @@ ftl_write_commit:
add x0, x0, :lo12:.LC205
mov w3, w2
bl rknand_print_hex
-.L3172:
+.L3178:
ldr x0, [x26,24]
ldr w0, [x0,4]
cmp w0, w23
- bne .L3173
+ bne .L3179
ldr w0, [x26,52]
cmn w0, #1
- bne .L3174
-.L3173:
+ bne .L3180
+.L3179:
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -20087,55 +20145,55 @@ ftl_write_commit:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L3174:
- cbz w22, .L3175
+.L3180:
+ cbz w22, .L3181
ldr w0, [x29,156]
lsl w2, w22, 9
cmn w0, #1
- beq .L3176
+ beq .L3182
ldr x1, [x26,8]
mov x0, x25
bl ftl_memcpy
- b .L3177
-.L3170:
- cbz w22, .L3175
- lsl w2, w22, 9
+ b .L3183
.L3176:
+ cbz w22, .L3181
+ lsl w2, w22, 9
+.L3182:
mov x0, x25
mov w1, 0
bl ftl_memset
-.L3177:
+.L3183:
add x0, x21, :lo12:.LANCHOR0
ldr x19, [x0,608]
add x19, x19, 48
-.L3175:
+.L3181:
add x0, x21, :lo12:.LANCHOR0
ldrb w2, [x0,2832]
cmp w20, w2
- bcc .L3178
- bls .L3179
+ bcc .L3184
+ bls .L3185
ldr x19, [x0,608]
add x19, x19, 16
- b .L3179
-.L3178:
+ b .L3185
+.L3184:
ldr w0, [x29,156]
sub w2, w2, w20
lsl w2, w2, 9
cmn w0, #1
ubfiz x0, x20, 7, 9
- beq .L3180
+ beq .L3186
ldr x1, [x26,8]
lsl x20, x0, 2
add x0, x25, x20
add x1, x1, x20
bl ftl_memcpy
- b .L3179
-.L3180:
+ b .L3185
+.L3186:
add x0, x25, x0, lsl 2
mov w1, 0
bl ftl_memset
-.L3179:
- cbz x26, .L3166
+.L3185:
+ cbz x26, .L3172
ldrb w0, [x26,2]
mov x1, x26
and w0, w0, -9
@@ -20145,13 +20203,13 @@ ftl_write_commit:
bl buf_remove_buf
mov x0, x26
bl buf_free
-.L3166:
+.L3172:
ldrh w0, [x19,6]
- cbnz w0, .L3181
+ cbnz w0, .L3187
bl ftl_flush
mov x0, x19
bl ftl_alloc_new_data_sblk
-.L3181:
+.L3187:
mov x0, x19
add x20, x21, :lo12:.LANCHOR0
bl ftl_get_new_free_page
@@ -20191,11 +20249,11 @@ ftl_write_commit:
str w0, [x1,1268]
cmp w2, 2
adrp x0, .LANCHOR4
- bhi .L3182
+ bhi .L3188
ldrh w1, [x19,6]
cmp w1, 1
- bne .L3154
-.L3182:
+ bne .L3160
+.L3188:
ldrb w1, [x19,5]
mov w4, 2
add x6, x21, :lo12:.LANCHOR0
@@ -20209,14 +20267,14 @@ ftl_write_commit:
ldrb w5, [x1,1266]
mov w1, 0
mov w3, w5
-.L3186:
+.L3192:
cmp w1, w4
- beq .L3213
+ beq .L3219
ubfiz x3, x3, 6, 8
add w1, w1, 1
ldrb w3, [x6,x3]
- b .L3186
-.L3213:
+ b .L3192
+.L3219:
add x0, x0, :lo12:.LANCHOR4
uxtb w1, w1
sub w2, w2, w1
@@ -20229,20 +20287,20 @@ ftl_write_commit:
bl sblk_prog_page
ldrh w0, [x19,6]
cmp w0, 1
- bne .L3154
+ bne .L3160
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
-.L3154:
+.L3160:
add x21, x21, :lo12:.LANCHOR0
ldrb w19, [x21,2856]
- cbnz w19, .L3152
+ cbnz w19, .L3158
bl ftl_write_completed
mov w0, w19
-.L3210:
+.L3216:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -20267,10 +20325,10 @@ gc_do_copy_back:
stp x27, x28, [sp,96]
ldrb w0, [x21,3273]
ldr x22, [x21,608]
- cbnz w0, .L3215
+ cbnz w0, .L3221
bl buf_alloc
mov x20, x0
- cbz x0, .L3214
+ cbz x0, .L3220
ldrh w22, [x21,2922]
mov w0, w22
add w22, w22, 1
@@ -20283,10 +20341,10 @@ gc_do_copy_back:
bl sblk_read_page
ldr w0, [x20,52]
cmp w0, 512
- beq .L3268
+ beq .L3274
cmn w0, #1
- bne .L3217
-.L3268:
+ bne .L3223
+.L3274:
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -20295,36 +20353,36 @@ gc_do_copy_back:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L3217:
+.L3223:
ldr x0, [x20,24]
ldr w21, [x0,4]
mov w0, w21
bl lpa_hash_get_ppa
str w0, [x29,144]
cmn w0, #1
- bne .L3219
+ bne .L3225
mov w0, w21
add x1, x29, 144
mov w2, 0
bl pm_log2phys
-.L3219:
+.L3225:
ldr w22, [x29,144]
cmp w22, w23
- bne .L3220
+ bne .L3226
add x1, x19, :lo12:.LANCHOR0
add x0, x1, 784
add x1, x1, 2832
-.L3223:
+.L3229:
ldr w2, [x0,36]
cmp w2, w21
- bne .L3221
+ bne .L3227
ldrb w2, [x0,2]
- tbz x2, 1, .L3221
+ tbz x2, 1, .L3227
mov x0, x20
bl buf_free
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L3214
+ tbz x0, 8, .L3220
add x19, x19, :lo12:.LANCHOR0
adrp x0, .LC274
mov w1, w21
@@ -20332,11 +20390,11 @@ gc_do_copy_back:
add x0, x0, :lo12:.LC274
ldrh w3, [x19,2922]
bl printk
- b .L3214
-.L3221:
+ b .L3220
+.L3227:
add x0, x0, 64
cmp x0, x1
- bne .L3223
+ bne .L3229
add x23, x19, :lo12:.LANCHOR0
ldrb w1, [x20,2]
str w21, [x20,36]
@@ -20351,7 +20409,7 @@ gc_do_copy_back:
str w0, [x20,32]
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L3224
+ tbz x0, 8, .L3230
ldr w2, [x29,144]
mov w0, w21
str x2, [x29,136]
@@ -20364,7 +20422,7 @@ gc_do_copy_back:
mov w1, w21
mov w4, w22
bl printk
-.L3224:
+.L3230:
add x19, x19, :lo12:.LANCHOR0
mov x0, x20
bl ftl_gc_write_buf
@@ -20376,11 +20434,11 @@ gc_do_copy_back:
ldrh w0, [x19,2924]
add w0, w0, 1
strh w0, [x19,2924]
- b .L3214
-.L3220:
+ b .L3220
+.L3226:
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L3226
+ tbz x0, 8, .L3232
mov w0, w21
add x19, x19, :lo12:.LANCHOR0
bl lpa_hash_get_ppa
@@ -20392,18 +20450,18 @@ gc_do_copy_back:
mov w2, w22
mov w4, w23
bl printk
-.L3226:
+.L3232:
mov x0, x20
bl buf_free
- b .L3214
-.L3215:
+ b .L3220
+.L3221:
ldrb w24, [x21,3257]
add x0, x21, 2896
add x22, x22, 80
cmp w24, 3
- bne .L3227
+ bne .L3233
ldrb w1, [x21,3272]
- cbz w1, .L3228
+ cbz w1, .L3234
ldrb w20, [x22,9]
ldrh w21, [x0,314]
str w24, [x29,136]
@@ -20412,8 +20470,8 @@ gc_do_copy_back:
sdiv w23, w21, w23
madd w20, w23, w20, w21
uxth w20, w20
- b .L3230
-.L3228:
+ b .L3236
+.L3234:
ldrh w20, [x0,314]
adrp x0, .LANCHOR2
ldrb w21, [x22,9]
@@ -20430,9 +20488,9 @@ gc_do_copy_back:
cmp w25, 1
add w21, w21, w21, lsl 1
uxth w21, w21
- bne .L3231
- b .L3230
-.L3227:
+ bne .L3237
+ b .L3236
+.L3233:
ldrb w20, [x22,9]
ldrb w1, [x21,3348]
ldrh w21, [x0,314]
@@ -20440,38 +20498,38 @@ gc_do_copy_back:
sdiv w23, w21, w20
msub w20, w23, w20, w21
uxth w20, w20
- cbz w1, .L3309
+ cbz w1, .L3315
mov w0, 2
-.L3309:
+.L3315:
str w0, [x29,136]
-.L3230:
+.L3236:
mov w25, 0
add x24, x19, :lo12:.LANCHOR0
adrp x3, .LANCHOR4
-.L3233:
+.L3239:
ldrb w1, [x22,9]
ldr w0, [x29,136]
mul w0, w0, w1
cmp w25, w0
- bge .L3266
+ bge .L3272
ldrh w0, [x24,3274]
add w26, w21, w25
mul w0, w0, w1
sub w0, w0, #1
cmp w26, w0
- beq .L3266
+ beq .L3272
add x0, x3, :lo12:.LANCHOR4
sbfiz x26, x26, 2, 32
ldr x1, [x0,1144]
ldr w0, [x1,x26]
cmn w0, #1
- bne .L3234
+ bne .L3240
ldrh w27, [x24,2922]
ldrh w0, [x24,2920]
str x3, [x29,120]
str x1, [x29,128]
cmp w0, w27
- bls .L3214
+ bls .L3220
mov w0, w27
add w27, w27, 1
bl gc_get_src_ppa_from_index
@@ -20479,17 +20537,17 @@ gc_do_copy_back:
ldr x1, [x29,128]
ldr x3, [x29,120]
str w0, [x1,x26]
-.L3234:
+.L3240:
add w25, w25, 1
uxth w25, w25
- b .L3233
-.L3266:
+ b .L3239
+.L3272:
mov w25, 1
-.L3231:
+.L3237:
adrp x0, .LANCHOR2
str x0, [x29,120]
ldr w1, [x0,#:lo12:.LANCHOR2]
- tbz x1, 8, .L3236
+ tbz x1, 8, .L3242
adrp x0, .LANCHOR4+1144
add x4, x19, :lo12:.LANCHOR0
ubfiz x5, x21, 2, 16
@@ -20503,7 +20561,7 @@ gc_do_copy_back:
ldr w5, [x6,x5]
mov w6, w21
bl printk
-.L3236:
+.L3242:
adrp x0, .LC0
mov w27, 0
add x0, x0, :lo12:.LC0
@@ -20512,12 +20570,12 @@ gc_do_copy_back:
add x0, x0, :lo12:.LANCHOR3
add x0, x0, 784
str x0, [x29,104]
-.L3237:
+.L3243:
ldrb w0, [x22,9]
ldr w1, [x29,136]
mul w0, w1, w0
cmp w27, w0
- bge .L3313
+ bge .L3319
add w26, w21, w27
sxtw x0, w26
str x0, [x29,128]
@@ -20526,11 +20584,11 @@ gc_do_copy_back:
ldr x0, [x0,3264]
ldrb w0, [x0,x1]
cmp w0, 255
- bne .L3238
+ bne .L3244
mov w0, 0
bl buf_alloc
mov x24, x0
- cbnz x0, .L3239
+ cbnz x0, .L3245
bl sblk_wait_write_queue_completed
bl ftl_write_completed
bl gc_write_completed
@@ -20538,8 +20596,8 @@ gc_do_copy_back:
mov w0, w24
bl buf_alloc
mov x24, x0
- cbz x0, .L3214
-.L3239:
+ cbz x0, .L3220
+.L3245:
add x28, x19, :lo12:.LANCHOR0
ldr x2, [x29,128]
ldrb w1, [x24,1]
@@ -20556,7 +20614,7 @@ gc_do_copy_back:
sub w0, w0, #1
cmp w26, w0
adrp x26, .LANCHOR4
- bne .L3240
+ bne .L3246
add x26, x26, :lo12:.LANCHOR4
mov w1, -1
ldr x0, [x26,1136]
@@ -20596,8 +20654,8 @@ gc_do_copy_back:
ldr x1, [x28,608]
ldr x0, [x24,24]
ldr w1, [x1,132]
- b .L3310
-.L3240:
+ b .L3316
+.L3246:
ldr x0, [x29,128]
mov w1, 1
lsl x28, x0, 2
@@ -20609,10 +20667,10 @@ gc_do_copy_back:
bl sblk_read_page
ldr w0, [x24,52]
cmp w0, 512
- beq .L3241
+ beq .L3247
cmn w0, #1
- bne .L3242
-.L3241:
+ bne .L3248
+.L3247:
add x4, x19, :lo12:.LANCHOR0
mov w2, 21
mov w1, 1
@@ -20629,35 +20687,35 @@ gc_do_copy_back:
bl ftl_sblk_dump
ldr w0, [x24,52]
cmp w0, 512
- beq .L3269
+ beq .L3275
cmn w0, #1
- bne .L3242
-.L3269:
+ bne .L3248
+.L3275:
ldr x0, [x24,24]
mov w1, -1
str w1, [x0,4]
-.L3242:
+.L3248:
ldr w0, [x24,52]
cmp w0, 512
- beq .L3270
+ beq .L3276
cmn w0, #1
- bne .L3245
-.L3270:
+ bne .L3251
+.L3276:
ldr x1, [x29,104]
mov w2, 716
ldr x0, [x29,112]
bl printk
bl dump_stack
-.L3245:
+.L3251:
ldr x1, [x24,24]
add x0, x19, :lo12:.LANCHOR0
ldr w2, [x1,4]
ldr w0, [x0,2840]
cmp w2, w0
- bcc .L3247
+ bcc .L3253
mov w0, -1
str w0, [x1,4]
-.L3247:
+.L3253:
ldr x0, [x24,24]
add x26, x26, :lo12:.LANCHOR4
ldr w1, [x0,4]
@@ -20665,9 +20723,9 @@ gc_do_copy_back:
str w1, [x0,x28]
ldr x0, [x24,24]
ldr w1, [x24,40]
-.L3310:
+.L3316:
str w1, [x0,8]
-.L3238:
+.L3244:
add x3, x19, :lo12:.LANCHOR0
ldr x2, [x29,128]
add x1, x3, 784
@@ -20683,7 +20741,7 @@ gc_do_copy_back:
cmp w0, 3
strb w25, [x1,61]
adrp x2, .LANCHOR4
- bne .L3248
+ bne .L3254
udiv w0, w27, w0
ldrh w3, [x3,3350]
add x2, x2, :lo12:.LANCHOR4
@@ -20701,30 +20759,30 @@ gc_do_copy_back:
add w0, w0, 1
orr w0, w3, w0, lsl 24
str w0, [x1,x4,lsl 2]
- b .L3249
-.L3248:
+ b .L3255
+.L3254:
cmp w0, 2
- bne .L3250
+ bne .L3256
ldrb w6, [x3,3348]
add x1, x1, 32
ldrh w0, [x3,3350]
- cbnz w6, .L3251
+ cbnz w6, .L3257
add w3, w27, w20
add x3, x22, x3, sxtw 1
ldrh w3, [x3,16]
madd w0, w3, w0, w23
- b .L3312
-.L3251:
+ b .L3318
+.L3257:
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
-.L3312:
+.L3318:
orr w0, w0, 33554432
str w0, [x1,8]
-.L3250:
+.L3256:
add x0, x19, :lo12:.LANCHOR0
add x2, x2, :lo12:.LANCHOR4
add x0, x0, 784
@@ -20733,10 +20791,10 @@ gc_do_copy_back:
ldrh w1, [x0,48]
ldr x0, [x2,1152]
str w3, [x0,x1,lsl 2]
-.L3249:
+.L3255:
ldr x0, [x29,120]
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L3252
+ tbz x0, 8, .L3258
add x0, x29, 144
ldr x1, [x29,128]
mov w2, w25
@@ -20759,53 +20817,53 @@ gc_do_copy_back:
add x0, x0, :lo12:.LC277
ldr w5, [x5,40]
bl printk
-.L3252:
+.L3258:
add w8, w27, 1
uxth w27, w8
- b .L3237
-.L3313:
+ b .L3243
+.L3319:
add x2, x19, :lo12:.LANCHOR0
mov w1, 0
ldrb w0, [x2,3257]
cmp w0, 3
add x0, x29, 144
- bne .L3296
+ bne .L3302
ldrb w1, [x2,3272]
- cbz w1, .L3255
-.L3258:
+ cbz w1, .L3261
+.L3264:
ldr x1, [x29,144]
strb wzr, [x1,60]
- b .L3256
-.L3255:
+ b .L3262
+.L3261:
cmp w25, 1
mov w2, 9
- beq .L3311
+ beq .L3317
cmp w25, 2
- bne .L3258
+ bne .L3264
mov w2, 13
-.L3311:
+.L3317:
ldr x1, [x29,144]
strb w2, [x1,60]
-.L3256:
+.L3262:
ldrb w2, [x22,9]
add x1, x0, 24
bl sblk_xlc_prog_pages
- b .L3259
-.L3296:
+ b .L3265
+.L3302:
ldrb w2, [x22,9]
ldr w3, [x29,136]
mul w2, w2, w3
sub w2, w2, #1
cmp w1, w2
- bge .L3314
+ bge .L3320
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 .L3296
-.L3314:
+ b .L3302
+.L3320:
ldr x0, [x0,w2,sxtw 3]
mov w1, -1
strb w1, [x0]
@@ -20813,20 +20871,20 @@ gc_do_copy_back:
ldr x0, [x29,144]
mul w1, w3, w1
bl sblk_prog_page
-.L3259:
+.L3265:
add x1, x19, :lo12:.LANCHOR0
ldrb w2, [x22,9]
ldrb w3, [x1,3272]
- cbz w3, .L3261
+ cbz w3, .L3267
add w0, w2, w2, lsl 1
and w2, w0, 1023
- b .L3262
-.L3261:
+ b .L3268
+.L3267:
ldrb w1, [x1,3348]
ubfiz w0, w2, 1, 8
cmp w1, wzr
csel w2, w0, w2, ne
-.L3262:
+.L3268:
add x19, x19, :lo12:.LANCHOR0
ldr x1, [x19,2864]
ldr w0, [x1,52]
@@ -20840,12 +20898,12 @@ gc_do_copy_back:
ldrb w2, [x22,9]
mul w1, w1, w2
cmp w0, w1
- blt .L3263
+ blt .L3269
ldr x0, [x19,608]
strh wzr, [x0,86]
-.L3263:
+.L3269:
bl gc_write_completed
-.L3214:
+.L3220:
sub sp, x29, #16
ldp x19, x20, [sp,32]
ldp x21, x22, [sp,48]
@@ -20878,63 +20936,63 @@ zftl_do_gc:
add w20, w0, w20
ldrh w22, [x1,2846]
uxth w20, w20
- bne .L3316
+ bne .L3322
adrp x21, .LANCHOR7
add x1, x21, :lo12:.LANCHOR7
ldr w23, [x1,-80]
- cbnz w23, .L3317
+ cbnz w23, .L3323
ldr w1, [x1,-76]
- cbz w1, .L3316
-.L3317:
+ cbz w1, .L3322
+.L3323:
add x1, x19, :lo12:.LANCHOR0
ldrh w2, [x1,3306]
cmp w20, w2, lsr 2
- bls .L3316
+ bls .L3322
ldrh w1, [x1,2872]
cmp w1, w20
- bcs .L3316
+ bcs .L3322
add w23, w23, 20
bl timer_get_time
cmp w23, w0
- bcs .L3318
+ bcs .L3324
add x0, x21, :lo12:.LANCHOR7
str wzr, [x0,-80]
-.L3318:
+.L3324:
add x19, x21, :lo12:.LANCHOR7
ldr w20, [x19,-76]
bl timer_get_time
add w20, w20, 20
cmp w20, w0
- bcs .L3501
+ bcs .L3507
str wzr, [x19,-76]
- b .L3501
-.L3316:
+ b .L3507
+.L3322:
adrp x23, .LANCHOR4
add x1, x23, :lo12:.LANCHOR4
ldrb w2, [x1,1130]
mov w1, 16
cmp w2, 6
- bhi .L3474
- adrp x1, .L3322
- add x1, x1, :lo12:.L3322
+ bhi .L3480
+ adrp x1, .L3328
+ add x1, x1, :lo12:.L3328
ldrh w1, [x1,w2,uxtw #1]
- adr x2, .Lrtx3322
+ adr x2, .Lrtx3328
add x1, x2, w1, sxth #2
br x1
-.Lrtx3322:
+.Lrtx3328:
.section .rodata
.align 0
.align 2
-.L3322:
- .2byte (.L3321 - .Lrtx3322) / 4
- .2byte (.L3323 - .Lrtx3322) / 4
- .2byte (.L3324 - .Lrtx3322) / 4
- .2byte (.L3325 - .Lrtx3322) / 4
- .2byte (.L3326 - .Lrtx3322) / 4
- .2byte (.L3432 - .Lrtx3322) / 4
- .2byte (.L3328 - .Lrtx3322) / 4
+.L3328:
+ .2byte (.L3327 - .Lrtx3328) / 4
+ .2byte (.L3329 - .Lrtx3328) / 4
+ .2byte (.L3330 - .Lrtx3328) / 4
+ .2byte (.L3331 - .Lrtx3328) / 4
+ .2byte (.L3332 - .Lrtx3328) / 4
+ .2byte (.L3438 - .Lrtx3328) / 4
+ .2byte (.L3334 - .Lrtx3328) / 4
.text
-.L3321:
+.L3327:
add x21, x19, :lo12:.LANCHOR0
add w22, w22, w0
ldrh w1, [x24,80]
@@ -20945,12 +21003,12 @@ zftl_do_gc:
mov w0, 65535
cmp w1, w0
uxth w25, w25
- beq .L3329
- cbnz w26, .L3330
+ beq .L3335
+ cbnz w26, .L3336
ldrh w0, [x21,2872]
cmp w20, w0, lsl 1
- bge .L3501
-.L3330:
+ bge .L3507
+.L3336:
add x21, x19, :lo12:.LANCHOR0
mov w1, 5
ldrh w0, [x21,3304]
@@ -20961,7 +21019,7 @@ zftl_do_gc:
uxth w2, w0
mov w1, 65535
cmp w2, w1
- beq .L3332
+ beq .L3338
add x3, x23, :lo12:.LANCHOR4
ubfiz x2, x2, 1, 16
ldr w1, [x3,1132]
@@ -20971,44 +21029,44 @@ zftl_do_gc:
ldrh w2, [x3,x2]
ldrh w3, [x21,3300]
cmp w3, w2
- bcs .L3333
+ bcs .L3339
ldrh w3, [x21,576]
cmp w1, w3, lsr 4
- bls .L3332
+ bls .L3338
ldrh w1, [x21,2874]
cmp w1, w2
- bls .L3332
-.L3333:
+ bls .L3338
+.L3339:
add x2, x19, :lo12:.LANCHOR0
mov w1, 0
ldrb w2, [x2,3273]
bl gc_add_sblk
- cbz w0, .L3334
+ cbz w0, .L3340
add x23, x23, :lo12:.LANCHOR4
mov w0, 1
str wzr, [x23,1132]
strb w0, [x23,1130]
- b .L3501
-.L3332:
+ b .L3507
+.L3338:
add x0, x19, :lo12:.LANCHOR0
strh wzr, [x0,3304]
-.L3334:
+.L3340:
cmp w22, 15
mov w21, 2
- bls .L3335
- cbz w25, .L3434
+ bls .L3341
+ cbz w25, .L3440
add x0, x19, :lo12:.LANCHOR0
mov w21, 1
ldrh w1, [x0,2854]
ldrh w0, [x0,3308]
cmp w1, w0
- bls .L3335
-.L3434:
+ bls .L3341
+.L3440:
mov w21, 2
-.L3335:
+.L3341:
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L3336
+ tbz x0, 8, .L3342
add x1, x19, :lo12:.LANCHOR0
mov w3, w20
mov w4, w22
@@ -21023,60 +21081,60 @@ zftl_do_gc:
adrp x0, .LC278
add x0, x0, :lo12:.LC278
bl printk
-.L3336:
+.L3342:
add x19, x19, :lo12:.LANCHOR0
mov w1, w21
mov w2, 1
ldrb w0, [x19,3273]
bl gc_search_src_blk
cmp w0, wzr
- ble .L3337
-.L3338:
+ ble .L3343
+.L3344:
add x23, x23, :lo12:.LANCHOR4
mov w0, 1
- b .L3504
-.L3337:
+ b .L3510
+.L3343:
ldrb w0, [x19,3273]
mov w1, 3
mov w2, 1
bl gc_search_src_blk
cmp w0, wzr
- bgt .L3338
- b .L3501
-.L3329:
+ bgt .L3344
+ b .L3507
+.L3335:
cmp w26, 1
- bne .L3339
+ bne .L3345
bl gc_scan_static_data
ldr x0, [x21,608]
ldrh w0, [x0,122]
- cbz w0, .L3340
-.L3341:
+ cbz w0, .L3346
+.L3347:
add x19, x19, :lo12:.LANCHOR0
mov w0, 1
add x23, x23, :lo12:.LANCHOR4
strb w0, [x19,3273]
- b .L3504
-.L3340:
+ b .L3510
+.L3346:
bl gc_static_wearleveling
- cbnz w0, .L3341
+ cbnz w0, .L3347
bl gc_block_vpn_scan
- cbz w22, .L3435
+ cbz w22, .L3441
cmp w20, w25
- bcs .L3344
+ bcs .L3350
ldrh w0, [x21,3306]
cmp w20, w0, lsl 1
- blt .L3345
-.L3344:
+ blt .L3351
+.L3350:
add x0, x19, :lo12:.LANCHOR0
add w1, w20, w25
ldrh w2, [x0,3306]
cmp w1, w2, lsl 1
- blt .L3345
+ blt .L3351
ldrh w1, [x0,2854]
ldrh w0, [x0,3308]
cmp w1, w0
- bcc .L3435
-.L3345:
+ bcc .L3441
+.L3351:
add x21, x19, :lo12:.LANCHOR0
add x27, x23, :lo12:.LANCHOR4
mov w28, 1
@@ -21086,17 +21144,17 @@ zftl_do_gc:
strb w28, [x21,3273]
str w1, [x27,1132]
cmp w1, w0, lsr 5
- bls .L3347
+ bls .L3353
ldrh w0, [x21,2854]
cmp w0, w22
- bls .L3347
+ bls .L3353
mov w1, 5
mov w0, 0
bl zftl_get_gc_node
uxth w1, w0
mov w0, 65535
cmp w1, w0
- beq .L3435
+ beq .L3441
ubfiz x1, x1, 1, 16
ldr x0, [x21,600]
ldrb w2, [x21,3276]
@@ -21105,47 +21163,47 @@ zftl_do_gc:
ldrh w1, [x21,3300]
mul w1, w1, w2
cmp w0, w1
- bgt .L3343
+ bgt .L3349
str wzr, [x27,1132]
mov w0, w28
mov w1, 2
- b .L3494
-.L3347:
+ b .L3500
+.L3353:
add x0, x19, :lo12:.LANCHOR0
ldrh w2, [x0,2854]
ldrh w1, [x0,3308]
cmp w2, w1
- bcc .L3350
+ bcc .L3356
mov w0, 1
mov w1, 2
mov w2, w0
- b .L3495
-.L3350:
+ b .L3501
+.L3356:
ldrh w24, [x0,2850]
- cbnz w24, .L3351
+ cbnz w24, .L3357
ldrh w0, [x0,2852]
cmp w0, 8
- bls .L3343
-.L3351:
+ bls .L3349
+.L3357:
mov w0, 1
mov w1, w0
-.L3494:
+.L3500:
mov w2, 4
-.L3495:
+.L3501:
bl gc_search_src_blk
uxth w0, w0
- cbnz w0, .L3338
- b .L3435
-.L3339:
+ cbnz w0, .L3344
+ b .L3441
+.L3345:
ldrh w0, [x21,2872]
cmp w0, w20
- bcc .L3501
-.L3435:
+ bcc .L3507
+.L3441:
mov w24, 16
-.L3343:
+.L3349:
add x21, x19, :lo12:.LANCHOR0
ldr w0, [x21,2884]
- cbz w0, .L3352
+ cbz w0, .L3358
mov w0, 1
mov w1, 5
strb w0, [x21,3273]
@@ -21155,67 +21213,67 @@ zftl_do_gc:
uxth w1, w0
mov w2, 65535
cmp w1, w2
- beq .L3353
+ beq .L3359
ubfiz x1, x1, 1, 16
ldr x2, [x21,600]
ldrh w1, [x2,x1]
cmp w1, 8
- bhi .L3353
+ bhi .L3359
mov w2, 1
mov w1, 0
str w2, [x21,2884]
bl gc_add_sblk
- cbnz w0, .L3338
-.L3353:
+ cbnz w0, .L3344
+.L3359:
mov w1, 4
mov w0, 0
bl zftl_get_gc_node
uxth w1, w0
mov w2, 65535
cmp w1, w2
- beq .L3354
+ beq .L3360
add x3, x19, :lo12:.LANCHOR0
ubfiz x1, x1, 1, 16
ldr x2, [x3,600]
ldrh w1, [x2,x1]
cmp w1, 4
- bhi .L3354
+ bhi .L3360
mov w2, 1
mov w1, 0
str w2, [x3,2884]
bl gc_add_sblk
- cbnz w0, .L3338
-.L3354:
+ cbnz w0, .L3344
+.L3360:
mov w0, 0
bl zftl_get_gc_node.part.12
uxth w1, w0
mov w2, 65535
cmp w1, w2
- beq .L3352
+ beq .L3358
add x2, x19, :lo12:.LANCHOR0
ubfiz x1, x1, 1, 16
ldr x3, [x2,600]
ldrh w1, [x3,x1]
cmp w1, 4
- bhi .L3352
+ bhi .L3358
mov w1, 1
str w1, [x2,2884]
mov w2, 0
bl gc_add_sblk
- cbnz w0, .L3338
-.L3352:
+ cbnz w0, .L3344
+.L3358:
add x21, x19, :lo12:.LANCHOR0
mov w0, 1
ldr x7, [x21,608]
strb w0, [x21,3273]
ldrh w5, [x7,124]
- cbz w5, .L3355
+ cbz w5, .L3361
add x23, x23, :lo12:.LANCHOR4
strb wzr, [x21,3273]
strb w0, [x23,1130]
adrp x0, .LANCHOR2
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L3356
+ tbz x0, 8, .L3362
ldrh w6, [x7,120]
adrp x0, .LC279
ldrh w7, [x7,122]
@@ -21225,35 +21283,35 @@ zftl_do_gc:
mov w4, w22
add x0, x0, :lo12:.LC279
bl printk
- b .L3356
-.L3355:
+ b .L3362
+.L3361:
ldrh w2, [x21,2872]
cmp w20, w2
- bcs .L3357
- cbz w22, .L3358
+ bcs .L3363
+ cbz w22, .L3364
cmp w22, 16
- bls .L3359
+ bls .L3365
ldrh w2, [x21,2854]
ldrh w1, [x21,3308]
cmp w2, w1
- bhi .L3359
+ bhi .L3365
mov w1, w0
mov w2, 4
str x5, [x29,104]
bl gc_search_src_blk
uxth w0, w0
ldr x5, [x29,104]
- cbnz w0, .L3360
+ cbnz w0, .L3366
ldrb w0, [x21,3273]
- b .L3503
-.L3360:
+ b .L3509
+.L3366:
mov w1, 5
mov w0, w5
bl zftl_get_gc_node
uxth w2, w0
mov w1, 65535
cmp w2, w1
- beq .L3429
+ beq .L3435
add x3, x23, :lo12:.LANCHOR4
ubfiz x2, x2, 1, 16
ldr w1, [x3,1132]
@@ -21263,14 +21321,14 @@ zftl_do_gc:
ldrh w2, [x3,x2]
ldrh w3, [x21,3300]
cmp w3, w2
- bcs .L3363
+ bcs .L3369
ldrh w3, [x21,576]
cmp w1, w3, lsr 4
- bls .L3429
+ bls .L3435
ldrh w1, [x21,2874]
cmp w1, w2
- bls .L3429
-.L3363:
+ bls .L3435
+.L3369:
add x19, x19, :lo12:.LANCHOR0
mov w1, 0
ldrb w2, [x19,3273]
@@ -21279,28 +21337,28 @@ zftl_do_gc:
str w0, [x19,2884]
add x0, x23, :lo12:.LANCHOR4
str wzr, [x0,1132]
- b .L3429
-.L3359:
+ b .L3435
+.L3365:
mov w0, 1
mov w1, 2
mov w2, w0
bl gc_search_src_blk
uxth w0, w0
- cbnz w0, .L3429
+ cbnz w0, .L3435
add x19, x19, :lo12:.LANCHOR0
-.L3500:
+.L3506:
ldrb w0, [x19,3273]
mov w1, 3
mov w2, 2
-.L3497:
+.L3503:
bl gc_search_src_blk
uxth w0, w0
- b .L3361
-.L3358:
+ b .L3367
+.L3364:
adrp x0, .LANCHOR2
strb w22, [x21,3273]
ldr w0, [x0,#:lo12:.LANCHOR2]
- tbz x0, 8, .L3365
+ tbz x0, 8, .L3371
adrp x0, .LC279
ldrh w6, [x7,120]
ldrh w7, [x7,122]
@@ -21311,39 +21369,39 @@ zftl_do_gc:
mov w4, w22
mov w5, w22
bl printk
-.L3365:
+.L3371:
add x19, x19, :lo12:.LANCHOR0
cmp w20, 16
ldrb w0, [x19,3273]
- bls .L3366
-.L3503:
+ bls .L3372
+.L3509:
mov w1, 3
mov w2, 4
- b .L3497
-.L3366:
+ b .L3503
+.L3372:
mov w1, 1
mov w2, w1
bl gc_search_src_blk
uxth w0, w0
- cbnz w0, .L3429
- b .L3500
-.L3357:
+ cbnz w0, .L3435
+ b .L3506
+.L3363:
cmp w26, 1
mov w1, w24
- bne .L3474
+ bne .L3480
cmp w20, w2, lsl 1
- bge .L3367
+ bge .L3373
cmp w25, w22, lsr 1
- bcs .L3368
+ bcs .L3374
ldrh w2, [x21,2854]
ldrh w0, [x21,3308]
cmp w2, w0
- bcs .L3368
+ bcs .L3374
ldrh w0, [x21,3306]
lsr w0, w0, 2
strh w0, [x21,2872]
- b .L3474
-.L3368:
+ b .L3480
+.L3374:
mov w1, 5
mov w0, 0
bl zftl_get_gc_node
@@ -21351,12 +21409,12 @@ zftl_do_gc:
mov w1, 65535
mov w27, w21
cmp w21, w1
- bne .L3369
-.L3374:
+ bne .L3375
+.L3380:
cmp w22, 1
- bhi .L3370
- b .L3371
-.L3369:
+ bhi .L3376
+ b .L3377
+.L3375:
add x26, x23, :lo12:.LANCHOR4
add x2, x19, :lo12:.LANCHOR0
uxtw x21, w21
@@ -21365,94 +21423,94 @@ zftl_do_gc:
add w1, w1, 1
str w1, [x26,1132]
cmp w1, w3, lsr 4
- bls .L3372
+ bls .L3378
ldr x1, [x2,600]
str wzr, [x26,1132]
ldrh w3, [x1,x21,lsl 1]
ldrh w1, [x2,2874]
cmp w3, w1
- bcs .L3372
+ bcs .L3378
mov w1, 0
mov w2, 1
bl gc_add_sblk
- cbz w0, .L3372
+ cbz w0, .L3378
mov w0, 1
strb w0, [x26,1130]
- b .L3356
-.L3372:
+ b .L3362
+.L3378:
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 .L3373
+ bhi .L3379
mov w0, w27
mov w1, 1
mov w2, 0
bl gc_add_sblk
- b .L3429
-.L3373:
+ b .L3435
+.L3379:
ldrh w3, [x1,2850]
ldrh w0, [x1,2852]
add w0, w3, w0
ldrh w3, [x1,3306]
cmp w0, w3, lsl 1
- ble .L3374
+ ble .L3380
ldrh w0, [x1,2874]
cmp w0, w2
- bcc .L3371
- b .L3374
-.L3370:
+ bcc .L3377
+ b .L3380
+.L3376:
add x21, x19, :lo12:.LANCHOR0
mov w0, 1
cmp w22, 16
strb w0, [x21,3273]
- bls .L3375
+ bls .L3381
ldrh w2, [x21,2854]
ldrh w1, [x21,3308]
cmp w2, w1
- bhi .L3375
+ bhi .L3381
mov w1, w0
mov w2, 4
bl gc_search_src_blk
uxth w0, w0
- cbnz w0, .L3376
+ cbnz w0, .L3382
ldrb w0, [x21,3273]
mov w1, 3
mov w2, 4
- b .L3496
-.L3375:
+ b .L3502
+.L3381:
mov w0, 1
mov w1, 2
mov w2, w0
bl gc_search_src_blk
uxth w0, w0
- cbnz w0, .L3376
+ cbnz w0, .L3382
add x0, x19, :lo12:.LANCHOR0
mov w1, 3
mov w2, 2
ldrb w0, [x0,3273]
-.L3496:
+.L3502:
bl gc_search_src_blk
uxth w0, w0
-.L3376:
+.L3382:
add x19, x19, :lo12:.LANCHOR0
cmp w20, w25, lsr 1
ldrh w1, [x19,3306]
- bls .L3498
+ bls .L3504
lsr w1, w1, 2
- b .L3499
-.L3371:
+ b .L3505
+.L3377:
cmp w20, w25
add x19, x19, :lo12:.LANCHOR0
- bcs .L3378
+ bcs .L3384
mov w0, 4
strb wzr, [x19,3273]
bl zftl_get_gc_node.part.12
uxth w0, w0
mov w1, 65535
cmp w0, w1
- beq .L3378
+ beq .L3384
ubfiz x0, x0, 1, 16
ldr x1, [x19,600]
ldrb w2, [x19,3276]
@@ -21460,83 +21518,83 @@ zftl_do_gc:
ldrh w0, [x19,3300]
mul w0, w0, w2
cmp w1, w0, lsr 1
- bgt .L3378
+ bgt .L3384
mov w1, 3
mov w0, 0
mov w2, 4
bl gc_search_src_blk
uxth w0, w0
ldrh w1, [x19,3306]
-.L3498:
+.L3504:
lsr w1, w1, 1
-.L3499:
+.L3505:
strh w1, [x19,2872]
- b .L3361
-.L3378:
+ b .L3367
+.L3384:
ldrh w0, [x19,3306]
lsr w0, w0, 2
strh w0, [x19,2872]
- b .L3356
-.L3367:
+ b .L3362
+.L3373:
ldrh w0, [x21,3306]
mov w24, w5
lsr w0, w0, 2
strh w0, [x21,2872]
- b .L3356
-.L3361:
+ b .L3362
+.L3367:
mov w1, w24
- cbz w0, .L3474
-.L3429:
+ cbz w0, .L3480
+.L3435:
add x23, x23, :lo12:.LANCHOR4
mov w0, 1
strb w0, [x23,1130]
- b .L3356
-.L3323:
+ b .L3362
+.L3329:
add x20, x19, :lo12:.LANCHOR0
mov w0, 65535
ldrh w1, [x20,2896]
cmp w1, w0
- bne .L3381
+ bne .L3387
bl gc_get_src_blk
strh w0, [x20,2896]
-.L3381:
+.L3387:
add x0, x19, :lo12:.LANCHOR0
mov w2, 65535
add x1, x0, 2896
ldrh w3, [x0,2896]
cmp w3, w2
- beq .L3502
+ beq .L3508
ldrh w5, [x1,56]
uxtw x4, w3
ldr x2, [x0,584]
add x2, x2, x4, lsl 2
- cbz w5, .L3384
+ cbz w5, .L3390
mov x0, 0
-.L3383:
+.L3389:
cmp w5, w0, uxth
- bls .L3384
+ bls .L3390
add x0, x0, 1
add x6, x1, x0, lsl 1
ldrh w6, [x6,56]
cmp w6, w3
- bne .L3383
-.L3389:
+ bne .L3389
+.L3395:
add x19, x19, :lo12:.LANCHOR0
mov w0, -1
strh w0, [x19,2896]
- b .L3501
-.L3384:
+ b .L3507
+.L3390:
ldrb w0, [x2,2]
tst w0, 192
- beq .L3442
+ beq .L3448
and w0, w0, 224
cmp w0, 224
- bne .L3386
-.L3442:
+ bne .L3392
+.L3448:
add x0, x19, :lo12:.LANCHOR0
ldr x0, [x0,600]
ldrh w0, [x0,x4,lsl 1]
- cbz w0, .L3389
+ cbz w0, .L3395
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -21545,40 +21603,40 @@ zftl_do_gc:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
- b .L3389
-.L3386:
+ b .L3395
+.L3392:
add x23, x23, :lo12:.LANCHOR4
mov w0, 2
- b .L3504
-.L3324:
+ b .L3510
+.L3330:
bl gc_scan_src_blk
cmn w0, #1
- bne .L3390
+ bne .L3396
add x23, x23, :lo12:.LANCHOR4
mov w0, 3
-.L3504:
+.L3510:
strb w0, [x23,1130]
- b .L3501
-.L3390:
+ b .L3507
+.L3396:
add x1, x19, :lo12:.LANCHOR0
mov w3, 65535
ldrh w0, [x1,2896]
cmp w0, w3
- beq .L3338
+ beq .L3344
ldrh w3, [x1,2920]
add x23, x23, :lo12:.LANCHOR4
- cbz w3, .L3391
+ cbz w3, .L3397
mov w0, 4
strh wzr, [x1,2922]
strb w0, [x23,1130]
- b .L3501
-.L3391:
+ b .L3507
+.L3397:
ubfiz x0, x0, 1, 16
ldr x1, [x1,600]
mov w2, 1
strb w2, [x23,1130]
ldrh w0, [x1,x0]
- cbz w0, .L3392
+ cbz w0, .L3398
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -21587,7 +21645,7 @@ zftl_do_gc:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L3392:
+.L3398:
add x20, x19, :lo12:.LANCHOR0
add x21, x20, 2896
ldrh w0, [x20,2896]
@@ -21599,39 +21657,39 @@ zftl_do_gc:
add w0, w0, 1
uxth w0, w0
cmp w0, 8
- bhi .L3393
+ bhi .L3399
strh w0, [x21,30]
- b .L3389
-.L3393:
+ b .L3395
+.L3399:
strh wzr, [x21,30]
bl ftl_flush
bl pm_flush
bl ftl_ext_info_flush
mov w0, 0
bl ftl_info_flush
- b .L3389
-.L3325:
+ b .L3395
+.L3331:
add x21, x19, :lo12:.LANCHOR0
-.L3475:
+.L3481:
bl gc_scan_src_blk_one_page
ldrh w2, [x21,2898]
add x0, x21, 2896
ldrh w1, [x21,3300]
cmp w2, w1
- bcs .L3395
+ bcs .L3401
cmp w20, 7
- bls .L3475
- b .L3501
-.L3395:
+ bls .L3481
+ b .L3507
+.L3401:
ldrh w3, [x0,24]
adrp x2, .LANCHOR2
- cbz w3, .L3396
+ cbz w3, .L3402
add x23, x23, :lo12:.LANCHOR4
mov w1, 4
strh wzr, [x0,26]
strb w1, [x23,1130]
ldr w1, [x2,#:lo12:.LANCHOR2]
- tbz x1, 8, .L3397
+ tbz x1, 8, .L3403
ldrh w1, [x0]
adrp x0, .LC280
ldr x4, [x21,600]
@@ -21639,14 +21697,14 @@ zftl_do_gc:
ubfiz x2, x1, 1, 16
ldrh w2, [x4,x2]
bl printk
-.L3397:
+.L3403:
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 .L3398
+ beq .L3404
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -21655,14 +21713,14 @@ zftl_do_gc:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L3398:
+.L3404:
add x19, x19, :lo12:.LANCHOR0
ldrh w1, [x19,2896]
ldr x0, [x19,600]
ldrh w2, [x19,2920]
strh w2, [x0,x1,lsl 1]
- b .L3501
-.L3396:
+ b .L3507
+.L3402:
add x23, x23, :lo12:.LANCHOR4
ldrh w1, [x0]
mov w0, 1
@@ -21670,20 +21728,20 @@ zftl_do_gc:
add x20, x20, x1, uxth 2
strb w0, [x23,1130]
ldr w0, [x2,#:lo12:.LANCHOR2]
- tbz x0, 8, .L3399
+ tbz x0, 8, .L3405
ldrb w2, [x20,2]
adrp x0, .LC281
add x0, x0, :lo12:.LC281
ubfx x2, x2, 5, 3
bl printk
-.L3399:
+.L3405:
ldrb w0, [x20,2]
tst w0, 192
- beq .L3443
+ beq .L3449
and w0, w0, 224
cmp w0, 224
- bne .L3400
-.L3443:
+ bne .L3406
+.L3449:
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -21692,7 +21750,7 @@ zftl_do_gc:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L3400:
+.L3406:
add x19, x19, :lo12:.LANCHOR0
add x20, x19, 2896
ldrh w0, [x19,2896]
@@ -21703,44 +21761,44 @@ zftl_do_gc:
add w0, w0, 1
uxth w0, w0
cmp w0, 8
- bhi .L3402
+ bhi .L3408
strh w0, [x20,30]
- b .L3501
-.L3402:
+ b .L3507
+.L3408:
strh wzr, [x20,30]
- b .L3505
-.L3326:
- cbnz w26, .L3403
+ b .L3511
+.L3332:
+ cbnz w26, .L3409
add x0, x19, :lo12:.LANCHOR0
ldrh w0, [x0,2872]
cmp w0, w20
- bcc .L3501
-.L3403:
+ bcc .L3507
+.L3409:
ldrh w1, [x24,80]
mov w0, 65535
cmp w1, w0
- bne .L3404
+ bne .L3410
add x22, x19, :lo12:.LANCHOR0
ldrb w21, [x22,3273]
cmp w21, 1
- bne .L3404
+ bne .L3410
bl ftl_flush
ldrh w0, [x22,3214]
- cbz w0, .L3405
+ cbz w0, .L3411
mov w0, w21
-.L3405:
+.L3411:
mov w1, 5
bl zftl_gc_get_free_sblk
uxth w20, w0
mov w0, 65535
cmp w20, w0
- beq .L3407
+ beq .L3413
add x0, x19, :lo12:.LANCHOR0
ldr x21, [x0,584]
add x21, x21, x20, uxth 2
ldrb w0, [x21,2]
tst w0, 224
- beq .L3408
+ beq .L3414
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -21749,13 +21807,13 @@ zftl_do_gc:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L3408:
+.L3414:
ldrb w0, [x21,2]
mov w1, 5
bfi w0, w1, 5, 3
orr w0, w0, 16
strb w0, [x21,2]
-.L3430:
+.L3436:
mov w0, w20
mov w1, 1
add x19, x19, :lo12:.LANCHOR0
@@ -21812,8 +21870,8 @@ zftl_do_gc:
strh wzr, [x19,3212]
strh wzr, [x19,3216]
bl ftl_info_flush
- b .L3501
-.L3404:
+ b .L3507
+.L3410:
cmp w26, 1
mov w21, 4
csinc w21, w21, wzr, eq
@@ -21821,23 +21879,23 @@ zftl_do_gc:
add w0, w21, 4
add x22, x19, :lo12:.LANCHOR0
csel w21, w0, w21, ls
-.L3411:
+.L3417:
sub w21, w21, #1
uxtb w21, w21
cmp w21, 255
- beq .L3501
+ beq .L3507
bl gc_do_copy_back
ldrb w0, [x22,3273]
- cbnz w0, .L3412
+ cbnz w0, .L3418
ldrb w0, [x22,2834]
cmp w0, 3
- bhi .L3413
+ bhi .L3419
bl ftl_write_commit
-.L3413:
+.L3419:
ldrh w1, [x22,2922]
ldrh w0, [x22,2920]
cmp w1, w0
- bcc .L3411
+ bcc .L3417
add x23, x23, :lo12:.LANCHOR4
mov w0, 1
strb w0, [x23,1130]
@@ -21846,7 +21904,7 @@ zftl_do_gc:
ldrh w1, [x22,2896]
ldr x0, [x22,600]
ldrh w0, [x0,x1,lsl 1]
- cbz w0, .L3415
+ cbz w0, .L3421
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -21855,34 +21913,34 @@ zftl_do_gc:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L3415:
+.L3421:
add x1, x19, :lo12:.LANCHOR0
ldrh w0, [x1,2896]
ldr x3, [x1,600]
ubfiz x2, x0, 1, 16
ldrh w4, [x3,x2]
- cbnz w4, .L3416
+ cbnz w4, .L3422
strh w4, [x3,x2]
ldrh w0, [x1,2896]
bl ftl_free_sblk
- b .L3389
-.L3416:
+ b .L3395
+.L3422:
mov w1, 0
mov w2, 1
bl gc_add_sblk
- b .L3389
-.L3412:
+ b .L3395
+.L3418:
add x20, x22, 2896
ldrh w0, [x20,320]
- cbz w0, .L3417
+ cbz w0, .L3423
strh wzr, [x20,320]
bl sblk_wait_write_queue_completed
bl gc_write_completed
ldr w0, [x20,324]
cmn w0, #1
- beq .L3418
+ beq .L3424
bl ftl_mask_bad_block
-.L3418:
+.L3424:
add x20, x19, :lo12:.LANCHOR0
ldr x0, [x20,608]
str wzr, [x20,3220]
@@ -21896,9 +21954,9 @@ zftl_do_gc:
strh w0, [x2,126]
strh w0, [x1,130]
ldr x0, [x20,2904]
- cbz x0, .L3419
+ cbz x0, .L3425
bl buf_free
-.L3419:
+.L3425:
add x19, x19, :lo12:.LANCHOR0
add x23, x23, :lo12:.LANCHOR4
str xzr, [x19,2904]
@@ -21912,15 +21970,15 @@ zftl_do_gc:
strb wzr, [x23,1130]
bl printk
bl dump_stack
- b .L3501
-.L3417:
+ b .L3507
+.L3423:
ldrh w0, [x24,86]
cmp w0, 1
- bls .L3420
+ bls .L3426
ldrh w1, [x20,26]
ldrh w0, [x20,24]
cmp w1, w0
- bcc .L3411
+ bcc .L3417
add x23, x23, :lo12:.LANCHOR4
mov w0, 1
strb w0, [x23,1130]
@@ -21932,15 +21990,15 @@ zftl_do_gc:
strh w1, [x0,58]
mov w0, -1
strh w0, [x20]
- b .L3501
-.L3420:
+ b .L3507
+.L3426:
add x23, x23, :lo12:.LANCHOR4
mov w0, 5
ldrh w1, [x20,26]
strb w0, [x23,1130]
ldrh w0, [x20,24]
cmp w1, w0
- bcc .L3421
+ bcc .L3427
ldrh w0, [x20,56]
add w1, w0, 1
add x0, x20, x0, sxtw 1
@@ -21949,7 +22007,7 @@ zftl_do_gc:
strh w1, [x0,58]
mov w0, -1
strh w0, [x20]
-.L3421:
+.L3427:
add x20, x19, :lo12:.LANCHOR0
bl ftl_flush
bl sblk_wait_write_queue_completed
@@ -21965,23 +22023,23 @@ zftl_do_gc:
strh w1, [x20,2914]
cmp w2, 2
strh w2, [x20,2916]
- bne .L3423
+ bne .L3429
lsl w1, w1, 1
strh w1, [x20,2914]
ldrb w1, [x20,3348]
- cbnz w1, .L3423
+ cbnz w1, .L3429
mov w1, 1
strh w1, [x20,2916]
-.L3423:
+.L3429:
add x19, x19, :lo12:.LANCHOR0
strh wzr, [x19,2918]
- b .L3501
-.L3432:
+ b .L3507
+.L3438:
mov w21, 0
add x24, x19, :lo12:.LANCHOR0
-.L3327:
+.L3333:
bl gc_check_data_one_wl
- cbz w0, .L3426
+ cbz w0, .L3432
add x19, x19, :lo12:.LANCHOR0
add x23, x23, :lo12:.LANCHOR4
ldr x0, [x19,608]
@@ -21998,32 +22056,32 @@ zftl_do_gc:
bl buf_free
str xzr, [x19,2904]
strb wzr, [x23,1130]
-.L3505:
+.L3511:
bl flt_sys_flush
- b .L3501
-.L3426:
+ b .L3507
+.L3432:
ldrh w1, [x24,2912]
ldrh w0, [x24,2914]
cmp w1, w0
- bcc .L3427
+ bcc .L3433
add x23, x23, :lo12:.LANCHOR4
mov w0, 6
strb w0, [x23,1130]
ldr x0, [x24,2904]
bl buf_free
str xzr, [x24,2904]
- b .L3501
-.L3427:
+ b .L3507
+.L3433:
cmp w20, 15
- bls .L3327
+ bls .L3333
cmp w26, 1
- bne .L3501
+ bne .L3507
add w21, w21, 1
uxtb w21, w21
cmp w21, 4
- bls .L3327
- b .L3501
-.L3328:
+ bls .L3333
+ b .L3507
+.L3334:
bl gc_update_l2p_map_new
mov w20, -1
bl gc_free_src_blk
@@ -22036,16 +22094,16 @@ zftl_do_gc:
strh w20, [x0,126]
mov w0, 0
bl ftl_info_flush
-.L3502:
+.L3508:
add x23, x23, :lo12:.LANCHOR4
strb wzr, [x23,1130]
-.L3501:
+.L3507:
mov w1, 16
- b .L3474
-.L3356:
+ b .L3480
+.L3362:
mov w1, w24
- b .L3474
-.L3407:
+ b .L3480
+.L3413:
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -22054,8 +22112,8 @@ zftl_do_gc:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
- b .L3430
-.L3474:
+ b .L3436
+.L3480:
sub sp, x29, #16
mov w0, w1
ldp x19, x20, [sp,32]
@@ -22084,30 +22142,30 @@ zftl_write:
stp x21, x22, [sp,32]
mov w28, w1
mov x25, x3
- tbz x0, 12, .L3507
+ tbz x0, 12, .L3513
adrp x0, .LC282
mov w1, w19
add x0, x0, :lo12:.LC282
mov w2, w28
mov w3, w23
bl printk
-.L3507:
- cbnz w19, .L3508
+.L3513:
+ cbnz w19, .L3514
adrp x0, .LANCHOR0+520
mov w19, 24576
ldr w2, [x0,#:lo12:.LANCHOR0+520]
- b .L3509
-.L3508:
+ b .L3515
+.L3514:
cmp w19, 3
mov w0, -1
- bhi .L3510
+ bhi .L3516
lsl w19, w19, 13
mov w2, 8192
-.L3509:
+.L3515:
add w1, w28, w23
mov w0, -1
cmp w1, w2
- bhi .L3510
+ bhi .L3516
add w28, w19, w28
adrp x19, .LANCHOR0
add x0, x19, :lo12:.LANCHOR0
@@ -22120,15 +22178,15 @@ zftl_write:
udiv w22, w22, w0
sub w20, w22, w24
add w20, w20, 1
-.L3511:
- cbz w20, .L3530
+.L3517:
+ cbz w20, .L3536
mov w0, 0
bl buf_alloc
mov x27, x0
- cbnz x0, .L3512
+ cbnz x0, .L3518
bl ftl_write_commit
- b .L3511
-.L3512:
+ b .L3517
+.L3518:
strb wzr, [x0,57]
add x0, x19, :lo12:.LANCHOR0
cmp w21, w24
@@ -22136,12 +22194,12 @@ zftl_write:
cset w0, eq
strb w4, [x27,56]
cmp w21, w22
- beq .L3514
- cbz w0, .L3515
- b .L3524
-.L3514:
- cbz w0, .L3516
-.L3524:
+ beq .L3520
+ cbz w0, .L3521
+ b .L3530
+.L3520:
+ cbz w0, .L3522
+.L3530:
udiv w0, w28, w4
msub w0, w0, w4, w28
uxtb w0, w0
@@ -22150,12 +22208,12 @@ zftl_write:
uxtb w4, w4
cmp w4, w23
csel w4, w23, w4, hi
- b .L3528
-.L3516:
+ b .L3534
+.L3522:
msub w4, w4, w21, w26
-.L3528:
+.L3534:
strb w4, [x27,56]
-.L3515:
+.L3521:
ldrb w1, [x27,57]
sub w20, w20, #1
ldr x0, [x27,8]
@@ -22176,11 +22234,11 @@ zftl_write:
bl ftl_write_buf
ldrb w0, [x27,56]
add x25, x25, x0, lsl 9
- b .L3511
-.L3530:
+ b .L3517
+.L3536:
bl ftl_write_commit
mov w0, w20
-.L3529:
+.L3535:
mov w1, 1
bl zftl_do_gc
add x1, x19, :lo12:.LANCHOR0
@@ -22188,15 +22246,15 @@ zftl_write:
ldrh w0, [x1,2848]
add w0, w2, w0
cmp w0, 7
- bgt .L3531
+ bgt .L3537
mov w0, 0
- b .L3529
-.L3531:
+ b .L3535
+.L3537:
bl timer_get_time
adrp x1, .LANCHOR7-76
str w0, [x1,#:lo12:.LANCHOR7-76]
mov w0, 0
-.L3510:
+.L3516:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -22254,7 +22312,7 @@ zftl_discard:
stp x27, x28, [sp,80]
ldr w1, [x1,520]
cmp w2, w1
- bhi .L3535
+ bhi .L3541
adrp x23, .LANCHOR7
add w24, w0, 24576
add x0, x23, :lo12:.LANCHOR7
@@ -22263,14 +22321,14 @@ zftl_discard:
add w1, w19, w1
str w1, [x0,-72]
ldr w0, [x25,#:lo12:.LANCHOR2]
- tbz x0, 12, .L3536
+ tbz x0, 12, .L3542
adrp x0, .LC283
mov w2, w24
add x0, x0, :lo12:.LC283
mov w3, w19
mov w4, 0
bl printk
-.L3536:
+.L3542:
add x20, x21, :lo12:.LANCHOR0
ldr x0, [x20,2864]
ldr w26, [x0,8]
@@ -22281,7 +22339,7 @@ zftl_discard:
ldrb w22, [x20,2832]
udiv w20, w24, w22
msub w27, w20, w22, w24
- cbz w27, .L3537
+ cbz w27, .L3543
sub w22, w22, w27
mov w0, w20
cmp w22, w19
@@ -22289,20 +22347,20 @@ zftl_discard:
bl lpa_hash_get_ppa
str w0, [x29,120]
cmn w0, #1
- bne .L3538
+ bne .L3544
mov w0, w20
add x1, x29, 120
mov w2, 0
bl pm_log2phys
-.L3538:
+.L3544:
ldr w0, [x29,120]
and w28, w22, 65535
cmn w0, #1
- beq .L3540
+ beq .L3546
mov w0, 0
bl buf_alloc
mov x3, x0
- cbz x0, .L3540
+ cbz x0, .L3546
strb w27, [x0,57]
ubfiz x27, x27, 9, 25
str w20, [x0,36]
@@ -22323,31 +22381,31 @@ zftl_discard:
ldr w0, [x1,76]
add w0, w0, 1
str w0, [x1,76]
-.L3540:
+.L3546:
add w20, w20, 1
sub w19, w19, w28
-.L3537:
- cbz w19, .L3542
+.L3543:
+ cbz w19, .L3548
bl ftl_flush
-.L3542:
+.L3548:
mov w0, -1
mov w27, 1
str w0, [x29,124]
mov w28, 21
-.L3543:
+.L3549:
add x22, x21, :lo12:.LANCHOR0
ldrb w0, [x22,2832]
cmp w19, w0
- bcc .L3582
+ bcc .L3588
mov w0, w20
bl lpa_hash_get_ppa
str w0, [x29,120]
cmn w0, #1
- beq .L3544
+ beq .L3550
mov w0, 0
bl buf_alloc
mov x3, x0
- cbz x0, .L3546
+ cbz x0, .L3552
ldrb w2, [x22,2832]
mov w1, 0
str w20, [x0,36]
@@ -22362,15 +22420,15 @@ zftl_discard:
mov x0, x3
bl ftl_write_buf
bl ftl_write_commit
- b .L3581
-.L3544:
+ b .L3587
+.L3550:
mov w0, w20
add x1, x29, 120
mov w2, 0
bl pm_log2phys
ldr w0, [x29,120]
cmn w0, #1
- beq .L3546
+ beq .L3552
add x1, x29, 124
mov w2, 1
mov w0, w20
@@ -22385,36 +22443,36 @@ zftl_discard:
and w0, w2, w0
udiv w0, w0, w1
bl ftl_vpn_decrement
-.L3581:
+.L3587:
ldr x1, [x22,2864]
ldr w0, [x1,76]
add w0, w0, 1
str w0, [x1,76]
-.L3546:
+.L3552:
add x0, x21, :lo12:.LANCHOR0
add w20, w20, 1
ldrb w0, [x0,2832]
sub w19, w19, w0
- b .L3543
-.L3582:
- cbz w19, .L3550
+ b .L3549
+.L3588:
+ cbz w19, .L3556
mov w0, w20
bl lpa_hash_get_ppa
str w0, [x29,120]
cmn w0, #1
- bne .L3551
+ bne .L3557
mov w0, w20
add x1, x29, 120
mov w2, 0
bl pm_log2phys
-.L3551:
+.L3557:
ldr w0, [x29,120]
cmn w0, #1
- beq .L3550
+ beq .L3556
mov w0, 0
bl buf_alloc
mov x22, x0
- cbz x0, .L3550
+ cbz x0, .L3556
str w20, [x0,36]
strb wzr, [x0,57]
strb w19, [x0,56]
@@ -22422,7 +22480,7 @@ zftl_discard:
add x0, x21, :lo12:.LANCHOR0
ldrb w0, [x0,2832]
cmp w19, w0
- bcc .L3553
+ bcc .L3559
adrp x1, .LANCHOR3
adrp x0, .LC0
add x1, x1, :lo12:.LANCHOR3
@@ -22431,7 +22489,7 @@ zftl_discard:
add x0, x0, :lo12:.LC0
bl printk
bl dump_stack
-.L3553:
+.L3559:
ldr x0, [x22,8]
mov w1, 0
lsl w2, w19, 9
@@ -22444,20 +22502,20 @@ zftl_discard:
ldr w0, [x1,76]
add w0, w0, 1
str w0, [x1,76]
-.L3550:
+.L3556:
add x0, x23, :lo12:.LANCHOR7
mov w4, 0
ldr w1, [x0,-72]
cmp w1, 8192
- bls .L3535
+ bls .L3541
ldr w0, [x25,#:lo12:.LANCHOR2]
- tbz x0, 12, .L3554
+ tbz x0, 12, .L3560
adrp x0, .LC283
mov w2, w24
add x0, x0, :lo12:.LC283
mov w3, w19
bl printk
-.L3554:
+.L3560:
add x23, x23, :lo12:.LANCHOR7
add x21, x21, :lo12:.LANCHOR0
str wzr, [x23,-72]
@@ -22465,7 +22523,7 @@ zftl_discard:
mov w0, 1
mov w4, 0
str w0, [x21,2884]
-.L3535:
+.L3541:
mov w0, w4
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -22495,29 +22553,29 @@ id_block_prog_msb_ff_data:
ldrb w2, [x0,19]
add x0, x20, :lo12:.LANCHOR4
ldrb w0, [x0,1264]
- cbnz w0, .L3583
+ cbnz w0, .L3589
sub w0, w2, #5
uxtb w0, w0
cmp w0, 2
- bls .L3585
+ bls .L3591
cmp w2, 68
- beq .L3585
+ beq .L3591
sub w2, w2, #19
and w2, w2, -17
uxtb w2, w2
- cbnz w2, .L3583
-.L3585:
+ cbnz w2, .L3589
+.L3591:
adrp x24, .LC284
mov w25, w1
add x24, x24, :lo12:.LC284
add x20, x20, :lo12:.LANCHOR4
mov w27, 65535
-.L3587:
+.L3593:
add x28, x21, :lo12:.LANCHOR0
ldr x0, [x28,624]
ldrh w0, [x0,10]
cmp w0, w19
- bls .L3583
+ bls .L3589
add x22, x20, 68
add w26, w19, w25
mov x0, x24
@@ -22527,7 +22585,7 @@ id_block_prog_msb_ff_data:
bl printk
ldrh w0, [x22,w19,sxtw 1]
cmp w0, w27
- bne .L3583
+ bne .L3589
ldr x0, [x20,1192]
mov w1, 255
mov w2, 16384
@@ -22541,8 +22599,8 @@ id_block_prog_msb_ff_data:
ldrb w4, [x4,9]
mov x3, x2
bl flash_prog_page
- b .L3587
-.L3583:
+ b .L3593
+.L3589:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -22575,23 +22633,23 @@ write_idblock:
bl ftl_malloc
mov x23, x0
mov w0, -1
- cbz x23, .L3635
+ cbz x23, .L3641
add w19, w19, 511
lsr w19, w19, 9
cmp w19, 8
- bls .L3620
+ bls .L3626
cmp w19, 500
- bhi .L3635
- b .L3591
-.L3620:
+ bhi .L3641
+ b .L3597
+.L3626:
mov w19, 8
-.L3591:
+.L3597:
ldr w2, [x25]
mov w1, 35899
movk w1, 0xfcdc, lsl 16
mov w0, -1
cmp w2, w1
- bne .L3635
+ bne .L3641
mul w20, w20, w21
add x3, x25, 253952
mov w2, 63999
@@ -22605,9 +22663,9 @@ write_idblock:
udiv w0, w0, w1
str w0, [x29,120]
mov w0, 0
-.L3595:
+.L3601:
ldr w1, [x3]
- cbnz w1, .L3592
+ cbnz w1, .L3598
ldr w1, [x25,w0,uxtw 2]
add w0, w0, 1
cmp w0, w4
@@ -22615,13 +22673,13 @@ write_idblock:
csel w0, w0, wzr, cc
str w1, [x3],-4
cmp w2, 4096
- bne .L3595
- b .L3594
-.L3592:
+ bne .L3601
+ b .L3600
+.L3598:
adrp x0, .LC285
add x0, x0, :lo12:.LC285
bl printk
-.L3594:
+.L3600:
ldr x1, [x29,128]
adrp x0, .LC286
add x0, x0, :lo12:.LC286
@@ -22635,36 +22693,36 @@ write_idblock:
add x0, x0, :lo12:.LC287
mov w2, w19
bl printk
-.L3617:
+.L3623:
adrp x1, .LANCHOR7
add x1, x1, :lo12:.LANCHOR7
ldrb w1, [x1,-102]
- cbnz w1, .L3596
+ cbnz w1, .L3602
ldr x1, [x29,128]
ldr w2, [x29,156]
ldr w1, [x1,x21,lsl 2]
mul w20, w1, w2
- cbz w21, .L3597
+ cbz w21, .L3603
ldr w2, [x29,120]
cmp w2, 1
- bls .L3597
+ bls .L3603
sub w0, w21, #1
ldr x2, [x29,128]
ldr w0, [x2,x0,lsl 2]
add w0, w0, 1
cmp w1, w0
- bne .L3597
- b .L3598
-.L3596:
+ bne .L3603
+ b .L3604
+.L3602:
add x0, x22, :lo12:.LANCHOR0
ldr x0, [x0,728]
add x0, x0, x21, uxtw
ldrb w20, [x0,32]
cmp w20, 255
- beq .L3598
+ beq .L3604
ldr w0, [x29,156]
mul w20, w20, w0
-.L3597:
+.L3603:
mov w2, 512
mov w1, 0
mov x0, x23
@@ -22683,12 +22741,12 @@ write_idblock:
bl flash_erase_block
cmp w19, w24
mov w2, 1
- bls .L3599
+ bls .L3605
mov w0, 0
add w1, w20, w24
bl flash_erase_block
mov w2, 2
-.L3599:
+.L3605:
add x27, x22, :lo12:.LANCHOR0
ldr x1, [x27,624]
ldrh w0, [x1,10]
@@ -22703,10 +22761,10 @@ write_idblock:
sub w0, w20, w0
str w0, [x29,152]
cmp w20, w0
- bne .L3625
+ bne .L3631
ldrb w0, [x27,516]
cmp w0, 9
- bne .L3625
+ bne .L3631
adrp x0, .LANCHOR4
mov w1, 0
add x0, x0, :lo12:.LANCHOR4
@@ -22744,18 +22802,18 @@ write_idblock:
str w0, [x3,8]
sub w0, w19, #4
str w0, [x29,144]
- b .L3600
-.L3625:
+ b .L3606
+.L3631:
str w19, [x29,144]
mov x3, 0
-.L3600:
+.L3606:
str x25, [x29,136]
mov w24, 0
add x27, x22, :lo12:.LANCHOR0
-.L3602:
+.L3608:
ldr w0, [x29,112]
cmp w24, w0
- bcs .L3644
+ bcs .L3650
ldr w0, [x29,124]
adrp x2, .LANCHOR4
add x2, x2, :lo12:.LANCHOR4
@@ -22765,34 +22823,34 @@ write_idblock:
add w1, w4, 1
ldrb w2, [x2,1264]
ldrh w0, [x0,w1,sxtw 1]
- cbz w2, .L3604
+ cbz w2, .L3610
ldrb w6, [x27,1]
lsl w0, w1, 1
cmp w6, wzr
csel w0, w0, w1, ne
-.L3604:
+.L3610:
ldrb w1, [x27,516]
cmp w1, 9
- beq .L3643
+ beq .L3649
sub w0, w0, #1
lsl w0, w0, 2
-.L3643:
+.L3649:
str w0, [x29,160]
mov w0, 61424
str w0, [x29,164]
add x0, x27, 4
ldrh w0, [x0,w4,sxtw 1]
- cbnz w2, .L3608
+ cbnz w2, .L3614
mov w4, w0
- b .L3609
-.L3608:
+ b .L3615
+.L3614:
ldrb w1, [x27,1]
lsl w0, w4, 1
cmp w1, wzr
csel w4, w0, w4, ne
-.L3609:
+.L3615:
mul w0, w4, w26
- cbnz x3, .L3610
+ cbnz x3, .L3616
ldr w1, [x29,152]
add x2, x29, 160
str x4, [x29,104]
@@ -22803,28 +22861,28 @@ write_idblock:
ldr x4, [x29,104]
add x0, x0, :lo12:.LANCHOR4
ldrb w0, [x0,1264]
- cbnz w0, .L3611
+ cbnz w0, .L3617
ldr w1, [x29,152]
add w2, w4, 1
udiv w1, w1, w26
bl id_block_prog_msb_ff_data
-.L3611:
+.L3617:
ldr x0, [x29,136]
add x0, x0, 2048
str x0, [x29,136]
- b .L3612
-.L3610:
+ b .L3618
+.L3616:
ldr w1, [x29,152]
add x2, x29, 160
add w0, w0, w1
mov x1, x3
bl fw_flash_page_prog.constprop.30
-.L3612:
+.L3618:
add w24, w24, 4
mov x3, 0
uxth w24, w24
- b .L3602
-.L3644:
+ b .L3608
+.L3650:
add x0, x22, :lo12:.LANCHOR0
ldrb w1, [x29,116]
mov x2, x23
@@ -22835,15 +22893,15 @@ write_idblock:
ldr w0, [x29,144]
mov x1, 0
lsl w0, w0, 7
-.L3614:
+.L3620:
cmp w0, w1
- bls .L3645
+ bls .L3651
ldr w3, [x23,x1,lsl 2]
add x1, x1, 1
add x2, x25, x1, lsl 2
ldr w2, [x2,-4]
cmp w3, w2
- beq .L3614
+ beq .L3620
mov x0, x23
mov w1, 0
mov w2, 512
@@ -22851,21 +22909,21 @@ write_idblock:
mov w1, w20
mov w0, 0
bl flash_erase_block
- b .L3598
-.L3645:
+ b .L3604
+.L3651:
add w28, w28, 1
cmp w28, 5
- bhi .L3618
-.L3598:
+ bhi .L3624
+.L3604:
add x21, x21, 1
cmp x21, 4
- bne .L3617
-.L3618:
+ bne .L3623
+.L3624:
mov x0, x23
bl ftl_free
cmp w28, wzr
csetm w0, eq
-.L3635:
+.L3641:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x23, x24, [sp,48]
@@ -22883,17 +22941,17 @@ CRC_32:
mov x5, x0
add x3, x3, :lo12:.LANCHOR2
mov w0, w2
-.L3647:
+.L3653:
cmp w1, w2
- bls .L3649
+ bls .L3655
ldrb w4, [x5,x2]
add x6, x3, 2488
add x2, x2, 1
eor w4, w4, w0, lsr 24
ldr w4, [x6,w4,uxtw 2]
eor w0, w4, w0, lsl 8
- b .L3647
-.L3649:
+ b .L3653
+.L3655:
ret
.size CRC_32, .-CRC_32
.align 2
@@ -22910,12 +22968,12 @@ write_loader_lba:
mov w21, w1
mov x23, x2
adrp x20, .LANCHOR7
- bne .L3651
+ bne .L3657
ldr w1, [x2]
mov w0, 35899
movk w0, 0xfcdc, lsl 16
cmp w1, w0
- bne .L3651
+ bne .L3657
add x22, x20, :lo12:.LANCHOR7
mov w0, 1
strb w0, [x22,-68]
@@ -22928,14 +22986,14 @@ write_loader_lba:
movk w2, 0x3, lsl 16
bl ftl_memset
str w19, [x22,-56]
-.L3651:
+.L3657:
add x3, x20, :lo12:.LANCHOR7
ldrb w0, [x3,-68]
- cbz w0, .L3650
+ cbz w0, .L3656
sub w0, w19, #64
ldr x22, [x3,-64]
cmp w0, 499
- bhi .L3653
+ bhi .L3659
mov w3, 564
ubfiz x0, x0, 9, 25
sub w3, w3, w19
@@ -22945,28 +23003,28 @@ write_loader_lba:
csel w2, w3, w21, ls
lsl w2, w2, 9
bl ftl_memcpy
- b .L3654
-.L3653:
+ b .L3660
+.L3659:
cmp w19, 563
- bhi .L3664
-.L3654:
+ bhi .L3670
+.L3660:
add x0, x20, :lo12:.LANCHOR7
ldr w1, [x0,-56]
cmp w1, w19
- beq .L3662
+ beq .L3668
strb wzr, [x0,-68]
- cbz x22, .L3663
+ cbz x22, .L3669
mov x0, x22
bl ftl_free
-.L3663:
+.L3669:
add x0, x20, :lo12:.LANCHOR7
str xzr, [x0,-64]
-.L3662:
+.L3668:
add x20, x20, :lo12:.LANCHOR7
add w19, w19, w21
str w19, [x20,-56]
- b .L3650
-.L3664:
+ b .L3656
+.L3670:
ldr w2, [x3,-56]
mov w0, 500
sub w2, w2, #64
@@ -22976,7 +23034,7 @@ write_loader_lba:
ldr x0, [x0,#:lo12:.LANCHOR0+624]
ldrb w0, [x0,9]
cmp w0, 4
- beq .L3665
+ beq .L3671
mov w0, 2
str w0, [x29,64]
mov w0, 3
@@ -22987,41 +23045,41 @@ write_loader_lba:
str w0, [x29,76]
mov w0, 6
str w0, [x29,80]
- b .L3656
-.L3665:
+ b .L3662
+.L3671:
mov x3, 0
-.L3655:
+.L3661:
cmp w2, 256
add x0, x29, 64
- bls .L3657
+ bls .L3663
lsl w1, w3, 1
str w1, [x0,x3,lsl 2]
- b .L3658
-.L3657:
+ b .L3664
+.L3663:
str w3, [x0,x3,lsl 2]
-.L3658:
+.L3664:
add x3, x3, 1
cmp x3, 5
- bne .L3655
-.L3656:
+ bne .L3661
+.L3662:
add x0, x20, :lo12:.LANCHOR7
mov w4, 63999
ldr x3, [x0,-48]
add x3, x3, 61440
add x3, x3, 2559
-.L3661:
+.L3667:
ldrb w0, [x3]
- cbz w0, .L3659
+ cbz w0, .L3665
add w2, w4, 1
lsl w0, w2, 2
- b .L3660
-.L3659:
+ b .L3666
+.L3665:
sub w4, w4, #1
sub x3, x3, #1
cmp w4, 4096
- bne .L3661
+ bne .L3667
lsl w0, w2, 9
-.L3660:
+.L3666:
mov x1, x22
add x2, x29, 64
add x22, x20, :lo12:.LANCHOR7
@@ -23030,8 +23088,8 @@ write_loader_lba:
strb wzr, [x22,-68]
bl ftl_free
str xzr, [x22,-64]
- b .L3662
-.L3650:
+ b .L3668
+.L3656:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldr x23, [sp,48]
@@ -23051,15 +23109,15 @@ FtlWrite:
cmp w0, 1983
mov w19, w1
mov w20, w2
- bhi .L3675
- cbnz w21, .L3675
+ bhi .L3681
+ cbnz w21, .L3681
mov w0, w1
mov w1, w2
mov x2, x3
str x3, [x29,56]
bl write_loader_lba
ldr x3, [x29,56]
-.L3675:
+.L3681:
adrp x0, .LANCHOR4+1176
mov w1, w19
mov w2, w20
@@ -23086,137 +23144,137 @@ rknand_sys_storage_ioctl:
stp x21, x22, [sp,32]
mov w19, w1
mov x20, x2
- beq .L3684
+ beq .L3690
mov w0, 29187
movk w0, 0x4004, lsl 16
cmp w1, w0
- bhi .L3685
+ bhi .L3691
mov w0, 25726
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3686
+ beq .L3692
mov w0, 25726
movk w0, 0x4004, lsl 16
cmp w1, w0
- bhi .L3687
+ bhi .L3693
mov w0, 25601
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3688
+ beq .L3694
mov w0, 25601
movk w0, 0x4004, lsl 16
cmp w1, w0
- bhi .L3689
+ bhi .L3695
mov w0, 25364
movk w0, 0x4004, lsl 16
cmp w1, w0
- bne .L3746
+ bne .L3752
bl rknand_dev_flush
- b .L3780
-.L3689:
+ b .L3786
+.L3695:
mov w0, 25602
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3691
+ beq .L3697
mov w0, 25603
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3692
- b .L3746
-.L3687:
+ beq .L3698
+ b .L3752
+.L3693:
mov w0, 27688
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3693
+ beq .L3699
mov w0, 27688
movk w0, 0x4004, lsl 16
cmp w1, w0
- bhi .L3694
+ bhi .L3700
mov w0, 25727
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3695
- b .L3746
-.L3694:
+ beq .L3701
+ b .L3752
+.L3700:
mov w0, 27698
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3693
+ beq .L3699
mov w0, 27708
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3693
- b .L3746
-.L3685:
+ beq .L3699
+ b .L3752
+.L3691:
mov w0, 29267
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3696
+ beq .L3702
mov w0, 29267
movk w0, 0x4004, lsl 16
cmp w1, w0
- bhi .L3697
+ bhi .L3703
mov w0, 29189
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3698
+ beq .L3704
mov w0, 29189
movk w0, 0x4004, lsl 16
cmp w1, w0
- bcc .L3699
+ bcc .L3705
mov w0, 29210
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3700
+ beq .L3706
mov w0, 29266
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3701
- b .L3746
-.L3697:
+ beq .L3707
+ b .L3752
+.L3703:
mov w0, 30225
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3702
+ beq .L3708
mov w0, 30225
movk w0, 0x4004, lsl 16
cmp w1, w0
- bhi .L3703
+ bhi .L3709
mov w0, 29268
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3704
+ beq .L3710
mov w0, 30224
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3705
- b .L3746
-.L3703:
+ beq .L3711
+ b .L3752
+.L3709:
mov w0, 30226
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3705
+ beq .L3711
mov w0, 30227
movk w0, 0x4004, lsl 16
cmp w1, w0
- beq .L3702
- b .L3746
-.L3699:
+ beq .L3708
+ b .L3752
+.L3705:
adrp x0, .LC288
add x0, x0, :lo12:.LC288
bl printk
mov w0, 4096
bl ftl_malloc
mov x19, x0
- cbnz x0, .L3706
-.L3711:
+ cbnz x0, .L3712
+.L3717:
mov x0, -12
- b .L3683
-.L3706:
+ b .L3689
+.L3712:
mov x1, x20
mov x2, 512
bl rk_copy_from_user
- cbnz x0, .L3787
+ cbnz x0, .L3793
adrp x0, .LC290
ldr w1, [x19]
ldr w2, [x19,4]
@@ -23225,7 +23283,7 @@ rknand_sys_storage_ioctl:
ldr w0, [x19,4]
str w0, [x29,52]
cmp w0, 8
- bhi .L3784
+ bhi .L3790
bl rknand_device_lock
ldr w1, [x29,52]
mov x2, x19
@@ -23237,30 +23295,30 @@ rknand_sys_storage_ioctl:
mov x1, x19
ubfiz x2, x2, 9, 23
bl rk_copy_to_user
- cbz x0, .L3790
+ cbz x0, .L3796
adrp x0, .LC291
add x0, x0, :lo12:.LC291
-.L3782:
+.L3788:
bl printk
-.L3784:
+.L3790:
mov x0, x19
-.L3785:
+.L3791:
bl ftl_free
-.L3783:
+.L3789:
mov x0, -14
- b .L3683
-.L3698:
+ b .L3689
+.L3704:
adrp x0, .LC292
add x0, x0, :lo12:.LC292
bl printk
mov w0, 4096
bl ftl_malloc
mov x19, x0
- cbz x0, .L3711
+ cbz x0, .L3717
mov x1, x20
mov x2, 4096
bl rk_copy_from_user
- cbnz x0, .L3787
+ cbnz x0, .L3793
adrp x0, .LC293
ldr w1, [x19]
ldr w2, [x19,4]
@@ -23270,50 +23328,50 @@ rknand_sys_storage_ioctl:
add x22, x0, :lo12:.LANCHOR7
mov x20, x0
ldr x21, [x22,-48]
- cbnz x21, .L3713
+ cbnz x21, .L3719
mov w0, 260096
bl ftl_malloc
str x0, [x22,-48]
- cbz x0, .L3784
+ cbz x0, .L3790
mov w1, w21
mov x2, 260096
bl memset
-.L3713:
+.L3719:
ldr w2, [x19,4]
cmp w2, 4088
- bhi .L3784
+ bhi .L3790
ldr w0, [x19]
mov w1, 55296
movk w1, 0x3, lsl 16
cmp w0, w1
- bhi .L3784
+ bhi .L3790
add x20, x20, :lo12:.LANCHOR7
uxtw x2, w2
ldr x1, [x20,-48]
add x0, x1, x0, uxtw
add x1, x19, 8
bl memcpy
-.L3790:
+.L3796:
mov x0, x19
bl ftl_free
- b .L3780
-.L3701:
+ b .L3786
+.L3707:
adrp x0, .LC294
add x0, x0, :lo12:.LC294
bl printk
mov w0, 4096
bl ftl_malloc
mov x19, x0
- cbz x0, .L3711
+ cbz x0, .L3717
mov x1, x20
mov x2, 28
bl rk_copy_from_user
- cbz x0, .L3716
-.L3787:
+ cbz x0, .L3722
+.L3793:
adrp x0, .LC289
add x0, x0, :lo12:.LC289
- b .L3782
-.L3716:
+ b .L3788
+.L3722:
ldr w1, [x19]
adrp x0, .LC295
ldr w2, [x19,4]
@@ -23323,20 +23381,20 @@ rknand_sys_storage_ioctl:
mov w0, 59392
movk w0, 0x3, lsl 16
cmp w1, w0
- bhi .L3784
+ bhi .L3790
adrp x20, .LANCHOR7
add x20, x20, :lo12:.LANCHOR7
ldr x0, [x20,-48]
- cbz x0, .L3784
+ cbz x0, .L3790
bl CRC_32
ldr w1, [x19,4]
cmp w1, w0
- beq .L3719
+ beq .L3725
mov x0, x19
bl ftl_free
mov x0, -2
- b .L3683
-.L3719:
+ b .L3689
+.L3725:
bl rknand_device_lock
ldr x1, [x20,-48]
add x2, x19, 8
@@ -23346,21 +23404,21 @@ rknand_sys_storage_ioctl:
ldr x0, [x20,-48]
bl ftl_free
str xzr, [x20,-48]
- b .L3790
-.L3700:
+ b .L3796
+.L3706:
adrp x0, .LC296
add x0, x0, :lo12:.LC296
bl printk
mov w0, 4096
bl ftl_malloc
mov x21, x0
- cbz x0, .L3711
+ cbz x0, .L3717
bl ReadFlashInfo
mov x0, x20
mov x1, x21
mov x2, 11
- b .L3792
-.L3684:
+ b .L3798
+.L3690:
adrp x0, .LC297
add x0, x0, :lo12:.LC297
bl printk
@@ -23368,15 +23426,15 @@ rknand_sys_storage_ioctl:
mov w0, 4096
bl ftl_malloc
mov x21, x0
- cbz x0, .L3711
+ cbz x0, .L3717
mov w1, 0
mov w2, 64
bl ftl_memset
mov x0, x20
mov x1, x21
mov x2, 64
- b .L3792
-.L3696:
+ b .L3798
+.L3702:
adrp x0, .LC298
add x0, x0, :lo12:.LC298
bl printk
@@ -23387,18 +23445,18 @@ rknand_sys_storage_ioctl:
ldr w0, [x0,20]
str w0, [x29,52]
mov x0, x20
-.L3775:
+.L3781:
bl rk_copy_to_user
- cbnz x0, .L3783
- b .L3780
-.L3704:
+ cbnz x0, .L3789
+ b .L3786
+.L3710:
adrp x0, .LC299
add x0, x0, :lo12:.LC299
bl printk
mov w0, 4096
bl ftl_malloc
mov x21, x0
- cbz x0, .L3711
+ cbz x0, .L3717
bl rknand_device_lock
mov w1, 264
mov w2, 2
@@ -23409,14 +23467,14 @@ rknand_sys_storage_ioctl:
mov x0, x20
mov x1, x21
mov x2, 1024
-.L3792:
+.L3798:
bl rk_copy_to_user
mov x19, x0
mov x0, x21
- cbnz x19, .L3785
+ cbnz x19, .L3791
bl ftl_free
- b .L3710
-.L3688:
+ b .L3716
+.L3694:
adrp x0, .LC300
add x0, x0, :lo12:.LC300
bl printk
@@ -23425,25 +23483,25 @@ rknand_sys_storage_ioctl:
mov x2, 520
bl rk_copy_from_user
mov x19, x0
- cbz x0, .L3724
-.L3729:
+ cbz x0, .L3730
+.L3735:
adrp x0, .LC289
add x0, x0, :lo12:.LC289
bl printk
- b .L3783
-.L3724:
+ b .L3789
+.L3730:
ldr w1, [x29,56]
mov w0, 21060
movk w0, 0x4b4d, lsl 16
cmp w1, w0
- beq .L3725
-.L3726:
+ beq .L3731
+.L3732:
mov x19, -1
- b .L3710
-.L3725:
+ b .L3716
+.L3731:
ldr w0, [x29,60]
cmp w0, 512
- bhi .L3726
+ bhi .L3732
adrp x21, .LANCHOR7
add x0, x29, 56
add x21, x21, :lo12:.LANCHOR7
@@ -23454,21 +23512,21 @@ rknand_sys_storage_ioctl:
mov w0, 5161
movk w0, 0xc059, lsl 16
cmp w1, w0
- beq .L3727
+ beq .L3733
add x0, x29, 120
mov w1, w19
mov x2, 128
str w19, [x29,64]
str w19, [x29,68]
bl memset
-.L3727:
+.L3733:
add x0, x29, 312
mov w1, 0
mov x2, 256
str wzr, [x29,72]
bl memset
- b .L3789
-.L3691:
+ b .L3795
+.L3697:
adrp x0, .LC301
add x0, x0, :lo12:.LC301
bl printk
@@ -23476,15 +23534,15 @@ rknand_sys_storage_ioctl:
mov x1, x20
mov x2, 520
bl rk_copy_from_user
- cbnz x0, .L3729
+ cbnz x0, .L3735
ldr w1, [x29,56]
mov w0, 21060
movk w0, 0x4b4d, lsl 16
cmp w1, w0
- bne .L3726
+ bne .L3732
ldr w0, [x29,60]
cmp w0, 512
- bhi .L3726
+ bhi .L3732
adrp x1, .LANCHOR7
mov w2, 5161
add x1, x1, :lo12:.LANCHOR7
@@ -23492,12 +23550,12 @@ rknand_sys_storage_ioctl:
mov x0, -2
ldr w3, [x1,-32]
cmp w3, w2
- bne .L3683
+ bne .L3689
ldr w2, [x29,68]
mov x0, -3
sub w3, w2, #1
cmp w3, 127
- bhi .L3683
+ bhi .L3689
ldr x19, [x1,-40]
add x1, x29, 120
add x0, x19, 64
@@ -23506,8 +23564,8 @@ rknand_sys_storage_ioctl:
bl memcpy
mov w0, 1
mov x1, x19
- b .L3781
-.L3695:
+ b .L3787
+.L3701:
adrp x0, .LC302
add x0, x0, :lo12:.LC302
bl printk
@@ -23515,29 +23573,29 @@ rknand_sys_storage_ioctl:
mov x1, x20
mov x2, 520
bl rk_copy_from_user
- cbnz x0, .L3729
+ cbnz x0, .L3735
ldr w1, [x29,56]
mov w0, 17476
movk w0, 0x4253, lsl 16
cmp w1, w0
- bne .L3726
+ bne .L3732
ldr w0, [x29,60]
cmp w0, 512
- bhi .L3726
+ bhi .L3732
adrp x19, .LANCHOR7
add x0, x19, :lo12:.LANCHOR7
ldr w1, [x0,-28]
- cbnz w1, .L3730
-.L3733:
+ cbnz w1, .L3736
+.L3739:
mov x0, 0
- b .L3683
-.L3730:
+ b .L3689
+.L3736:
ldr x1, [x0,-24]
mov w2, 22867
movk w2, 0x4453, lsl 16
ldr w3, [x1]
cmp w3, w2
- beq .L3731
+ beq .L3737
mov w2, 22867
movk w2, 0x4453, lsl 16
str w2, [x1]
@@ -23547,7 +23605,7 @@ rknand_sys_storage_ioctl:
ldr x0, [x0,-24]
str wzr, [x0,8]
str wzr, [x0,12]
-.L3731:
+.L3737:
add x20, x19, :lo12:.LANCHOR7
mov w0, 0
ldr x1, [x20,-24]
@@ -23558,7 +23616,7 @@ rknand_sys_storage_ioctl:
movk w1, 0x4b4d, lsl 16
ldr w2, [x0]
cmp w2, w1
- beq .L3732
+ beq .L3738
mov w1, 21060
movk w1, 0x4b4d, lsl 16
str w1, [x0]
@@ -23567,7 +23625,7 @@ rknand_sys_storage_ioctl:
str w1, [x0,4]
ldr x0, [x20,-40]
str wzr, [x0,8]
-.L3732:
+.L3738:
add x19, x19, :lo12:.LANCHOR7
mov w1, 0
mov x2, 128
@@ -23580,8 +23638,8 @@ rknand_sys_storage_ioctl:
bl StorageSysDataStore
str wzr, [x19,-28]
str wzr, [x19,-32]
- b .L3780
-.L3686:
+ b .L3786
+.L3692:
adrp x0, .LC303
add x0, x0, :lo12:.LC303
bl printk
@@ -23589,26 +23647,26 @@ rknand_sys_storage_ioctl:
mov x1, x20
mov x2, 520
bl rk_copy_from_user
- cbnz x0, .L3729
+ cbnz x0, .L3735
ldr w2, [x29,56]
mov w1, 20037
movk w1, 0x4253, lsl 16
cmp w2, w1
- bne .L3726
+ bne .L3732
ldr w1, [x29,60]
cmp w1, 512
- bhi .L3726
+ bhi .L3732
adrp x19, .LANCHOR7
add x1, x19, :lo12:.LANCHOR7
ldr w2, [x1,-28]
cmp w2, 1
- beq .L3733
+ beq .L3739
ldr x2, [x1,-24]
mov w3, 22867
movk w3, 0x4453, lsl 16
ldr w4, [x2]
cmp w4, w3
- beq .L3734
+ beq .L3740
mov w3, 22867
movk w3, 0x4453, lsl 16
str w3, [x2]
@@ -23618,7 +23676,7 @@ rknand_sys_storage_ioctl:
ldr x1, [x1,-24]
str w0, [x1,8]
str w0, [x1,12]
-.L3734:
+.L3740:
add x20, x19, :lo12:.LANCHOR7
mov w0, 1
ldr x1, [x20,-24]
@@ -23630,7 +23688,7 @@ rknand_sys_storage_ioctl:
movk w1, 0x4b4d, lsl 16
ldr w2, [x0]
cmp w2, w1
- beq .L3735
+ beq .L3741
mov w1, 21060
movk w1, 0x4b4d, lsl 16
str w1, [x0]
@@ -23639,7 +23697,7 @@ rknand_sys_storage_ioctl:
str w1, [x0,4]
ldr x0, [x20,-40]
str wzr, [x0,8]
-.L3735:
+.L3741:
add x19, x19, :lo12:.LANCHOR7
mov w1, 0
mov x2, 128
@@ -23652,8 +23710,8 @@ rknand_sys_storage_ioctl:
bl StorageSysDataStore
mov w0, 1
str w0, [x19,-28]
- b .L3780
-.L3692:
+ b .L3786
+.L3698:
adrp x0, .LC304
add x0, x0, :lo12:.LC304
bl printk
@@ -23661,57 +23719,57 @@ rknand_sys_storage_ioctl:
mov x1, x20
mov x2, 520
bl rk_copy_from_user
- cbnz x0, .L3729
+ cbnz x0, .L3735
ldr w1, [x29,56]
mov w0, 20051
movk w0, 0x4144, lsl 16
cmp w1, w0
- bne .L3726
+ bne .L3732
ldr w2, [x29,60]
cmp w2, 512
- bhi .L3726
+ bhi .L3732
adrp x1, .LANCHOR7
add x0, x29, 64
add x1, x1, :lo12:.LANCHOR7
uxtw x2, w2
sub x1, x1, #16
- b .L3788
-.L3693:
+ b .L3794
+.L3699:
mov w0, 27698
movk w0, 0x4004, lsl 16
cmp w19, w0
- bne .L3736
+ bne .L3742
adrp x0, .LC305
add x0, x0, :lo12:.LC305
- b .L3778
-.L3736:
+ b .L3784
+.L3742:
mov w0, 27708
movk w0, 0x4004, lsl 16
cmp w19, w0
- bne .L3738
+ bne .L3744
adrp x0, .LC306
add x0, x0, :lo12:.LC306
- b .L3778
-.L3738:
+ b .L3784
+.L3744:
adrp x0, .LC307
add x0, x0, :lo12:.LC307
-.L3778:
+.L3784:
bl printk
add x0, x29, 56
mov x1, x20
mov x2, 520
bl rk_copy_from_user
- cbnz x0, .L3729
+ cbnz x0, .L3735
ldr w1, [x29,56]
mov w0, 17227
movk w0, 0x4c4f, lsl 16
cmp w1, w0
- bne .L3783
+ bne .L3789
mov w0, 27708
movk w0, 0x4004, lsl 16
cmp w19, w0
adrp x0, .LANCHOR7
- bne .L3739
+ bne .L3745
add x0, x0, :lo12:.LANCHOR7
add x1, x29, 56
mov x2, 16
@@ -23721,19 +23779,19 @@ rknand_sys_storage_ioctl:
strb w0, [x29,64]
mov x0, x20
bl rk_copy_to_user
- cbz x0, .L3683
- b .L3783
-.L3739:
+ cbz x0, .L3689
+ b .L3789
+.L3745:
add x20, x0, :lo12:.LANCHOR7
ldr w1, [x20,496]
cmp w1, 10
- bhi .L3783
+ bhi .L3789
ldr x1, [x20,-40]
ldr w2, [x29,60]
ldr w3, [x1,24]
cmp w3, w2
- beq .L3740
- cbz w3, .L3740
+ beq .L3746
+ cbz w3, .L3746
adrp x0, .LC308
mov w1, w2
add x0, x0, :lo12:.LC308
@@ -23741,29 +23799,29 @@ rknand_sys_storage_ioctl:
ldr w0, [x20,496]
add w0, w0, 1
str w0, [x20,496]
- b .L3783
-.L3740:
+ b .L3789
+.L3746:
add x0, x0, :lo12:.LANCHOR7
str wzr, [x0,496]
mov w0, 27698
movk w0, 0x4004, lsl 16
cmp w19, w0
- bne .L3741
+ bne .L3747
str wzr, [x1,20]
str wzr, [x1,24]
- b .L3742
-.L3741:
+ b .L3748
+.L3747:
mov w0, 1
str w2, [x1,24]
str w0, [x1,20]
-.L3742:
+.L3748:
mov w0, 1
mov x19, -2
bl StorageSysDataStore
cmn w0, #1
- bne .L3780
- b .L3710
-.L3705:
+ bne .L3786
+ b .L3716
+.L3711:
adrp x0, .LC309
add x0, x0, :lo12:.LC309
bl printk
@@ -23771,15 +23829,15 @@ rknand_sys_storage_ioctl:
mov x1, x20
mov x2, 520
bl rk_copy_from_user
- cbnz x0, .L3729
+ cbnz x0, .L3735
ldr w1, [x29,56]
mov w0, 17750
movk w0, 0x444e, lsl 16
cmp w1, w0
- bne .L3726
+ bne .L3732
ldr w2, [x29,60]
cmp w2, 504
- bhi .L3726
+ bhi .L3732
mov w0, 30224
adrp x1, .LANCHOR7
movk w0, 0x4004, lsl 16
@@ -23787,21 +23845,21 @@ rknand_sys_storage_ioctl:
cmp w19, w0
add x1, x1, :lo12:.LANCHOR7
add x0, x29, 64
- bne .L3743
+ bne .L3749
ldr x1, [x1,504]
- b .L3779
-.L3743:
+ b .L3785
+.L3749:
ldr x1, [x1,512]
-.L3779:
+.L3785:
add x1, x1, 8
-.L3788:
+.L3794:
bl memcpy
-.L3789:
+.L3795:
mov x0, x20
add x1, x29, 56
mov x2, 520
- b .L3775
-.L3702:
+ b .L3781
+.L3708:
adrp x0, .LC310
add x0, x0, :lo12:.LC310
bl printk
@@ -23809,50 +23867,50 @@ rknand_sys_storage_ioctl:
mov x1, x20
mov x2, 520
bl rk_copy_from_user
- cbnz x0, .L3729
+ cbnz x0, .L3735
ldr w1, [x29,56]
mov w0, 17750
movk w0, 0x444e, lsl 16
cmp w1, w0
- bne .L3726
+ bne .L3732
ldr w2, [x29,60]
cmp w2, 504
- bhi .L3726
+ bhi .L3732
mov w0, 30225
add w2, w2, 8
movk w0, 0x4004, lsl 16
cmp w19, w0
adrp x19, .LANCHOR7
add x19, x19, :lo12:.LANCHOR7
- bne .L3745
+ bne .L3751
ldr x0, [x19,504]
add x1, x29, 56
bl memcpy
mov w0, 2
ldr x1, [x19,504]
- b .L3781
-.L3745:
+ b .L3787
+.L3751:
ldr x0, [x19,512]
add x1, x29, 56
bl memcpy
ldr x1, [x19,512]
mov w0, 3
-.L3781:
+.L3787:
bl StorageSysDataStore
uxtw x19, w0
- b .L3710
-.L3780:
+ b .L3716
+.L3786:
mov x19, 0
-.L3710:
+.L3716:
adrp x0, .LC311
mov x1, x19
add x0, x0, :lo12:.LC311
bl printk
mov x0, x19
- b .L3683
-.L3746:
+ b .L3689
+.L3752:
mov x0, -22
-.L3683:
+.L3689:
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
ldp x29, x30, [sp], 48
@@ -23891,25 +23949,25 @@ rk_ftl_storage_sys_init:
ldr w0, [x21,16]
ldr w22, [x21,508]
str w0, [x19,-28]
- cbz w22, .L3795
+ cbz w22, .L3801
mov x0, x21
mov w1, 508
bl js_hash
cmp w22, w0
- beq .L3795
+ beq .L3801
adrp x0, .LC312
str wzr, [x21,16]
add x0, x0, :lo12:.LC312
str wzr, [x19,-28]
bl printk
-.L3795:
+.L3801:
add x0, x20, :lo12:.LANCHOR7
ldr w1, [x0,-28]
- cbz w1, .L3796
+ cbz w1, .L3802
mov w1, 5161
movk w1, 0xc059, lsl 16
str w1, [x0,-32]
-.L3796:
+.L3802:
add x20, x20, :lo12:.LANCHOR7
mov w0, 2
ldr x1, [x20,504]
@@ -23945,19 +24003,19 @@ rk_ftl_vendor_storage_init:
add x1, x21, :lo12:.LANCHOR7
mov w19, -12
str x0, [x1,520]
- cbz x0, .L3805
+ cbz x0, .L3811
mov w23, 0
adrp x24, .LC313
mov w19, w23
mov w22, w23
add x24, x24, :lo12:.LC313
-.L3809:
+.L3815:
add x20, x21, :lo12:.LANCHOR7
lsl w0, w22, 7
mov w1, 128
ldr x2, [x20,520]
bl FlashBootVendorRead
- cbnz w0, .L3806
+ cbnz w0, .L3812
ldr x3, [x20,520]
mov x0, x24
add x2, x3, 61440
@@ -23970,29 +24028,29 @@ rk_ftl_vendor_storage_init:
movk w0, 0x524b, lsl 16
ldr w1, [x20]
cmp w1, w0
- bne .L3807
+ bne .L3813
ldr w0, [x20,4]
cmp w19, w0
- bcs .L3807
+ bcs .L3813
add x1, x20, 61440
ldr w1, [x1,4092]
cmp w1, w0
csel w23, w23, w22, ne
csel w19, w19, w0, ne
-.L3807:
- cbnz w22, .L3817
+.L3813:
+ cbnz w22, .L3823
mov w22, 1
- b .L3809
-.L3817:
- cbz w19, .L3810
+ b .L3815
+.L3823:
+ cbz w19, .L3816
lsl w0, w23, 7
mov w1, 128
mov x2, x20
bl FlashBootVendorRead
mov w19, w0
- cbz w0, .L3805
- b .L3806
-.L3810:
+ cbz w0, .L3811
+ b .L3812
+.L3816:
mov x0, x20
mov w1, w19
mov x2, 65536
@@ -24006,14 +24064,14 @@ rk_ftl_vendor_storage_init:
mov w0, -1032
strh w19, [x20,12]
strh w0, [x20,14]
- b .L3805
-.L3806:
+ b .L3811
+.L3812:
add x21, x21, :lo12:.LANCHOR7
mov w19, -1
ldr x0, [x21,520]
bl kfree
str xzr, [x21,520]
-.L3805:
+.L3811:
mov w0, w19
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -24031,18 +24089,18 @@ rk_ftl_vendor_read:
ldr x5, [x3,#:lo12:.LANCHOR7+520]
mov w3, -1
str x19, [sp,16]
- cbz x5, .L3819
+ cbz x5, .L3825
ldrh w3, [x5,10]
mov x4, 0
-.L3820:
+.L3826:
cmp w4, w3
mov w6, w4
- bcs .L3824
+ bcs .L3830
add x7, x5, x4, lsl 3
add x4, x4, 1
ldrh w7, [x7,16]
cmp w7, w0
- bne .L3820
+ bne .L3826
add x6, x5, x6, uxtw 3
ldrh w4, [x6,20]
mov x0, x1
@@ -24054,10 +24112,10 @@ rk_ftl_vendor_read:
uxtw x2, w19
bl memcpy
mov w3, w19
- b .L3819
-.L3824:
+ b .L3825
+.L3830:
mov w3, -1
-.L3819:
+.L3825:
mov w0, w3
ldr x19, [sp,16]
ldp x29, x30, [sp], 32
@@ -24080,38 +24138,38 @@ rk_ftl_vendor_write:
mov w26, w2
mov x28, x1
mov w2, -1
- cbz x19, .L3826
+ cbz x19, .L3832
add w20, w26, 63
ldrh w3, [x19,10]
ldrh w23, [x19,8]
and w20, w20, -64
mov x2, 0
-.L3827:
+.L3833:
cmp w2, w3
mov w4, w2
- bcs .L3842
+ bcs .L3848
add x0, x19, x2, lsl 3
add x2, x2, 1
ldrh w0, [x0,16]
cmp w0, w6
- bne .L3827
+ bne .L3833
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 .L3828
+ bls .L3834
ldrh w0, [x19,14]
mov w2, -1
cmp w0, w20
- bcc .L3826
+ bcc .L3832
ldrh w21, [x21,18]
add w22, w3, w2
-.L3829:
+.L3835:
cmp w4, w22
uxtw x3, w4
- bcs .L3843
+ bcs .L3849
add x3, x19, x3, lsl 3
add w25, w4, 1
add x1, x19, x25, uxtw 3
@@ -24134,8 +24192,8 @@ rk_ftl_vendor_write:
mov w4, w25
ldr x6, [x29,96]
ldr x5, [x29,104]
- b .L3829
-.L3843:
+ b .L3835
+.L3849:
add x3, x19, x3, lsl 3
uxth w21, w21
mov x1, x28
@@ -24152,20 +24210,20 @@ rk_ftl_vendor_write:
add w24, w24, w0
sub w24, w24, w20
strh w24, [x19,14]
- b .L3841
-.L3828:
+ b .L3847
+.L3834:
ldrh w0, [x21,18]
mov x1, x28
uxtw x2, w26
add x0, x5, x0
bl memcpy
strh w26, [x21,20]
- b .L3841
-.L3842:
+ b .L3847
+.L3848:
ldrh w4, [x19,14]
mov w2, -1
cmp w4, w20
- bcc .L3826
+ bcc .L3832
add x3, x19, x3, uxth 3
strh w6, [x3,16]
uxth w20, w20
@@ -24185,7 +24243,7 @@ rk_ftl_vendor_write:
ldrh w0, [x19,10]
add w0, w0, 1
strh w0, [x19,10]
-.L3841:
+.L3847:
ldr w0, [x19,4]
add x1, x19, 61440
mov x2, x19
@@ -24202,7 +24260,7 @@ rk_ftl_vendor_write:
lsl w0, w23, 7
bl FlashBootVendorWrite
mov w2, 0
-.L3826:
+.L3832:
mov w0, w2
ldp x19, x20, [sp,16]
ldp x21, x22, [sp,32]
@@ -24226,37 +24284,37 @@ rk_ftl_vendor_storage_ioctl:
mov x21, x2
bl ftl_malloc
mov x19, x0
- cbz x0, .L3845
+ cbz x0, .L3851
mov w2, 30209
ldr x1, [x29,56]
movk w2, 0x4004, lsl 16
cmp w1, w2
- beq .L3847
+ beq .L3853
mov w2, 30210
movk w2, 0x4004, lsl 16
cmp w1, w2
- beq .L3848
- b .L3859
-.L3847:
+ beq .L3854
+ b .L3865
+.L3853:
mov x1, x21
mov x2, 8
bl rk_copy_from_user
- cbnz x0, .L3859
+ cbnz x0, .L3865
ldr w1, [x19]
mov w0, 17745
movk w0, 0x5652, lsl 16
cmp w1, w0
- beq .L3850
-.L3851:
+ beq .L3856
+.L3857:
mov x20, -1
- b .L3846
-.L3850:
+ b .L3852
+.L3856:
ldrh w0, [x19,4]
add x1, x19, 8
ldrh w2, [x19,6]
bl rk_ftl_vendor_read
cmn w0, #1
- beq .L3851
+ beq .L3857
uxth x2, w0
strh w0, [x19,6]
mov x1, x19
@@ -24266,38 +24324,38 @@ rk_ftl_vendor_storage_ioctl:
bl rk_copy_to_user
cmp x0, xzr
csel x20, xzr, x20, eq
- b .L3846
-.L3848:
+ b .L3852
+.L3854:
mov x1, x21
mov x2, 8
bl rk_copy_from_user
- cbnz x0, .L3859
+ cbnz x0, .L3865
ldr w1, [x19]
mov w0, 17745
movk w0, 0x5652, lsl 16
cmp w1, w0
- bne .L3851
+ bne .L3857
ldrh w3, [x19,6]
cmp w3, 4087
- bhi .L3851
+ bhi .L3857
add w2, w3, 8
mov x0, x19
mov x1, x21
sxtw x2, w2
bl rk_copy_from_user
- cbnz x0, .L3859
+ cbnz x0, .L3865
ldrh w0, [x19,4]
add x1, x19, 8
ldrh w2, [x19,6]
bl rk_ftl_vendor_write
sxtw x20, w0
- b .L3846
-.L3859:
+ b .L3852
+.L3865:
mov x20, -14
-.L3846:
+.L3852:
mov x0, x19
bl kfree
-.L3845:
+.L3851:
mov x0, x20
ldr x21, [sp,32]
ldp x19, x20, [sp,16]
@@ -24476,24 +24534,24 @@ rk_ftl_vendor_storage_ioctl:
.section .rodata
.align 3
.LANCHOR1 = . + 0
- .type __func__.33351, %object
- .size __func__.33351, 18
-__func__.33351:
+ .type __func__.34004, %object
+ .size __func__.34004, 18
+__func__.34004:
.string "_list_remove_node"
.zero 6
- .type __func__.33376, %object
- .size __func__.33376, 23
-__func__.33376:
+ .type __func__.34029, %object
+ .size __func__.34029, 23
+__func__.34029:
.string "_list_update_data_list"
.zero 1
- .type __func__.18345, %object
- .size __func__.18345, 22
-__func__.18345:
+ .type __func__.19018, %object
+ .size __func__.19018, 22
+__func__.19018:
.string "nand_flash_print_info"
.zero 2
- .type __func__.18431, %object
- .size __func__.18431, 11
-__func__.18431:
+ .type __func__.19104, %object
+ .size __func__.19104, 11
+__func__.19104:
.string "nandc_init"
.zero 5
.type toshiba_A19ref_value, %object
@@ -24655,11 +24713,16 @@ toshiba_ref_value:
.byte 8
.byte 12
.byte 112
- .type __func__.17933, %object
- .size __func__.17933, 28
-__func__.17933:
+ .type __func__.18606, %object
+ .size __func__.18606, 28
+__func__.18606:
.string "flash_wait_device_ready_raw"
.zero 4
+ .type __func__.18659, %object
+ .size __func__.18659, 22
+__func__.18659:
+ .string "flash_start_page_read"
+ .zero 2
.type toshiba_3D_tlc_value, %object
.size toshiba_3D_tlc_value, 399
toshiba_3D_tlc_value:
@@ -25078,24 +25141,19 @@ toshiba_3D_slc_value:
.byte -56
.byte 56
.zero 5
- .type __func__.17986, %object
- .size __func__.17986, 22
-__func__.17986:
- .string "flash_start_page_read"
- .zero 2
- .type __func__.18011, %object
- .size __func__.18011, 23
-__func__.18011:
+ .type __func__.18684, %object
+ .size __func__.18684, 23
+__func__.18684:
.string "flash_start_plane_read"
.zero 1
- .type __func__.17908, %object
- .size __func__.17908, 26
-__func__.17908:
+ .type __func__.18581, %object
+ .size __func__.18581, 26
+__func__.18581:
.string "flash_erase_duplane_block"
.zero 6
- .type __func__.17919, %object
- .size __func__.17919, 21
-__func__.17919:
+ .type __func__.18592, %object
+ .size __func__.18592, 21
+__func__.18592:
.string "flash_erase_block_en"
.zero 3
.type random_seed, %object
@@ -25229,19 +25287,19 @@ random_seed:
.hword 28406
.hword 17598
.hword 28087
- .type __func__.18601, %object
- .size __func__.18601, 13
-__func__.18601:
+ .type __func__.19283, %object
+ .size __func__.19283, 13
+__func__.19283:
.string "buf_add_tail"
.zero 3
- .type __func__.18614, %object
- .size __func__.18614, 10
-__func__.18614:
+ .type __func__.19296, %object
+ .size __func__.19296, 10
+__func__.19296:
.string "buf_alloc"
.zero 6
- .type __func__.18628, %object
- .size __func__.18628, 16
-__func__.18628:
+ .type __func__.19310, %object
+ .size __func__.19310, 16
+__func__.19310:
.string "buf_remove_free"
.type zftl_debug_proc_fops, %object
.size zftl_debug_proc_fops, 216
@@ -25255,249 +25313,249 @@ zftl_debug_proc_fops:
.zero 8
.xword single_release
.zero 104
- .type __func__.32946, %object
- .size __func__.32946, 12
-__func__.32946:
+ .type __func__.33599, %object
+ .size __func__.33599, 12
+__func__.33599:
.string "gc_add_sblk"
.zero 4
- .type __func__.33014, %object
- .size __func__.33014, 19
-__func__.33014:
+ .type __func__.33667, %object
+ .size __func__.33667, 19
+__func__.33667:
.string "gc_write_completed"
.zero 5
- .type __func__.33065, %object
- .size __func__.33065, 16
-__func__.33065:
+ .type __func__.33718, %object
+ .size __func__.33718, 16
+__func__.33718:
.string "gc_free_src_blk"
- .type __func__.33557, %object
- .size __func__.33557, 18
-__func__.33557:
+ .type __func__.34210, %object
+ .size __func__.34210, 18
+__func__.34210:
.string "ftl_alloc_sys_blk"
.zero 6
- .type __func__.33567, %object
- .size __func__.33567, 17
-__func__.33567:
+ .type __func__.34220, %object
+ .size __func__.34220, 17
+__func__.34220:
.string "ftl_free_sys_blk"
.zero 7
- .type __func__.33671, %object
- .size __func__.33671, 23
-__func__.33671:
+ .type __func__.34324, %object
+ .size __func__.34324, 23
+__func__.34324:
.string "ftl_get_ppa_from_index"
.zero 1
- .type __func__.33710, %object
- .size __func__.33710, 22
-__func__.33710:
+ .type __func__.34363, %object
+ .size __func__.34363, 22
+__func__.34363:
.string "ftl_get_new_free_page"
.zero 2
- .type __func__.33721, %object
- .size __func__.33721, 22
-__func__.33721:
+ .type __func__.34374, %object
+ .size __func__.34374, 22
+__func__.34374:
.string "ftl_ext_alloc_new_blk"
.zero 2
- .type __func__.32728, %object
- .size __func__.32728, 14
-__func__.32728:
+ .type __func__.33381, %object
+ .size __func__.33381, 14
+__func__.33381:
.string "ftl_write_buf"
.zero 2
- .type __func__.32772, %object
- .size __func__.32772, 18
-__func__.32772:
+ .type __func__.33425, %object
+ .size __func__.33425, 18
+__func__.33425:
.string "zftl_add_read_buf"
.zero 6
- .type __func__.33516, %object
- .size __func__.33516, 15
-__func__.33516:
+ .type __func__.34169, %object
+ .size __func__.34169, 15
+__func__.34169:
.string "ftl_alloc_sblk"
.align 3
.LANCHOR3 = . + 0
- .type __func__.34068, %object
- .size __func__.34068, 17
-__func__.34068:
+ .type __func__.34721, %object
+ .size __func__.34721, 17
+__func__.34721:
.string "pm_alloc_new_blk"
.zero 7
- .type __func__.34096, %object
- .size __func__.34096, 21
-__func__.34096:
+ .type __func__.34749, %object
+ .size __func__.34749, 21
+__func__.34749:
.string "pm_select_ram_region"
.zero 3
- .type __func__.18335, %object
- .size __func__.18335, 20
-__func__.18335:
+ .type __func__.19008, %object
+ .size __func__.19008, 20
+__func__.19008:
.string "flash_die_info_init"
.zero 4
- .type __func__.32663, %object
- .size __func__.32663, 17
-__func__.32663:
+ .type __func__.33316, %object
+ .size __func__.33316, 17
+__func__.33316:
.string "lpa_rebuild_hash"
.zero 7
- .type __func__.34032, %object
- .size __func__.34032, 13
-__func__.34032:
+ .type __func__.34685, %object
+ .size __func__.34685, 13
+__func__.34685:
.string "pm_free_sblk"
.zero 3
- .type __func__.18651, %object
- .size __func__.18651, 21
-__func__.18651:
+ .type __func__.19333, %object
+ .size __func__.19333, 21
+__func__.19333:
.string "flash_info_data_init"
.zero 3
- .type __func__.17864, %object
- .size __func__.17864, 19
-__func__.17864:
+ .type __func__.18537, %object
+ .size __func__.18537, 19
+__func__.18537:
.string "flash_read_page_en"
.zero 5
- .type __func__.18640, %object
- .size __func__.18640, 20
-__func__.18640:
+ .type __func__.19322, %object
+ .size __func__.19322, 20
+__func__.19322:
.string "flash_info_blk_init"
.zero 4
- .type __func__.17999, %object
- .size __func__.17999, 31
-__func__.17999:
+ .type __func__.18672, %object
+ .size __func__.18672, 31
+__func__.18672:
.string "flash_complete_plane_page_read"
.zero 1
- .type __func__.18024, %object
- .size __func__.18024, 25
-__func__.18024:
+ .type __func__.18697, %object
+ .size __func__.18697, 25
+__func__.18697:
.string "flash_complete_page_read"
.zero 7
- .type __func__.33899, %object
- .size __func__.33899, 31
-__func__.33899:
+ .type __func__.34552, %object
+ .size __func__.34552, 31
+__func__.34552:
.string "queue_wait_first_req_completed"
.zero 1
- .type __func__.33979, %object
- .size __func__.33979, 15
-__func__.33979:
+ .type __func__.34632, %object
+ .size __func__.34632, 15
+__func__.34632:
.string "sblk_read_page"
.zero 1
- .type __func__.17975, %object
- .size __func__.17975, 22
-__func__.17975:
+ .type __func__.18648, %object
+ .size __func__.18648, 22
+__func__.18648:
.string "flash_start_page_prog"
.zero 2
- .type __func__.33952, %object
- .size __func__.33952, 15
-__func__.33952:
+ .type __func__.34605, %object
+ .size __func__.34605, 15
+__func__.34605:
.string "sblk_prog_page"
.zero 1
- .type __func__.17957, %object
- .size __func__.17957, 26
-__func__.17957:
+ .type __func__.18630, %object
+ .size __func__.18630, 26
+__func__.18630:
.string "flash_start_tlc_page_prog"
.zero 6
- .type __func__.17893, %object
- .size __func__.17893, 19
-__func__.17893:
+ .type __func__.18566, %object
+ .size __func__.18566, 19
+__func__.18566:
.string "flash_prog_page_en"
.zero 5
- .type __func__.33782, %object
- .size __func__.33782, 14
-__func__.33782:
+ .type __func__.34435, %object
+ .size __func__.34435, 14
+__func__.34435:
.string "ftl_prog_page"
.zero 2
- .type __func__.33484, %object
- .size __func__.33484, 15
-__func__.33484:
+ .type __func__.34137, %object
+ .size __func__.34137, 15
+__func__.34137:
.string "ftl_info_flush"
.zero 1
- .type __func__.33746, %object
- .size __func__.33746, 19
-__func__.33746:
+ .type __func__.34399, %object
+ .size __func__.34399, 19
+__func__.34399:
.string "ftl_ext_info_flush"
.zero 5
- .type __func__.33758, %object
- .size __func__.33758, 18
-__func__.33758:
+ .type __func__.34411, %object
+ .size __func__.34411, 18
+__func__.34411:
.string "ftl_ext_info_init"
.zero 6
- .type __func__.33645, %object
- .size __func__.33645, 23
-__func__.33645:
+ .type __func__.34298, %object
+ .size __func__.34298, 23
+__func__.34298:
.string "ftl_open_sblk_recovery"
.zero 1
- .type __func__.34078, %object
- .size __func__.34078, 14
-__func__.34078:
+ .type __func__.34731, %object
+ .size __func__.34731, 14
+__func__.34731:
.string "pm_write_page"
.zero 2
- .type __func__.18673, %object
- .size __func__.18673, 17
-__func__.18673:
+ .type __func__.19355, %object
+ .size __func__.19355, 17
+__func__.19355:
.string "flash_info_flush"
.zero 7
- .type __func__.18390, %object
- .size __func__.18390, 16
-__func__.18390:
+ .type __func__.19063, %object
+ .size __func__.19063, 16
+__func__.19063:
.string "nand_flash_init"
- .type __func__.33626, %object
- .size __func__.33626, 16
-__func__.33626:
+ .type __func__.34279, %object
+ .size __func__.34279, 16
+__func__.34279:
.string "ftl_sysblk_dump"
- .type __func__.34018, %object
- .size __func__.34018, 16
-__func__.34018:
+ .type __func__.34671, %object
+ .size __func__.34671, 16
+__func__.34671:
.string "load_l2p_region"
- .type __func__.34052, %object
- .size __func__.34052, 6
-__func__.34052:
+ .type __func__.34705, %object
+ .size __func__.34705, 6
+__func__.34705:
.string "pm_gc"
.zero 2
- .type __func__.33001, %object
- .size __func__.33001, 22
-__func__.33001:
+ .type __func__.33654, %object
+ .size __func__.33654, 22
+__func__.33654:
.string "gc_update_l2p_map_new"
.zero 2
- .type __func__.33109, %object
- .size __func__.33109, 16
-__func__.33109:
+ .type __func__.33762, %object
+ .size __func__.33762, 16
+__func__.33762:
.string "gc_scan_src_blk"
- .type __func__.33167, %object
- .size __func__.33167, 20
-__func__.33167:
+ .type __func__.33820, %object
+ .size __func__.33820, 20
+__func__.33820:
.string "gc_scan_static_data"
.zero 4
- .type __func__.33230, %object
- .size __func__.33230, 18
-__func__.33230:
+ .type __func__.33883, %object
+ .size __func__.33883, 18
+__func__.33883:
.string "gc_block_vpn_scan"
.zero 6
- .type __func__.33602, %object
- .size __func__.33602, 14
-__func__.33602:
+ .type __func__.34255, %object
+ .size __func__.34255, 14
+__func__.34255:
.string "ftl_sblk_dump"
.zero 2
- .type __func__.32805, %object
- .size __func__.32805, 10
-__func__.32805:
+ .type __func__.33458, %object
+ .size __func__.33458, 10
+__func__.33458:
.string "zftl_read"
.zero 6
- .type __func__.32967, %object
- .size __func__.32967, 21
-__func__.32967:
+ .type __func__.33620, %object
+ .size __func__.33620, 21
+__func__.33620:
.string "gc_check_data_one_wl"
.zero 3
- .type __func__.33692, %object
- .size __func__.33692, 19
-__func__.33692:
+ .type __func__.34345, %object
+ .size __func__.34345, 19
+__func__.34345:
.string "ftl_update_l2p_map"
.zero 5
- .type __func__.32710, %object
- .size __func__.32710, 17
-__func__.32710:
+ .type __func__.33363, %object
+ .size __func__.33363, 17
+__func__.33363:
.string "ftl_write_commit"
.zero 7
- .type __func__.33043, %object
- .size __func__.33043, 16
-__func__.33043:
+ .type __func__.33696, %object
+ .size __func__.33696, 16
+__func__.33696:
.string "gc_do_copy_back"
- .type __func__.33258, %object
- .size __func__.33258, 11
-__func__.33258:
+ .type __func__.33911, %object
+ .size __func__.33911, 11
+__func__.33911:
.string "zftl_do_gc"
.zero 5
- .type __func__.32836, %object
- .size __func__.32836, 13
-__func__.32836:
+ .type __func__.33489, %object
+ .size __func__.33489, 13
+__func__.33489:
.string "_ftl_discard"
.section .rodata.str1.1,"aMS",%progbits,1
.LC0:
@@ -25505,7 +25563,7 @@ __func__.32836:
.LC1:
.string "%s\n"
.LC2:
- .string "FTL version: 6.0.14 20180908"
+ .string "FTL version: 6.0.14 20181108"
.LC3:
.string "zftl_debug:0x%x\n"
.LC4:
@@ -26136,6 +26194,37 @@ __func__.32836:
zftl_debug:
.word 17476
.zero 4
+ .type g_nand_para_info, %object
+ .size g_nand_para_info, 32
+g_nand_para_info:
+ .byte 6
+ .byte -104
+ .byte 58
+ .byte -104
+ .byte -77
+ .byte 118
+ .byte 114
+ .byte 1
+ .byte 1
+ .byte 32
+ .hword 768
+ .byte 3
+ .byte 2
+ .hword 758
+ .hword 5593
+ .byte 0
+ .byte 37
+ .byte 60
+ .byte 32
+ .byte 2
+ .byte 1
+ .byte 4
+ .byte 0
+ .hword 256
+ .byte 1
+ .byte -94
+ .byte 0
+ .byte 0
.type sd15_tlc_rr, %object
.size sd15_tlc_rr, 329
sd15_tlc_rr:
@@ -26498,37 +26587,6 @@ sd15_slc_rr:
.byte 104
.byte 112
.zero 7
- .type g_nand_para_info, %object
- .size g_nand_para_info, 32
-g_nand_para_info:
- .byte 6
- .byte -104
- .byte 58
- .byte -104
- .byte -77
- .byte 118
- .byte 114
- .byte 1
- .byte 1
- .byte 32
- .hword 768
- .byte 3
- .byte 2
- .hword 758
- .hword 5593
- .byte 0
- .byte 37
- .byte 60
- .byte 32
- .byte 2
- .byte 1
- .byte 4
- .byte 0
- .hword 256
- .byte 1
- .byte -94
- .byte 0
- .byte 0
.type hy_f26_ref_value, %object
.size hy_f26_ref_value, 28
hy_f26_ref_value: