mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 13:46:49 +00:00
Merge pull request #5259 from HiassofT/le10-kernel-5.10.20+
linux (RPi): update to 5.10.23-13c4388
This commit is contained in:
commit
e367b4a71c
@ -3,8 +3,8 @@
|
||||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="bcm2835-driver"
|
||||
PKG_VERSION="5985247fb75681985547641d66196c77499f26b9"
|
||||
PKG_SHA256="bf2807be5ca1589a662a3a4f832f21c27cd0bf803a1b11fa57c1aae1b554396a"
|
||||
PKG_VERSION="57e7fd133f6e409fe0e55a1e5f277b3909b9f4de"
|
||||
PKG_SHA256="bbc609a681dc757fefb61389b6e88bb187d242964aa8774123d01e41756f4b4d"
|
||||
PKG_LICENSE="nonfree"
|
||||
PKG_SITE="http://www.broadcom.com"
|
||||
PKG_URL="${DISTRO_SRC}/${PKG_NAME}-${PKG_VERSION}.tar.xz"
|
||||
|
@ -22,8 +22,8 @@ case "${LINUX}" in
|
||||
PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz"
|
||||
;;
|
||||
raspberrypi)
|
||||
PKG_VERSION="12fdeddcde1ce67177ae0e13931ff24944015625" # 5.10.17
|
||||
PKG_SHA256="e4dcdb2ee22ffeae85c4f3916d60a5065f7068f852b76a530f5604628d4e60ba"
|
||||
PKG_VERSION="13c43880f2ee6db7d26949cb6a3e8db1a4b76736" # 5.10.23
|
||||
PKG_SHA256="cfc1e54102b66719ad8f3e6f97baa4ddc46873ba82a130c481619a705901b1da"
|
||||
PKG_URL="https://github.com/raspberrypi/linux/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz"
|
||||
;;
|
||||
|
@ -1,23 +1,52 @@
|
||||
From 023078a22c3a6baf6339c946aa7be3c8f1b90a14 Mon Sep 17 00:00:00 2001
|
||||
From b7622f1dddf5dbd9d49660cef2af60a04a1e1a2d Mon Sep 17 00:00:00 2001
|
||||
From: Dom Cobley <popcornmix@gmail.com>
|
||||
Date: Sat, 23 Jan 2021 18:00:48 +0000
|
||||
Subject: [PATCH] vc4_place: Don't reject fractional source coords
|
||||
Date: Mon, 15 Mar 2021 13:28:06 +0000
|
||||
Subject: [PATCH] vc4/drm: vc4_plane: Remove subpixel positioning check
|
||||
|
||||
There is little harm in ignoring fractional coordinates
|
||||
(they just get truncated).
|
||||
|
||||
Without this:
|
||||
modetest -M vc4 -F tiles,gradient -s 32:1920x1080-60 -P89@74:1920x1080*.1.1@XR24
|
||||
|
||||
is rejected. We have the same issue in Kodi when trying to
|
||||
use zoom options on video.
|
||||
|
||||
Note: even if all coordinates are fully integer. e.g.
|
||||
src:[0,0,1920,1080] dest:[-10,-10,1940,1100]
|
||||
|
||||
it will still get rejected as drm_atomic_helper_check_plane_state
|
||||
uses drm_rect_clip_scaled which transforms this to fractional src coords
|
||||
|
||||
Signed-off-by: Dom Cobley <popcornmix@gmail.com>
|
||||
---
|
||||
drivers/gpu/drm/vc4/vc4_plane.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
drivers/gpu/drm/vc4/vc4_plane.c | 9 ---------
|
||||
1 file changed, 9 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c
|
||||
index b5586c92bfe54..1947798f3eaf3 100644
|
||||
index 3d33fe3dacea7..bf0093bd997f5 100644
|
||||
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
||||
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
||||
@@ -358,7 +358,8 @@ static int vc4_plane_setup_clipping_and_scaling(struct drm_plane_state *state)
|
||||
(state->src.x2 & subpixel_src_mask) ||
|
||||
(state->src.y1 & subpixel_src_mask) ||
|
||||
(state->src.y2 & subpixel_src_mask)) {
|
||||
- return -EINVAL;
|
||||
+ DRM_DEBUG_KMS("Invalid subpixel scaling %x %x %x %x (%x)\n", state->src.x1, state->src.x2, state->src.y1, state->src.y2, subpixel_src_mask);
|
||||
+ //return -EINVAL;
|
||||
}
|
||||
@@ -339,7 +339,6 @@ static int vc4_plane_setup_clipping_and_scaling(struct drm_plane_state *state)
|
||||
struct vc4_plane_state *vc4_state = to_vc4_plane_state(state);
|
||||
struct drm_framebuffer *fb = state->fb;
|
||||
struct drm_gem_cma_object *bo = drm_fb_cma_get_gem_obj(fb, 0);
|
||||
- u32 subpixel_src_mask = (1 << 16) - 1;
|
||||
int num_planes = fb->format->num_planes;
|
||||
struct drm_crtc_state *crtc_state;
|
||||
u32 h_subsample = fb->format->hsub;
|
||||
@@ -361,14 +360,6 @@ static int vc4_plane_setup_clipping_and_scaling(struct drm_plane_state *state)
|
||||
for (i = 0; i < num_planes; i++)
|
||||
vc4_state->offsets[i] = bo->paddr + fb->offsets[i];
|
||||
|
||||
- /* We don't support subpixel source positioning for scaling. */
|
||||
- if ((state->src.x1 & subpixel_src_mask) ||
|
||||
- (state->src.x2 & subpixel_src_mask) ||
|
||||
- (state->src.y1 & subpixel_src_mask) ||
|
||||
- (state->src.y2 & subpixel_src_mask)) {
|
||||
- return -EINVAL;
|
||||
- }
|
||||
-
|
||||
vc4_state->src_x = state->src.x1 >> 16;
|
||||
vc4_state->src_y = state->src.y1 >> 16;
|
||||
vc4_state->src_w[0] = (state->src.x2 - state->src.x1) >> 16;
|
||||
|
@ -1,30 +0,0 @@
|
||||
From 6ddb85813f7a61637a54f76a76ccb95ade8a50de Mon Sep 17 00:00:00 2001
|
||||
From: Dom Cobley <popcornmix@gmail.com>
|
||||
Date: Sun, 24 Jan 2021 15:44:10 +0000
|
||||
Subject: [PATCH] vc4: Avoid full hdmi audio fifo writes
|
||||
|
||||
We are getting occasional VC4_HD_MAI_CTL_ERRORF in HDMI_MAI_CTL which seem to correspond with
|
||||
audio dropouts. Reduce the threshold where we deassert DREQ to avoid the fifo overfilling
|
||||
---
|
||||
drivers/gpu/drm/vc4/vc4_hdmi.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||
index 64b1567998861..3b85158fbbaa8 100644
|
||||
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||
@@ -1562,10 +1562,10 @@ static int vc4_hdmi_audio_prepare(struct snd_pcm_substream *substream,
|
||||
|
||||
/* Set the MAI threshold */
|
||||
HDMI_WRITE(HDMI_MAI_THR,
|
||||
- VC4_SET_FIELD(0x10, VC4_HD_MAI_THR_PANICHIGH) |
|
||||
- VC4_SET_FIELD(0x10, VC4_HD_MAI_THR_PANICLOW) |
|
||||
- VC4_SET_FIELD(0x10, VC4_HD_MAI_THR_DREQHIGH) |
|
||||
- VC4_SET_FIELD(0x10, VC4_HD_MAI_THR_DREQLOW));
|
||||
+ VC4_SET_FIELD(0x08, VC4_HD_MAI_THR_PANICHIGH) |
|
||||
+ VC4_SET_FIELD(0x08, VC4_HD_MAI_THR_PANICLOW) |
|
||||
+ VC4_SET_FIELD(0x08, VC4_HD_MAI_THR_DREQHIGH) |
|
||||
+ VC4_SET_FIELD(0x08, VC4_HD_MAI_THR_DREQLOW));
|
||||
|
||||
HDMI_WRITE(HDMI_MAI_CONFIG,
|
||||
VC4_HDMI_MAI_CONFIG_BIT_REVERSE |
|
@ -1,21 +0,0 @@
|
||||
diff --git a/arch/arm/boot/dts/bcm2711-rpi.dtsi b/arch/arm/boot/dts/bcm2711-rpi.dtsi
|
||||
index 8053ef54acc8..6bcfcc5b1ac5 100644
|
||||
--- a/arch/arm/boot/dts/bcm2711-rpi.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm2711-rpi.dtsi
|
||||
@@ -179,7 +179,7 @@ &pixelvalve4 {
|
||||
};
|
||||
|
||||
&hdmi0 {
|
||||
- dmas = <&dma (10|(1<<27)|(1<<24)|(0<<16)|(15<<20))>;
|
||||
+ dmas = <&dma (10|(1<<27)|(1<<24)|(15<<16)|(15<<20))>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
@@ -188,7 +188,7 @@ &ddc0 {
|
||||
};
|
||||
|
||||
&hdmi1 {
|
||||
- dmas = <&dma (17|(1<<27)|(1<<24)|(0<<16)|(15<<20))>;
|
||||
+ dmas = <&dma (17|(1<<27)|(1<<24)|(15<<16)|(15<<20))>;
|
||||
status = "disabled";
|
||||
};
|
@ -0,0 +1,91 @@
|
||||
From a2769637a9b98c6809d4d25a3a20447a3ff7b23a Mon Sep 17 00:00:00 2001
|
||||
From: Matthias Reichl <hias@horus.com>
|
||||
Date: Fri, 19 Mar 2021 12:14:17 +0100
|
||||
Subject: [PATCH] ALSA: pcm: fix ELD constraints for some compressed audio
|
||||
formats
|
||||
|
||||
The SADs of compressed formats like AC3 and DTS contain the channel
|
||||
and sample rate info of the audio data inside the compressed stream,
|
||||
but when building constraints we must use the rates and formats used
|
||||
to pass through the stream. eg 2ch 48kHz for AC3.
|
||||
|
||||
Signed-off-by: Matthias Reichl <hias@horus.com>
|
||||
---
|
||||
sound/core/pcm_drm_eld.c | 38 +++++++++++++++++++++++++++++++++++---
|
||||
1 file changed, 35 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/sound/core/pcm_drm_eld.c b/sound/core/pcm_drm_eld.c
|
||||
index 4b5faae5d16e5..e7ec7a8b9d420 100644
|
||||
--- a/sound/core/pcm_drm_eld.c
|
||||
+++ b/sound/core/pcm_drm_eld.c
|
||||
@@ -6,6 +6,7 @@
|
||||
#include <drm/drm_edid.h>
|
||||
#include <sound/pcm.h>
|
||||
#include <sound/pcm_drm_eld.h>
|
||||
+#include <linux/hdmi.h>
|
||||
|
||||
static const unsigned int eld_rates[] = {
|
||||
32000,
|
||||
@@ -17,9 +18,40 @@ static const unsigned int eld_rates[] = {
|
||||
192000,
|
||||
};
|
||||
|
||||
+static unsigned int sad_format(const u8 *sad)
|
||||
+{
|
||||
+ return (sad[0] & 0x78) >> 3;
|
||||
+}
|
||||
+
|
||||
static unsigned int sad_max_channels(const u8 *sad)
|
||||
{
|
||||
- return 1 + (sad[0] & 7);
|
||||
+ switch (sad_format(sad)) {
|
||||
+ case HDMI_AUDIO_CODING_TYPE_AC3:
|
||||
+ case HDMI_AUDIO_CODING_TYPE_DTS:
|
||||
+ case HDMI_AUDIO_CODING_TYPE_EAC3:
|
||||
+ return 2;
|
||||
+ case HDMI_AUDIO_CODING_TYPE_DTS_HD:
|
||||
+ case HDMI_AUDIO_CODING_TYPE_MLP:
|
||||
+ return 8;
|
||||
+ default:
|
||||
+ return 1 + (sad[0] & 7);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static unsigned int sad_rate_mask(const u8 *sad)
|
||||
+{
|
||||
+ switch (sad_format(sad)) {
|
||||
+ case HDMI_AUDIO_CODING_TYPE_AC3:
|
||||
+ case HDMI_AUDIO_CODING_TYPE_DTS:
|
||||
+ return 0x07; // 32-48kHz
|
||||
+ case HDMI_AUDIO_CODING_TYPE_EAC3:
|
||||
+ return 0x7f; // 32-192kHz
|
||||
+ case HDMI_AUDIO_CODING_TYPE_DTS_HD:
|
||||
+ case HDMI_AUDIO_CODING_TYPE_MLP:
|
||||
+ return 0x60; // 176.4, 192kHz
|
||||
+ default:
|
||||
+ return sad[1] & 0x7f;
|
||||
+ }
|
||||
}
|
||||
|
||||
static int eld_limit_rates(struct snd_pcm_hw_params *params,
|
||||
@@ -42,7 +74,7 @@ static int eld_limit_rates(struct snd_pcm_hw_params *params,
|
||||
* requested number of channels.
|
||||
*/
|
||||
if (c->min <= max_channels)
|
||||
- rate_mask |= sad[1];
|
||||
+ rate_mask |= sad_rate_mask(sad);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -70,7 +102,7 @@ static int eld_limit_channels(struct snd_pcm_hw_params *params,
|
||||
rate_mask |= BIT(i);
|
||||
|
||||
for (i = drm_eld_sad_count(eld); i > 0; i--, sad += 3)
|
||||
- if (rate_mask & sad[1])
|
||||
+ if (rate_mask & sad_rate_mask(sad))
|
||||
t.max = max(t.max, sad_max_channels(sad));
|
||||
}
|
||||
|
||||
--
|
||||
2.20.1
|
||||
|
@ -3,8 +3,8 @@
|
||||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="bcm2835-bootloader"
|
||||
PKG_VERSION="5985247fb75681985547641d66196c77499f26b9"
|
||||
PKG_SHA256="539e7768d9d7fd553dc3e294b8e0f53b9d843a81587ff99b52c2aceb67c37d6f"
|
||||
PKG_VERSION="57e7fd133f6e409fe0e55a1e5f277b3909b9f4de"
|
||||
PKG_SHA256="0a6810c7f4be49fe39dda08d76755c5e7ac90c527a30cea558a412be7a99aa15"
|
||||
PKG_ARCH="arm aarch64"
|
||||
PKG_LICENSE="nonfree"
|
||||
PKG_SITE="http://www.broadcom.com"
|
||||
|
@ -2,8 +2,8 @@
|
||||
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="rpi-eeprom"
|
||||
PKG_VERSION="1b937edc4b9523f4d7f902b3e77ac787bcede597"
|
||||
PKG_SHA256="3596e56a30a6b53b211db54e6287f6dc90c10edf74cb7783d29492631d09c607"
|
||||
PKG_VERSION="4e51d9a73521436ce5c7ec07f3525b57c248e62b"
|
||||
PKG_SHA256="d932db25552ade16780c6936bad50500d28333efba32137ca9f9416dea4fa9a7"
|
||||
PKG_ARCH="arm"
|
||||
PKG_LICENSE="BSD-3/custom"
|
||||
PKG_SITE="https://github.com/raspberrypi/rpi-eeprom"
|
||||
|
@ -1,10 +1,10 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/arm 5.10.13 Kernel Configuration
|
||||
# Linux/arm 5.10.20 Kernel Configuration
|
||||
#
|
||||
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
|
||||
CONFIG_CC_IS_GCC=y
|
||||
CONFIG_GCC_VERSION=70200
|
||||
CONFIG_GCC_VERSION=80300
|
||||
CONFIG_LD_VERSION=231010000
|
||||
CONFIG_CLANG_VERSION=0
|
||||
CONFIG_LLD_VERSION=0
|
||||
@ -192,6 +192,7 @@ CONFIG_BPF_SYSCALL=y
|
||||
# CONFIG_BPF_PRELOAD is not set
|
||||
# CONFIG_USERFAULTFD is not set
|
||||
CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
|
||||
CONFIG_KCMP=y
|
||||
CONFIG_RSEQ=y
|
||||
# CONFIG_DEBUG_RSEQ is not set
|
||||
CONFIG_EMBEDDED=y
|
||||
@ -487,7 +488,7 @@ CONFIG_CRYPTO_SHA1_ARM=m
|
||||
CONFIG_CRYPTO_SHA256_ARM=m
|
||||
# CONFIG_CRYPTO_SHA512_ARM is not set
|
||||
CONFIG_CRYPTO_AES_ARM=m
|
||||
# CONFIG_CRYPTO_CHACHA20_NEON is not set
|
||||
CONFIG_CRYPTO_CHACHA20_NEON=m
|
||||
CONFIG_CRYPTO_POLY1305_ARM=m
|
||||
|
||||
#
|
||||
@ -4662,7 +4663,6 @@ CONFIG_RESET_CONTROLLER=y
|
||||
# PHY Subsystem
|
||||
#
|
||||
# CONFIG_GENERIC_PHY is not set
|
||||
# CONFIG_USB_LGM_PHY is not set
|
||||
# CONFIG_BCM_KONA_USB2_PHY is not set
|
||||
# CONFIG_PHY_CADENCE_TORRENT is not set
|
||||
# CONFIG_PHY_CADENCE_DPHY is not set
|
||||
@ -5170,7 +5170,7 @@ CONFIG_CRYPTO_LIB_AES=y
|
||||
CONFIG_CRYPTO_LIB_ARC4=y
|
||||
CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=m
|
||||
CONFIG_CRYPTO_LIB_BLAKE2S=m
|
||||
CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
|
||||
CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m
|
||||
CONFIG_CRYPTO_LIB_CHACHA=m
|
||||
CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
|
||||
CONFIG_CRYPTO_LIB_CURVE25519=m
|
||||
|
@ -1,10 +1,10 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/arm 5.10.13 Kernel Configuration
|
||||
# Linux/arm 5.10.20 Kernel Configuration
|
||||
#
|
||||
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
|
||||
CONFIG_CC_IS_GCC=y
|
||||
CONFIG_GCC_VERSION=70200
|
||||
CONFIG_GCC_VERSION=80300
|
||||
CONFIG_LD_VERSION=231010000
|
||||
CONFIG_CLANG_VERSION=0
|
||||
CONFIG_LLD_VERSION=0
|
||||
@ -205,6 +205,7 @@ CONFIG_BPF_SYSCALL=y
|
||||
# CONFIG_BPF_PRELOAD is not set
|
||||
# CONFIG_USERFAULTFD is not set
|
||||
CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
|
||||
CONFIG_KCMP=y
|
||||
CONFIG_RSEQ=y
|
||||
# CONFIG_DEBUG_RSEQ is not set
|
||||
CONFIG_EMBEDDED=y
|
||||
@ -4804,7 +4805,6 @@ CONFIG_RESET_CONTROLLER=y
|
||||
# PHY Subsystem
|
||||
#
|
||||
# CONFIG_GENERIC_PHY is not set
|
||||
# CONFIG_USB_LGM_PHY is not set
|
||||
# CONFIG_BCM_KONA_USB2_PHY is not set
|
||||
# CONFIG_PHY_CADENCE_TORRENT is not set
|
||||
# CONFIG_PHY_CADENCE_DPHY is not set
|
||||
|
@ -1,10 +1,10 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/arm 5.10.13 Kernel Configuration
|
||||
# Linux/arm 5.10.20 Kernel Configuration
|
||||
#
|
||||
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
|
||||
CONFIG_CC_IS_GCC=y
|
||||
CONFIG_GCC_VERSION=70200
|
||||
CONFIG_GCC_VERSION=80300
|
||||
CONFIG_LD_VERSION=231010000
|
||||
CONFIG_CLANG_VERSION=0
|
||||
CONFIG_LLD_VERSION=0
|
||||
@ -207,6 +207,7 @@ CONFIG_BPF_SYSCALL=y
|
||||
# CONFIG_BPF_PRELOAD is not set
|
||||
# CONFIG_USERFAULTFD is not set
|
||||
CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
|
||||
CONFIG_KCMP=y
|
||||
CONFIG_RSEQ=y
|
||||
# CONFIG_DEBUG_RSEQ is not set
|
||||
CONFIG_EMBEDDED=y
|
||||
@ -5400,7 +5401,6 @@ CONFIG_RESET_SIMPLE=y
|
||||
# PHY Subsystem
|
||||
#
|
||||
# CONFIG_GENERIC_PHY is not set
|
||||
# CONFIG_USB_LGM_PHY is not set
|
||||
# CONFIG_BCM_KONA_USB2_PHY is not set
|
||||
# CONFIG_PHY_CADENCE_TORRENT is not set
|
||||
# CONFIG_PHY_CADENCE_DPHY is not set
|
||||
|
Loading…
x
Reference in New Issue
Block a user