From 878ffbbb39c948b6d2c70cc8b4dd3a1277f36be1 Mon Sep 17 00:00:00 2001 From: Jan200101 Date: Sun, 8 Aug 2021 11:37:43 +0200 Subject: kernel 5.13.8 --- SOURCES/Patchlist.changelog | 6 + SOURCES/kernel-aarch64-debug-fedora.config | 4 +- SOURCES/kernel-aarch64-fedora.config | 4 +- SOURCES/kernel-armv7hl-debug-fedora.config | 4 +- SOURCES/kernel-armv7hl-fedora.config | 4 +- SOURCES/kernel-armv7hl-lpae-debug-fedora.config | 4 +- SOURCES/kernel-armv7hl-lpae-fedora.config | 4 +- SOURCES/kernel-i686-debug-fedora.config | 6 +- SOURCES/kernel-i686-fedora.config | 6 +- SOURCES/kernel-ppc64le-debug-fedora.config | 4 +- SOURCES/kernel-ppc64le-debug-rhel.config | 2 +- SOURCES/kernel-ppc64le-fedora.config | 4 +- SOURCES/kernel-ppc64le-rhel.config | 2 +- SOURCES/kernel-s390x-debug-fedora.config | 4 +- SOURCES/kernel-s390x-fedora.config | 4 +- SOURCES/kernel-x86_64-debug-fedora.config | 6 +- SOURCES/kernel-x86_64-debug-rhel.config | 2 +- SOURCES/kernel-x86_64-fedora.config | 6 +- SOURCES/kernel-x86_64-rhel.config | 2 +- SOURCES/patch-5.13-redhat.patch | 149 ++++++++++-------------- SPECS/kernel.spec | 29 ++--- 21 files changed, 115 insertions(+), 141 deletions(-) diff --git a/SOURCES/Patchlist.changelog b/SOURCES/Patchlist.changelog index da0061c..5caa871 100644 --- a/SOURCES/Patchlist.changelog +++ b/SOURCES/Patchlist.changelog @@ -1,3 +1,9 @@ +https://gitlab.com/cki-project/kernel-ark/-/commit/558c3d6b47a25f6af07e3fc967e16cc66f694cb0 + 558c3d6b47a25f6af07e3fc967e16cc66f694cb0 powerpc/pseries: Fix regression while building external modules + +https://gitlab.com/cki-project/kernel-ark/-/commit/29c0325a98bbdbfa3d569e858e221db9d3d7c217 + 29c0325a98bbdbfa3d569e858e221db9d3d7c217 drm/rockchip: remove existing generic drivers to take over the device + https://gitlab.com/cki-project/kernel-ark/-/commit/e833c34e56563b0292493c62921e7132a16ceef0 e833c34e56563b0292493c62921e7132a16ceef0 iwlwifi Add support for ax201 in Samsung Galaxy Book Flex2 Alpha diff --git a/SOURCES/kernel-aarch64-debug-fedora.config b/SOURCES/kernel-aarch64-debug-fedora.config index 9d81ac5..8beb08e 100644 --- a/SOURCES/kernel-aarch64-debug-fedora.config +++ b/SOURCES/kernel-aarch64-debug-fedora.config @@ -1363,8 +1363,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m diff --git a/SOURCES/kernel-aarch64-fedora.config b/SOURCES/kernel-aarch64-fedora.config index b8dc46f..df06203 100644 --- a/SOURCES/kernel-aarch64-fedora.config +++ b/SOURCES/kernel-aarch64-fedora.config @@ -1363,8 +1363,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m diff --git a/SOURCES/kernel-armv7hl-debug-fedora.config b/SOURCES/kernel-armv7hl-debug-fedora.config index c220ff5..1e80bf7 100644 --- a/SOURCES/kernel-armv7hl-debug-fedora.config +++ b/SOURCES/kernel-armv7hl-debug-fedora.config @@ -1363,8 +1363,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m diff --git a/SOURCES/kernel-armv7hl-fedora.config b/SOURCES/kernel-armv7hl-fedora.config index 2ed7019..3273a9a 100644 --- a/SOURCES/kernel-armv7hl-fedora.config +++ b/SOURCES/kernel-armv7hl-fedora.config @@ -1363,8 +1363,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m diff --git a/SOURCES/kernel-armv7hl-lpae-debug-fedora.config b/SOURCES/kernel-armv7hl-lpae-debug-fedora.config index b69242d..eb27a80 100644 --- a/SOURCES/kernel-armv7hl-lpae-debug-fedora.config +++ b/SOURCES/kernel-armv7hl-lpae-debug-fedora.config @@ -1333,8 +1333,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m diff --git a/SOURCES/kernel-armv7hl-lpae-fedora.config b/SOURCES/kernel-armv7hl-lpae-fedora.config index 030f698..008f69c 100644 --- a/SOURCES/kernel-armv7hl-lpae-fedora.config +++ b/SOURCES/kernel-armv7hl-lpae-fedora.config @@ -1333,8 +1333,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m diff --git a/SOURCES/kernel-i686-debug-fedora.config b/SOURCES/kernel-i686-debug-fedora.config index 3ffc755..bda04a4 100644 --- a/SOURCES/kernel-i686-debug-fedora.config +++ b/SOURCES/kernel-i686-debug-fedora.config @@ -1075,8 +1075,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m @@ -3709,7 +3709,7 @@ CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set CONFIG_MOUSE_PS2_VMMOUSE=y CONFIG_MOUSE_PS2=y -# CONFIG_MOUSE_SERIAL is not set +CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m CONFIG_MOUSE_SYNAPTICS_USB=m # CONFIG_MOUSE_VSXXXAA is not set diff --git a/SOURCES/kernel-i686-fedora.config b/SOURCES/kernel-i686-fedora.config index 1348025..f69911c 100644 --- a/SOURCES/kernel-i686-fedora.config +++ b/SOURCES/kernel-i686-fedora.config @@ -1074,8 +1074,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m @@ -3687,7 +3687,7 @@ CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set CONFIG_MOUSE_PS2_VMMOUSE=y CONFIG_MOUSE_PS2=y -# CONFIG_MOUSE_SERIAL is not set +CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m CONFIG_MOUSE_SYNAPTICS_USB=m # CONFIG_MOUSE_VSXXXAA is not set diff --git a/SOURCES/kernel-ppc64le-debug-fedora.config b/SOURCES/kernel-ppc64le-debug-fedora.config index e385035..3d1490b 100644 --- a/SOURCES/kernel-ppc64le-debug-fedora.config +++ b/SOURCES/kernel-ppc64le-debug-fedora.config @@ -1014,8 +1014,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m diff --git a/SOURCES/kernel-ppc64le-debug-rhel.config b/SOURCES/kernel-ppc64le-debug-rhel.config index a5603a9..b077a58 100644 --- a/SOURCES/kernel-ppc64le-debug-rhel.config +++ b/SOURCES/kernel-ppc64le-debug-rhel.config @@ -855,7 +855,7 @@ CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_HMAC=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y +CONFIG_CRYPTO_ECDH=m CONFIG_CRYPTO_ECDSA=y CONFIG_CRYPTO_ECHAINIV=m # CONFIG_CRYPTO_ECRDSA is not set diff --git a/SOURCES/kernel-ppc64le-fedora.config b/SOURCES/kernel-ppc64le-fedora.config index 18ee500..f964bcd 100644 --- a/SOURCES/kernel-ppc64le-fedora.config +++ b/SOURCES/kernel-ppc64le-fedora.config @@ -1013,8 +1013,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m diff --git a/SOURCES/kernel-ppc64le-rhel.config b/SOURCES/kernel-ppc64le-rhel.config index c1a14ae..2fb833b 100644 --- a/SOURCES/kernel-ppc64le-rhel.config +++ b/SOURCES/kernel-ppc64le-rhel.config @@ -855,7 +855,7 @@ CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_HMAC=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y +CONFIG_CRYPTO_ECDH=m CONFIG_CRYPTO_ECDSA=y CONFIG_CRYPTO_ECHAINIV=m # CONFIG_CRYPTO_ECRDSA is not set diff --git a/SOURCES/kernel-s390x-debug-fedora.config b/SOURCES/kernel-s390x-debug-fedora.config index b337031..62596a0 100644 --- a/SOURCES/kernel-s390x-debug-fedora.config +++ b/SOURCES/kernel-s390x-debug-fedora.config @@ -1016,8 +1016,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m diff --git a/SOURCES/kernel-s390x-fedora.config b/SOURCES/kernel-s390x-fedora.config index 07b3fcd..b3c9dd1 100644 --- a/SOURCES/kernel-s390x-fedora.config +++ b/SOURCES/kernel-s390x-fedora.config @@ -1015,8 +1015,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m diff --git a/SOURCES/kernel-x86_64-debug-fedora.config b/SOURCES/kernel-x86_64-debug-fedora.config index 4d5325c..f7e6e69 100644 --- a/SOURCES/kernel-x86_64-debug-fedora.config +++ b/SOURCES/kernel-x86_64-debug-fedora.config @@ -1104,8 +1104,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m @@ -3756,7 +3756,7 @@ CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set CONFIG_MOUSE_PS2_VMMOUSE=y CONFIG_MOUSE_PS2=y -# CONFIG_MOUSE_SERIAL is not set +CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m CONFIG_MOUSE_SYNAPTICS_USB=m # CONFIG_MOUSE_VSXXXAA is not set diff --git a/SOURCES/kernel-x86_64-debug-rhel.config b/SOURCES/kernel-x86_64-debug-rhel.config index 64a75ef..b96397f 100644 --- a/SOURCES/kernel-x86_64-debug-rhel.config +++ b/SOURCES/kernel-x86_64-debug-rhel.config @@ -907,7 +907,7 @@ CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_HMAC=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y +CONFIG_CRYPTO_ECDH=m CONFIG_CRYPTO_ECDSA=y CONFIG_CRYPTO_ECHAINIV=m # CONFIG_CRYPTO_ECRDSA is not set diff --git a/SOURCES/kernel-x86_64-fedora.config b/SOURCES/kernel-x86_64-fedora.config index a749e5d..9765c82 100644 --- a/SOURCES/kernel-x86_64-fedora.config +++ b/SOURCES/kernel-x86_64-fedora.config @@ -1103,8 +1103,8 @@ CONFIG_CRYPTO_DRBG_CTR=y CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y -CONFIG_CRYPTO_ECDSA=y +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_ECDSA=m CONFIG_CRYPTO_ECHAINIV=m CONFIG_CRYPTO_ECRDSA=m CONFIG_CRYPTO_ESSIV=m @@ -3734,7 +3734,7 @@ CONFIG_MOUSE_PS2_SENTELIC=y # CONFIG_MOUSE_PS2_TOUCHKIT is not set CONFIG_MOUSE_PS2_VMMOUSE=y CONFIG_MOUSE_PS2=y -# CONFIG_MOUSE_SERIAL is not set +CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SYNAPTICS_I2C=m CONFIG_MOUSE_SYNAPTICS_USB=m # CONFIG_MOUSE_VSXXXAA is not set diff --git a/SOURCES/kernel-x86_64-rhel.config b/SOURCES/kernel-x86_64-rhel.config index e97910a..ec937b2 100644 --- a/SOURCES/kernel-x86_64-rhel.config +++ b/SOURCES/kernel-x86_64-rhel.config @@ -907,7 +907,7 @@ CONFIG_CRYPTO_DRBG_HASH=y CONFIG_CRYPTO_DRBG_HMAC=y CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y -CONFIG_CRYPTO_ECDH=y +CONFIG_CRYPTO_ECDH=m CONFIG_CRYPTO_ECDSA=y CONFIG_CRYPTO_ECHAINIV=m # CONFIG_CRYPTO_ECRDSA is not set diff --git a/SOURCES/patch-5.13-redhat.patch b/SOURCES/patch-5.13-redhat.patch index 49adbfa..c577052 100644 --- a/SOURCES/patch-5.13-redhat.patch +++ b/SOURCES/patch-5.13-redhat.patch @@ -21,6 +21,7 @@ drivers/firmware/efi/Makefile | 1 + drivers/firmware/efi/efi.c | 124 +++-- drivers/firmware/efi/secureboot.c | 38 ++ + drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 11 + drivers/hid/hid-rmi.c | 64 --- drivers/hwtracing/coresight/coresight-etm4x-core.c | 19 + drivers/input/rmi4/rmi_driver.c | 124 +++-- @@ -29,7 +30,7 @@ drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 1 + drivers/nvme/host/pci.c | 28 +- drivers/pci/quirks.c | 24 + - drivers/platform/x86/amd-pmc.c | 248 +++++++++- + drivers/platform/x86/amd-pmc.c | 204 +++++++- drivers/scsi/smartpqi/smartpqi_init.c | 16 + drivers/usb/core/hub.c | 7 + include/linux/acpi.h | 5 + @@ -65,7 +66,7 @@ tools/testing/selftests/bpf/progs/linked_vars2.c | 55 --- .../selftests/bpf/progs/test_static_linked1.c | 30 -- .../selftests/bpf/progs/test_static_linked2.c | 31 -- - 67 files changed, 909 insertions(+), 2353 deletions(-) + 68 files changed, 887 insertions(+), 2342 deletions(-) diff --git a/Documentation/admin-guide/kdump/kdump.rst b/Documentation/admin-guide/kdump/kdump.rst index 75a9dd98e76e..3ff3291551f9 100644 @@ -90,7 +91,7 @@ index 75a9dd98e76e..3ff3291551f9 100644 Boot into System Kernel diff --git a/Makefile b/Makefile -index 614327400aea..15c6acda836e 100644 +index fdb4e2fd9d8f..d8efc35bad77 100644 --- a/Makefile +++ b/Makefile @@ -508,6 +508,7 @@ KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE @@ -984,6 +985,28 @@ index 000000000000..de0a3714a5d4 + } + } +} +diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c +index 212bd87c0c4a..b8b066938e48 100644 +--- a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c ++++ b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c +@@ -114,6 +114,17 @@ static int rockchip_drm_bind(struct device *dev) + struct rockchip_drm_private *private; + int ret; + ++ /* Remove existing drivers that may own the framebuffer memory. */ ++ ret = drm_fb_helper_remove_conflicting_framebuffers(NULL, ++ "rockchip-drm-fb", ++ false); ++ if (ret) { ++ DRM_DEV_ERROR(dev, ++ "Failed to remove existing framebuffers - %d.\n", ++ ret); ++ return ret; ++ } ++ + drm_dev = drm_dev_alloc(&rockchip_drm_driver, dev); + if (IS_ERR(drm_dev)) + return PTR_ERR(drm_dev); diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c index 311eee599ce9..2460c6bd46f8 100644 --- a/drivers/hid/hid-rmi.c @@ -1485,10 +1508,10 @@ index 6d74386eadc2..2333c1e4ae05 100644 * Intersil/Techwell TW686[4589]-based video capture cards have an empty (zero) * class code. Fix it. diff --git a/drivers/platform/x86/amd-pmc.c b/drivers/platform/x86/amd-pmc.c -index b9da58ee9b1e..663a4ca0580d 100644 +index ca95c2a52e26..e38e8288468f 100644 --- a/drivers/platform/x86/amd-pmc.c +++ b/drivers/platform/x86/amd-pmc.c -@@ -46,34 +46,79 @@ +@@ -46,26 +46,70 @@ #define AMD_PMC_RESULT_CMD_UNKNOWN 0xFE #define AMD_PMC_RESULT_FAILED 0xFF @@ -1516,7 +1539,6 @@ index b9da58ee9b1e..663a4ca0580d 100644 #define AMD_CPU_ID_CZN AMD_CPU_ID_RN +#define AMD_CPU_ID_YC 0x14B5 --#define AMD_SMU_FW_VERSION 0x0 #define PMC_MSG_DELAY_MIN_US 100 #define RESPONSE_REGISTER_LOOP_MAX 200 @@ -1559,10 +1581,9 @@ index b9da58ee9b1e..663a4ca0580d 100644 u32 cpu_id; + u32 active_ips; struct device *dev; -+ struct mutex lock; /* generic mutex lock */ + struct mutex lock; /* generic mutex lock */ #if IS_ENABLED(CONFIG_DEBUG_FS) - struct dentry *dbgfs_dir; - #endif /* CONFIG_DEBUG_FS */ +@@ -74,6 +118,7 @@ struct amd_pmc_dev { }; static struct amd_pmc_dev pmc; @@ -1570,7 +1591,7 @@ index b9da58ee9b1e..663a4ca0580d 100644 static inline u32 amd_pmc_reg_read(struct amd_pmc_dev *dev, int reg_offset) { -@@ -85,18 +130,76 @@ static inline void amd_pmc_reg_write(struct amd_pmc_dev *dev, int reg_offset, u3 +@@ -85,13 +130,76 @@ static inline void amd_pmc_reg_write(struct amd_pmc_dev *dev, int reg_offset, u3 iowrite32(val, dev->regbase + reg_offset); } @@ -1594,8 +1615,7 @@ index b9da58ee9b1e..663a4ca0580d 100644 #ifdef CONFIG_DEBUG_FS static int smu_fw_info_show(struct seq_file *s, void *unused) { - struct amd_pmc_dev *dev = s->private; -- u32 value; ++ struct amd_pmc_dev *dev = s->private; + struct smu_metrics table; + int idx; + @@ -1617,9 +1637,7 @@ index b9da58ee9b1e..663a4ca0580d 100644 + seq_printf(s, "%-8s : %lld\n", soc15_ip_blk[idx].name, + table.timecondition_notmet_lastcapture[idx]); + } - -- value = ioread32(dev->smu_base + AMD_SMU_FW_VERSION); -- seq_printf(s, "SMU FW Info: %x\n", value); ++ return 0; } DEFINE_SHOW_ATTRIBUTE(smu_fw_info); @@ -1650,7 +1668,7 @@ index b9da58ee9b1e..663a4ca0580d 100644 static void amd_pmc_dbgfs_unregister(struct amd_pmc_dev *dev) { debugfs_remove_recursive(dev->dbgfs_dir); -@@ -107,6 +210,8 @@ static void amd_pmc_dbgfs_register(struct amd_pmc_dev *dev) +@@ -102,6 +210,8 @@ static void amd_pmc_dbgfs_register(struct amd_pmc_dev *dev) dev->dbgfs_dir = debugfs_create_dir("amd_pmc", NULL); debugfs_create_file("smu_fw_info", 0644, dev->dbgfs_dir, dev, &smu_fw_info_fops); @@ -1659,7 +1677,7 @@ index b9da58ee9b1e..663a4ca0580d 100644 } #else static inline void amd_pmc_dbgfs_register(struct amd_pmc_dev *dev) -@@ -118,6 +223,32 @@ static inline void amd_pmc_dbgfs_unregister(struct amd_pmc_dev *dev) +@@ -113,6 +223,32 @@ static inline void amd_pmc_dbgfs_unregister(struct amd_pmc_dev *dev) } #endif /* CONFIG_DEBUG_FS */ @@ -1692,7 +1710,7 @@ index b9da58ee9b1e..663a4ca0580d 100644 static void amd_pmc_dump_registers(struct amd_pmc_dev *dev) { u32 value; -@@ -132,19 +263,19 @@ static void amd_pmc_dump_registers(struct amd_pmc_dev *dev) +@@ -127,10 +263,9 @@ static void amd_pmc_dump_registers(struct amd_pmc_dev *dev) dev_dbg(dev->dev, "AMD_PMC_REGISTER_MESSAGE:%x\n", value); } @@ -1703,66 +1721,38 @@ index b9da58ee9b1e..663a4ca0580d 100644 - u8 msg; u32 val; -+ mutex_lock(&dev->lock); - /* Wait until we get a valid response */ - rc = readx_poll_timeout(ioread32, dev->regbase + AMD_PMC_REGISTER_RESPONSE, -- val, val > 0, PMC_MSG_DELAY_MIN_US, -+ val, val != 0, PMC_MSG_DELAY_MIN_US, - PMC_MSG_DELAY_MIN_US * RESPONSE_REGISTER_LOOP_MAX); - if (rc) { - dev_err(dev->dev, "failed to talk to SMU\n"); -- return rc; -+ goto out_unlock; - } - - /* Write zero to response register */ -@@ -154,34 +285,91 @@ static int amd_pmc_send_cmd(struct amd_pmc_dev *dev, bool set) + mutex_lock(&dev->lock); +@@ -150,8 +285,8 @@ static int amd_pmc_send_cmd(struct amd_pmc_dev *dev, bool set) amd_pmc_reg_write(dev, AMD_PMC_REGISTER_ARGUMENT, set); /* Write message ID to message ID register */ - msg = (dev->cpu_id == AMD_CPU_ID_RN) ? MSG_OS_HINT_RN : MSG_OS_HINT_PCO; amd_pmc_reg_write(dev, AMD_PMC_REGISTER_MESSAGE, msg); -- return 0; + -+ /* Wait until we get a valid response */ -+ rc = readx_poll_timeout(ioread32, dev->regbase + AMD_PMC_REGISTER_RESPONSE, -+ val, val != 0, PMC_MSG_DELAY_MIN_US, -+ PMC_MSG_DELAY_MIN_US * RESPONSE_REGISTER_LOOP_MAX); -+ if (rc) { -+ dev_err(dev->dev, "SMU response timed out\n"); -+ goto out_unlock; -+ } + /* Wait until we get a valid response */ + rc = readx_poll_timeout(ioread32, dev->regbase + AMD_PMC_REGISTER_RESPONSE, + val, val != 0, PMC_MSG_DELAY_MIN_US, +@@ -163,6 +298,12 @@ static int amd_pmc_send_cmd(struct amd_pmc_dev *dev, bool set) + + switch (val) { + case AMD_PMC_RESULT_OK: + -+ switch (val) { -+ case AMD_PMC_RESULT_OK: + if (ret) { + /* PMFW may take longer time to return back the data */ + usleep_range(DELAY_MIN_US, 10 * DELAY_MAX_US); + *data = amd_pmc_reg_read(dev, AMD_PMC_REGISTER_ARGUMENT); + } -+ break; -+ case AMD_PMC_RESULT_CMD_REJECT_BUSY: -+ dev_err(dev->dev, "SMU not ready. err: 0x%x\n", val); -+ rc = -EBUSY; -+ goto out_unlock; -+ case AMD_PMC_RESULT_CMD_UNKNOWN: -+ dev_err(dev->dev, "SMU cmd unknown. err: 0x%x\n", val); -+ rc = -EINVAL; -+ goto out_unlock; -+ case AMD_PMC_RESULT_CMD_REJECT_PREREQ: -+ case AMD_PMC_RESULT_FAILED: -+ default: -+ dev_err(dev->dev, "SMU cmd failed. err: 0x%x\n", val); -+ rc = -EIO; -+ goto out_unlock; -+ } -+ -+out_unlock: -+ mutex_unlock(&dev->lock); + break; + case AMD_PMC_RESULT_CMD_REJECT_BUSY: + dev_err(dev->dev, "SMU not ready. err: 0x%x\n", val); +@@ -182,32 +323,54 @@ static int amd_pmc_send_cmd(struct amd_pmc_dev *dev, bool set) + + out_unlock: + mutex_unlock(&dev->lock); + amd_pmc_dump_registers(dev); -+ return rc; -+} -+ + return rc; + } + +static int amd_pmc_get_os_hint(struct amd_pmc_dev *dev) +{ + switch (dev->cpu_id) { @@ -1773,8 +1763,8 @@ index b9da58ee9b1e..663a4ca0580d 100644 + return MSG_OS_HINT_RN; + } + return -EINVAL; - } - ++} ++ static int __maybe_unused amd_pmc_suspend(struct device *dev) { struct amd_pmc_dev *pdev = dev_get_drvdata(dev); @@ -1815,7 +1805,7 @@ index b9da58ee9b1e..663a4ca0580d 100644 return 0; } -@@ -190,6 +378,7 @@ static const struct dev_pm_ops amd_pmc_pm_ops = { +@@ -216,6 +379,7 @@ static const struct dev_pm_ops amd_pmc_pm_ops = { }; static const struct pci_device_id pmc_pci_ids[] = { @@ -1823,7 +1813,7 @@ index b9da58ee9b1e..663a4ca0580d 100644 { PCI_DEVICE(PCI_VENDOR_ID_AMD, AMD_CPU_ID_CZN) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, AMD_CPU_ID_RN) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, AMD_CPU_ID_PCO) }, -@@ -201,9 +390,8 @@ static int amd_pmc_probe(struct platform_device *pdev) +@@ -227,9 +391,8 @@ static int amd_pmc_probe(struct platform_device *pdev) { struct amd_pmc_dev *dev = &pmc; struct pci_dev *rdev; @@ -1835,16 +1825,7 @@ index b9da58ee9b1e..663a4ca0580d 100644 int err; u32 val; -@@ -248,16 +436,25 @@ static int amd_pmc_probe(struct platform_device *pdev) - pci_dev_put(rdev); - base_addr = ((u64)base_addr_hi << 32 | base_addr_lo); - -- dev->smu_base = devm_ioremap(dev->dev, base_addr, AMD_PMC_MAPPING_SIZE); -- if (!dev->smu_base) -- return -ENOMEM; -- - dev->regbase = devm_ioremap(dev->dev, base_addr + AMD_PMC_BASE_ADDR_OFFSET, - AMD_PMC_MAPPING_SIZE); +@@ -279,7 +442,20 @@ static int amd_pmc_probe(struct platform_device *pdev) if (!dev->regbase) return -ENOMEM; @@ -1864,15 +1845,9 @@ index b9da58ee9b1e..663a4ca0580d 100644 + if (err) + dev_err(dev->dev, "SMU debugging info not supported on this platform\n"); + mutex_init(&dev->lock); platform_set_drvdata(pdev, dev); - amd_pmc_dbgfs_register(dev); -@@ -269,11 +466,14 @@ static int amd_pmc_remove(struct platform_device *pdev) - struct amd_pmc_dev *dev = platform_get_drvdata(pdev); - - amd_pmc_dbgfs_unregister(dev); -+ mutex_destroy(&dev->lock); - return 0; - } +@@ -298,6 +474,8 @@ static int amd_pmc_remove(struct platform_device *pdev) static const struct acpi_device_id amd_pmc_acpi_ids[] = { {"AMDI0005", 0}, diff --git a/SPECS/kernel.spec b/SPECS/kernel.spec index cab8431..180b375 100755 --- a/SPECS/kernel.spec +++ b/SPECS/kernel.spec @@ -116,7 +116,7 @@ Summary: The Linux kernel # The kernel tarball/base version %define kversion 5.13 -%define rpmversion 5.13.7 +%define rpmversion 5.13.8 %define stableversion 5.13 %define pkgrelease 201 @@ -646,7 +646,7 @@ BuildRequires: clang # exact git commit you can run # # xzcat -qq ${TARBALL} | git get-tar-commit-id -Source0: linux-5.13.7.tar.xz +Source0: linux-5.13.8.tar.xz Source1: Makefile.rhelver @@ -1320,8 +1320,8 @@ ApplyOptionalPatch() fi } -%setup -q -n kernel-5.13.7 -c -mv linux-5.13.7 linux-%{KVERREL} +%setup -q -n kernel-5.13.8 -c +mv linux-5.13.8 linux-%{KVERREL} cd linux-%{KVERREL} cp -a %{SOURCE1} . @@ -2896,21 +2896,14 @@ fi # # %changelog -* Tue Aug 03 2021 Jan Drögehoff - 5.13.7-201 -- Linux v5.13.7 futex2 zen openrgb +* Sun Aug 08 2021 Jan Drögehoff - 5.13.8-201.fsync +- Linux v5.13.8 futex2 zen openrgb -* Sat Jul 31 2021 Justin M. Forbes [5.13.7-200] -- kernel-5.13.7-0 (Justin M. Forbes) -- kernel-5.13.6-0 (Justin M. Forbes) -- kernel-5.13.5-0 (Justin M. Forbes) -- iwlwifi Add support for ax201 in Samsung Galaxy Book Flex2 Alpha (Justin M. Forbes) -- Revert "usb: renesas-xhci: Fix handling of unknown ROM state" (Justin M. Forbes) -- RHEL configs need this too (Justin M. Forbes) -- kernel-5.13.4-0 (Justin M. Forbes) -- Config update for 5.13.4 (Justin M. Forbes) -- kernel-5.13.3-0 (Justin M. Forbes) -- Don't tag a release as [redhat] (Justin M. Forbes) -- platform/x86: amd-pmc: Fix missing unlock on error in amd_pmc_send_cmd() (Yang Yingliang) +* Wed Aug 04 2021 Justin M. Forbes [5.13.8-200] +- Re-enable sermouse for x86 (rhbz 1974002) (Justin M. Forbes) +- Revert CRYPTO_ECDH and CRYPTO_ECDA from builtin to module to fix fips (Justin M. Forbes) +- drm/rockchip: remove existing generic drivers to take over the device (Javier Martinez Canillas) +- powerpc/pseries: Fix regression while building external modules (Srikar Dronamraju) * Sat Jul 31 2021 Justin M. Forbes [5.13.7-0] - kernel-5.13.6-0 (Justin M. Forbes) -- cgit v1.2.3