implement gpio-imx-rpmsg driver on imx8mn

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

implement gpio-imx-rpmsg driver on imx8mn

ソリューションへジャンプ
1,970件の閲覧回数
phuongnguyen1
Contributor II

Hi everyone 

I am writing an application that both M7 core and A53 use different gpio in one port ( ex: A53 use GPIO1_IO_10 , M7 core use GPIO1_IO_11 ), this will make kernel linux stuck forever .

So my solution is Cortex-M will do physical writes/reads to GPIO and send RPMSG messages to core A53 when interrupt happens. All GPIO pins references from disabled &gpio could be easily remapped to virtual GPIO. libgpiod with Linux gpio-imx-rpmsg.c driver, base on this post IMX8M PLUS: GPIO Interrupt conflicts between M7 and A53 - Technical Support - Toradex Community

I have download SDK for M7 core application for IMX8mn chip and has no example implement to service with gpio-imx-rpmsg diver from linux for M7 core. Anyone can help me solve this problem ?

Regards

congphuong

 

0 件の賞賛
返信
1 解決策
1,935件の閲覧回数
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @phuongnguyen1 

gpio-imx-rpmsg driver in kernel is for i.MX7ULP and i.MX8ULP, you can download imx7ul/imx8ulp SDK for reference.

For example, evkmimx8ulp_power_mode_switch\app_srtm.c and evkmimx8ulp_power_mode_switch\srtm\services\srtm_io_service.c

 

 

元の投稿で解決策を見る

0 件の賞賛
返信
1 返信
1,936件の閲覧回数
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @phuongnguyen1 

gpio-imx-rpmsg driver in kernel is for i.MX7ULP and i.MX8ULP, you can download imx7ul/imx8ulp SDK for reference.

For example, evkmimx8ulp_power_mode_switch\app_srtm.c and evkmimx8ulp_power_mode_switch\srtm\services\srtm_io_service.c

 

 

