Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package nvidia-jetson for openSUSE:Factory 
checked in at 2024-10-27 11:25:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nvidia-jetson (Old)
 and      /work/SRC/openSUSE:Factory/.nvidia-jetson.new.2020 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "nvidia-jetson"

Sun Oct 27 11:25:25 2024 rev:2 rq:1218417 version:36.4.0_20240912212859

Changes:
--------
--- /work/SRC/openSUSE:Factory/nvidia-jetson/nvidia-jetson.changes      
2024-09-03 13:38:39.193539728 +0200
+++ /work/SRC/openSUSE:Factory/.nvidia-jetson.new.2020/nvidia-jetson.changes    
2024-10-27 11:25:51.463853732 +0100
@@ -1,0 +2,240 @@
+Fri Oct 25 17:33:06 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- removed obsolete nv_repackager-no-sudo-use-bzip2.patch 
+
+-------------------------------------------------------------------
+Fri Oct 25 16:20:26 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- splitted off packaging firmware to a separate source package 
+  kernel-firmware-nvidia-jetson in order to separate license files
+- minor cleanup in specfile
+
+-------------------------------------------------------------------
+Fri Oct 25 12:39:21 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- 'nvethernet' considered stable now; instead blacklist upstream 
+  'dwmac_tegra'; use a separate modprobe.d snippet for this and
+  move it to -extra KMP, since 'nvethernet' is part of -extra
+  package
+
+-------------------------------------------------------------------
+Fri Oct 25 10:33:26 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- modprobe.d snippet
+  * on SLE Micro 6.0 remove 'tegra_drm' before loading 'nvidia'
+    module, then load it again (using systemd service file for
+    loading "nvidia-drm" doesn't work on SLE Micro 6.0 for some
+    reason)
+- use SUSE-Firmware as license tag for firmware package
+
+-------------------------------------------------------------------
+Wed Oct 23 11:25:42 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- dracut-crash-fix.patch
+  * fix for tegra-se module, which triggered dracut to crash
+
+-------------------------------------------------------------------
+Tue Oct 15 19:56:03 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- fixed sed command syntax in %post 
+
+-------------------------------------------------------------------
+Tue Oct 15 19:29:00 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- fixed preset file 
+
+-------------------------------------------------------------------
+Tue Oct 15 17:24:18 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- exclude systemd service and preset files for loading
+  "nvidia-drm" from firmware package file section to avoid a 
+  conflict between firmware package and KMPs
+
+-------------------------------------------------------------------
+Tue Oct 15 17:08:55 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- removed modules-load.d snippet, which loaded "nvidia" already
+  in initrd
+- use systemd service file for loading "nvidia-drm" and all 
+  depending modules before desktop starts
+- enable above systemd service by a systemd preset file
+- nvidia-drm options:
+  * switch from "modeset=0" to "modeset=1 fbdev=1"
+  * stay with "modeset=0" for IGX (patched during installation
+    using dmidecode to detect IGX hardware)
+- dracut.d snippet: keep nvidia modules out of initrd
+- removed obsolete micro6-kernel.patch 
+
+-------------------------------------------------------------------
+Fri Oct 11 11:33:53 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- 36.3.0/Jetpack 6.1 release (36.4.0-20240912212859)
+- updated source tarballs to git tag l4t-l4t-r36.4_eng_2024-09-12
+  * nvidia-oot
+    + drivers: spi: update misc register programming.
+    + rtl8822ce: Disable debug prints
+    + crypto: fix crypto_engine_ctx build error
+    + crypto: tegra: Fix size of buffer allocated
+    + rtl8822ce: Add Nvidia changes on v5.14.0.4-250
+    + rtl8822ce: Add driver version v5.14.0.4-250
+    + driver: platform: tegra: remove pfn_valid usage
+    + crypto: tegra: Align with upstream
+    + driver: platform: tegra: handle error path
+    + camera: Fix v4l2-compliance test fails
+    + vi5: camera: move allow_signal to dequeue
+    + scripts: conftest: Fix of_property_for_each_u32 test
+    + host1x-fence: Remove callback and cancel fence
+    + misc: mods: Disable MODS for Linux v6.11
+    + drivers: Fix bus->match for Linux v6.11
+    + drivers: pva: Fix build for Linux v6.11
+    + hwmon: f75308: Fix build for Linux v6.11
+    + block: virtual-storage: Disable for Linux v6.11
+    + ASoC: tegra: Fix redefinition error for Linux v6.11
+    + ASoC: tegra: Fix build for Linux v6.11
+    + nvmap: Implement nvmap_page_mapcount()
+    + gpu: host1x: Increase pushbuffer slots to 1023
+    + media: i2c: fix IMX390 SDR mode corruption
+    + host1x-fence:Free the kzalloc mem
+    + net: nvethernet: Fix build for Linux v6.11
+    + media: camera: Use of_pwm_xlate_with_flags()
+    + camera: add SBGGR12 color format
+    + vi5: camera: add ovrride capture timeout control
+    + nvethernet:Fix cbb error when ifconfig down
+    + media: camera: Fix crash in sensor drivers
+    + pci: Port pci-epf-tegra-vnet to support 5.14.0
+    + net: realtek: Add option to disable drivers
+    + trace: Fix build for Linux v6.10
+    + bt: realtek: Fix potential buffer overflow in cfg_list_item struct
+    + rtcpu: Port IVC bus driver to use iosys-map utils
+    + r8126: Enable support for RSS
+    + ethernet: Add dummy driver for r8126
+    + r8126: Add r8126 driver version 10.013.00-NAPI-PTP
+    + ethernet: Add dummy driver for r8126
+    + r8126: Change file permissions of source files
+    + r8126: Add r8126 driver version 10.013.00
+    + ethernet: Add dummy driver for r8168
+    + PCI: EPF: tvnet: disable the edma interrupt
+    + nvethernet: macsec: Add module param for macsec.
+    + gpu: host1x: Handle CDMA wraparound when debug printing
+    + r8168: Replace kernel version checks with conftest
+    + r8168: Disable 10M EEE
+    + r8168: Fix -20C 10mbps failure in Mods test
+    + r8168: Change file permissions of source files
+    + r8168: update driver to 8.053.00
+    + media: camera: Add missing conftest.h
+    + media: i2c: Fix build for Linux v6.1+
+    + media: i2c: enable IMX390 WDR mode
+    + tegra: tsec: port init_comms property to oot tree
+    + video: tsec: Set tsec state before power_on/off
+    + video: tsec: add support to reboot tsec fw with context
+    + net: nvethernet: Fix support for Linux v6.9
+    + cam_cdi_tsc: Fix Fsync IOCTL fail sometimes
+    + media: virtual-i2c-mux: Fix build for Linux v6.10
+    + media: camera: Fix build for Linux v6.10
+    + pwm: tachometer: Fix build for Linux v6.10
+    + block: virtual-storage: Allow build for Linux v6.10
+    + conftest: Fix tests for Linux v6.10
+    + nv-virtio-poc: Add missing header
+    + media: camera: Fix v4l2-subdev for Linux v6.10
+    + drivers: Fix missing vmalloc.h for Linux v6.10
+    + drivers: mttcan: fix bus-off restart txfer
+    + thermal: Fix build for Linux v6.10
+    + camera:driver: Fix the race condition of setting bypass mode.
+    + t23x:tpg:[WAR] Disable gain control to avoid insmod fail.
+    + net: nvethernet: Drop adjfreq support
+    + pci: endpoint: use conftest for pci-epf-tegra-vnet.c
+    + PCI: Fix endpoint DMA test for Linux v6.9
+    + pci: Use conftest to find if pci_epc_event_ops struct has core_deinit
+    + pcie: Enable core_deinit only when core has implemented it
+    + drivers: misc: fix implicit function
+    + drivers: misc: fix implicit conversion
+    + drivers: misc: Fix the argument of iommu_map() for Linux v6.3
+    + misc: nvscic2c-pcie: Drop usage of enum pci_epc_irq_type from Linux 6.8
+    + net: ethernet: build realtek ethernet driver only for k5.15
+    + tsec: Fix build with -Werror=old-style-declaration
+    + rtl8822ce: Initialize spinlock before usage
+    + rtl8822ce: Remove pr_debug redefinition
+    + net: nvethernet: Fix build for Linux v6.9
+    + nvmap: Fix build for Linux v6.9
+    + drivers: spi: remove spi_master_put() in probe
+    + spi: Fix build for Linux v6.9
+    + conftest: Fix test for SLAB_MEM_SPREAD
+    + net: nvethernet: Fix build for Linux v6.9
+    + media: camera: Ensure gpio_device_get_chip is present
+    + media: camera: Fix build for Linux v6.9
+    + media: camera: Update conftest for gpio_device_find
+    + video: tegra: virt: Fix build for Linux v6.9
+    + soc/tegra: bpmp: Fix build for Linux v6.9
+    + block: virtual-storage: Fix build for Linux v6.9
+    + rtl8822ce: Add Nvidia changes on v5.14.0.4-217
+    + rtl8822ce: Fix TLP/EAPOL/TXFIFO issues
+    + csi5:add error config
+    + drm/tegra: nvdec: Enable SLCG/PG
+  * nvgpu
+    + gpu: nvgpu: Fix build for Linux v6.11
+    + gpu: nvgpu: Use conftest for VM flags
+    + gpu: nvgpu: Fix missing vmalloc.h
+  * hwpm
+    + tegra: hwpm: Fix build for Linux v6.11
+  * nvdisplay
+    + Updating prebuilts and/or headers
+  * hardware/nvidia/t23x/nv-public
+    +  nv-platform: Add PEX WAKE GPIO interrupt for C1 controller
+    +  t23x: overlay: add no-map to vpr carveout
+    +  dts: optee: Update fTPM v2.0 nodes
+    +  nv-platform: Add edge safety services
+    +  p3768: dts: disable PCIe C8 in p3767 0000 PX1
+    +  nv-platform: Rename se nodes to crypto
+    +  nv-platform: Remove duplicate PCIe nodes
+    +  t23x: p3701-0000-as-p3767-000*: Update CPU Fmax
+    +  t23x:P3783: Fix failed to read 2nd Hawk EEPROM serial number.
+    +  t23x: nv-public: tegra: fix typo in dce fabric compatible
+    +  t23x: nv-public: Disable hot surface alert for IGX
+    +  overlay: t23x: fix IMX390 SDR mode corruption
+    +  t23x: nv-public: tegra: disable sce fabric node
+    +  tegra234: Add smmu_test node
+    +  Revert "nv-public: arm64: tegra: disable sce fabric node"
+    +  Revert "tegra234: Add smmu_test node"
+    +  tegra234: Add smmu_test node
+    +  nv-public: qspi: update prod entries for qspi.
+    +  nv-soc: Remove redundant properties of eth node
+    +  t23x: Remove override of clock speed for SBSA UART
+    +  arm64: tegra: Add missing current-speed for SBSA UART
+    +  nv-soc: Rename security engine nodes
+    +  UPSTREAM: arm64: tegra: Add Tegra Security Engine DT nodes
+    +  arm64: tegra: Add dmas and dma-names for Tegra234 UARTE
+    +  arm64: tegra: Mark Tegra234 SPI as compatible with Tegra114
+    +  arm64: tegra: Use correct format for clocks property
+    +  nv-public:P3783: Fix probe fail of Hawks during boot.
+    +  tegra234-camera: Update DT property for VI HW.
+    +  t23x: nv-soc: Disable nvidia,macsec-enable
+    +  t23x: Add Hawk & Owl overlays for P3762
+    +  nv-public: arm64: tegra: disable sce fabric node
+    +  nv-platform: unregister tmp451 from thermal zone
+    +  Revert "Revert "concord: add display hdcp property
+    +  tegra234: Correct the PCIE prefetch memory range
+    +  [UPSTREAM] arm64: tegra: Remove Jetson Orin NX and Jetson Orin Nano DTSI
+    +  [UPSTREAM] arm64: tegra: Add audio support for Jetson Orin NX and 
Jetson Orin Nano
+    +  [UPSTREAM] arm64: tegra: Define missing IO ports
+    +  [UPSTREAM] arm64: tegra: Move AHUB ports to SoC DTSI
+    +  nv-public: p3767: Remove change from mainline DT
+    +  Revert "concord: add display hdcp property"
+    +  overlay: t23x: enable IMX390 WDR mode
+    +  nv-public: p3740: fix cvb eeprom bus id
+    +  t23x: overlay: Remove legacy Sidecar overlay
+    +  t234:[P3762/P3783]:Increase i2cbus-8 freq to 400khz.
+    +  dt: soc: t234: add iommu mappings for vi&isp units
+    +  tegra234: overlay: Add fTPM node
+    +  t23x: optee-dts: Fix the TPM event log addr DT
+    +  nv-platform: add support for p3767 0000 PX1
+    +  soc: tegra234: Enable USB remote wakeup support
+    +  nv-public:P3762: Fix probe fail of Hawks during boot.
+- supersedes df9e50c.diff, micro6-kernel.patch
+- updated firmware tarball (release 36.4.0-20240912212859)
+
+-------------------------------------------------------------------
+Mon Sep 23 15:11:15 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- use better URL in specfile (boo#1222604, comment#87) 
+
+-------------------------------------------------------------------

Old:
----
  df9e50c.diff
  hardware_nvidia_t23x_nv-public-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
  hardware_nvidia_tegra_nv-public-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
  hwpm-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
  micro6-kernel.patch
  nv_repackager-no-sudo-use-bzip2.patch
  nvdisplay-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
  nvethernetrm-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
  nvgpu-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
  nvidia-l4t-firmware_36.3.1-20240516220919_arm64.tbz2
  nvidia-oot-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2

New:
----
  dracut-crash-fix.patch
  hardware_nvidia_t23x_nv-public-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
  hardware_nvidia_tegra_nv-public-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
  hwpm-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
  load-nvidia-drm.service
  nvdisplay-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
  nvethernetrm-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
  nvgpu-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
  nvidia-oot-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2

BETA DEBUG BEGIN:
  Old:    +  nv-public:P3762: Fix probe fail of Hawks during boot.
- supersedes df9e50c.diff, micro6-kernel.patch
- updated firmware tarball (release 36.4.0-20240912212859)
  Old:- dracut.d snippet: keep nvidia modules out of initrd
- removed obsolete micro6-kernel.patch 
  Old:
- removed obsolete nv_repackager-no-sudo-use-bzip2.patch 
BETA DEBUG END:

BETA DEBUG BEGIN:
  New:
- dracut-crash-fix.patch
  * fix for tegra-se module, which triggered dracut to crash
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ nvidia-jetson.spec ++++++
--- /var/tmp/diff_new_pack.4Nwarc/_old  2024-10-27 11:25:52.259886729 +0100
+++ /var/tmp/diff_new_pack.4Nwarc/_new  2024-10-27 11:25:52.263886895 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package nvidia-jetson
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -15,6 +15,7 @@
 # Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
+
 %if %{undefined kernel_module_directory}
 %if 0%{?usrmerged}
 %define kernel_module_directory /usr/lib/modules
@@ -25,13 +26,13 @@
 
 %define compress_modules zstd
 Name:           nvidia-jetson
-Version:        36.3.1_20240516220919
+Version:        36.4.0_20240912212859
 Release:        0
 Summary:        Open-Source NVIDIA Jetson Orin graphics drivers
 License:        GPL-2.0-only AND MIT
 Group:          System/Kernel
-URL:            https://partners.nvidia.com/
-Source0:        nvidia-oot-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
+URL:            https://developer.nvidia.com/embedded/jetson-linux-r363
+Source0:        nvidia-oot-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
 Source1:        kmp-post-extra.sh
 Source2:        kmp-postun-extra.sh
 Source3:        kmp-filelist
@@ -40,26 +41,23 @@
 Source7:        preamble
 Source8:        kmp-filelist-extra
 Source9:        preamble-extra
+Source10:       load-nvidia-drm.service
 Source14:       _constraints
-Source22:       nvgpu-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
-Source23:       hwpm-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
-Source24:       nvdisplay-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
-Source25:       nvethernetrm-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
-Source26:       
hardware_nvidia_t23x_nv-public-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
-Source27:       
hardware_nvidia_tegra_nv-public-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2
+Source22:       nvgpu-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
+Source23:       hwpm-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
+Source24:       nvdisplay-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
+Source25:       nvethernetrm-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
+Source26:       
hardware_nvidia_t23x_nv-public-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
+Source27:       
hardware_nvidia_tegra_nv-public-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2
 Source28:       Makefile-NVIDIA-BUG-4460318
-#Source30:       
https://developer.nvidia.com/downloads/igx/v1.0.0/jetson_linux_r36.3.1_aarch64.tbz2
-Source30:       nvidia-l4t-firmware_36.3.1-20240516220919_arm64.tbz2
 # Create on SolidDriver Program build service with ...
 # osc buildlog SLE_15_SP6 aarch64 | grep "missing supported flag" | sed -E 
's|.*/([^/]+\.ko).*|\1 external|' | sort | uniq > Module.supported
 # Unfortunately this is currently not working when building on build.suse.de
 # But dracut file below could be used for information as well ...
 Source29:       Module.supported
-Patch0:         micro6-kernel.patch
 Patch1:         reimplement-v4l2_match_dv_timings.patch
 Patch2:         persistent-nvidia-id-string.patch
-Patch3:         nv_repackager-no-sudo-use-bzip2.patch
-Patch4:         df9e50c.diff
+Patch4:         dracut-crash-fix.patch
 BuildRequires:  %{kernel_module_package_buildreqs}
 BuildRequires:  fdupes
 BuildRequires:  gcc-c++
@@ -68,6 +66,7 @@
 BuildRequires:  perl-Bootloader
 BuildRequires:  pesign-obs-integration
 BuildRequires:  zstd
+BuildRequires:  pkgconfig(systemd)
 ExclusiveArch:  aarch64
 
 %if 0%{!?kmp_template_name:1}
@@ -88,6 +87,7 @@
 
 ### needs to be set in preamble-extra
 #Summary:        Open-Source NVIDIA Jetson Orin drivers
+
 %description -n nvidia-jetson-extra-kmp-default
 This package provides additional Open-Source NVIDIA Jetson Orin drivers,
 which are also required by the NVIDIA Jetson Orin graphics drivers
@@ -95,19 +95,12 @@
 
 ### needs to be set in preamble-extra
 #Summary:        Open-Source NVIDIA Jetson Orin drivers
+
 %description -n nvidia-jetson-extra-kmp-64kb
 This package provides additional Open-Source NVIDIA Jetson Orin drivers,
 which are also required by the NVIDIA Jetson Orin graphics drivers
 (nvidia-jetson KMP).
 
-%package -n kernel-firmware-nvidia-jetson
-Summary:        Firmware files for NVIDIA Jetson Orin (graphics) drivers
-Group:          System/Kernel
-
-%description -n kernel-firmware-nvidia-jetson
-This package includes the needed firmware files for NVIDIA Jetson
-Orin (graphics) drivers.
-
 %prep
 echo suse_version: %suse_version
 echo sle_version: %sle_version
@@ -117,11 +110,6 @@
 tar xf %{SOURCE25} 
 popd
 cp $RPM_SOURCE_DIR/Makefile-NVIDIA-BUG-4460318 Makefile
-# needed for SL Micro 6.0 (SUSE:ALP:Source:Standard:1.0) Kernel, but not for
-# sle15-sp6 Kernel !!!
-%if 0%{?suse_version} == 1600
-%patch0 -p0
-%endif
 %patch1 -p1
 %patch2 -p1
 pushd nvidia-oot
@@ -140,11 +128,6 @@
 mkdir obj
 
 pushd ..
-#tar xf %{SOURCE30} 
-#cd Linux_for_Tegra
-#%patch3 -p1
-#./nv_tools/scripts/nv_repackager.sh -o ./nv_tegra/l4t_tar_packages 
--convert-all
-#popd
 
 %build
 # -Wall is upstream default
@@ -181,16 +164,26 @@
 mkdir -p $MODPROBE_DIR
 for flavor in %flavors_to_build; do
     cat > $MODPROBE_DIR/50-nvidia-$flavor.conf << EOF
-options nvidia-drm modeset=0
-blacklist nvethernet
+# IGX needs 0 for modeset; patched during installation
+options nvidia-drm modeset=1 fbdev=1
 options nvidia NVreg_DeviceFileUID=0 NVreg_DeviceFileGID=REALGID 
NVreg_DeviceFileMode=0660 rm_firmware_active="all" 
NVreg_RegistryDwords="RMHdcpKeyglobZero=1"
-install nvidia /sbin/modprobe tegra_drm; /sbin/modprobe --ignore-install 
nvidia; /sbin/modprobe nvidia-modeset
+EOF
+    ### Using systemd service file for loading "nvidia-drm" doesn't
+    ### work on SLE Micro 6.0 for some reason, but apparently this
+    ### line helps
+%if 0%{?suse_version} == 1600
+    cat >> $MODPROBE_DIR/50-nvidia-$flavor.conf << EOF
+install nvidia /sbin/rmmod tegra_drm; /sbin/modprobe --ignore-install nvidia; 
/sbin/modprobe tegra_drm
+EOF
+%endif
+    cat > $MODPROBE_DIR/50-nvidia-extra-$flavor.conf << EOF
+blacklist dwmac_tegra
 EOF
     mkdir -p %{buildroot}/usr/lib/dracut/dracut.conf.d
     
dracutfile=%{buildroot}/usr/lib/dracut/dracut.conf.d/60-nvidia-jetson-$flavor.conf
     
dracutfile_extra=%{buildroot}/usr/lib/dracut/dracut.conf.d/60-nvidia-jetson-extra-$flavor.conf
     cat > ${dracutfile} << EOF
-add_drivers+=" nvidia-drm nvidia-modeset nvidia "
+omit_drivers+=" nvidia-drm nvidia-modeset nvidia "
 EOF
     cat > ${dracutfile_extra} 
 # SL Micro 6.0 (SUSE:ALP:Source:Standard:1.0) 
@@ -207,40 +200,11 @@
             echo "omit_drivers+=${dname}" >> ${dracutfile_extra}
         fi 
     done
-    mkdir -p %{buildroot}/usr/lib/modules-load.d/
-    cat > %{buildroot}/usr/lib/modules-load.d/nvidia-load-${flavor}.conf << EOF
-nvidia
+    mkdir -p %{buildroot}/usr/lib/systemd/system
+    install -m 644 %{SOURCE10} 
%{buildroot}/usr/lib/systemd/system/load-nvidia-drm-$flavor.service
+    mkdir -p %{buildroot}%{_systemd_util_dir}/system-preset
+    cat >    
%{buildroot}%{_systemd_util_dir}/system-preset/70-nvidia-jetson-kmp-${flavor}.preset
 << EOF
+enable load-nvidia-drm-${flavor}.service
 EOF
 done
 
-#pushd ../Linux_for_Tegra/nv_tegra/l4t_tar_packages
-#  tar xjf nvidia-l4t-firmware_*_arm64.tbz2 -C $RPM_BUILD_ROOT/
-#popd
-tar xjf $RPM_SOURCE_DIR/nvidia-l4t-firmware_*_arm64.tbz2 -C $RPM_BUILD_ROOT/
-
-pushd $RPM_BUILD_ROOT/
-# etc/systemd/
-mkdir -p usr/lib/systemd
-mv  etc/systemd/*  usr/lib/systemd
-sed -i 's+/etc+/usr/lib+g' usr/lib/systemd/system/nvwifibt.service
-rmdir etc/systemd
-rmdir etc
-# lib/systemd/system/bluetooth.service/
-mv lib/systemd/system/bluetooth.service.d usr/lib/systemd/system
-rmdir lib/systemd/system
-rmdir lib/systemd
-# usr/share/doc
-mkdir -p usr/share/doc/packages/kernel-firmware-nvidia-jetson
-mv usr/share/doc/{bluez,nvidia-l4t-firmware,nvidia-tegra} 
usr/share/doc/packages/kernel-firmware-nvidia-jetson
-ln -snf service usr/sbin/rcnvwifibt
-popd
-
-%fdupes -s %{buildroot}/lib/firmware
-
-%files -n kernel-firmware-nvidia-jetson
-%doc /usr/share/doc/packages/kernel-firmware-nvidia-jetson/ 
-/lib/firmware/
-/usr/lib/systemd/
-/usr/sbin/brcm_patchram_plus
-/usr/sbin/rcnvwifibt
-

++++++ dracut-crash-fix.patch ++++++
>From 3415677f0fe7c8b971bd2d41b9e9f4b78f88233f Mon Sep 17 00:00:00 2001
From: Akhil R <akhilraj...@nvidia.com>
Date: Mon, 21 Oct 2024 11:33:32 +0530
Subject: [PATCH] crypto: tegra: Fix size of buffer allocated

Allocate the buffer based on the request instead of a fixed buffer
length. In operations which may require larger buffer size, a fixed
buffer may fail. Similar patch was added for AES algorithms. Fix the
same for HASH algorithms as well.

Bug 4908156

Signed-off-by: Akhil R <akhilraj...@nvidia.com>
---

diff --git a/drivers/crypto/tegra/tegra-se-aes.c 
b/drivers/crypto/tegra/tegra-se-aes.c
index 155754e..a7c972b 100644
--- a/drivers/crypto/tegra/tegra-se-aes.c
+++ b/drivers/crypto/tegra/tegra-se-aes.c
@@ -1572,6 +1572,11 @@
                return 0;
        }
 
+       rctx->datbuf.buf = dma_alloc_coherent(se->dev, rctx->datbuf.size,
+                                             &rctx->datbuf.addr, GFP_KERNEL);
+       if (!rctx->datbuf.buf)
+               return -ENOMEM;
+
        /* Copy the previous residue first */
        if (rctx->residue.size)
                memcpy(rctx->datbuf.buf, rctx->residue.buf, rctx->residue.size);
@@ -1618,14 +1623,26 @@
 
        if (!req->nbytes && !rctx->total_len && ctx->fallback_tfm) {
                return crypto_shash_tfm_digest(ctx->fallback_tfm,
-                                       rctx->datbuf.buf, 0, req->result);
+                                       NULL, 0, req->result);
        }
 
