PCI GPU drivers / ARMv8

I am looking to push this issue so we have available a working PCI GPU drivers for the arm64/aarch64/ARMv8-a architectures, Is there a feasibility to champion this through NVIDIA to make it a realization ???

Hi scottkvps23,

Thanks for asking, AFAIK, it’s under planning, but I don’t have clear schedule yet.
Once it’s clear, I will share with you.

Welp its a show stopper for a project we have then… hope its soon enough … cant move it forward without PCI drivers. Kinda also negates selling more RTX2080

so these drivers from nvidia for aarch64 wount cut it ? what “driver” specifically is under planning to be ported

I have not tried this, but if you have a system you can afford to flash again if it fails, why not try it?

I think you’d have to consider power delivery requirements before you even attempt this. I forget what the max power delivery is through the full-sized PCIe slot, but it is something like 75 watts. I do not know how well the NX would deal with this, but there is absolutely no possibility an NX powered over USB could do so. Most likely you need an adapter to the m.2 which allows complete power delivery through an external source (or a custom board with a full-sized PCIe slot and power handling customized to make this possible).

welp fresh install of ubuntu from nvidia developer, couple of warning about cc mismatch on kernel… skip and continue heres the results, it did build but appears to conflict with nvgpu ?? any ideas ?

./NVIDIA-Linux-aarch64-450.51.run
Verifying archive integrity… OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-aarch64 450.51…
root@dingo-desktop:/home/dingo# cat /var/log/nvidia-installer.log
nvidia-installer log file ‘/var/log/nvidia-installer.log’
creation time: Sat Sep 19 19:58:30 2020
installer version: 450.51

PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

nvidia-installer command line:
./nvidia-installer

Unable to load: nvidia-installer ncurses v6 user interface

Using: nvidia-installer ncurses user interface
-> Detected 6 CPUs online; setting concurrency level to 6.
WARNING: You do not appear to have an NVIDIA GPU supported by the 450.51 NVIDIA Linux graphics driver installed in this system. For further details, please see the appendix SUPPORTED NVIDIA GRAPHICS CHIPS in the README available on the Linux driver download page at www.nvidia.com.
-> Installing NVIDIA driver version 450.51.
-> Running distribution scripts
executing: ‘/usr/lib/nvidia/pre-install’…
-> done.
-> The distribution-provided pre-install script failed! Are you sure you want to continue? (Answer: Continue installation)
-> Performing CC sanity check with CC="/usr/bin/cc".
-> Performing CC check.
-> Kernel source path: ‘/lib/modules/4.9.140-tegra/source’
-> Kernel output path: ‘/lib/modules/4.9.140-tegra/build’
-> Performing Compiler check.
-> Performing Dom0 check.
-> Performing Xen check.
-> Performing PREEMPT_RT check.
-> Performing vgpu_kvm check.
-> The CC version check failed:

The kernel was built with gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f91977701] (Linaro GCC 7.3-2018.05) , but the current compiler version is cc (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04) 7.5.0.

This may lead to subtle problems; if you are not certain whether the mismatched compiler will be compatible with your kernel, you may wish to abort installation, set the CC environment variable to the name of the compiler used to compile your kernel, and restart installation. (Answer: Ignore CC version check)
WARNING: Ignoring CC version mismatch:

