<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>i.MX ProcessorsのトピックRe: i.MX8M Plus Camera Porting Configurations</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/i-MX8M-Plus-Camera-Porting-Configurations/m-p/1352102#M181198</link>
    <description>&lt;P&gt;Posting updates as promised: I found that the editable versions of the .dtb files are .dts format (at least, I am fairly confident this is the case), and are located at &lt;I&gt;imx-yocto-bsp/&amp;lt;your_build_dir&amp;gt;/tmp/work-shared/imx8mpevk/kernel-source/arch/arm64/boot/dts/freescale/&lt;/I&gt;. I modified one of the files for a supported camera that makes use of the ISP, compiled again using bitbake, and I am now flashing the new image onto my SD card.&lt;/P&gt;&lt;P&gt;Once I boot back in, I will still need to edit at least isp_start.sh to point to my new .dtb file, and I am still unsure if some modification will be required to the as-yet unviewable isp_media_server.&lt;/P&gt;</description>
    <pubDate>Thu, 07 Oct 2021 18:53:41 GMT</pubDate>
    <dc:creator>Cbrobson</dc:creator>
    <dc:date>2021-10-07T18:53:41Z</dc:date>
    <item>
      <title>i.MX8M Plus Camera Porting Configurations</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX8M-Plus-Camera-Porting-Configurations/m-p/1351342#M181149</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I have been working on porting a generic MIPI CSI-2 camera for use with the i.MX8M Plus. Thanks in large part to these previous posts by &lt;A href="https://community.nxp.com/t5/i-MX-Processors/IMX8M-Plus-Camera-Integration-and-using-ISP/m-p/1260702#M172463" target="_self"&gt;jgsandom&lt;/A&gt; and &lt;A href="https://community.nxp.com/t5/i-MX-Processors/ISP-working-in-i-MX8M-Plus/m-p/1246838/page/2" target="_self"&gt;kunal_003&lt;/A&gt;, I have made some significant progress recently. I downloaded and built isp-imx-4.2.2.11.0 package, and I have now modified the requisite source code to generate my own .drv and .xml files specific to our desired sensor using ./build-all-isp.sh.&lt;/P&gt;&lt;P&gt;I am attempting to deploy and test my updated drivers, but I find am not quite as well-versed in Linux and Yocto Project development, so some of the discussion in those previous posts I mentioned is now going over my head.&lt;/P&gt;&lt;P&gt;I see that the ISP is setup by three commands: start_isp.sh, run.sh, and isp_media_server. I can also see that these will require some modification, but I am having some difficulty in figuring out exactly what those changes should be for start_isp.sh and isp_media_server.&lt;/P&gt;&lt;P&gt;For start_isp.sh, I will need to point to the correct .dtb file, but I am not clear on how to find/create the correct device tree.&lt;/P&gt;&lt;P&gt;For isp_media_server, I cannot directly edit the file to see precisely what should be changed.&lt;/P&gt;&lt;P&gt;Any advice on my next steps here would be much appreciated! I will post updates if I make any significant progress independently as well.&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;Cody Robson&lt;/P&gt;</description>
      <pubDate>Wed, 06 Oct 2021 17:06:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX8M-Plus-Camera-Porting-Configurations/m-p/1351342#M181149</guid>
      <dc:creator>Cbrobson</dc:creator>
      <dc:date>2021-10-06T17:06:06Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX8M Plus Camera Porting Configurations</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX8M-Plus-Camera-Porting-Configurations/m-p/1352102#M181198</link>
      <description>&lt;P&gt;Posting updates as promised: I found that the editable versions of the .dtb files are .dts format (at least, I am fairly confident this is the case), and are located at &lt;I&gt;imx-yocto-bsp/&amp;lt;your_build_dir&amp;gt;/tmp/work-shared/imx8mpevk/kernel-source/arch/arm64/boot/dts/freescale/&lt;/I&gt;. I modified one of the files for a supported camera that makes use of the ISP, compiled again using bitbake, and I am now flashing the new image onto my SD card.&lt;/P&gt;&lt;P&gt;Once I boot back in, I will still need to edit at least isp_start.sh to point to my new .dtb file, and I am still unsure if some modification will be required to the as-yet unviewable isp_media_server.&lt;/P&gt;</description>
      <pubDate>Thu, 07 Oct 2021 18:53:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX8M-Plus-Camera-Porting-Configurations/m-p/1352102#M181198</guid>
      <dc:creator>Cbrobson</dc:creator>
      <dc:date>2021-10-07T18:53:41Z</dc:date>
    </item>
    <item>
      <title>Re: i.MX8M Plus Camera Porting Configurations</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/i-MX8M-Plus-Camera-Porting-Configurations/m-p/1352226#M181222</link>
      <description>&lt;P&gt;Hi &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/190608"&gt;@Cbrobson&lt;/a&gt; ,&lt;/P&gt;&lt;P&gt;Below is some of my experience :&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;For start_isp.sh, I will need to point to the correct .dtb file, but I am not clear on how to find/create the correct device tree.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;This script detects number of camera sensor nodes in the used .dtb (or compiled .dts, selected by &lt;EM&gt;&lt;STRONG&gt;fdt_file&lt;/STRONG&gt;&lt;/EM&gt; variable in u-Boot) and will launch single sensor mode or dual sensors mode based on that number :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;NR_DEVICE_TREE_BASLER=$(grep basler-camera-vvcam /sys/firmware/devicetree/base/soc@0/*/i2c@*/*/compatible -l | wc -l 2&amp;gt; /dev/null)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;By default, it looks for '&lt;EM&gt;basler-camera-vvcam&lt;/EM&gt;' node name but you can adapt for the custom sensor node name in the .dts in your kernel. It is an automatically way to start the ISP stuff within a service such as &lt;STRONG&gt;systemd&lt;/STRONG&gt;.&amp;nbsp;&lt;/P&gt;&lt;P&gt;From Yocto source (isp-imx_4.2.2.11.0.bb), it seems that the &lt;EM&gt;&lt;STRONG&gt;start_isp.sh&lt;/STRONG&gt;&lt;/EM&gt; script is copied and installed as-is from the downloaded isp-imx binary (&lt;A href="https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/isp-imx-4.2.2.11.0.bin" target="_blank" rel="noopener"&gt;https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/isp-imx-4.2.2.11.0.bin&lt;/A&gt; for example) :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;$ vi &amp;lt;yocto-bsp&amp;gt;/sources/meta-imx/meta-bsp/recipes-bsp/isp-imx/isp-imx_4.2.2.11.0.bb
