AVNET EMBEDDE MSC SM2S-IMX8M Debug UART Port ARM Miorina amin'ny Solosaina momba ny Module
AVNET EMBEDDE MSC SM2S-IMX8M Debug UART Port ARM Miorina amin'ny Solosaina amin'ny Module

sasin-teny

Fanamarihana momba ny zon'ny mpamorona

Copyright © 2023 Avnet Embedded GmbH. Zo rehetra voatokana. Ny dika mitovy amin'ity antontan-taratasy ity, manome ho an'ny hafa sy ny fampiasana na fampitana ny votoatiny, dia voarara tsy misy fahefana mazava avy amin'ny Avnet Embedded /MSC Technologies

GmbH. Ny mpandika lalàna dia tompon'andraikitra amin'ny fandoavana onitra. Ny zo rehetra dia voatokana raha misy ny fanomezana patanty na fisoratana anarana modely na famolavolana.

Fampahalalana manan-danja

Ity tahirin-kevitra ity dia natao ho an'ny mpihaino mahafeno fepetra ihany. Ny vokatra voalaza eto dia tsy vokatra mpampiasa farany. Izy io dia novolavolaina sy novolavolaina ho an'ny fikarakarana fanampiny ataon'ny mpiasa voaofana.

Disclaimer

Na dia noforonina tamim-pitandremana tanteraka aza ity antontan-taratasy ity dia tsy misy fiantohana na andraikitra amin'ny fahamendrehana na mety amin'ny tanjona manokana. Ny fampahalalana ato amin'ity antontan-taratasy ity dia omena "toy ny misy" ary azo ovaina tsy misy fampandrenesana.

famantarana

Ny anaran'ny vokatra rehetra ampiasaina, ny logo na ny marika dia fananan'ny tompony tsirairay avy.

Fampahalalana ankapobeny

sehatra

Ity antontan-taratasy ity dia mihatra amin'ny Avnet Embedded Computer-on-Modules rehetra mifototra amin'ny CPU NXP i.MX8- sy i.MX9-series, toy ny oh.

  • SM2S-IMX8PLUS
  • SM2S-IMX8M
  • SM2S-IMX8MINI
  • SM2S-IMX8NANO
  • SM2S-IMX8 (QuadPlus/QuadMax)
  • SM2S-IMX93
  • OSM-SF-IMX91
  • OSM-SF-IMX93
  • OSM-MF-IMX8NANO
  • OSM-MF-IMX8MINI

Ity lisitra ity dia tsy milaza ho feno, indrindra fa ny birao vaovao dia mety havoaka izay mety hampiharina amin'ny fomba mitovy, raha toa ka tsy azo havaozina avy hatrany io antontan-taratasy io.

Fanitsiana sy Fanovana

fanitsiana Daty fanehoan-kevitra
1.0 25.05.2023 M. Koch Dika voalohany

Ahoana ny fanovana ny seranan-tsambo UART debug

Sava lalana

Maro ny rafitra mifototra amin'ny ARM tonga miaraka amin'ny Serial Console ho ny tena fomba hidirana ho an'ny debug sy ny rafitra mitondra ny tanjona. Miankina amin'ny fepetra takian'ny mpanjifa, ilaina matetika amin'ny rafitra toy izany ny hoe mila mifindra amin'ny seranana serial hafa ny seranan-tsambo UART debug default. Ny seranan-tsambo UART debug dia midika hoe seranan-tsambo UART izay hanome ny input/output U-Boot rehetra, ny output bootlog kernel ary ny shell kernel, amin'ny ankapobeny ny fifandraisana UART rehetra dia ho hita amin'ny sary Yocto kely indrindra. Satria ny seranan-tsambo UART default dia tsy ampiasain'ny singa rindrambaiko tokana, fa amin'ny singa maro, ao anatin'izany ny u-boot, atf-firmware, optee-os ary ny kernel, ny fametrahana ny seranan-tsambo UART default dia mety ho sarotra, ary ny faranyview mety ho very haingana. Ity antontan-taratasy ity dia hanazava ny dingana rehetra harahina, hanatrarana io asa io. Ho fanazavana mora kokoa, ity antontan-taratasy ity dia nosoratana ho an'ny processeur NXP i.MX8 MINI sy mscldk, saingy azo ampiharina amin'ny processeurs i.MX8- sy i.MX9-series rehetra ary rafitra fananganana hafa miaraka amin'ny ezaka kely.

Fanomanana tontolo iainana

