Skip to content

Commit cc807d5

Browse files
committed
build: update kernel patches
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
1 parent 04f8fd7 commit cc807d5

9 files changed

Lines changed: 43 additions & 39 deletions

kernel-patches/.dockerignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# I keep cloned kernel source code here
2+
kernel

kernel-patches/.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,5 @@ linux.deb
22
headers.deb
33
linux.pkg.tar.zst
44
headers.pkg.tar.zst
5+
# I keep cloned kernel source code here
6+
kernel

kernel-patches/0001-drm-edid-non-desktop.patch renamed to kernel-patches/0001-drm-edid-Add-Vive-Cosmos-Vive-Pro-2-to-non-desktop-l.patch

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,30 @@
1-
drm/edid: Add Vive Cosmos/Vive Pro 2 to non-desktop list
1+
From 23842246dab6ece6464cc121fe31b6306c959b2a Mon Sep 17 00:00:00 2001
2+
From: Yaroslav Bolyukin <iam@lach.pw>
3+
Date: Sun, 30 Oct 2022 18:59:15 +0100
4+
Subject: [PATCH 1/3] drm/edid: Add Vive Cosmos/Vive Pro 2 to non-desktop list
25

36
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
47
---
5-
drivers/gpu/drm/drm_edid.c | 4 ++-
8+
drivers/gpu/drm/drm_edid.c | 4 +++-
69
1 file changed, 3 insertions(+), 1 deletion(-)
710

