Re: [meta-freescale] IMX8MM-LPDDR4-EVK Help Request
Otavio Salvador <[email protected]> Tue, 5 Nov 2024 11:24:37 -0300
| Newsgroups | org.yoctoproject.lists.meta-freescale |
|---|---|
| Message-ID | <CAP9ODKqU3JAn7gYvJ0QctdQVdH=K4=0nNGX7oPXDRy-JhaoipA@mail.gmail.com> |
--000000000000e6fd3506262b2910 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello Chris, Em ter., 5 de nov. de 2024 =C3=A0s 06:42, Chris via lists.yoctoproject.org <[email protected]> escreveu: > Hello, > > > > I am primarily a hardware engineer with some embedded software experience > (mainly PICs). I am new to Yocto and would like some advice/help. > > > > I am attempting to develop for the IMX8MM-LPDDR4-EVK development board > before committing to laying out my own board. The aim of the project is t= o > decode an analogue video source and stream via a webpage. There is no > desire for a display, bluetooth, wireless or audio. > > > > I got a basic setup working using the fsl-community-bsp-platform scarthga= p > branch. The target distribution is fsl-framebuffer. The image built is > core-image-minimal. For a video source I used NXP=E2=80=99s evaluation MI= PI camera > (OV5640) and the VP8 encoder (through a gstreamer pipeline). > > > > It is my understanding that the fsl/nxp recipes are not updated as often > as the the fslc recipes and production builds ideally should use the fslc > recipes. Is this correct? > This is it for the project, but this is what I do for my customers. > I changed my distribution to fslc-framebuffer and attempted to build the > image again. This failed due to imx-gst1.0-plugin being incompatible with > the machine (imx8mm-lpddr4-evk). I tried investigating and found > imx-gst1.0-plugin is NXP=E2=80=99s plugin and gstreamer1.0-plugins-imx is= the > community release. Changing my configuration file to use > gstreamer1.0-plugins-imx resulted in the same message. Is it possible to > have the video encoders with the community build? > You most likely need to use the NXP with BSP. > Further investigations it appears that the encoders depend on the > IMX_DEFAULT_BSP =3D "nxp" been set as they are proprietary, is this corre= ct? > See: https://github.com/Freescale/meta-freescale/blob/dffc90ae240578b4a94c6b7caf= 8231a22a6ac8de/conf/machine/include/imx-base.inc#L8-L13 > Just setting this would allow the image to build but it would not boot. = I > decided to try different combinations of BSP, bootloader and kernel to se= e > what would boot. > > > > In a fresh environment, I attempted to build the core-image-minimal using > poky distribution, with no amendments to anything. This failed to boot th= e > kernel with the error =E2=80=9CDid not find a cmdline Flattened Device Tr= ee=E2=80=9D as > seen in imx8mm_dflt_poky-boot-fail.txt. Is this a bug or is the > imx8mm-lpddr4-evk machine not supported by the community release? > > > > I added the NXP BSP rather than mainline and this failed to get past the > SPL, see imx8mm_NXP-BSP_poky-boot-fail.txt. > > > > With the NXP BSP and u-boot-imx the system boots albeit with warnings, > which I do not currently understand, but seem to be related to SPI. See > imx8mm_NXP-BSP+uboot_poky-boot-warn.txt. > > > > I added gstreamer1.0-plugins-imx to this image to check if the encoders > are behaving however it looks like there is a problem with the driver for > the OV5640 as the pipeline fails with =E2=80=9Cinvalid map offset=E2=80= =9D, see > imx8mm_NXP-BSP+uboot_poky_gstreamer1.0-plugins-imx.txt. > > > > Switching to linux-imx the board appears to boot OK without the SPI > warnings, see imx8mm_NXP-BSP+uboot+linux-imx_poky-boot.txt. However the > similar issues are present with gstreamer, see > imx8mm_NXP-BSP+uboot+linux-imx_poky_imx-gst1.0-plugin.txt. > > I am now thinking there has been a bug introduced sometime between > 15/10/24 and 31/10/24. As I updated my repository on 31/10/24 and my > initial recipe no longer works with gstreamer giving the same invalid map > offset message. Piping the video source to a fakesink seems to suggest th= at > the camera driver is OK as there isn=E2=80=99t the error message, so I su= spect > something is wrong for the hardware video encoders. > > > > > > Does anyone have any suggestions on what would be the preferred > bootloader/kernel/distribution would be to base a project like this on? > > > > Does anyone know why the video encoders no longer appear to work and if > there is any suggested solutions to get them to work? > So, it seems we have different issues that you are discussing here. - Mainline bootloader seems to be not working for this specific board. - Mainline based kernel seems to have a regression and SPI bus. - Camera Issue Probably, I missed something, but the most important point that I wanted to bring up with you is to ask you to open specific issues in the project in the GitHub, so each of those can be discussed separately. To be very honest with you, the mailing list is mostly dead, and discussions and issues have been discussed in the GitHub, so we would appreciate if you can make use of it. Best Regards --=20 Otavio Salvador O.S. Systems http://www.ossystems.com.br http://code.ossystems.com.br Mobile: +55 (53) 9 9981-7854 --000000000000e6fd3506262b2910 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div dir=3D"ltr">Hello Chris,=C2=A0</div><br><div class=3D= "gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">Em ter., 5 de nov. de 2= 024 =C3=A0s 06:42, Chris via <a href=3D"http://lists.yoctoproject.org">list= s.yoctoproject.org</a> <chris=3D<a href=3D"mailto:[email protected]= octoproject.org">[email protected]</a>> escreveu:<br= ></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;= border-left:1px solid rgb(204,204,204);padding-left:1ex"><div> <p style=3D"line-height:100%;margin-bottom:0cm">Hello,</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">I am primarily a hardware e= ngineer with some embedded software experience (mainly PICs). I am new to Y= octo and would like some advice/help.</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">I am attempting to develop = for the IMX8MM-LPDDR4-EVK development board before committing to laying out= my own board. The aim of the project is to decode an analogue video source= and stream via a webpage. There is no desire for a display, bluetooth, wir= eless or audio.</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">I got a basic setup working= using the fsl-community-bsp-platform scarthgap branch. The target distribu= tion is fsl-framebuffer. The image built is core-image-minimal. For a video= source I used NXP=E2=80=99s evaluation MIPI camera (OV5640) and the VP8 en= coder (through a gstreamer pipeline).</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">It is my understanding that= the fsl/nxp recipes are not updated as often as the the fslc recipes and p= roduction builds ideally should use the fslc recipes. Is this correct?</p><= /div></blockquote><div><br></div><div>This is it for the project, but this = is what I do for my customers.</div><div>=C2=A0</div><blockquote class=3D"g= mail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204= ,204,204);padding-left:1ex"><div> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0I changed my distribu= tion to fslc-framebuffer and attempted to build the image again. This faile= d due to imx-gst1.0-plugin being incompatible with the machine (imx8mm-lpdd= r4-evk). I tried investigating and found imx-gst1.0-plugin is NXP=E2=80=99s= plugin and gstreamer1.0-plugins-imx is the community release. Changing my = configuration file to use gstreamer1.0-plugins-imx resulted in the same mes= sage. Is it possible to have the video encoders with the community build?</= p></div></blockquote><div><br></div><div>You most likely need to use the NX= P with BSP.=C2=A0</div><div>=C2=A0</div><blockquote class=3D"gmail_quote" s= tyle=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);pad= ding-left:1ex"><div> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0Further investigation= s it appears that the encoders depend on the IMX_DEFAULT_BSP =3D "nxp&= quot; been set as they are proprietary, is this correct?</p></div></blockqu= ote><div><br></div><div>See:=C2=A0<a href=3D"https://github.com/Freescale/m= eta-freescale/blob/dffc90ae240578b4a94c6b7caf8231a22a6ac8de/conf/machine/in= clude/imx-base.inc#L8-L13">https://github.com/Freescale/meta-freescale/blob= /dffc90ae240578b4a94c6b7caf8231a22a6ac8de/conf/machine/include/imx-base.inc= #L8-L13</a></div><div>=C2=A0</div><blockquote class=3D"gmail_quote" style= =3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding= -left:1ex"> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0Just setting this wou= ld allow the image to build but it would not boot. I decided to try differe= nt combinations of BSP, bootloader and kernel to see what would boot.</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">In a fresh environment, I a= ttempted to build the core-image-minimal using poky distribution, with no a= mendments to anything. This failed to boot the kernel with the error =E2=80= =9CDid not find a cmdline Flattened Device Tree=E2=80=9D as seen in imx8mm_= dflt_poky-boot-fail.txt. Is this a bug or is the imx8mm-lpddr4-evk machine = not supported by the community release?</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">I added the NXP BSP rather = than mainline and this failed to get past the SPL, see imx8mm_NXP-BSP_poky-= boot-fail.txt.</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">With the NXP BSP and u-boot= -imx the system boots albeit with warnings, which I do not currently unders= tand, but seem to be related to SPI. See imx8mm_NXP-BSP+uboot_poky-boot-war= n.txt.</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">I added gstreamer1.0-plugin= s-imx to this image to check if the encoders are behaving however it looks = like there is a problem with the driver for the OV5640 as the pipeline fail= s with =E2=80=9Cinvalid map offset=E2=80=9D, see imx8mm_NXP-BSP+uboot_poky_= gstreamer1.0-plugins-imx.txt.</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">Switching to linux-imx the = board appears to boot OK without the SPI warnings, see imx8mm_NXP-BSP+uboot= +linux-imx_poky-boot.txt. However the similar issues are present with gstre= amer, see imx8mm_NXP-BSP+uboot+linux-imx_poky_imx-gst1.0-plugin.txt.</p> <p style=3D"line-height:100%;margin-bottom:0cm">I am now thinking there has= been a bug introduced sometime between 15/10/24 and 31/10/24. As I updated= my repository on 31/10/24 and my initial recipe no longer works with gstre= amer giving the same invalid map offset message. Piping the video source to= a fakesink seems to suggest that the camera driver is OK as there isn=E2= =80=99t the error message, so I suspect something is wrong for the hardware= video encoders.</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">Does anyone have any sugges= tions on what would be the preferred bootloader/kernel/distribution would b= e to base a project like this on?</p> <p style=3D"line-height:100%;margin-bottom:0cm">=C2=A0</p> <p style=3D"line-height:100%;margin-bottom:0cm">Does anyone know why the vi= deo encoders no longer appear to work and if there is any suggested solutio= ns to get them to work?</p></blockquote><div><br></div><div>So, it seems we= have different issues that you are discussing here.=C2=A0</div><div><br></= div><div>- Mainline bootloader seems to be not working for this specific bo= ard.</div><div>- Mainline based kernel seems to have a regression and SPI b= us.</div><div>- Camera Issue</div><div><br></div><div>Probably, I missed so= mething, but the most important point that I wanted to bring up with you is= to ask you to open specific issues in the project in the GitHub, so each o= f those can be discussed separately. To be very honest with you, the mailin= g list is mostly dead, and discussions and issues have been discussed in th= e GitHub, so we would appreciate if you can make use of it.</div><div><br><= /div><div>Best Regards</div><div><br></div></div><span class=3D"gmail_signa= ture_prefix">-- </span><br><div dir=3D"ltr" class=3D"gmail_signature"><div = dir=3D"ltr">Otavio Salvador =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 O.S. Systems<br><a hre= f=3D"http://www.ossystems.com.br" target=3D"_blank">http://www.ossystems.co= m.br</a> =C2=A0 =C2=A0 =C2=A0 =C2=A0<a href=3D"http://code.ossystems.com.br= " target=3D"_blank">http://code.ossystems.com.br</a><br>Mobile: +55 (53) 9 = 9981-7854</div></div></div> --000000000000e6fd3506262b2910--