Re: [meta-freescale] Advice on Yocto Build for Mainline Linux or for NXP Linux for Polyhex Debix Model A or Model A SoM for Open Source Wildlife Camera System
"Mauro S." <[email protected]> Thu, 15 May 2025 08:38:48 +0200
| Newsgroups | org.yoctoproject.lists.meta-freescale |
|---|---|
| Message-ID | <[email protected]> |
On 14/05/25 19:03, Will Robertson wrote: > Hi Mauro, > > Thank you very much! > >> Then you could use one i.MX8MP machine among the ones listed in meta- >> freescale > > If I look in the meta-freescale-3rdparty layer what's the easiest way to > tell if the Yocto builds for the boards there are based on mainline > Linux or on NSP's i.MX Linux distribution? > You can check the IMX_DEFAULT_BSP, IMX_DEFAULT_BOOTLOADER and IMX_DEFAULT_KERNEL variables defined in machine configuration. E.g. for Olimex the IMX_DEFAULT_BSP is the NXP one (then u-boot and kernel from NXP), but in machine IMX_DEFAULT_KERNEL is overriden to use -fslc Linux (derived from mainline), probably because it better support this board. In general the NXP kernel has better support for VPU part, as stated in the linux-imx recipe. > Would boards like these typically have separate Yocto builds for > mainline Linux and i.MX Linux or only Yocto builds for one or the other? > You can use the same build dir, but if you use two separate builds you don't need to rebuild when you want to change the BSP. >> Nitrogen 8MP or Olimex i.MX8MP EVB > > I wasn't able to find a price online for the Nitrogen 8MP but I did get > a price of 120 USD for the Olimex i.MX8MP EVB and SoM. > > The price of the NXP 8MPLUSLPD4-PEVK and 8MPLUSLPD4-EVK eval. boards > makes them suitable for prototyping but I don't have the money to use > them in field studies. > > Will > > On 2025-05-09 15:35, Mauro S. wrote: >> On 09/05/25 12:59, Will Robertson wrote: >>> Hi Mauro, >>> >>> Thank you very much for your help - it's an enormous help to me to >>> understand why I was getting so confused trying to find Yocto >>> recipies for this board. >>> >>> I've put some links to our conservation work and the repository for >>> WildCamera below. >>> >>> We could use a different i.MX 8M Plus board - a board that has good >>> Yocto support and good mainline Linux support would be ideal for us >>> so if anyone can suggest one that would be very valuable. (We plan to >>> try to keep independent of any one hardware supplier and keep an >>> element of competition between suppliers.) >> >> Then you could use one i.MX8MP machine among the ones listed in meta- >> freescale (they are all from NXP and are demoboard, so perhaps they >> are too big for your product) or the ones listed in meta- >> freescale-3rdparty layer (Nitrogen 8MP or Olimex i.MX8MP EVB AFAIK). >> >> These machines should give you a plain and pleasant out-of-the-box >> Yocto experience :-) >> >>> >>>> Moreover Debix does not provide a meta layer for its boards. >>> >>> Yes - that's what we found as well - the Debix instructions describe >>> manually modifying the source files which to me seemed strange - >>> modifications like these would normally be done in a new Yocto layer? >>> >>> My background is as a climbing arborist and user space (Python, .Net, >>> SQL) software engineer so my understanding of embedded systems is >>> inadequate - if folk can suggest anything that I should study to >>> improve my understanding please let me know. >>> >> >> Embedded systems topics are many, in general you can start from a good >> book for each topic (e.g. Packt and NoStarch editors have many useful >> books). >> >>> There's more about our conservation work here >>> >>> https://new-homes-for-old-friends.cairnwater.com/ >>> >>> And here in English, German and French >>> >>> https://new-homes-for-old-friends.cairnwater.com/quick-summary-new- >>> homes-for-old-friends-switzerland/ >>> >>> And analysis for the new open source wildlife camera here: >>> >>> https://github.com/William-Robert-Robertson/WildCamera >>> >> >> Congrats for your activities and good luck for this new project! >> >> Regards >> -- >> Mauro S. >> >>> Will >>> >>> On 2025-05-09 09:12, Mauro S. wrote: >>>> On 08/05/25 17:07, Will Robertson wrote: >>>>> Hi, >>>>> >>>>> I was wondering if anyone had any advice on the simplest way for me >>>>> to use Yocto to build an image using mainline Linux or NXP Linux >>>>> for the Polyhex Debix Model A i.MX M8 Plus board or for the Debix >>>>> SoM A i.MX 8M Plus board with SoM A I/O board? >>>>> >>>>> For my work in conservation of endangered European dormouse species >>>>> I'm working on a new open source wildlife camera system so I'll >>>>> have to learn how to include kernel drivers for image sensors in >>>>> the device tree. I'm not a professional kernel driver engineer so >>>>> if anyone can recommend anything that I could study to help with >>>>> this it would also be very valuable. >>>>> >>>>> We're looking at the i.MX 8M Plus because of it's very strong ISP >>>>> (Image Signal Processor), two MIPI CSI-2 ports and NXP's strong >>>>> commitment to open source. The Polyhex Debix boards seem to provide >>>>> a good way for us to test prototypes in the field before designing >>>>> our own carrier board for an i.MX 8M Plus SoM. >>>>> >>>>> As far as I can work out, the Polyhex Debix boards stay fairly >>>>> close to the design of the two official NXP evaluation boards >>>>> 8MPLUSLPD4- EVK and 8MPLUSLPD4-PEVK: >>>>> >>>>> https://www.nxp.com/design/design-center/development-boards-and- >>>>> designs/8MPLUSLPD4-EVK >>>>> >>>>> https://www.nxp.com/design/design-center/development-boards-and- >>>>> designs/8MPLUSLPD4-PEVK >>>>> >>>>> I was able to find these Yocto DTS and DTSI files for the boards: >>>>> >>>>> for Debix Model A SBC >>>>> https://git.yoctoproject.org/linux-yocto-dev/plain/arch/arm64/boot/ >>>>> dts/ freescale/imx8mp-debix-model-a.dts >>>>> for Debix Model A SoM I/O Board >>>>> https://git.yoctoproject.org/linux-yocto-dev/plain/arch/arm64/boot/ >>>>> dts/ freescale/imx8mp-debix-som-a-bmb-08.dts >>>>> and DTSI for Debix Model A SoM >>>>> https://git.yoctoproject.org/linux-yocto-dev/plain/arch/arm64/boot/ >>>>> dts/ freescale/imx8mp-debix-som-a.dtsi >>>>> >>>>> Searching for the i.MX 8M Plus under OpenEmbedded I could only find >>>>> DDR4 and LPDDR4 boards (of which I think only the LPDDR4 board is >>>>> in use): >>>>> >>>>> https://git.yoctoproject.org/meta-freescale/tree/conf/machine/ >>>>> imx8mp- ddr4-evk.conf?h=master >>>>> >>>>> https://git.yoctoproject.org/meta-freescale/tree/conf/machine/ >>>>> imx8mp- lpddr4-evk.conf?h=master >>>>> >>>>> these both build on imx8mp-evk.inc >>>>> >>>>> require include/imx8mp-evk.inc >>>>> >>>>> which I think is the official i.MX 8M Plus evaluation board. >>>>> >>>>> Debix give some guidance on using Yocto to build images for their >>>>> boards here https://github.com/debix-tech/uboot but I thought that >>>>> it would be better for me to take a cleaner approach. >>>>> >>>>> Thank you very much for your help, >>>>> >>>>> Will >>>>> >>>> >>>> Hi Will, >>>> >>>> at the moment Debix boards seem not supported "out of the box" in >>>> mainline meta layers: this means that there are some pieces needed >>>> for their support but some works still be done to add missing parts >>>> and gather them together. Moreover Debix does not provide a meta >>>> layer for its boards. >>>> >>>> To kickstart your project I would suggest you follow the >>>> instructions from Debix, at least to do first tests and to take >>>> control over the board and the develop process: this helps you focus >>>> on the imaging part without losing time to bringup the board. >>>> >>>> Later you can return on the BSP part (i.e. u-boot and kernel) and >>>> maybe try to implement missing parts and gather them all in a meta >>>> layer that allows to build the Debis BSP inside Yocto. >>>> >>>> Regards >