-       memcpy(rctx->datbuf.buf, rctx->residue.buf, rctx->residue.size);
        rctx->datbuf.size = rctx->residue.size;
        rctx->total_len += rctx->residue.size;
        rctx->config = tegra234_aes_cfg(SE_ALG_CMAC, 0);
 
+       if (rctx->residue.size) {
+               rctx->datbuf.buf = dma_alloc_coherent(se->dev, 
rctx->residue.size,
+                                                     &rctx->datbuf.addr, 
GFP_KERNEL);
+               if (!rctx->datbuf.buf) {
+                       ret = -ENOMEM;
+                       goto out_free;
+               }
+
+               memcpy(rctx->datbuf.buf, rctx->residue.buf, rctx->residue.size);
+       }
+
+       memcpy(rctx->datbuf.buf, rctx->residue.buf, rctx->residue.size);
+
        /* Prepare command and submit */
        cmdlen = tegra_cmac_prep_cmd(se, rctx);
        ret = tegra_se_host1x_submit(se, cmdlen);
@@ -1640,8 +1657,10 @@
                writel(0, se->base + se->hw->regs->result + (i * 4));
 
 out:
-       dma_free_coherent(se->dev, SE_SHA_BUFLEN,
-                         rctx->datbuf.buf, rctx->datbuf.addr);
+       if (rctx->residue.size)
+               dma_free_coherent(se->dev, rctx->datbuf.size,
+                                 rctx->datbuf.buf, rctx->datbuf.addr);
+out_free:
        dma_free_coherent(se->dev, crypto_ahash_blocksize(tfm) * 2,
                          rctx->residue.buf, rctx->residue.addr);
        return ret;
