mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-31 14:37:59 +00:00
Merge pull request #5012 from HiassofT/le10-kernel-5.10.7+
linux (RPi): update to 5.10.9
This commit is contained in:
commit
eee3dd6d6a
@ -3,8 +3,8 @@
|
|||||||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
PKG_NAME="bcm2835-driver"
|
PKG_NAME="bcm2835-driver"
|
||||||
PKG_VERSION="c78f3ef45229ab722ec6b858f39b078535d88bee"
|
PKG_VERSION="051e5e1be85fa7119aebf20adf8e61b9fe37c459"
|
||||||
PKG_SHA256="124d86bca3d039557ee82f9fa4103d7e711856127a9108b01500a0858c885cc4"
|
PKG_SHA256="5818db4fd2e2e01eb520783da0db21965e8f6b542c34eeed393292edc3016228"
|
||||||
PKG_LICENSE="nonfree"
|
PKG_LICENSE="nonfree"
|
||||||
PKG_SITE="http://www.broadcom.com"
|
PKG_SITE="http://www.broadcom.com"
|
||||||
PKG_URL="${DISTRO_SRC}/${PKG_NAME}-${PKG_VERSION}.tar.xz"
|
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"
|
PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz"
|
||||||
;;
|
;;
|
||||||
raspberrypi)
|
raspberrypi)
|
||||||
PKG_VERSION="e9505f4612646533f53813aabef5ca040b0ea49d" # 5.10.7
|
PKG_VERSION="3f9ab74a54cf02e4810027f71e897ce48303ebc7" # 5.10.9
|
||||||
PKG_SHA256="2d6e3637dbe328161161cbdede2902e0aaaa979bd0179a40e14d2960a61de593"
|
PKG_SHA256="01ddf05e7a24c6fcf01c1471430e8602de15d0d9ba8f36e307f1e028ce3618a0"
|
||||||
PKG_URL="https://github.com/raspberrypi/linux/archive/${PKG_VERSION}.tar.gz"
|
PKG_URL="https://github.com/raspberrypi/linux/archive/${PKG_VERSION}.tar.gz"
|
||||||
PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz"
|
PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz"
|
||||||
;;
|
;;
|
||||||
|
@ -1,70 +0,0 @@
|
|||||||
From 20076ee25ac4a9ddc26dfbb508570c85c88ba6ef Mon Sep 17 00:00:00 2001
|
|
||||||
From: Dom Cobley <popcornmix@gmail.com>
|
|
||||||
Date: Thu, 14 Jan 2021 16:01:50 +0000
|
|
||||||
Subject: [PATCH] vc4: Correct lbm size and calculation
|
|
||||||
|
|
||||||
LBM base address is measured in units of pixels per cycle.
|
|
||||||
That is 4 for 2711 (hvs5) and 2 for 2708.
|
|
||||||
|
|
||||||
We are wasting 75% of lbm by indexing without the scaling.
|
|
||||||
But we were also using too high a size for the lbm resulting
|
|
||||||
in partial corruption (right hand side) of vertically
|
|
||||||
scaled images, usually at 4K or lower resolutions with more layers.
|
|
||||||
|
|
||||||
The physical RAM of LBM on 2711 is 8 * 1920 * 16 * 12-bit
|
|
||||||
(pixels are stored 12-bits per component regardless of format).
|
|
||||||
|
|
||||||
The LBM adress indexes work in units of pixels per clock,
|
|
||||||
so for 4 pixels per clock that means we have 32 * 1920 = 60K
|
|
||||||
|
|
||||||
Signed-off-by: Dom Cobley <popcornmix@gmail.com>
|
|
||||||
---
|
|
||||||
drivers/gpu/drm/vc4/vc4_hvs.c | 8 ++++----
|
|
||||||
drivers/gpu/drm/vc4/vc4_plane.c | 7 ++++++-
|
|
||||||
2 files changed, 10 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/drivers/gpu/drm/vc4/vc4_hvs.c b/drivers/gpu/drm/vc4/vc4_hvs.c
|
|
||||||
index f2a99579a8d0f..3ceda2ff072bb 100644
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_hvs.c
|
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_hvs.c
|
|
||||||
@@ -661,11 +661,11 @@ static int vc4_hvs_bind(struct device *dev, struct device *master, void *data)
|
|
||||||
* for now we just allocate globally.
|
|
||||||
*/
|
|
||||||
if (!hvs->hvs5)
|
|
||||||
- /* 96kB */
|
|
||||||
- drm_mm_init(&hvs->lbm_mm, 0, 96 * 1024);
|
|
||||||
+ /* 48k words of 2x12-bit pixels */
|
|
||||||
+ drm_mm_init(&hvs->lbm_mm, 0, 48 * 1024);
|
|
||||||
else
|
|
||||||
- /* 70k words */
|
|
||||||
- drm_mm_init(&hvs->lbm_mm, 0, 70 * 2 * 1024);
|
|
||||||
+ /* 60k words of 4x12-bit pixels */
|
|
||||||
+ drm_mm_init(&hvs->lbm_mm, 0, 60 * 1024);
|
|
||||||
|
|
||||||
/* Upload filter kernels. We only have the one for now, so we
|
|
||||||
* keep it around for the lifetime of the driver.
|
|
||||||
diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c
|
|
||||||
index 100b3541bc6ef..6bdfc1ba7b46d 100644
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
|
||||||
@@ -444,6 +444,7 @@ static void vc4_write_ppf(struct vc4_plane_state *vc4_state, u32 src, u32 dst)
|
|
||||||
static u32 vc4_lbm_size(struct drm_plane_state *state)
|
|
||||||
{
|
|
||||||
struct vc4_plane_state *vc4_state = to_vc4_plane_state(state);
|
|
||||||
+ struct vc4_dev *vc4 = to_vc4_dev(state->plane->dev);
|
|
||||||
u32 pix_per_line;
|
|
||||||
u32 lbm;
|
|
||||||
|
|
||||||
@@ -479,7 +480,11 @@ static u32 vc4_lbm_size(struct drm_plane_state *state)
|
|
||||||
lbm = pix_per_line * 16;
|
|
||||||
}
|
|
||||||
|
|
||||||
- lbm = roundup(lbm, 32);
|
|
||||||
+ /* Align it to 64 or 128 (hvs5) bytes */
|
|
||||||
+ lbm = roundup(lbm, vc4->hvs->hvs5 ? 128 : 64);
|
|
||||||
+
|
|
||||||
+ /* Each "word" of the LBM memory contains 2 or 4 (hvs5) pixels */
|
|
||||||
+ lbm /= vc4->hvs->hvs5 ? 4 : 2;
|
|
||||||
|
|
||||||
return lbm;
|
|
||||||
}
|
|
@ -1,27 +0,0 @@
|
|||||||
From 21ed5c49de516d496f9820dc1ddaa4027daa8823 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Dom Cobley <popcornmix@gmail.com>
|
|
||||||
Date: Sun, 17 Jan 2021 17:07:02 +0000
|
|
||||||
Subject: [PATCH] vc4: Correct POS1_SCL for hvs5
|
|
||||||
|
|
||||||
Fixes: c54619b0bfb35c4153b3fb34916a6fa50dcf2dc1
|
|
||||||
Signed-off-by: Dom Cobley <popcornmix@gmail.com>
|
|
||||||
---
|
|
||||||
drivers/gpu/drm/vc4/vc4_plane.c | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c
|
|
||||||
index 6bdfc1ba7b46d..b5586c92bfe54 100644
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_plane.c
|
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_plane.c
|
|
||||||
@@ -984,9 +984,9 @@ static int vc4_plane_mode_set(struct drm_plane *plane,
|
|
||||||
if (!vc4_state->is_unity) {
|
|
||||||
vc4_dlist_write(vc4_state,
|
|
||||||
VC4_SET_FIELD(vc4_state->crtc_w,
|
|
||||||
- SCALER_POS1_SCL_WIDTH) |
|
|
||||||
+ SCALER5_POS1_SCL_WIDTH) |
|
|
||||||
VC4_SET_FIELD(vc4_state->crtc_h,
|
|
||||||
- SCALER_POS1_SCL_HEIGHT));
|
|
||||||
+ SCALER5_POS1_SCL_HEIGHT));
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Position Word 2: Source Image Size */
|
|
@ -3,8 +3,8 @@
|
|||||||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
PKG_NAME="bcm2835-bootloader"
|
PKG_NAME="bcm2835-bootloader"
|
||||||
PKG_VERSION="c78f3ef45229ab722ec6b858f39b078535d88bee"
|
PKG_VERSION="051e5e1be85fa7119aebf20adf8e61b9fe37c459"
|
||||||
PKG_SHA256="29ac3bf2be7be35512f8fa99cce2a8d0a305de085a96b5facd81258d63020c0c"
|
PKG_SHA256="602eca16dbe7aeef4a80d134c63634bda7ae651d24c48f3a130847a96f0af383"
|
||||||
PKG_ARCH="arm"
|
PKG_ARCH="arm"
|
||||||
PKG_LICENSE="nonfree"
|
PKG_LICENSE="nonfree"
|
||||||
PKG_SITE="http://www.broadcom.com"
|
PKG_SITE="http://www.broadcom.com"
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
|
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
|
||||||
|
|
||||||
PKG_NAME="rpi-eeprom"
|
PKG_NAME="rpi-eeprom"
|
||||||
PKG_VERSION="54cadc816ba739afd08ead6d679e647de028a65c"
|
PKG_VERSION="7cb9d4162f330c5ca578376b1a3d5e748843e81c"
|
||||||
PKG_SHA256="582c3a3af2c5e34824bae530b7d8b218c2b43813f98fe203df91e8b55ca23174"
|
PKG_SHA256="896e13ec43d1e264601f2c5cbe13a1e3cefdbddf2ec9dc0bcf833e2a714258a2"
|
||||||
PKG_ARCH="arm"
|
PKG_ARCH="arm"
|
||||||
PKG_LICENSE="BSD-3/custom"
|
PKG_LICENSE="BSD-3/custom"
|
||||||
PKG_SITE="https://github.com/raspberrypi/rpi-eeprom"
|
PKG_SITE="https://github.com/raspberrypi/rpi-eeprom"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#
|
#
|
||||||
# Automatically generated file; DO NOT EDIT.
|
# Automatically generated file; DO NOT EDIT.
|
||||||
# Linux/arm 5.10.4 Kernel Configuration
|
# Linux/arm 5.10.9 Kernel Configuration
|
||||||
#
|
#
|
||||||
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
|
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
|
||||||
CONFIG_CC_IS_GCC=y
|
CONFIG_CC_IS_GCC=y
|
||||||
@ -5477,6 +5477,7 @@ CONFIG_BRANCH_PROFILE_NONE=y
|
|||||||
# CONFIG_PROFILE_ALL_BRANCHES is not set
|
# CONFIG_PROFILE_ALL_BRANCHES is not set
|
||||||
CONFIG_BLK_DEV_IO_TRACE=y
|
CONFIG_BLK_DEV_IO_TRACE=y
|
||||||
CONFIG_KPROBE_EVENTS=y
|
CONFIG_KPROBE_EVENTS=y
|
||||||
|
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
|
||||||
# CONFIG_UPROBE_EVENTS is not set
|
# CONFIG_UPROBE_EVENTS is not set
|
||||||
CONFIG_BPF_EVENTS=y
|
CONFIG_BPF_EVENTS=y
|
||||||
CONFIG_DYNAMIC_EVENTS=y
|
CONFIG_DYNAMIC_EVENTS=y
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#
|
#
|
||||||
# Automatically generated file; DO NOT EDIT.
|
# Automatically generated file; DO NOT EDIT.
|
||||||
# Linux/arm 5.10.4 Kernel Configuration
|
# Linux/arm 5.10.9 Kernel Configuration
|
||||||
#
|
#
|
||||||
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
|
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
|
||||||
CONFIG_CC_IS_GCC=y
|
CONFIG_CC_IS_GCC=y
|
||||||
@ -5634,6 +5634,7 @@ CONFIG_BRANCH_PROFILE_NONE=y
|
|||||||
# CONFIG_PROFILE_ALL_BRANCHES is not set
|
# CONFIG_PROFILE_ALL_BRANCHES is not set
|
||||||
CONFIG_BLK_DEV_IO_TRACE=y
|
CONFIG_BLK_DEV_IO_TRACE=y
|
||||||
CONFIG_KPROBE_EVENTS=y
|
CONFIG_KPROBE_EVENTS=y
|
||||||
|
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
|
||||||
# CONFIG_UPROBE_EVENTS is not set
|
# CONFIG_UPROBE_EVENTS is not set
|
||||||
CONFIG_BPF_EVENTS=y
|
CONFIG_BPF_EVENTS=y
|
||||||
CONFIG_DYNAMIC_EVENTS=y
|
CONFIG_DYNAMIC_EVENTS=y
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#
|
#
|
||||||
# Automatically generated file; DO NOT EDIT.
|
# Automatically generated file; DO NOT EDIT.
|
||||||
# Linux/arm 5.10.4 Kernel Configuration
|
# Linux/arm 5.10.9 Kernel Configuration
|
||||||
#
|
#
|
||||||
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
|
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
|
||||||
CONFIG_CC_IS_GCC=y
|
CONFIG_CC_IS_GCC=y
|
||||||
@ -6232,6 +6232,7 @@ CONFIG_BRANCH_PROFILE_NONE=y
|
|||||||
# CONFIG_PROFILE_ALL_BRANCHES is not set
|
# CONFIG_PROFILE_ALL_BRANCHES is not set
|
||||||
CONFIG_BLK_DEV_IO_TRACE=y
|
CONFIG_BLK_DEV_IO_TRACE=y
|
||||||
CONFIG_KPROBE_EVENTS=y
|
CONFIG_KPROBE_EVENTS=y
|
||||||
|
# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
|
||||||
# CONFIG_UPROBE_EVENTS is not set
|
# CONFIG_UPROBE_EVENTS is not set
|
||||||
CONFIG_BPF_EVENTS=y
|
CONFIG_BPF_EVENTS=y
|
||||||
CONFIG_DYNAMIC_EVENTS=y
|
CONFIG_DYNAMIC_EVENTS=y
|
||||||
|
Loading…
x
Reference in New Issue
Block a user