Compiling a custom kernel for 15khz/interlaced support: Difference between revisions
No edit summary |
No edit summary |
||
| Line 5: | Line 5: | ||
== 1. Download Kernel Source == | == 1. Download Kernel Source == | ||
cd ~ | |||
cd ~ | wget https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.2.2.tar.xz | ||
wget https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.2.2.tar.xz | tar -xf linux-7.2.2.tar.xz | ||
tar -xf linux-7.2.2.tar.xz | cd linux-7.2.2 | ||
cd linux-7.2.2 | |||
== 2. Download the Interlaced Patch == | == 2. Download the Interlaced 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 | |||
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 == | == 3. Apply the Patch == | ||
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 | |||
== 4. Configure the Kernel == | == 4. Configure the Kernel == | ||
cp /boot/config-$(uname -r) .config | |||
cp /boot/config-$(uname -r) .config | make olddefconfig | ||
make olddefconfig | |||
(Optional) Add a custom version string: | (Optional) Add a custom version string: | ||
scripts/config --set-str LOCALVERSION "-interlace" | |||
scripts/config --set-str LOCALVERSION "-interlace" | |||
== 5. Build == | == 5. Build == | ||
make -j$(nproc) | |||
make -j$(nproc) | |||
Or create Debian packages: | Or create Debian packages: | ||
make -j$(nproc) bindeb-pkg | |||
make -j$(nproc) bindeb-pkg | |||
== 6. Install == | == 6. Install == | ||
sudo make modules_install | |||
sudo make modules_install | sudo make install | ||
sudo make install | |||
Or with packages: | Or with packages: | ||
sudo dpkg -i ../linux-image-*.deb ../linux-headers-*.deb | |||
sudo dpkg -i ../linux-image-*.deb ../linux-headers-*.deb | |||
Update bootloader: | Update bootloader: | ||
sudo update-initramfs -u | |||
sudo update-initramfs -u | sudo update-grub | ||
sudo update-grub | |||
Reboot and select the new kernel. | Reboot and select the new kernel. | ||
Revision as of 03:17, 9 September 2026
= 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
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
2. Download the Interlaced 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
3. Apply the Patch
patch -p1 < 03_linux_15khz_dcn1_dcn2_dcn3_dcn4_interlaced_mode_fix.patch
4. Configure the Kernel
cp /boot/config-$(uname -r) .config make olddefconfig
(Optional) Add a custom version string:
scripts/config --set-str LOCALVERSION "-interlace"
5. Build
make -j$(nproc)
Or create Debian packages:
make -j$(nproc) bindeb-pkg
6. Install
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
- This patch enables
interlace_allowedon AMDGPU DCN connectors and removes the temporary interlacing block. - No 15 kHz / low-dotclock modes are added.
- After reboot, test interlaced modes with
xrandror your preferred tool.