@@ -1757,15 +1776,9 @@
        rctx->residue.buf = dma_alloc_coherent(se->dev, rctx->blk_size * 2,
                                               &rctx->residue.addr, GFP_KERNEL);
        if (!rctx->residue.buf)
-               goto resbuf_fail;
+               return -ENOMEM;
 
        rctx->residue.size = 0;
-
-       rctx->datbuf.buf = dma_alloc_coherent(se->dev, SE_SHA_BUFLEN,
-                                             &rctx->datbuf.addr, GFP_KERNEL);
-       if (!rctx->datbuf.buf)
-               goto datbuf_fail;
-
        rctx->datbuf.size = 0;
 
        /* Clear any previous result */
@@ -1773,12 +1786,6 @@
                writel(0, se->base + se->hw->regs->result + (i * 4));
 
        return 0;
-
-datbuf_fail:
-       dma_free_coherent(se->dev, rctx->blk_size, rctx->residue.buf,
-                         rctx->residue.addr);
-resbuf_fail:
-       return -ENOMEM;
 }
 
 static int tegra_cmac_setkey(struct crypto_ahash *tfm, const u8 *key,
diff --git a/drivers/crypto/tegra/tegra-se-hash.c 
b/drivers/crypto/tegra/tegra-se-hash.c
index f86b65b..bdcc323 100644
--- a/drivers/crypto/tegra/tegra-se-hash.c
+++ b/drivers/crypto/tegra/tegra-se-hash.c
@@ -335,6 +335,11 @@
                return 0;
        }
 
