How to use nouveau on the Thor Dev-Kit?

On thor dev-kit, I disabled the nvidia.ko and others, enable the nouveau.ko, but there is no disaplay on screen.then how should I use the nouveau.ko? thanks.

below lines are about nvidia.ko and nouveau.ko :

nvidia@ThorA:~$ lsmod | grep nvidia
nvidia_vrs_pseq 12288 0
nvidia_cspmu 28672 0
arm_cspmu_module 20480 1 nvidia_cspmu

nvidia@ThorA:~$ lsmod | grep nouveau
nouveau 2236416 0
drm_gpuvm 32768 1 nouveau
drm_exec 12288 2 drm_gpuvm,nouveau
gpu_sched 53248 1 nouveau
drm_ttm_helper 12288 1 nouveau
ttm 73728 2 drm_ttm_helper,nouveau
drm_display_helper 147456 2 tegra_drm,nouveau
drm_kms_helper 176128 3 drm_display_helper,tegra_drm,nouveau
drm 536576 10 gpu_sched,drm_kms_helper,drm_exec,drm_gpuvm,drm_display_helper,teg
ra_drm,drm_ttm_helper,ttm,nouveau

I don’t think that will be possible. Most of the NVIDIA drivers are for discrete GPUs (dGPU) on the PCI bus. In Jetsons the GPU is wired directly to the memory controller (iGPU), and the drivers required tend to be specific to the GPU. Unless something has changed in Thor such that a dGPU is now used (and so far as I know this is not the case), then the driver must be specific to this particular iGPU on the memory controller.

In Thor Dev-Kit with default nvidia.ko, show driver like this:

nvidia@ThorA:~$ lspci -k

0000:01:00.0 3D controller: NVIDIA Corporation Device 2b00 (rev a1)

Kernel driver in use: nvidia

Kernel modules: nouveau, nvidia_drm, nvidia

so, Is nouveau the candidate driver?

but switch to nouveau, it can not display anything in the screen, and dmesg report error like this:

nvidia@ThorA:~$ sudo dmesg | grep nouveau
[ 10.969811] nouveau 0000:01:00.0: Adding to iommu group 58
[ 10.974697] nouveau 0000:01:00.0: enabling device (0000 → 0002)
[ 10.974738] nouveau 0000:01:00.0: unknown chipset (1ab000a1)

attached file is the full dmesg from minicom:

minicom_nouveau.txt (318.6 KB)

Please help verify if the nouveau driver is available on the Thor platform. If so, please provide instructions for switching to it.

That is a good question, one I can’t answer. It is just a guess, but I suppose part of the answer will revolve around the NVIDIA driver moving to user space. Perhaps nouveau is in kernel space and “plugging in” the NVIDIA user space driver.

Someone from NVIDIA will have to answer that.

Is there a specific goal or reason for wanting the Nouveau driver only for the GPU? I doubt it is compatible with anything related to CUDA.

the reason for wanting the Nouveau driver just because this:

We must use HDMI to replace the DP, but it needs new version of JetPack, and maybe getting OK in Dec.

So have a try about Nouveau.

The change from DP to HDMI explains a lot. I have doubts that Nouveau can handle the iGPU, and if it does, then it might be reverting to software rendering. It is probably important to find out exactly what configuration is not supported since it might be due to a device tree setting, or it might be a limitation on the GPU hardware itself (in which case Nouveau wouldn’t help anyway).

Maybe @WayneWWW or someone from NVIDIA could look up what causes that specific error from your log when changing from DP to HDMI in a custom carrier board:
The requested configuration of display devices (FDR iFOUND (DP-0), FDR iFOUND (HDMI-0)) is not supported on this GPU.

Perhaps there is an alternative device tree change which can fix this.