1. 简介
    download microcode命令就是主机修改盘片固件的命令,可通过download microcode和download microcode DMA 这两个命令来传输固件。

1.1固件状态
microcode有几种状态:①active microcode:就是目前盘片中正在运行的固件;②updated microcode:是指主机正在下载过程中的固件;③saved microcode:是指updated microcode已经完整下载下来,可用,且存放在nand上面的固件;④deferred microcode:保存的未自动激活的固件。

1.2下载和激活固件的步骤
①下载:主机通过一个或者多个下载命令,将固件传输到盘片上面;
②保存:设备接收到完整的更新的bin数据后(通过校验),如果指定了下载模式,则盘片将更新后的固件数据保存到非易失性存储器中;
③激活:激活的过程就是首次使用已经下载保存好的固件。当成功激活后,deferred microcode将会被删除。

1.3命令模式
DOWNLOAD MICROCODE有以下几种模式
mode01: 目前已弃用
mode03: 通过加上偏移下载后保存; 可整片或分片下载; 立刻激活
mode07:下载后保存; 仅可整片下载; 立刻激活
mode0E:通过加上偏移下载并保存 可整片或分片 不立刻激活
下次上电完成后或者激活命令完成之后,固件正式生效
mode0F: 激活已下载的microcode ; null 立刻激活
如果没有保存deferred microcode,那么该命令将会被aborted

1.4 DOWNLOAD MICROCODE命令input参数

BLOCK COUNT 字段包含应传输的 512 字节数据块的数量。 BLOCK COUNT 字段在 COUNT 字段和 LBA 字段中指定。 BLOCK COUNT 字段仅在 SUBCOMMAND 字段为 03h 或 0Eh 时有效。
BUFFER OFFSET 字段指定该下载命令传输的数据包含的更新FW数据的偏移量。 BUFFER OFFSET 字段仅在 SUBCOMMAND 字段为 03h 或 0Eh 时有效。

1.5命令 normal output
当使用03、0E模式进行分片下载的时候,返回到COUNT字段,见下图
1.6命令error output
如果设备不接受部分或全部微码数据,设备将返回命令中止。 如果子命令代码不是受支持的值,设备应返回命令中止。

1.7 DOWNLOAD MICROCODE DMA命令input参数
DOWNLOAD MICROCODE DMA的normal output和error output和DOWNLOAD MICROCODE命令的一致。

ATA学习记录(1)download microcode相关推荐

  1. add函数 pytorch_Pytorch学习记录-Pytorch可视化使用tensorboardX

    Pytorch学习记录-Pytorch可视化使用tensorboardX 在很早很早以前(至少一个半月),我做过几节关于tensorboard的学习记录. https://www.jianshu.co ...

  2. Django学习记录-1

    2019独角兽企业重金招聘Python工程师标准>>> 作为Django的初学者,记录下我的学习历程,加深一下记忆(工作中用java,所以很容易忘记),如果有写的不对的地方,还望大家 ...

  3. Git学习记录 力做全网最强入门教程

    目录 Git学习记录 力做全网最强入门教程 什么是GitHub? 什么是Git? Git的配置 Git的安装(只介绍windos操作系统下) Git的配置 至此我们的入门教程到此结束,更新中级教程要等 ...

  4. Matlab学习记录 1

    文章目录 Matlab学习记录 使用帮助文档 Matlab读取CSV文件 MATLAB查看变量的类型 Matlab 提取矩阵 某一行 或者 某一列 的方法 mic的计算 矩阵下标从1开始 矩阵转置 获 ...

  5. django实现证件照换底色后端和小程序(第三周学习记录)

    第三周学习记录 继续上周的django后台搭建,经过讨论选择不使用mysql数据库存储用户上传证件照信息,直接通过base64转码的形式在后台处理并返回前端直接通过数据流预览并实现图片下载 一.后端获 ...

  6. docker 学习记录1

    一. 1. Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到 ...

  7. UE4 学习记录八 给场景中添加背景音乐和动画音效,运动加速效果

    这只是用来记录我学习UE4过程的,可能帮不到你,先说声抱歉.为了防止误导他人,请勿转载,请勿转载,请勿转载. 本文的主题是给场景中添加背景音乐和动画的音效.总章目录(https://blog.csdn ...

  8. github学习记录

    github学习记录 引言 1.安装及初始化git 2.新建仓库 3.clone仓库 4.已存在仓库 5.从github上下载部分文件 5.打标签 6.常见问题 7.合并分支 8.commit 格式 ...

  9. VQA任务学习记录1(附数据使用代码记录)

    0.前言 最近需要学习处理VQA任务特此记录,这个主要是对论文bottom-up and top-down()和bilinear attention network()中的代码部分的学习记录,目前也并 ...

最新文章

  1. 织梦缩略图php,dedecms怎么实现列表页缩略图随机调用
  2. Android入门:Activity四种启动模式
  3. Good Luck!_JAVA
  4. python路径怎么找windows_如何查看 windows 中 Python安装路径
  5. SSISDB1:使用SSISDB管理Package
  6. SpringData JPA整理
  7. Solana 海湾流(Gulf Stream)海平面(Sealevel)区别
  8. html在线预览显示pdf文件,pdf.js插件
  9. 如何记忆 Spring Bean 的生命周期
  10. React的调和过程(Reconcilliation)
  11. 车牌检测STN:Spatial Transformer Networks
  12. 虚拟机中Deepin v20 配置共享文件夹及修改Linux系统环境PATH
  13. 2020李宏毅学习笔记——8. Convolution Netural Network
  14. iOS基础——UI控件之UIAlertController、UINavigationController、Segue、SVProgressHUD
  15. 20考研数一137分考研数学经验分享
  16. 数学:(一直很浮躁)
  17. SSH登陆,用XShell
  18. 时间序列预测之移动平均法(MA)
  19. android SENSOR_ACCELEROMETER 三轴加速度传感器
  20. C#FFmpeg视频采集与推送RTMP服务器代码思路整理

热门文章

  1. JVM成神之路-Java垃圾回收
  2. POJ ZOJ题目分类
  3. 用计算机弹了,如何用计算器弹奏流行歌曲(图文教学),你需要学习了
  4. SE (Squeeze Excitation)模块
  5. 计算机考研408每日一题 day37
  6. Arduino UNO + 74HC595联级+数码管实现000-999循环计数显示+ Proteus仿真
  7. 使用正则表达式 匹配 HTML 标签内的内容
  8. 《千与千寻》高清下载
  9. 关于决策树可视化各项展示数据的解读(泰坦尼克号预测生还案例Titanic)
  10. Android屏幕适配概论: