hisi3559AV100开发之系统移植

本文介绍了在Ubuntu 18.04环境下,针对Hi3559AV100平台的系统移植过程,包括uboot移植中DDR配置、网络设置,以及kernel移植中对KSZ9031RNXphy芯片的定制。重点涉及uboot的配置文件修改、DDR寻址调整、不同GMAC PHY芯片的网络代码调整和kernel中phy芯片参数配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

hisi3559AV100开发之系统移植

1、概述

开发环境 :ubuntu18.04,
hisi开发包版本《Hi3559AV100R001C02SPC020;
开发板型号为"EVM3559AV_A2"。

2、hisi平台uboot移植

1、适用于hisi3559平台的uboot生成需要两个步骤:a、生成uboot,make -j4;b、根据hisi脚本配置相关硬件寄存器。参考服务器代码

Hi3559AV100_SDK_V2.0.2.0/osdrv/tools/pc/uboot_tools/make.sh

其中Hi3559AV100-DMEB_8L_T-DDR4_2664M_2GB_16bitx4-A73_1608M.xlsm为配置文件
2、DDR配置:修改配置文件.xlsm,此处只对ddrc进行了配置,修改了行的寻址bit位宽

DMC1_CFG_RNKVOL 0x9060 0x542

具体对于DDR的配置请参考DDR相关内存说明。
3、网络配置:针对不同的gmac_phy芯片,需要对代码修改:a、修改phy_addr;b、修正延时。uboot中海思平台提供了相关的网络代码

u-boot-2016.11/drivers/net/higmacv300\higmac.c

中添加相关代码,包括 FLP延迟和CLK_TIMING延迟;

u-boot-2016.11/include/common.h

打开DEBUG ;
4、默认模式为RGMII,如适配只支持RMII 或MII的phy芯片,更改include/configs/hi3559av100.h中CONFIG_HIGMAC_PHY0_INTERFACE_MODE的值适配不同模式。
5、可在hi3559av100.h中添加 CONFIG_ETHADDR、CONFIG_IPADDR等相关默认。

3、kernel移植

hisi提供的内核中不支持KSZ9031RNX phy芯片。需根据实际情况配置网络phy芯片;
1、配置phy_addr:通过设备树配置,具体路劲

linux-4.9.y_multi-core/arch/arm64/boot/dts/hisilicon/hi3559av100-demb.dts

中&mdio;
2、phy修复时序:相关代码

linux-4.9.y_multi-core/drivers/net/ethernet/hisilicon/higmac

中phy_register_fixups函数下添加 修正函数,进行CLK_TIMING和FLP修正;
PHY_ID通过u-boot下mii命令获取获取。
如:

mii dump 1 2
     (001c)                 -- PHY ID 1 register --
mii dump 1 3
     (c916)                 -- PHY ID 2 register --
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值