TX2 Cannot Enable Cores 1 & 2

I am working using a TX2 on a custom carrier board using a yocto distribution based on the tegra-demo-distro.

I am looking into enabling the denver cores but facing many issues.
I cannot turn them on using nvpmodel or by echoing 1 into /sys/devices/system/cpu/cpu1/online

The first attempt returns -sh: echo: write error: Bad address
Any subsequent attempts return -sh: echo: write error: File exists

When using stock Jetpack I am able to enable them, confirming they work, but this is not a suitable solution for my application.

Any help pointing towards where the issue might be would be greatly appreciated.

My kernel command line args are as follows

console=none console=tty0 fbcon=map:0 isolcpus= OS=l4t console=ttyS0,115200n8 console=tty0 fbcon=map:0 isolcpus= OS=l4t video=tegrafb nvdumper_reserved=0x2772e0000 gpt rootfs.slot_suffix= tegra_fbmem2=0x800000@0x96085000 lut_mem2=0x2008@0x96081000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 no_console_suspend boot.slot_suffix= boot.ratchetvalues=0.2031647.1 vpr_resize bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1

Looking at the journal I get the following after the first attempt

Apr 28 17:44:35 device kernel: CPU1: Booted secondary processor [4e0f0030]
Apr 28 17:44:35 device kernel: CPU1: shutdown
Apr 28 17:44:35 device kernel: psci: CPU1 killed (polled 0 ms)

And I get the following after all subsequent attempts

Apr 28 17:44:38 device kernel: sysfs: cannot create duplicate filename '/devices/system/cpu/cpu1/topology'
Apr 28 17:44:38 device kernel: ------------[ cut here ]------------
Apr 28 17:44:38 device kernel: WARNING: CPU: 4 PID: 4028 at fs/sysfs/dir.c:30 sysfs_warn_dup+0x5c/0x80
Apr 28 17:44:38 device kernel: Modules linked in: bluedroid_pm nvgpu
Apr 28 17:44:38 device kernel:
Apr 28 17:44:38 device kernel: CPU: 4 PID: 4028 Comm: sh Tainted: G           O    4.9.337-l4t-r32.7.6+gd4116ecb5c13 #1
Apr 28 17:44:38 device kernel: Hardware name: quill (DT)
Apr 28 17:44:38 device kernel: task: 00000000e511d3fa task.stack: 000000007026a762
Apr 28 17:44:38 device kernel: PC is at sysfs_warn_dup+0x5c/0x80
Apr 28 17:44:38 device kernel: LR is at sysfs_warn_dup+0x5c/0x80
Apr 28 17:44:38 device kernel: pc : [<ffffff80083f932c>] lr : [<ffffff80083f932c>] pstate: 40400145
Apr 28 17:44:38 device kernel: sp : ffffffc1c6ddfa90
Apr 28 17:44:38 device kernel: x29: ffffffc1c6ddfa90 x28: ffffffc1f669d9c8
Apr 28 17:44:38 device kernel: x27: 00000041ed307000 x26: 0000000000000000
Apr 28 17:44:38 device kernel: x25: ffffff80093969c8 x24: 0000000000000001
Apr 28 17:44:38 device kernel: x23: 0000000000000003 x22: 0000000000000000
Apr 28 17:44:38 device kernel: x21: ffffff8008e06c78 x20: ffffffc1ebf015a0
Apr 28 17:44:38 device kernel: x19: ffffffc1ec14f000 x18: ffffffffffffffff
Apr 28 17:44:38 device kernel: x17: 0000000000000000 x16: 0000000000000000
Apr 28 17:44:38 device kernel: x15: ffffff808969f5ef x14: 0000000000000006
Apr 28 17:44:38 device kernel: x13: ffffff800969f5f7 x12: ffffffc1c6ddf7a0
Apr 28 17:44:38 device kernel: x11: 0000000000000301 x10: ffffff800969f000
Apr 28 17:44:38 device kernel: x9 : 0000000000086ebc x8 : 7570632f6d657473
Apr 28 17:44:38 device kernel: x7 : 0000000000000001 x6 : 0000000000000000
Apr 28 17:44:38 device kernel: x5 : 0000000000000000 x4 : ffffffc1f66dfbd8
Apr 28 17:44:38 device kernel: x3 : ffffffc1f66e4778 x2 : ffffffc1f66dfbd8
Apr 28 17:44:38 device kernel: x1 : ffffffc1e4d4ee40 x0 : 000000000000004b
Apr 28 17:44:38 device kernel:
Apr 28 17:44:38 device kernel: ---[ end trace 97eabc39bf25e349 ]---
Apr 28 17:44:38 device kernel: Call trace:
Apr 28 17:44:38 device kernel: [<000000006aeb5b00>] sysfs_warn_dup+0x5c/0x80
Apr 28 17:44:38 device kernel: [<000000006eac4f6b>] internal_create_group+0x10c/0x120
Apr 28 17:44:38 device kernel: [<00000000323854b9>] sysfs_create_group+0x14/0x20
Apr 28 17:44:38 device kernel: [<000000006efc8fc3>] topology_cpu_callback+0x54/0xc0
Apr 28 17:44:38 device kernel: [<0000000024cb66ff>] notifier_call_chain+0x54/0xa0
Apr 28 17:44:38 device kernel: [<0000000005e9dab9>] __raw_notifier_call_chain+0xc/0x20
Apr 28 17:44:38 device kernel: [<00000000e979072f>] notify_prepare+0x3c/0xb0
Apr 28 17:44:38 device kernel: [<000000009cb0af6c>] cpuhp_invoke_callback+0x70/0x180
Apr 28 17:44:38 device kernel: [<00000000b0a637fa>] cpuhp_up_callbacks+0x34/0x130
Apr 28 17:44:38 device kernel: [<00000000228df0d6>] _cpu_up+0xf4/0x170
Apr 28 17:44:38 device kernel: [<0000000048f89e6a>] do_cpu_up+0x98/0xd0
Apr 28 17:44:38 device kernel: [<00000000560d7dbe>] cpu_up+0x10/0x20
Apr 28 17:44:38 device kernel: [<00000000ad18c5ad>] cpu_subsys_online+0x10/0x20
Apr 28 17:44:38 device kernel: [<00000000dcb166a7>] device_online+0x6c/0x90
Apr 28 17:44:38 device kernel: [<000000007aa38357>] online_store+0x90/0xc0
Apr 28 17:44:38 device kernel: [<000000004d56eacb>] dev_attr_store+0x18/0x30
Apr 28 17:44:38 device kernel: [<00000000d17ef6be>] sysfs_kf_write+0x40/0x50
Apr 28 17:44:38 device kernel: [<00000000c4a189a0>] kernfs_fop_write+0xb4/0x1d0
Apr 28 17:44:38 device kernel: [<000000005228a696>] __vfs_write+0x18/0x110
Apr 28 17:44:38 device kernel: [<0000000043e2ce0a>] vfs_write+0xa4/0x190
Apr 28 17:44:38 device kernel: [<00000000cc4176cc>] SyS_write+0x4c/0xc0
Apr 28 17:44:38 device kernel: [<00000000481bd1b0>] __sys_trace_return+0x0/0x4
Apr 28 17:44:38 device kernel: notify_prepare: attempt to bring up CPU 1 failed

