kernel-6.8.9-300
* Thu May 02 2024 Augusto Caringi <acaringi@redhat.com> [6.8.9-0] - redhat/configs: Enable CONFIG_CPU_MITIGATIONS (Augusto Caringi) - Turn on CONFIG_RANDOM_KMALLOC_CACHES for Fedora (Justin M. Forbes) - drm/nouveau/dp: Don't probe eDP ports twice harder (Lyude Paul) - drm/nouveau/kms/nv50-: Disable AUX bus for disconnected DP ports (Lyude Paul) - drm/dp: Don't attempt AUX transfers when eDP panels are not powered (Douglas Anderson) - Linux v6.8.9 Resolves: Signed-off-by: Augusto Caringi <acaringi@redhat.com>
This commit is contained in:
parent
9ead7be4da
commit
e437dd7be7
|
@ -1,3 +1,12 @@
|
|||
"https://gitlab.com/cki-project/kernel-ark/-/commit"/21b019ce62997d78fe5e42f4a04b64cd9d9b11b8
|
||||
21b019ce62997d78fe5e42f4a04b64cd9d9b11b8 drm/nouveau/dp: Don't probe eDP ports twice harder
|
||||
|
||||
"https://gitlab.com/cki-project/kernel-ark/-/commit"/fb6f1f07d22bc6bac44c87e7623cf252e8c57473
|
||||
fb6f1f07d22bc6bac44c87e7623cf252e8c57473 drm/nouveau/kms/nv50-: Disable AUX bus for disconnected DP ports
|
||||
|
||||
"https://gitlab.com/cki-project/kernel-ark/-/commit"/5122018da124756713dfe49cad50a7653ade7bf0
|
||||
5122018da124756713dfe49cad50a7653ade7bf0 drm/dp: Don't attempt AUX transfers when eDP panels are not powered
|
||||
|
||||
"https://gitlab.com/cki-project/kernel-ark/-/commit"/e56840b5f971b4d0f4032f6f5ab95c0c5ba40f8e
|
||||
e56840b5f971b4d0f4032f6f5ab95c0c5ba40f8e nouveau: fix devinit paths to only handle display on GSP.
|
||||
|
||||
|
|
|
@ -6337,7 +6337,7 @@ CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=y
|
|||
CONFIG_RANDOMIZE_KSTACK_OFFSET=y
|
||||
CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa
|
||||
CONFIG_RANDOMIZE_MODULE_REGION_FULL=y
|
||||
# CONFIG_RANDOM_KMALLOC_CACHES is not set
|
||||
CONFIG_RANDOM_KMALLOC_CACHES=y
|
||||
CONFIG_RANDOM_TRUST_BOOTLOADER=y
|
||||
CONFIG_RANDOM_TRUST_CPU=y
|
||||
# CONFIG_RANDSTRUCT_FULL is not set
|
||||
|
|
|
@ -6310,7 +6310,7 @@ CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=y
|
|||
CONFIG_RANDOMIZE_KSTACK_OFFSET=y
|
||||
CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa
|
||||
CONFIG_RANDOMIZE_MODULE_REGION_FULL=y
|
||||
# CONFIG_RANDOM_KMALLOC_CACHES is not set
|
||||
CONFIG_RANDOM_KMALLOC_CACHES=y
|
||||
CONFIG_RANDOM_TRUST_BOOTLOADER=y
|
||||
CONFIG_RANDOM_TRUST_CPU=y
|
||||
# CONFIG_RANDSTRUCT_FULL is not set
|
||||
|
|
|
@ -6337,7 +6337,7 @@ CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=y
|
|||
CONFIG_RANDOMIZE_KSTACK_OFFSET=y
|
||||
CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa
|
||||
CONFIG_RANDOMIZE_MODULE_REGION_FULL=y
|
||||
# CONFIG_RANDOM_KMALLOC_CACHES is not set
|
||||
CONFIG_RANDOM_KMALLOC_CACHES=y
|
||||
CONFIG_RANDOM_TRUST_BOOTLOADER=y
|
||||
CONFIG_RANDOM_TRUST_CPU=y
|
||||
# CONFIG_RANDSTRUCT_FULL is not set
|
||||
|
|
|
@ -6310,7 +6310,7 @@ CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=y
|
|||
CONFIG_RANDOMIZE_KSTACK_OFFSET=y
|
||||
CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa
|
||||
CONFIG_RANDOMIZE_MODULE_REGION_FULL=y
|
||||
# CONFIG_RANDOM_KMALLOC_CACHES is not set
|
||||
CONFIG_RANDOM_KMALLOC_CACHES=y
|
||||
CONFIG_RANDOM_TRUST_BOOTLOADER=y
|
||||
CONFIG_RANDOM_TRUST_CPU=y
|
||||
# CONFIG_RANDSTRUCT_FULL is not set
|
||||
|
|
|
@ -912,7 +912,6 @@ CONFIG_CIO2_BRIDGE=y
|
|||
CONFIG_CLEANCACHE=y
|
||||
CONFIG_CLK_FD_KUNIT_TEST=m
|
||||
CONFIG_CLK_GATE_KUNIT_TEST=m
|
||||
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
|
||||
# CONFIG_CLK_ICST is not set
|
||||
CONFIG_CLK_KUNIT_TEST=m
|
||||
# CONFIG_CLK_QORIQ is not set
|
||||
|
@ -5165,7 +5164,7 @@ CONFIG_RANDOM32_SELFTEST=y
|
|||
CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=y
|
||||
CONFIG_RANDOMIZE_KSTACK_OFFSET=y
|
||||
CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa
|
||||
# CONFIG_RANDOM_KMALLOC_CACHES is not set
|
||||
CONFIG_RANDOM_KMALLOC_CACHES=y
|
||||
CONFIG_RANDOM_TRUST_BOOTLOADER=y
|
||||
CONFIG_RANDOM_TRUST_CPU=y
|
||||
# CONFIG_RANDSTRUCT_FULL is not set
|
||||
|
|
|
@ -910,7 +910,6 @@ CONFIG_CIO2_BRIDGE=y
|
|||
CONFIG_CLEANCACHE=y
|
||||
CONFIG_CLK_FD_KUNIT_TEST=m
|
||||
CONFIG_CLK_GATE_KUNIT_TEST=m
|
||||
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
|
||||
# CONFIG_CLK_ICST is not set
|
||||
CONFIG_CLK_KUNIT_TEST=m
|
||||
# CONFIG_CLK_QORIQ is not set
|
||||
|
@ -5136,7 +5135,7 @@ CONFIG_RAID_ATTRS=m
|
|||
CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=y
|
||||
CONFIG_RANDOMIZE_KSTACK_OFFSET=y
|
||||
CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa
|
||||
# CONFIG_RANDOM_KMALLOC_CACHES is not set
|
||||
CONFIG_RANDOM_KMALLOC_CACHES=y
|
||||
CONFIG_RANDOM_TRUST_BOOTLOADER=y
|
||||
CONFIG_RANDOM_TRUST_CPU=y
|
||||
# CONFIG_RANDSTRUCT_FULL is not set
|
||||
|
|
|
@ -919,7 +919,6 @@ CONFIG_CIO2_BRIDGE=y
|
|||
CONFIG_CLEANCACHE=y
|
||||
CONFIG_CLK_FD_KUNIT_TEST=m
|
||||
CONFIG_CLK_GATE_KUNIT_TEST=m
|
||||
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
|
||||
# CONFIG_CLK_ICST is not set
|
||||
CONFIG_CLK_KUNIT_TEST=m
|
||||
# CONFIG_CLK_QORIQ is not set
|
||||
|
@ -5086,7 +5085,7 @@ CONFIG_RANDOMIZE_BASE=y
|
|||
CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=y
|
||||
CONFIG_RANDOMIZE_KSTACK_OFFSET=y
|
||||
CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa
|
||||
# CONFIG_RANDOM_KMALLOC_CACHES is not set
|
||||
CONFIG_RANDOM_KMALLOC_CACHES=y
|
||||
CONFIG_RANDOM_TRUST_BOOTLOADER=y
|
||||
CONFIG_RANDOM_TRUST_CPU=y
|
||||
# CONFIG_RANDSTRUCT_FULL is not set
|
||||
|
|
|
@ -917,7 +917,6 @@ CONFIG_CIO2_BRIDGE=y
|
|||
CONFIG_CLEANCACHE=y
|
||||
CONFIG_CLK_FD_KUNIT_TEST=m
|
||||
CONFIG_CLK_GATE_KUNIT_TEST=m
|
||||
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
|
||||
# CONFIG_CLK_ICST is not set
|
||||
CONFIG_CLK_KUNIT_TEST=m
|
||||
# CONFIG_CLK_QORIQ is not set
|
||||
|
@ -5057,7 +5056,7 @@ CONFIG_RANDOMIZE_BASE=y
|
|||
CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=y
|
||||
CONFIG_RANDOMIZE_KSTACK_OFFSET=y
|
||||
CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa
|
||||
# CONFIG_RANDOM_KMALLOC_CACHES is not set
|
||||
CONFIG_RANDOM_KMALLOC_CACHES=y
|
||||
CONFIG_RANDOM_TRUST_BOOTLOADER=y
|
||||
CONFIG_RANDOM_TRUST_CPU=y
|
||||
# CONFIG_RANDSTRUCT_FULL is not set
|
||||
|
|
|
@ -976,7 +976,6 @@ CONFIG_CIO2_BRIDGE=y
|
|||
CONFIG_CLEANCACHE=y
|
||||
CONFIG_CLK_FD_KUNIT_TEST=m
|
||||
CONFIG_CLK_GATE_KUNIT_TEST=m
|
||||
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
|
||||
# CONFIG_CLK_ICST is not set
|
||||
CONFIG_CLK_KUNIT_TEST=m
|
||||
# CONFIG_CLK_LGM_CGU is not set
|
||||
|
@ -1091,6 +1090,7 @@ CONFIG_CPU_ISOLATION=y
|
|||
CONFIG_CPU_LITTLE_ENDIAN=y
|
||||
CONFIG_CPUMASK_KUNIT_TEST=m
|
||||
CONFIG_CPUMASK_OFFSTACK=y
|
||||
CONFIG_CPU_MITIGATIONS=y
|
||||
CONFIG_CPUSETS=y
|
||||
CONFIG_CPU_SRSO=y
|
||||
# CONFIG_CPU_THERMAL is not set
|
||||
|
@ -5570,7 +5570,7 @@ CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=y
|
|||
CONFIG_RANDOMIZE_KSTACK_OFFSET=y
|
||||
CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa
|
||||
CONFIG_RANDOMIZE_MEMORY=y
|
||||
# CONFIG_RANDOM_KMALLOC_CACHES is not set
|
||||
CONFIG_RANDOM_KMALLOC_CACHES=y
|
||||
CONFIG_RANDOM_TRUST_BOOTLOADER=y
|
||||
CONFIG_RANDOM_TRUST_CPU=y
|
||||
# CONFIG_RANDSTRUCT_FULL is not set
|
||||
|
|
|
@ -907,6 +907,7 @@ CONFIG_CPU_ISOLATION=y
|
|||
CONFIG_CPU_LITTLE_ENDIAN=y
|
||||
CONFIG_CPUMASK_KUNIT_TEST=m
|
||||
CONFIG_CPUMASK_OFFSTACK=y
|
||||
CONFIG_CPU_MITIGATIONS=y
|
||||
CONFIG_CPUSETS=y
|
||||
CONFIG_CPU_SRSO=y
|
||||
# CONFIG_CPU_THERMAL is not set
|
||||
|
|
|
@ -974,7 +974,6 @@ CONFIG_CIO2_BRIDGE=y
|
|||
CONFIG_CLEANCACHE=y
|
||||
CONFIG_CLK_FD_KUNIT_TEST=m
|
||||
CONFIG_CLK_GATE_KUNIT_TEST=m
|
||||
# CONFIG_CLK_GFM_LPASS_SM8250 is not set
|
||||
# CONFIG_CLK_ICST is not set
|
||||
CONFIG_CLK_KUNIT_TEST=m
|
||||
# CONFIG_CLK_LGM_CGU is not set
|
||||
|
@ -1089,6 +1088,7 @@ CONFIG_CPU_ISOLATION=y
|
|||
CONFIG_CPU_LITTLE_ENDIAN=y
|
||||
CONFIG_CPUMASK_KUNIT_TEST=m
|
||||
CONFIG_CPUMASK_OFFSTACK=y
|
||||
CONFIG_CPU_MITIGATIONS=y
|
||||
CONFIG_CPUSETS=y
|
||||
CONFIG_CPU_SRSO=y
|
||||
# CONFIG_CPU_THERMAL is not set
|
||||
|
@ -5542,7 +5542,7 @@ CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=y
|
|||
CONFIG_RANDOMIZE_KSTACK_OFFSET=y
|
||||
CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa
|
||||
CONFIG_RANDOMIZE_MEMORY=y
|
||||
# CONFIG_RANDOM_KMALLOC_CACHES is not set
|
||||
CONFIG_RANDOM_KMALLOC_CACHES=y
|
||||
CONFIG_RANDOM_TRUST_BOOTLOADER=y
|
||||
CONFIG_RANDOM_TRUST_CPU=y
|
||||
# CONFIG_RANDSTRUCT_FULL is not set
|
||||
|
|
|
@ -907,6 +907,7 @@ CONFIG_CPU_ISOLATION=y
|
|||
CONFIG_CPU_LITTLE_ENDIAN=y
|
||||
CONFIG_CPUMASK_KUNIT_TEST=m
|
||||
CONFIG_CPUMASK_OFFSTACK=y
|
||||
CONFIG_CPU_MITIGATIONS=y
|
||||
CONFIG_CPUSETS=y
|
||||
CONFIG_CPU_SRSO=y
|
||||
# CONFIG_CPU_THERMAL is not set
|
||||
|
|
|
@ -907,6 +907,7 @@ CONFIG_CPU_ISOLATION=y
|
|||
CONFIG_CPU_LITTLE_ENDIAN=y
|
||||
CONFIG_CPUMASK_KUNIT_TEST=m
|
||||
CONFIG_CPUMASK_OFFSTACK=y
|
||||
CONFIG_CPU_MITIGATIONS=y
|
||||
CONFIG_CPUSETS=y
|
||||
CONFIG_CPU_SRSO=y
|
||||
# CONFIG_CPU_THERMAL is not set
|
||||
|
|
|
@ -907,6 +907,7 @@ CONFIG_CPU_ISOLATION=y
|
|||
CONFIG_CPU_LITTLE_ENDIAN=y
|
||||
CONFIG_CPUMASK_KUNIT_TEST=m
|
||||
CONFIG_CPUMASK_OFFSTACK=y
|
||||
CONFIG_CPU_MITIGATIONS=y
|
||||
CONFIG_CPUSETS=y
|
||||
CONFIG_CPU_SRSO=y
|
||||
# CONFIG_CPU_THERMAL is not set
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
* Thu May 02 2024 Augusto Caringi <acaringi@redhat.com> [6.8.9-0]
|
||||
- redhat/configs: Enable CONFIG_CPU_MITIGATIONS (Augusto Caringi)
|
||||
- Turn on CONFIG_RANDOM_KMALLOC_CACHES for Fedora (Justin M. Forbes)
|
||||
- drm/nouveau/dp: Don't probe eDP ports twice harder (Lyude Paul)
|
||||
- drm/nouveau/kms/nv50-: Disable AUX bus for disconnected DP ports (Lyude Paul)
|
||||
- drm/dp: Don't attempt AUX transfers when eDP panels are not powered (Douglas Anderson)
|
||||
- Linux v6.8.9
|
||||
Resolves:
|
||||
|
||||
* Sat Apr 27 2024 Justin M. Forbes <jforbes@fedoraproject.org> [6.8.8-0]
|
||||
- Update BugsFixed for 6.8.8 (Justin M. Forbes)
|
||||
- Turn on ISM for Fedora (Justin M. Forbes)
|
||||
|
|
16
kernel.spec
16
kernel.spec
|
@ -160,18 +160,18 @@ Summary: The Linux kernel
|
|||
# the --with-release option overrides this setting.)
|
||||
%define debugbuildsenabled 1
|
||||
# define buildid .local
|
||||
%define specrpmversion 6.8.8
|
||||
%define specversion 6.8.8
|
||||
%define specrpmversion 6.8.9
|
||||
%define specversion 6.8.9
|
||||
%define patchversion 6.8
|
||||
%define pkgrelease 300
|
||||
%define kversion 6
|
||||
%define tarfile_release 6.8.8
|
||||
%define tarfile_release 6.8.9
|
||||
# This is needed to do merge window version magic
|
||||
%define patchlevel 8
|
||||
# This allows pkg_release to have configurable %%{?dist} tag
|
||||
%define specrelease 300%{?buildid}%{?dist}
|
||||
# This defines the kabi tarball version
|
||||
%define kabiversion 6.8.8
|
||||
%define kabiversion 6.8.9
|
||||
|
||||
# If this variable is set to 1, a bpf selftests build failure will cause a
|
||||
# fatal kernel package build error
|
||||
|
@ -3959,6 +3959,14 @@ fi\
|
|||
#
|
||||
#
|
||||
%changelog
|
||||
* Thu May 02 2024 Augusto Caringi <acaringi@redhat.com> [6.8.9-0]
|
||||
- redhat/configs: Enable CONFIG_CPU_MITIGATIONS (Augusto Caringi)
|
||||
- Turn on CONFIG_RANDOM_KMALLOC_CACHES for Fedora (Justin M. Forbes)
|
||||
- drm/nouveau/dp: Don't probe eDP ports twice harder (Lyude Paul)
|
||||
- drm/nouveau/kms/nv50-: Disable AUX bus for disconnected DP ports (Lyude Paul)
|
||||
- drm/dp: Don't attempt AUX transfers when eDP panels are not powered (Douglas Anderson)
|
||||
- Linux v6.8.9
|
||||
|
||||
* Sat Apr 27 2024 Justin M. Forbes <jforbes@fedoraproject.org> [6.8.8-0]
|
||||
- Update BugsFixed for 6.8.8 (Justin M. Forbes)
|
||||
- Turn on ISM for Fedora (Justin M. Forbes)
|
||||
|
|
|
@ -13,6 +13,10 @@
|
|||
drivers/firmware/efi/efi.c | 124 +++++++++++----
|
||||
drivers/firmware/efi/secureboot.c | 38 +++++
|
||||
drivers/firmware/sysfb.c | 18 ++-
|
||||
drivers/gpu/drm/display/drm_dp_helper.c | 35 +++++
|
||||
drivers/gpu/drm/nouveau/nouveau_dp.c | 23 ++-
|
||||
drivers/gpu/drm/panel/panel-edp.c | 3 +
|
||||
drivers/gpu/drm/panel/panel-samsung-atna33xc20.c | 2 +
|
||||
drivers/hid/hid-rmi.c | 66 --------
|
||||
drivers/hwtracing/coresight/coresight-etm4x-core.c | 19 +++
|
||||
drivers/input/rmi4/rmi_driver.c | 124 +++++++++------
|
||||
|
@ -21,6 +25,7 @@
|
|||
drivers/scsi/sd.c | 10 ++
|
||||
drivers/usb/core/hub.c | 7 +
|
||||
fs/xfs/xfs_iomap.c | 4 +-
|
||||
include/drm/display/drm_dp_helper.h | 6 +
|
||||
include/linux/efi.h | 22 ++-
|
||||
include/linux/lsm_hook_defs.h | 2 +
|
||||
include/linux/module.h | 1 +
|
||||
|
@ -35,10 +40,10 @@
|
|||
security/lockdown/Kconfig | 13 ++
|
||||
security/lockdown/lockdown.c | 1 +
|
||||
security/security.c | 12 ++
|
||||
37 files changed, 671 insertions(+), 177 deletions(-)
|
||||
42 files changed, 735 insertions(+), 182 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index ffa43a6d0424..0d5ae4952215 100644
|
||||
index 2917a6914c03..ac609d49e12f 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -22,6 +22,18 @@ $(if $(filter __%, $(MAKECMDGOALS)), \
|
||||
|
@ -578,6 +583,156 @@ index 3c197db42c9d..16e4a2e90fae 100644
|
|||
pd = sysfb_create_simplefb(si, &mode);
|
||||
if (!IS_ERR(pd))
|
||||
goto unlock_mutex;
|
||||
diff --git a/drivers/gpu/drm/display/drm_dp_helper.c b/drivers/gpu/drm/display/drm_dp_helper.c
|
||||
index 26c188ce5f1c..fb80843e7f2d 100644
|
||||
--- a/drivers/gpu/drm/display/drm_dp_helper.c
|
||||
+++ b/drivers/gpu/drm/display/drm_dp_helper.c
|
||||
@@ -532,6 +532,15 @@ static int drm_dp_dpcd_access(struct drm_dp_aux *aux, u8 request,
|
||||
|
||||
mutex_lock(&aux->hw_mutex);
|
||||
|
||||
+ /*
|
||||
+ * If the device attached to the aux bus is powered down then there's
|
||||
+ * no reason to attempt a transfer. Error out immediately.
|
||||
+ */
|
||||
+ if (aux->powered_down) {
|
||||
+ ret = -EBUSY;
|
||||
+ goto unlock;
|
||||
+ }
|
||||
+
|
||||
/*
|
||||
* The specification doesn't give any recommendation on how often to
|
||||
* retry native transactions. We used to retry 7 times like for
|
||||
@@ -599,6 +608,29 @@ int drm_dp_dpcd_probe(struct drm_dp_aux *aux, unsigned int offset)
|
||||
}
|
||||
EXPORT_SYMBOL(drm_dp_dpcd_probe);
|
||||
|
||||
+/**
|
||||
+ * drm_dp_dpcd_set_powered() - Set whether the DP device is powered
|
||||
+ * @aux: DisplayPort AUX channel; for convenience it's OK to pass NULL here
|
||||
+ * and the function will be a no-op.
|
||||
+ * @powered: true if powered; false if not
|
||||
+ *
|
||||
+ * If the endpoint device on the DP AUX bus is known to be powered down
|
||||
+ * then this function can be called to make future transfers fail immediately
|
||||
+ * instead of needing to time out.
|
||||
+ *
|
||||
+ * If this function is never called then a device defaults to being powered.
|
||||
+ */
|
||||
+void drm_dp_dpcd_set_powered(struct drm_dp_aux *aux, bool powered)
|
||||
+{
|
||||
+ if (!aux)
|
||||
+ return;
|
||||
+
|
||||
+ mutex_lock(&aux->hw_mutex);
|
||||
+ aux->powered_down = !powered;
|
||||
+ mutex_unlock(&aux->hw_mutex);
|
||||
+}
|
||||
+EXPORT_SYMBOL(drm_dp_dpcd_set_powered);
|
||||
+
|
||||
/**
|
||||
* drm_dp_dpcd_read() - read a series of bytes from the DPCD
|
||||
* @aux: DisplayPort AUX channel (SST or MST)
|
||||
@@ -1858,6 +1890,9 @@ static int drm_dp_i2c_xfer(struct i2c_adapter *adapter, struct i2c_msg *msgs,
|
||||
struct drm_dp_aux_msg msg;
|
||||
int err = 0;
|
||||
|
||||
+ if (aux->powered_down)
|
||||
+ return -EBUSY;
|
||||
+
|
||||
dp_aux_i2c_transfer_size = clamp(dp_aux_i2c_transfer_size, 1, DP_AUX_MAX_PAYLOAD_BYTES);
|
||||
|
||||
memset(&msg, 0, sizeof(msg));
|
||||
diff --git a/drivers/gpu/drm/nouveau/nouveau_dp.c b/drivers/gpu/drm/nouveau/nouveau_dp.c
|
||||
index 7de7707ec6a8..a72c45809484 100644
|
||||
--- a/drivers/gpu/drm/nouveau/nouveau_dp.c
|
||||
+++ b/drivers/gpu/drm/nouveau/nouveau_dp.c
|
||||
@@ -225,12 +225,18 @@ nouveau_dp_detect(struct nouveau_connector *nv_connector,
|
||||
u8 *dpcd = nv_encoder->dp.dpcd;
|
||||
int ret = NOUVEAU_DP_NONE, hpd;
|
||||
|
||||
- /* If we've already read the DPCD on an eDP device, we don't need to
|
||||
- * reread it as it won't change
|
||||
+ /* eDP ports don't support hotplugging - so there's no point in probing eDP ports unless we
|
||||
+ * haven't probed them once before.
|
||||
*/
|
||||
- if (connector->connector_type == DRM_MODE_CONNECTOR_eDP &&
|
||||
- dpcd[DP_DPCD_REV] != 0)
|
||||
- return NOUVEAU_DP_SST;
|
||||
+ if (connector->connector_type == DRM_MODE_CONNECTOR_eDP) {
|
||||
+ if (connector->status == connector_status_connected)
|
||||
+ return NOUVEAU_DP_SST;
|
||||
+ else if (connector->status == connector_status_disconnected)
|
||||
+ return NOUVEAU_DP_NONE;
|
||||
+ }
|
||||
+
|
||||
+ // Ensure that the aux bus is enabled for probing
|
||||
+ drm_dp_dpcd_set_powered(&nv_connector->aux, true);
|
||||
|
||||
mutex_lock(&nv_encoder->dp.hpd_irq_lock);
|
||||
if (mstm) {
|
||||
@@ -293,6 +299,13 @@ nouveau_dp_detect(struct nouveau_connector *nv_connector,
|
||||
if (mstm && !mstm->suspended && ret != NOUVEAU_DP_MST)
|
||||
nv50_mstm_remove(mstm);
|
||||
|
||||
+ /* GSP doesn't like when we try to do aux transactions on a port it considers disconnected,
|
||||
+ * and since we don't really have a usecase for that anyway - just disable the aux bus here
|
||||
+ * if we've decided the connector is disconnected
|
||||
+ */
|
||||
+ if (ret == NOUVEAU_DP_NONE)
|
||||
+ drm_dp_dpcd_set_powered(&nv_connector->aux, false);
|
||||
+
|
||||
mutex_unlock(&nv_encoder->dp.hpd_irq_lock);
|
||||
return ret;
|
||||
}
|
||||
diff --git a/drivers/gpu/drm/panel/panel-edp.c b/drivers/gpu/drm/panel/panel-edp.c
|
||||
index e5e3f0b9ca61..49b8a2484d92 100644
|
||||
--- a/drivers/gpu/drm/panel/panel-edp.c
|
||||
+++ b/drivers/gpu/drm/panel/panel-edp.c
|
||||
@@ -397,6 +397,7 @@ static int panel_edp_suspend(struct device *dev)
|
||||
{
|
||||
struct panel_edp *p = dev_get_drvdata(dev);
|
||||
|
||||
+ drm_dp_dpcd_set_powered(p->aux, false);
|
||||
gpiod_set_value_cansleep(p->enable_gpio, 0);
|
||||
regulator_disable(p->supply);
|
||||
p->unprepared_time = ktime_get_boottime();
|
||||
@@ -453,6 +454,7 @@ static int panel_edp_prepare_once(struct panel_edp *p)
|
||||
}
|
||||
|
||||
gpiod_set_value_cansleep(p->enable_gpio, 1);
|
||||
+ drm_dp_dpcd_set_powered(p->aux, true);
|
||||
|
||||
delay = p->desc->delay.hpd_reliable;
|
||||
if (p->no_hpd)
|
||||
@@ -489,6 +491,7 @@ static int panel_edp_prepare_once(struct panel_edp *p)
|
||||
return 0;
|
||||
|
||||
error:
|
||||
+ drm_dp_dpcd_set_powered(p->aux, false);
|
||||
gpiod_set_value_cansleep(p->enable_gpio, 0);
|
||||
regulator_disable(p->supply);
|
||||
p->unprepared_time = ktime_get_boottime();
|
||||
diff --git a/drivers/gpu/drm/panel/panel-samsung-atna33xc20.c b/drivers/gpu/drm/panel/panel-samsung-atna33xc20.c
|
||||
index 5703f4712d96..76c2a8f6718c 100644
|
||||
--- a/drivers/gpu/drm/panel/panel-samsung-atna33xc20.c
|
||||
+++ b/drivers/gpu/drm/panel/panel-samsung-atna33xc20.c
|
||||
@@ -72,6 +72,7 @@ static int atana33xc20_suspend(struct device *dev)
|
||||
if (p->el3_was_on)
|
||||
atana33xc20_wait(p->el_on3_off_time, 150);
|
||||
|
||||
+ drm_dp_dpcd_set_powered(p->aux, false);
|
||||
ret = regulator_disable(p->supply);
|
||||
if (ret)
|
||||
return ret;
|
||||
@@ -93,6 +94,7 @@ static int atana33xc20_resume(struct device *dev)
|
||||
ret = regulator_enable(p->supply);
|
||||
if (ret)
|
||||
return ret;
|
||||
+ drm_dp_dpcd_set_powered(p->aux, true);
|
||||
p->powered_on_time = ktime_get_boottime();
|
||||
|
||||
if (p->no_hpd) {
|
||||
diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c
|
||||
index d4af17fdba46..154f0403cbf4 100644
|
||||
--- a/drivers/hid/hid-rmi.c
|
||||
|
@ -1066,6 +1221,26 @@ index 18c8f168b153..055cdec2e9ad 100644
|
|||
error = xfs_bmbt_to_iomap(ip, iomap, &imap, flags, 0, seq);
|
||||
out_unlock:
|
||||
xfs_iunlock(ip, lockmode);
|
||||
diff --git a/include/drm/display/drm_dp_helper.h b/include/drm/display/drm_dp_helper.h
|
||||
index 863b2e7add29..472359a9d675 100644
|
||||
--- a/include/drm/display/drm_dp_helper.h
|
||||
+++ b/include/drm/display/drm_dp_helper.h
|
||||
@@ -463,9 +463,15 @@ struct drm_dp_aux {
|
||||
* @is_remote: Is this AUX CH actually using sideband messaging.
|
||||
*/
|
||||
bool is_remote;
|
||||
+
|
||||
+ /**
|
||||
+ * @powered_down: If true then the remote endpoint is powered down.
|
||||
+ */
|
||||
+ bool powered_down;
|
||||
};
|
||||
|
||||
int drm_dp_dpcd_probe(struct drm_dp_aux *aux, unsigned int offset);
|
||||
+void drm_dp_dpcd_set_powered(struct drm_dp_aux *aux, bool powered);
|
||||
ssize_t drm_dp_dpcd_read(struct drm_dp_aux *aux, unsigned int offset,
|
||||
void *buffer, size_t size);
|
||||
ssize_t drm_dp_dpcd_write(struct drm_dp_aux *aux, unsigned int offset,
|
||||
diff --git a/include/linux/efi.h b/include/linux/efi.h
|
||||
index c74f47711f0b..e7bbf3b7a938 100644
|
||||
--- a/include/linux/efi.h
|
||||
|
|
6
sources
6
sources
|
@ -1,5 +1,5 @@
|
|||
SHA512 (kernel-abi-stablelists-6.6.0.tar.bz2) = 4f917598056dee5e23814621ec96ff2e4a411c8c4ba9d56ecb01b23cb96431825bedbecfcbaac9338efbf5cb21694d85497fa0bf43e7c80d9cd10bc6dd144dbd
|
||||
SHA512 (kernel-kabi-dw-6.6.0.tar.bz2) = 19308cd976031d05e18ef7f5d093218acdb89446418bab0cd956ff12cf66369915b9e64bb66fa9f20939428a60e81884fec5be3529c6c7461738d6540d3cc5c6
|
||||
SHA512 (linux-6.8.8.tar.xz) = ddf32036962127c2f49f88f6fa52bb2bd8dea870502f80bf0e1c74b8032999a6f41fbe28e5fb642c5bf759f7fb761bf66f83104070921c4b9804e18a261e1e41
|
||||
SHA512 (kernel-abi-stablelists-6.8.8.tar.xz) = c7b3df28c6b33e1f67e28423d274e68e7007188ad45d8939c5b1a16f5e5c88bf4cdf7232ed0c9f235d2df066a7977f34c8bd8dbe435a33b13d13f806e2b8d17c
|
||||
SHA512 (kernel-kabi-dw-6.8.8.tar.xz) = 23f891481f9fa9019a672c13e180d4ba9367e5c120f571b7d6d15ca7403bcb304368bbc5f449cb41b220e393f000dffc61edac14069107426307408fb83db55f
|
||||
SHA512 (linux-6.8.9.tar.xz) = 0da6c13b5068422a81bedb607468867173e737ae4ea0760a01ae91c5ffdec45ac34531c09c1ba046366f35f82a3fc07a1ad062f9043ff45d649bf9c498b86998
|
||||
SHA512 (kernel-abi-stablelists-6.8.9.tar.xz) = ab84a6357040ab758619a48d4d9d4013dd172d865bfe9d664de1b5f5d0f3df1f27d0d493c45b7c21f19eb9897be58d4f0fc6f348f87f7df7ef1465fb4efcbcf4
|
||||
SHA512 (kernel-kabi-dw-6.8.9.tar.xz) = 463a6e8212c65c0445e9252a35ef389fe73ad1d675ca363b54fdace7cbe10d3f6eeb8e35768a3116bd596b66c3ed5de4b8588331d7c51a2f4880b6e1376d9c5f
|
||||
|
|
Loading…
Reference in New Issue