确定芯片系列
新SDK适配:
1、总Makefile,可以从最接近新SDK版本的就版本拷贝过来,以此为基础修改
SDK:修改SDK版本号为新版本号
选型:platform可以查看 ${SDK}/RELDOCS/${SDK}-Device-Matrix.xlsx,找到对应的芯片
有时候看不出来,可以从include/soc/devids.h中确认(这里面最准确)
/* Hurricane4 */
#define BCM56273_DEVICE_ID 0xb273
#define BCM56273_A0_REV_ID 1
#define BCM56273_A1_REV_ID 2
内核:确定自己的内核,核对 ${KERNDIR}
读源代码:
// // src/soc/common/drv.c
SOC_IF_ERROR_RETURN(SOC_FUNCTIONS(unit)->soc_misc_init(unit));
#ifdef BCM_XGS_SUPPORT
if (SOC_IS_XGS(unit)) {
/* Disable accelerated mem clear after misc init */
SOC_MEM_CLEAR_HW_ACC_SET(unit, 0);
}
#endif /* BCM_XGS_SUPPORT */
// 类似于 SOC_FUNCTIONS(unit)->soc_misc_init(unit) 这样调用函数指针,一般最终都调用的是 src/soc/esw 下对应平台的.c文件
// 此处为调用 src/soc/esw/helix5.c => STATIC int _soc_helix5_misc_init(int unit)
ops-switchd : bcm_port_config_get() -----------> sdk: bcm_esw_port_config_get()