summaryrefslogtreecommitdiff
path: root/kernels/linux-libre-aarch64/0009-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch
diff options
context:
space:
mode:
authorDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2020-05-26 21:38:09 +0200
committerDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2020-05-26 21:38:18 +0200
commitc5e43b6547fd801793617024b51d3117227ba551 (patch)
tree7bbaa61e4ff951cff7e6396e3a1c0b30cdcbc62c /kernels/linux-libre-aarch64/0009-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch
parent28d9b73dcbae486c81a534f7ecb86c3e11763737 (diff)
downloadabslibre-c5e43b6547fd801793617024b51d3117227ba551.tar.gz
abslibre-c5e43b6547fd801793617024b51d3117227ba551.tar.bz2
abslibre-c5e43b6547fd801793617024b51d3117227ba551.zip
kernels: remove linux-libre-aarch64
This kernel has been replaced by linux-libre-64 in libre in an attempt to unify all 64bit kernels made for 32bit rootfs. This has been tested on a SBC that has good upstream support in linux and in u-boot, and a 64bit CPU. That SBC is however not officially supported by Parabola as it still require nonfree binaries in u-boot to boot. The way to go to add official 64bit support ARM computers with 64bit CPUs is to get devices that can at least boot with fully free software. Some SBCs with an Allwinner SOCs like the A64 seem a good target to do that as some SBCs have good support in upstream Linux and u-boot and can boot with free software, and we already have an uboot4extlinux package for many boards with Allwinner SOCs, so we could probably reuse most of that work. However I don't have an SBC like that yet, so until now I tested on a board I was given at a conference. Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Diffstat (limited to 'kernels/linux-libre-aarch64/0009-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch')
-rw-r--r--kernels/linux-libre-aarch64/0009-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch87
1 files changed, 0 insertions, 87 deletions
diff --git a/kernels/linux-libre-aarch64/0009-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch b/kernels/linux-libre-aarch64/0009-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch
deleted file mode 100644
index c876a8628..000000000
--- a/kernels/linux-libre-aarch64/0009-drm-i915-save-AUD_FREQ_CNTRL-state-at-audio-domain-s.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From e0d783c7ee43a39dadeb96ac669c45f3a3192d96 Mon Sep 17 00:00:00 2001
-From: Kai Vehmanen <kai.vehmanen@linux.intel.com>
-Date: Fri, 20 Sep 2019 11:39:18 +0300
-Subject: [PATCH 09/13] drm/i915: save AUD_FREQ_CNTRL state at audio domain
- suspend
-
-When audio power domain is suspended, the display driver must
-save state of AUD_FREQ_CNTRL on Tiger Lake and Ice Lake
-systems. The initial value of the register is set by BIOS and
-is read by driver during the audio component init sequence.
-
-Cc: Jani Nikula <jani.nikula@intel.com>
-Cc: Imre Deak <imre.deak@intel.com>
-Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
-Signed-off-by: Jani Nikula <jani.nikula@intel.com>
-Link: https://patchwork.freedesktop.org/patch/msgid/20190920083918.27057-1-kai.vehmanen@linux.intel.com
----
- drivers/gpu/drm/i915/display/intel_audio.c | 17 +++++++++++++++--
- drivers/gpu/drm/i915/i915_drv.h | 1 +
- drivers/gpu/drm/i915/i915_reg.h | 2 ++
- 3 files changed, 18 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/gpu/drm/i915/display/intel_audio.c b/drivers/gpu/drm/i915/display/intel_audio.c
-index ddcccf4408c3..439bc0a93410 100644
---- a/drivers/gpu/drm/i915/display/intel_audio.c
-+++ b/drivers/gpu/drm/i915/display/intel_audio.c
-@@ -850,10 +850,17 @@ static unsigned long i915_audio_component_get_power(struct device *kdev)
-
- ret = intel_display_power_get(dev_priv, POWER_DOMAIN_AUDIO);
-
-- /* Force CDCLK to 2*BCLK as long as we need audio to be powered. */
-- if (dev_priv->audio_power_refcount++ == 0)
-+ if (dev_priv->audio_power_refcount++ == 0) {
-+ if (IS_TIGERLAKE(dev_priv) || IS_ICELAKE(dev_priv)) {
-+ I915_WRITE(AUD_FREQ_CNTRL, dev_priv->audio_freq_cntrl);
-+ DRM_DEBUG_KMS("restored AUD_FREQ_CNTRL to 0x%x\n",
-+ dev_priv->audio_freq_cntrl);
-+ }
-+
-+ /* Force CDCLK to 2*BCLK as long as we need audio powered. */
- if (IS_CANNONLAKE(dev_priv) || IS_GEMINILAKE(dev_priv))
- glk_force_audio_cdclk(dev_priv, true);
-+ }
-
- return ret;
- }
-@@ -1114,6 +1121,12 @@ static void i915_audio_component_init(struct drm_i915_private *dev_priv)
- return;
- }
-
-+ if (IS_TIGERLAKE(dev_priv) || IS_ICELAKE(dev_priv)) {
-+ dev_priv->audio_freq_cntrl = I915_READ(AUD_FREQ_CNTRL);
-+ DRM_DEBUG_KMS("init value of AUD_FREQ_CNTRL of 0x%x\n",
-+ dev_priv->audio_freq_cntrl);
-+ }
-+
- dev_priv->audio_component_registered = true;
- }
-
-diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
-index 89b6112bd66b..043ce1b47aeb 100644
---- a/drivers/gpu/drm/i915/i915_drv.h
-+++ b/drivers/gpu/drm/i915/i915_drv.h
-@@ -1530,6 +1530,7 @@ struct drm_i915_private {
- */
- struct mutex av_mutex;
- int audio_power_refcount;
-+ u32 audio_freq_cntrl;
-
- struct {
- struct mutex mutex;
-diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
-index f8ee9aba3955..e1fe356463ec 100644
---- a/drivers/gpu/drm/i915/i915_reg.h
-+++ b/drivers/gpu/drm/i915/i915_reg.h
-@@ -9104,6 +9104,8 @@ enum {
- #define HSW_AUD_CHICKENBIT _MMIO(0x65f10)
- #define SKL_AUD_CODEC_WAKE_SIGNAL (1 << 15)
-
-+#define AUD_FREQ_CNTRL _MMIO(0x65900)
-+
- /*
- * HSW - ICL power wells
- *
---
-2.24.1
-