吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

RK3568驅動指南|第十六篇 SPI-第195章 實踐:移植官方mcp2515驅動

北京迅為電子 ? 2024-07-31 16:17 ? 次閱讀

瑞芯微RK3568芯片是一款定位中高端的通用型SOC,采用22nm制程工藝,搭載一顆四核Cortex-A55處理器和Mali G52 2EE 圖形處理器。RK3568 支持4K 解碼和 1080P 編碼,支持SATA/PCIE/USB3.0 外圍接口。RK3568內置獨立NPU,可用于輕量級人工智能應用。RK3568 支持安卓 11 和 linux 系統,主要面向物聯網網關、NVR 存儲、工控平板、工業檢測、工控盒、卡拉 OK、云終端、車載中控等行業。

第195章 實踐:移植官方mcp2515驅動
在前面的章節中從零編寫了一個mcp2515的驅動程序,旨在對SPI驅動相關的知識進行學習,但實際上mcp2515的驅動程序在內核中已經提供了,在本章節將會講解如何移植官方mcp2515驅動。

195.1 內核和設備樹配置
Linux內核源碼中默認已經有了MCP2515的驅動程序,驅動具體路徑為“linux_sdk/kernel/drivers/net/can/spi/mcp251x.c”,所以只需要在make menuconfig圖形化配置界面選中即可。

> Networking support

> CAN bus subsystem support

> CAN Device Drivers

> CAN SPI interfaces

<*> Microchip MCP251x and MCP25625 SPI CAN controllers

然后在kernel/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi設備樹中添加如下節點:

&spi0 {
status = "okay";
pinctrl-0 = <&spi0m1_cs0 &spi0m1_pins>;
pinctrl-1 = <&spi0m1_cs0 &spi0m1_pins_hs>;

mcp2515: mcp2515@0 {
compatible = "microchip,mcp2515";
reg = <0>;
spi-max-frequency = <10000000>;
interrupt-parent = <&gpio0>;
interrupts = ;
pinctrl-names = "default";
pinctrl-0 = <&mcp2515_int>;
clocks = <&clk8m>;
status = "okay";
};

clk8m: clk8m {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <8000000>;
};
};


然后在pinctrl節點下添加以下內容

mcp2515-gpio{
mcp2515_int:mcp2515-int {
rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
};
};


保存修改配置,然后重新編譯內核鏡像,修改好的設備樹以及編譯好的內核鏡像存放路徑為“iTOP-3568開發板\03_【iTOP-RK3568開發板】指南教程\02_Linux驅動配套資料\04_Linux驅動程序\121_mcp2515_08”。

195.2 運行測試
首先需要確保燒寫的是上一小節修改編譯出來的內核鏡像,系統啟動之后,輸入“ifconfig -a”命令,如下圖所示,可以看到生成的can1設備。

接下來輸入以下命令進行回環測試:

ip link set can1 down

ip link set can1 type can bitrate 250000

ip link set can1 type can loopback on

ip link set up can1

candump can1 -L &

cansend can1 123#1122334455667788

如上圖所示,發送和接收的數據是一樣的,說明回環測試成功!

至此,移植官方MCP2515驅動實驗完成!
————————————————

版權聲明:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。

原文鏈接:https://blog.csdn.net/BeiJingXunWei/article/details/140181160

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • soc
    soc
    +關注

    關注

    38

    文章

    4204

    瀏覽量

    219082
  • SPI
    SPI
    +關注

    關注

    17

    文章

    1721

    瀏覽量

    92116
  • 瑞芯微
    +關注

    關注

    24

    文章

    432

    瀏覽量

    51527
  • RK3568
    +關注

    關注

    4

    文章

    525

    瀏覽量

    5232
