1*4882a593Smuzhiyun# RK3588 Release Note 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun## rk3588_bl31_v1.40.elf 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun| Date | File | Build commit | Severity | 6*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 7*4882a593Smuzhiyun| 2023-07-13 | rk3588_bl31_v1.40.elf | dc1125f48 | important | 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun### New 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun1. Add support to reset vop sub mem pd. 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun------ 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun## rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.12.bin 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun| Date | File | Build commit | Severity | 18*4882a593Smuzhiyun| ---------- | :------------------------------------------- | ------------ | --------- | 19*4882a593Smuzhiyun| 2023-07-06 | rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.12.bin | 52218f4949 | important | 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun### New 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun1. Add support print training result and mr value. 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun### Fixed 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun| Index | Severity | Update | Issue description | Issue source | 28*4882a593Smuzhiyun| ----- | --------- | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------ | 29*4882a593Smuzhiyun| 1 | important | Fixed init fail issue that max freq between 1066-1600MHz | Panic in ddrbin when max DDR freq between 1066-1600MHz. | - | 30*4882a593Smuzhiyun| 2 | important | Fixed the issue painc in ddrbin caused by multiple initialization of DDR | When the first SPL firmware failed to load, reloading the second firmware would result in repeated initialization of the DDR. This caused a panic in ddrbin. | - | 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun------ 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun## rk3588_bl31_v1.39.elf 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun| Date | File | Build commit | Severity | 37*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 38*4882a593Smuzhiyun| 2023-06-27 | rk3588_bl31_v1.39.elf | 001b4889e | important | 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun### New 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun1. Change read size to 128 bytes. 43*4882a593Smuzhiyun2. Adjust pvtpll table by otp. 44*4882a593Smuzhiyun3. Modify pvtpll table for rk3588j/m. 45*4882a593Smuzhiyun 46*4882a593Smuzhiyun------ 47*4882a593Smuzhiyun 48*4882a593Smuzhiyun## rk3588_bl31_v1.38.elf 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun| Date | File | Build commit | Severity | 51*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 52*4882a593Smuzhiyun| 2023-05-09 | rk3588_bl31_v1.38.elf | 3389cfdda | important | 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun### Warn 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun1. DDR bin should be update to V1.11 or above. 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun### New 59*4882a593Smuzhiyun 60*4882a593Smuzhiyun1. Update configuration of ddr lp5 mr. 61*4882a593Smuzhiyun2. Improve the stability of hdmirx. 62*4882a593Smuzhiyun3. Support ddr spread spectrum mode. 63*4882a593Smuzhiyun 64*4882a593Smuzhiyun------ 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun## rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.11.bin 67*4882a593Smuzhiyun 68*4882a593Smuzhiyun| Date | File | Build commit | Severity | 69*4882a593Smuzhiyun| ---------- | :------------------------------------------- | ------------ | --------- | 70*4882a593Smuzhiyun| 2023-05-09 | rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.11.bin | f1474cf52f | important | 71*4882a593Smuzhiyun 72*4882a593Smuzhiyun### Warn 73*4882a593Smuzhiyun 74*4882a593Smuzhiyun1. BL31 should be update to V1.38 or above. 75*4882a593Smuzhiyun 76*4882a593Smuzhiyun### New 77*4882a593Smuzhiyun 78*4882a593Smuzhiyun1. Added more print info when initialization fails to help locate soldering issues. 79*4882a593Smuzhiyun2. Optimizing boot time. 80*4882a593Smuzhiyun3. Enable per bank refresh function. 81*4882a593Smuzhiyun4. LPDDR5 4 channels use different write vref values to improve stability. 82*4882a593Smuzhiyun5. First init LPDDR4x. 83*4882a593Smuzhiyun6. LPDDR5 cavref update to 36%. 84*4882a593Smuzhiyun7. Add support spread spectrum mode. 85*4882a593Smuzhiyun 86*4882a593Smuzhiyun------ 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun## rk3588_bl32_v1.13.bin 89*4882a593Smuzhiyun 90*4882a593Smuzhiyun| Date | File | Build commit | Severity | 91*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 92*4882a593Smuzhiyun| 2023-04-19 | rk3588_bl32_v1.13.bin | 7f1ea6d6e | important | 93*4882a593Smuzhiyun 94*4882a593Smuzhiyun### New 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun1. OTP supports burst read to accelerate BL32 startup speed. 97*4882a593Smuzhiyun2. Kernel support read secure boot flag and public key hash. 98*4882a593Smuzhiyun3. Support dynamic shared memory, and the secure and normal world can transfer more larger data. 99*4882a593Smuzhiyun4. BL32 supports pstore, and the kernel can view print info of BL32 through pstore node. 100*4882a593Smuzhiyun 101*4882a593Smuzhiyun------ 102*4882a593Smuzhiyun 103*4882a593Smuzhiyun## rk3588_bl31_v1.37.elf 104*4882a593Smuzhiyun 105*4882a593Smuzhiyun| Date | File | Build commit | Severity | 106*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 107*4882a593Smuzhiyun| 2023-03-08 | rk3588_bl31_v1.37.elf | 9609b9c19 | important | 108*4882a593Smuzhiyun 109*4882a593Smuzhiyun### New 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun1. Save/restore u2phy_grf registers when system suspend/resume. 112*4882a593Smuzhiyun2. Save/restore more ddr related registers when system suspend/resume. 113*4882a593Smuzhiyun3. Compatible with system suspend/resume in QNX. 114*4882a593Smuzhiyun 115*4882a593Smuzhiyun------ 116*4882a593Smuzhiyun 117*4882a593Smuzhiyun## rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.10.bin 118*4882a593Smuzhiyun 119*4882a593Smuzhiyun| Date | File | Build commit | Severity | 120*4882a593Smuzhiyun| ---------- | :------------------------------------------- | ------------ | --------- | 121*4882a593Smuzhiyun| 2022-11-21 | rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.10.bin | 75d050770f | important | 122*4882a593Smuzhiyun 123*4882a593Smuzhiyun### New 124*4882a593Smuzhiyun 125*4882a593Smuzhiyun1. Pageclose can be enable/disable by ddrbin_tool. 126*4882a593Smuzhiyun 127*4882a593Smuzhiyun### Fixed 128*4882a593Smuzhiyun 129*4882a593Smuzhiyun| Index | Severity | Update | Issue description | Issue source | 130*4882a593Smuzhiyun| ----- | --------- | ---------------------------- | ------------------------------------------------------------ | ------------ | 131*4882a593Smuzhiyun| 1 | important | fix total 24GB bug | If the DDR total capacity is 24GB, it will be stuck and unable to enter kernel. | - | 132*4882a593Smuzhiyun| 2 | important | fix LP4/LP4X stability issue | Some LP4/LP4X board need to update read odt to 40ohm to fix stability issue. Note: BL31 should be update to V1.37. | - | 133*4882a593Smuzhiyun| 3 | important | improve LP5 performance | LPDDR5 timing tWTR calculate error lead to slow performance | - | 134*4882a593Smuzhiyun 135*4882a593Smuzhiyun------ 136*4882a593Smuzhiyun 137*4882a593Smuzhiyun## rk3588_bl31_v1.36.elf 138*4882a593Smuzhiyun 139*4882a593Smuzhiyun| Date | File | Build commit | Severity | 140*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 141*4882a593Smuzhiyun| 2023-01-30 | rk3588_bl31_v1.36.elf | 78ee25fe7 | important | 142*4882a593Smuzhiyun 143*4882a593Smuzhiyun### New 144*4882a593Smuzhiyun 145*4882a593Smuzhiyun1. Supports analyze infrared signals of various protocols during system suspend by software, which needs to be used together with mcu. 146*4882a593Smuzhiyun 147*4882a593Smuzhiyun------ 148*4882a593Smuzhiyun 149*4882a593Smuzhiyun## rk3588_bl31_v1.35.elf 150*4882a593Smuzhiyun 151*4882a593Smuzhiyun| Date | File | Build commit | Severity | 152*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 153*4882a593Smuzhiyun| 2023-01-16 | rk3588_bl31_v1.35.elf | bd7bac37a | important | 154*4882a593Smuzhiyun 155*4882a593Smuzhiyun### New 156*4882a593Smuzhiyun 157*4882a593Smuzhiyun1. Improve the stability of hdmirx. 158*4882a593Smuzhiyun 159*4882a593Smuzhiyun------ 160*4882a593Smuzhiyun 161*4882a593Smuzhiyun## rk3588_bl31_v1.34.elf 162*4882a593Smuzhiyun 163*4882a593Smuzhiyun| Date | File | Build commit | Severity | 164*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 165*4882a593Smuzhiyun| 2023-01-10 | rk3588_bl31_v1.34.elf | e63a16361 | important | 166*4882a593Smuzhiyun 167*4882a593Smuzhiyun### New 168*4882a593Smuzhiyun 169*4882a593Smuzhiyun1. Support hptimer to use soft adjust mode. 170*4882a593Smuzhiyun2. Support pvtpll to add length. 171*4882a593Smuzhiyun 172*4882a593Smuzhiyun### Fixed 173*4882a593Smuzhiyun 174*4882a593Smuzhiyun| Index | Severity | Update | Issue description | Issue source | 175*4882a593Smuzhiyun| ----- | --------- | ----------------------------------------------------- | ------------------------------------------------------------ | ------------ | 176*4882a593Smuzhiyun| 1 | important | Avoid pmu mcu to boot accidentally in system suspend. | With pmu mcu's accidental boot, linux kernel's code and data may be overwrite after system resume. | - | 177*4882a593Smuzhiyun 178*4882a593Smuzhiyun------ 179*4882a593Smuzhiyun 180*4882a593Smuzhiyun## rk3588_spl_v1.12.bin 181*4882a593Smuzhiyun 182*4882a593Smuzhiyun| Date | File | Build commit | Severity | 183*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 184*4882a593Smuzhiyun| 2022-12-26 | rk3588_spl_v1.12.bin | 5f53abfa | important | 185*4882a593Smuzhiyun 186*4882a593Smuzhiyun### New 187*4882a593Smuzhiyun 188*4882a593Smuzhiyun1. Support SPL AB. 189*4882a593Smuzhiyun 190*4882a593Smuzhiyun------ 191*4882a593Smuzhiyun 192*4882a593Smuzhiyun## rk3588_bl31_v1.33.elf 193*4882a593Smuzhiyun 194*4882a593Smuzhiyun| Date | File | Build commit | Severity | 195*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 196*4882a593Smuzhiyun| 2022-12-07 | rk3588_bl31_v1.33.elf | 17b41886e | important | 197*4882a593Smuzhiyun 198*4882a593Smuzhiyun### New 199*4882a593Smuzhiyun 200*4882a593Smuzhiyun1. Support rk3588m, rk3588j. 201*4882a593Smuzhiyun 202*4882a593Smuzhiyun------ 203*4882a593Smuzhiyun 204*4882a593Smuzhiyun## rk3588_usbplug_v1.10.bin 205*4882a593Smuzhiyun 206*4882a593Smuzhiyun| Date | File | Build commit | Severity | 207*4882a593Smuzhiyun| ---------- | :----------------------- | ------------ | --------- | 208*4882a593Smuzhiyun| 2022-11-22 | rk3588_usbplug_v1.10.bin | b0e3c43c2 | important | 209*4882a593Smuzhiyun 210*4882a593Smuzhiyun### New 211*4882a593Smuzhiyun 212*4882a593Smuzhiyun1. Improve compatibility. 213*4882a593Smuzhiyun 214*4882a593Smuzhiyun------ 215*4882a593Smuzhiyun 216*4882a593Smuzhiyun## rk3588_bl31_v1.32.elf 217*4882a593Smuzhiyun 218*4882a593Smuzhiyun| Date | File | Build commit | Severity | 219*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 220*4882a593Smuzhiyun| 2022-11-21 | rk3588_bl31_v1.32.elf | e529a2760 | important | 221*4882a593Smuzhiyun 222*4882a593Smuzhiyun### New 223*4882a593Smuzhiyun 224*4882a593Smuzhiyun1. Support bus auto CS. 225*4882a593Smuzhiyun 226*4882a593Smuzhiyun------ 227*4882a593Smuzhiyun 228*4882a593Smuzhiyun## rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.09.bin 229*4882a593Smuzhiyun 230*4882a593Smuzhiyun| Date | File | Build commit | Severity | 231*4882a593Smuzhiyun| ---------- | :------------------------------------------- | ------------ | --------- | 232*4882a593Smuzhiyun| 2022-11-21 | rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.09.bin | a930779e06 | important | 233*4882a593Smuzhiyun 234*4882a593Smuzhiyun### New 235*4882a593Smuzhiyun 236*4882a593Smuzhiyun1. Derate/perbank refresh can be enable/disable by ddrbin_tool. 237*4882a593Smuzhiyun2. Support pstore function. 238*4882a593Smuzhiyun3. Boot FSP configurable by ddrbin_tool. 239*4882a593Smuzhiyun4. Enable LPDDR5 DMC function. 240*4882a593Smuzhiyun5. Support LPDDR5 byte mode DRAM. 241*4882a593Smuzhiyun6. Recycle 256MB memory(overlap with REG space). This function can be disable by ddrbin_tool. 242*4882a593Smuzhiyun 243*4882a593Smuzhiyun### Fixed 244*4882a593Smuzhiyun 245*4882a593Smuzhiyun| Index | Severity | Update | Issue description | Issue source | 246*4882a593Smuzhiyun| ----- | --------- | ---------------------------------------- | ------------------------------------------------------------ | ------------ | 247*4882a593Smuzhiyun| 1 | important | Fix WRTRN Bug | Fix WRTRN bug when ddr freq between 533MHz - 1066MHz | - | 248*4882a593Smuzhiyun| 2 | important | Fix ZQCALIB bug | Increase auto ZQCALIB command period to 470ms | - | 249*4882a593Smuzhiyun| 3 | important | Fix 528M bug | 528MHz undo RDTRN, SW*skew should be clean before clean before switch to 528MHz. | - | 250*4882a593Smuzhiyun| 4 | important | Improve LPDDR5 stability and performance | Fix some LPDDR5 timing like rd2wr,wr2rd and hash config to improve stability and performance. | - | 251*4882a593Smuzhiyun| 5 | important | LP4/LP4x support 32GB cap | LP4/LP4x support 32GB cap | - | 252*4882a593Smuzhiyun 253*4882a593Smuzhiyun------ 254*4882a593Smuzhiyun 255*4882a593Smuzhiyun## rk3588_bl31_v1.31.elf 256*4882a593Smuzhiyun 257*4882a593Smuzhiyun| Date | File | Build commit | Severity | 258*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 259*4882a593Smuzhiyun| 2022-11-09 | rk3588_bl31_v1.31.elf | 91e396185 | important | 260*4882a593Smuzhiyun 261*4882a593Smuzhiyun### New 262*4882a593Smuzhiyun 263*4882a593Smuzhiyun1. Enable RK_ENABLE_A76_L2_FLUSH_TO_L3 function. 264*4882a593Smuzhiyun2. Support amp function. 265*4882a593Smuzhiyun 266*4882a593Smuzhiyun### Fixed 267*4882a593Smuzhiyun 268*4882a593Smuzhiyun| Index | Severity | Update | Issue description | Issue source | 269*4882a593Smuzhiyun| ----- | --------- | ------------------------------------------------------------ | ----------------- | ------------ | 270*4882a593Smuzhiyun| 1 | important | Save/restore some performance setting in system suspend/resume | - | - | 271*4882a593Smuzhiyun 272*4882a593Smuzhiyun------ 273*4882a593Smuzhiyun 274*4882a593Smuzhiyun## rk3588_bl31_v1.30.elf 275*4882a593Smuzhiyun 276*4882a593Smuzhiyun| Date | File | Build commit | Severity | 277*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 278*4882a593Smuzhiyun| 2022-10-12 | rk3588_bl31_v1.30.elf | 1450d21e8 | important | 279*4882a593Smuzhiyun 280*4882a593Smuzhiyun### New 281*4882a593Smuzhiyun 282*4882a593Smuzhiyun1. Support pstore. 283*4882a593Smuzhiyun 284*4882a593Smuzhiyun------ 285*4882a593Smuzhiyun 286*4882a593Smuzhiyun## rk3588_bl31_v1.29.elf 287*4882a593Smuzhiyun 288*4882a593Smuzhiyun| Date | File | Build commit | Severity | 289*4882a593Smuzhiyun| ---------- | :-------------------- | ----------- | --------- | 290*4882a593Smuzhiyun| 2022-09-29 | rk3588_bl31_v1.29.elf | 686b5c48b | important | 291*4882a593Smuzhiyun 292*4882a593Smuzhiyun### New 293*4882a593Smuzhiyun 294*4882a593Smuzhiyun1. Add A55 AT speculative patches. 295*4882a593Smuzhiyun2. Add LPDDR5 DFS patches, support DFS between rows. 296*4882a593Smuzhiyun3. Config FW-DSU region according to the specific DDR channel. 297*4882a593Smuzhiyun 298*4882a593Smuzhiyun### Fixed 299*4882a593Smuzhiyun 300*4882a593Smuzhiyun| Index | Severity | Update | Issue description | Issue source | 301*4882a593Smuzhiyun| ----- | --------- | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------ | 302*4882a593Smuzhiyun| 1 | important | Fix problem about CEC wakeup. | When waiting for CEC wakeup source in system suspend, gpio1/3 irq will wakeup both AP and mcu . | - | 303*4882a593Smuzhiyun| 2 | important | Fix configuration about ddr. | Fix ddr-unstable problem. | - | 304*4882a593Smuzhiyun| 3 | important | Fix problem in system suspend if disable uart. | If loader disable uart, system suspend will panic. | - | 305*4882a593Smuzhiyun 306*4882a593Smuzhiyun------ 307*4882a593Smuzhiyun 308*4882a593Smuzhiyun## rk3588_bl32_v1.12.bin 309*4882a593Smuzhiyun 310*4882a593Smuzhiyun| Date | File | Build commit | Severity | 311*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 312*4882a593Smuzhiyun| 2022-09-20 | rk3588_bl32_v1.12.bin | 4542e1efd | important | 313*4882a593Smuzhiyun 314*4882a593Smuzhiyun### New 315*4882a593Smuzhiyun 316*4882a593Smuzhiyun1. Config FW-DSU region according to the specific DDR channel. 317*4882a593Smuzhiyun 318*4882a593Smuzhiyun------ 319*4882a593Smuzhiyun 320*4882a593Smuzhiyun## rk3588_bl32_v1.11.bin 321*4882a593Smuzhiyun 322*4882a593Smuzhiyun| Date | File | Build commit | Severity | 323*4882a593Smuzhiyun| ---------- | :-------------------- | ------------ | --------- | 324*4882a593Smuzhiyun| 2022-09-15 | rk3588_bl32_v1.11.bin | d84087907 | important | 325*4882a593Smuzhiyun 326*4882a593Smuzhiyun### Fixed 327*4882a593Smuzhiyun 328*4882a593Smuzhiyun| Index | Severity | Update | Issue description | Issue source | 329*4882a593Smuzhiyun| ----- | --------- | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------ | 330*4882a593Smuzhiyun| 1 | important | Solve the problem that OPTEE is stuck during startup when printing is closed | User use /rkbin/tools/ddrbin_tool to close printing , then rk_atags will notify OPTEE to disable printing, When OPTEE starts, it will be stuck and unable to enter U-Boot | - | 331*4882a593Smuzhiyun 332*4882a593Smuzhiyun------ 333*4882a593Smuzhiyun 334