本文主旨描述如何將NFC支持添加到i.MX8M mini evk的Yocto工程中。
硬體設置:
i.MX8M mini evk(見i.MX 8M Mini Evaluation Kit | NXP)採用樹莓Pi相容連接器,OM5578/RPI PN7150演示套件可用於執行此移植(見NFC Development Kits for Arduino and more|NXP)。但是PN7150所需的一些信號未連接到i.MX8M mini連接器引腳,因此必須進行修改。
OM5578 IRQ信號必須連接到樹莓Pi連接器引腳19,OM5578 IRQ信號必須映射到樹莓Pi連接器引腳21。
下面是修改的圖片:然後,兩塊板可以裝配在一起,如下圖所示:
使用演示鏡像快速入門:
演示鏡像包括對PN7150的支援,基於i.MX Linux 4.14.78_1.0.0 BSP軟體版本(見i.MX Software | NXP).
相關文檔可以從此下載:
https://www.nxp.com/webapp/Download?colCode=L4.14.78_1.0.0_LINUX_DOCS
只需按照i.MX_Linux_User's_Guide文檔(上述L4.14.78_1.0.0_LINUX文檔包的一部分)的中的指導,刷新演示鏡像(從此處下載:https://www.nxp.com/lgfiles/updates/NFC/LINUX_L4-14-78_IMAGE_MX8MMEVK.zip)
然後在終端中,您可以運行包含在鏡像中的演示應用程式來執行以下命令:
# nfcDemoApp poll
在OM5578演示套件中作為參考提供的NFC標籤,接近NFC天線時將觸發以下顯示:
在imx-linux-sumo版本中添加PN7150支援:
前提是已按照i.MX Yocto Project使用者指南(上述L4.14.78_1.0.0_LINUX文檔包的一部分)中的說明安裝並構建L4.14.78_1.0.0版本:
$ repo init -u https://source.codeaurora.org/external/imx/imx-manifest -b imx-linux-sumo -m imx-4.14.78-1.0.0_ga.xml
$ repo sync
$ MACHINE=imx8mmevk DISTRO=fsl-imx-xwayland source fsl-setup-release.sh -b build_dir
$ bitbake fsl-image-validation-imx
然後將PN7150支持添加到imx linux sumo環境中,請遵循以下分步指導:
在sources目錄中,從https://github.com/nxpnfclux/meta-nxp-nfc下載meta-nxp nfc層
$ git clone https://github.com/NXPNFCLinux/meta-nxp-nfc.git
在設備樹中定義CPU和PN7150之間的硬體連接,並將以下patch添加到Yocto工程
build_dir/tmp/work shared/imx8mm evk/kernel source/arch/arm64/boot/dts/freescale/fsl-imx8mm-evk.dts:
使用以下命令將meta nxp nfc層添加到生成定義更新檔build_dir/conf/bblayers.conf中:
BBLAYERS += " ${BSPDIR}/sources/meta-nxp-nfc"
使用以下命令將meta-nxp-nfc層元件添加到鏡像定義更新檔build_dir / conf / local.conf中:
IMAGE_INSTALL_append = " kernel-module-nxp-pn5xx nxp-nfc-bin "
重新編譯linux內核:
$ bitbake -f -c compile linux-imx && bitbake-f -c deploy linux-imx
編譯meta nxp nfc層:
$ bitbake nxp-nfc
重新編譯完整的鏡像以包含修改:
$ bitbake fsl-image-validation-imx
然後,您可以將更新後的鏡像保存到i.MX8M mini evk,按照“使用演示鏡像快速入門”一章中的說明運行演示應用程式。
參考:
此移植已按照AN11679_PN71xx_Linux_Software_Stack_Integration_Guidelines
文档中提供的指南完成(演示镜像和说明)。
l 參考資料:
NXP官網:
- https://www.nxp.com/docs/en/user-guide/IMX8MMEVKBHUG.pdf
- https://www.nxp.com/docs/en/quick-reference-guide/8MMINILPD4EVKBQSG.pdf
- https://www.nxp.com/webapp/Download?colCode=L5.4.24_2.1.0_LINUX_DOCS
- https://www.nxp.com/webapp/Download?colCode=8MMINILPD4-CPU2-DESIGNFILES
- https://www.nxp.com/webapp/Download?colCode=IMX8MMRM
- https://www.nxp.com/document/guide/get-started-with-the-i-mx-8m-mini-evk:GS-iMX-8M-Mini-EVK
- https://community.nxp.com/docs/DOC-343007
評論