PolarFire Soc demo mpfs-sys-serv-example 分析
参考文档:PolarFire Family System Services User Guide
1、 /* Configuring MPU for spi copy service */
mpu_status = MSS_MPU_configure(MSS_MPU_SCB,
MSS_MPU_PMP_REGION0,
0x1400000000,
0x7FFFFFFFF+1,
MPU_MODE_READ_ACCESS | MPU_MODE_WRITE_ACCESS |
MPU_MODE_EXEC_ACCESS,
MSS_MPU_AM_NAPOT,
0);
2、选择 service mode 为 poll 模式, 非 中断模式
MSS_SYS_select_service_mode(MSS_SYS_SERVICE_POLLING_MODE, mss_sys_service_interrupt_handler);
3、 读取 serial number
status = MSS_SYS_get_serial_number(data_buffer, MSS_SYS_MAILBOX_DATA_OFFSET);
4、读取 认证 相关服务
status = MSS_SYS_get_device_certificate(data_buffer, MSS_SYS_MAILBOX_DATA_OFFSET);
5、 读取 设计相关信息, 当前的 版本 , 回退保护 版本 等信息
status = MSS_SYS_get_design_info(data_buffer, MSS_SYS_MAILBOX_DATA_OFFSET);
6、spi_copy
可以 把 spi 地址中的数据 copye 到 mss 的地址上
7、OTP 生成 和 比对 ,暂时 没去了解
8、Demonstrates terminate debug service
也不知道 干啥的
浙公网安备 33010602011771号