emmc RPMB, Enhance and GP Update On 4/2/2019 Biyong Sun

Similar documents
P4Dual-915GL_BIOS_CN.p65

P4V88+_BIOS_CN.p65

P4VM800_BIOS_CN.p65

775i65PE_BIOS_CN.p65

09 Linux Linux Linux Linux 009.indd /9/4 下午 12:11:10

Bus Hound 5

ARP ICMP

Abstract arm linux tool-chain root NET-Start! 2

P4i45GL_GV-R50-CN.p65

ebook62-1

Oracle 4

(Load Project) (Save Project) (OffLine Mode) (Help) Intel Hex Motor

AL-M200 Series

ebook140-9

ebook35-14

Tel:

W. Richard Stevens UNIX Sockets API echo Sockets TCP OOB IO C struct C/C++ UNIX fork() select(2)/poll(2)/epoll(4) IO IO CPU 100% libevent UNIX CPU IO

HighPoint产品的FAQ手册

untitled

C H A P T E R 7 Windows Vista Windows Vista Windows Vista FAT16 FAT32 NTFS NTFS New Technology File System NTFS

ebook20-2

S 可编程控制器

迅闪2009帮助手册(xshelp)

untitled

投影片 1

ebook 132-6

ebook140-8

1 o o o CPU o o o o o SQL Server 2005 o CPU o o o o o SQL Server o Microsoft SQL Server 2005

RAID RAID 0 RAID 1 RAID 5 RAID * ( -1)* ( /2)* No Yes Yes Yes A. B. BIOS SATA C. RAID BIOS RAID ( ) D. SATA RAID/AHCI ( ) SATA M.2 SSD ( )

1 WLAN 接 入 配 置 本 文 中 的 AP 指 的 是 LA3616 无 线 网 关 1.1 WLAN 接 入 简 介 WLAN 接 入 为 用 户 提 供 接 入 网 络 的 服 务 无 线 服 务 的 骨 干 网 通 常 使 用 有 线 电 缆 作 为 线 路 连 接 安 置 在 固 定

ICD ICD ICD ICD ICD

Microsoft Word - template.doc

朝陽科技大學八十八學年度招考碩士班簡章目錄

2014年大学生村官考试公共基础知识:社会革命和社会改革

csg(1_29)cs.p65

Microsoft Word - PS2_linux_guide_cn.doc

第4章 系统设置

K7VT2_QIG_v3

快 速 入 门 (Linux) 概 述 文 档 目 的 本 文 档 介 绍 了 如 何 快 速 创 建 Linux 系 统 实 例 远 程 连 接 实 例 部 署 环 境 等 旨 在 引 导 您 一 站 式 完 成 实 例 的 创 建 登 录 和 快 速 环 境 部 署 云 服 务 器 ECS 实

2 2 3 DLight CPU I/O DLight Oracle Solaris (DTrace) C/C++ Solaris DLight DTrace DLight DLight DLight C C++ Fortran CPU I/O DLight AM

KL DSC DEMO 使用说明

IP505SM_manual_cn.doc

ebook15-C

第 一 节 认 识 自 我 的 意 义 一 个 人 只 有 认 识 自 我, 才 能 够 正 确 地 认 识 到 自 己 的 优 劣 势, 找 出 自 己 的 职 业 亮 点, 为 自 己 的 顺 利 求 职 推 波 助 澜 ; 一 个 人 只 有 认 识 自 我, 才 能 在 求 职 中 保 持

EC51/52 GSM /GPRS MODEN

目 录

Serial ATA ( Silicon Image SiI3114)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 5 (4) S A T A... 8 (5) S A T A... 10

Windows RTEMS 1 Danilliu MMI TCP/IP QEMU i386 QEMU ARM POWERPC i386 IPC PC104 uc/os-ii uc/os MMI TCP/IP i386 PORT Linux ecos Linux ecos ecos eco

第1章 QBASIC语言概述

Measurement Studio Expands Your Test and Measurement Programming Power

考 試 日 期 :2016/04/24 教 室 名 稱 :602 電 腦 教 室 考 試 時 間 :09: 二 技 企 管 一 胡 宗 兒 中 文 輸 入 四 技 企 四 甲 林 姿 瑄 中 文 輸 入 二 技 企 管 一

Microsoft Word - linux命令及建议.doc

ch_code_infoaccess

Paratune用户手册

Unix®t Œ fi z.PDF

Ác Åé å Serial ATA ( Sil3132) S A T A (1) SATA (2) BIOS SATA (3)* RAID BIOS RAID (4) SATA (5) SATA (a) S A T A ( S A T A R A I D ) (b) (c) Windows XP

User ID 150 Password - User ID 150 Password Mon- Cam-- Invalid Terminal Mode No User Terminal Mode No User Mon- Cam-- 2

