HI All,
I have a imx6 board MCIMX6xAICPU1
I am not sure how to identofy what exactly is the CPU on this board . I mean weather it is IMX6Solo, Dual or Quad Core.
Can you please let me know how to identify the board/cpu ?
is it like MCIMX6xAICPU1 means Solo and for dual it will be CPU2 and so on ?
Regards,
解決済! 解決策の投稿を見る。
Are you using Linux?
If so, you can see on the Linux boot a message like this:
CPU identified as i.MX6Q, silicon rev 1.1
You can also check using the command:
dmesg | grep CPU
Rgds,
Rogerio
CONFIG_NR_CPUS is used if you want, for example, run only one core on a mx6quad system.
Yes There are lot of ways to check the number of cores in Linux like cpuinfo or lscpu.
You can also check the number of core from your linux source code in the .config file
CONFIG_NR_CPUS=4
So now I'm confused:
Fabio wrote it's automatically done, but Vinod mentioned the hard-coded defconfig flag.
(P.S. - seems CONFIG_NR_CPUS isn't used in the IMX6 arch - is that correct???)
thanks
CONFIG_NR_CPU is nothing to do with iMX6 or X86; it is generic config used in Linux kernel. As Fabio also mentioned; It is just used in to select the number of cores according to your requirements.
For example if you want are working on the iMX6 dual core CPU; then CONFIG_NR_CPU=2
I was just trying to say that if you can also check the number of CPU being used in the current code through defconfig file.
I understand CONFIG_NR_CPU is a generic Linux flag, not specific to this or that configuration.
I just pointed the fact the it was not used (or at least not explicitly used) in the Linux .config of my Yocto build, so the dual-core example above seems redundant.
I understand down-grading a quad to a single (if one wants), but what if one runs a single core with Linux built with CONFIG_NR_CPU=4 by mistake?
My simple question is: will the same disto (Linux and DTS) work with IMX6 single, dual and quad cores? Will the correct number of cores be shown for each board? Or do I need a different zImage for each board?
Sorry for nagging
The dts will change depending on the mx6 variant.
We can have a single U-Boot that detects the mx6 variant and load the correct dtb. The zImage and rootfs are common for all mx6 variants.
We do this for mx6 wandboard and mx6 cubox-i boards for example.
The kernel will automatically check for the number of cores in run-time, so it will always report the correct number of CPUs.
You can check the U-boot code that checks for the mx6 variant inside get_cpu_rev() function:
Hello,venkatesh,
The simple way is to check partnumber on top side of CPU, the following is just an example.
you can check partnumber and compare it with that of in datasheet.
(1)i.MX6DL & i.MX6S
(2)i.MX6DQ(D: 2-CORE; Q: 4-CORE),following is for consumer
<note>
----i.MX6DQ datasheet
(1)IMX6DQCEC.pdf is for consumer.
(2)IMX6DQIEC.pdf is for industrial
(3)IMX6DQAEC.pdf is for automotive
---i.MX6DL/i.MX6S
(1)IMX6SDLAEC.pdf is for automotive
(2)IMX6SDLCEC.pdf is for consumer
(3)IMX6SDLIEC.pdf is for industrial
Regards,
Weidong
Thanks Weidong,
The problem is i cant see the top side of CPU as it is covered with the heat sink.
Any other way i can get the info by looking on to the board ?
Another way to check the the number of CPUs, type 'cat /proc/cpuinfo'
Hi,
Is the identifying done automatically? Or is it hard-coded?
Meaning: The same SW image (u-boot, Linux, device-tree and RFS) being run by single-core and quad-code IMX6 - will cpuinfo print the correct number of cores?
Yes, cpuinfo will always print the correct information about the number of cores.
Thanks guys.
I was able find get the info using command "dmesg | grep CPU"
Are you using Linux?
If so, you can see on the Linux boot a message like this:
CPU identified as i.MX6Q, silicon rev 1.1
You can also check using the command:
dmesg | grep CPU
Rgds,
Rogerio