...
do_install() {
    install -d ${D}/${libdir}
    install -d ${D}/${includedir}
    install -d ${D}/opt/imx8-isp/bin

    cp -r ${WORKDIR}/build/generated/release/bin/*_test ${D}/opt/imx8-isp/bin
    cp -r ${WORKDIR}/build/generated/release/bin/*2775* ${D}/opt/imx8-isp/bin
    cp -r ${WORKDIR}/build/generated/release/bin/isp_media_server ${D}/opt/imx8-isp/bin
    cp -r ${WORKDIR}/build/generated/release/bin/vvext ${D}/opt/imx8-isp/bin
    cp -r ${WORKDIR}/${PN}-${PV}/dewarp/dewarp_config/ ${D}/opt/imx8-isp/bin
    cp -r ${WORKDIR}/build/generated/release/lib/*.so* ${D}/${libdir}
    cp -r ${WORKDIR}/build/generated/release/include/* ${D}/${includedir}

    cp ${WORKDIR}/${PN}-${PV}/imx/run.sh ${D}/opt/imx8-isp/bin
    cp ${WORKDIR}/${PN}-${PV}/imx/start_isp.sh ${D}/opt/imx8-isp/bin

    chmod +x ${D}/opt/imx8-isp/bin/run.sh
    chmod +x ${D}/opt/imx8-isp/bin/start_isp.sh

    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
      install -d ${D}${systemd_system_unitdir}
      install -m 0644 ${WORKDIR}/${PN}-${PV}/imx/imx8-isp.service ${D}${systemd_system_unitdir}
    fi
}

...&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Then you might need to modify or to append to the above &lt;EM&gt;isp-imx_4.2.2.11.0.bb&lt;/EM&gt; to apply some patch of your sensor node's name rather than '&lt;EM&gt;basler-camera-vvcam&lt;/EM&gt;' in order to avoid modifying it in your running system.&lt;/P&gt;&lt;P&gt;Also, you can remove the &lt;EM&gt;&lt;STRONG&gt;start_isp.sh&lt;/STRONG&gt;&lt;/EM&gt; script from your system and&amp;nbsp; launch the script &lt;STRONG&gt;./run.sh&lt;/STRONG&gt; manually :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;./run.sh -c &amp;lt;your-sensor&amp;gt; -lm&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE&gt;&lt;P&gt;For isp_media_server, I cannot directly edit the file to see precisely what should be changed.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;According to my opinion, you do not need to modify this &lt;STRONG&gt;isp_media_server&lt;/STRONG&gt;, rather you need to modify your sensor driver in &lt;EM&gt;&amp;lt;isp-imx&amp;gt;/units/isi/drv/&amp;lt;your-sensor&amp;gt;/*&lt;/EM&gt; that will be used to generate &lt;EM&gt;&lt;STRONG&gt;&amp;lt;your-sensor&amp;gt;.drv&lt;/STRONG&gt;&lt;/EM&gt; which then in turn will be loaded and used by the&amp;nbsp; &lt;STRONG&gt;isp_media_server&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;Br,&lt;/P&gt;</description>
      <pubDate>Fri, 08 Oct 2021 02:13:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/i-MX8M-Plus-Camera-Porting-Configurations/m-p/1352226#M181222</guid>
      <dc:creator>khang_letruong</dc:creator>
      <dc:date>2021-10-08T02:13:46Z</dc:date>
    </item>
  </channel>
</rss>

