diff options
author | graysky | 2023-01-04 16:21:56 -0500 |
---|---|---|
committer | graysky | 2023-01-04 16:21:56 -0500 |
commit | 832a4acbfe3f9e0ad20c2b7681d0e689b2374308 (patch) | |
tree | 41630bcea4f4050b9bf0db414e9278f5e8bc63a9 | |
parent | 81a383454bc197a7dfd5d46acb14ea488db90a9f (diff) | |
download | aur-832a4acbfe3f9e0ad20c2b7681d0e689b2374308.tar.gz |
Update to 6.1.3-1
-rw-r--r-- | .SRCINFO | 10 | ||||
-rw-r--r-- | 0003-ALSA-hda-hdmi-Static-PCM-mapping-again-with-AMD-HDMI.patch | 115 | ||||
-rw-r--r-- | PKGBUILD | 8 |
3 files changed, 7 insertions, 126 deletions
@@ -1,5 +1,5 @@ pkgbase = linux-ck - pkgver = 6.1.2 + pkgver = 6.1.3 pkgrel = 1 url = https://wiki.archlinux.org/index.php/Linux-ck arch = x86_64 @@ -12,24 +12,22 @@ pkgbase = linux-ck makedepends = tar makedepends = xz options = !strip - source = https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.1.2.tar.xz - source = https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.1.2.tar.sign + source = https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.1.3.tar.xz + source = https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.1.3.tar.sign source = config source = more-uarches-20221217.tar.gz::https://github.com/graysky2/kernel_compiler_patch/archive/20221217.tar.gz source = ck-hrtimer-fdbdf7e0ec56cd59e11d024c473e766429271a5c.tar.gz::https://github.com/graysky2/linux-patches/archive/fdbdf7e0ec56cd59e11d024c473e766429271a5c.tar.gz source = 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch source = 0002-drm-i915-improve-the-catch-all-evict-to-handle-lock-.patch - source = 0003-ALSA-hda-hdmi-Static-PCM-mapping-again-with-AMD-HDMI.patch validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886 validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E - sha256sums = ee41f3c4f599b2f46f08aae428c9243db403e7292eb2c9f04ee34909b038d1ae + sha256sums = 6dc89ae7a7513e433c597c7346ed7ff4bfd115ea43a3b5e27a6bdb38c5580317 sha256sums = SKIP sha256sums = 0571ea17a2e38458096b679418197bbea8c414388f628d122517f3a1f3a31b3a sha256sums = f1d586e111932890ad5e0df15d092fb9b3f87bae4ea17812aae9b0ec98fe2db0 sha256sums = 6d3b9cb4639c1c5eb4e2697aed0dbffa5b4a37d63a0861dec8315dd052723e0e sha256sums = 00c7b866ba5393639d5ca2349883909ad6b1bedf6091e857c83f208e0838479c sha256sums = 0cde718acd7e96ce5f221db696459b145162196f6fb6b729e3f9231672c40df1 - sha256sums = 6d808871fc1bc318c193f021ca2680e1f2cd28802248fb16a350cf9c5ca3af7b pkgname = linux-ck pkgdesc = The Linux kernel and modules with ck's hrtimer patches diff --git a/0003-ALSA-hda-hdmi-Static-PCM-mapping-again-with-AMD-HDMI.patch b/0003-ALSA-hda-hdmi-Static-PCM-mapping-again-with-AMD-HDMI.patch deleted file mode 100644 index eb417c58dfba..000000000000 --- a/0003-ALSA-hda-hdmi-Static-PCM-mapping-again-with-AMD-HDMI.patch +++ /dev/null @@ -1,115 +0,0 @@ -From a0142b0ddd7b114b6aa707d0f2b97150190bfef6 Mon Sep 17 00:00:00 2001 -From: Takashi Iwai <tiwai@suse.de> -Date: Wed, 28 Dec 2022 13:57:14 +0100 -Subject: [PATCH 3/4] ALSA: hda/hdmi: Static PCM mapping again with AMD HDMI - codecs - -The recent code refactoring for HD-audio HDMI codec driver caused a -regression on AMD/ATI HDMI codecs; namely, PulseAudioand pipewire -don't recognize HDMI outputs any longer while the direct output via -ALSA raw access still works. - -The problem turned out that, after the code refactoring, the driver -assumes only the dynamic PCM assignment, and when a PCM stream that -still isn't assigned to any pin gets opened, the driver tries to -assign any free converter to the PCM stream. This behavior is OK for -Intel and other codecs, as they have arbitrary connections between -pins and converters. OTOH, on AMD chips that have a 1:1 mapping -between pins and converters, this may end up with blocking the open of -the next PCM stream for the pin that is tied with the formerly taken -converter. - -Also, with the code refactoring, more PCM streams are exposed than -necessary as we assume all converters can be used, while this isn't -true for AMD case. This may change the PCM stream assignment and -confuse users as well. - -This patch fixes those problems by: - -- Introducing a flag spec->static_pcm_mapping, and if it's set, the - driver applies the static mapping between pins and converters at the - probe time -- Limiting the number of PCM streams per pins, too; this avoids the - superfluous PCM streams - -Fixes: ef6f5494faf6 ("ALSA: hda/hdmi: Use only dynamic PCM device allocation") -Cc: <stable@vger.kernel.org> -Link: https://bugzilla.kernel.org/show_bug.cgi?id=216836 -Co-developed-by: Jaroslav Kysela <perex@perex.cz> -Signed-off-by: Jaroslav Kysela <perex@perex.cz> -Link: https://lore.kernel.org/r/20221228125714.16329-1-tiwai@suse.de -Signed-off-by: Takashi Iwai <tiwai@suse.de> ---- - sound/pci/hda/patch_hdmi.c | 27 +++++++++++++++++++-------- - 1 file changed, 19 insertions(+), 8 deletions(-) - -diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c -index 8015e4471267..386dd9d9143f 100644 ---- a/sound/pci/hda/patch_hdmi.c -+++ b/sound/pci/hda/patch_hdmi.c -@@ -167,6 +167,7 @@ struct hdmi_spec { - struct hdmi_ops ops; - - bool dyn_pin_out; -+ bool static_pcm_mapping; - /* hdmi interrupt trigger control flag for Nvidia codec */ - bool hdmi_intr_trig_ctrl; - bool nv_dp_workaround; /* workaround DP audio infoframe for Nvidia */ -@@ -1525,13 +1526,16 @@ static void update_eld(struct hda_codec *codec, - */ - pcm_jack = pin_idx_to_pcm_jack(codec, per_pin); - -- if (eld->eld_valid) { -- hdmi_attach_hda_pcm(spec, per_pin); -- hdmi_pcm_setup_pin(spec, per_pin); -- } else { -- hdmi_pcm_reset_pin(spec, per_pin); -- hdmi_detach_hda_pcm(spec, per_pin); -+ if (!spec->static_pcm_mapping) { -+ if (eld->eld_valid) { -+ hdmi_attach_hda_pcm(spec, per_pin); -+ hdmi_pcm_setup_pin(spec, per_pin); -+ } else { -+ hdmi_pcm_reset_pin(spec, per_pin); -+ hdmi_detach_hda_pcm(spec, per_pin); -+ } - } -+ - /* if pcm_idx == -1, it means this is in monitor connection event - * we can get the correct pcm_idx now. - */ -@@ -2281,8 +2285,8 @@ static int generic_hdmi_build_pcms(struct hda_codec *codec) - struct hdmi_spec *spec = codec->spec; - int idx, pcm_num; - -- /* limit the PCM devices to the codec converters */ -- pcm_num = spec->num_cvts; -+ /* limit the PCM devices to the codec converters or available PINs */ -+ pcm_num = min(spec->num_cvts, spec->num_pins); - codec_dbg(codec, "hdmi: pcm_num set to %d\n", pcm_num); - - for (idx = 0; idx < pcm_num; idx++) { -@@ -2379,6 +2383,11 @@ static int generic_hdmi_build_controls(struct hda_codec *codec) - struct hdmi_spec_per_pin *per_pin = get_pin(spec, pin_idx); - struct hdmi_eld *pin_eld = &per_pin->sink_eld; - -+ if (spec->static_pcm_mapping) { -+ hdmi_attach_hda_pcm(spec, per_pin); -+ hdmi_pcm_setup_pin(spec, per_pin); -+ } -+ - pin_eld->eld_valid = false; - hdmi_present_sense(per_pin, 0); - } -@@ -4419,6 +4428,8 @@ static int patch_atihdmi(struct hda_codec *codec) - - spec = codec->spec; - -+ spec->static_pcm_mapping = true; -+ - spec->ops.pin_get_eld = atihdmi_pin_get_eld; - spec->ops.pin_setup_infoframe = atihdmi_pin_setup_infoframe; - spec->ops.pin_hbr_setup = atihdmi_pin_hbr_setup; --- -2.39.0 - @@ -68,7 +68,7 @@ _subarch= ### IMPORTANT: Do no edit below this line unless you know what you're doing pkgbase=linux-ck -pkgver=6.1.2 +pkgver=6.1.3 pkgrel=1 arch=(x86_64) url="https://wiki.archlinux.org/index.php/Linux-ck" @@ -92,20 +92,18 @@ source=( "ck-hrtimer-$_commit.tar.gz::https://github.com/graysky2/linux-patches/archive/$_commit.tar.gz" 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch 0002-drm-i915-improve-the-catch-all-evict-to-handle-lock-.patch - 0003-ALSA-hda-hdmi-Static-PCM-mapping-again-with-AMD-HDMI.patch ) validpgpkeys=( 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds '647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman ) -sha256sums=('ee41f3c4f599b2f46f08aae428c9243db403e7292eb2c9f04ee34909b038d1ae' +sha256sums=('6dc89ae7a7513e433c597c7346ed7ff4bfd115ea43a3b5e27a6bdb38c5580317' 'SKIP' '0571ea17a2e38458096b679418197bbea8c414388f628d122517f3a1f3a31b3a' 'f1d586e111932890ad5e0df15d092fb9b3f87bae4ea17812aae9b0ec98fe2db0' '6d3b9cb4639c1c5eb4e2697aed0dbffa5b4a37d63a0861dec8315dd052723e0e' '00c7b866ba5393639d5ca2349883909ad6b1bedf6091e857c83f208e0838479c' - '0cde718acd7e96ce5f221db696459b145162196f6fb6b729e3f9231672c40df1' - '6d808871fc1bc318c193f021ca2680e1f2cd28802248fb16a350cf9c5ca3af7b') + '0cde718acd7e96ce5f221db696459b145162196f6fb6b729e3f9231672c40df1') prepare() { cd linux-${pkgver} |