hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/drivers/rk_nand/rk_zftl_arm64.S
....@@ -5,7 +5,7 @@
55 * it under the terms of the GNU General Public License as published by
66 * the Free Software Foundation; either version 2 of the License, or
77 * (at your option) any later version.
8
- * date: 2021-06-30
8
+ * date: 2021-07-16
99 * function: rk ftl v6 for rockchip soc base on arm v8 to support 3D/2D
1010 * TLC and MLC.
1111 */
....@@ -4310,7 +4310,7 @@
43104310 bhi .L689
43114311 adrp x1, .LANCHOR1
43124312 add x1, x1, :lo12:.LANCHOR1
4313
- add x1, x1, 1744
4313
+ add x1, x1, 1552
43144314 mov w2, 543
43154315 adrp x0, .LC0
43164316 add x0, x0, :lo12:.LC0
....@@ -4350,7 +4350,7 @@
43504350 cbz w3, .L687
43514351 adrp x1, .LANCHOR1
43524352 add x1, x1, :lo12:.LANCHOR1
4353
- add x1, x1, 1744
4353
+ add x1, x1, 1552
43544354 mov w2, 553
43554355 adrp x0, .LC0
43564356 add x0, x0, :lo12:.LC0
....@@ -4581,7 +4581,7 @@
45814581 bl printk
45824582 adrp x1, .LANCHOR1
45834583 add x1, x1, :lo12:.LANCHOR1
4584
- add x1, x1, 1760
4584
+ add x1, x1, 1568
45854585 mov w2, 956
45864586 adrp x0, .LC0
45874587 add x0, x0, :lo12:.LC0
....@@ -4617,7 +4617,7 @@
46174617 beq .L738
46184618 adrp x1, .LANCHOR1
46194619 add x1, x1, :lo12:.LANCHOR1
4620
- add x1, x1, 1760
4620
+ add x1, x1, 1568
46214621 mov w2, 976
46224622 adrp x0, .LC0
46234623 add x0, x0, :lo12:.LC0
....@@ -6460,7 +6460,7 @@
64606460 cbnz w0, .L1052
64616461 adrp x1, .LANCHOR1
64626462 add x1, x1, :lo12:.LANCHOR1
6463
- add x1, x1, 1784
6463
+ add x1, x1, 1592
64646464 mov w2, 1359
64656465 adrp x0, .LC0
64666466 add x0, x0, :lo12:.LC0
....@@ -6520,7 +6520,7 @@
65206520 bls .L1062
65216521 adrp x1, .LANCHOR1
65226522 add x1, x1, :lo12:.LANCHOR1
6523
- add x1, x1, 1808
6523
+ add x1, x1, 1616
65246524 mov w2, 1386
65256525 adrp x0, .LC0
65266526 add x0, x0, :lo12:.LC0
....@@ -6678,7 +6678,7 @@
66786678 bne .L1085
66796679 adrp x1, .LANCHOR1
66806680 add x1, x1, :lo12:.LANCHOR1
6681
- add x1, x1, 1832
6681
+ add x1, x1, 1640
66826682 mov w2, 1945
66836683 adrp x0, .LC0
66846684 add x0, x0, :lo12:.LC0
....@@ -6744,7 +6744,7 @@
67446744 bne .L1097
67456745 adrp x1, .LANCHOR1
67466746 add x1, x1, :lo12:.LANCHOR1
6747
- add x1, x1, 1856
6747
+ add x1, x1, 1664
67486748 mov w2, 2088
67496749 adrp x0, .LC0
67506750 add x0, x0, :lo12:.LC0
....@@ -6759,7 +6759,7 @@
67596759 bne .L1098
67606760 adrp x1, .LANCHOR1
67616761 add x1, x1, :lo12:.LANCHOR1
6762
- add x1, x1, 1856
6762
+ add x1, x1, 1664
67636763 mov w2, 2089
67646764 adrp x0, .LC0
67656765 add x0, x0, :lo12:.LC0
....@@ -6770,7 +6770,7 @@
67706770 cbnz w0, .L1099
67716771 adrp x1, .LANCHOR1
67726772 add x1, x1, :lo12:.LANCHOR1
6773
- add x1, x1, 1856
6773
+ add x1, x1, 1664
67746774 mov w2, 2090
67756775 adrp x0, .LC0
67766776 add x0, x0, :lo12:.LC0
....@@ -6842,7 +6842,7 @@
68426842 bcs .L1106
68436843 adrp x1, .LANCHOR1
68446844 add x1, x1, :lo12:.LANCHOR1
6845
- add x1, x1, 1880
6845
+ add x1, x1, 1688
68466846 mov w2, 2125
68476847 adrp x0, .LC0
68486848 add x0, x0, :lo12:.LC0
....@@ -7569,7 +7569,7 @@
75697569 .L1213:
75707570 adrp x1, .LANCHOR1
75717571 add x1, x1, :lo12:.LANCHOR1
7572
- add x1, x1, 1904
7572
+ add x1, x1, 1712
75737573 mov w2, 1363
75747574 adrp x0, .LC0
75757575 add x0, x0, :lo12:.LC0
....@@ -7748,7 +7748,7 @@
77487748 cbnz x0, .L1250
77497749 adrp x1, .LANCHOR1
77507750 add x1, x1, :lo12:.LANCHOR1
7751
- add x1, x1, 1920
7751
+ add x1, x1, 1728
77527752 mov w2, 811
77537753 adrp x0, .LC0
77547754 add x0, x0, :lo12:.LC0
....@@ -7790,7 +7790,7 @@
77907790 bls .L1255
77917791 adrp x1, .LANCHOR1
77927792 add x1, x1, :lo12:.LANCHOR1
7793
- add x1, x1, 1920
7793
+ add x1, x1, 1728
77947794 mov w2, 818
77957795 adrp x0, .LC0
77967796 add x0, x0, :lo12:.LC0
....@@ -7945,7 +7945,7 @@
79457945 cbnz x0, .L1278
79467946 adrp x1, .LANCHOR1
79477947 add x1, x1, :lo12:.LANCHOR1
7948
- add x1, x1, 1936
7948
+ add x1, x1, 1744
79497949 mov w2, 1151
79507950 adrp x0, .LC0
79517951 add x0, x0, :lo12:.LC0
....@@ -7966,7 +7966,7 @@
79667966 bls .L1281
79677967 adrp x1, .LANCHOR1
79687968 add x1, x1, :lo12:.LANCHOR1
7969
- add x1, x1, 1936
7969
+ add x1, x1, 1744
79707970 mov w2, 1158
79717971 adrp x0, .LC0
79727972 add x0, x0, :lo12:.LC0
....@@ -27749,7 +27749,7 @@
2774927749 add w4, w4, 327680
2775027750 cmp w3, w4
2775127751 beq .L4283
27752
-.L4400:
27752
+.L4401:
2775327753 mov w0, -1
2775427754 .L4282:
2775527755 ldp x19, x20, [sp, 16]
....@@ -27761,7 +27761,7 @@
2776127761 ret
2776227762 .L4283:
2776327763 cmp w0, 15
27764
- bls .L4400
27764
+ bls .L4401
2776527765 add x25, x23, :lo12:.LANCHOR0
2776627766 mov w19, w0
2776727767 str x2, [x29, 168]
....@@ -27777,21 +27777,21 @@
2777727777 movk w0, 0x3, lsl 16
2777827778 bl ftl_malloc
2777927779 mov x22, x0
27780
- cbz x0, .L4400
27780
+ cbz x0, .L4401
2778127781 adrp x0, .LANCHOR5+496
2778227782 ldrb w0, [x0, #:lo12:.LANCHOR5+496]
27783
- cbz w0, .L4339
27783
+ cbz w0, .L4340
2778427784 ldrb w1, [x23, #:lo12:.LANCHOR0]
2778527785 ldrb w0, [x25, 1154]
2778627786 cbz w1, .L4287
2778727787 cmp w0, 0
2778827788 cset w0, eq
27789
-.L4397:
27789
+.L4398:
2779027790 str w0, [x29, 236]
27791
- b .L4394
27791
+ b .L4286
2779227792 .L4287:
2779327793 cmp w0, 3
27794
- beq .L4340
27794
+ beq .L4341
2779527795 ldr w2, [x29, 212]
2779627796 cmp w0, 2
2779727797 mov w1, 2
....@@ -27799,10 +27799,17 @@
2779927799 csel w1, w2, w1, ne
2780027800 csel w0, wzr, w0, ne
2780127801 str w1, [x29, 212]
27802
- b .L4397
27803
-.L4339:
27802
+ b .L4398
27803
+.L4340:
2780427804 str wzr, [x29, 236]
27805
-.L4394:
27805
+.L4286:
27806
+ add w19, w19, 511
27807
+ lsr w19, w19, 9
27808
+ cmp w19, 8
27809
+ bls .L4343
27810
+ cmp w19, 500
27811
+ bhi .L4289
27812
+.L4288:
2780627813 ldr x0, [x29, 216]
2780727814 mov w1, 35899
2780827815 movk w1, 0xfcdc, lsl 16
....@@ -27811,32 +27818,31 @@
2781127818 mov w1, 19282
2781227819 movk w1, 0x534e, lsl 16
2781327820 ccmp w0, w1, 4, ne
27814
- beq .L4289
27821
+ beq .L4290
2781527822 add w1, w1, 327680
2781627823 cmp w0, w1
27817
- beq .L4289
27824
+ beq .L4290
27825
+.L4289:
2781827826 mov x0, x22
2781927827 bl ftl_free
27820
- b .L4400
27821
-.L4340:
27828
+ b .L4401
27829
+.L4341:
2782227830 str w0, [x29, 212]
2782327831 mov w0, 2
27824
- b .L4397
27825
-.L4289:
27832
+ b .L4398
27833
+.L4343:
27834
+ mov w19, 8
27835
+ b .L4288
27836
+.L4290:
2782627837 mov w0, 0
2782727838 bl zftl_flash_exit_slc_mode
2782827839 add x0, x23, :lo12:.LANCHOR0
27829
- add w19, w19, 511
2783027840 mul w24, w24, w20
27831
- lsr w19, w19, 9
27832
- cmp w19, 8
2783327841 mov w4, 17739
27834
- ldrb w0, [x0, 1154]
2783527842 mov w2, 63871
27836
- strb w0, [x23, #:lo12:.LANCHOR0]
2783727843 movk w4, 0x4e52, lsl 16
27838
- mov w0, 8
27839
- csel w19, w19, w0, cs
27844
+ ldrb w0, [x0, 1154]
27845
+ strb w0, [x23, #:lo12:.LANCHOR0]
2784027846 sub w0, w24, #1
2784127847 add w0, w0, w19
2784227848 udiv w0, w0, w24
....@@ -27845,20 +27851,20 @@
2784527851 add x3, x0, 253952
2784627852 mov w0, 0
2784727853 add x3, x3, 1532
27848
-.L4295:
27854
+.L4296:
2784927855 ldr w1, [x3]
27850
- cbnz w1, .L4290
27851
- cbnz w0, .L4291
27856
+ cbnz w1, .L4291
27857
+ cbnz w0, .L4292
2785227858 str w4, [x3, 512]
27853
-.L4292:
27859
+.L4293:
2785427860 add w0, w0, 1
2785527861 sub w2, w2, #1
2785627862 cmp w0, 4095
2785727863 sub x3, x3, #4
2785827864 csel w0, w0, wzr, cc
2785927865 cmp w2, 4096
27860
- bne .L4295
27861
-.L4294:
27866
+ bne .L4296
27867
+.L4295:
2786227868 ldr x1, [x29, 168]
2786327869 mul w0, w21, w20
2786427870 mov w3, 5
....@@ -27878,12 +27884,12 @@
2787827884 add x0, x0, 8
2787927885 str wzr, [x29, 232]
2788027886 str x0, [x29, 136]
27881
-.L4336:
27887
+.L4337:
2788227888 adrp x27, .LANCHOR5
2788327889 add x1, x27, :lo12:.LANCHOR5
2788427890 ldr w0, [x29, 224]
2788527891 ldrb w1, [x1, 496]
27886
- cbnz w1, .L4296
27892
+ cbnz w1, .L4297
2788727893 ldr x2, [x29, 224]
2788827894 cmp w0, 0
2788927895 ldr x1, [x29, 168]
....@@ -27892,20 +27898,20 @@
2789227898 mul w21, w2, w1
2789327899 ldr w2, [x29, 132]
2789427900 ccmp w2, 1, 0, ne
27895
- bls .L4297
27901
+ bls .L4298
2789627902 ldr x2, [x29, 168]
2789727903 sub w0, w0, #1
2789827904 ldr w0, [x2, x0, lsl 2]
2789927905 add w0, w0, 1
2790027906 cmp w1, w0
27901
- bne .L4297
27902
-.L4298:
27907
+ bne .L4298
27908
+.L4299:
2790327909 ldr x0, [x29, 224]
2790427910 add x0, x0, 1
2790527911 str x0, [x29, 224]
2790627912 cmp x0, 4
27907
- bne .L4336
27908
-.L4338:
27913
+ bne .L4337
27914
+.L4339:
2790927915 mov w0, 0
2791027916 bl zftl_flash_exit_slc_mode
2791127917 adrp x0, .LANCHOR0
....@@ -27913,10 +27919,10 @@
2791327919 add x1, x0, :lo12:.LANCHOR0
2791427920 strb w2, [x0, #:lo12:.LANCHOR0]
2791527921 ldr w2, [x29, 236]
27916
- cbz w2, .L4337
27922
+ cbz w2, .L4338
2791727923 ldrb w2, [x29, 144]
2791827924 strb w2, [x1, 1154]
27919
-.L4337:
27925
+.L4338:
2792027926 add x0, x0, :lo12:.LANCHOR0
2792127927 mov w1, 2
2792227928 strb w1, [x0, 1208]
....@@ -27928,17 +27934,17 @@
2792827934 cmp w0, 0
2792927935 csetm w0, eq
2793027936 b .L4282
27931
-.L4291:
27937
+.L4292:
2793227938 ldr x1, [x29, 216]
2793327939 ldr w1, [x1, w0, uxtw 2]
2793427940 str w1, [x3, 512]
27935
- b .L4292
27936
-.L4290:
27941
+ b .L4293
27942
+.L4291:
2793727943 adrp x0, .LC317
2793827944 add x0, x0, :lo12:.LC317
2793927945 bl printk
27940
- b .L4294
27941
-.L4296:
27946
+ b .L4295
27947
+.L4297:
2794227948 adrp x20, .LANCHOR0
2794327949 add x23, x20, :lo12:.LANCHOR0
2794427950 ldr w2, [x29, 224]
....@@ -27947,22 +27953,22 @@
2794727953 ldrb w21, [x1, 32]
2794827954 mov x1, x20
2794927955 cmp w21, 255
27950
- beq .L4298
27956
+ beq .L4299
2795127957 ldr w2, [x29, 164]
2795227958 mul w21, w21, w2
2795327959 ldr w2, [x29, 236]
27954
- cbz w2, .L4297
27960
+ cbz w2, .L4298
2795527961 and w0, w0, -3
2795627962 cmp w0, 1
27957
- beq .L4299
27963
+ beq .L4300
2795827964 cmp w2, 3
27959
- bne .L4300
27960
-.L4299:
27965
+ bne .L4301
27966
+.L4300:
2796127967 add x2, x1, :lo12:.LANCHOR0
2796227968 ldrb w0, [x29, 212]
2796327969 strb w0, [x1, #:lo12:.LANCHOR0]
2796427970 strb w0, [x2, 1154]
27965
-.L4297:
27971
+.L4298:
2796627972 mov w2, 512
2796727973 mov w1, 0
2796827974 mov x0, x22
....@@ -27984,12 +27990,12 @@
2798427990 mul w25, w25, w24
2798527991 bl flash_erase_block
2798627992 cmp w23, w19
27987
- bcs .L4342
27993
+ bcs .L4344
2798827994 add w1, w21, w25
2798927995 mov w0, 0
2799027996 bl flash_erase_block
2799127997 mov w1, 2
27992
-.L4301:
27998
+.L4302:
2799327999 add x28, x20, :lo12:.LANCHOR0
2799428000 ldr x0, [x28, 1144]
2799528001 ldrh w23, [x0, 10]
....@@ -28003,10 +28009,10 @@
2800328009 str w0, [x29, 208]
2800428010 sub w26, w21, w0
2800528011 cmp w21, w26
28006
- bne .L4344
28012
+ bne .L4346
2800728013 ldrb w0, [x28, 1028]
2800828014 cmp w0, 9
28009
- bne .L4344
28015
+ bne .L4346
2801028016 add x27, x27, :lo12:.LANCHOR5
2801128017 mov w2, 1024
2801228018 mov w1, 0
....@@ -28021,11 +28027,11 @@
2802128027 ldrb w0, [x28, 1154]
2802228028 strb wzr, [x27, 16]
2802328029 str wzr, [x27, 12]
28024
- cbz w0, .L4303
28030
+ cbz w0, .L4304
2802528031 ldr x0, [x28, 1144]
2802628032 ldrb w0, [x0, 29]
2802728033 strb w0, [x27, 16]
28028
-.L4303:
28034
+.L4304:
2802928035 add x20, x20, :lo12:.LANCHOR0
2803028036 mov w0, 4
2803128037 strb w0, [x27, 17]
....@@ -28046,17 +28052,17 @@
2804628052 add x0, x27, 12
2804728053 bl js_hash
2804828054 str w0, [x27, 8]
28049
-.L4302:
28055
+.L4303:
2805028056 ldr x20, [x29, 216]
2805128057 adrp x0, .LANCHOR0
2805228058 add x25, x0, :lo12:.LANCHOR0
2805328059 mov w23, 0
2805428060 add x0, x25, 4
2805528061 str x0, [x29, 200]
28056
-.L4305:
28062
+.L4306:
2805728063 ldr w0, [x29, 176]
2805828064 cmp w0, w23
28059
- bhi .L4316
28065
+ bhi .L4317
2806028066 ldr x0, [x29, 136]
2806128067 mov x23, x22
2806228068 mov w24, 4
....@@ -28081,47 +28087,47 @@
2808128087 str w0, [x29, 200]
2808228088 add x0, x20, 4
2808328089 str x0, [x29, 104]
28084
-.L4317:
28090
+.L4318:
2808528091 ldr w0, [x29, 192]
2808628092 cmp w25, w0
28087
- bcc .L4331
28093
+ bcc .L4332
2808828094 adrp x0, .LANCHOR0
2808928095 add x20, x0, :lo12:.LANCHOR0
2809028096 ldrb w0, [x29, 128]
2809128097 strb w0, [x20, 1252]
2809228098 ldr w0, [x29, 236]
28093
- cbz w0, .L4332
28099
+ cbz w0, .L4333
2809428100 mov w0, 0
2809528101 bl zftl_flash_exit_slc_mode
2809628102 adrp x0, .LANCHOR0
2809728103 strb wzr, [x20, 1154]
2809828104 strb wzr, [x0, #:lo12:.LANCHOR0]
28099
-.L4332:
28105
+.L4333:
2810028106 lsl w0, w28, 7
2810128107 mov x1, 0
28102
-.L4333:
28108
+.L4334:
2810328109 cmp w0, w1
28104
- bhi .L4334
28110
+ bhi .L4335
2810528111 ldr w0, [x29, 232]
2810628112 add w0, w0, 1
2810728113 str w0, [x29, 232]
2810828114 cmp w0, 5
28109
- bls .L4298
28110
- b .L4338
28111
-.L4300:
28115
+ bls .L4299
28116
+ b .L4339
28117
+.L4301:
2811228118 mov w0, 0
2811328119 bl zftl_flash_exit_slc_mode
2811428120 strb wzr, [x20, #:lo12:.LANCHOR0]
2811528121 strb wzr, [x23, 1154]
28116
- b .L4297
28117
-.L4342:
28118
- mov w1, 1
28119
- b .L4301
28122
+ b .L4298
2812028123 .L4344:
28124
+ mov w1, 1
28125
+ b .L4302
28126
+.L4346:
2812128127 mov w28, w19
2812228128 mov x27, 0
28123
- b .L4302
28124
-.L4316:
28129
+ b .L4303
28130
+.L4317:
2812528131 ldr w0, [x29, 208]
2812628132 ldrb w2, [x25, 1154]
2812728133 add w8, w0, w23
....@@ -28129,26 +28135,26 @@
2812928135 ubfx x8, x8, 2, 16
2813028136 add w1, w8, 1
2813128137 ldrh w0, [x0, w1, sxtw 1]
28132
- cbz w2, .L4307
28138
+ cbz w2, .L4308
2813328139 ldrb w4, [x25, 1]
2813428140 lsl w0, w1, 1
2813528141 cmp w4, 0
2813628142 csel w0, w0, w1, ne
28137
-.L4307:
28143
+.L4308:
2813828144 ldrb w1, [x25, 1028]
2813928145 cmp w1, 9
28140
- bne .L4309
28141
-.L4398:
28146
+ bne .L4310
28147
+.L4399:
2814228148 str w0, [x29, 240]
2814328149 mov w0, 61424
2814428150 str w0, [x29, 244]
2814528151 ldr x0, [x29, 200]
2814628152 ldrh w0, [x0, w8, sxtw 1]
28147
- cbnz w2, .L4311
28153
+ cbnz w2, .L4312
2814828154 mov w8, w0
28149
-.L4312:
28155
+.L4313:
2815028156 mul w0, w24, w8
28151
- cbnz x27, .L4313
28157
+ cbnz x27, .L4314
2815228158 ldr w5, [x20]
2815328159 mov x4, x20
2815428160 ldr w6, [x29, 240]
....@@ -28167,42 +28173,42 @@
2816728173 bl fw_flash_page_prog.constprop.29
2816828174 ldrb w0, [x25, 1154]
2816928175 ldr w8, [x29, 196]
28170
- cbnz w0, .L4314
28176
+ cbnz w0, .L4315
2817128177 udiv w1, w26, w24
2817228178 add w2, w8, 1
2817328179 bl id_block_prog_msb_ff_data
28174
-.L4314:
28180
+.L4315:
2817528181 add w0, w28, 16
2817628182 add x20, x20, 2048
2817728183 cmp w23, w0
28178
- bcc .L4315
28184
+ bcc .L4316
2817928185 ldr x0, [x29, 216]
2818028186 add w1, w28, 20
2818128187 cmp w23, w1
2818228188 add x0, x0, 2048
2818328189 csel x20, x0, x20, cc
28184
-.L4315:
28190
+.L4316:
2818528191 add w9, w23, 4
2818628192 mov x27, 0
2818728193 and w23, w9, 65535
28188
- b .L4305
28189
-.L4309:
28194
+ b .L4306
28195
+.L4310:
2819028196 sub w0, w0, #1
2819128197 lsl w0, w0, 2
28192
- b .L4398
28193
-.L4311:
28198
+ b .L4399
28199
+.L4312:
2819428200 ldrb w1, [x25, 1]
2819528201 lsl w0, w8, 1
2819628202 cmp w1, 0
2819728203 csel w8, w0, w8, ne
28198
- b .L4312
28199
-.L4313:
28204
+ b .L4313
28205
+.L4314:
2820028206 add x2, x29, 240
2820128207 mov x1, x27
2820228208 add w0, w0, w26
2820328209 bl fw_flash_page_prog.constprop.29
28204
- b .L4315
28205
-.L4331:
28210
+ b .L4316
28211
+.L4332:
2820628212 ldr w0, [x29, 200]
2820728213 ldr x1, [x29, 104]
2820828214 sub w0, w24, w0
....@@ -28214,9 +28220,9 @@
2821428220 udiv w0, w0, w24
2821528221 and w0, w0, 65535
2821628222 ldrh w1, [x1, w0, sxtw 1]
28217
- cbnz w2, .L4318
28223
+ cbnz w2, .L4319
2821828224 mov w0, w1
28219
-.L4319:
28225
+.L4320:
2822028226 ldp w2, w1, [x29, 152]
2822128227 ldrb w27, [x20, 1152]
2822228228 madd w0, w1, w0, w2
....@@ -28234,7 +28240,7 @@
2823428240 adrp x0, .LANCHOR5
2823528241 add x0, x0, :lo12:.LANCHOR5
2823628242 str x0, [x29, 112]
28237
-.L4320:
28243
+.L4321:
2823828244 mov w4, w24
2823928245 add x3, x29, 240
2824028246 mov x2, x23
....@@ -28243,30 +28249,30 @@
2824328249 bl flash_read_page
2824428250 mov w5, w0
2824528251 cmn w0, #1
28246
- bne .L4321
28252
+ bne .L4322
2824728253 ldrb w6, [x20, 1252]
28248
- cbnz w6, .L4322
28249
-.L4325:
28254
+ cbnz w6, .L4323
28255
+.L4326:
2825028256 ldr x0, [x29, 112]
2825128257 ldr x6, [x0, 336]
28252
- cbnz x6, .L4323
28253
-.L4324:
28258
+ cbnz x6, .L4324
28259
+.L4325:
2825428260 ldrb w0, [x20, 1192]
28255
- cbz w0, .L4321
28261
+ cbz w0, .L4322
2825628262 mov w4, w24
2825728263 add x3, x29, 240
2825828264 mov x2, x23
2825928265 mov w1, w26
2826028266 mov w0, 0
2826128267 bl flash_ddr_tuning_read
28262
- b .L4399
28263
-.L4318:
28268
+ b .L4400
28269
+.L4319:
2826428270 ldrb w2, [x20, 1]
2826528271 lsl w1, w0, 1
2826628272 cmp w2, 0
2826728273 csel w0, w1, w0, ne
28268
- b .L4319
28269
-.L4322:
28274
+ b .L4320
28275
+.L4323:
2827028276 str w6, [x29, 100]
2827128277 mov w4, w24
2827228278 str w5, [x29, 120]
....@@ -28280,21 +28286,21 @@
2828028286 ldr w6, [x29, 100]
2828128287 strb w6, [x20, 1252]
2828228288 ldr w5, [x29, 120]
28283
- beq .L4325
28284
-.L4399:
28289
+ beq .L4326
28290
+.L4400:
2828528291 mov w5, w0
28286
-.L4321:
28292
+.L4322:
2828728293 cmn w5, #1
2828828294 cset w4, eq
2828928295 cmp w27, 16
2829028296 cset w0, ne
2829128297 tst w4, w0
28292
- beq .L4327
28298
+ beq .L4328
2829328299 mov w0, 16
2829428300 mov w27, 16
2829528301 bl nandc_bch_sel
28296
- b .L4320
28297
-.L4323:
28302
+ b .L4321
28303
+.L4324:
2829828304 str w5, [x29, 120]
2829928305 mov w4, w24
2830028306 add x3, x29, 240
....@@ -28304,9 +28310,9 @@
2830428310 blr x6
2830528311 cmn w0, #1
2830628312 ldr w5, [x29, 120]
28307
- beq .L4324
28308
- b .L4399
28309
-.L4327:
28313
+ beq .L4325
28314
+ b .L4400
28315
+.L4328:
2831028316 ldr w0, [x29, 124]
2831128317 bl nandc_bch_sel
2831228318 cmp w4, 0
....@@ -28316,25 +28322,25 @@
2831628322 ldr w0, [x29, 152]
2831728323 cmp w25, 0
2831828324 ccmp w21, w0, 0, eq
28319
- bne .L4329
28325
+ bne .L4330
2832028326 ldr w0, [x29, 196]
28321
- cbnz w0, .L4329
28327
+ cbnz w0, .L4330
2832228328 ldr w0, [x23]
2832328329 mov w1, 18766
2832428330 movk w1, 0x464e, lsl 16
2832528331 cmp w0, w1
28326
- bne .L4329
28332
+ bne .L4330
2832728333 ldr w0, [x29, 192]
2832828334 ldr w1, [x29, 176]
2832928335 ldrb w24, [x23, 17]
2833028336 add w0, w0, w1
2833128337 str w0, [x29, 192]
28332
-.L4330:
28338
+.L4331:
2833328339 ldr w0, [x29, 176]
2833428340 add w25, w0, w25
2833528341 and w25, w25, 65535
28336
- b .L4317
28337
-.L4329:
28342
+ b .L4318
28343
+.L4330:
2833828344 ldr x0, [x29, 176]
2833928345 mov w2, w25
2834028346 ldr w1, [x29, 148]
....@@ -28345,15 +28351,15 @@
2834528351 add x0, x0, :lo12:.LC321
2834628352 bl printk
2834728353 str wzr, [x29, 200]
28348
- b .L4330
28349
-.L4334:
28354
+ b .L4331
28355
+.L4335:
2835028356 ldr x2, [x29, 216]
2835128357 ldr w3, [x22, x1, lsl 2]
2835228358 add x1, x1, 1
2835328359 add x2, x2, x1, lsl 2
2835428360 ldr w2, [x2, -4]
2835528361 cmp w3, w2
28356
- beq .L4333
28362
+ beq .L4334
2835728363 mov w2, 512
2835828364 mov w1, 0
2835928365 mov x0, x22
....@@ -28361,7 +28367,7 @@
2836128367 mov w1, w21
2836228368 mov w0, 0
2836328369 bl flash_erase_block
28364
- b .L4298
28370
+ b .L4299
2836528371 .size write_idblock, .-write_idblock
2836628372 .align 2
2836728373 .global write_loader_lba
....@@ -28377,7 +28383,7 @@
2837728383 stp x23, x24, [sp, 48]
2837828384 mov w21, w1
2837928385 mov x24, x2
28380
- bne .L4402
28386
+ bne .L4403
2838128387 ldr w0, [x2]
2838228388 mov w1, 35899
2838328389 movk w1, 0xfcdc, lsl 16
....@@ -28385,11 +28391,11 @@
2838528391 mov w1, 19282
2838628392 movk w1, 0x534e, lsl 16
2838728393 ccmp w0, w1, 4, ne
28388
- beq .L4403
28394
+ beq .L4404
2838928395 add w1, w1, 327680
2839028396 cmp w0, w1
28391
- bne .L4402
28392
-.L4403:
28397
+ bne .L4403
28398
+.L4404:
2839328399 add x22, x20, :lo12:.LANCHOR5
2839428400 mov w0, 1
2839528401 strb w0, [x22, 524]
....@@ -28403,7 +28409,7 @@
2840328409 bl ftl_memset
2840428410 mov w0, 64
2840528411 str w0, [x22, 536]
28406
-.L4402:
28412
+.L4403:
2840728413 add x23, x20, :lo12:.LANCHOR5
2840828414 ldr w2, [x24]
2840928415 mov w4, w21
....@@ -28413,12 +28419,12 @@
2841328419 ldr x1, [x23, 528]
2841428420 bl printk
2841528421 ldrb w0, [x23, 524]
28416
- cbz w0, .L4401
28422
+ cbz w0, .L4402
2841728423 ldr x22, [x23, 528]
28418
- cbz x22, .L4401
28424
+ cbz x22, .L4402
2841928425 sub w0, w19, #64
2842028426 cmp w0, 499
28421
- bhi .L4405
28427
+ bhi .L4406
2842228428 mov w2, 564
2842328429 sub w2, w2, w19
2842428430 cmp w21, w2
....@@ -28428,19 +28434,19 @@
2842828434 lsl w2, w2, 9
2842928435 add x0, x22, x0
2843028436 bl ftl_memcpy
28431
-.L4406:
28437
+.L4407:
2843228438 add x23, x20, :lo12:.LANCHOR5
2843328439 ldr w0, [x23, 536]
2843428440 cmp w19, w0
28435
- beq .L4415
28441
+ beq .L4416
2843628442 strb wzr, [x23, 524]
2843728443 mov x0, x22
2843828444 bl ftl_free
2843928445 str xzr, [x23, 528]
28440
- b .L4415
28441
-.L4405:
28446
+ b .L4416
28447
+.L4406:
2844228448 cmp w19, 563
28443
- bls .L4406
28449
+ bls .L4407
2844428450 ldr w0, [x23, 536]
2844528451 mov w1, 500
2844628452 sub w0, w0, #64
....@@ -28450,7 +28456,7 @@
2845028456 ldr x1, [x1, #:lo12:.LANCHOR0+1144]
2845128457 ldrb w1, [x1, 9]
2845228458 cmp w1, 4
28453
- beq .L4407
28459
+ beq .L4408
2845428460 mov w1, 2
2845528461 str w1, [x29, 72]
2845628462 mov w1, 3
....@@ -28461,16 +28467,16 @@
2846128467 str w1, [x29, 84]
2846228468 mov w1, 6
2846328469 str w1, [x29, 88]
28464
-.L4408:
28470
+.L4409:
2846528471 add x2, x22, 245760
2846628472 mov w1, 61952
2846728473 add x2, x2, 2048
28468
-.L4414:
28474
+.L4415:
2846928475 ldr w3, [x2]
28470
- cbz w3, .L4412
28476
+ cbz w3, .L4413
2847128477 add w0, w1, 2048
2847228478 lsl w0, w0, 2
28473
-.L4413:
28479
+.L4414:
2847428480 mov x1, x22
2847528481 add x22, x20, :lo12:.LANCHOR5
2847628482 add x2, x29, 72
....@@ -28479,39 +28485,39 @@
2847928485 strb wzr, [x22, 524]
2848028486 bl ftl_free
2848128487 str xzr, [x22, 528]
28482
-.L4415:
28488
+.L4416:
2848328489 add x20, x20, :lo12:.LANCHOR5
2848428490 add w19, w19, w21
2848528491 str w19, [x20, 536]
28486
-.L4401:
28492
+.L4402:
2848728493 ldp x19, x20, [sp, 16]
2848828494 ldp x21, x22, [sp, 32]
2848928495 ldp x23, x24, [sp, 48]
2849028496 ldp x29, x30, [sp], 112
2849128497 ret
28492
-.L4407:
28498
+.L4408:
2849328499 add x2, x29, 72
2849428500 mov x1, 0
28495
-.L4411:
28501
+.L4412:
2849628502 cmp w0, 256
28497
- bls .L4409
28503
+ bls .L4410
2849828504 lsl w3, w1, 1
2849928505 str w3, [x2, x1, lsl 2]
28500
-.L4410:
28506
+.L4411:
2850128507 add x1, x1, 1
2850228508 cmp x1, 5
28503
- bne .L4411
28504
- b .L4408
28505
-.L4409:
28509
+ bne .L4412
28510
+ b .L4409
28511
+.L4410:
2850628512 str w1, [x2, x1, lsl 2]
28507
- b .L4410
28508
-.L4412:
28513
+ b .L4411
28514
+.L4413:
2850928515 sub w1, w1, #1
2851028516 sub x2, x2, #4
2851128517 cmp w1, 4096
28512
- bne .L4414
28518
+ bne .L4415
2851328519 lsl w0, w0, 9
28514
- b .L4413
28520
+ b .L4414
2851528521 .size write_loader_lba, .-write_loader_lba
2851628522 .align 2
2851728523 .global FtlWrite
....@@ -28527,13 +28533,13 @@
2852728533 mov w21, w2
2852828534 mov x22, x3
2852928535 cmp w0, 1983
28530
- bhi .L4427
28531
- cbnz w20, .L4427
28536
+ bhi .L4428
28537
+ cbnz w20, .L4428
2853228538 mov x2, x3
2853328539 mov w1, w21
2853428540 mov w0, w19
2853528541 bl write_loader_lba
28536
-.L4427:
28542
+.L4428:
2853728543 adrp x0, .LANCHOR5+232
2853828544 mov x3, x22
2853928545 mov w2, w21
....@@ -28551,560 +28557,39 @@
2855128557 .global rknand_sys_storage_ioctl
2855228558 .type rknand_sys_storage_ioctl, %function
2855328559 rknand_sys_storage_ioctl:
28554
- sub sp, sp, #560
28555
- mov w0, 27688
28556
- movk w0, 0x4004, lsl 16
28557
- cmp w1, w0
28558
- stp x29, x30, [sp]
28559
- add x29, sp, 0
28560
- stp x19, x20, [sp, 16]
28561
- mov w19, w1
28562
- mov x20, x2
28563
- beq .L4431
28564
- bhi .L4432
28565
- mov w0, 25602
28566
- movk w0, 0x4004, lsl 16
28567
- cmp w1, w0
28568
- beq .L4433
28569
- bhi .L4434
2857028560 mov w0, 25364
2857128561 movk w0, 0x4004, lsl 16
2857228562 cmp w1, w0
28573
- beq .L4435
28574
- add w0, w0, 237
28575
- cmp w1, w0
28576
- beq .L4436
28577
-.L4466:
28578
- mov x19, -22
28579
- b .L4429
28580
-.L4434:
28581
- mov w0, 25726
28582
- movk w0, 0x4004, lsl 16
28583
- cmp w1, w0
28584
- beq .L4437
28585
- add w0, w0, 1
28586
- cmp w1, w0
28587
- beq .L4438
28588
- mov w0, 25603
28589
- movk w0, 0x4004, lsl 16
28590
- cmp w1, w0
28591
- bne .L4466
28592
- adrp x0, .LC328
28593
- add x0, x0, :lo12:.LC328
28594
- bl printk
28595
- mov x2, 520
28596
- mov x1, x20
28597
- add x0, x29, 40
28598
- bl rk_copy_from_user
28599
- cbnz x0, .L4449
28600
- ldr w1, [x29, 40]
28601
- mov w0, 20051
28602
- movk w0, 0x4144, lsl 16
28603
- cmp w1, w0
28604
- bne .L4446
28605
- ldr w2, [x29, 44]
28606
- cmp w2, 512
28607
- bhi .L4446
28608
- adrp x1, .LANCHOR5
28609
- add x1, x1, :lo12:.LANCHOR5
28610
- uxtw x2, w2
28611
- add x1, x1, 568
28612
- add x0, x29, 48
28613
-.L4487:
28614
- bl memcpy
28615
- b .L4481
28616
-.L4432:
28617
- mov w0, 30224
28618
- movk w0, 0x4004, lsl 16
28619
- cmp w1, w0
28620
- beq .L4440
28621
- bhi .L4441
28622
- mov w0, 27698
28623
- movk w0, 0x4004, lsl 16
28624
- cmp w1, w0
28625
- beq .L4431
28626
- add w0, w0, 10
28627
- cmp w1, w0
28628
- bne .L4466
28629
-.L4431:
28630
- mov w0, 27698
28631
- movk w0, 0x4004, lsl 16
28632
- cmp w19, w0
28633
- bne .L4456
28634
- adrp x0, .LC329
28635
- add x0, x0, :lo12:.LC329
28636
-.L4483:
28637
- bl printk
28638
- mov x2, 520
28639
- mov x1, x20
28640
- add x0, x29, 40
28641
- bl rk_copy_from_user
28642
- cbnz x0, .L4449
28643
- ldr w1, [x29, 40]
28644
- mov w0, 17227
28645
- movk w0, 0x4c4f, lsl 16
28646
- cmp w1, w0
28647
- bne .L4486
28648
- mov w0, 27708
28649
- movk w0, 0x4004, lsl 16
28650
- cmp w19, w0
28651
- adrp x0, .LANCHOR5
28652
- bne .L4459
28653
- add x0, x0, :lo12:.LANCHOR5
28654
- mov x2, 16
28655
- add x1, x29, 40
28656
- ldr x0, [x0, 544]
28657
- ldr w0, [x0, 20]
28658
- strb w0, [x29, 48]
28659
- str w0, [x29, 44]
28660
- mov x0, x20
28661
- bl rk_copy_to_user
28662
- cbnz x0, .L4486
28663
-.L4450:
28664
- mov x19, 0
28665
-.L4429:
28666
- mov x0, x19
28667
- ldp x19, x20, [sp, 16]
28668
- ldp x29, x30, [sp]
28669
- add sp, sp, 560
28670
- ret
28671
-.L4441:
28672
- mov w0, 30226
28673
- movk w0, 0x4004, lsl 16
28674
- cmp w1, w0
28675
- beq .L4440
28676
- bcc .L4442
28677
- add w0, w0, 1
28678
- cmp w1, w0
28679
- bne .L4466
28680
-.L4442:
28681
- adrp x0, .LC334
28682
- add x0, x0, :lo12:.LC334
28683
- bl printk
28684
- mov x2, 520
28685
- mov x1, x20
28686
- add x0, x29, 40
28687
- bl rk_copy_from_user
28688
- cbnz x0, .L4449
28689
- ldr w1, [x29, 40]
28690
- mov w0, 17750
28691
- movk w0, 0x444e, lsl 16
28692
- cmp w1, w0
28693
- bne .L4446
28694
- ldr w2, [x29, 44]
28695
- cmp w2, 504
28696
- bhi .L4446
28697
- mov w0, 30225
28698
- add w2, w2, 8
28699
- movk w0, 0x4004, lsl 16
28700
- add x1, x29, 40
28701
- cmp w19, w0
28702
- adrp x19, .LANCHOR5
28703
- add x19, x19, :lo12:.LANCHOR5
28704
- bne .L4465
28705
- ldr x0, [x19, 1088]
28706
- bl memcpy
28707
- mov w0, 2
28708
- ldr x1, [x19, 1088]
28709
- b .L4485
28710
-.L4436:
28563
+ bne .L4434
28564
+ stp x29, x30, [sp, -16]!
28565
+ add x29, sp, 0
28566
+ bl rknand_dev_flush
28567
+ mov x1, 0
2871128568 adrp x0, .LC323
2871228569 add x0, x0, :lo12:.LC323
2871328570 bl printk
28714
- mov x2, 520
28715
- mov x1, x20
28716
- add x0, x29, 40
28717
- bl rk_copy_from_user
28718
- cbz x0, .L4443
28719
-.L4449:
28720
- adrp x0, .LC324
28721
- add x0, x0, :lo12:.LC324
28722
- bl printk
28723
-.L4486:
28724
- mov x19, -14
28725
- b .L4429
28726
-.L4443:
28727
- ldr w1, [x29, 40]
28728
- mov w0, 21060
28729
- movk w0, 0x4b4d, lsl 16
28730
- cmp w1, w0
28731
- beq .L4444
28732
-.L4446:
28733
- mov x19, -1
28734
-.L4445:
28735
- mov x1, x19
28736
- adrp x0, .LC335
28737
- add x0, x0, :lo12:.LC335
28738
- bl printk
28739
- b .L4429
28740
-.L4444:
28741
- ldr w0, [x29, 44]
28742
- cmp w0, 512
28743
- bhi .L4446
28744
- adrp x19, .LANCHOR5
28745
- add x19, x19, :lo12:.LANCHOR5
28746
- mov x2, 512
28747
- add x0, x29, 40
28748
- ldr x1, [x19, 544]
28749
- bl memcpy
28750
- ldr w1, [x19, 552]
28751
- mov w0, 5161
28752
- movk w0, 0xc059, lsl 16
28753
- cmp w1, w0
28754
- beq .L4447
28755
- mov x2, 128
28756
- mov w1, 0
28757
- add x0, x29, 104
28758
- stp wzr, wzr, [x29, 48]
28759
- bl memset
28760
-.L4447:
28761
- add x0, x29, 40
28762
- mov x2, 256
28763
- mov w1, 0
28764
- add x0, x0, x2
28765
- str wzr, [x29, 56]
28766
- bl memset
28767
-.L4481:
28768
- mov x2, 520
28769
- add x1, x29, 40
28770
- mov x0, x20
28771
- bl rk_copy_to_user
28772
- cbnz x0, .L4486
28773
-.L4484:
28774
- mov x19, 0
28775
- b .L4445
28776
-.L4433:
28777
- adrp x0, .LC325
28778
- add x0, x0, :lo12:.LC325
28779
- bl printk
28780
- mov x2, 520
28781
- mov x1, x20
28782
- add x0, x29, 40
28783
- bl rk_copy_from_user
28784
- cbnz x0, .L4449
28785
- ldr w1, [x29, 40]
28786
- mov w0, 21060
28787
- movk w0, 0x4b4d, lsl 16
28788
- cmp w1, w0
28789
- bne .L4446
28790
- ldr w0, [x29, 44]
28791
- cmp w0, 512
28792
- bhi .L4446
28793
- adrp x0, .LANCHOR5
28794
- add x0, x0, :lo12:.LANCHOR5
28795
- mov w1, 5161
28796
- movk w1, 0xc059, lsl 16
28797
- ldr w2, [x0, 552]
28798
- cmp w2, w1
28799
- bne .L4467
28800
- ldr w1, [x29, 52]
28801
- mov x19, -3
28802
- sub w2, w1, #1
28803
- cmp w2, 127
28804
- bhi .L4429
28805
- ldr x19, [x0, 544]
28806
- add x0, x19, 64
28807
- str w1, [x19, 12]
28808
- add x1, x29, 104
28809
- ldr w2, [x29, 52]
28810
- bl memcpy
28811
- mov x1, x19
28812
- mov w0, 1
28813
-.L4485:
28814
- bl StorageSysDataStore
28815
- uxtw x19, w0
28816
- b .L4445
28817
-.L4438:
28818
- adrp x0, .LC326
28819
- add x0, x0, :lo12:.LC326
28820
- bl printk
28821
- mov x2, 520
28822
- mov x1, x20
28823
- add x0, x29, 40
28824
- bl rk_copy_from_user
28825
- cbnz x0, .L4449
28826
- ldr w1, [x29, 40]
28827
- mov w0, 17476
28828
- movk w0, 0x4253, lsl 16
28829
- cmp w1, w0
28830
- bne .L4446
28831
- ldr w0, [x29, 44]
28832
- cmp w0, 512
28833
- bhi .L4446
28834
- adrp x19, .LANCHOR5
28835
- add x0, x19, :lo12:.LANCHOR5
28836
- ldr w0, [x0, 556]
28837
- cbz w0, .L4450
28838
- add x0, x19, :lo12:.LANCHOR5
28839
- mov w2, 22867
28840
- movk w2, 0x4453, lsl 16
28841
- ldr x1, [x0, 560]
28842
- ldr w3, [x1]
28843
- cmp w3, w2
28844
- beq .L4451
28845
- str w2, [x1]
28846
- mov w2, 504
28847
- ldr x1, [x0, 560]
28848
- str w2, [x1, 4]
28849
- ldr x0, [x0, 560]
28850
- stp wzr, wzr, [x0, 8]
28851
-.L4451:
28852
- add x20, x19, :lo12:.LANCHOR5
28853
- mov w0, 0
28854
- ldr x1, [x20, 560]
28855
- str wzr, [x1, 16]
28856
- bl StorageSysDataStore
28857
- ldr x0, [x20, 544]
28858
- mov w1, 21060
28859
- movk w1, 0x4b4d, lsl 16
28860
- ldr w2, [x0]
28861
- cmp w2, w1
28862
- beq .L4452
28863
- str w1, [x0]
28864
- mov w1, 504
28865
- ldr x0, [x20, 544]
28866
- str w1, [x0, 4]
28867
- ldr x0, [x20, 544]
28868
- str wzr, [x0, 8]
28869
-.L4452:
28870
- add x19, x19, :lo12:.LANCHOR5
28871
- mov x2, 128
28872
- mov w1, 0
28873
- ldr x20, [x19, 544]
28874
- add x0, x20, 64
28875
- str wzr, [x20, 12]
28876
- bl memset
28877
- mov x1, x20
28878
- mov w0, 1
28879
- bl StorageSysDataStore
28880
- str wzr, [x19, 552]
28881
- str wzr, [x19, 556]
28882
- b .L4484
28883
-.L4437:
28884
- adrp x0, .LC327
28885
- add x0, x0, :lo12:.LC327
28886
- bl printk
28887
- mov x2, 520
28888
- mov x1, x20
28889
- add x0, x29, 40
28890
- bl rk_copy_from_user
28891
- cbnz x0, .L4449
28892
- ldr w1, [x29, 40]
28893
- mov w0, 20037
28894
- movk w0, 0x4253, lsl 16
28895
- cmp w1, w0
28896
- bne .L4446
28897
- ldr w0, [x29, 44]
28898
- cmp w0, 512
28899
- bhi .L4446
28900
- adrp x19, .LANCHOR5
28901
- add x0, x19, :lo12:.LANCHOR5
28902
- ldr w1, [x0, 556]
28903
- cmp w1, 1
28904
- beq .L4450
28905
- ldr x1, [x0, 560]
28906
- mov w0, 22867
28907
- movk w0, 0x4453, lsl 16
28908
- ldr w2, [x1]
28909
- cmp w2, w0
28910
- beq .L4453
28911
- str w0, [x1]
28912
- add x0, x19, :lo12:.LANCHOR5
28913
- mov w2, 504
28914
- ldr x1, [x0, 560]
28915
- str w2, [x1, 4]
28916
- ldr x0, [x0, 560]
28917
- stp wzr, wzr, [x0, 8]
28918
-.L4453:
28919
- add x20, x19, :lo12:.LANCHOR5
28920
- mov w0, 1
28921
- ldr x1, [x20, 560]
28922
- str w0, [x1, 16]
28923
- mov w0, 0
28924
- bl StorageSysDataStore
28925
- ldr x0, [x20, 544]
28926
- mov w1, 21060
28927
- movk w1, 0x4b4d, lsl 16
28928
- ldr w2, [x0]
28929
- cmp w2, w1
28930
- beq .L4454
28931
- str w1, [x0]
28932
- mov w1, 504
28933
- ldr x0, [x20, 544]
28934
- str w1, [x0, 4]
28935
- ldr x0, [x20, 544]
28936
- str wzr, [x0, 8]
28937
-.L4454:
28938
- add x19, x19, :lo12:.LANCHOR5
28939
- mov x2, 128
28940
- mov w1, 0
28941
- ldr x20, [x19, 544]
28942
- add x0, x20, 64
28943
- str wzr, [x20, 12]
28944
- bl memset
28945
- mov x1, x20
28946
- mov w0, 1
28947
- bl StorageSysDataStore
28948
- mov w0, 1
28949
- str w0, [x19, 556]
28950
- b .L4484
28951
-.L4456:
28952
- mov w0, 27708
28953
- movk w0, 0x4004, lsl 16
28954
- cmp w19, w0
28955
- bne .L4458
28956
- adrp x0, .LC330
28957
- add x0, x0, :lo12:.LC330
28958
- b .L4483
28959
-.L4458:
28960
- adrp x0, .LC331
28961
- add x0, x0, :lo12:.LC331
28962
- b .L4483
28963
-.L4459:
28964
- add x20, x0, :lo12:.LANCHOR5
28965
- ldr w1, [x20, 1080]
28966
- cmp w1, 10
28967
- bhi .L4486
28968
- ldr x1, [x20, 544]
28969
- ldr w2, [x29, 44]
28970
- ldr w3, [x1, 24]
28971
- cmp w3, w2
28972
- beq .L4460
28973
- cbz w3, .L4460
28974
- mov w1, w2
28975
- adrp x0, .LC332
28976
- add x0, x0, :lo12:.LC332
28977
- bl printk
28978
- ldr w0, [x20, 1080]
28979
- add w0, w0, 1
28980
- str w0, [x20, 1080]
28981
- b .L4486
28982
-.L4460:
28983
- add x0, x0, :lo12:.LANCHOR5
28984
- str wzr, [x0, 1080]
28985
- mov w0, 27698
28986
- movk w0, 0x4004, lsl 16
28987
- cmp w19, w0
28988
- bne .L4461
28989
- stp wzr, wzr, [x1, 20]
28990
-.L4462:
28991
- mov w0, 1
28992
- bl StorageSysDataStore
28993
- cmn w0, #1
28994
- bne .L4484
28995
- mov x19, -2
28996
- b .L4445
28997
-.L4461:
28998
- mov w0, 1
28999
- stp w0, w2, [x1, 20]
29000
- b .L4462
29001
-.L4440:
29002
- adrp x0, .LC333
29003
- add x0, x0, :lo12:.LC333
29004
- bl printk
29005
- mov x2, 520
29006
- mov x1, x20
29007
- add x0, x29, 40
29008
- bl rk_copy_from_user
29009
- cbnz x0, .L4449
29010
- ldr w1, [x29, 40]
29011
- mov w0, 17750
29012
- movk w0, 0x444e, lsl 16
29013
- cmp w1, w0
29014
- bne .L4446
29015
- ldr w2, [x29, 44]
29016
- cmp w2, 504
29017
- bhi .L4446
29018
- mov w0, 30224
29019
- adrp x1, .LANCHOR5
29020
- movk w0, 0x4004, lsl 16
29021
- uxtw x2, w2
29022
- cmp w19, w0
29023
- add x1, x1, :lo12:.LANCHOR5
29024
- add x0, x29, 48
29025
- bne .L4463
29026
- ldr x1, [x1, 1088]
29027
-.L4488:
29028
- add x1, x1, 8
29029
- b .L4487
29030
-.L4463:
29031
- ldr x1, [x1, 1096]
29032
- b .L4488
29033
-.L4465:
29034
- ldr x0, [x19, 1096]
29035
- bl memcpy
29036
- mov w0, 3
29037
- ldr x1, [x19, 1096]
29038
- b .L4485
29039
-.L4435:
29040
- bl rknand_dev_flush
29041
- b .L4484
29042
-.L4467:
29043
- mov x19, -2
29044
- b .L4429
28571
+ mov x0, 0
28572
+ ldp x29, x30, [sp], 16
28573
+ ret
28574
+.L4434:
28575
+ mov x0, -22
28576
+ ret
2904528577 .size rknand_sys_storage_ioctl, .-rknand_sys_storage_ioctl
2904628578 .align 2
2904728579 .global rk_ftl_storage_sys_init
2904828580 .type rk_ftl_storage_sys_init, %function
2904928581 rk_ftl_storage_sys_init:
29050
- stp x29, x30, [sp, -48]!
29051
- mov w0, -1
29052
- mov w2, 512
28582
+ stp x29, x30, [sp, -16]!
28583
+ adrp x0, .LANCHOR5
28584
+ add x0, x0, :lo12:.LANCHOR5
28585
+ mov w1, -1
2905328586 add x29, sp, 0
29054
- stp x19, x20, [sp, 16]
29055
- adrp x20, .LANCHOR5
29056
- add x19, x20, :lo12:.LANCHOR5
29057
- str x21, [sp, 32]
29058
- ldr x1, [x19, 504]
29059
- str w0, [x19, 536]
29060
- add x0, x1, 512
29061
- str x0, [x19, 544]
29062
- add x0, x1, 1024
29063
- str x1, [x19, 560]
29064
- str x0, [x19, 1088]
29065
- add x1, x1, 1536
29066
- strb wzr, [x19, 524]
29067
- add x0, x19, 568
29068
- str x1, [x19, 1096]
29069
- str xzr, [x19, 528]
29070
- str xzr, [x19, 1104]
29071
- bl ftl_memcpy
29072
- ldr x0, [x19, 560]
29073
- str wzr, [x19, 552]
29074
- str wzr, [x19, 1080]
29075
- ldr w21, [x0, 508]
29076
- ldr w1, [x0, 16]
29077
- str w1, [x19, 556]
29078
- cbz w21, .L4491
29079
- mov w1, 508
29080
- bl js_hash
29081
- cmp w21, w0
29082
- beq .L4491
29083
- ldr x0, [x19, 560]
29084
- str wzr, [x19, 556]
29085
- str wzr, [x0, 16]
29086
- adrp x0, .LC336
29087
- add x0, x0, :lo12:.LC336
29088
- bl printk
29089
-.L4491:
29090
- add x0, x20, :lo12:.LANCHOR5
29091
- ldr w1, [x0, 556]
29092
- cbz w1, .L4493
29093
- mov w1, 5161
29094
- movk w1, 0xc059, lsl 16
29095
- str w1, [x0, 552]
29096
-.L4493:
29097
- add x20, x20, :lo12:.LANCHOR5
29098
- mov w0, 2
29099
- ldr x1, [x20, 1088]
29100
- bl StorageSysDataLoad
29101
- ldr x1, [x20, 1096]
29102
- mov w0, 3
29103
- bl StorageSysDataLoad
28587
+ str w1, [x0, 536]
28588
+ strb wzr, [x0, 524]
28589
+ str xzr, [x0, 528]
28590
+ str xzr, [x0, 544]
2910428591 bl rknand_sys_storage_init
29105
- ldr x21, [sp, 32]
29106
- ldp x19, x20, [sp, 16]
29107
- ldp x29, x30, [sp], 48
28592
+ ldp x29, x30, [sp], 16
2910828593 ret
2910928594 .size rk_ftl_storage_sys_init, .-rk_ftl_storage_sys_init
2911028595 .align 2
....@@ -29126,67 +28611,67 @@
2912628611 stp x21, x22, [sp, 32]
2912728612 stp x23, x24, [sp, 48]
2912828613 str x25, [sp, 64]
29129
- ldr x0, [x20, 1112]
29130
- cbnz x0, .L4500
28614
+ ldr x0, [x20, 552]
28615
+ cbnz x0, .L4443
2913128616 mov w0, 65536
2913228617 bl ftl_malloc
29133
- str x0, [x20, 1112]
29134
-.L4500:
28618
+ str x0, [x20, 552]
28619
+.L4443:
2913528620 add x19, x19, :lo12:.LANCHOR5
29136
- ldr x0, [x19, 1112]
29137
- cbz x0, .L4505
29138
- adrp x23, .LC337
28621
+ ldr x0, [x19, 552]
28622
+ cbz x0, .L4448
28623
+ adrp x23, .LC324
2913928624 mov w25, 22084
29140
- add x23, x23, :lo12:.LC337
28625
+ add x23, x23, :lo12:.LC324
2914128626 mov w24, 0
2914228627 mov w22, 0
2914328628 mov w21, 0
2914428629 movk w25, 0x524b, lsl 16
29145
-.L4503:
29146
- ldr x2, [x19, 1112]
28630
+.L4446:
28631
+ ldr x2, [x19, 552]
2914728632 mov w1, 128
2914828633 lsl w0, w21, 7
2914928634 bl FlashBootVendorRead
29150
- cbnz w0, .L4506
29151
- ldr x0, [x19, 1112]
28635
+ cbnz w0, .L4449
28636
+ ldr x0, [x19, 552]
2915228637 add x1, x0, 61440
2915328638 ldr w3, [x0, 4]
2915428639 ldr w2, [x1, 4092]
2915528640 ldr w1, [x0]
2915628641 mov x0, x23
2915728642 bl printk
29158
- ldr x20, [x19, 1112]
28643
+ ldr x20, [x19, 552]
2915928644 ldr w0, [x20]
2916028645 cmp w0, w25
29161
- bne .L4502
28646
+ bne .L4445
2916228647 add x0, x20, 61440
2916328648 ldr w1, [x20, 4]
2916428649 ldr w0, [x0, 4092]
2916528650 cmp w0, w1
29166
- bne .L4502
28651
+ bne .L4445
2916728652 cmp w0, w22
29168
- bls .L4502
28653
+ bls .L4445
2916928654 mov w24, w21
2917028655 mov w22, w0
29171
-.L4502:
28656
+.L4445:
2917228657 add w21, w21, 1
2917328658 cmp w21, 2
29174
- bne .L4503
29175
- cbz w22, .L4504
28659
+ bne .L4446
28660
+ cbz w22, .L4447
2917628661 mov x2, x20
2917728662 mov w1, 128
2917828663 lsl w0, w24, 7
2917928664 bl FlashBootVendorRead
2918028665 cmp w0, 0
2918128666 csetm w0, ne
29182
-.L4499:
28667
+.L4442:
2918328668 ldp x19, x20, [sp, 16]
2918428669 ldp x21, x22, [sp, 32]
2918528670 ldp x23, x24, [sp, 48]
2918628671 ldr x25, [sp, 64]
2918728672 ldp x29, x30, [sp], 80
2918828673 ret
29189
-.L4504:
28674
+.L4447:
2919028675 mov w1, 0
2919128676 mov x2, 65536
2919228677 mov x0, x20
....@@ -29200,34 +28685,34 @@
2920028685 mov w0, -1032
2920128686 strh w0, [x20, 14]
2920228687 mov w0, 0
29203
- b .L4499
29204
-.L4505:
28688
+ b .L4442
28689
+.L4448:
2920528690 mov w0, -12
29206
- b .L4499
29207
-.L4506:
28691
+ b .L4442
28692
+.L4449:
2920828693 mov w0, -1
29209
- b .L4499
28694
+ b .L4442
2921028695 .size rk_ftl_vendor_storage_init, .-rk_ftl_vendor_storage_init
2921128696 .align 2
2921228697 .global rk_ftl_vendor_read
2921328698 .type rk_ftl_vendor_read, %function
2921428699 rk_ftl_vendor_read:
29215
- adrp x3, .LANCHOR5+1112
29216
- ldr x4, [x3, #:lo12:.LANCHOR5+1112]
29217
- cbz x4, .L4514
28700
+ adrp x3, .LANCHOR5+552
28701
+ ldr x4, [x3, #:lo12:.LANCHOR5+552]
28702
+ cbz x4, .L4457
2921828703 ldrh w6, [x4, 10]
2921928704 add x5, x4, 16
2922028705 mov w3, 0
29221
-.L4511:
28706
+.L4454:
2922228707 cmp w3, w6
29223
- bcc .L4513
29224
-.L4514:
28708
+ bcc .L4456
28709
+.L4457:
2922528710 mov w0, -1
2922628711 ret
29227
-.L4513:
28712
+.L4456:
2922828713 ldrh w7, [x5], 8
2922928714 cmp w7, w0
29230
- bne .L4512
28715
+ bne .L4455
2923128716 stp x29, x30, [sp, -32]!
2923228717 add x3, x4, w3, uxtw 3
2923328718 mov x0, x1
....@@ -29245,24 +28730,24 @@
2924528730 ldr x19, [sp, 16]
2924628731 ldp x29, x30, [sp], 32
2924728732 ret
29248
-.L4512:
28733
+.L4455:
2924928734 add w3, w3, 1
29250
- b .L4511
28735
+ b .L4454
2925128736 .size rk_ftl_vendor_read, .-rk_ftl_vendor_read
2925228737 .align 2
2925328738 .global rk_ftl_vendor_write
2925428739 .type rk_ftl_vendor_write, %function
2925528740 rk_ftl_vendor_write:
2925628741 stp x29, x30, [sp, -112]!
29257
- adrp x3, .LANCHOR5+1112
28742
+ adrp x3, .LANCHOR5+552
2925828743 add x29, sp, 0
2925928744 stp x19, x20, [sp, 16]
29260
- ldr x19, [x3, #:lo12:.LANCHOR5+1112]
28745
+ ldr x19, [x3, #:lo12:.LANCHOR5+552]
2926128746 stp x21, x22, [sp, 32]
2926228747 stp x23, x24, [sp, 48]
2926328748 stp x25, x26, [sp, 64]
2926428749 stp x27, x28, [sp, 80]
29265
- cbz x19, .L4534
28750
+ cbz x19, .L4477
2926628751 add w4, w2, 63
2926728752 ldrh w3, [x19, 10]
2926828753 ldrh w24, [x19, 8]
....@@ -29271,12 +28756,12 @@
2927128756 and w22, w4, -64
2927228757 add x1, x19, 16
2927328758 mov w20, 0
29274
-.L4521:
28759
+.L4464:
2927528760 cmp w20, w3
29276
- bcc .L4529
28761
+ bcc .L4472
2927728762 ldrh w1, [x19, 14]
2927828763 cmp w22, w1
29279
- bhi .L4534
28764
+ bhi .L4477
2928028765 add x3, x19, w3, uxth 3
2928128766 strh w0, [x3, 16]
2928228767 and w0, w22, 65535
....@@ -29296,11 +28781,11 @@
2929628781 ldrh w0, [x19, 10]
2929728782 add w0, w0, 1
2929828783 strh w0, [x19, 10]
29299
- b .L4536
29300
-.L4529:
28784
+ b .L4479
28785
+.L4472:
2930128786 ldrh w6, [x1], 8
2930228787 cmp w6, w0
29303
- bne .L4522
28788
+ bne .L4465
2930428789 uxtw x23, w20
2930528790 add x5, x19, 1024
2930628791 add x21, x19, x23, lsl 3
....@@ -29308,17 +28793,17 @@
2930828793 add w25, w25, 63
2930928794 and w25, w25, -64
2931028795 cmp w26, w25
29311
- bls .L4523
28796
+ bls .L4466
2931228797 ldrh w0, [x19, 14]
2931328798 cmp w22, w0
29314
- bhi .L4534
28799
+ bhi .L4477
2931528800 add x23, x23, 2
2931628801 ldrh w21, [x21, 18]
2931728802 add x23, x19, x23, lsl 3
2931828803 sub w3, w3, #1
29319
-.L4524:
28804
+.L4467:
2932028805 cmp w20, w3
29321
- bcc .L4525
28806
+ bcc .L4468
2932228807 add x20, x19, w20, uxtw 3
2932328808 and w21, w21, 65535
2932428809 add x0, x5, w21, uxth
....@@ -29335,7 +28820,7 @@
2933528820 sub w0, w0, w4
2933628821 add w25, w0, w25
2933728822 strh w25, [x19, 14]
29338
-.L4536:
28823
+.L4479:
2933928824 ldr w0, [x19, 4]
2934028825 add x1, x19, 61440
2934128826 mov x2, x19
....@@ -29352,7 +28837,7 @@
2935228837 lsl w0, w24, 7
2935328838 bl FlashBootVendorWrite
2935428839 mov w0, 0
29355
-.L4519:
28840
+.L4462:
2935628841 ldp x19, x20, [sp, 16]
2935728842 ldp x21, x22, [sp, 32]
2935828843 ldp x23, x24, [sp, 48]
....@@ -29360,7 +28845,7 @@
2936028845 ldp x27, x28, [sp, 80]
2936128846 ldp x29, x30, [sp], 112
2936228847 ret
29363
-.L4525:
28848
+.L4468:
2936428849 add w20, w20, 1
2936528850 stp w3, w6, [x29, 96]
2936628851 add x0, x19, w20, uxtw 3
....@@ -29382,21 +28867,21 @@
2938228867 add w21, w21, w27
2938328868 ldr x5, [x29, 104]
2938428869 ldp w3, w6, [x29, 96]
29385
- b .L4524
29386
-.L4523:
28870
+ b .L4467
28871
+.L4466:
2938728872 ldrh w0, [x21, 18]
2938828873 uxtw x2, w26
2938928874 mov x1, x28
2939028875 add x0, x5, x0
2939128876 bl memcpy
2939228877 strh w26, [x21, 20]
29393
- b .L4536
29394
-.L4522:
28878
+ b .L4479
28879
+.L4465:
2939528880 add w20, w20, 1
29396
- b .L4521
29397
-.L4534:
28881
+ b .L4464
28882
+.L4477:
2939828883 mov w0, -1
29399
- b .L4519
28884
+ b .L4462
2940028885 .size rk_ftl_vendor_write, .-rk_ftl_vendor_write
2940128886 .align 2
2940228887 .global rk_ftl_vendor_storage_ioctl
....@@ -29410,83 +28895,83 @@
2941028895 str x21, [sp, 32]
2941128896 mov w21, w1
2941228897 bl ftl_malloc
29413
- cbz x0, .L4545
28898
+ cbz x0, .L4488
2941428899 mov w1, 30209
2941528900 mov x19, x0
2941628901 movk w1, 0x4004, lsl 16
2941728902 cmp w21, w1
29418
- beq .L4540
28903
+ beq .L4483
2941928904 add w1, w1, 1
2942028905 cmp w21, w1
29421
- beq .L4541
29422
-.L4551:
28906
+ beq .L4484
28907
+.L4494:
2942328908 mov x20, -14
29424
- b .L4539
29425
-.L4540:
28909
+ b .L4482
28910
+.L4483:
2942628911 mov x2, 8
2942728912 mov x1, x20
2942828913 bl rk_copy_from_user
29429
- cbnz x0, .L4551
28914
+ cbnz x0, .L4494
2943028915 ldr w1, [x19]
2943128916 mov w0, 17745
2943228917 movk w0, 0x5652, lsl 16
2943328918 cmp w1, w0
29434
- beq .L4543
29435
-.L4544:
28919
+ beq .L4486
28920
+.L4487:
2943628921 mov x20, -1
29437
-.L4539:
28922
+.L4482:
2943828923 mov x0, x19
2943928924 bl kfree
29440
-.L4537:
28925
+.L4480:
2944128926 mov x0, x20
2944228927 ldr x21, [sp, 32]
2944328928 ldp x19, x20, [sp, 16]
2944428929 ldp x29, x30, [sp], 48
2944528930 ret
29446
-.L4543:
28931
+.L4486:
2944728932 ldrh w2, [x19, 6]
2944828933 add x1, x19, 8
2944928934 ldrh w0, [x19, 4]
2945028935 bl rk_ftl_vendor_read
2945128936 cmn w0, #1
29452
- beq .L4544
28937
+ beq .L4487
2945328938 strh w0, [x19, 6]
2945428939 and x0, x0, 65535
2945528940 add x2, x0, 8
2945628941 mov x1, x19
2945728942 mov x0, x20
2945828943 bl rk_copy_to_user
29459
- cbnz x0, .L4551
28944
+ cbnz x0, .L4494
2946028945 mov x20, 0
29461
- b .L4539
29462
-.L4541:
28946
+ b .L4482
28947
+.L4484:
2946328948 mov x2, 8
2946428949 mov x1, x20
2946528950 bl rk_copy_from_user
29466
- cbnz x0, .L4551
28951
+ cbnz x0, .L4494
2946728952 ldr w1, [x19]
2946828953 mov w0, 17745
2946928954 movk w0, 0x5652, lsl 16
2947028955 cmp w1, w0
29471
- bne .L4544
28956
+ bne .L4487
2947228957 ldrh w2, [x19, 6]
2947328958 cmp w2, 4087
29474
- bhi .L4544
28959
+ bhi .L4487
2947528960 add w2, w2, 8
2947628961 mov x1, x20
2947728962 sxtw x2, w2
2947828963 mov x0, x19
2947928964 bl rk_copy_from_user
29480
- cbnz x0, .L4551
28965
+ cbnz x0, .L4494
2948128966 ldrh w2, [x19, 6]
2948228967 add x1, x19, 8
2948328968 ldrh w0, [x19, 4]
2948428969 bl rk_ftl_vendor_write
2948528970 sxtw x20, w0
29486
- b .L4539
29487
-.L4545:
28971
+ b .L4482
28972
+.L4488:
2948828973 mov x20, -1
29489
- b .L4537
28974
+ b .L4480
2949028975 .size rk_ftl_vendor_storage_ioctl, .-rk_ftl_vendor_storage_ioctl
2949128976 .global SecureBootUnlockTryCount
2949228977 .global SecureBootCheckOK
....@@ -33454,10 +32939,18 @@
3345432939 idb_last_lba:
3345532940 .zero 4
3345632941 .zero 4
33457
- .type gpDrmKeyInfo, %object
33458
- .size gpDrmKeyInfo, 8
33459
-gpDrmKeyInfo:
32942
+ .type g_idb_buffer, %object
32943
+ .size g_idb_buffer, 8
32944
+g_idb_buffer:
3346032945 .zero 8
32946
+ .type g_vendor, %object
32947
+ .size g_vendor, 8
32948
+g_vendor:
32949
+ .zero 8
32950
+ .type SecureBootUnlockTryCount, %object
32951
+ .size SecureBootUnlockTryCount, 4
32952
+SecureBootUnlockTryCount:
32953
+ .zero 4
3346132954 .type SecureBootCheckOK, %object
3346232955 .size SecureBootCheckOK, 4
3346332956 SecureBootCheckOK:
....@@ -33466,34 +32959,26 @@
3346632959 .size SecureBootEn, 4
3346732960 SecureBootEn:
3346832961 .zero 4
33469
- .type gpBootConfig, %object
33470
- .size gpBootConfig, 8
33471
-gpBootConfig:
32962
+ .zero 4
32963
+ .type gpVendor1Info, %object
32964
+ .size gpVendor1Info, 8
32965
+gpVendor1Info:
32966
+ .zero 8
32967
+ .type gpVendor0Info, %object
32968
+ .size gpVendor0Info, 8
32969
+gpVendor0Info:
3347232970 .zero 8
3347332971 .type gSnSectorData, %object
3347432972 .size gSnSectorData, 512
3347532973 gSnSectorData:
3347632974 .zero 512
33477
- .type SecureBootUnlockTryCount, %object
33478
- .size SecureBootUnlockTryCount, 4
33479
-SecureBootUnlockTryCount:
33480
- .zero 4
33481
- .zero 4
33482
- .type gpVendor0Info, %object
33483
- .size gpVendor0Info, 8
33484
-gpVendor0Info:
32975
+ .type gpDrmKeyInfo, %object
32976
+ .size gpDrmKeyInfo, 8
32977
+gpDrmKeyInfo:
3348532978 .zero 8
33486
- .type gpVendor1Info, %object
33487
- .size gpVendor1Info, 8
33488
-gpVendor1Info:
33489
- .zero 8
33490
- .type g_idb_buffer, %object
33491
- .size g_idb_buffer, 8
33492
-g_idb_buffer:
33493
- .zero 8
33494
- .type g_vendor, %object
33495
- .size g_vendor, 8
33496
-g_vendor:
32979
+ .type gpBootConfig, %object
32980
+ .size gpBootConfig, 8
32981
+gpBootConfig:
3349732982 .zero 8
3349832983 .type ftl_low_format_cur_blk, %object
3349932984 .size ftl_low_format_cur_blk, 2
....@@ -33520,14 +33005,14 @@
3352033005 .section .rodata
3352133006 .align 3
3352233007 .set .LANCHOR1,. + 0
33523
- .type __func__.39517, %object
33524
- .size __func__.39517, 18
33525
-__func__.39517:
33008
+ .type __func__.46344, %object
33009
+ .size __func__.46344, 18
33010
+__func__.46344:
3352633011 .string "_list_remove_node"
3352733012 .zero 6
33528
- .type __func__.39542, %object
33529
- .size __func__.39542, 23
33530
-__func__.39542:
33013
+ .type __func__.46369, %object
33014
+ .size __func__.46369, 23
33015
+__func__.46369:
3353133016 .string "_list_update_data_list"
3353233017 .zero 1
3353333018 .type toshiba_15ref_value, %object
....@@ -33689,19 +33174,19 @@
3368933174 .byte 8
3369033175 .byte 12
3369133176 .byte 112
33692
- .type __func__.20840, %object
33693
- .size __func__.20840, 22
33694
-__func__.20840:
33177
+ .type __func__.26714, %object
33178
+ .size __func__.26714, 22
33179
+__func__.26714:
3369533180 .string "nand_flash_print_info"
3369633181 .zero 2
33697
- .type __func__.20313, %object
33698
- .size __func__.20313, 28
33699
-__func__.20313:
33182
+ .type __func__.26187, %object
33183
+ .size __func__.26187, 28
33184
+__func__.26187:
3370033185 .string "flash_wait_device_ready_raw"
3370133186 .zero 4
33702
- .type __func__.20377, %object
33703
- .size __func__.20377, 22
33704
-__func__.20377:
33187
+ .type __func__.26251, %object
33188
+ .size __func__.26251, 22
33189
+__func__.26251:
3370533190 .string "flash_start_page_read"
3370633191 .zero 2
3370733192 .type toshiba_3D_tlc_value, %object
....@@ -34497,19 +33982,19 @@
3449733982 .byte -12
3449833983 .byte 56
3449933984 .zero 6
34500
- .type __func__.20402, %object
34501
- .size __func__.20402, 23
34502
-__func__.20402:
33985
+ .type __func__.26276, %object
33986
+ .size __func__.26276, 23
33987
+__func__.26276:
3450333988 .string "flash_start_plane_read"
3450433989 .zero 1
34505
- .type __func__.20288, %object
34506
- .size __func__.20288, 26
34507
-__func__.20288:
33990
+ .type __func__.26162, %object
33991
+ .size __func__.26162, 26
33992
+__func__.26162:
3450833993 .string "flash_erase_duplane_block"
3450933994 .zero 6
34510
- .type __func__.20299, %object
34511
- .size __func__.20299, 21
34512
-__func__.20299:
33995
+ .type __func__.26173, %object
33996
+ .size __func__.26173, 21
33997
+__func__.26173:
3451333998 .string "flash_erase_block_en"
3451433999 .zero 3
3451534000 .type random_seed, %object
....@@ -34643,115 +34128,114 @@
3464334128 .hword 28406
3464434129 .hword 17598
3464534130 .hword 28087
34646
- .type __func__.21105, %object
34647
- .size __func__.21105, 13
34648
-__func__.21105:
34131
+ .type __func__.26979, %object
34132
+ .size __func__.26979, 13
34133
+__func__.26979:
3464934134 .string "buf_add_tail"
3465034135 .zero 3
34651
- .type __func__.21118, %object
34652
- .size __func__.21118, 10
34653
-__func__.21118:
34136
+ .type __func__.26992, %object
34137
+ .size __func__.26992, 10
34138
+__func__.26992:
3465434139 .string "buf_alloc"
3465534140 .zero 6
34656
- .type __func__.21132, %object
34657
- .size __func__.21132, 16
34658
-__func__.21132:
34141
+ .type __func__.27006, %object
34142
+ .size __func__.27006, 16
34143
+__func__.27006:
3465934144 .string "buf_remove_free"
3466034145 .type zftl_debug_proc_fops, %object
34661
- .size zftl_debug_proc_fops, 288
34146
+ .size zftl_debug_proc_fops, 96
3466234147 zftl_debug_proc_fops:
34663
- .xword 0
34664
- .xword seq_lseek
34665
- .xword seq_read
34666
- .xword zftl_debug_proc_write
34667
- .zero 72
34668
- .xword zftl_debug_proc_open
3466934148 .zero 8
34149
+ .xword zftl_debug_proc_open
34150
+ .xword seq_read
34151
+ .zero 8
34152
+ .xword zftl_debug_proc_write
34153
+ .xword seq_lseek
3467034154 .xword single_release
34671
- .zero 160
34672
- .type __func__.39050, %object
34673
- .size __func__.39050, 12
34674
-__func__.39050:
34155
+ .zero 40
34156
+ .type __func__.45877, %object
34157
+ .size __func__.45877, 12
34158
+__func__.45877:
3467534159 .string "gc_add_sblk"
3467634160 .zero 4
34677
- .type __func__.39142, %object
34678
- .size __func__.39142, 19
34679
-__func__.39142:
34161
+ .type __func__.45969, %object
34162
+ .size __func__.45969, 19
34163
+__func__.45969:
3468034164 .string "gc_write_completed"
3468134165 .zero 5
34682
- .type __func__.39748, %object
34683
- .size __func__.39748, 18
34684
-__func__.39748:
34166
+ .type __func__.46575, %object
34167
+ .size __func__.46575, 18
34168
+__func__.46575:
3468534169 .string "ftl_alloc_sys_blk"
3468634170 .zero 6
34687
- .type __func__.39758, %object
34688
- .size __func__.39758, 17
34689
-__func__.39758:
34171
+ .type __func__.46585, %object
34172
+ .size __func__.46585, 17
34173
+__func__.46585:
3469034174 .string "ftl_free_sys_blk"
3469134175 .zero 7
34692
- .type __func__.39879, %object
34693
- .size __func__.39879, 23
34694
-__func__.39879:
34176
+ .type __func__.46706, %object
34177
+ .size __func__.46706, 23
34178
+__func__.46706:
3469534179 .string "ftl_get_ppa_from_index"
3469634180 .zero 1
34697
- .type __func__.39919, %object
34698
- .size __func__.39919, 22
34699
-__func__.39919:
34181
+ .type __func__.46746, %object
34182
+ .size __func__.46746, 22
34183
+__func__.46746:
3470034184 .string "ftl_get_new_free_page"
3470134185 .zero 2
34702
- .type __func__.39930, %object
34703
- .size __func__.39930, 22
34704
-__func__.39930:
34186
+ .type __func__.46757, %object
34187
+ .size __func__.46757, 22
34188
+__func__.46757:
3470534189 .string "ftl_ext_alloc_new_blk"
3470634190 .zero 2
34707
- .type __func__.39199, %object
34708
- .size __func__.39199, 16
34709
-__func__.39199:
34191
+ .type __func__.46026, %object
34192
+ .size __func__.46026, 16
34193
+__func__.46026:
3471034194 .string "gc_free_src_blk"
34711
- .type __func__.38793, %object
34712
- .size __func__.38793, 14
34713
-__func__.38793:
34195
+ .type __func__.45620, %object
34196
+ .size __func__.45620, 14
34197
+__func__.45620:
3471434198 .string "ftl_write_buf"
3471534199 .zero 2
34716
- .type __func__.38838, %object
34717
- .size __func__.38838, 18
34718
-__func__.38838:
34200
+ .type __func__.45665, %object
34201
+ .size __func__.45665, 18
34202
+__func__.45665:
3471934203 .string "zftl_add_read_buf"
3472034204 .align 3
3472134205 .set .LANCHOR4,. + 0
34722
- .type __func__.40352, %object
34723
- .size __func__.40352, 21
34724
-__func__.40352:
34206
+ .type __func__.47179, %object
34207
+ .size __func__.47179, 21
34208
+__func__.47179:
3472534209 .string "pm_select_ram_region"
3472634210 .zero 3
34727
- .type __func__.20830, %object
34728
- .size __func__.20830, 20
34729
-__func__.20830:
34211
+ .type __func__.26704, %object
34212
+ .size __func__.26704, 20
34213
+__func__.26704:
3473034214 .string "flash_die_info_init"
3473134215 .zero 4
34732
- .type __func__.38725, %object
34733
- .size __func__.38725, 17
34734
-__func__.38725:
34216
+ .type __func__.45552, %object
34217
+ .size __func__.45552, 17
34218
+__func__.45552:
3473534219 .string "lpa_rebuild_hash"
3473634220 .zero 7
34737
- .type __func__.39617, %object
34738
- .size __func__.39617, 20
34739
-__func__.39617:
34221
+ .type __func__.46444, %object
34222
+ .size __func__.46444, 20
34223
+__func__.46444:
3474034224 .string "zftl_sblk_list_init"
3474134225 .zero 4
34742
- .type __func__.40284, %object
34743
- .size __func__.40284, 13
34744
-__func__.40284:
34226
+ .type __func__.47111, %object
34227
+ .size __func__.47111, 13
34228
+__func__.47111:
3474534229 .string "pm_free_sblk"
3474634230 .zero 3
34747
- .type __func__.21168, %object
34748
- .size __func__.21168, 21
34749
-__func__.21168:
34231
+ .type __func__.27042, %object
34232
+ .size __func__.27042, 21
34233
+__func__.27042:
3475034234 .string "flash_info_data_init"
3475134235 .zero 3
34752
- .type __func__.20926, %object
34753
- .size __func__.20926, 11
34754
-__func__.20926:
34236
+ .type __func__.26800, %object
34237
+ .size __func__.26800, 11
34238
+__func__.26800:
3475534239 .string "nandc_init"
3475634240 .zero 5
3475734241 .type samsung_14nm_slc_rr, %object
....@@ -34891,190 +34375,190 @@
3489134375 .byte 18
3489234376 .byte 9
3489334377 .byte 8
34894
- .type __func__.20211, %object
34895
- .size __func__.20211, 19
34896
-__func__.20211:
34378
+ .type __func__.26085, %object
34379
+ .size __func__.26085, 19
34380
+__func__.26085:
3489734381 .string "flash_read_page_en"
3489834382 .zero 5
34899
- .type __func__.20337, %object
34900
- .size __func__.20337, 26
34901
-__func__.20337:
34383
+ .type __func__.26211, %object
34384
+ .size __func__.26211, 26
34385
+__func__.26211:
3490234386 .string "flash_start_tlc_page_prog"
3490334387 .zero 6
34904
- .type __func__.20348, %object
34905
- .size __func__.20348, 29
34906
-__func__.20348:
34388
+ .type __func__.26222, %object
34389
+ .size __func__.26222, 29
34390
+__func__.26222:
3490734391 .string "flash_start_3d_mlc_page_prog"
3490834392 .zero 3
34909
- .type __func__.20366, %object
34910
- .size __func__.20366, 22
34911
-__func__.20366:
34393
+ .type __func__.26240, %object
34394
+ .size __func__.26240, 22
34395
+__func__.26240:
3491234396 .string "flash_start_page_prog"
3491334397 .zero 2
34914
- .type __func__.20390, %object
34915
- .size __func__.20390, 31
34916
-__func__.20390:
34398
+ .type __func__.26264, %object
34399
+ .size __func__.26264, 31
34400
+__func__.26264:
3491734401 .string "flash_complete_plane_page_read"
3491834402 .zero 1
34919
- .type __func__.20415, %object
34920
- .size __func__.20415, 25
34921
-__func__.20415:
34403
+ .type __func__.26289, %object
34404
+ .size __func__.26289, 25
34405
+__func__.26289:
3492234406 .string "flash_complete_page_read"
3492334407 .zero 7
34924
- .type __func__.40117, %object
34925
- .size __func__.40117, 31
34926
-__func__.40117:
34408
+ .type __func__.46944, %object
34409
+ .size __func__.46944, 31
34410
+__func__.46944:
3492734411 .string "queue_wait_first_req_completed"
3492834412 .zero 1
34929
- .type __func__.40171, %object
34930
- .size __func__.40171, 15
34931
-__func__.40171:
34413
+ .type __func__.46998, %object
34414
+ .size __func__.46998, 15
34415
+__func__.46998:
3493234416 .string "sblk_prog_page"
3493334417 .zero 1
34934
- .type __func__.40198, %object
34935
- .size __func__.40198, 15
34936
-__func__.40198:
34418
+ .type __func__.47025, %object
34419
+ .size __func__.47025, 15
34420
+__func__.47025:
3493734421 .string "sblk_read_page"
3493834422 .zero 1
34939
- .type __func__.39097, %object
34940
- .size __func__.39097, 21
34941
-__func__.39097:
34423
+ .type __func__.45924, %object
34424
+ .size __func__.45924, 21
34425
+__func__.45924:
3494234426 .string "gc_check_data_one_wl"
3494334427 .zero 3
34944
- .type __func__.20272, %object
34945
- .size __func__.20272, 19
34946
-__func__.20272:
34428
+ .type __func__.26146, %object
34429
+ .size __func__.26146, 19
34430
+__func__.26146:
3494734431 .string "flash_prog_page_en"
3494834432 .zero 5
34949
- .type __func__.39994, %object
34950
- .size __func__.39994, 14
34951
-__func__.39994:
34433
+ .type __func__.46821, %object
34434
+ .size __func__.46821, 14
34435
+__func__.46821:
3495234436 .string "ftl_prog_page"
3495334437 .zero 2
34954
- .type __func__.39651, %object
34955
- .size __func__.39651, 15
34956
-__func__.39651:
34438
+ .type __func__.46478, %object
34439
+ .size __func__.46478, 15
34440
+__func__.46478:
3495734441 .string "ftl_info_flush"
3495834442 .zero 1
34959
- .type __func__.39956, %object
34960
- .size __func__.39956, 19
34961
-__func__.39956:
34443
+ .type __func__.46783, %object
34444
+ .size __func__.46783, 19
34445
+__func__.46783:
3496234446 .string "ftl_ext_info_flush"
3496334447 .zero 5
34964
- .type __func__.39968, %object
34965
- .size __func__.39968, 18
34966
-__func__.39968:
34448
+ .type __func__.46795, %object
34449
+ .size __func__.46795, 18
34450
+__func__.46795:
3496734451 .string "ftl_ext_info_init"
3496834452 .zero 6
34969
- .type __func__.39706, %object
34970
- .size __func__.39706, 15
34971
-__func__.39706:
34453
+ .type __func__.46533, %object
34454
+ .size __func__.46533, 15
34455
+__func__.46533:
3497234456 .string "ftl_alloc_sblk"
3497334457 .zero 1
34974
- .type __func__.40324, %object
34975
- .size __func__.40324, 17
34976
-__func__.40324:
34458
+ .type __func__.47151, %object
34459
+ .size __func__.47151, 17
34460
+__func__.47151:
3497734461 .string "pm_alloc_new_blk"
3497834462 .zero 7
34979
- .type __func__.40334, %object
34980
- .size __func__.40334, 14
34981
-__func__.40334:
34463
+ .type __func__.47161, %object
34464
+ .size __func__.47161, 14
34465
+__func__.47161:
3498234466 .string "pm_write_page"
3498334467 .zero 2
34984
- .type __func__.21190, %object
34985
- .size __func__.21190, 17
34986
-__func__.21190:
34468
+ .type __func__.27064, %object
34469
+ .size __func__.27064, 17
34470
+__func__.27064:
3498734471 .string "flash_info_flush"
3498834472 .zero 7
34989
- .type __func__.21153, %object
34990
- .size __func__.21153, 20
34991
-__func__.21153:
34473
+ .type __func__.27027, %object
34474
+ .size __func__.27027, 20
34475
+__func__.27027:
3499234476 .string "flash_info_blk_init"
3499334477 .zero 4
34994
- .type __func__.20885, %object
34995
- .size __func__.20885, 16
34996
-__func__.20885:
34478
+ .type __func__.26759, %object
34479
+ .size __func__.26759, 16
34480
+__func__.26759:
3499734481 .string "nand_flash_init"
34998
- .type __func__.39821, %object
34999
- .size __func__.39821, 16
35000
-__func__.39821:
34482
+ .type __func__.46648, %object
34483
+ .size __func__.46648, 16
34484
+__func__.46648:
3500134485 .string "ftl_sysblk_dump"
35002
- .type __func__.39846, %object
35003
- .size __func__.39846, 23
35004
-__func__.39846:
34486
+ .type __func__.46673, %object
34487
+ .size __func__.46673, 23
34488
+__func__.46673:
3500534489 .string "ftl_open_sblk_recovery"
3500634490 .zero 1
35007
- .type __func__.40268, %object
35008
- .size __func__.40268, 16
35009
-__func__.40268:
34491
+ .type __func__.47095, %object
34492
+ .size __func__.47095, 16
34493
+__func__.47095:
3501034494 .string "load_l2p_region"
35011
- .type __func__.40308, %object
35012
- .size __func__.40308, 6
35013
-__func__.40308:
34495
+ .type __func__.47135, %object
34496
+ .size __func__.47135, 6
34497
+__func__.47135:
3501434498 .string "pm_gc"
3501534499 .zero 2
35016
- .type __func__.39040, %object
35017
- .size __func__.39040, 12
35018
-__func__.39040:
34500
+ .type __func__.45867, %object
34501
+ .size __func__.45867, 12
34502
+__func__.45867:
3501934503 .string "gc_recovery"
3502034504 .zero 4
35021
- .type __func__.39129, %object
35022
- .size __func__.39129, 22
35023
-__func__.39129:
34505
+ .type __func__.45956, %object
34506
+ .size __func__.45956, 22
34507
+__func__.45956:
3502434508 .string "gc_update_l2p_map_new"
3502534509 .zero 2
35026
- .type __func__.39243, %object
35027
- .size __func__.39243, 16
35028
-__func__.39243:
34510
+ .type __func__.46070, %object
34511
+ .size __func__.46070, 16
34512
+__func__.46070:
3502934513 .string "gc_scan_src_blk"
35030
- .type __func__.39304, %object
35031
- .size __func__.39304, 20
35032
-__func__.39304:
34514
+ .type __func__.46131, %object
34515
+ .size __func__.46131, 20
34516
+__func__.46131:
3503334517 .string "gc_scan_static_data"
3503434518 .zero 4
35035
- .type __func__.39367, %object
35036
- .size __func__.39367, 18
35037
-__func__.39367:
34519
+ .type __func__.46194, %object
34520
+ .size __func__.46194, 18
34521
+__func__.46194:
3503834522 .string "gc_block_vpn_scan"
3503934523 .zero 6
35040
- .type __func__.39797, %object
35041
- .size __func__.39797, 14
35042
-__func__.39797:
34524
+ .type __func__.46624, %object
34525
+ .size __func__.46624, 14
34526
+__func__.46624:
3504334527 .string "ftl_sblk_dump"
3504434528 .zero 2
35045
- .type __func__.38871, %object
35046
- .size __func__.38871, 10
35047
-__func__.38871:
34529
+ .type __func__.45698, %object
34530
+ .size __func__.45698, 10
34531
+__func__.45698:
3504834532 .string "zftl_read"
3504934533 .zero 6
35050
- .type __func__.39900, %object
35051
- .size __func__.39900, 19
35052
-__func__.39900:
34534
+ .type __func__.46727, %object
34535
+ .size __func__.46727, 19
34536
+__func__.46727:
3505334537 .string "ftl_update_l2p_map"
3505434538 .zero 5
35055
- .type __func__.38775, %object
35056
- .size __func__.38775, 17
35057
-__func__.38775:
34539
+ .type __func__.45602, %object
34540
+ .size __func__.45602, 17
34541
+__func__.45602:
3505834542 .string "ftl_write_commit"
3505934543 .zero 7
35060
- .type __func__.39172, %object
35061
- .size __func__.39172, 16
35062
-__func__.39172:
34544
+ .type __func__.45999, %object
34545
+ .size __func__.45999, 16
34546
+__func__.45999:
3506334547 .string "gc_do_copy_back"
35064
- .type __func__.39422, %object
35065
- .size __func__.39422, 11
35066
-__func__.39422:
34548
+ .type __func__.46249, %object
34549
+ .size __func__.46249, 11
34550
+__func__.46249:
3506734551 .string "zftl_do_gc"
3506834552 .zero 5
35069
- .type __func__.38903, %object
35070
- .size __func__.38903, 13
35071
-__func__.38903:
34553
+ .type __func__.45730, %object
34554
+ .size __func__.45730, 13
34555
+__func__.45730:
3507234556 .string "_ftl_discard"
3507334557 .section .rodata.str1.1,"aMS",@progbits,1
3507434558 .LC0:
3507534559 .string "\n!!!!! error @ func:%s - line:%d\n"
3507634560 .LC1:
35077
- .string "FTL version: 6.0.24 20210616"
34561
+ .string "FTL version: 6.0.24 20210716"
3507834562 .LC2:
3507934563 .string "%s\n"
3508034564 .LC3:
....@@ -35718,32 +35202,6 @@
3571835202 .LC322:
3571935203 .string "wl_lba %p %x %x %x\n"
3572035204 .LC323:
35721
- .string "RKNAND_GET_DRM_KEY\n"
35722
-.LC324:
35723
- .string "rk_copy_from_user error\n"
35724
-.LC325:
35725
- .string "RKNAND_STORE_DRM_KEY\n"
35726
-.LC326:
35727
- .string "RKNAND_DIASBLE_SECURE_BOOT\n"
35728
-.LC327:
35729
- .string "RKNAND_ENASBLE_SECURE_BOOT\n"
35730
-.LC328:
35731
- .string "RKNAND_GET_SN_SECTOR\n"
35732
-.LC329:
35733
- .string "RKNAND_LOADER_UNLOCK\n"
35734
-.LC330:
35735
- .string "RKNAND_LOADER_STATUS\n"
35736
-.LC331:
35737
- .string "RKNAND_LOADER_LOCK\n"
35738
-.LC332:
35739
- .string "LockKey not match %d\n"
35740
-.LC333:
35741
- .string "RKNAND_GET_VENDOR_SECTOR\n"
35742
-.LC334:
35743
- .string "RKNAND_STORE_VENDOR_SECTOR\n"
35744
-.LC335:
3574535205 .string "return ret = %lx\n"
35746
-.LC336:
35747
- .string "secureBootEn check error\n"
35748
-.LC337:
35206
+.LC324:
3574935207 .string "\0013vendor storage %x,%x,%x\n"