Patch "pinctrl: amd: Fix mistake in handling clearing pins at startup" has been added to the 6.1-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    pinctrl: amd: Fix mistake in handling clearing pins at startup

to the 6.1-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     pinctrl-amd-fix-mistake-in-handling-clearing-pins-at-startup.patch
and it can be found in the queue-6.1 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.


>From a855724dc08b8cb0c13ab1e065a4922f1e5a7552 Mon Sep 17 00:00:00 2001
From: Mario Limonciello <mario.limonciello@xxxxxxx>
Date: Fri, 21 Apr 2023 07:06:22 -0500
Subject: pinctrl: amd: Fix mistake in handling clearing pins at startup

From: Mario Limonciello <mario.limonciello@xxxxxxx>

commit a855724dc08b8cb0c13ab1e065a4922f1e5a7552 upstream.

commit 4e5a04be88fe ("pinctrl: amd: disable and mask interrupts on probe")
had a mistake in loop iteration 63 that it would clear offset 0xFC instead
of 0x100.  Offset 0xFC is actually `WAKE_INT_MASTER_REG`.  This was
clearing bits 13 and 15 from the register which significantly changed the
expected handling for some platforms for GPIO0.

Cc: stable@xxxxxxxxxxxxxxx
Link: https://bugzilla.kernel.org/show_bug.cgi?id=217315
Signed-off-by: Mario Limonciello <mario.limonciello@xxxxxxx>
Link: https://lore.kernel.org/r/20230421120625.3366-3-mario.limonciello@xxxxxxx
Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
 drivers/pinctrl/pinctrl-amd.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/pinctrl/pinctrl-amd.c
+++ b/drivers/pinctrl/pinctrl-amd.c
@@ -897,9 +897,9 @@ static void amd_gpio_irq_init(struct amd
 
 		raw_spin_lock_irqsave(&gpio_dev->lock, flags);
 
-		pin_reg = readl(gpio_dev->base + i * 4);
+		pin_reg = readl(gpio_dev->base + pin * 4);
 		pin_reg &= ~mask;
-		writel(pin_reg, gpio_dev->base + i * 4);
+		writel(pin_reg, gpio_dev->base + pin * 4);
 
 		raw_spin_unlock_irqrestore(&gpio_dev->lock, flags);
 	}


Patches currently in stable-queue which might be from mario.limonciello@xxxxxxx are

queue-6.1/pinctrl-amd-detect-internal-gpio0-debounce-handling.patch
queue-6.1/pinctrl-amd-only-use-special-debounce-behavior-for-gpio-0.patch
queue-6.1/pinctrl-amd-adjust-debugfs-output.patch
queue-6.1/pinctrl-amd-revert-pinctrl-amd-disable-and-mask-interrupts-on-probe.patch
queue-6.1/pinctrl-amd-detect-and-mask-spurious-interrupts.patch
queue-6.1/pinctrl-amd-drop-pull-up-select-configuration.patch
queue-6.1/pinctrl-amd-fix-mistake-in-handling-clearing-pins-at-startup.patch
queue-6.1/pinctrl-amd-add-z-state-wake-control-bits.patch
queue-6.1/drm-amdgpu-sdma4-set-align-mask-to-255.patch
queue-6.1/pinctrl-amd-use-amd_pinconf_set-for-all-config-options.patch
queue-6.1/pinctrl-amd-unify-debounce-handling-into-amd_pinconf_set.patch
queue-6.1/drm-client-send-hotplug-event-after-registering-a-client.patch
queue-6.1/pinctrl-amd-add-fields-for-interrupt-status-and-wake-status.patch



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux