Compiling a custom kernel for 15khz/interlaced support: Difference between revisions

Created page with "= Building Linux 7.2.2 with AMDGPU Interlaced Support (RX 6600 XT / DCN) This guide applies '''only''' the necessary patch for interlaced modes on modern AMDGPU (DCN2/DCN3/DCN4), such as the RX 6600 XT. == 1. Download Kernel Source == <source lang="bash"> cd ~ wget https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.2.2.tar.xz tar -xf linux-7.2.2.tar.xz cd linux-7.2.2 </source> == 2. Download the Interlaced Patch == <source lang="bash"> wget https://raw.githubuserc..."
 
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Building Linux 7.2.2 with AMDGPU Interlaced Support (RX 6600 XT / DCN)
= Building Linux 7.2.2 with AMDGPU Interlaced Support (RX 6600 XT / DCN) =


This guide applies '''only''' the necessary patch for interlaced modes on modern AMDGPU (DCN2/DCN3/DCN4), such as the RX 6600 XT.
This guide applies '''only''' the necessary patch for interlaced modes on modern AMDGPU (DCN2/DCN3/DCN4), such as the RX 6600 XT.
Line 5: Line 5:
== 1. Download Kernel Source ==
== 1. Download Kernel Source ==


<source lang="bash">
  wget https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.2.2.tar.xz
cd ~
  tar -xf linux-7.2.2.tar.xz
wget https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.2.2.tar.xz
  cd linux-7.2.2
tar -xf linux-7.2.2.tar.xz
cd linux-7.2.2
</source>


== 2. Download the Interlaced Patch ==
== 2. Download the Interlaced Patch ==


<source lang="bash">
  wget https://raw.githubusercontent.com/D0023R/linux_kernel_15khz/master/linux-7.2/03_linux_15khz_dcn1_dcn2_dcn3_dcn4_interlaced_mode_fix.patch
wget https://raw.githubusercontent.com/D0023R/linux_kernel_15khz/master/linux-7.2/03_linux_15khz_dcn1_dcn2_dcn3_dcn4_interlaced_mode_fix.patch
</source>


== 3. Apply the Patch ==
== 3. Apply the Patch ==


<source lang="bash">
  patch -p1 < 03_linux_15khz_dcn1_dcn2_dcn3_dcn4_interlaced_mode_fix.patch
patch -p1 < 03_linux_15khz_dcn1_dcn2_dcn3_dcn4_interlaced_mode_fix.patch
</source>


== 4. Configure the Kernel ==
== 4. Configure the Kernel based on the existing config ==


<source lang="bash">
  cp /boot/config-$(uname -r) .config
cp /boot/config-$(uname -r) .config
  make olddefconfig
make olddefconfig
</source>


(Optional) Add a custom version string:
(Optional) Add a custom version string:


<source lang="bash">
  scripts/config --set-str LOCALVERSION "-interlace"
scripts/config --set-str LOCALVERSION "-interlace"
</source>


== 5. Build ==
== 5. Build ==


<source lang="bash">
  make -j$(nproc)
make -j$(nproc)
</source>


Or create Debian packages:
Or create Debian packages:


<source lang="bash">
  make -j$(nproc) bindeb-pkg
make -j$(nproc) bindeb-pkg
</source>


== 6. Install ==
== 6. Install ==


<source lang="bash">
  sudo make modules_install
sudo make modules_install
  sudo make install
sudo make install
</source>


Or with packages:
Or with packages:


<source lang="bash">
  sudo dpkg -i ../linux-image-*.deb ../linux-headers-*.deb
sudo dpkg -i ../linux-image-*.deb ../linux-headers-*.deb
</source>


Update bootloader:
Update bootloader:


<source lang="bash">
  sudo update-initramfs -u
sudo update-initramfs -u
  sudo update-grub
sudo update-grub
</source>


Reboot and select the new kernel.
Reboot and select the new kernel.

Latest revision as of 03:19, 9 September 2026

Building Linux 7.2.2 with AMDGPU Interlaced Support (RX 6600 XT / DCN)[edit]

This guide applies only the necessary patch for interlaced modes on modern AMDGPU (DCN2/DCN3/DCN4), such as the RX 6600 XT.

1. Download Kernel Source[edit]

 wget https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.2.2.tar.xz
 tar -xf linux-7.2.2.tar.xz
 cd linux-7.2.2

2. Download the Interlaced Patch[edit]

 wget https://raw.githubusercontent.com/D0023R/linux_kernel_15khz/master/linux-7.2/03_linux_15khz_dcn1_dcn2_dcn3_dcn4_interlaced_mode_fix.patch

3. Apply the Patch[edit]

 patch -p1 < 03_linux_15khz_dcn1_dcn2_dcn3_dcn4_interlaced_mode_fix.patch

4. Configure the Kernel based on the existing config[edit]

 cp /boot/config-$(uname -r) .config
 make olddefconfig

(Optional) Add a custom version string:

 scripts/config --set-str LOCALVERSION "-interlace"

5. Build[edit]

 make -j$(nproc)

Or create Debian packages:

 make -j$(nproc) bindeb-pkg

6. Install[edit]

 sudo make modules_install
 sudo make install

Or with packages:

 sudo dpkg -i ../linux-image-*.deb ../linux-headers-*.deb

Update bootloader:

 sudo update-initramfs -u
 sudo update-grub

Reboot and select the new kernel.

Notes[edit]

  • This patch enables interlace_allowed on AMDGPU DCN connectors and removes the temporary interlacing block.
  • No 15 kHz / low-dotclock modes are added.
  • After reboot, test interlaced modes with xrandr or your preferred tool.