微知-Mellanox网卡如何查看flash分区?使用的flash厂商?如何读取固定地址内容?flint -d 06:00.0 hw query,flint -d 06:00.0 v)

背景

flint是Mellanox网卡的flash管理软件,全称就是flash interface。本文主要介绍与他相关的2个查看全局flash信息的功能。尤其是查看类似flash分区,可以看到平时比如mlxconfig mstdump等这些信息采集的源头。

命令

# 查看flash大小等信息
flint -d 06:00.0 hw query

# 检验flash版本等信息,可以看到image烧录到flash的情况和分区
flint -d 06:00.0 v

# 读取某个flash 指定起始地址和size
flint -d 6:00.0 rb 0x01f70000 0x000200 1.log

命令说明:
在这里插入图片描述

在这里插入图片描述

部分信息

  • 可以通过hw query看到大小是0x2000000,也就是32M
  • 可以通过v的verify看到地址空间从/0x00000000 到 0x01ffffff
  • 部分关键分区
    • /0x00001000-0x00004b8f (0x003b90)/ (BOOT2) - OK
    • /0x00633780-0x0063427f (0x000b00)/ (FW_MAIN_CFG) - OK FW主要配置,估计mlxconfig配置的信息就是存储在这里的
    • /0x00634280-0x006347bf (0x000540)/ (FW_BOOT_CFG) - OK FW启动配置
    • /0x00635a00-0x00635fff (0x000600)/ (HW_BOOT_CFG) - OK 硬件启动配置
    • /0x00719380-0x00719dd7 (0x000a58)/ (DBG_FW_INI) - OK
    • /0x00719e00-0x00719e07 (0x000008)/ (DBG_FW_PARAMS) - OK
    • /0x01f00000-0x01f1ffff (0x020000)/ (FW_NV_LOG) - CRC NV的日志信息,这里估计有很大帮助
    • /0x01f70000-0x01f701ff (0x000200)/ (DEV_INFO) - OK 设备信息

实战数据

[root@one ~]# flint -d 06:00.0 hw query
HW Info:
  HwDevId                 532
  HwRevId                 0x1
Flash Info:
  Type                    MX25Lxxx
  TotalSize               0x2000000
  Banks                   0x1
  SectorSize              0x1000
  WriteBlockSize          0x80
  CmdSet                  0x80
  JEDEC_ID                0x1920c2
可以看到是按照4K的sector管理,写入block的大小是 128bits。
管理这里的4K可以在mflash的开源代码看到:
typedef enum
{
   
    FSS_4KB = 0x1000,
    FSS_64KB = 0x10000
} Flash_Sector_Size_t;
https://github.com/Mellanox/mstflint/blob/master/mflash/mflash_types.h


[root@one ~]# flint -d 06:00.0 v

FS4 failsafe image

     /0x00000018-0x0000001f (0x000008)/ (HW_POINTERS) - OK
     /0x00000020-0x00000027 (0x000008)/ (HW_POINTERS) - OK
     /0x00000028-0x0000002f (0x000008)/ (HW_POINTERS) - OK
     /0x00000030-0x00000037 (0x000008)/ (HW_POINTERS) - OK
     /0x00000038-0x0000003f (0x000008)/ (HW_POINTERS) - OK
     /0x00000040-0x00000047 (0x000008)/ (HW_POINTERS) - OK
     /0x00000048-0x0000004f (0x000008)/ (HW_POINTERS) - OK
     /0x00000050-0x00000057 (0x000008)/ (HW_POINTERS) - OK
     /0x00000058-0x0000005f (0x000008)/ (HW_POINTERS) - OK
     /0x00000060-0x00000067 (0x000008)/ (HW_POINTERS) - OK
     /0x00000068-0x0000006f (0x000008)/ (HW_POINTERS) - OK
     /0x00000070-0x00000077 (0x000008)/ (HW_POINTERS) - OK
     /0x00000078-0x0000007f (0x000008)/ (HW_POINTERS) - OK
     /0x00000080-0x00000087 (0x000008)/ (HW_POINTERS) - OK
     /0x00000088-0x0000008f (0x000008)/ (HW_POINTERS) - OK
     /0x00000090-0x00000097 
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值