0 件の賞賛
返信
%3CLINGO-SUB%20id%3D%22lingo-sub-1861032%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3Eimplement%20gpio-imx-rpmsg%20driver%20on%20imx8mn%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1861032%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%AD%E3%81%88%E7%9A%86%E3%81%95%E3%82%93%3C%2FP%3E%3CP%3E%E7%A7%81%E3%81%AF%E3%80%81M7%E3%82%B3%E3%82%A2%E3%81%A8A53%E3%81%AE%E4%B8%A1%E6%96%B9%E3%81%8C1%E3%81%A4%E3%81%AE%E3%83%9D%E3%83%BC%E3%83%88%E3%81%A7%E7%95%B0%E3%81%AA%E3%82%8Bgpio%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E4%BD%9C%E6%88%90%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99(%E4%BE%8B%3AA53%E3%81%AFGPIO1_IO_10%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%80%81M7%E3%82%B3%E3%82%A2%E3%81%AFGPIO1_IO_11%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%BE%E3%81%99)%E3%80%81%E3%81%93%E3%82%8C%E3%81%AB%E3%82%88%E3%82%8A%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%ABLinux%E3%81%8C%E6%B0%B8%E4%B9%85%E3%81%AB%E3%82%B9%E3%82%BF%E3%83%83%E3%82%AF%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CP%3E%E3%81%97%E3%81%9F%E3%81%8C%E3%81%A3%E3%81%A6%E3%80%81%E7%A7%81%E3%81%AE%E8%A7%A3%E6%B1%BA%E7%AD%96%E3%81%AF%E3%80%81%3CSPAN%3ECortex-M%E3%81%8CGPIO%E3%81%AB%E5%AF%BE%E3%81%97%E3%81%A6%E7%89%A9%E7%90%86%E7%9A%84%E3%81%AA%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%2F%E8%AA%AD%E3%81%BF%E5%8F%96%E3%82%8A%E3%82%92%E8%A1%8C%E3%81%84%E3%80%81%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E3%81%8C%E7%99%BA%E7%94%9F%E3%81%97%E3%81%9F%E3%81%A8%E3%81%8D%E3%81%AB%E3%82%B3%E3%82%A2A53%E3%81%ABRPMSG%E3%83%A1%E3%83%83%E3%82%BB%E3%83%BC%E3%82%B8%E3%82%92%E9%80%81%E4%BF%A1%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%A7%E3%81%99%E3%80%82disabled%20%26amp%3Bgpio%20%E3%81%8B%E3%82%89%E3%81%AE%E3%81%99%E3%81%B9%E3%81%A6%E3%81%AE%20GPIO%20%E3%83%94%E3%83%B3%E5%8F%82%E7%85%A7%E3%81%AF%E3%80%81%E4%BB%AE%E6%83%B3%20GPIO%20%E3%81%AB%E7%B0%A1%E5%8D%98%E3%81%AB%E5%86%8D%E3%83%9E%E3%83%83%E3%83%97%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82%3C%2FSPAN%3E%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fi-MX-Processors%2Flibgpiod-with-Linux-gpio-imx-rpmsg-c-driver%2Fm-p%2F1352813%22%20rel%3D%22ugc%22%20target%3D%22_blank%22%3Elibgpiod%20%E3%81%A8%20Linux%20gpio-imx-rpmsg.c%20%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%83%BC%3C%2FA%3E%E3%80%81%E3%81%93%E3%81%AE%E8%A8%98%E4%BA%8B%E3%81%AB%E5%9F%BA%E3%81%A5%E3%81%8F%20%3CA%20href%3D%22https%3A%2F%2Fcommunity.toradex.com%2Ft%2Fimx8m-plus-gpio-interrupt-conflicts-between-m7-and-a53%2F19288%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3EIMX8M%20PLUS%3A%20GPIO%20%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E3%81%AE%20M7%20%E3%81%A8%20A53%20%E3%81%AE%E7%AB%B6%E5%90%88%20-%20%E3%83%86%E3%82%AF%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%20-%20Toradex%20Community%3C%2FA%3E%3C%2FP%3E%3CP%3E%E7%A7%81%E3%81%AFIMX8mn%E3%83%81%E3%83%83%E3%83%97%E7%94%A8%E3%81%AEM7%E3%82%B3%E3%82%A2%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E7%94%A8%E3%81%AESDK%E3%82%92%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%81%8C%E3%80%81M7%E3%82%B3%E3%82%A2%E7%94%A8%E3%81%AELinux%E3%81%8B%E3%82%89%E3%81%AEgpio-imx-rpmsg%E3%83%80%E3%82%A4%E3%83%90%E3%83%BC%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%82%92%E6%8F%90%E4%BE%9B%E3%81%99%E3%82%8B%E4%BE%8B%E3%81%AF%E3%81%82%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82%E3%81%A9%E3%81%AA%E3%81%9F%E3%81%8B%E3%81%93%E3%81%AE%E5%95%8F%E9%A1%8C%E3%82%92%E8%A7%A3%E6%B1%BA%E3%81%99%E3%82%8B%E3%81%AE%E3%82%92%E6%89%8B%E4%BC%9D%E3%81%A3%E3%81%A6%E3%81%84%E3%81%9F%E3%81%A0%E3%81%91%E3%81%BE%E3%81%99%E3%81%8B%3F%3C%2FP%3E%3CP%3E%3CSPAN%3E%E3%82%88%E3%82%8D%E3%81%97%E3%81%8F%E3%81%8A%E9%A1%98%E3%81%84%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3E%E3%82%B3%E3%83%B3%E3%83%95%E3%82%AA%E3%83%B3%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1861190%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3A%20implement%20gpio-imx-rpmsg%20driver%20on%20imx8mn%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1861190%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F233232%22%20target%3D%22_blank%22%3E%40phuongnguyen1%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB%E3%81%AEgpio-imx-rpmsg%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%81%AFi.MX7ULP%E3%81%8A%E3%82%88%E3%81%B3i.MX8ULP%E7%94%A8%E3%81%A7%E3%80%81%E5%8F%82%E8%80%83%E3%81%AE%E3%81%9F%E3%82%81%E3%81%ABimx7ul%2Fimx8ulp%20SDK%E3%82%92%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%8C%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3E%E3%81%9F%E3%81%A8%E3%81%88%E3%81%B0%E3%80%81evkmimx8ulp_power_mode_switch%5Capp_srtm.c%20%E3%81%A8%20evkmimx8ulp_power_mode_switch%5Csrtm%5Cservices%5Csrtm_io_service.c%20%E3%81%A7%E3%81%99%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E