ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Marvell88Q5152交换机开发(2)-配置修改和集成

Marvell88Q5152交换机开发(2)-配置修改和集成 配置工具Marvell官方提供了switch的网络功能配置工具AutomotiveSwitchV4.exe。这个GUI工具可以静态配置switch的ARL表vlan等功能同时也集成了寄存器操作的拓展接口基本可以完成绝大部分的静态配置。同时这个工具也支持配置文件打包成bin文件和在线运行功能。配置工具依赖三份xml文件tool.xmlAutomotiveSwitchV4配置工具相关联的文件在软件包里面会直接提供。board_config_0xb52_0x9101.xml88Q5152芯片相关联的文件芯片信息productid芯片名称端口数量等固件能力固件版本信息 ptp配置心跳配置可配置的寄存器信息。可以从芯片获取也可以使用发版工具默认的文件switch_test.xml: 文件名称自定义里面保存我们的网络的配置参数。描述switch的各个模块的配置过程执行数据用户可以直接修改xml文件xml文件信息更全。本质上它是一个cpu执行配置的命令描述文件每个条目会调用固件特定的接口根据参数去修改switch的配置执行顺序根据条目的entity_order_no值顺序执行。工具使用说明一般情况下配置软件包下会有三个文件如果没有board_config_0xb52_0x9101可以先找供应商要一个。注意文件路径不要有中文1.双击工具选择offline mode在弹出框选择board_config_0xb52_0x9101文件2.选择对应需要配置的模块然后add配置。注意左边的单选框一定要勾上不然配置无效3.导出bin文件将配置转化为bin文件。同时也有Activate Configuration和Delete Configuration from flash memory这样的指令调试过程会用一般开发用不到这些。创建bin文件命令行指令\AutomotiveSwitchV4 -switchcfg%1 -productioncfg%2 -targetid%3 (可选 -prodnum0x0B92 ) %1switch config xml文件 %2输出的配置bin文件 %3smi地址 例程将123xml编译成123bin smi地址2 .\AutomotiveSwitchV4 -switchcfg”123.xml” -productioncfg”123.bin” -targetid2 (可选-prodnum0x0B92 )上传启动配置实时运行\AutomotiveSwitchV4 -runtimecfg -switchcfg‘switch配置文件‘ -hostaddr‘pc mac‘ -ethertype0x9101 -deviceaddr’芯片mac‘ (可选 -prodnum0x0B92 )上传启动配置同时保存到flash\AutomotiveSwitchV4 -developmentcfg -switchcfg‘switch配置文件‘ -hostaddr‘pc mac‘ -ethertype0x9101 -deviceaddr’芯片mac‘ (可选 -prodnum0x0B92 )删除flash中的配置.\AutomotiveSwitchV4 -hostaddr‘pc mac‘ -ethertype0x9101 -deviceaddr’芯片mac‘ -eraseactivecfg (可选-prodnum0x0B92 )如何创建board_config_0xb52_0x9101.xml文件初始拿到软件包时在目录下只会有一个可执行和一个tool.xml文件我们首先要创建一个芯片配置xml文件。1.首先通过网线连接上switch的任意一个以太网口vlan和优先级不要使能vlanid0。如果在硬件设计之初所有的port没有active网线时连接不上的可以找供应商获取一个初始配置文件或者用开发板连接到switch芯片。后续流程默认网络连接没有问题2.工具双击打开选择Online Mode然后选择一个与设备连接的网卡3.如果网络连接没有问题会在弹出对话框找到一个设备在info空白处鼠标右击选择Create Board Configuration保存就可以。选择next就进入了switch的配置界面。也可以使用命令行工具创建确保网络连接没有问题命令行.\AutomotiveSwitchV4 –createboardcfg自定义名称 -hostaddrhost mac -ethertype0x9101 -deviceaddr01:50:43:00:00:03记录在Unsecure data区 (可选-prodnum0x0B92 )如何创建switch_test.xml文件当配置完对应的模块之后我们需要将配置的文件保存选择文件保存就可以switch configuration level选择level1就可以集成工具集成原理集成switch配置之前首先我们需要了解一件事情marvell的固件是闭源的每次我们修改配置是通过patch的方式将配置的指令保存到固定的地址空间。switch的固件运行时会到配置空间读取配置指令运行实现交换机的配置。固件分区分区块功能Master Boot Records(MBRs1.不支持修改除了同时写入;2.Die0是芯片0Die1是芯片1对于5152的Die0 内容 Die1内容5192两个区域内容不同Unsecure data存放预设MAC address详细说明查看《Unsecure data区说明》TIMTrusted Image Module用于Trusted boot。unsecured mode:仅仅使用TIM0secure mode必须使用TIM0和TIM1TIM 0 包括 Key Manifest block 和 Load TIM block被Key Authentication (KAK)保护。 TIM 1 包括 firmware 和configuration image information 被Customer Signing Key (CSK)保护. CSK IDs从 1开始 并且 CSK HASH value 被保存在 Key Manifest block.PIE(Primitive Intructions Extensions)用于marvell bootrom的功能拓展1.配置eHSM时存放 embedded Hardware Security Module (eHSM)需要的原始指令存放MACsec 的security artifacts, secure RMU 和 Customer wrap keys 和 data keys2.Secure固件中存放PIE.rom扩展固件Firmware固件configurationSwitch配置Unsecure data区说明40设置的smi地址0如果smi地址是3则对应0x43F3 01RMU的mac地址存储指令02-00-00-00-00-01设置的mac地址注意一个smi地址对应一条记录switch的集成本质就是将配置工具生成的bin文件集成到configuration代码段。从固件分区中可以看到switch的软件在flash中分成了3个部分Primary区运行固件主分区默认主分区运行Secondary区运行固件次分区主分区失败从次分区运行Temporary区固件临时分区刷写pie,配置eHSM以太网刷写时会先存到这个区域然后拷贝到对应的其他分区。MAC地址配置固件中使用的MAC地址的选择过程如图所示如果JTAG禁用且Secure Boot Mode使能则MAC地址必须已经在OTP域eFuse且不可修改Mac地址的修改域是0x4000地址可以看 ”二、总体框架说明-2.固件描述-b.固件分区描述”。如果Secure Boot Mode未使能且在0x4000地址无有效mac地址固件回退默认的mac地址单播02:00:00:00:SMI:00多播01:50:43:00:00:03工具“Flash Image Patch Tool“修改指令.\patch_image.exe -fwimage%1 -aesgen3 -macaddress%2 -devicenum %3%1需要修改的固件名称工具和固件在一个目录下%2需要写入的MAC地址%3SMI address,该地址用法类似每个记录条目的index例程.\patch_image.exe -fwimage“88Q5152_flash.bin” -aesgen3 -macaddress”00:11:22:33:44:06” -devicenum 6删除指令.\patch_image.exe -fwimage%1 -aesgen3 -clearall -devicenum %2%1需要修改的固件名称工具和固件在一个目录下%2SMI address需要删除的配置的index例程.\patch_image.exe -fwimage”88Q5152_flash.bin” -aesgen3 -clearall -devicenum 0集成操作工具create_secure_image_v3.exe指令主分区primary .\create_secure_image_v3.exe -imagefile%1 -partitionoffset0x100000 -partitionsize0x0F0000 -cfgimagefile%2 -padto4 备份分区secondary .\create_secure_image_v3.exe -imagefile%1 -partitionoffset0x010000 -partitionsize0x0F0000 -cfgimagefile%2 -padto4 %1固件文件 %2switch配置bin文件
返回列表