那曲檬骨新材料有限公司

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

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

3天內(nèi)不再提示

你咋知道怎么在IP的kernel module里設(shè)置并使用IP interrupt嗎

電子工程師 ? 來源:XILINX 產(chǎn)品應(yīng)用 ? 作者:Davis Zhang ? 2021-05-18 11:48 ? 次閱讀

有時我們需要為官方 IP 或者自己創(chuàng)建的 IP 生成 kernel module,然后在 linux kernel space 里使用 kernel module 來控制這個 IP。如果要使用 IP 中斷,我們需要在 kernel module 代碼里獲取設(shè)備中斷并建立中斷服務(wù)程序。

在老版本 petalinux,我們可以在 kernelmodule 里直接指定 IP 中斷的實際物理中斷號,但是新版本內(nèi)核里我們需要在 kernel module 里獲取 IP 的虛擬中斷號。可以在 kernelmodule 代碼里使用 request_irq 函數(shù)來獲取中斷并指定中斷服務(wù)程序。

附件是為 axigpio IP 寫的一個 kernel module,可以作為參考例子:

首先需要生成一個基于 MPSoC 芯片的 vivado 工程,

在 block design 里加入 MPSoC processing core 和 axi gpiocore,

連接 axi gpio 的中斷信號到 MPSoC processing core 的 PL-》PS 中斷端口

最后生成 bitstream 導出 hdf 或者 xsa,生成 petalinux 工程,

在 petalinux 工程里用下面命令生成并使能名字叫做 gpioirq 的 kernel module,

Petalinux-create-t modules --name gpioirq --enable

然后在petalinux工程目錄里會生成這樣一個路徑 project-spec/meta-user/recipes-modules/gpioirq/files,把里面的 gpioirq.c 用附件里的同名文件覆蓋掉。

用附件里的 system-user.dtsi 把 project-spec/meta-user/recipes-bsp/device-tree/files 里的同名文件覆蓋掉,這是因為默認生成的 device tree 里 axigpio core 的 driver 是 xilinx driver,我們需要把它替換為我們生成的 kernel module 的 drivername,需要注意 system-user.dtsi 里面的 axigpio core 的名字需要和 petalinux 工程生成的 devicetree 里的 axi gpio core 的名字一樣。

然后就可以運行 petalinux-build 和 petalinux-package 命令來生成 boot image,然后上板啟動。Linux boot 之后可以通過 cat/proc/interrupts 命令看到 qgioirq 中斷已經(jīng)建立起來了,按一下對應(yīng) axigpio 的板上 IO 按鈕可以看到中斷服務(wù)程序的打印信息

本文來自 XILINX 產(chǎn)品應(yīng)用工程師 Davis Zhang

編輯:jq

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

    關(guān)注

    5

    文章

    1718

    瀏覽量

    149965
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4346

    瀏覽量

    62973
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4827

    瀏覽量

    69054

原文標題:開發(fā)者分享 | 如何在 IP 的 kernel module 里設(shè)置并使用 IP interrupt

文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術(shù)江湖】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    新加坡共享主機怎么設(shè)置ip

    新加坡設(shè)置共享主機的IP地址,通常涉及多個步驟,包括評估需求、選擇服務(wù)商、配置網(wǎng)絡(luò)等。以下是一個詳細的設(shè)置指南,主機推薦小編為您整理發(fā)布新加坡共享主機怎么
    的頭像 發(fā)表于 01-24 11:47 ?103次閱讀

    知道IP地址有什么用?

    相關(guān)信息的,這是Internet之所以能夠運行的基礎(chǔ)。更好理解的說法就是IP地址是發(fā)出郵件的地址,如果要寫信給另外一個人,就需要知道
    的頭像 發(fā)表于 11-21 10:53 ?237次閱讀

    公網(wǎng)ip和彈性公網(wǎng)ip有什么區(qū)別?哪個更好

    公網(wǎng)IP和彈性公網(wǎng)IP都是用于互聯(lián)網(wǎng)通信的IP地址,但它們靈活性、成本和管理方式上有所不同。公網(wǎng)IP是直接分配給設(shè)備的靜態(tài)
    的頭像 發(fā)表于 11-06 09:46 ?290次閱讀

    必知!如何有效保護IP地址

    地址是一種通過加密和隧道技術(shù)公共網(wǎng)絡(luò)上建立專用網(wǎng)絡(luò)的方法。當你連接到服務(wù)器時,的真實IP地址會被隱藏,取而代之的是服務(wù)器分配給你的IP地址。 二、避免隨意點擊不明鏈接 網(wǎng)絡(luò)上存在大
    的頭像 發(fā)表于 09-07 11:16 ?470次閱讀

    爬蟲代理IP提升爬蟲效率方面扮演著至關(guān)重要的角色#代理IP

    IP
    jf_62215197
    發(fā)布于 :2024年08月28日 07:52:49

    TCP IP協(xié)議屬性設(shè)置中的IP配置

    現(xiàn)代網(wǎng)絡(luò)中,TCP/IP協(xié)議是基礎(chǔ)架構(gòu)的重要組成部分。掌握TCP/IP協(xié)議屬性設(shè)置中的IP配置對于確保網(wǎng)絡(luò)的穩(wěn)定性、性能和安全至關(guān)重要。本
    的頭像 發(fā)表于 07-23 10:10 ?605次閱讀

    如何使用代理IP轉(zhuǎn)換國外IP

    IP
    jf_62215197
    發(fā)布于 :2024年07月17日 07:33:17

    ESP32外掛W5500以太網(wǎng),如何設(shè)置靜態(tài)IP地址呢?

    ; int8_t phy_reset_gpio; uint8_t phy_addr; } spi_eth_module_config_t; esp_ip4_addr_t ip
    發(fā)表于 06-13 06:51

    wifi模式設(shè)置靜態(tài)IP地址失敗的原因?

    wifi模式進入連接注冊事件回調(diào)函數(shù)調(diào)用設(shè)置靜態(tài)IP函數(shù),函數(shù)如下: static void wifi_connected_handler(void *arg
    發(fā)表于 06-12 08:08

    如何設(shè)置靜態(tài)IP代理

    靜態(tài)IP
    jf_60146132
    發(fā)布于 :2024年04月29日 07:46:31
    九头鸟棋牌游戏中心| 百家乐平台有什么优惠| 鸿利国际| 百家乐返水1.2不限| 百家乐官网科学| 澳门百家乐必胜| 万人迷百家乐的玩法技巧和规则 | 元游棋牌下载| 百家乐赌现金| 香港百家乐官网赌场娱乐网规则| 平谷区| 百家乐赌博代理合作| CEO百家乐官网娱乐城| 澳门百家乐官网娱乐注册| 大发888真人存款| 新东方百家乐娱乐城| 百家乐重要心态| 百家乐官网庄9点| 白沙| 澳门博彩有限公司| 太阳城娱乐正网| 百家乐大小点桌子| 百家乐专业赌徒| 七胜百家乐官网赌场娱乐网规则 | 大发888娱乐城官方网站| 百家乐官网出千方法技巧| 于都县| 澳门美高梅金殿| 德州扑克 单机| 大发888澳88| 大发888真人游戏| 富二代百家乐的玩法技巧和规则 | 肯博百家乐官网的玩法技巧和规则| 赌场百家乐官网台| 有关百家乐官网玩家论坛| 百家乐官网投注方法| 百家乐官网真人百家乐官网皇冠开户 | 百家乐2万| 七乐百家乐现金网| 至尊百家乐节目单| 百家乐2号机器投注技巧|