From: Sasha Levin Date: Mon, 5 Jul 2021 01:54:01 +0000 (-0400) Subject: Fixes for 5.10 X-Git-Tag: v5.13.1~14 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7bb83396de5fe24f35d4a8519cecca443da8adeb;p=thirdparty%2Fkernel%2Fstable-queue.git Fixes for 5.10 Signed-off-by: Sasha Levin --- diff --git a/queue-5.10/drm-nouveau-fix-dma_address-check-for-cpu-gpu-sync.patch b/queue-5.10/drm-nouveau-fix-dma_address-check-for-cpu-gpu-sync.patch new file mode 100644 index 00000000000..21146da9332 --- /dev/null +++ b/queue-5.10/drm-nouveau-fix-dma_address-check-for-cpu-gpu-sync.patch @@ -0,0 +1,47 @@ +From 8a17200b39b7106b7c798e3ce461d8fc0744da81 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 11 Jun 2021 14:34:50 +0200 +Subject: drm/nouveau: fix dma_address check for CPU/GPU sync +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Christian König + +[ Upstream commit d330099115597bbc238d6758a4930e72b49ea9ba ] + +AGP for example doesn't have a dma_address array. + +Signed-off-by: Christian König +Acked-by: Alex Deucher +Link: https://patchwork.freedesktop.org/patch/msgid/20210614110517.1624-1-christian.koenig@amd.com +Signed-off-by: Sasha Levin +--- + drivers/gpu/drm/nouveau/nouveau_bo.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c +index 7daa12eec01b..b4946b595d86 100644 +--- a/drivers/gpu/drm/nouveau/nouveau_bo.c ++++ b/drivers/gpu/drm/nouveau/nouveau_bo.c +@@ -590,7 +590,7 @@ nouveau_bo_sync_for_device(struct nouveau_bo *nvbo) + struct ttm_dma_tt *ttm_dma = (struct ttm_dma_tt *)nvbo->bo.ttm; + int i; + +- if (!ttm_dma) ++ if (!ttm_dma || !ttm_dma->dma_address) + return; + + /* Don't waste time looping if the object is coherent */ +@@ -610,7 +610,7 @@ nouveau_bo_sync_for_cpu(struct nouveau_bo *nvbo) + struct ttm_dma_tt *ttm_dma = (struct ttm_dma_tt *)nvbo->bo.ttm; + int i; + +- if (!ttm_dma) ++ if (!ttm_dma || !ttm_dma->dma_address) + return; + + /* Don't waste time looping if the object is coherent */ +-- +2.30.2 + diff --git a/queue-5.10/gpio-amd8111-and-tqmx86-require-has_ioport_map.patch b/queue-5.10/gpio-amd8111-and-tqmx86-require-has_ioport_map.patch new file mode 100644 index 00000000000..176b3b27e78 --- /dev/null +++ b/queue-5.10/gpio-amd8111-and-tqmx86-require-has_ioport_map.patch @@ -0,0 +1,45 @@ +From d315059ebfb0f84b7cde20ba7337d09919c5497a Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 25 Jun 2021 10:37:34 +0200 +Subject: gpio: AMD8111 and TQMX86 require HAS_IOPORT_MAP + +From: Johannes Berg + +[ Upstream commit c6414e1a2bd26b0071e2b9d6034621f705dfd4c0 ] + +Both of these drivers use ioport_map(), so they need to +depend on HAS_IOPORT_MAP. Otherwise, they cannot be built +even with COMPILE_TEST on architectures without an ioport +implementation, such as ARCH=um. + +Reported-by: kernel test robot +Signed-off-by: Johannes Berg +Signed-off-by: Bartosz Golaszewski +Signed-off-by: Sasha Levin +--- + drivers/gpio/Kconfig | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig +index 14751c7ccd1f..d1300fc003ed 100644 +--- a/drivers/gpio/Kconfig ++++ b/drivers/gpio/Kconfig +@@ -1337,6 +1337,7 @@ config GPIO_TPS68470 + config GPIO_TQMX86 + tristate "TQ-Systems QTMX86 GPIO" + depends on MFD_TQMX86 || COMPILE_TEST ++ depends on HAS_IOPORT_MAP + select GPIOLIB_IRQCHIP + help + This driver supports GPIO on the TQMX86 IO controller. +@@ -1404,6 +1405,7 @@ menu "PCI GPIO expanders" + config GPIO_AMD8111 + tristate "AMD 8111 GPIO driver" + depends on X86 || COMPILE_TEST ++ depends on HAS_IOPORT_MAP + help + The AMD 8111 south bridge contains 32 GPIO pins which can be used. + +-- +2.30.2 + diff --git a/queue-5.10/gpio-mxc-fix-disabled-interrupt-wake-up-support.patch b/queue-5.10/gpio-mxc-fix-disabled-interrupt-wake-up-support.patch new file mode 100644 index 00000000000..ad0cdecac19 --- /dev/null +++ b/queue-5.10/gpio-mxc-fix-disabled-interrupt-wake-up-support.patch @@ -0,0 +1,41 @@ +From 35159b1e6d463237348f9ab4df6602749364787b Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Thu, 17 Jun 2021 15:54:13 +0200 +Subject: gpio: mxc: Fix disabled interrupt wake-up support + +From: Loic Poulain + +[ Upstream commit 3093e6cca3ba7d47848068cb256c489675125181 ] + +A disabled/masked interrupt marked as wakeup source must be re-enable +and unmasked in order to be able to wake-up the host. That can be done +by flaging the irqchip with IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND. + +Note: It 'sometimes' works without that change, but only thanks to the +lazy generic interrupt disabling (keeping interrupt unmasked). + +Reported-by: Michal Koziel +Signed-off-by: Loic Poulain +Reviewed-by: Linus Walleij +Signed-off-by: Bartosz Golaszewski +Signed-off-by: Sasha Levin +--- + drivers/gpio/gpio-mxc.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/gpio/gpio-mxc.c b/drivers/gpio/gpio-mxc.c +index 643f4c557ac2..ba6ed2a413f5 100644 +--- a/drivers/gpio/gpio-mxc.c ++++ b/drivers/gpio/gpio-mxc.c +@@ -361,7 +361,7 @@ static int mxc_gpio_init_gc(struct mxc_gpio_port *port, int irq_base) + ct->chip.irq_unmask = irq_gc_mask_set_bit; + ct->chip.irq_set_type = gpio_set_irq_type; + ct->chip.irq_set_wake = gpio_set_wake_irq; +- ct->chip.flags = IRQCHIP_MASK_ON_SUSPEND; ++ ct->chip.flags = IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND; + ct->regs.ack = GPIO_ISR; + ct->regs.mask = GPIO_IMR; + +-- +2.30.2 + diff --git a/queue-5.10/scsi-sr-return-appropriate-error-code-when-disk-is-e.patch b/queue-5.10/scsi-sr-return-appropriate-error-code-when-disk-is-e.patch new file mode 100644 index 00000000000..a3c29e7368e --- /dev/null +++ b/queue-5.10/scsi-sr-return-appropriate-error-code-when-disk-is-e.patch @@ -0,0 +1,37 @@ +From 09a746aa79dbf334fedc9205229d5267436ef201 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 11 Jun 2021 17:44:02 +0800 +Subject: scsi: sr: Return appropriate error code when disk is ejected + +From: ManYi Li + +[ Upstream commit 7dd753ca59d6c8cc09aa1ed24f7657524803c7f3 ] + +Handle a reported media event code of 3. This indicates that the media has +been removed from the drive and user intervention is required to proceed. +Return DISK_EVENT_EJECT_REQUEST in that case. + +Link: https://lore.kernel.org/r/20210611094402.23884-1-limanyi@uniontech.com +Signed-off-by: ManYi Li +Signed-off-by: Martin K. Petersen +Signed-off-by: Sasha Levin +--- + drivers/scsi/sr.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/drivers/scsi/sr.c b/drivers/scsi/sr.c +index fd4b582110b2..77961f058367 100644 +--- a/drivers/scsi/sr.c ++++ b/drivers/scsi/sr.c +@@ -220,6 +220,8 @@ static unsigned int sr_get_events(struct scsi_device *sdev) + return DISK_EVENT_EJECT_REQUEST; + else if (med->media_event_code == 2) + return DISK_EVENT_MEDIA_CHANGE; ++ else if (med->media_event_code == 3) ++ return DISK_EVENT_EJECT_REQUEST; + return 0; + } + +-- +2.30.2 + diff --git a/queue-5.10/series b/queue-5.10/series new file mode 100644 index 00000000000..8fd302492df --- /dev/null +++ b/queue-5.10/series @@ -0,0 +1,4 @@ +scsi-sr-return-appropriate-error-code-when-disk-is-e.patch +gpio-mxc-fix-disabled-interrupt-wake-up-support.patch +drm-nouveau-fix-dma_address-check-for-cpu-gpu-sync.patch +gpio-amd8111-and-tqmx86-require-has_ioport_map.patch