PROFIBUS3.doc

AL-MX200 Series

ebook140-11

( Version 0.4 ) 1

R3105+ ADSL

HP LJ 4000 UG - ZHTW

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生

Gerolor Motors Series Dimensions A,B C T L L G1/2 M8 G1/ A 4 C H4 E

SAPIDO GR-1733 無線寬頻分享器

PTS7_Manual.PDF

T

典型自编教材

Symantec™ Sygate Enterprise Protection 防护代理安装使用指南

HY144-D-SRC 固件升级指南

untitled

untitled

untitled

投影片 1

投影片 1

Microsoft Word - 選擇_無解答2_.doc

Huawei Technologies Co

ebook70-21

1

PowerPoint 演示文稿

ebook35-2

CH01.indd

RAID RAID 0 RAID 1 RAID 5 RAID * (-1)* (/ 2)* No Yes Yes Yes SATA A. B. BIOS SATA C. RAID BIOS RAID ( ) D. RAID/AHCI ( ) S ATA S S D ( ) (

untitled

穨control.PDF

Microsoft Word - Sable User's Manual.doc

Windows XP

Sun Fire V440 Server Administration Guide - zh_TW

相 关 知 识 1 计 算 机 工 作 原 理 1946 年 2 月, 世 界 上 第 一 台 电 子 计 算 机 ENIAC (Electronic Numerical Integrator And Computer, 电 子 数 字 积 分 计 算 机 ) 诞 生 于 美 国 宾 夕 法 尼 亚

DPJJX1.DOC

ebook70-22

TPM BIOS Infineon TPM Smart TPM Infineon TPM Smart TPM TPM Smart TPM TPM Advanced Mode...8

T

スライド 1

untitled

Lexmark Prospect Pro200 Series 快速参考手册

MICROCHIP EVM Board : APP APP001 PICmicro Microchip APP001 40pin PDIP PICmicro Design Tips Character LCM Temperature Sensor Application I/O Pi

Transcription:

emmc RPMB, Enhance and GP Update On 4/2/2019 Biyong Sun

emmc 布局 大小总计 128KB 开始地址 WPG 总的大小 WPG 的大小 默认存储媒介 增强存储媒介

测试环境 HW: i.mx6q SDB SW: L4.1.15_2.0.0

emmc RPMB (Replay Protected Memory Block)

RPMB 的写入 安全密钥 读写控制 随机字节 安全密钥 含有安全密钥的 HMAC 写入控制 写入控制 随机字节 需要检查 含有安全密钥的 HMAC 将要写入的地址 数据 写入控制 需要检查

RPMB read 安全密钥 将要读取的地址 随机字节 安全密钥 含有安全密钥的 HMAC 写入控制 数据 随机字节 需要检查

mmc-utils 中与 PRMB 有关的指令 mmc rpmb write-key <rpmb device> <key file> mmc rpmb write-block <rpmb device> <address> <256 byte data file> <key file> mmc rpmb read-block <rpmb device> <address> <blocks count> <output file> [key file] 请查看 mmc 的帮助以获得更多信息

使用 RPMB 设置密钥 (OTP) 将密钥和错误密钥写入 RPMB 从 RPMB 中读取密钥和错误密钥

设置密钥 (OTP) echo 'Authkeymustbe32byteslength_0000' > keyfile.txt mmc rpmb write-key /dev/mmcblk3rpmb keyfile.txt 注意! 这是只可烧写一次的 ( 不可逆的 ) 需要重启电源

将密钥和错误密钥写入 RPMB echo '256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.' > data.txt echo 'Authkeymustbe32byteslength_0000' > keyfile.txt mmc rpmb write-key /dev/mmcblk3rpmb keyfile.txt echo 'Authkeymustbe32byteslength_1111' > Wrongkeyfile.txt mmc rpmb write-block /dev/mmcblk3rpmb 0 data.txt Wrongkeyfile.txt RPMB operation failed, retcode 0x0002

从 RPMB 中读取密钥和错误密钥 mmc rpmb read-block /dev/mmcblk3rpmb 0 1 out.txt mmc rpmb read-block /dev/mmcblk3rpmb 0 1 out.txt keyfile.txt cat out.txt 256bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.25 6bytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256b ytedatafile.256bytedatafile.256bytedatafile.256bytedatafile.256byt edatafile.256bytedatafile.256bytedatafile.256bytedatafile. mmc rpmb read-block /dev/mmcblk3rpmb 0 1 out.txt Wrongkeyfile.txt RPMB MAC mismatch 使用密钥 / MAC( 消息身份验证代码 ) 时, 请确保数据已认证 不能是通过黑客入侵伪造的数据

Enhanced User Data Area (pseudoslc Mode)

什么是 Enhanced User Data Area 简单而言就是伪造的 SLC 使该区域更加可靠启用后容量会变小 ( 从 MLC 到 SLC) pslc 模式可以提高写入速度

Enable the enhanced user area 检查 MAX_ENH_SIZE_MULT mmc extcsd read /dev/mmcblk3 grep MAX_ENH_SIZE_MULT -A 1 Max Enhanced Area Size [MAX_ENH_SIZE_MULT]: 0x0000ea i.e. 3833856 KiB 启用所有区域以增强命令 : mmc enh_area set <-y -n -c> <start KiB> <length KiB> <device> mmc enh_area set -n 0 3833856 /dev/mmcblk3 在真正使用 -y 之前, 请使用 -n 进行检查 mmc enh_area set -y 0 3833856 /dev/mmcblk3 Enhanced User Data Area Size [ENH_SIZE_MULT]: 0x0000ea i.e. 3833856 KiB Max Enhanced Area Size [MAX_ENH_SIZE_MULT]: 0x0000ea i.e. 3833856 KiB 注意! 这是只可编程一次的 ( 不可逆的 ) 更改需要重启电源

GP (General Purpose Partition)

GP(General Purpose Partition) 高达 4 个 GP 可用于创建物理分区 GP 具有增强属性

创建 GP 指令 mmc gp create <-y -n -c> <length KiB> <partition> <enh_attr> <ext_attr> <device> 检查 MAX_ENH_SIZE_MULT mmc extcsd read /dev/mmcblk3 grep MAX_ENH_SIZE_MULT -A 1 Max Enhanced Area Size [MAX_ENH_SIZE_MULT]: 0x0000ea i.e. 3833856 KiB 创建 2 个 GP 创建 gp2 mmc gp create -n 93888 2 1 0 /dev/mmcblk3 Enhanced GP1 Partition Size [GP_SIZE_MULT_1]: 0x00000b i.e. 90112 KiB Max Enhanced Area Size [MAX_ENH_SIZE_MULT]: 0x0000ea i.e. 3833856 KiB 注意 : 如果并非创建最后一个 gp,-n 仅用来检查和设置 emmc 寄存器 创建 gp1 mmc gp create -y 524288 1 1 0 /dev/mmcblk3 Enhanced GP1 Partition Size [GP_SIZE_MULT_1]: 0x000040 i.e. 524288 KiB Max Enhanced Area Size [MAX_ENH_SIZE_MULT]: 0x0000ea i.e. 3833856 KiB 注意! 这是只可编程一次的 ( 不可逆的 ) 更改需要重启电源

使用 GP ls /dev/mmcblk3* mmcblk3 mmcblk3boot0 mmcblk3boot1 mmcblk3gp0 mmcblk3gp1 mmcblk3rpmb fdisk -l Disk /dev/mmcblk3: 6 GiB, 6476005376 bytes, 12648448 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mmcblk3gp1: 88 MiB, 92274688 bytes, 180224 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mmcblk3gp0: 512 MiB, 536870912 bytes, 1048576 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes 注意 :emmc 消耗大约 2G 来获得增强的 88MiB + 512MiB = 600MiB 总容量从大约 6.6G 增加到大约 8G

使用 GP(Cont.) fdisk /dev/mmcblk3gp0 Command (m for help): p Disk /dev/mmcblk3gp0: 512 MiB, 536870912 bytes, 1048576 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xd0d48a7b Device Boot Start End Sectors Size Id Type /dev/mmcblk3gp0p1 2048 264191 262144 128M c W95 FAT32 (LBA) /dev/mmcblk3gp0p2 264192 1048575 784384 383M 83 Linux mkfs.vfat -F 32 mkfs.ext3 /dev/mmcblk3gp0p1 /dev/mmcblk3gp0p2

Miscellaneous

设备可靠性 mmc write_reliability set <-y -n -c> <partition> <device> Enable write reliability per partition for the <device>. Dry-run only unless -y or -c is passed. Use -c if more partitioning settings are still to come. 注意! 这是只可编程一次的 ( 不可逆的 ) 更改

设置快速启动 mmc bootbus set <boot_mode> <reset_boot_bus_conditions> <boot_bus_width> <device> Set Boot Bus Conditions. <boot_mode> must be "single_backward single_hs dual" <reset_boot_bus_conditions> must be "x1 retain" <boot_bus_width> must be "x1 x4 x8 将总线设置为 8 位 ddr 模式 mmc bootbus set dual retain x8 /dev/mmcblk3

设置快速启动 (Cont.)

原文链接 :https://community.nxp.com/docs/doc-343116 由 Biyong Sun 于 2019-4-12 上传的文件