The kernel was built with gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f91977701] (Linaro GCC 7.3-2018.05) , but the current compiler version is cc (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04) 7.5.0.
-> Cleaning kernel module build directory.
executing: ‘cd ./kernel; /usr/bin/make -k -j6 clean NV_EXCLUDE_KERNEL_MODULES="" SYSSRC="/lib/modules/4.9.140-tegra/source" SYSOUT="/lib/modules/4.9.140-tegra/build"’…
rm -f -r conftest
make[1]: Entering directory ‘/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aarch64/kernel-4.9’
make[2]: Entering directory ‘/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aarch64/kernel-4.9’
make[2]: Leaving directory ‘/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aarch64/kernel-4.9’
make[1]: Leaving directory ‘/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aarch64/kernel-4.9’
-> Building kernel modules
executing: ‘cd ./kernel; /usr/bin/make -k -j6 NV_EXCLUDE_KERNEL_MODULES="" SYSSRC="/lib/modules/4.9.140-tegra/source" SYSOUT="/lib/modules/4.9.140-tegra/build"’…
make[1]: Entering directory ‘/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aarch64/kernel-4.9’
make[2]: Entering directory ‘/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aarch64/kernel-4.9’
SYMLINK /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-kernel.o
SYMLINK /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-modeset/nv-modeset-kernel.o
CONFTEST: set_pages_uc
CONFTEST: list_is_first
CONFTEST: hash__remap_4k_pfn
CONFTEST: set_memory_uc
CONFTEST: set_memory_array_uc
CONFTEST: set_pages_array_uc
CONFTEST: acquire_console_sem
CONFTEST: console_lock
CONFTEST: ioremap_cache
CONFTEST: ioremap_wc
CONFTEST: acpi_walk_namespace
CONFTEST: sg_alloc_table
CONFTEST: get_num_physpages
CONFTEST: pci_get_domain_bus_and_slot
CONFTEST: efi_enabled
CONFTEST: pde_data
CONFTEST: proc_remove
CONFTEST: pm_vt_switch_required
CONFTEST: xen_ioemu_inject_msi
CONFTEST: phys_to_dma
CONFTEST: get_dma_ops
CONFTEST: write_cr4
CONFTEST: of_get_property
CONFTEST: of_find_node_by_phandle
CONFTEST: of_node_to_nid
CONFTEST: pnv_pci_get_npu_dev
CONFTEST: of_get_ibm_chip_id
CONFTEST: node_end_pfn
CONFTEST: pci_bus_address
CONFTEST: pci_stop_and_remove_bus_device
CONFTEST: pci_remove_bus_device
CONFTEST: register_cpu_notifier
CONFTEST: cpuhp_setup_state
CONFTEST: dma_map_resource
CONFTEST: backlight_device_register
CONFTEST: timer_setup
CONFTEST: pci_enable_msix_range
CONFTEST: do_gettimeofday
CONFTEST: kernel_read
CONFTEST: kernel_write
CONFTEST: kthread_create_on_node
CONFTEST: of_find_matching_node
CONFTEST: dev_is_pci
CONFTEST: tegra_get_platform
CONFTEST: dma_direct_map_resource
CONFTEST: flush_cache_all
CONFTEST: vmf_insert_pfn
CONFTEST: jiffies_to_timespec
CONFTEST: ktime_get_raw_ts64
CONFTEST: ktime_get_real_ts64
CONFTEST: address_space_init_once
CONFTEST: kbasename
CONFTEST: vzalloc
CONFTEST: wait_on_bit_lock_argument_count
CONFTEST: bitmap_clear
CONFTEST: usleep_range
CONFTEST: radix_tree_empty
CONFTEST: radix_tree_replace_slot
CONFTEST: pnv_npu2_init_context
CONFTEST: cpumask_of_node
CONFTEST: drm_dev_unref
CONFTEST: drm_reinit_primary_mode_group
CONFTEST: get_user_pages_remote
CONFTEST: get_user_pages
CONFTEST: drm_gem_object_lookup
CONFTEST: drm_atomic_state_ref_counting
CONFTEST: drm_atomic_helper_connector_dpms
CONFTEST: drm_driver_has_gem_prime_res_obj
CONFTEST: drm_connector_funcs_have_mode_in_name
CONFTEST: drm_framebuffer_get
CONFTEST: drm_gem_object_get
CONFTEST: drm_dev_put
CONFTEST: drm_format_num_planes
CONFTEST: drm_connector_for_each_possible_encoder
CONFTEST: is_export_symbol_gpl_of_node_to_nid
CONFTEST: is_export_symbol_present_swiotlb_map_sg_attrs
CONFTEST: is_export_symbol_present_swiotlb_dma_ops
CONFTEST: is_export_symbol_present___close_fd
CONFTEST: is_export_symbol_present_get_unused_fd
CONFTEST: is_export_symbol_present_get_unused_fd_flags
CONFTEST: is_export_symbol_present_screen_info
CONFTEST: is_export_symbol_present_kthread_create_on_node
CONFTEST: acpi_op_remove
CONFTEST: outer_flush_all
CONFTEST: file_operations
CONFTEST: file_inode
CONFTEST: kuid_t
CONFTEST: dma_ops
CONFTEST: swiotlb_dma_ops
CONFTEST: noncoherent_swiotlb_dma_ops
CONFTEST: vm_fault_has_address
CONFTEST: backlight_properties_type
CONFTEST: vm_insert_pfn_prot
CONFTEST: vmf_insert_pfn_prot
CONFTEST: vm_ops_fault_removed_vma_arg
CONFTEST: vmbus_channel_has_ringbuffer_page
CONFTEST: device_driver_of_match_table
CONFTEST: device_of_node
CONFTEST: node_states_n_memory
CONFTEST: kmem_cache_has_kobj_remove_work
CONFTEST: sysfs_slab_unlink
CONFTEST: proc_ops
CONFTEST: timeval
CONFTEST: address_space
CONFTEST: backing_dev_info
CONFTEST: mm_context_t
CONFTEST: vm_fault_t
CONFTEST: mmu_notifier_ops_invalidate_range
CONFTEST: drm_bus_present
CONFTEST: drm_bus_has_bus_type
CONFTEST: drm_bus_has_get_irq
CONFTEST: drm_bus_has_get_name
CONFTEST: drm_driver_has_legacy_dev_list
CONFTEST: drm_driver_has_set_busid
CONFTEST: drm_crtc_state_has_connectors_changed
CONFTEST: drm_init_function_args
CONFTEST: drm_helper_mode_fill_fb_struct
CONFTEST: drm_master_drop_has_from_release_arg
CONFTEST: drm_driver_unload_has_int_return_type
CONFTEST: drm_atomic_helper_crtc_destroy_state_has_crtc_arg
CONFTEST: drm_crtc_helper_funcs_has_atomic_enable
CONFTEST: drm_mode_object_find_has_file_priv_arg
CONFTEST: dma_buf_owner
CONFTEST: drm_connector_list_iter
CONFTEST: drm_atomic_helper_swap_state_has_stall_arg
CONFTEST: drm_driver_prime_flag_present
CONFTEST: drm_gem_object_has_resv
CONFTEST: dom0_kernel_present
CONFTEST: nvidia_vgpu_hyperv_available
CONFTEST: nvidia_vgpu_kvm_build
CONFTEST: nvidia_grid_build
CONFTEST: nvidia_grid_csp_build
CONFTEST: pm_runtime_available
CONFTEST: drm_available
CONFTEST: drm_atomic_available
CONFTEST: is_export_symbol_gpl_refcount_inc
CONFTEST: is_export_symbol_gpl_refcount_dec_and_test
CONFTEST: drm_alpha_blending_available
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-frontend.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-pci.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-acpi.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-cray.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-dma.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-i2c.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-mmap.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-p2p.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-pat.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-procfs.o
/tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-mmap.c: In function ‘nvidia_mmap’:
/tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-mmap.c:662:9: warning: unused variable ‘i’ [-Wunused-variable]
int i = 0;
^
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-usermap.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-vm.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-vtophys.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/os-interface.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/os-mlock.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/os-pci.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/os-registry.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/os-usermap.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-modeset-interface.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-pci-table.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-kthread-q.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-memdbg.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-ibmnpu.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-report-err.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-rsync.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-msi.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-vgpu-vmbus.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-caps.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv_uvm_interface.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nvlink_linux.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nvlink_caps.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/linux_nvswitch.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/procfs_nvswitch.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_ampere.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_ampere_ce.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_ampere_host.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_ampere_mmu.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm_utils.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm_common.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm_linux.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/nvstatus.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/nvCpuUuid.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/nv-kthread-q.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/nv-kthread-q-selftest.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_tools.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_global.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_gpu.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_gpu_isr.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_procfs.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_va_space.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_va_space_mm.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_gpu_semaphore.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_mem.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_rm_mem.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_channel.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_lock.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_hal.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_range_tree.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_range_allocator.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_va_range.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_va_block.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_range_group.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_gpu_replayable_faults.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_gpu_non_replayable_faults.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_gpu_access_counters.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_perf_events.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_perf_module.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_mmu.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_pte_batch.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_tlb_batch.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_push.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_pushbuffer.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_thread_context.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_tracker.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_kepler.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_kepler_ce.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_kepler_host.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_kepler_mmu.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_maxwell.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_maxwell_host.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_pascal.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_pascal_ce.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_pascal_host.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_pascal_mmu.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_pascal_fault_buffer.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_volta_host.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_volta_mmu.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_volta.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_volta_fault_buffer.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_volta_access_counter_buffer.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_turing.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_turing_mmu.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_turing_host.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_policy.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_perf_utils.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_kvmalloc.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_pmm_sysmem.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_pmm_gpu.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_migrate.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_populate_pageable.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_migrate_pageable.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_map_external.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_user_channel.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_hmm.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_perf_heuristics.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_perf_thrashing.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_perf_prefetch.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_ats_ibm.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_ats_faults.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_test_rng.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_range_tree_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_range_allocator_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_gpu_semaphore_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_mem_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_rm_mem_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_page_tree_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_tracker_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_push_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_channel_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_ce_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_lock_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_perf_utils_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_kvmalloc_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_pmm_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_pmm_sysmem_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_perf_events_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_perf_module_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_get_rm_ptes_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_fault_buffer_flush_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_mmu_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_peer_identity_mappings_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_va_block_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_range_group_tree_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm/uvm8_thread_context_test.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-modeset/nvidia-modeset-linux.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-modeset/nv-kthread-q.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-drv.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-utils.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-crtc.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-encoder.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-connector.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-gem.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-fb.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-modeset.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-prime-fence.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-linux.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-helper.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nv-pci-table.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-gem-nvkms-memory.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-gem-user-memory.o
CC [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm/nvidia-drm-format.o
ld -EL -r -o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-interface.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-frontend.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-pci.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-acpi.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-cray.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-dma.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kern
el/nvidia/nv-i2c.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-mmap.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-p2p.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-pat.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-procfs.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-usermap.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-vm.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-vtophys.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/os-interface.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/os-mlock.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/os-pci.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/os-registry.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/os-usermap.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-modeset-interface.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-pci-table.o /tmp/selfgz9433/NVI
DIA-Linux-aarch64-450.51/kernel/nvidia/nv-kthread-q.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-memdbg.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-ibmnpu.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-report-err.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-rsync.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-msi.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-vgpu-vmbus.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv-caps.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nv_uvm_interface.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nvlink_linux.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/nvlink_caps.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/linux_nvswitch.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia/procfs_nvswitch.o
ld -EL -r -o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-modeset/nv-modeset-interface.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-modeset/nvidia-modeset-linux.o /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-modeset/nv-kthread-q.o
LD [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia.o
LD [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm.o
LD [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-modeset.o
LD [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm.o
Building modules, stage 2.
MODPOST 4 modules
CC /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm.mod.o
CC /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-modeset.mod.o
CC /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm.mod.o
CC /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia.mod.o
LD [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-drm.ko
LD [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-modeset.ko
LD [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia-uvm.ko
LD [M] /tmp/selfgz9433/NVIDIA-Linux-aarch64-450.51/kernel/nvidia.ko
make[2]: Leaving directory ‘/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aarch64/kernel-4.9’
make[1]: Leaving directory ‘/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aarch64/kernel-4.9’
-> done.
-> Kernel module compilation complete.
-> Unable to determine if Secure Boot is enabled: No such file or directory
ERROR: Unable to load the kernel module ‘nvidia.ko’. This happens most frequently when this kernel module was built against the wrong or improperly configured kernel sources, with a version of gcc that differs from the one used to build the target kernel, or if another driver, such as nouveau, is present and prevents the NVIDIA kernel module from obtaining ownership of the NVIDIA GPU(s), or no NVIDIA GPU installed in this system is supported by this NVIDIA Linux graphics driver release.

Please see the log entries ‘Kernel module load error’ and ‘Kernel messages’ at the end of the file ‘/var/log/nvidia-installer.log’ for more information.
-> Kernel module load error: Exec format error
-> Kernel messages:
[ 43.064097] tegra_nvdisp_handle_pd_disable: Powergated Head0 pd
[ 43.064281] tegradc 15210000.nvdisplay: blank - powerdown
[ 43.238131] tegradc 15200000.nvdisplay: blank - powerdown
[ 43.238161] tegradc 15200000.nvdisplay: unblank
[ 43.239069] tegra_nvdisp_handle_pd_enable: Unpowergated Head0 pd
[ 43.239187] tegra_nvdisp_handle_pd_enable: Unpowergated Head1 pd
[ 43.241148] Parent Clock set for DC plld2
[ 43.246213] tegradc 15200000.nvdisplay: hdmi: tmds rate:148500K prod-setting:prod_c_hdmi_111m_223m
[ 43.247617] tegradc 15200000.nvdisplay: hdmi: get RGB quant from EDID.
[ 43.247626] tegradc 15200000.nvdisplay: hdmi: get YCC quant from EDID.
[ 43.282473] extcon-disp-state external-connection:disp-state: cable 47 state 1
[ 43.282477] Extcon AUX1(HDMI) enable
[ 43.282568] tegradc 15200000.nvdisplay: unblank
[ 43.282586] tegradc 15210000.nvdisplay: blank - powerdown
[ 47.069837] tegradc 15200000.nvdisplay: unblank
[ 47.069852] tegradc 15210000.nvdisplay: blank - powerdown
[ 428.812243] nvidia: loading out-of-tree module taints kernel.
[ 428.812275] nvidia: module license ‘NVIDIA’ taints kernel.
[ 428.812281] Disabling lock debugging due to kernel taint
[ 429.149616] nvidia: exports duplicate symbol nvidia_p2p_dma_map_pages (owned by nvgpu)
[ 441.405863] tegradc 15200000.nvdisplay: blank - powerdown
[ 441.464633] extcon-disp-state external-connection:disp-state: cable 47 state 0
[ 441.464638] Extcon AUX1(HDMI) disable
[ 441.488029] tegra_nvdisp_handle_pd_disable: Powergated Head1 pd
[ 441.489004] tegra_nvdisp_handle_pd_disable: Powergated Head0 pd
ERROR: Installation has failed. Please see the file ‘/var/log/nvidia-installer.log’ for details. You may find suggestions on fixing installation problems in the README available on the Linux driver download page at www.nvidia.com.
root@dingo-desktop:/home/dingo# lsmod
Module Size Used by
fuse 103841 5
zram 26166 6
overlay 48691 0
bnep 16562 2
rtk_btusb 63987 0
btusb 40213 0
btrtl 7318 1 btusb
btbcm 8808 1 btusb
btintel 10771 1 btusb
rtl8822ce 3243833 0
spidev 13282 0
cfg80211 589351 1 rtl8822ce
nvgpu 1579891 38
bluedroid_pm 13912 0
ip_tables 19441 0
x_tables 28951 1 ip_tables
root@dingo-desktop:/home/dingo#

I don’t know enough about what is in there to really answer. I am thinking though that the iGPU software (for a GPU integrated with the memory controller) might be in conflict with the code looking for dGPU (discrete GPU over PCI). Someone from NVIDIA will probably be required to be able to comment on how the “NVIDIA-Linux-aarch64-450.51.run” content mixes (or fails to mix) with a Jetson.

The SBSA aarch64 drivers (server-based system architecture) are for ARM-based servers, and not the Jetson. As linuxdev mentioned, the Jetson driver infrastructure is based on integrated GPU. The Jetson GPU drivers are all provided through JetPack.

pretty sure you missed the gist of the conversation we are trying to bring up an external RTX2060 GPU card connected with the pcie cable

The Jetson GPU driver infrastructure currently supports integrated GPU and not discrete GPU over PCIe. Those ARM drivers that you were trying to install are for ARM-based servers, and not Jetson.