QRB2210 SPI设备在qupv3_se0_SPI上的漏洞问题

码上好不好 2024-09-13 16:11:43

QRB2210 SPI设备在qupv3_se0_SPI上的漏洞问题
我试图使用对下面的设备树所做的修改在QRB2210上启动SPI设备,但在dmesg中遇到以下错误,并且在/dev目录中找不到可用的spidev设备:
/ # dmesg | grep spi
[ 10.610471] scuba-pinctrl 500000.pinctrl: pin-0 (4a80000.spi) status -22
[ 10.627878] spi_geni 4a80000.spi: Error applying setting, reverse things back
[ 10.635143] spi_geni: probe of 4a80000.spi failed with error -22
/ #
您能帮助描述这些错误消息并提供建议,以帮助我们使用qupv3_se0_SPI接口初始化QRB2210 devkit上的SPI设备吗?
以下是我们的DTS:
qupv3_se0_spi: spi@4a80000 {
               compatible = "qcom,spi-geni";
               reg = <0x4a80000 0x4000>;
               #address-cells = <1>;
               #size-cells = <0>;
               reg-names = "se_phys";
               interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>;
               clock-names = "se-clk", "m-ahb", "s-ahb";
               clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>,
                       <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
                       <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
               pinctrl-names = "default", "sleep";
               pinctrl-0 = <&qupv3_se0_spi_active>;
               pinctrl-1 = <&qupv3_se0_spi_sleep>;
               dmas = <&gpi_dma0 0 0 1 64 0>,
                       <&gpi_dma0 1 0 1 64 0>;
               dma-names = "tx", "rx";
               spi-max-frequency = <50000000>;
               qcom,wrapper-core = <&qupv3_0>;
               status = "okay";

spidev@0 {
                       status = "okay";
                       compatible = "qcom,spidev"; // Defined in SPIDEV compatible array by Qualcomm in this kernel
                       reg = <0>;
                       spi-max-frequency = <50000000>;  // SPI clock frequency (50MHz)
                       spi-cpha; // Define this, we are CPHA=1
                       spi-lsb-first; // Define this, we are sending data Least Significant Bit First.
               };
       };

qupv3_se0_spi_pins: qupv3_se0_spi_pins {
                       qupv3_se0_spi_active: qupv3_se0_spi_active {
                               mux {
                                       pins = "gpio0", "gpio1",
                                                       "gpio2", "gpio3";
                                       function = "qup0";
                               };

config {
                                       pins = "gpio0", "gpio1",
                                                       "gpio2", "gpio3";
                                       drive-strength = <8>;
                                       bias-pull-up;
                               };
                       };

qupv3_se0_spi_sleep: qupv3_se0_spi_sleep {
                               mux {
                                       pins = "gpio0", "gpio1",
                                                       "gpio2", "gpio3";
                                       function = "gpio";
                               };

config {
                                       pins = "gpio0", "gpio1",
                                                       "gpio2", "gpio3";
                                       drive-strength = <6>;
                                       bias-disable;
                               };
                       };
               };

...全文
2084 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38498942 2024-09-14
  • 打赏
  • 举报
回复

需要修改device-tree的代码:
apps_proc/src/vendor/qcom/proprietary/devicetree/qcom/scuba.dtsi 中添加

&qupv3_se0_spi {
    status = "ok";
};

需要修改的kernel的代码:
drivers/pinctrl/qcom/pinctrl-scuba.c 改为

