diff --git a/packages/graphics/bcm2835-driver/package.mk b/packages/graphics/bcm2835-driver/package.mk index 6b86d2c000..1195e93e91 100644 --- a/packages/graphics/bcm2835-driver/package.mk +++ b/packages/graphics/bcm2835-driver/package.mk @@ -3,8 +3,8 @@ # Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv) PKG_NAME="bcm2835-driver" -PKG_VERSION="c78f3ef45229ab722ec6b858f39b078535d88bee" -PKG_SHA256="124d86bca3d039557ee82f9fa4103d7e711856127a9108b01500a0858c885cc4" +PKG_VERSION="051e5e1be85fa7119aebf20adf8e61b9fe37c459" +PKG_SHA256="5818db4fd2e2e01eb520783da0db21965e8f6b542c34eeed393292edc3016228" PKG_LICENSE="nonfree" PKG_SITE="http://www.broadcom.com" PKG_URL="${DISTRO_SRC}/${PKG_NAME}-${PKG_VERSION}.tar.xz" diff --git a/packages/linux/package.mk b/packages/linux/package.mk index fd607610e0..c050c440c2 100644 --- a/packages/linux/package.mk +++ b/packages/linux/package.mk @@ -22,8 +22,8 @@ case "${LINUX}" in PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz" ;; raspberrypi) - PKG_VERSION="e9505f4612646533f53813aabef5ca040b0ea49d" # 5.10.7 - PKG_SHA256="2d6e3637dbe328161161cbdede2902e0aaaa979bd0179a40e14d2960a61de593" + PKG_VERSION="3f9ab74a54cf02e4810027f71e897ce48303ebc7" # 5.10.9 + PKG_SHA256="01ddf05e7a24c6fcf01c1471430e8602de15d0d9ba8f36e307f1e028ce3618a0" PKG_URL="https://github.com/raspberrypi/linux/archive/${PKG_VERSION}.tar.gz" PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz" ;; diff --git a/packages/linux/patches/raspberrypi/linux-011-fix-lbm-pr4075.patch b/packages/linux/patches/raspberrypi/linux-011-fix-lbm-pr4075.patch deleted file mode 100644 index d87af277bb..0000000000 --- a/packages/linux/patches/raspberrypi/linux-011-fix-lbm-pr4075.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 20076ee25ac4a9ddc26dfbb508570c85c88ba6ef Mon Sep 17 00:00:00 2001 -From: Dom Cobley -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 ---- - 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; - } diff --git a/packages/linux/patches/raspberrypi/linux-012-fix-pos1-scl.patch b/packages/linux/patches/raspberrypi/linux-012-fix-pos1-scl.patch deleted file mode 100644 index 239ba21039..0000000000 --- a/packages/linux/patches/raspberrypi/linux-012-fix-pos1-scl.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 21ed5c49de516d496f9820dc1ddaa4027daa8823 Mon Sep 17 00:00:00 2001 -From: Dom Cobley -Date: Sun, 17 Jan 2021 17:07:02 +0000 -Subject: [PATCH] vc4: Correct POS1_SCL for hvs5 - -Fixes: c54619b0bfb35c4153b3fb34916a6fa50dcf2dc1 -Signed-off-by: Dom Cobley ---- - 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 */ diff --git a/packages/tools/bcm2835-bootloader/package.mk b/packages/tools/bcm2835-bootloader/package.mk index 683b7c11fb..305ad65cff 100644 --- a/packages/tools/bcm2835-bootloader/package.mk +++ b/packages/tools/bcm2835-bootloader/package.mk @@ -3,8 +3,8 @@ # Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv) PKG_NAME="bcm2835-bootloader" -PKG_VERSION="c78f3ef45229ab722ec6b858f39b078535d88bee" -PKG_SHA256="29ac3bf2be7be35512f8fa99cce2a8d0a305de085a96b5facd81258d63020c0c" +PKG_VERSION="051e5e1be85fa7119aebf20adf8e61b9fe37c459" +PKG_SHA256="602eca16dbe7aeef4a80d134c63634bda7ae651d24c48f3a130847a96f0af383" PKG_ARCH="arm" PKG_LICENSE="nonfree" PKG_SITE="http://www.broadcom.com" diff --git a/packages/tools/rpi-eeprom/package.mk b/packages/tools/rpi-eeprom/package.mk index abfc6969a2..1c972d76c2 100644 --- a/packages/tools/rpi-eeprom/package.mk +++ b/packages/tools/rpi-eeprom/package.mk @@ -2,8 +2,8 @@ # Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv) PKG_NAME="rpi-eeprom" -PKG_VERSION="54cadc816ba739afd08ead6d679e647de028a65c" -PKG_SHA256="582c3a3af2c5e34824bae530b7d8b218c2b43813f98fe203df91e8b55ca23174" +PKG_VERSION="7cb9d4162f330c5ca578376b1a3d5e748843e81c" +PKG_SHA256="896e13ec43d1e264601f2c5cbe13a1e3cefdbddf2ec9dc0bcf833e2a714258a2" PKG_ARCH="arm" PKG_LICENSE="BSD-3/custom" PKG_SITE="https://github.com/raspberrypi/rpi-eeprom" diff --git a/projects/RPi/devices/RPi/linux/linux.arm.conf b/projects/RPi/devices/RPi/linux/linux.arm.conf index 418934448a..b6ac8fe69b 100644 --- a/projects/RPi/devices/RPi/linux/linux.arm.conf +++ b/projects/RPi/devices/RPi/linux/linux.arm.conf @@ -1,6 +1,6 @@ # # 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_IS_GCC=y @@ -5477,6 +5477,7 @@ CONFIG_BRANCH_PROFILE_NONE=y # CONFIG_PROFILE_ALL_BRANCHES is not set CONFIG_BLK_DEV_IO_TRACE=y CONFIG_KPROBE_EVENTS=y +# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set # CONFIG_UPROBE_EVENTS is not set CONFIG_BPF_EVENTS=y CONFIG_DYNAMIC_EVENTS=y diff --git a/projects/RPi/devices/RPi2/linux/linux.arm.conf b/projects/RPi/devices/RPi2/linux/linux.arm.conf index 4e48422807..5f125d8c08 100644 --- a/projects/RPi/devices/RPi2/linux/linux.arm.conf +++ b/projects/RPi/devices/RPi2/linux/linux.arm.conf @@ -1,6 +1,6 @@ # # 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_IS_GCC=y @@ -5634,6 +5634,7 @@ CONFIG_BRANCH_PROFILE_NONE=y # CONFIG_PROFILE_ALL_BRANCHES is not set CONFIG_BLK_DEV_IO_TRACE=y CONFIG_KPROBE_EVENTS=y +# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set # CONFIG_UPROBE_EVENTS is not set CONFIG_BPF_EVENTS=y CONFIG_DYNAMIC_EVENTS=y diff --git a/projects/RPi/devices/RPi4/linux/linux.arm.conf b/projects/RPi/devices/RPi4/linux/linux.arm.conf index dfb684a276..a3eef89e0f 100644 --- a/projects/RPi/devices/RPi4/linux/linux.arm.conf +++ b/projects/RPi/devices/RPi4/linux/linux.arm.conf @@ -1,6 +1,6 @@ # # 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_IS_GCC=y @@ -6232,6 +6232,7 @@ CONFIG_BRANCH_PROFILE_NONE=y # CONFIG_PROFILE_ALL_BRANCHES is not set CONFIG_BLK_DEV_IO_TRACE=y CONFIG_KPROBE_EVENTS=y +# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set # CONFIG_UPROBE_EVENTS is not set CONFIG_BPF_EVENTS=y CONFIG_DYNAMIC_EVENTS=y