How to get CPUID in TX2?

Hi,

I want to get CPU id in tx2 to make a license? how can I get it ?

Thanks.

Hi,

when I use asm, it will occur “impossible constraint in ‘asm’”

ClancyLian,

Could you elaborate the definition of “id” here?

Hi,

the id is series number which is different between two machine and can’t be changed by user.

Are you talking about the serial number of the processor?

Hi,

yes!

Hi,

when I use

dmidecode -t 4

to inquire CPU info, the system will restart. What’s the problem with it ?

Thanks.

Hi,

when I use lshw, i can get serial: 0324517130259, if this serial is unique, and how can I get it in program ?

nvidia@tegra-ubuntu:~$ lshw
WARNING: you should run this program as super-user.
tegra-ubuntu              
    description: Computer
    product: quill
    <b>serial: 0324517130259</b>
    width: 64 bits
    capabilities: cp15_barrier setend swp
  *-core
       description: Motherboard
       physical id: 0
       capabilities: nvidia_quill nvidia_tegra186
     *-cpu:0
          description: CPU
          product: a57_cluster_power_states
          physical id: 0
          bus info: cpu@0
          size: 345MHz
          capacity: 2035MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:1
          description: CPU
          product: a57_core_power_states
          physical id: 1
          bus info: cpu@1
          size: 2035MHz
          capacity: 2035MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:2
          description: CPU
          product: a57_crossover_thresholds
          physical id: 2
          bus info: cpu@2
          size: 2035MHz
          capacity: 2035MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:3
          description: CPU
          product: cpu
          physical id: 3
          bus info: cpu@3
          size: 345MHz
          capacity: 2035MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:4
          description: CPU
          product: cpu
          physical id: 4
          bus info: cpu@4
          size: 345MHz
          capacity: 2035MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:5
          description: CPU
          product: cpu
          physical id: 5
          bus info: cpu@5
          size: 345MHz
          capacity: 2035MHz
          capabilities: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpufreq
     *-cpu:6 DISABLED
          description: CPU
          product: cpu
          physical id: 6
          bus info: cpu@6
     *-cpu:7 DISABLED
          description: CPU
          product: cpu
          physical id: 7
          bus info: cpu@7
     *-cpu:8 DISABLED
          description: CPU
          product: cpu
          physical id: 8
          bus info: cpu@8
     *-cpu:9 DISABLED
          description: CPU
          product: denver_cluster_power_states
          physical id: 9
          bus info: cpu@9
     *-cpu:10 DISABLED
          description: CPU
          product: denver_core_power_states
          physical id: a
          bus info: cpu@10
     *-cpu:11 DISABLED
          description: CPU
          product: denver_crossover_thresholds
          physical id: b
          bus info: cpu@11
     *-cpu:12 DISABLED
          description: CPU
          product: l2-cache0
          physical id: c
          bus info: cpu@12
     *-cpu:13 DISABLED
          description: CPU
          product: l2-cache1
          physical id: d
          bus info: cpu@13
     *-memory
          description: System memory
          physical id: e
          size: 7853MiB
  *-network:0
       description: Ethernet interface
       physical id: 1
       logical name: usb0
       serial: 6a:a5:b5:0a:95:3c
       capabilities: ethernet physical
       configuration: broadcast=yes driver=g_ether driverversion=29-May-2008 firmware=tegra-xudc link=no multicast=yes
  *-network:1 DISABLED
       description: Ethernet interface
       physical id: 2
       logical name: dummy0
       serial: 0a:9d:f4:74:1d:b0
       capabilities: ethernet physical
       configuration: broadcast=yes driver=dummy driverversion=1.0
  *-network:2
       description: Ethernet interface
       physical id: 3
       logical name: wlan0
       serial: 00:04:4b:8d:93:78
       capabilities: ethernet physical
       configuration: broadcast=yes driver=wl driverversion=0 multicast=yes
  *-network:3
       description: Ethernet interface
       physical id: 4
       logical name: usb1
       serial: 5a:c0:ce:43:cf:28
       capabilities: ethernet physical
       configuration: broadcast=yes driver=g_ether driverversion=29-May-2008 firmware=tegra-xudc link=no multicast=yes
  *-network:4
       description: Ethernet interface
       physical id: 5
       logical name: eth0
       serial: 00:04:4b:8d:93:7a
       size: 100Mbit/s
       capacity: 1Gbit/s
       capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=eqos duplex=full ip=192.168.1.235 link=yes multicast=yes port=MII speed=100Mbit/s
WARNING: output may be incomplete or inaccurate, you should run this program as super-user.

Thanks.

Yes, that is unique but it is not the serial for “CPU” but the tegra.

dmidecode is an intel-only tool, it does not work correctly on the ARM architecture.
I think it’s a bug that it’s still built on Ubuntu for ARM.

See this thread: https://devtalk.nvidia.com/default/topic/1027966/jetson-tx2/how-to-read-tx2-modules-serial-number-in-code-/

You can parse it from /proc/cmdline