+       rctx->datbuf.buf = dma_alloc_coherent(ctx->se->dev, rctx->datbuf.size,
+                                             &rctx->datbuf.addr, GFP_KERNEL);
+       if (!rctx->datbuf.buf)
+               return -ENOMEM;
+
        /* Copy the previous residue first */
        if (rctx->residue.size)
                memcpy(rctx->datbuf.buf, rctx->residue.buf, rctx->residue.size);
@@ -371,6 +376,9 @@
        if (!(rctx->task & SHA_FINAL))
                tegra_sha_copy_hash_result(ctx->se, rctx);
 
+       dma_free_coherent(ctx->se->dev, rctx->datbuf.size,
+                         rctx->datbuf.buf, rctx->datbuf.addr);
+
        return ret;
 }
 
@@ -383,15 +391,24 @@
        u32 *cpuvaddr = se->cmdbuf->addr;
        int size, ret = 0;
 
-       memcpy(rctx->datbuf.buf, rctx->residue.buf, rctx->residue.size);
        rctx->datbuf.size = rctx->residue.size;
        rctx->total_len += rctx->residue.size;
 
        rctx->config = tegra_sha_get_config(rctx->alg) |
                       SE_SHA_DST_MEMORY;
 
-       size = tegra_sha_prep_cmd(se, cpuvaddr, rctx);
+       if (rctx->residue.size) {
+               rctx->datbuf.buf = dma_alloc_coherent(se->dev, 
rctx->residue.size,
+                                                     &rctx->datbuf.addr, 
GFP_KERNEL);
+               if (!rctx->datbuf.buf) {
+                       ret = -ENOMEM;
+                       goto out_free;
+               }
 
+               memcpy(rctx->datbuf.buf, rctx->residue.buf, rctx->residue.size);
+       }
+
+       size = tegra_sha_prep_cmd(se, cpuvaddr, rctx);
        ret = tegra_se_host1x_submit(se, size);
        if (ret)
                goto out;
