Modules compilation Error Jetson 35.2.1 on AGX Orin 32Gb

Hi,

I’m trying to compile the kernel from sources Jetson version 35.2.1 directly inside the AGX Orin 32Gb.
I’m using the following command :

make -C kernel/kernel-5.10/ ARCH=arm64 O=$KERNEL_OUT LOCALVERSION=-tegra -j4 modules

I’m having errors on the modules compilation error:

/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c: In function ‘atvr_mic_ctrl’:
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c:449:21: error: ‘USB_DEVICE_ID_NVIDIA_FRIDAY’ undeclared (first use in this function); did you mean ‘USB_DEVICE_ID_NVIDIA_RAVEN’?
  449 |    hdev->product == USB_DEVICE_ID_NVIDIA_FRIDAY) {
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                     USB_DEVICE_ID_NVIDIA_RAVEN
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c:449:21: note: each undeclared identifier is reported only once for each function it appears in
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c: In function ‘snd_atvr_pcm_open’:
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c:1372:2: error: implicit declaration of function ‘setup_timer’; did you mean ‘del_timer’? [-Werror=implicit-function-declaration]
 1372 |  setup_timer(&atvr_snd->decoding_timer, snd_atvr_timer_callback,
      |  ^~~~~~~~~~~
      |  del_timer
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c: In function ‘atvr_snd_initialize’:
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c:1578:21: error: ‘USB_DEVICE_ID_NVIDIA_FRIDAY’ undeclared (first use in this function); did you mean ‘USB_DEVICE_ID_NVIDIA_RAVEN’?
 1578 |    hdev->product == USB_DEVICE_ID_NVIDIA_FRIDAY)
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                     USB_DEVICE_ID_NVIDIA_RAVEN
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c: In function ‘atvr_jarvis_break_events’:
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c:1655:20: error: ‘USB_DEVICE_ID_NVIDIA_FRIDAY’ undeclared (first use in this function); did you mean ‘USB_DEVICE_ID_NVIDIA_RAVEN’?
 1655 |   hdev->product == USB_DEVICE_ID_NVIDIA_FRIDAY) &&
      |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                    USB_DEVICE_ID_NVIDIA_RAVEN
  CC [M]  drivers/net/ethernet/qlogic/qlcnic/qlcnic_hw.o
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c: In function ‘atvr_probe’:
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c:1998:23: error: ‘USB_DEVICE_ID_NVIDIA_FRIDAY’ undeclared (first use in this function); did you mean ‘USB_DEVICE_ID_NVIDIA_RAVEN’?
 1998 |  if (hdev->product != USB_DEVICE_ID_NVIDIA_FRIDAY) {
      |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                       USB_DEVICE_ID_NVIDIA_RAVEN
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c: In function ‘atvr_remove’:
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c:2069:21: error: ‘USB_DEVICE_ID_NVIDIA_FRIDAY’ undeclared (first use in this function); did you mean ‘USB_DEVICE_ID_NVIDIA_RAVEN’?
 2069 |    hdev->product == USB_DEVICE_ID_NVIDIA_FRIDAY) {
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                     USB_DEVICE_ID_NVIDIA_RAVEN
In file included from /home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c:20:
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c: At top level:
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c:2165:10: error: ‘USB_DEVICE_ID_NVIDIA_FRIDAY’ undeclared here (not in a function); did you mean ‘USB_DEVICE_ID_NVIDIA_RAVEN’?
 2165 |          USB_DEVICE_ID_NVIDIA_FRIDAY)},
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/kernel-5.10/include/linux/hid.h:681:53: note: in definition of macro ‘HID_BLUETOOTH_DEVICE’
  681 |  .bus = BUS_BLUETOOTH, .vendor = (ven), .product = (prod)
      |                                                     ^~~~
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/nvidia/drivers/hid/hid-atv-jarvis.c:2169:10: error: ‘USB_DEVICE_ID_NVIDIA_STORMCASTER’ undeclared here (not in a function); did you mean ‘USB_DEVICE_ID_NVIDIA_RAVEN’?
 2169 |          USB_DEVICE_ID_NVIDIA_STORMCASTER)},
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/nvidia/kernel/Linux_for_Tegra/source/public/kernel/kernel-5.10/include/linux/hid.h:681:53: note: in definition of macro ‘HID_BLUETOOTH_DEVICE’
  681 |  .bus = BUS_BLUETOOTH, .vendor = (ven), .product = (prod)
      |                                                     ^~~~

I can’t find any other sources, or anyone who had the same problem. Any idea ?

Thank you

Don’t specify ARCH when compiling natively. Also, if you did not properly configure before compile, then it will fail 100%. What steps did you take to configure? Did your configuration also set CONFIG_LOCALVERSION? You might find this of use:
https://forums.developer.nvidia.com/t/topic/262647/12

Hi @linuxdev ,

It seems that it’s a bug in the code. These variables aren’t declared anywhere.
When searching a bit, USB FRIDAY is a name for a TV shield control from Nvidia, does not seem like something relevant to Jetson devices.
Also, the function setup_timer() was changed in recent Linux version to timer_setup().

Everything’s good now.

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