SMP configuration in imx6dual SoC

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

SMP configuration in imx6dual SoC

Jump to solution
2,083 Views
dilshad_alam
Senior Contributor II

We are using the dual core iMX6 chip on our target board running Freescale Kernel 3.14.28).

We are trying to enable both the cores but unable to detect the second core.

I have done following modification in defconfig.

CONFIG_GENERIC_SMP_IDLE_THREAD=y

CONFIG_HAVE_SMP=y

CONFIG_SMP=y

CONFIG_SMP_ON_UP=y

CONFIG_PM_SLEEP_SMP=y

and imxdl.dtsi is by default has cpu@1 nodes enabled.

cpu@1 {

  compatible = "arm,cortex-a9";

  device_type = "cpu";

  reg = <1>;

  next-level-cache = <&L2>;

  };

Please find the Kernel logs:-  These logs does not come if don't enable CONFIG_SMP

[    0.082439] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000

[    0.088239] Setting up static identity map for 0x10427398 - 0x104273f0

[    0.100426] Brought up 1 CPUs

[    0.103494] SMP: Total of 1 processors activated.

[    0.108341] CPU: All CPU(s) started in SVC mode.

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

Hardware        : Freescale i.MX6 Quad/DualLite (Device Tree)

Revision        : 0000

Serial          : 0000000000000000

Let me know if i am missing anything.

Thanks,

Dilshad

Labels (4)
0 Kudos
1 Solution
1,575 Views
dilshad_alam
Senior Contributor II

This Problem is resolved. CONFIG_CMDLINE was having parameter "nosmp". After removing that, both the cores are detected.

View solution in original post

5 Replies
1,576 Views
dilshad_alam
Senior Contributor II

This Problem is resolved. CONFIG_CMDLINE was having parameter "nosmp". After removing that, both the cores are detected.

1,575 Views
igorpadykov
NXP Employee
NXP Employee

Hi Dilshad

one can check maxcpus kernel parameter and how many

cores in chip: fuse NUM_CORES 0x430[21:20]

Table 5-8. Fusemap i.MX6SDL RM rev.2 (5/2015).

Default kernel imx_v7_defconfig should support smp.

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 Kudos
1,575 Views
dilshad_alam
Senior Contributor II

Hi Igor,

Thanks for your reply.

I have checked NUM_CORES 0x430[21:20] bit values. Its coming as  0xA20100C4. Bit 20 & 21 are 00 which means its dual core as per TRM.

Do you see any problem in my configs.

in CONFIG_CMDLINE also i added maxcpus=2   but still its not recognized.

Any further inputs in debugging this issue would be appreciated.

Thanks,

Dilshad

0 Kudos
1,575 Views
igorpadykov
NXP Employee
NXP Employee

HI Dilshad

could you try Demo images from i.MX6 product page :

Board Support Packages (27)

L3.14.28_1.0.0_iMX6QDLS_BUNDLE (REV L3.14.28_1.0.0)

i.MX 6Quad, i.MX 6Dual, i.MX 6DualLite, i.MX 6Solo Linux Binary Demo Files and Linux BSP Documentation

SABRE Board Reference Design|Freescale

L3.14.28_1.0.0_iMX6QDLS_BUNDLE (REV L3.14.28_1.0.0)

i.MX 6Quad, i.MX 6Dual, i.MX 6DualLite, i.MX 6Solo Linux Binary Demo Files and Linux BSP Documentation

Best regards

igor

0 Kudos
1,575 Views
dilshad_alam
Senior Contributor II

Hi Igor,

This is cutomized board based on SabreSD.

I doubt kernel booting with Demo Images and moreover it will not solve my issue.

It would be great if you can give pointers in debugging this issue?

Thanks,

Dilshad

0 Kudos