<?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>topic Re: linux-imx-lf-6.6.3-1.0.0 compilation error in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/linux-imx-lf-6-6-3-1-0-0-compilation-error/m-p/1864657#M223655</link>
    <description>&lt;P&gt;Hi Joseph,&lt;/P&gt;&lt;P&gt;Thanks for your reply.&lt;/P&gt;&lt;P&gt;Unfortunately there is probably more involve for the need to compile with option "CONFIG_SOC_IMX6SX=y" together with "CONFIG_SOC_IMX6UL=y".&lt;/P&gt;&lt;P&gt;Because the kernel I create using "CONFIG_SOC_IMX6UL=y" and "CONFIG_SOC_IMX6SX is not set", generate the following kernel message every time ~23sec after the kernel started:&lt;/P&gt;&lt;P&gt;----------------------------------------&lt;/P&gt;&lt;P&gt;[ 23.368404] 8&amp;lt;--- cut here ---&lt;BR /&gt;[ 23.371666] Unable to handle kernel NULL pointer dereference at virtual address 00000000 when write&lt;BR /&gt;[ 23.380918] [00000000] *pgd=00000000&lt;BR /&gt;[ 23.384671] Internal error: Oops: 805 [#1] PREEMPT ARM&lt;BR /&gt;[ 23.389958] Modules linked in: micrel mma8452 mag3110 ci_hdrc_imx usbmisc_imx ci_hdrc imx_sdma evbug secvio error fev&lt;BR /&gt;[ 23.406777] CPU: 0 PID: 8 Comm: kworker/0:0 Not tainted 6.6.3 #14&lt;BR /&gt;[ 23.413045] Hardware name: Freescale i.MX6 Ultralite (Device Tree)&lt;BR /&gt;[ 23.419368] Workqueue: events reduce_bus_freq_handler&lt;BR /&gt;[ 23.424669] PC is at 0xf49040f0&lt;BR /&gt;[ 23.427939] LR is at update_ddr_freq_imx6_up+0xa0/0xe8&lt;BR /&gt;[ 23.433243] pc : [&amp;lt;f49040f0&amp;gt;] lr : [&amp;lt;80117d5c&amp;gt;] psr: 60000093&lt;BR /&gt;[ 23.439655] sp : a0839f08 ip : 0000000c fp : 61c88647&lt;BR /&gt;[ 23.445012] r10: 84005005 r9 : 80bfdff4 r8 : 80bff450&lt;BR /&gt;[ 23.450369] r7 : 80bff454 r6 : 80004059 r5 : 016e3600 r4 : 80bff4e8&lt;BR /&gt;[ 23.457046] r3 : f4904018 r2 : f4904144 r1 : f49040d4 r0 : 00000000&lt;BR /&gt;[ 23.463726] Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment none&lt;BR /&gt;[ 23.471126] Control: 10c53c7d Table: 84340059 DAC: 00000051&lt;BR /&gt;[ 23.476997] Register r0 information: NULL pointer&lt;BR /&gt;[ 23.481872] Register r1 information: 0-page vmalloc region starting at 0xf4900000 allocated at iotable_init+0x0/0xe8&lt;BR /&gt;[ 23.492684] Register r2 information: 0-page vmalloc region starting at 0xf4900000 allocated at iotable_init+0x0/0xe8&lt;BR /&gt;[ 23.503468] Register r3 information: 0-page vmalloc region starting at 0xf4900000 allocated at iotable_init+0x0/0xe8&lt;BR /&gt;[ 23.514243] Register r4 information: non-slab/vmalloc memory&lt;BR /&gt;[ 23.520071] Register r5 information: non-paged memory&lt;BR /&gt;[ 23.525263] Register r6 information: non-slab/vmalloc memory&lt;BR /&gt;[ 23.531075] Register r7 information: non-slab/vmalloc memory&lt;BR /&gt;[ 23.536883] Register r8 information: non-slab/vmalloc memory&lt;BR /&gt;[ 23.542689] Register r9 information: non-slab/vmalloc memory&lt;BR /&gt;[ 23.548497] Register r10 information: slab maple_node start 84005000 pointer offset 5 size 256&lt;BR /&gt;[ 23.557436] Register r11 information: non-paged memory&lt;BR /&gt;[ 23.562721] Register r12 information: non-paged memory&lt;BR /&gt;[ 23.568002] Process kworker/0:0 (pid: 8, stack limit = 0xa976f449)&lt;BR /&gt;[ 23.574353] Stack: (0xa0839f08 to 0xa083a000)&lt;BR /&gt;[ 23.578870] 9f00: 80bff3a8 80bff2fc 8404f640 80116b50 00000000 00000000&lt;BR /&gt;[ 23.587247] 9f20: 80bff3a8 84005000 8404f640 80117170 84015d00 80132994 84015d00 84015d2c&lt;BR /&gt;[ 23.595622] 9f40: 80b0cb18 84015d00 8404f640 80b0cafc 80b0cafc 80b0cb18 84015d2c 80b0cb54&lt;BR /&gt;[ 23.603994] 9f60: 80bd6f20 8013302c 00000001 8404f640 84038600 84038c00 80132d80 84015d00&lt;BR /&gt;[ 23.612363] 9f80: a081dec0 00000000 00000000 80138b3c 84038600 80138a4c 00000000 00000000&lt;BR /&gt;[ 23.620728] 9fa0: 00000000 00000000 00000000 8010016c 00000000 00000000 00000000 00000000&lt;BR /&gt;[ 23.629094] 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000&lt;BR /&gt;[ 23.637458] 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000&lt;BR /&gt;[ 23.645861] update_ddr_freq_imx6_up from reduce_bus_freq+0x168/0x258&lt;BR /&gt;[ 23.652530] reduce_bus_freq from reduce_bus_freq_handler+0x20/0x44&lt;BR /&gt;[ 23.659003] reduce_bus_freq_handler from process_scheduled_works+0x198/0x260&lt;BR /&gt;[ 23.666397] process_scheduled_works from worker_thread+0x2ac/0x324&lt;BR /&gt;[ 23.672918] worker_thread from kthread+0xf0/0xfc&lt;BR /&gt;[ 23.677864] kthread from ret_from_fork+0x14/0x28&lt;BR /&gt;[ 23.682773] Exception stack(0xa0839fb0 to 0xa0839ff8)&lt;BR /&gt;[ 23.687972] 9fa0: 00000000 00000000 00000000 00000000&lt;BR /&gt;[ 23.696338] 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000&lt;BR /&gt;[ 23.704698] 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000&lt;BR /&gt;[ 23.711489] Code: 676b52f3 00000010 b66d0b63 0000001c (04008032)&lt;BR /&gt;[ 23.717737] ---[ end trace 0000000000000000 ]---&lt;BR /&gt;[ 23.722477] note: kworker/0:0[8] exited with irqs disabled&lt;BR /&gt;[ 64.494279] cfg80211: failed to load regulatory.db&lt;/P&gt;&lt;P&gt;----------------------------------------&lt;/P&gt;&lt;P&gt;The kernel doesn't hang but, it seems that something is not working right.&lt;/P&gt;&lt;P&gt;I think I will stick with "CONFIG_SOC_IMX6SX=y" for now as it is a cleaner solution and the kernel seems to be stable.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for your support.&lt;/P&gt;&lt;P&gt;Have a nice day.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Emmanuel&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Mon, 13 May 2024 17:42:40 GMT</pubDate>
    <dc:creator>manux</dc:creator>
    <dc:date>2024-05-13T17:42:40Z</dc:date>
    <item>
      <title>linux-imx-lf-6.6.3-1.0.0 compilation error</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/linux-imx-lf-6-6-3-1-0-0-compilation-error/m-p/1863661#M223578</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;When trying to strip down kernel options to reduce the size of the generated zImage, I came across the following compilation errors:&lt;/P&gt;&lt;P&gt;----------------------------------------&lt;/P&gt;&lt;P&gt;/home/manu/Develop/IOT-AP-CTRL/OS/Sources/buildroot-20240201_iMX6ULLevk-20240501_manu/output/host/bin/arm-buildroot-linux-uclibcgnueabihf-ld: arch/arm/mach-imx/busfreq_ddr3.o: in function `init_mmdc_ddr3_settings_imx6_up':&lt;BR /&gt;busfreq_ddr3.c:(.text+0x598): undefined reference to `imx6_up_ddr3_freq_change_end'&lt;BR /&gt;/home/manu/Develop/IOT-AP-CTRL/OS/Sources/buildroot-20240201_iMX6ULLevk-20240501_manu/output/host/bin/arm-buildroot-linux-uclibcgnueabihf-ld: busfreq_ddr3.c:(.text+0x59c): undefined reference to `imx6_up_ddr3_freq_change'&lt;BR /&gt;/home/manu/Develop/IOT-AP-CTRL/OS/Sources/buildroot-20240201_iMX6ULLevk-20240501_manu/output/host/bin/arm-buildroot-linux-uclibcgnueabihf-ld: busfreq_ddr3.c:(.text+0x5a0): undefined reference to `imx6_up_ddr3_freq_change_start'&lt;BR /&gt;/home/manu/Develop/IOT-AP-CTRL/OS/Sources/buildroot-20240201_iMX6ULLevk-20240501_manu/output/host/bin/arm-buildroot-linux-uclibcgnueabihf-ld: arch/arm/mach-imx/busfreq_lpddr2.o: in function `init_mmdc_lpddr2_settings':&lt;BR /&gt;busfreq_lpddr2.c:(.text+0x18c): undefined reference to `imx6_up_lpddr2_freq_change'&lt;BR /&gt;make[3]: *** [scripts/Makefile.vmlinux:37: vmlinux] Error 1&lt;/P&gt;&lt;P&gt;----------------------------------------&lt;/P&gt;&lt;P&gt;I tracked the problem down to making the following changes in the kernel ".config":&lt;/P&gt;&lt;P&gt;----------------------------------------&lt;/P&gt;&lt;P&gt;# CONFIG_ARCH_MULTIPLATFORM is not set&lt;/P&gt;&lt;P&gt;#&lt;BR /&gt;# Cortex-A platforms&lt;BR /&gt;#&lt;BR /&gt;# CONFIG_SOC_IMX50 is not set&lt;BR /&gt;# CONFIG_SOC_IMX51 is not set&lt;BR /&gt;# CONFIG_SOC_IMX53 is not set&lt;BR /&gt;CONFIG_SOC_IMX6=y&lt;BR /&gt;# CONFIG_SOC_IMX6Q is not set&lt;BR /&gt;# CONFIG_SOC_IMX6SL is not set&lt;BR /&gt;# CONFIG_SOC_IMX6SLL is not set&lt;BR /&gt;# CONFIG_SOC_IMX6SX is not set&lt;BR /&gt;CONFIG_SOC_IMX6UL=y&lt;BR /&gt;# CONFIG_SOC_LS1021A is not set&lt;/P&gt;&lt;P&gt;----------------------------------------&lt;/P&gt;&lt;P&gt;The problem goes away just by re-enabling the "CONFIG_SOC_IMX6SX=y"&lt;/P&gt;&lt;P&gt;Why compiling for a "IMX6UL" requires the "IMX6SX" to be enabled too ?&lt;/P&gt;&lt;P&gt;I don't need the kernel to be compatible across multi-platform.&lt;/P&gt;&lt;P&gt;My application uses a "iMX6ULL" with a small QSPI flash as bootable device and I am trying to make the smallest kernel to provide as much space as possible for the "initrd" .&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;After further digging I found the following in "arch/arm/mach-imx/common.c"&lt;/P&gt;&lt;P&gt;----------------------------------------&lt;/P&gt;&lt;P&gt;#if !defined(CONFIG_SOC_IMX6SX) &amp;amp;&amp;amp; !defined(CONFIG_SOC_IMX6UL)&lt;BR /&gt;u32 imx6_up_ddr3_freq_change_start, imx6_up_ddr3_freq_change_end;&lt;BR /&gt;struct imx6_busfreq_info {&lt;BR /&gt;} __aligned(8);&lt;BR /&gt;void imx6_up_ddr3_freq_change(struct imx6_busfreq_info *busfreq_info) {}&lt;BR /&gt;void imx6_up_lpddr2_freq_change(u32 freq, int bus_freq_mode) {}&lt;BR /&gt;#endif&lt;/P&gt;&lt;P&gt;----------------------------------------&lt;/P&gt;&lt;P&gt;Changing the "&amp;amp;&amp;amp;" in the code above by a "||" allows the compile the kernel with the "CONFIG_SOC_IMX6SX is not set".&lt;/P&gt;&lt;P&gt;Is this an error in the code or is there a reason that the kernel must be compiled for multiple "iMX" models to operate properly ?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Fri, 10 May 2024 18:49:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/linux-imx-lf-6-6-3-1-0-0-compilation-error/m-p/1863661#M223578</guid>
      <dc:creator>manux</dc:creator>
      <dc:date>2024-05-10T18:49:19Z</dc:date>
    </item>
    <item>
      <title>Re: linux-imx-lf-6.6.3-1.0.0 compilation error</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/linux-imx-lf-6-6-3-1-0-0-compilation-error/m-p/1863957#M223601</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;Thank you for your interest in NXP Semiconductor products,&lt;/P&gt;
&lt;P&gt;This configuration is based on that both boards work with the same PN (4Gb and 8Gb is the differentiator between them).&lt;/P&gt;
&lt;P&gt;You can proceed with the adjustments made.&lt;/P&gt;
&lt;P&gt;Regards&lt;/P&gt;</description>
      <pubDate>Mon, 13 May 2024 02:41:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/linux-imx-lf-6-6-3-1-0-0-compilation-error/m-p/1863957#M223601</guid>
      <dc:creator>JosephAtNXP</dc:creator>
      <dc:date>2024-05-13T02:41:54Z</dc:date>
    </item>
    <item>
      <title>Re: linux-imx-lf-6.6.3-1.0.0 compilation error</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/linux-imx-lf-6-6-3-1-0-0-compilation-error/m-p/1864657#M223655</link>
      <description>&lt;P&gt;Hi Joseph,&lt;/P&gt;&lt;P&gt;Thanks for your reply.&lt;/P&gt;&lt;P&gt;Unfortunately there is probably more involve for the need to compile with option "CONFIG_SOC_IMX6SX=y" together with "CONFIG_SOC_IMX6UL=y".&lt;/P&gt;&lt;P&gt;Because the kernel I create using "CONFIG_SOC_IMX6UL=y" and "CONFIG_SOC_IMX6SX is not set", generate the following kernel message every time ~23sec after the kernel started:&lt;/P&gt;&lt;P&gt;----------------------------------------&lt;/P&gt;&lt;P&gt;[ 23.368404] 8&amp;lt;--- cut here ---&lt;BR /&gt;[ 23.371666] Unable to handle kernel NULL pointer dereference at virtual address 00000000 when write&lt;BR /&gt;[ 23.380918] [00000000] *pgd=00000000&lt;BR /&gt;[ 23.384671] Internal error: Oops: 805 [#1] PREEMPT ARM&lt;BR /&gt;[ 23.389958] Modules linked in: micrel mma8452 mag3110 ci_hdrc_imx usbmisc_imx ci_hdrc imx_sdma evbug secvio error fev&lt;BR /&gt;[ 23.406777] CPU: 0 PID: 8 Comm: kworker/0:0 Not tainted 6.6.3 #14&lt;BR /&gt;[ 23.413045] Hardware name: Freescale i.MX6 Ultralite (Device Tree)&lt;BR /&gt;[ 23.419368] Workqueue: events reduce_bus_freq_handler&lt;BR /&gt;[ 23.424669] PC is at 0xf49040f0&lt;BR /&gt;[ 23.427939] LR is at update_ddr_freq_imx6_up+0xa0/0xe8&lt;BR /&gt;[ 23.433243] pc : [&amp;lt;f49040f0&amp;gt;] lr : [&amp;lt;80117d5c&amp;gt;] psr: 60000093&lt;BR /&gt;[ 23.439655] sp : a0839f08 ip : 0000000c fp : 61c88647&lt;BR /&gt;[ 23.445012] r10: 84005005 r9 : 80bfdff4 r8 : 80bff450&lt;BR /&gt;[ 23.450369] r7 : 80bff454 r6 : 80004059 r5 : 016e3600 r4 : 80bff4e8&lt;BR /&gt;[ 23.457046] r3 : f4904018 r2 : f4904144 r1 : f49040d4 r0 : 00000000&lt;BR /&gt;[ 23.463726] Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment none&lt;BR /&gt;[ 23.471126] Control: 10c53c7d Table: 84340059 DAC: 00000051&lt;BR /&gt;[ 23.476997] Register r0 information: NULL pointer&lt;BR /&gt;[ 23.481872] Register r1 information: 0-page vmalloc region starting at 0xf4900000 allocated at iotable_init+0x0/0xe8&lt;BR /&gt;[ 23.492684] Register r2 information: 0-page vmalloc region starting at 0xf4900000 allocated at iotable_init+0x0/0xe8&lt;BR /&gt;[ 23.503468] Register r3 information: 0-page vmalloc region starting at 0xf4900000 allocated at iotable_init+0x0/0xe8&lt;BR /&gt;[ 23.514243] Register r4 information: non-slab/vmalloc memory&lt;BR /&gt;[ 23.520071] Register r5 information: non-paged memory&lt;BR /&gt;[ 23.525263] Register r6 information: non-slab/vmalloc memory&lt;BR /&gt;[ 23.531075] Register r7 information: non-slab/vmalloc memory&lt;BR /&gt;[ 23.536883] Register r8 information: non-slab/vmalloc memory&lt;BR /&gt;[ 23.542689] Register r9 information: non-slab/vmalloc memory&lt;BR /&gt;[ 23.548497] Register r10 information: slab maple_node start 84005000 pointer offset 5 size 256&lt;BR /&gt;[ 23.557436] Register r11 information: non-paged memory&lt;BR /&gt;[ 23.562721] Register r12 information: non-paged memory&lt;BR /&gt;[ 23.568002] Process kworker/0:0 (pid: 8, stack limit = 0xa976f449)&lt;BR /&gt;[ 23.574353] Stack: (0xa0839f08 to 0xa083a000)&lt;BR /&gt;[ 23.578870] 9f00: 80bff3a8 80bff2fc 8404f640 80116b50 00000000 00000000&lt;BR /&gt;[ 23.587247] 9f20: 80bff3a8 84005000 8404f640 80117170 84015d00 80132994 84015d00 84015d2c&lt;BR /&gt;[ 23.595622] 9f40: 80b0cb18 84015d00 8404f640 80b0cafc 80b0cafc 80b0cb18 84015d2c 80b0cb54&lt;BR /&gt;[ 23.603994] 9f60: 80bd6f20 8013302c 00000001 8404f640 84038600 84038c00 80132d80 84015d00&lt;BR /&gt;[ 23.612363] 9f80: a081dec0 00000000 00000000 80138b3c 84038600 80138a4c 00000000 00000000&lt;BR /&gt;[ 23.620728] 9fa0: 00000000 00000000 00000000 8010016c 00000000 00000000 00000000 00000000&lt;BR /&gt;[ 23.629094] 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000&lt;BR /&gt;[ 23.637458] 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000&lt;BR /&gt;[ 23.645861] update_ddr_freq_imx6_up from reduce_bus_freq+0x168/0x258&lt;BR /&gt;[ 23.652530] reduce_bus_freq from reduce_bus_freq_handler+0x20/0x44&lt;BR /&gt;[ 23.659003] reduce_bus_freq_handler from process_scheduled_works+0x198/0x260&lt;BR /&gt;[ 23.666397] process_scheduled_works from worker_thread+0x2ac/0x324&lt;BR /&gt;[ 23.672918] worker_thread from kthread+0xf0/0xfc&lt;BR /&gt;[ 23.677864] kthread from ret_from_fork+0x14/0x28&lt;BR /&gt;[ 23.682773] Exception stack(0xa0839fb0 to 0xa0839ff8)&lt;BR /&gt;[ 23.687972] 9fa0: 00000000 00000000 00000000 00000000&lt;BR /&gt;[ 23.696338] 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000&lt;BR /&gt;[ 23.704698] 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000&lt;BR /&gt;[ 23.711489] Code: 676b52f3 00000010 b66d0b63 0000001c (04008032)&lt;BR /&gt;[ 23.717737] ---[ end trace 0000000000000000 ]---&lt;BR /&gt;[ 23.722477] note: kworker/0:0[8] exited with irqs disabled&lt;BR /&gt;[ 64.494279] cfg80211: failed to load regulatory.db&lt;/P&gt;&lt;P&gt;----------------------------------------&lt;/P&gt;&lt;P&gt;The kernel doesn't hang but, it seems that something is not working right.&lt;/P&gt;&lt;P&gt;I think I will stick with "CONFIG_SOC_IMX6SX=y" for now as it is a cleaner solution and the kernel seems to be stable.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for your support.&lt;/P&gt;&lt;P&gt;Have a nice day.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Emmanuel&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 13 May 2024 17:42:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/linux-imx-lf-6-6-3-1-0-0-compilation-error/m-p/1864657#M223655</guid>
      <dc:creator>manux</dc:creator>
      <dc:date>2024-05-13T17:42:40Z</dc:date>
    </item>
  </channel>
</rss>