@@ -400,8 +417,10 @@
        memcpy(req->result, rctx->digest.buf, rctx->digest.size);
 
 out:
-       dma_free_coherent(se->dev, SE_SHA_BUFLEN,
-                         rctx->datbuf.buf, rctx->datbuf.addr);
+       if (rctx->residue.size)
+               dma_free_coherent(se->dev, rctx->datbuf.size,
+                                 rctx->datbuf.buf, rctx->datbuf.addr);
+out_free:
        dma_free_coherent(se->dev, crypto_ahash_blocksize(tfm),
                          rctx->residue.buf, rctx->residue.addr);
        dma_free_coherent(se->dev, rctx->digest.size, rctx->digest.buf,
@@ -540,19 +559,11 @@
        if (!rctx->residue.buf)
                goto resbuf_fail;
 
-       rctx->datbuf.buf = dma_alloc_coherent(se->dev, SE_SHA_BUFLEN,
-                                             &rctx->datbuf.addr, GFP_KERNEL);
-       if (!rctx->datbuf.buf)
-               goto datbuf_fail;
-
        return 0;
 
-datbuf_fail:
-       dma_free_coherent(se->dev, rctx->blk_size, rctx->residue.buf,
-                         rctx->residue.addr);
 resbuf_fail:
-       dma_free_coherent(se->dev, SE_SHA_BUFLEN, rctx->datbuf.buf,
-                         rctx->datbuf.addr);
+       dma_free_coherent(se->dev, rctx->digest.size, rctx->digest.buf,
+                         rctx->digest.addr);
 digbuf_fail:
        return -ENOMEM;
 }