Ny fanovana ny seranan-tsambo UART debug default dia mitaky fanovana kaody ao amin'ny Yocto, ary ny fomba tsotra indrindra hanaovana izany dia ny fampiasana Yocto devtool hanomanana ireo loharano ho antsika. Ilaina ny manova ireto fonosana Yocto manaraka ireto:

  • u-boot-imx (virtoaly/bootloader)
  • linux-imx (virtoaly/kernel)
  • atf-imx
  • optee-os (raha optee ihany no ampiasaina)

Ny loharano dia tokony homanina miaraka amin'ny devtool: 

$ ./devtool manova ny u-boot-imx
$ ./devtool manova ny linux-imx
$ ./devtool manova atf-imx
$ ./devtool manova ny optee-os

Ny loharano rehetra dia hita ao amin'ny lahatahiry "workspace".

Manova kaody

Manova ny Bootloader

Ao amin'ny bootloader dia hisy ny fanombohana UART fototra, noho izany dia ilaina ny manova ny muxing sy ny adiresin'ny seranan-tsambo UART. Ny asa faharoa amin'ny u-boot dia ny mandefa ny argument boot amin'ny kernel ary eto dia ilaina ny manova ny tohan-kevitra console tty. Ny fanombohana UART sy ny muxing dia mitranga amin'ny s voalohany indrindratage ny fizotran'ny boot ao amin'ny SPL. Ny kaody loharano dia azo jerena ao amin'ny solaitrabe spl.c manokana file.

Target file: workspace/sources/u-boot-imx/board/msc/sm2s_imx8mm/spl.c

Sokafy ny file ary mandehana mankany amin'ny asa init_ser0():

static void init_ser0(void)
{
imx_iomux_v3_setup_multiple_pads(ser0_pads, ARRAY_SIZE(ser0_pads)); init_uart_clk(1);
}

Ny fiasa dia manetsika ny famantaranandro ho an'ny UART2(index 1 ho an'ny UART ara-batana 2).

Ankehitriny, raha te hampiasa UART1 isika dia afaka mamaritra ny asantsika init_ser1:

static void init_ser1(void)
{
imx_iomux_v3_setup_multiple_pads(ser1_pads, ARRAY_SIZE(ser1_pads)); init_uart_clk(0);
}

Soloy ny fonction call an'ny init_ser0 amin'ny init_ser1() ao amin'ny board_early_init_f(). Hitantsika koa fa tsy voafaritra ny rafitra ser1_pads. Eto dia ilaina ny mahafantatra ny wiring ny UART1. Amin'ny imx8mm, UART1 dia azo afindra amin'ny pads uart1, na amin'ny pads sai2. Noho izany, ny ser1_pads dia azo faritana ho:

static iomux_v3_cfg_t const ser1_pads[] = {
IMX8MM_PAD_UART1_RXD_UART1_RX | DEFAULT_UART_PAD_CTRL, IMX8MM_PAD_UART1_TXD_UART1_TX | DEFAULT_UART_PAD_CTRL, NULL
};

Raha tsy izany, mampiasa sai2:

static iomux_v3_cfg_t const ser1_pads[] = {
IMX8MM_PAD_SAI2_RXFS_UART1_TX | DEFAULT_UART_PAD_CTRL, IMX8MM_PAD_SAI2_RXC_UART1_RX | DEFAULT_UART_PAD_CTRL NULL };

Ankehitriny ny adiresy fototra UART dia tokony hovana, ny adiresy dia voafaritra ao amin'ny config header boards file.

Target file: workspace/sources/u-boot-imx/include/configs/msc_sm2s_imx8mm.h

Ovao ny famaritana CONFIG_MXC_UART_BASE. Ho an'ny UART1 dia izao: 

  • // #define CONFIG_MXC_UART_BASE
  • UART2_BASE_ADDR
  • #farito CONFIG_MXC_UART_BASE
  • UART1_BASE_ADDR

Farany, tokony ovaina ny argument kernel console. Ny sanda dia hita ao amin'ny lohapejy iray ihany file. Hitady ny “console=ttymxc1…” and modify “ttymxc1” to “ttymxc0”. The index number correlates to UART index, and is always UART index minus 1. So for UART 2 we use ttymxc1, for UART3 use ttymxc2 etc..

Manova ny ARM Trusted Firmware

Arm Trusted Firmware (imx-atf) dia tsy manana fomba fanao fanombohana UART manokana, na izany aza dia manana adiresy fototra UART misy kaody mafy, ary miankina amin'ny fanombohana UART mety amin'ny u-boot. Ny fametrahana adiresy fototra hafa ao amin'ny u-boot sy imx-atf dia azo inoana fa hamela ny processeur hifikitra amin'ny mpitantana manokana, ary tsy hisy na inona na inona hita ao amin'ny UART (toa mihantona tsy misy antony ny CPU). Rehefa ovaina ny seranan-tsambo UART dia tsy maintsy mitranga amin'ny imx-atf ihany koa io fiovana io! Ny fanovana ny seranan-tsambo UART amin'ny imx-atf dia mitaky fanovana adiresy fototra. Ity sanda ity dia napetraka ao amin'ny platform.mk file ny processeur.