收藏 人收藏

    評論

    相關推薦

    迅為RK3568開發板驅動指南Linux中通用SPI設備驅動

    迅為RK3568開發板驅動指南Linux中通用SPI設備驅動
    的頭像 發表于 01-23 11:02 ?1513次閱讀
    迅為<b class='flag-5'>RK3568</b>開發板<b class='flag-5'>驅動</b><b class='flag-5'>指南</b>Linux中通用<b class='flag-5'>SPI</b>設備<b class='flag-5'>驅動</b>

    文檔更新 |迅為 RK3568開發板驅動指南-第十五/十六

    運行測試 194 如何在Linux中使用模擬SPI 194.1 內核和設備樹配置 194.2 運行測試 195
    發表于 07-08 11:04

    文檔更新 | 迅為RK3568驅動指南-第十七篇(串口)

    194 如何在Linux中使用模擬SPI 195
    發表于 09-24 10:42

    迅為iTOP-RK3568開發板驅動開發指南-第十 PWM

    mcp2515驅動編寫:完善write和read函數 193 Linux中通用SPI設備驅動
    發表于 10-29 10:13

    請問RK3399有飛凌mcp2515模塊的驅動么?

    請問RK3399有飛凌mcp2515模塊的驅動么?
    發表于 12-30 06:02

    如何解決擴展CAN芯片MCP2515驅動移植問題?

    擴展芯片,能否提供一下MCP2515驅動設備樹文件,或者移植方案。下面是我們的硬件設計,用的是SPI2,中斷管腳是G20_SPI2_CS1B
    發表于 01-04 07:02

    RK3288上的can bus芯片MCP2515不能正常使用如何解決

    最近在rk3288 android5.1 上去支持can bus 芯片MCP2515, android5.1中內核的版本為3.10.79, 已經自帶了mcp2515驅動;嘗試使用,發
    發表于 08-10 16:22

    基于linux的MCP2515中斷配置問題

    linux下包含了MCP2515驅動驅動源碼里面中斷注冊請問下,這個spi->irq是SPI自己的中斷還是
    發表于 12-03 10:14

    iTOP-RK3568開發板驅動指南第五-中斷

    _字符設備基礎 第三期_并發與競爭 第四期_高級字符設備進階 第五期_中斷 第六期_平臺總線 第七期_設備樹 第八期_設備樹插件 第九期_設備模型 第十期_熱插拔 第十一期_pinctrl子系統 未完待續,持續更新中...嗶哩嗶哩搜索-迅為
    發表于 09-04 10:53

    更新 | 持續開源 迅為RK3568驅動指南第十一篇-pinctrl子系統

    《iTOP-RK3568開發板驅動開發指南》更新,本次更新內容對應的是驅動第十一期_pinctrl子系統-全新升級)視頻,后續資料會不斷更
    發表于 10-18 11:12

    MCP2515數據手冊

    中文版MCP2515數據手冊 SPI轉CAN必備。
    發表于 03-22 14:20 ?40次下載

    RK3568驅動指南驅動基礎進階-進階8 內核運行ko文件總結

    RK3568驅動指南驅動基礎進階-進階8 內核運行ko文件總結
    的頭像 發表于 01-31 14:58 ?1221次閱讀
    <b class='flag-5'>RK3568</b><b class='flag-5'>驅動</b><b class='flag-5'>指南</b>|<b class='flag-5'>驅動</b>基礎進階<b class='flag-5'>篇</b>-進階8 內核運行ko文件總結

    RK3568驅動指南驅動基礎進階-進階5 自定義實現insmod命令實驗

    RK3568驅動指南驅動基礎進階-進階5 自定義實現insmod命令實驗
    的頭像 發表于 02-20 14:10 ?780次閱讀
    <b class='flag-5'>RK3568</b><b class='flag-5'>驅動</b><b class='flag-5'>指南</b>|<b class='flag-5'>驅動</b>基礎進階<b class='flag-5'>篇</b>-進階5 自定義實現insmod命令實驗

    迅為RK3568開發板驅動開發指南-輸入子系統

    迅為RK3568開發板驅動開發指南-輸入子系統
    的頭像 發表于 02-23 15:11 ?994次閱讀
    迅為<b class='flag-5'>RK3568</b>開發板<b class='flag-5'>驅動</b>開發<b class='flag-5'>指南</b>-輸入子系統

    迅為RK3568開發板SPI驅動指南-mcp2515驅動編寫:讀寄存器函數

    迅為RK3568開發板SPI驅動指南-mcp2515驅動編寫:讀寄存器函數
    的頭像 發表于 01-20 14:43 ?313次閱讀
    迅為<b class='flag-5'>RK3568</b>開發板<b class='flag-5'>SPI</b><b class='flag-5'>驅動</b><b class='flag-5'>指南</b>-<b class='flag-5'>mcp2515</b><b class='flag-5'>驅動</b>編寫:讀寄存器函數
    KTV百家乐的玩法技巧和规则| 司法| 银河国际| 百家乐官网总厂在哪里| 盐津县| 神木县| 百家乐官网技巧-百家乐官网开户指定代理网址 | 永利高足球平台| 潼关县| 百家乐官网游戏教程| 百家乐最新心得| 百家乐桌面| 澳门百家乐必胜看| 大发888真人真钱| 京城娱乐城开户| 澳门百家乐官网才能| 做生意风水问题| 百家乐赌博筹码大不大| 威尼斯人娱乐中心老品牌| 皇冠| 嘉荫县| 女优百家乐官网的玩法技巧和规则| 百家乐园鼎丰娱乐城| 易盈娱乐| 金龍百家乐官网的玩法技巧和规则 | 运城百家乐官网蓝盾| 邯郸百家乐园真钱区| 大发888登录下载| 网上真钱麻将游戏| 百家乐官网娱乐城官方网| 游戏百家乐押发| 大发888全球顶级游戏平台| 狮威亚洲娱乐城| 郑州百家乐官网的玩法技巧和规则| 租nongcun房看风水做生意的| 太阳城团购| 百家乐官网德州桌| 百家乐路单显示程序| 大发888官网 游戏| 缅甸百家乐官网网络赌博解谜| 百家乐游戏排行榜|