diff --git a/drivers/crypto/tegra/tegra-se.h b/drivers/crypto/tegra/tegra-se.h
index ec5768f..900d6bf 100644
--- a/drivers/crypto/tegra/tegra-se.h
+++ b/drivers/crypto/tegra/tegra-se.h
@@ -342,7 +342,6 @@
 #define SE_CRYPTO_CTR_REG_COUNT                        4
 #define SE_MAX_KEYSLOT                         15
 #define SE_MAX_MEM_ALLOC                       SZ_4M
-#define SE_SHA_BUFLEN                          0x2000
 
 #define SHA_FIRST      BIT(0)
 #define SHA_UPDATE     BIT(1)

++++++ hardware_nvidia_t23x_nv-public-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2 -> 
hardware_nvidia_t23x_nv-public-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2 ++++++
++++ 10937 lines of diff (skipped)

++++++ hardware_nvidia_tegra_nv-public-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2 
-> hardware_nvidia_tegra_nv-public-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2 ++++++

++++++ hwpm-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2 -> 
hwpm-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwpm/drivers/tegra/hwpm/os/linux/driver.c 
new/hwpm/drivers/tegra/hwpm/os/linux/driver.c
--- old/hwpm/drivers/tegra/hwpm/os/linux/driver.c       2024-06-03 
02:55:42.509546896 +0200
+++ new/hwpm/drivers/tegra/hwpm/os/linux/driver.c       2024-10-11 
12:57:52.196435498 +0200
@@ -1,6 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0-only
 /*
- * Copyright (c) 2021-2023 NVIDIA CORPORATION & AFFILIATES. All rights 
reserved.
+ * Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. All rights 
reserved.
  *
  * This program is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
@@ -251,9 +251,21 @@
        return 0;
 }
 
+#if defined(NV_PLATFORM_DRIVER_STRUCT_REMOVE_RETURNS_VOID) /* Linux v6.11 */
+static inline void tegra_hwpm_remove_wrapper(struct platform_device *pdev)
+{
+       tegra_hwpm_remove(pdev);
+}
+#else
+static inline int tegra_hwpm_remove_wrapper(struct platform_device *pdev)
+{
+       return tegra_hwpm_remove(pdev);
+}
+#endif
+
 static struct platform_driver tegra_soc_hwpm_pdrv = {
        .probe          = tegra_hwpm_probe,
-       .remove         = tegra_hwpm_remove,
+       .remove         = tegra_hwpm_remove_wrapper,
        .driver         = {
                .name   = TEGRA_SOC_HWPM_MODULE_NAME,
                .of_match_table = of_match_ptr(tegra_soc_hwpm_of_match),

++++++ kmp-filelist ++++++
--- /var/tmp/diff_new_pack.4Nwarc/_old  2024-10-27 11:25:52.811909611 +0100
+++ /var/tmp/diff_new_pack.4Nwarc/_new  2024-10-27 11:25:52.815909777 +0100
@@ -9,6 +9,7 @@
 %dir /usr/lib/dracut
 %dir /usr/lib/dracut/dracut.conf.d
 /usr/lib/dracut/dracut.conf.d/60-nvidia-jetson-%1.conf
-%dir /usr/lib/modules-load.d
-/usr/lib/modules-load.d/nvidia-load-%1.conf
+%{_unitdir}/load-nvidia-drm-%1.service
+%dir %{_systemd_util_dir}/system-preset
+%{_systemd_util_dir}/system-preset/70-nvidia-jetson-kmp-%1.preset 
 

++++++ kmp-filelist-extra ++++++
--- /var/tmp/diff_new_pack.4Nwarc/_old  2024-10-27 11:25:52.839910772 +0100
+++ /var/tmp/diff_new_pack.4Nwarc/_new  2024-10-27 11:25:52.843910938 +0100
@@ -5,6 +5,8 @@
 %exclude %{kernel_module_directory}/%2-%1/updates/nvidia-drm.ko*
 %exclude %{kernel_module_directory}/%2-%1/updates/nvidia-modeset.ko*
 %exclude %{kernel_module_directory}/%2-%1/updates/nvidia.ko*
+%dir /lib/modprobe.d
+/lib/modprobe.d/50-nvidia-extra-%1.conf
 %dir /usr/lib/dracut
 %dir /usr/lib/dracut/dracut.conf.d
 /usr/lib/dracut/dracut.conf.d/60-nvidia-jetson-extra-%1.conf

++++++ kmp-post.sh ++++++
--- /var/tmp/diff_new_pack.4Nwarc/_old  2024-10-27 11:25:52.883912597 +0100
+++ /var/tmp/diff_new_pack.4Nwarc/_new  2024-10-27 11:25:52.887912762 +0100
@@ -16,4 +16,9 @@
 GID=$(getent group video | cut -d: -f3)
 sed -i "s/REALGID/$GID/" /lib/modprobe.d/50-nvidia-$flavor.conf
 
+# IGX needs 0 for modeset
+if dmidecode |grep "Product Name"|grep -q IGX; then
+  sed -i "s/modeset=1/modeset=0/" /lib/modprobe.d/50-nvidia-$flavor.conf
+fi
+
 

++++++ load-nvidia-drm.service ++++++
[Unit]
Description=Load nvidia-drm
Before=xdm.service
After=systemd-user-sessions.service systemd-logind.service

[Service]
Type=oneshot
ExecStart=/sbin/modprobe nvidia-drm
RemainAfterExit=yes

[Install]
WantedBy=graphical.target


++++++ nvdisplay-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2 -> 
nvdisplay-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2 ++++++
++++ 6213 lines of diff (skipped)

++++++ nvethernetrm-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2 -> 
nvethernetrm-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2 ++++++

++++++ nvgpu-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2 -> 
nvgpu-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvgpu/drivers/gpu/nvgpu/os/linux/debug_gr.c 
new/nvgpu/drivers/gpu/nvgpu/os/linux/debug_gr.c
--- old/nvgpu/drivers/gpu/nvgpu/os/linux/debug_gr.c     2024-06-03 
02:55:39.933494062 +0200
+++ new/nvgpu/drivers/gpu/nvgpu/os/linux/debug_gr.c     2024-10-11 
12:57:49.464380167 +0200
@@ -1,18 +1,9 @@
-/*
- * Copyright (c) 2017-2023, NVIDIA CORPORATION.  All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-2.0-only
+// SPDX-FileCopyrightText: Copyright (c) 2017-2024 NVIDIA CORPORATION & 
AFFILIATES. All rights reserved.
+
+#if defined(CONFIG_NVIDIA_CONFTEST)
+#include <nvidia/conftest.h>
+#endif
 
 #include <nvgpu/gk20a.h>
 #include <nvgpu/gr/ctx.h>
@@ -250,7 +241,7 @@
                err = -EINVAL;
                goto done;
        }
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 3, 0)
+#if defined(NV_VM_AREA_STRUCT_HAS_CONST_VM_FLAGS) /* Linux v6.3 */
        vm_flags_set(vma, VM_DONTCOPY | VM_DONTEXPAND | VM_NORESERVE |
                         VM_DONTDUMP | VM_PFNMAP);
        vm_flags_clear(vma, VM_MAYWRITE);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvgpu/drivers/gpu/nvgpu/os/linux/dmabuf_nvs.c 
new/nvgpu/drivers/gpu/nvgpu/os/linux/dmabuf_nvs.c
--- old/nvgpu/drivers/gpu/nvgpu/os/linux/dmabuf_nvs.c   2024-06-03 
02:55:39.933494062 +0200
+++ new/nvgpu/drivers/gpu/nvgpu/os/linux/dmabuf_nvs.c   2024-10-11 
12:57:49.464380167 +0200
@@ -1,18 +1,9 @@
-/*
- * Copyright (c) 2022-2023, NVIDIA CORPORATION.  All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-2.0-only
+// SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & 
AFFILIATES. All rights reserved.
+
+#if defined(CONFIG_NVIDIA_CONFTEST)
+#include <nvidia/conftest.h>
+#endif
 
 #include <linux/version.h>
 #include <linux/dma-buf.h>
@@ -144,7 +135,7 @@
 
        nvgpu_nvs_ctrl_fifo_lock_queues(g);
 
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 3, 0)
+#if defined(NV_VM_AREA_STRUCT_HAS_CONST_VM_FLAGS) /* Linux v6.3 */
        vm_flags_set(vma, VM_DONTCOPY | VM_DONTEXPAND | VM_NORESERVE |
                VM_DONTDUMP);
 #else
@@ -153,7 +144,7 @@
 #endif
 
        if (buf->mask == NVGPU_NVS_CTRL_FIFO_QUEUE_CLIENT_EVENTS_READ) {
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 3, 0)
+#if defined(NV_VM_AREA_STRUCT_HAS_CONST_VM_FLAGS) /* Linux v6.3 */
                vm_flags_set(vma, VM_SHARED);
 #else
                vma->vm_flags |= VM_SHARED;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvgpu/drivers/gpu/nvgpu/os/linux/fecs_trace_linux.c 
new/nvgpu/drivers/gpu/nvgpu/os/linux/fecs_trace_linux.c
--- old/nvgpu/drivers/gpu/nvgpu/os/linux/fecs_trace_linux.c     2024-06-03 
02:55:39.933494062 +0200
+++ new/nvgpu/drivers/gpu/nvgpu/os/linux/fecs_trace_linux.c     2024-10-11 
12:57:49.464380167 +0200
@@ -1,23 +1,11 @@
-/*
- * Copyright (c) 2016-2020, NVIDIA CORPORATION.  All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-2.0-only
+// SPDX-FileCopyrightText: Copyright (c) 2016-2024 NVIDIA CORPORATION & 
AFFILIATES. All rights reserved.
 
 #include <linux/wait.h>
 #include <linux/ktime.h>
 #include <linux/uaccess.h>
 #include <linux/poll.h>
+#include <linux/vmalloc.h>
 #include <nvgpu/trace.h>
 #include <uapi/linux/nvgpu.h>
 #include <nvgpu/kmem.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvgpu/drivers/gpu/nvgpu/os/linux/ioctl_ctrl.c 
new/nvgpu/drivers/gpu/nvgpu/os/linux/ioctl_ctrl.c
--- old/nvgpu/drivers/gpu/nvgpu/os/linux/ioctl_ctrl.c   2024-06-03 
02:55:39.933494062 +0200
+++ new/nvgpu/drivers/gpu/nvgpu/os/linux/ioctl_ctrl.c   2024-10-11 
12:57:49.468380248 +0200
@@ -1,6 +1,10 @@
 // SPDX-License-Identifier: GPL-2.0-only
 // SPDX-FileCopyrightText: Copyright (c) 2011-2024 NVIDIA CORPORATION & 
AFFILIATES. All rights reserved.
 
+#if defined(CONFIG_NVIDIA_CONFTEST)
+#include <nvidia/conftest.h>
+#endif
+
 #include <linux/version.h>
 #include <linux/uaccess.h>
 #include <linux/cdev.h>
@@ -2853,7 +2857,7 @@
 
        nvgpu_mutex_acquire(&l->ctrl_privs_lock);
 
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 3, 0)
+#if defined(NV_VM_AREA_STRUCT_HAS_CONST_VM_FLAGS) /* Linux v6.3 */
        vm_flags_set(vma, VM_IO | VM_DONTCOPY | VM_DONTEXPAND | VM_NORESERVE |
                VM_DONTDUMP | VM_PFNMAP);
 #else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvgpu/drivers/gpu/nvgpu/os/linux/linux-dma.c 
new/nvgpu/drivers/gpu/nvgpu/os/linux/linux-dma.c
--- old/nvgpu/drivers/gpu/nvgpu/os/linux/linux-dma.c    2024-06-03 
02:55:39.937494146 +0200
+++ new/nvgpu/drivers/gpu/nvgpu/os/linux/linux-dma.c    2024-10-11 
12:57:49.468380248 +0200
@@ -1,9 +1,10 @@
 // SPDX-License-Identifier: GPL-2.0-only
-// SPDX-FileCopyrightText: Copyright (c) 2017-2023 NVIDIA CORPORATION & 
AFFILIATES. All rights reserved.
+// SPDX-FileCopyrightText: Copyright (c) 2017-2024 NVIDIA CORPORATION & 
AFFILIATES. All rights reserved.
 
 #include <linux/dma-mapping.h>
 #include <linux/slab.h>
 #include <linux/iommu.h>
+#include <linux/vmalloc.h>
 
 #include <nvgpu/log.h>
 #include <nvgpu/dma.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nvgpu/drivers/gpu/nvgpu/os/linux/module.c 
new/nvgpu/drivers/gpu/nvgpu/os/linux/module.c
--- old/nvgpu/drivers/gpu/nvgpu/os/linux/module.c       2024-06-03 
02:55:39.937494146 +0200
+++ new/nvgpu/drivers/gpu/nvgpu/os/linux/module.c       2024-10-11 
12:57:49.468380248 +0200
@@ -1,10 +1,14 @@
 // SPDX-License-Identifier: GPL-2.0-only
-// SPDX-FileCopyrightText: Copyright (c) 2011-2023 NVIDIA CORPORATION & 
AFFILIATES. All rights reserved.
+// SPDX-FileCopyrightText: Copyright (c) 2011-2024 NVIDIA CORPORATION & 
AFFILIATES. All rights reserved.
 
 /*
  * GK20A Graphics
  */
 
+#if defined(CONFIG_NVIDIA_CONFTEST)
+#include <nvidia/conftest.h>
+#endif
+
 #include <linux/module.h>
 #include <linux/of.h>
 #include <linux/of_device.h>
@@ -2073,9 +2077,21 @@
        return err;
 }
 
+#if defined(NV_PLATFORM_DRIVER_STRUCT_REMOVE_RETURNS_VOID) /* Linux v6.11 */
+static inline void __exit gk20a_remove_wrapper(struct platform_device *pdev)
+{
+       gk20a_remove(pdev);
+}
+#else
+static inline int __exit gk20a_remove_wrapper(struct platform_device *pdev)
+{
+       return gk20a_remove(pdev);
+}
+#endif
+
 static struct platform_driver gk20a_driver = {
        .probe = gk20a_probe,
-       .remove = __exit_p(gk20a_remove),
+       .remove = __exit_p(gk20a_remove_wrapper),
        .shutdown = gk20a_pm_shutdown,
        .driver = {
                .owner = THIS_MODULE,

++++++ nvidia-oot-l4t-l4t-r36.3.1_eng_2024-05-29.tar.bz2 -> 
nvidia-oot-l4t-l4t-r36.4_eng_2024-09-12.tar.bz2 ++++++
++++ 113519 lines of diff (skipped)

Reply via email to