Target file: toeram-piasana/sources/imx-atf/plat/imx/imx8m/imx8mm/platform.mk 

Ny adiresy fototra UART marina dia hita ao amin'ny boky torolalana imx8. Amin'ity exampary miova avy amin'ny UART2 mankany UART1 amin'ny imx8mm:

# IMX_BOOT_UART_BASE ?= 0x30890000
IMX_BOOT_UART_BASE ?= 0x30860000

Manova optee-os

Matetika ny Optee OS no entina rehefa ampiasaina amin'ny rafitra ny kriptografika mody CAAM. Optee dia mandeha amin'ny ARM Cortex-A53 cores, fa amin'ny tranga mahaleo tena hafa toy ny kernel. Mitaky fidirana UART ihany koa ny Optee ary amin'ity tranga ity dia midika hoe fanovana adiresy fototra.

Target file: workspace/sources/optee-os/core/arch/arm/plat-imx/conf.mk

Ity example dia hametraka adiresy fototra UART manomboka amin'ny UART2 mankany amin'ny UART1: 

#CFG_UART_BASE ?= UART2_BASE
CFG_UART_BASE ?= UART1_BASE

Manova ny Kernel

Ny Kernel dia mitaky fanovana hazo kely fotsiny, ary raha tsy mbola misy ao anaty kernel ny UART. Amin'ny toe-javatra maro dia tsy ilaina ny fanovana. Na izany aza, hamarino raha misy ny ohatra tty tianao hampiasaina! Jereo ny fisian'ny tty amin'ny baiko shell:

$ ls / dev / ttymxc *

Raha efa misy ny ttymxc dia tsy ilaina ny fanovana. Ho an'ny example, ho an'ny UART2 dia /dev/ttymxc1. Araka ny efa fantatsika, ny fanondroan'ny tty dia ny fanondroan'ny UART ara-batana minus 1. Raha tsy misy ny tty takiana dia araho ny fomba fampidirana UART mahazatra.

Build & Test

Ho an'ny fananganana azo antoka dia tokony ampiharina ny fanadiovana feno:

$ ./bitbake –c manadio ny u-boot-imx linux-imx imx-atf optee-os

Amboary indray ny sary miaraka amin'ny baiko fananganana default, ohatraample:

$ ./bitbake msc-image-base

Ho an'ny tanjona fitiliana, ny adaptatera UART dia tokony hifandray amin'ny UART taloha. Tsy tokony hisy vokatra intsony amin'ny UART taloha! Ny UART vaovao dia tokony hiasa tanteraka, noho izany dia hamarino azafady ny fifandraisana amin'ny fampiasana ny shell UART u-boot sy ny console linux.

Product Support

Ny injeniera sy teknisianina Avnet Embedded dia manolo-tena hanome fanohanana ny mpanjifantsika isaky ny ilaina izany. Alohan'ny hifandraisana amin'ny Fanohanana ara-teknika an'ny Avnet Embedded dia tsidiho azafady ny pejy tsirairay ao amin'ny anay website at
https://embedded.avnet.com/support/
ho an'ny antontan-taratasy farany, mpamily ary fampidinana rindrambaiko.

Raha tsy mahavaha ny olanao ny fampahalalana omena ao dia mifandraisa aminay ekipa fanohanana ara-teknika Avnet Embedded toy izao manaraka izao:

mailaka: support.boards@avnet.eu
Telefaonina: +49 (0)8165 906-200

Logo AVNET EMBEDDED

Documents / Loharano

AVNET EMBEDDE MSC SM2S-IMX8M Debug UART Port ARM Miorina amin'ny Solosaina amin'ny Module [pdf] Toromarika
MSC SM2S-IMX8M, MSC SM2S-IMX8M Debug UART Port ARM Miorina amin'ny Solosaina amin'ny Module, Debug UART Port ARM Miorina amin'ny Solosaina amin'ny Module, UART Port ARM Miorina amin'ny Solosaina amin'ny Module, Port ARM miorina amin'ny Module, ARM Miorina amin'ny Module, ARM miorina amin'ny Solosaina amin'ny Module, Solosaina amin'ny Module, Module

References

Mametraha hevitra

Tsy havoaka ny adiresy mailakao. Voamarika ireo saha ilaina *