• EMMC打印cqhci: timeout for tag 10提示分析与解决


            mt2735 5G模块外挂海力士 8G EMMC,启动提示读取数据失败进行分析。 

    启动打印

    EMMC驱动时钟初始化打印:

    1. [ 3.977929] <1>.(1)[1:swapper/0]mtk-msdc 11230000.mmc: Linked as a consumer to regulator.27
    2. [ 3.979343] <1>.(1)[1:swapper/0]mmc0: CQHCI version 5.10
    3. [ 3.981926] <1>.(1)[1:swapper/0]mtk-msdc 11230000.mmc: init hardware done!
    4. [ 3.984383] <1>.(1)[1:swapper/0]mtk-msdc 11230000.mmc: init hardware done!
    5. [ 3.996084] <1>.(1)[1:swapper/0]mtk-msdc 11230000.mmc: host->mclk:0, ios->clock:400000, host->timing:0,ios->timing:0
    6. [ 3.997531] <2>.(2)[1:swapper/0]mtk-msdc 11230000.mmc: sclk: 399999, timing: 0, hz: 400000
    7. [ 4.015348] <2>.(2)[1:swapper/0]mtk-msdc 11240000.mmc: Got CD GPIO
    8. [ 4.017036] <2>.(2)[1:swapper/0]mtk-msdc 11240000.mmc: Linked as a consumer to regulator.33
    9. [ 4.020145] <2>.(2)[1:swapper/0]mtk-msdc 11240000.mmc: init hardware done!
    10. [ 4.035223] <2>.(2)[1:swapper/0]mtk-msdc 11240000.mmc: host->mclk:0, ios->clock:400000, host->timing:0,ios->timing:0
    11. [ 4.036795] <2>.(2)[1:swapper/0]mtk-msdc 11240000.mmc: sclk: 399999, timing: 0, hz: 400000
    12. [ 4.051228] <2>.(2)[2170:kworker/2:2]mtk-msdc 11240000.mmc: host->mclk:400000, ios->clock:0, host->timing:0,ios->timing:0
    13. [ 4.052635] <2>.(2)[2170:kworker/2:2]mtk-msdc 11240000.mmc: set mclk to 0
    14. [ 4.104750] <2>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: host->mclk:400000, ios->clock:400000, host->timing:0,ios->timing:9
    15. [ 4.106295] <2>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: sclk: 399999, timing: 9, hz: 400000
    16. [ 4.107746] <2>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: host->mclk:400000, ios->clock:200000000, host->timing:9,ios->timing:9
    17. [ 4.109256] <2>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: sclk: 191999939, timing: 9, hz: 200000000

    HS200和HS400模式探测打印: HS200和HS400模式都探测成功了。drivers/mmc/host/mediatek/autok.c

    1. [ 4.077168] <0>.(0)[14:kworker/0:1][AUTOK]eMMC HS200 Tune
    2. [ 4.084195] <2>.(0)[14:kworker/0:1][AUTOK]CMD 0 44 OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXXOOOOOOOOOOOOOOOOOO
    3. [ 4.088048] <0>.(0)[14:kworker/0:1][AUTOK]CMD 1 56 OOOOOOOXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    4. [ 4.094483] <0>.(0)[14:kworker/0:1][AUTOK]Analysis Result: 1T = 74
    5. [ 4.099475] <0>.(0)[14:kworker/0:1][AUTOK]dev status 0x00000900
    6. [ 4.113842] <2>.(0)[14:kworker/0:1][AUTOK]DAT 0 39 OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXXXXXXXXOOOOOOOOOOOOOOOOO
    7. [ 4.123932] <0>.(0)[14:kworker/0:1][AUTOK]DAT 1 55 OOXXXXXXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    8. [ 4.125058] <0>.(0)[14:kworker/0:1][AUTOK]Analysis Result: 1T = 74
    9. [ 4.129413] <2>.(0)[14:kworker/0:1][AUTOK]CMD [EDGE:0 CMD_FIFO_EDGE:0 DLY1:7 DLY2:0]
    10. [ 4.139421] <2>.(0)[14:kworker/0:1][AUTOK]DAT [RDAT_EDGE:0 RD_FIFO_EDGE:0 WD_FIFO_EDGE:0]
    11. [ 4.145125] <2>.(0)[14:kworker/0:1][AUTOK]DAT [LATCH_CK:0 DLY1:5 DLY2:0]
    12. [ 4.148244] <2>.(0)[14:kworker/0:1][AUTOK]DS [DLY1:0 DLY2:0 DLY3:0]
    13. [ 4.151185] <2>.(0)[14:kworker/0:1][AUTOK]CLK TX [0]
    14. [ 4.154158] <2>.(0)[14:kworker/0:1][AUTOK]CMD TX [0]
    15. [ 4.154171] <2>.(0)[14:kworker/0:1][AUTOK]DAT TX [D0:0 D1:0 D2:0 D3:0]
    16. [ 4.157110] <2>.(0)[14:kworker/0:1][AUTOK]DAT TX [D4:0 D5:0 D6:0 D7:0]
    17. [ 4.160055] <0>.(0)[14:kworker/0:1][AUTOK][HS200]======Cost:82 ms======
    18. [ 4.187290] <3>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: host->mclk:200000000, ios->clock:200000000, host->timing:9,ios->timing:1
    19. [ 4.188971] <3>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: sclk: 191999939, timing: 1, hz: 200000000
    20. [ 4.193035] <3>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: host->mclk:200000000, ios->clock:52000000, host->timing:1,ios->timing:1
    21. [ 4.194632] <3>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: sclk: 47999984, timing: 1, hz: 52000000
    22. [ 4.198355] <3>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: host->mclk:52000000, ios->clock:52000000, host->timing:1,ios->timing:10
    23. [ 4.200224] <3>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: sclk: 47999984, timing: 10, hz: 52000000
    24. [ 4.203163] <3>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: host->mclk:52000000, ios->clock:200000000, host->timing:10,ios->timing:10
    25. [ 4.205782] <3>.(2)[74:kworker/2:1]mtk-msdc 11230000.mmc: sclk: 191999939, timing: 10, hz: 200000000
    26. [ 4.182371] <2>.(0)[14:kworker/0:1][AUTOK]eMMC HS400 Tune
    27. [ 4.191612] <2>.(0)[14:kworker/0:1][AUTOK]CMD 0 44 OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXXOOOOOOOOOOOOOOOOOO
    28. [ 4.196469] <2>.(0)[14:kworker/0:1][AUTOK]CMD 1 57 OOOOOOXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    29. [ 4.200044] <2>.(0)[14:kworker/0:1][AUTOK]Analysis Result: 1T = 76
    30. [ 4.202067] <2>.(0)[14:kworker/0:1][AUTOK]device status 0x00000900
    31. [ 9.431232] <0>.(0)[14:kworker/0:1][AUTOK]DLY1/2 0 0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    32. [ 9.432691] <0>.(0)[14:kworker/0:1][AUTOK]CMD [EDGE:0 CMD_FIFO_EDGE:0 DLY1:6 DLY2:0]
    33. [ 9.433721] <0>.(0)[14:kworker/0:1][AUTOK]DAT [RDAT_EDGE:0 RD_FIFO_EDGE:0 WD_FIFO_EDGE:0]
    34. [ 9.434782] <0>.(0)[14:kworker/0:1][AUTOK]DAT [LATCH_CK:0 DLY1:0 DLY2:0]
    35. [ 9.435656] <0>.(0)[14:kworker/0:1][AUTOK]DS [DLY1:0 DLY2:0 DLY3:20]
    36. [ 9.436497] <0>.(0)[14:kworker/0:1][AUTOK]CLK TX [0]
    37. [ 9.437161] <0>.(0)[14:kworker/0:1][AUTOK]CMD TX [0]
    38. [ 9.437826] <0>.(0)[14:kworker/0:1][AUTOK]DAT TX [D0:0 D1:0 D2:0 D3:0]
    39. [ 9.438688] <0>.(0)[14:kworker/0:1][AUTOK]DAT TX [D4:0 D5:0 D6:0 D7:0]
    40. [ 9.439571] <0>.(0)[14:kworker/0:1][AUTOK][HS400]======Cost:5251 ms======

    识别EMMC成功,海力士8G容量,但在后面读取分区数据信息报数据错误dat_err =-110,开始复位恢复:

    1. [ 9.463002] <2>.(2)[74:kworker/2:1]mmc0: Command Queue Engine enabled
    2. [ 9.463855] <2>.(2)[74:kworker/2:1]mmc0: new HS400 MMC card at address 0001
    3. [ 9.468233] <2>.(2)[74:kworker/2:1]mmcblk0: mmc0:0001 H8G4a2 7.28 GiB
    4. [ 9.468233] <2>.(2)[74:kworker/2:1]mmcblk0: mmc0:0001 H8G4a2 7.28 GiB
    5. [ 9.470576] <2>.(2)[74:kworker/2:1]mmcblk0boot0: mmc0:0001 H8G4a2 partition 1 4.00 MiB
    6. [ 9.470576] <2>.(2)[74:kworker/2:1]mmcblk0boot0: mmc0:0001 H8G4a2 partition 1 4.00 MiB
    7. [ 9.473075] <2>.(2)[74:kworker/2:1]mmcblk0boot1: mmc0:0001 H8G4a2 partition 2 4.00 MiB
    8. [ 9.473075] <2>.(2)[74:kworker/2:1]mmcblk0boot1: mmc0:0001 H8G4a2 partition 2 4.00 MiB
    9. [ 9.474489] <2>.(2)[74:kworker/2:1]mmcblk0rpmb: mmc0:0001 H8G4a2 partition 3 4.00 MiB, chardev (234:0)
    10. [ 9.474489] <2>.(2)[74:kworker/2:1]mmcblk0rpmb: mmc0:0001 H8G4a2 partition 3 4.00 MiB, chardev (234:0)
    11. [ 10.176763] <0>-(0)[0:swapper/0]mtk-msdc 11230000.mmc: msdc_cmdq_irq: DATA TIMEOUT ERR
    12. [ 10.177837] <0>-(0)[0:swapper/0]mtk-msdc 11230000.mmc: cmd_err = 0, dat_err =-110, intsts = 0x10004108
    13. [ 10.179160] <0>.(0)[14:kworker/0:1]mmc0: running CQE recovery

    打印“mmc0: cqhci: timeout for tag 10”错误提示和寄存器信息,这里超时时间60秒:#define MMC_ERASE_TIMEOUT_MS    (60 * 1000) /* 60 s */

    1. [ 74.716094] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: timeout for tag 10
    2. [ 74.716989] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: ============ CQHCI REGISTER DUMP ===========
    3. [ 74.718161] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Caps: 0x000020b6 | Version: 0x00000510
    4. [ 74.719331] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Config: 0x00001101 | Control: 0x00000000
    5. [ 74.720500] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Int stat: 0x00000000 | Int enab: 0x00000006
    6. [ 74.721670] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Int sig: 0x00000006 | Int Coal: 0x00000000
    7. [ 74.722838] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: TDL base: 0x7f047000 | TDL up32: 0x00000000
    8. [ 74.724006] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Doorbell: 0x00000400 | TCN: 0x00000000
    9. [ 74.725174] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Dev queue: 0x00000000 | Dev Pend: 0x00000400
    10. [ 74.726433] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Task clr: 0x00000000 | SSC1: 0x00001000
    11. [ 74.727606] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: SSC2: 0x00000001 | DCMD rsp: 0x00000000
    12. [ 74.728775] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: RED mask: 0xfdf9a080 | TERRI: 0x00000000
    13. [ 74.729943] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Resp idx: 0x0000000d | Resp arg: 0x00000000
    14. [ 74.731108] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: : ===========================================
    15. [ 74.732379] <2>.(2)[2417:kworker/2:3]mmc0: running CQE recovery

    最后报“print_req_error: I/O error, dev mmcblk0, sector 0”数据读取失败:

    1. [ 136.157599] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: timeout for tag 10
    2. [ 136.164661] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: ============ CQHCI REGISTER DUMP ===========
    3. [ 136.165832] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Caps: 0x000020b6 | Version: 0x00000510
    4. [ 136.167153] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Config: 0x00001101 | Control: 0x00000000
    5. [ 136.168326] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Int stat: 0x00000000 | Int enab: 0x00000006
    6. [ 136.169495] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Int sig: 0x00000006 | Int Coal: 0x00000000
    7. [ 136.170665] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: TDL base: 0x7f047000 | TDL up32: 0x00000000
    8. [ 136.171834] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Doorbell: 0x00000400 | TCN: 0x00000000
    9. [ 136.173003] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Dev queue: 0x00000000 | Dev Pend: 0x00000400
    10. [ 136.174172] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Task clr: 0x00000000 | SSC1: 0x00001000
    11. [ 136.175340] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: SSC2: 0x00000001 | DCMD rsp: 0x00000000
    12. [ 136.176616] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: RED mask: 0xfdf9a080 | TERRI: 0x00000000
    13. [ 136.177788] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: Resp idx: 0x0000000d | Resp arg: 0x00000000
    14. [ 136.178955] <2>.(2)[2230:kworker/2:1H]mmc0: cqhci: : ===========================================
    15. [ 136.180252] <2>.(2)[2417:kworker/2:3]mmc0: running CQE recovery
    16. [ 136.181927] <2>.(2)[2417:kworker/2:3]print_req_error: I/O error, dev mmcblk0, sector 0
    17. [ 136.183029] <2>.(2)[2417:kworker/2:3]Buffer I/O error on dev mmcblk0, logical block 0, async page read
    18. [ 136.891855] <0>-(0)[0:swapper/0]mtk-msdc 11230000.mmc: msdc_cmdq_irq: DATA TIMEOUT ERR
    19. [ 136.892967] <0>-(0)[0:swapper/0]mtk-msdc 11230000.mmc: cmd_err = 0, dat_err =-110, intsts = 0x10004108
    20. [ 136.894396] <0>.(0)[2416:kworker/0:2]mmc0: running CQE recovery
    1. [ 330.716949] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: timeout for tag 12
    2. [ 330.724006] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: ============ CQHCI REGISTER DUMP ===========
    3. [ 330.725177] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: Caps: 0x000020b6 | Version: 0x00000510
    4. [ 330.726430] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: Config: 0x00001101 | Control: 0x00000000
    5. [ 330.727606] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: Int stat: 0x00000000 | Int enab: 0x00000006
    6. [ 330.728776] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: Int sig: 0x00000006 | Int Coal: 0x00000000
    7. [ 330.729945] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: TDL base: 0x7f047000 | TDL up32: 0x00000000
    8. [ 330.731114] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: Doorbell: 0x00001000 | TCN: 0x00000000
    9. [ 330.732282] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: Dev queue: 0x00000000 | Dev Pend: 0x00001000
    10. [ 330.733450] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: Task clr: 0x00000000 | SSC1: 0x00001000
    11. [ 330.734619] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: SSC2: 0x00000001 | DCMD rsp: 0x00000000
    12. [ 330.735785] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: RED mask: 0xfdf9a080 | TERRI: 0x00000000
    13. [ 330.737229] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: Resp idx: 0x0000000d | Resp arg: 0x00000000
    14. [ 330.738408] <3>.(3)[2450:kworker/3:1H]mmc0: cqhci: : ===========================================
    15. [ 330.739688] <3>.(3)[4193:kworker/3:5]mmc0: running CQE recovery

    严重影响了开机速度和时间,查看emmc启动后模式:

    1. root@auto2735evb-ivt-main:~# cat /sys/kernel/debug/mmc0/ios
    2. clock: 200000000 Hz
    3. actual clock: 191999939 Hz
    4. vdd: 18 (3.0 ~ 3.1 V)
    5. bus mode: 2 (push-pull)
    6. chip select: 0 (don't care)
    7. power mode: 2 (on)
    8. bus width: 3 (8 bits)
    9. timing spec: 10 (mmc HS400)
    10. signal voltage: 1 (1.80 V)
    11. driver type: 0 (driver type B)

    问题分析

    检查电路图设计,检查硬件元器件焊接都没有问题,分析EMMC数据手册,5.1版本的EMMC需要接Data Strobe pin引脚来支持HS400模式,而4.5的版本是不需要接这个引脚所以最高只支持到HS200模式;Vcc是器件的电源接3.3V,Vccq是控制部分,决定数据和其他管脚的电平,接1.8V或者3.3V这样就与CPU芯片的管脚进行电平匹配。

     电路设计中,由于沿用之前的4.5版本硬件设计导致没有接Data Strobe pin引脚,所以HS400虽然探测成功,但读取数据失败;这样因为EMMC和CPU驱动都支持5.1版本。

     Data Strobe pin引脚是H5管脚,需要在下一版硬件接上后进行验证。

     问题解决

    只能强制探测到HS200模式,注释探测HS400模式代码:

    1. static int mmc_init_card(struct mmc_host *host, u32 ocr,
    2. struct mmc_card *oldcard)
    3. {
    4. struct mmc_card *card;
    5. int err;
    6. u32 cid[4];
    7. u32 rocr;
    8. WARN_ON(!host->claimed);
    9. ......
    10. if (mmc_card_hs200(card)) {
    11. err = mmc_hs200_tuning(card);
    12. if (err)
    13. goto free_card;
    14. // err = mmc_select_hs400(card);
    15. // if (err)
    16. // goto free_card;
    17. } else if (!mmc_card_hs400es(card)) {
    18. /* Select the desired bus width optionally */
    19. err = mmc_select_bus_width(card);
    20. if (err > 0 && mmc_card_hs(card)) {
    21. err = mmc_select_hs_ddr(card);
    22. if (err)
    23. goto free_card;
    24. }
    25. }
    1. [ 4.067441] <3>.(3)[68:kworker/3:1]mtk-msdc 11230000.mmc: host->mclk:400000, ios->clock:400000, host->timing:0,ios->timing:9
    2. [ 4.068901] <3>.(3)[68:kworker/3:1]mtk-msdc 11230000.mmc: sclk: 399999, timing: 9, hz: 400000
    3. [ 4.070330] <3>.(3)[68:kworker/3:1]mtk-msdc 11230000.mmc: host->mclk:400000, ios->clock:200000000, host->timing:9,ios->timing:9
    4. [ 4.071903] <3>.(3)[68:kworker/3:1]mtk-msdc 11230000.mmc: sclk: 191999939, timing: 9, hz: 200000000
    5. [ 4.130445] <3>.(3)[68:kworker/3:1]mmc0: Command Queue Engine enabled
    6. [ 4.131595] <3>.(3)[68:kworker/3:1]mmc0: new HS200 MMC card at address 0001
    7. [ 4.145960] <3>.(3)[68:kworker/3:1]mmcblk0: mmc0:0001 H8G4a2 7.28 GiB
    8. [ 4.148318] <3>.(3)[68:kworker/3:1]mmcblk0boot0: mmc0:0001 H8G4a2 partition 1 4.00 MiB
    9. [ 4.150826] <3>.(3)[68:kworker/3:1]mmcblk0boot1: mmc0:0001 H8G4a2 partition 2 4.00 MiB
    10. [ 4.152472] <3>.(3)[68:kworker/3:1]mmcblk0rpmb: mmc0:0001 H8G4a2 partition 3 4.00 MiB, chardev (234:0)
    11. [ 4.160306] <3>.(3)[68:kworker/3:1] mmcblk0: p1
    12. [ 4.168629] <3>.(3)[68:kworker/3:1]BOOTPROF: 4168.624624:probe: probe=mmc_bus_probe drv=mmcblk(mmc_driver) 34.474692ms
    1. root@auto2735evb-ivt-main:~# cat /sys/kernel/debug/mmc0/ios
    2. clock: 200000000 Hz
    3. actual clock: 191999939 Hz
    4. vdd: 18 (3.0 ~ 3.1 V)
    5. bus mode: 2 (push-pull)
    6. chip select: 0 (don't care)
    7. power mode: 2 (on)
    8. bus width: 3 (8 bits)
    9. timing spec: 9 (mmc HS200)
    10. signal voltage: 1 (1.80 V)
    11. driver type: 0 (driver type B)
    1. root@auto2735evb-ivt-main:~# ls /dev/mmcblk0* -l
    2. brw-rw---- 1 root disk 179, 0 Apr 2 03:55 /dev/mmcblk0
    3. brw-rw---- 1 root disk 179, 8 Apr 2 03:55 /dev/mmcblk0boot0
    4. brw-rw---- 1 root disk 179, 16 Apr 2 03:55 /dev/mmcblk0boot1
    5. brw-rw---- 1 root disk 179, 1 Apr 2 03:55 /dev/mmcblk0p1
    6. crw------- 1 root root 234, 0 Apr 2 03:55 /dev/mmcblk0rpmb
    1. Disk /dev/mmcblk0: 7.3 GiB, 7818182656 bytes, 15269888 sectors
    2. Units: sectors of 1 * 512 = 512 bytes
    3. Sector size (logical/physical): 512 bytes / 512 bytes
    4. I/O size (minimum/optimal): 512 bytes / 512 bytes
    5. Disklabel type: dos
    6. Disk identifier: 0xd9379130
    7. Device Boot Start End Sectors Size Id Type
    8. /dev/mmcblk0p1 2048 15269887 15267840 7.3G 83 Linux

    启动后使用fdisk工具进行分区和读写数据都正常了。

  • 相关阅读:
    java毕业生设计中国历史网站计算机源码+系统+mysql+调试部署+lw
    string类基本使用
    Jenkins持续集成-安装和环境配置
    列表总结
    搭建环境遇到的坑
    5. 文档的字段映射
    【21天Python进阶学习挑战赛】[day4]json标准库大总结
    WebGIS外包开发流程
    2023年亚太杯数学建模亚太赛B题思路解析+代码+论文
    Vue中使用el-upload+XLSX实现解析excel文件为json数据
  • 原文地址:https://blog.csdn.net/TSZ0000/article/details/125619571