static const int scuba_reserved_gpios[] = {
//    0, 1, 2, 3, 14, 15, 16, 17, -1
    14, 15, 16, 17, -1
};
/*
static const struct msm_gpio_wakeirq_map scuba_mpm_map[] = {

内容概要:本文系统研究了谐振式双有源桥(DAB)变换器的无传感模型预测控制(MPC)方法,旨在通过Simulink仿真平台实现无需电流传感器的高性能控制策略,从而提升系统可靠性并降低硬件成本。研究深入分析了串联谐振型DAB变换器的工作原理与数学建模过程,构建了完整的无电流传感MPC控制框架,重点解决了系统状态观测、预测模型构建、控制律设计及稳定性保障等关键问题。文中详细阐述了状态观测器的设计原理,实现了对关键电流状态的精确估计,并结合模型预测控制算法优化动态响应性能,有效应对功率波动与负载变化。通过对闭环系统的仿真验证,充分展示了该方法在动态性能、鲁棒性与控制精度方面的优越表现,为电力电子系统中先进控制策略的应用提供了可复现的技术路径。; 适合人群:具备电力电子技术、自动控制理论及Simulink仿真基础,从事新能源发电、储能系统、电动汽车、直流微网等领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①研究无电流传感器条件下高动态性能DAB变换器的控制方案设计;②掌握模型预测控制与状态观测器在电力变换系统中的集成方法;③通过Simulink仿真复现先进控制策略,支撑高水平科研论文撰写、课题申报或实际工程项目开发。; 阅读建议:建议结合所提供的Simulink仿真模型进行动手实践,重点关注状态观测器与MPC控制器的参数设计与耦合关系,对照文中“完美复现”案例逐步调试,深入理解控制算法的实现细节与性能优化方法,以全面提升理论分析与工程应用能力。
内容概要:本文介绍了基于盛科CTC2118交换芯片及配套CTC21108 PHY套片设计的一款千兆以太网L2层交换产品,具备24个电口和4个光口,专为军工、武警、电力、铁路等高端工业领域打造。产品具有高可靠性、国产化、强加固等特点,支持宽温工作环境(-40℃~85℃/-40℃~70℃),采用强抗震高密度高速连接器,适用于车载、舰载、列车及电力等严苛应用场景。产品可适配加固型1U上架或防水型外壳,并支持根据用户需求进行载板定制或全定制设计。技术参数涵盖主控芯片、端口速率、光纤类型、供电电压及固件在线升级等功能。; 适合人群:从事军工、交通、能源等领域网络设备研发与集成的硬件工程师、系统架构师及技术决策人员;需要国产化、高可靠网络解决方案的行业用户。; 使用场景及目标:①应用于航空、航天、轨道交通等对环境适应性和稳定性要求高的场景;②满足电力、铁路等行业对千兆以太网交换能力及国产化合规性的需求;③作为核心通信模块部署于车载、舰载等振动强烈、温差大的复杂环境中; 阅读建议:重点关注产品的国产化配置、宽温性能与机械加固设计,结合实际项目需求选择合适型号,并利用其可定制特性优化系统集成方案。
内容概要:本文主要介绍了基于Simulink的三相电压型PWM整流器的建模与仿真研究,重点实现了PI双闭环控制结合解耦控制策略,并针对第四象限运行工况(即电动机回馈制动状态)进行了深入分析,其中直流侧电流呈现反向流动特性。通过仿真平台对系统在能量回馈状态下的动态响应、稳态性能及控制精度进行全面验证,展示了电流反向流动时的电压电流波形变化规律,体现了控制策略的有效性与系统运行的稳定性。该研究对于提升电力电子变换器在再生制动、可再生能源并网等应用场景中的能量转换效率和电能质量具有重要意义。; 适合人群:具备电力电子、自动控制理论基础,从事电气工程、新能源变换系统等相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①掌握三相PWM整流器在第四象限的能量回馈机理与运行特性;②理解PI双闭环与解耦控制的设计思路与实现方法;③学习Simulink环境下电力电子系统的建模、仿真与分析流程;④为实际工程中逆变器、变频器、储能变流器等设备的控制策略开发提供参考。; 阅读建议:建议结合电力电子技术、现代控制理论相关教材进行系统学习,重点关注坐标变换(如abc/dq变换)、控制器参数整定及仿真模型搭建细节,动手复现仿真模型以加深对控制逻辑与系统动态行为的理解。

7,646

社区成员

发帖
与我相关
我的任务
社区描述
本论坛以AI、WoS 、XR、IoT、Auto、生成式AI等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
人工智能物联网机器学习 技术论坛(原bbs) 北京·东城区
社区管理员
  • csdnsqst0050
  • chipseeker
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