811
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
9-
index 12893e7be..fdb8f0a6f 100644
12+
index 3841aba17abd..767a3e3fa6e1 100644
1013
--- a/drivers/gpu/drm/drm_edid.c
1114
+++ b/drivers/gpu/drm/drm_edid.c
12-
@@ -200,9 +200,11 @@ static const struct edid_quirk {
15+
@@ -205,9 +205,11 @@ static const struct edid_quirk {
1316
EDID_QUIRK('V', 'L', 'V', 0x91be, EDID_QUIRK_NON_DESKTOP),
1417
EDID_QUIRK('V', 'L', 'V', 0x91bf, EDID_QUIRK_NON_DESKTOP),
15-
18+
1619
- /* HTC Vive and Vive Pro VR Headsets */
1720
+ /* HTC Vive, Vive Cosmos, Vive Pro and Vive Pro 2 VR Headsets */
1821
EDID_QUIRK('H', 'V', 'R', 0xaa01, EDID_QUIRK_NON_DESKTOP),
1922
EDID_QUIRK('H', 'V', 'R', 0xaa02, EDID_QUIRK_NON_DESKTOP),
2023
+ EDID_QUIRK('H', 'V', 'R', 0xaa03, EDID_QUIRK_NON_DESKTOP),
2124
+ EDID_QUIRK('H', 'V', 'R', 0xaa04, EDID_QUIRK_NON_DESKTOP),
22-
25+
2326
/* Oculus Rift DK1, DK2, CV1 and Rift S VR Headsets */
2427
EDID_QUIRK('O', 'V', 'R', 0x0001, EDID_QUIRK_NON_DESKTOP),
28+
--
29+
2.38.1
2530

26-
base-commit: 99613159ad749543621da8238acf1a122880144e
27-
--
28-
2.34.1

kernel-patches/0003-drm-edid-dsc-bpp-parse.patch renamed to kernel-patches/0002-drm-edid-parse-DRM-VESA-dsc-bpp-target.patch

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
1-
From d0e927d1a8e1dfecc1e4bc66b5f9bb711ef433c6 Mon Sep 17 00:00:00 2001
1+
From 83939c5f869bab148a970b6326626da80766c464 Mon Sep 17 00:00:00 2001
22
From: Yaroslav Bolyukin <iam@lach.pw>
33
Date: Sun, 30 Oct 2022 18:59:15 +0100
4-
Subject: [PATCH 1/2] drm/edid: parse DRM VESA dsc bpp target
4+
Subject: [PATCH 2/3] drm/edid: parse DRM VESA dsc bpp target
55

66
As per DisplayID v2.0 Errata E9 spec "DSC pass-through timing support"
77
VESA vendor-specific data block may contain target DSC bits per pixel
88
fields
99

1010
Signed-off-by: Yaroslav Bolyukin <iam@lach.pw>
1111
---
12-
drivers/gpu/drm/drm_edid.c | 43 +++++++++++++++++++++++++------------
13-
include/drm/drm_connector.h | 6 ++++++
12+
drivers/gpu/drm/drm_edid.c | 42 ++++++++++++++++++++++++-------------
13+
include/drm/drm_connector.h | 5 +++++
1414
include/drm/drm_displayid.h | 4 ++++
15-
3 files changed, 39 insertions(+), 14 deletions(-)
15+
3 files changed, 37 insertions(+), 14 deletions(-)
1616

1717
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
18-
index b2d61c05f..a17c5916f 100644
18+
index 767a3e3fa6e1..db6953f0e33b 100644
1919
--- a/drivers/gpu/drm/drm_edid.c
2020
+++ b/drivers/gpu/drm/drm_edid.c
21-
@@ -6277,7 +6277,7 @@ static void drm_parse_vesa_mso_data(struct drm_connector *connector,
21+
@@ -6289,7 +6289,7 @@ static void drm_parse_vesa_mso_data(struct drm_connector *connector,
2222
if (oui(vesa->oui[0], vesa->oui[1], vesa->oui[2]) != VESA_IEEE_OUI)
2323
return;
2424

@@ -27,7 +27,7 @@ index b2d61c05f..a17c5916f 100644
2727
drm_dbg_kms(connector->dev,
2828
"[CONNECTOR:%d:%s] Unexpected VESA vendor block size\n",
2929
connector->base.id, connector->name);
30-
@@ -6300,24 +6300,37 @@ static void drm_parse_vesa_mso_data(struct drm_connector *connector,
30+
@@ -6312,24 +6312,37 @@ static void drm_parse_vesa_mso_data(struct drm_connector *connector,
3131
break;
3232
}
3333

@@ -78,24 +78,22 @@ index b2d61c05f..a17c5916f 100644
7878
}
7979

8080
static void drm_update_mso(struct drm_connector *connector,
81-
@@ -6363,6 +6376,8 @@ static void drm_reset_display_info(struct drm_connector *connector)
82-
81+
@@ -6376,6 +6389,7 @@ static void drm_reset_display_info(struct drm_connector *connector)
8382
info->mso_stream_count = 0;
8483
info->mso_pixel_overlap = 0;
85-
+
84+
info->max_dsc_bpp = 0;
8685
+ info->dp_dsc_bpp = 0;
8786
}
8887

8988
static u32 update_display_info(struct drm_connector *connector,
9089
diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
91-
index e641a4725..a2ca0d294 100644
90+
index 9037f1317aee..c1ca26142975 100644
9291
--- a/include/drm/drm_connector.h
9392
+++ b/include/drm/drm_connector.h
94-
@@ -656,6 +656,12 @@ struct drm_display_info {
95-
* @mso_pixel_overlap: eDP MSO segment pixel overlap, 0-8 pixels.
93+
@@ -721,6 +721,11 @@ struct drm_display_info {
94+
* monitor's default value is used instead.
9695
*/
97-
u8 mso_pixel_overlap;
98-
+
96+
u32 max_dsc_bpp;
9997
+ /**
10098
+ * @dp_dsc_bpp: DP Display-Stream-Compression (DSC) timing's target
10199
+ * DST bits per pixel in 6.4 fixed point format. 0 means undefined
@@ -105,7 +103,7 @@ index e641a4725..a2ca0d294 100644
105103

106104
int drm_display_info_set_bus_formats(struct drm_display_info *info,
107105
diff --git a/include/drm/drm_displayid.h b/include/drm/drm_displayid.h
108-
index 49649eb84..ada2f8e76 100644
106+
index 49649eb8447e..ada2f8e7681c 100644
109107
--- a/include/drm/drm_displayid.h
110108
+++ b/include/drm/drm_displayid.h
111109
@@ -131,12 +131,16 @@ struct displayid_detailed_timing_block {
@@ -126,5 +124,5 @@ index 49649eb84..ada2f8e76 100644
126124

127125
/* DisplayID iteration */
128126
--
129-
2.38.0
127+
2.38.1
130128

kernel-patches/0004-drm-amd-dsc-bpp-apply.patch renamed to kernel-patches/0003-drm-amd-use-fixed-dsc-bits-per-pixel-from-edid.patch

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
From 7ff32d7fe87a88a66227e9d15179a299bde11d3d Mon Sep 17 00:00:00 2001
1+
From c33583995576e9ac532c4ad9e260324b1c4fa3a3 Mon Sep 17 00:00:00 2001
22
From: Yaroslav Bolyukin <iam@lach.pw>
33
Date: Sun, 30 Oct 2022 19:04:26 +0100
4-
Subject: [PATCH 2/2] drm/amd: use fixed dsc bits-per-pixel from edid
4+
Subject: [PATCH 3/3] drm/amd: use fixed dsc bits-per-pixel from edid
55

66
VESA vendor header from DisplayID spec may contain fixed bit per pixel
77
rate, it should be respected by drm driver
@@ -15,10 +15,10 @@ Reviewed-by: Wayne Lin <Wayne.Lin@amd.com>
1515
3 files changed, 7 insertions(+)
1616

1717
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c
18-
index f0b01c8dc..d4fa84fde 100644
18+
index e47098fa5aac..1c9c4925ed2f 100644
1919
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c
2020
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c
21-
@@ -120,6 +120,8 @@ enum dc_edid_status dm_helpers_parse_edid_caps(
21+
@@ -87,6 +87,8 @@ enum dc_edid_status dm_helpers_parse_edid_caps(
2222

2323
edid_caps->edid_hdmi = connector->display_info.is_hdmi;
2424

@@ -28,7 +28,7 @@ index f0b01c8dc..d4fa84fde 100644
2828
if (sad_count <= 0)
2929
return result;
3030
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
31-
index 38d71b5c1..f2467b642 100644
31+
index 38d71b5c1f2d..f2467b64268b 100644
3232
--- a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
3333
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
3434
@@ -103,6 +103,8 @@ static bool dc_stream_construct(struct dc_stream_state *stream,
@@ -41,7 +41,7 @@ index 38d71b5c1..f2467b642 100644
4141
memset(&stream->timing.dsc_cfg, 0, sizeof(stream->timing.dsc_cfg));
4242
stream->timing.dsc_cfg.num_slices_h = 0;
4343
diff --git a/drivers/gpu/drm/amd/display/dc/dc_types.h b/drivers/gpu/drm/amd/display/dc/dc_types.h
44-
index ad9041472..741eef518 100644
44+
index dc78e2404b48..65915a10ab48 100644
4545
--- a/drivers/gpu/drm/amd/display/dc/dc_types.h
4646
+++ b/drivers/gpu/drm/amd/display/dc/dc_types.h
4747
@@ -231,6 +231,9 @@ struct dc_edid_caps {
@@ -55,5 +55,5 @@ index ad9041472..741eef518 100644
5555
};
5656

5757
--
58-
2.38.0
58+
2.38.1
5959

kernel-patches/Dockerfile.archlinux-kernel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ WORKDIR /home/build
66

77
RUN mkdir kernel
88
RUN cd kernel && git clone https://anongit.freedesktop.org/git/drm/drm-misc.git -b drm-misc-next --depth=1 archlinux-linux
9-
COPY config PKGBUILD 0001-drm-edid-non-desktop.patch 0003-drm-edid-dsc-bpp-parse.patch 0004-drm-amd-dsc-bpp-apply.patch kernel/
9+
COPY config PKGBUILD *.patch kernel/
1010

1111
RUN cd kernel && makepkg --holdver
1212
RUN cd kernel && mv linux-*-headers-*.pkg.tar.zst headers.pkg.tar.zst && mv linux-*.pkg.tar.zst linux.pkg.tar.zst

kernel-patches/Dockerfile.debian-kernel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ RUN apt update && apt install -y build-essential linux-source bc kmod cpio flex
33

44
RUN git clone https://anongit.freedesktop.org/git/drm/drm-misc.git -b drm-misc-next --depth=1 kernel
55
RUN mkdir patches
6-
COPY 0001-drm-edid-non-desktop.patch 0003-drm-edid-dsc-bpp-parse.patch 0004-drm-amd-dsc-bpp-apply.patch patches/
6+
COPY *.patch patches/
77
RUN cd kernel && git apply ../patches/*
88
COPY .config kernel/
99

kernel-patches/PKGBUILD

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ _srcname=archlinux-linux
1616
source=(
1717
"$_srcname::git+https://anongit.freedesktop.org/git/drm/drm-misc.git#branch=$_branch"
1818
config # the main kernel config file
19-
0001-drm-edid-non-desktop.patch
20-
0003-drm-edid-dsc-bpp-parse.patch
21-
0004-drm-amd-dsc-bpp-apply.patch
19+
0001-drm-edid-Add-Vive-Cosmos-Vive-Pro-2-to-non-desktop-l.patch
20+
0002-drm-edid-parse-DRM-VESA-dsc-bpp-target.patch
21+
0003-drm-amd-use-fixed-dsc-bits-per-pixel-from-edid.patch
2222
)
2323
sha256sums=('SKIP'
2424
'SKIP'

kernel-patches/merged/0002-drm-edid-type-7-timings.patch renamed to kernel-patches/merged/drm-edid-type-7-timings.patch

File renamed without changes.

0 commit comments

Comments
 (0)