Hi,
Please refer to the topic to use Denver cores:

Jetson/L4T/r32.4.x patches - eLinux.org
[TX2] Denver cores not working on TX2

I have followed the steps linked in that patch, the image I am using is based on L4T-r32.7.x.
When I run sudo nvpmodel -m 0 I get the following output

NVPM ERROR: Error writing 1 to /sys/devices/system/cpu/cpu1/online: 14
NVPM ERROR: failed to write PARAM CPU_ONLINE: ARG CORE_1: PATH: /sys/devices/system/cpu/cpu1/online VAL: 1
NVPM ERROR: Error reading /sys/devices/system/cpu/cpu1/cpufreq/scaling_available_frequencies: 19
NVPM ERROR: failed to read PARAM CPU_DENVER: ARG FREQ_TABLE: PATH /sys/devices/system/cpu/cpu1/cpufreq/scaling_available_frequencies
NVPM ERROR: failed to set power mode!
NVPM ERROR: optMask is 1, no request for power mode

If I then try to taskset to one of the denver cores get the following error message

taskset: failed to set pid 5274's affinity: Invalid argument

Any help identifying which part of the kernel I need to configure to allow the core to run would be appreciated

Hi,
We would suggest try default Ubuntu rootfs to make sure it works. And then check how to apply it to Yocto rootfs.

Hi,

I have tried flashing the default jetpack image, and that one does work. The issue I am having is that I cannot find which parts I need to apply to the Yocto image to allow it to use the cores in the same way as the default image.

Please check Yocto Support for NVIDIA Jetson Platforms - Flashing the Board to see if can help.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.