Hi Community,
I use the SABRE board on kernel-3.14.28.
The SABRE borad is I.MX6Q(4 cpus)
So, I checked number of CPU using cat /proc/cpuinfo.
-------------------------------------------------------------------------------------------------------
root@imx6qsabresd:~# cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 10 (v7l)
Features : swp half thumb fastmult vfp edsp neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc09
CPU revision : 10
processor : 1
model name : ARMv7 Processor rev 10 (v7l)
Features : swp half thumb fastmult vfp edsp neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc09
CPU revision : 10
Hardware : Freescale i.MX6 Quad/DualLite (Device Tree)
Revision : 0000
Serial : 0000000000000000
root@imx6qsabresd:~#
-------------------------------------------------------------------------------------------------------
but, cpu setting is 2 cpu.
I would like to know how to configure 4 CPUs in u-boot or kenel feature or device tree.
Thanks,
Jackey
Hi igor,
Thanks for your message.
I will check the uboot fuse NUM_CORES and attach the result.
Thanks,
Jackey
Hi Jackey
from uboot log one can see :
"CPU: Freescale i.MX6D rev1.2"
could you attach jtag or read from uboot fuse
NUM_CORES, it is described in Table 5-10. Fusemap Descriptions
i.MX6DQ Reference Manual
http://cache.freescale.com/files/32bit/doc/ref_manual/IMX6DQRM.pdf
Best regards
igor
Hi igor,
I have downloaed the mfgtool2-yocto-mx6-sabresd-sdcard-sd4.vbs using imx-3.14.28_1.0.0_ga-mfg-tools and attached kernel_log.txt and printenv.
The imgage of mfgtool2-yocto-mx6-sabresd-sdcard-sd4.vbs is same.
Total of 2 processors is activated.
Please review the attached log.
Thanks,
Jackey
typo
PCIMX6QAVT10AC -> PCIMX6Q6AVT10AC
Thanks,
Jackey
Hi Igor,
Thanks for your support.
The full processor marking is PCIMX6QAVT10AC. and Part number of SABRE SD is MCIMX6Q-SDB
I have purchased RDIMX6SABREBRD product as below yellow marking.
Products | Parts | Order | Status | Package | Budgetary |
RDIMX6SABREBRD | Y | Active | Hardware Only | 1 @ US$399.00 each | |
RDIMX6SABREBRD | Y | Active | Hardware Only | 1 @ US$449.00 each | |
RDIMX6SABREBRD | Y | Active | Hardware Only | 1 @ US$499.00 each | |
IMX53QSB | Y | Active | Hardware Only | 1 @ US$49.00 each |
I will check mfgtool2-yocto-mx6-sabresd-sdcard-sd4.vbs. and send you the result.
Thanks,
Jackey
Hi igor,
I downloaded 3.14.28 kernel image using imx-3.14.28_1.0.0_ga-mfg-tools.
and have configured maxcpus=4 in u-boot as bleow:
---------------------------------------------------------------------------------------------------------------------------------------------------
[printenv.txt]
setenv extra_bootargs maxcpus=4
setenv mmcargs 'setenv bootargs console=${console},${baudrate} ${smp} root=${mmcroot} ${extra_bootargs}'
saveenv
----------------------------------------------------------------------------------------------------------------------------------------------------
But, CPUs are 2 core from kernel log.
Please find the attached kernel_log.txt
-----------------------------------------------------------------------------------------
[kernel_log.txt]
SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
Preemptible hierarchical RCU implementation.
RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
CPU: Testing write buffer coherency: ok
CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
Setting up static identity map for 0x106ba580 - 0x106ba5d8
CPU1: Booted secondary processor
CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
Brought up 2 CPUs
SMP: Total of 2 processors activated.
CPU: All CPU(s) started in SVC mode.
-----------------------------------------------------------------------------------------
I would like to know extra settings for 4 CPUs.
Thanks,
Jackey
Hi Jackey
what is full processor marking ?
Also probably you are running wrong image,
please use mfgtool2-yocto-mx6-sabresd-sdcard-sd4.vbs
in mfg tools folder.
~igor
Hi Jackey
one can check with cat /proc/interrupts :
https://community.freescale.com/message/303749#303749
also kernel boot parameters maxcpus=n limits the kernel to
using 'n' processors, as described in p.17 attached Release Notes.
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Igor,
Thanks for your support.
I checked cat /proc/interrupts, but also the kernel log is CPU0 and CPU1.
------------------------------------------------------------------------------------------
root@imx6qsabresd:/# cat /proc/interrupts
CPU0 CPU1
16: 2055 1746 GIC 29 Edge twd
17: 0 0 GPC 55 Edge i.MX Timer Tick
19: 0 0 GPC 115 Edge 120000.hdmi
23: 2 0 GPC 31 Edge 2008000.ecspi
24: 247 0 GPC 26 Edge 2020000.serial
25: 0 0 GPC 47 Edge 202c000.ssi
26: 0 0 GPC 12 Edge 2040000.vpu
35: 0 0 gpio-mxc 4 Edge Volume Up
36: 0 0 gpio-mxc 5 Edge Volume Down
65: 0 0 gpio-mxc 0 Edge 2198000.usdhc cd
67: 0 0 gpio-mxc 2 Edge 2194000.usdhc cd
128: 0 0 gpio-mxc 29 Edge Power Button
.................
------------------------------------------------------------------------------------------
I have a question.
How to set kernel boot parameters maxcpus=n
Thanks,
Jackey