<?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: How do I build the 4.1.15 kernel with FrameBuffer support?</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/How-do-I-build-the-4-1-15-kernel-with-FrameBuffer-support/m-p/602259#M90645</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/gusarambula"&gt;gusarambula&lt;/A&gt;‌ - Thanks for your reply. I was indeed attempting to build on the 4.1.15_1.0.0_ga branch, and previously building the 3.14.38 kernel both in and without OpenEmbedded. The OpenEmbedded build takes more space and time so I try to avoid it for initial development. Your answer, however, did lead me to a thought which solved the problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It turns out that the answer to my question is that imx_v6_v7_defconfig doesn't work correctly with the Linux 4.1.15 kernel. When I built with OpenEmbedded the kernel succeeded but checking the logs for the kernel it was obvious what the difference was:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;run.do_copy_defconfig.31634:&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;cp&lt;/STRONG&gt; /home/mike/sandbox/nxp_linux_4.15/build_k4_linux/tmp/work/imx6dlsabresd-poky-linux-gnueabi/linux-imx/4.1.15-r0/git/arch/arm/configs/&lt;STRONG&gt;imx_v7_defconfig&lt;/STRONG&gt; /home/mike/sandbox/nxp_linux_4.15/build_k4_linux/tmp/work/imx6dlsabresd-poky-linux-gnueabi/linux-imx/4.1.15-r0/build/&lt;STRONG&gt;.config&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;imx_v6_v7_defconfig, which I was using for a imx6dlsabresd build on the 3.14.38 kernel is no longer used, it is now replaced with the imx_v7_defconfig. When I replace my build steps with the same set but this different defconfig everything works.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 10 Jan 2017 13:47:45 GMT</pubDate>
    <dc:creator>michaelworster</dc:creator>
    <dc:date>2017-01-10T13:47:45Z</dc:date>
    <item>
      <title>How do I build the 4.1.15 kernel with FrameBuffer support?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-do-I-build-the-4-1-15-kernel-with-FrameBuffer-support/m-p/602257#M90643</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I was using the latest &lt;A href="http://git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/log/?h=imx_4.1.15_1.0.0_ga"&gt;imx_4.1.15_1.0.0_ga kernel branch&lt;/A&gt; and attempting to do a build using the imx_v6_v7_defconfig. Once I attempted to build the zImage target the build broke due to missing FB references. Below is a snippet of the process I used to get the code and build the defconfig/kernel&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;mike@mike-VirtualBox:~/fsl_test/kernel4$ git clone git://git.freescale.com/imx/linux-2.6-imx.git --branch imx_4.1.15_1.0.0_ga&lt;/P&gt;&lt;P&gt;mike@mike-VirtualBox:~/fsl_test/kernel4$ make O=/home/mike/fsl_test/k4_output/ imx_v6_v7_defconfig&lt;BR /&gt;make[1]: Entering directory `/home/mike/fsl_test/k4_output'&lt;BR /&gt;&amp;nbsp; HOSTCC&amp;nbsp; scripts/basic/fixdep&lt;BR /&gt;&amp;nbsp; GEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ./Makefile&lt;BR /&gt;&amp;nbsp; HOSTCC&amp;nbsp; scripts/kconfig/conf.o&lt;BR /&gt;&amp;nbsp; SHIPPED scripts/kconfig/zconf.tab.c&lt;BR /&gt;&amp;nbsp; SHIPPED scripts/kconfig/zconf.lex.c&lt;BR /&gt;&amp;nbsp; SHIPPED scripts/kconfig/zconf.hash.c&lt;BR /&gt;&amp;nbsp; HOSTCC&amp;nbsp; scripts/kconfig/zconf.tab.o&lt;BR /&gt;&amp;nbsp; HOSTLD&amp;nbsp; scripts/kconfig/conf&lt;BR /&gt;#&lt;BR /&gt;# configuration written to .config&lt;BR /&gt;#&lt;BR /&gt;make[1]: Leaving directory `/home/mike/fsl_test/k4_output'&lt;BR /&gt;&lt;A href="mailto:mike@mike-VirtualBox:~/fsl_test/kernel4$"&gt;mike@mike-VirtualBox:~/fsl_test/kernel4$&lt;/A&gt; make O=/home/mike/fsl_test/k4_output/ zImage LOADADDR=0x10008000&lt;BR /&gt;make[1]: Entering directory `/home/mike/fsl_test/k4_output'&lt;BR /&gt;&amp;nbsp; GEN&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ./Makefile&lt;BR /&gt;scripts/kconfig/conf&amp;nbsp; --silentoldconfig Kconfig&lt;BR /&gt;make[1]: Leaving directory `/home/mike/fsl_test/k4_output'&lt;BR /&gt;make[1]: Entering directory `/home/mike/fsl_test/k4_output'&lt;BR /&gt;&amp;nbsp; CHK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; include/config/kernel.release&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&amp;nbsp; UPD&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; include/generated/compile.h&lt;BR /&gt;&amp;nbsp; CC&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; init/version.o&lt;BR /&gt;&amp;nbsp; LD&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; init/built-in.o&lt;/P&gt;&lt;P&gt;drivers/built-in.o: In function `mxsfb_probe':&lt;BR /&gt;:(.text+0x45f4c): undefined reference to `mxc_dispdrv_gethandle'&lt;BR /&gt;make[1]: *** [vmlinux] Error 1&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've found that the missing reference comes from drivers/video/fbdev/mxc/mxc_dispdrv.c and can be added in by including:&lt;/P&gt;&lt;P&gt;CONFIG_FB_MXC_SYNC_PANEL=y&lt;/P&gt;&lt;P&gt;to the defconfig, once that is in place there are additional build issues that show up:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;drivers/built-in.o: In function `mxcfb_blank':&lt;BR /&gt;:(.text+0x43674): undefined reference to `ipu_disable_channel'&lt;BR /&gt;:(.text+0x43688): undefined reference to `ipu_uninit_sync_panel'&lt;BR /&gt;:(.text+0x43694): undefined reference to `ipu_uninit_channel'&lt;BR /&gt;...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Which can be fixed by adding in:&lt;BR /&gt;CONFIG_MXC_IPU_V3=y&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Once that is added there is a new problem, as both drivers/mxc/ipu3/ipu_capture.c and drivers/gpu/ipu-v3/ipu-csi.c include the same "exports" and thus there is a multiple definition issue:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;drivers/mxc/built-in.o: In function `ipu_csi_init_interface':&lt;BR /&gt;:(.text+0x12f18): multiple definition of `ipu_csi_init_interface'&lt;BR /&gt;drivers/gpu/built-in.o::(.text+0x3a4fc): first defined here&lt;BR /&gt;drivers/mxc/built-in.o:(___ksymtab+ipu_csi_init_interface+0x0): multiple definition of `__ksymtab_ipu_csi_init_interface'&lt;BR /&gt;drivers/gpu/built-in.o:(___ksymtab_gpl+ipu_csi_init_interface+0x0): first defined here&lt;BR /&gt;drivers/mxc/built-in.o: In function `__crc_ipu_csi_init_interface':&lt;/P&gt;&lt;P&gt;... (A number of these)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(One example:)&lt;/P&gt;&lt;P&gt;drivers/mxc/ipu3/ipu_capture.c:ipu_csi_init_interface(struct ipu_soc *ipu, uint16_t width, uint16_t height,&lt;BR /&gt;drivers/mxc/ipu3/ipu_capture.c:EXPORT_SYMBOL(ipu_csi_init_interface);&lt;BR /&gt;drivers/gpu/ipu-v3/ipu-csi.c:int ipu_csi_init_interface(struct ipu_csi *csi,&lt;BR /&gt;drivers/gpu/ipu-v3/ipu-csi.c:EXPORT_SYMBOL_GPL(ipu_csi_init_interface);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So my question becomes:&lt;/P&gt;&lt;P&gt;How can I do a standard Linux Kernel 4.1.15 build with the imx_v6_v7_defconfig which includes Framebuffer support? Seems either I'm missing something, or there is something wrong with this config.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 09 Jan 2017 16:40:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-do-I-build-the-4-1-15-kernel-with-FrameBuffer-support/m-p/602257#M90643</guid>
      <dc:creator>michaelworster</dc:creator>
      <dc:date>2017-01-09T16:40:59Z</dc:date>
    </item>
    <item>
      <title>Re: How do I build the 4.1.15 kernel with FrameBuffer support?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-do-I-build-the-4-1-15-kernel-with-FrameBuffer-support/m-p/602258#M90644</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Michael Worster,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The easiest way to achieve this would be trough Yocto.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have you used the 4.1.15_1.0.0_ga BSP Release? You can find the documentation on the link below (please note that you may need to login in order to download this file).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.nxp.com/webapp/Download?colCode=L4.1.15_1.0.0_LINUX_DOCS&amp;amp;Parent_nodeId=1337637154535695831062&amp;amp;Parent_pageType=product&amp;amp;Parent_nodeId=1337637154535695831062&amp;amp;Parent_pageType=product"&gt;https://www.nxp.com/webapp/Download?colCode=L4.1.15_1.0.0_LINUX_DOCS&amp;amp;Parent_nodeId=1337637154535695831062&amp;amp;Parent_pageType=product&amp;amp;Parent_nodeId=1337637154535695831062&amp;amp;Parent_pageType=product&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please look at the Yocto Project User’s Guide to install the required packages to run Yocto.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;On Step 5 you can see how to setup for your board and also for the distro you would like to use. In your case fsl-imx-fb, which would be frame buffer graphics with no X11 or Wayland.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you wish to build only the kernel you may also do to from within Yocto using the linux-imx recipe:&lt;/P&gt;&lt;P&gt;$ bitbake linux-imx&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope this information helps!&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 09 Jan 2017 20:40:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-do-I-build-the-4-1-15-kernel-with-FrameBuffer-support/m-p/602258#M90644</guid>
      <dc:creator>gusarambula</dc:creator>
      <dc:date>2017-01-09T20:40:11Z</dc:date>
    </item>
    <item>
      <title>Re: How do I build the 4.1.15 kernel with FrameBuffer support?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/How-do-I-build-the-4-1-15-kernel-with-FrameBuffer-support/m-p/602259#M90645</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/gusarambula"&gt;gusarambula&lt;/A&gt;‌ - Thanks for your reply. I was indeed attempting to build on the 4.1.15_1.0.0_ga branch, and previously building the 3.14.38 kernel both in and without OpenEmbedded. The OpenEmbedded build takes more space and time so I try to avoid it for initial development. Your answer, however, did lead me to a thought which solved the problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It turns out that the answer to my question is that imx_v6_v7_defconfig doesn't work correctly with the Linux 4.1.15 kernel. When I built with OpenEmbedded the kernel succeeded but checking the logs for the kernel it was obvious what the difference was:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;run.do_copy_defconfig.31634:&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;cp&lt;/STRONG&gt; /home/mike/sandbox/nxp_linux_4.15/build_k4_linux/tmp/work/imx6dlsabresd-poky-linux-gnueabi/linux-imx/4.1.15-r0/git/arch/arm/configs/&lt;STRONG&gt;imx_v7_defconfig&lt;/STRONG&gt; /home/mike/sandbox/nxp_linux_4.15/build_k4_linux/tmp/work/imx6dlsabresd-poky-linux-gnueabi/linux-imx/4.1.15-r0/build/&lt;STRONG&gt;.config&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;imx_v6_v7_defconfig, which I was using for a imx6dlsabresd build on the 3.14.38 kernel is no longer used, it is now replaced with the imx_v7_defconfig. When I replace my build steps with the same set but this different defconfig everything works.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 10 Jan 2017 13:47:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/How-do-I-build-the-4-1-15-kernel-with-FrameBuffer-support/m-p/602259#M90645</guid>
      <dc:creator>michaelworster</dc:creator>
      <dc:date>2017-01-10T13:47:45Z</dc:date>
    </item>
  </channel>
</rss>

