完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
您好,我正在尝试使用在 Linux 下工作的 A7 内核中的 M4 内核。
我从 openSTlinux 发行版开始,它运行良好(我可以使用 rproc 将固件上传到 M4),但由于某些原因,我需要制作一个非常小的发行版(小于 16 mb)。为此,我开始使用 buildroot 构建系统,我将其配置为使用 linux 内核 (我试过使用 5.10 和 5.4 分支) 我尝试使用 openstlinux (/proc/config.gz) 中的原始 .config 来构建我自己的内核,它构建得很好。但是当系统启动时,我收到了一条令人遗憾的消息: [1.667275]STM32-rproc 10000000.m4:错误-EINVAL:无法重置单片机 [1.674148]remoteproc remoteproc0:释放m4 [ 1.678863] stm32-rproc: 10000000.m4 探测失败,错误为 -22 一些调查让我找到了文件 drivers/reset/core.c 和函数 static int of_reset_simple_xlate(struct reset_controller_dev *rcdev, const struct of_phandle_args *reset_spec) 我打印了一些变量: reset_spec->args_count = 1 reset_spec->args[0] = 11 rcdev->nr_resets = 11 reset_spec->np->full_name = 协议@16 好的,它看起来类似于我在其中找到定义的 stm32mp151.dtsi 固件{ scmi0: scmi0 { compatible = "arm,scmi-smc"; #address-cells = <1>; #size-cells = <0>; 手臂,smc-id = <0x82002000>; shmem = <&scmi0_shm>; scmi0_clk: 协议@14 { reg = <0x14>; #clock-cells = <1>; }; scmi0_reset:协议@16 { reg = <0x16>; #reset-cells = <1>; }; }; 正如你所记得的: reset_spec->args[0] = 11 这是 #define RST_SCMI0_MCU_HOLD_BOOT 11来自文件 include/dt-bindings/reset/stm32mp1-resets.h 但由于某些原因,过程发现功能(我不确定术语)“hold_boot”在一条线上废墟 如果 (reset_spec->args[0] >= rcdev->nr_resets) 返回-EINVAL; 问题是:为什么?如何使其正常工作? |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2568 浏览 1 评论
3191 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1761 浏览 1 评论
3586 浏览 6 评论
5962 浏览 21 评论
920浏览 4评论
1296浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
560浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1284浏览 3评论
1334浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-3 12:22 , Processed in 1.140442 second(s), Total 76, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号