+++ /dev/null
-From 7861e366b3c3b67a6fae5273f8994f5986eabe1b Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Sun, 11 Sep 2022 21:07:51 +0200
-Subject: gpio: ixp4xx: Make irqchip immutable
-
-From: Linus Walleij <linus.walleij@linaro.org>
-
-[ Upstream commit 94e9bc73d85aa6ecfe249e985ff57abe0ab35f34 ]
-
-This turns the IXP4xx GPIO irqchip into an immutable
-irqchip, a bit different from the standard template due
-to being hierarchical.
-
-Tested on the IXP4xx which uses drivers/ata/pata_ixp4xx_cf.c
-for a rootfs on compact flash with IRQs from this GPIO
-block to the CF ATA controller.
-
-Cc: Marc Zyngier <maz@kernel.org>
-Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-Acked-by: Marc Zyngier <maz@kernel.org>
-Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/gpio/gpio-ixp4xx.c | 17 ++++++++++++++---
- 1 file changed, 14 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/gpio/gpio-ixp4xx.c b/drivers/gpio/gpio-ixp4xx.c
-index b3b050604e0b..6bd047e2ca46 100644
---- a/drivers/gpio/gpio-ixp4xx.c
-+++ b/drivers/gpio/gpio-ixp4xx.c
-@@ -67,6 +67,14 @@ static void ixp4xx_gpio_irq_ack(struct irq_data *d)
- __raw_writel(BIT(d->hwirq), g->base + IXP4XX_REG_GPIS);
- }
-
-+static void ixp4xx_gpio_mask_irq(struct irq_data *d)
-+{
-+ struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
-+
-+ irq_chip_mask_parent(d);
-+ gpiochip_disable_irq(gc, d->hwirq);
-+}
-+
- static void ixp4xx_gpio_irq_unmask(struct irq_data *d)
- {
- struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
-@@ -76,6 +84,7 @@ static void ixp4xx_gpio_irq_unmask(struct irq_data *d)
- if (!(g->irq_edge & BIT(d->hwirq)))
- ixp4xx_gpio_irq_ack(d);
-
-+ gpiochip_enable_irq(gc, d->hwirq);
- irq_chip_unmask_parent(d);
- }
-
-@@ -153,12 +162,14 @@ static int ixp4xx_gpio_irq_set_type(struct irq_data *d, unsigned int type)
- return irq_chip_set_type_parent(d, IRQ_TYPE_LEVEL_HIGH);
- }
-
--static struct irq_chip ixp4xx_gpio_irqchip = {
-+static const struct irq_chip ixp4xx_gpio_irqchip = {
- .name = "IXP4GPIO",
- .irq_ack = ixp4xx_gpio_irq_ack,
-- .irq_mask = irq_chip_mask_parent,
-+ .irq_mask = ixp4xx_gpio_mask_irq,
- .irq_unmask = ixp4xx_gpio_irq_unmask,
- .irq_set_type = ixp4xx_gpio_irq_set_type,
-+ .flags = IRQCHIP_IMMUTABLE,
-+ GPIOCHIP_IRQ_RESOURCE_HELPERS,
- };
-
- static int ixp4xx_gpio_child_to_parent_hwirq(struct gpio_chip *gc,
-@@ -282,7 +293,7 @@ static int ixp4xx_gpio_probe(struct platform_device *pdev)
- g->gc.owner = THIS_MODULE;
-
- girq = &g->gc.irq;
-- girq->chip = &ixp4xx_gpio_irqchip;
-+ gpio_irq_chip_set_chip(girq, &ixp4xx_gpio_irqchip);
- girq->fwnode = g->fwnode;
- girq->parent_domain = parent;
- girq->child_to_parent_hwirq = ixp4xx_gpio_child_to_parent_hwirq;
---
-2.35.1
-
cifs-always-initialize-struct-msghdr-smb_msg-complet.patch
drivers-hv-never-allocate-anything-besides-framebuff.patch
drm-gma500-fix-bug-sleeping-function-called-from-inv.patch
-gpio-ixp4xx-make-irqchip-immutable.patch
drm-amdgpu-use-dirty-framebuffer-helper.patch
drm-amd-display-limit-user-regamma-to-a-valid-value.patch
drm-amd-display-mark-dml30-s-useminimumdcfclk-as-noi.patch
+++ /dev/null
-From 1c91da22aa44c7fc0b4af49bdd76f55ee959b3d3 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Sun, 11 Sep 2022 21:07:51 +0200
-Subject: gpio: ixp4xx: Make irqchip immutable
-
-From: Linus Walleij <linus.walleij@linaro.org>
-
-[ Upstream commit 94e9bc73d85aa6ecfe249e985ff57abe0ab35f34 ]
-
-This turns the IXP4xx GPIO irqchip into an immutable
-irqchip, a bit different from the standard template due
-to being hierarchical.
-
-Tested on the IXP4xx which uses drivers/ata/pata_ixp4xx_cf.c
-for a rootfs on compact flash with IRQs from this GPIO
-block to the CF ATA controller.
-
-Cc: Marc Zyngier <maz@kernel.org>
-Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-Acked-by: Marc Zyngier <maz@kernel.org>
-Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/gpio/gpio-ixp4xx.c | 17 ++++++++++++++---
- 1 file changed, 14 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/gpio/gpio-ixp4xx.c b/drivers/gpio/gpio-ixp4xx.c
-index b3b050604e0b..6bd047e2ca46 100644
---- a/drivers/gpio/gpio-ixp4xx.c
-+++ b/drivers/gpio/gpio-ixp4xx.c
-@@ -67,6 +67,14 @@ static void ixp4xx_gpio_irq_ack(struct irq_data *d)
- __raw_writel(BIT(d->hwirq), g->base + IXP4XX_REG_GPIS);
- }
-
-+static void ixp4xx_gpio_mask_irq(struct irq_data *d)
-+{
-+ struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
-+
-+ irq_chip_mask_parent(d);
-+ gpiochip_disable_irq(gc, d->hwirq);
-+}
-+
- static void ixp4xx_gpio_irq_unmask(struct irq_data *d)
- {
- struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
-@@ -76,6 +84,7 @@ static void ixp4xx_gpio_irq_unmask(struct irq_data *d)
- if (!(g->irq_edge & BIT(d->hwirq)))
- ixp4xx_gpio_irq_ack(d);
-
-+ gpiochip_enable_irq(gc, d->hwirq);
- irq_chip_unmask_parent(d);
- }
-
-@@ -153,12 +162,14 @@ static int ixp4xx_gpio_irq_set_type(struct irq_data *d, unsigned int type)
- return irq_chip_set_type_parent(d, IRQ_TYPE_LEVEL_HIGH);
- }
-
--static struct irq_chip ixp4xx_gpio_irqchip = {
-+static const struct irq_chip ixp4xx_gpio_irqchip = {
- .name = "IXP4GPIO",
- .irq_ack = ixp4xx_gpio_irq_ack,
-- .irq_mask = irq_chip_mask_parent,
-+ .irq_mask = ixp4xx_gpio_mask_irq,
- .irq_unmask = ixp4xx_gpio_irq_unmask,
- .irq_set_type = ixp4xx_gpio_irq_set_type,
-+ .flags = IRQCHIP_IMMUTABLE,
-+ GPIOCHIP_IRQ_RESOURCE_HELPERS,
- };
-
- static int ixp4xx_gpio_child_to_parent_hwirq(struct gpio_chip *gc,
-@@ -282,7 +293,7 @@ static int ixp4xx_gpio_probe(struct platform_device *pdev)
- g->gc.owner = THIS_MODULE;
-
- girq = &g->gc.irq;
-- girq->chip = &ixp4xx_gpio_irqchip;
-+ gpio_irq_chip_set_chip(girq, &ixp4xx_gpio_irqchip);
- girq->fwnode = g->fwnode;
- girq->parent_domain = parent;
- girq->child_to_parent_hwirq = ixp4xx_gpio_child_to_parent_hwirq;
---
-2.35.1
-
drm-amd-amdgpu-fixing-read-wrong-pf2vf-data-in-sriov.patch
drivers-hv-never-allocate-anything-besides-framebuff.patch
drm-gma500-fix-bug-sleeping-function-called-from-inv.patch
-gpio-ixp4xx-make-irqchip-immutable.patch
drm-amd-pm-disable-baco-entry-exit-completely-on-sev.patch
drm-amdgpu-use-dirty-framebuffer-helper.patch
drm-amd-display-limit-user-regamma-to-a-valid-value.patch
+++ /dev/null
-From f9317d5b6cafbe51db6c781647f15326fa17f2fa Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Sun, 11 Sep 2022 21:07:51 +0200
-Subject: gpio: ixp4xx: Make irqchip immutable
-
-From: Linus Walleij <linus.walleij@linaro.org>
-
-[ Upstream commit 94e9bc73d85aa6ecfe249e985ff57abe0ab35f34 ]
-
-This turns the IXP4xx GPIO irqchip into an immutable
-irqchip, a bit different from the standard template due
-to being hierarchical.
-
-Tested on the IXP4xx which uses drivers/ata/pata_ixp4xx_cf.c
-for a rootfs on compact flash with IRQs from this GPIO
-block to the CF ATA controller.
-
-Cc: Marc Zyngier <maz@kernel.org>
-Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-Acked-by: Marc Zyngier <maz@kernel.org>
-Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/gpio/gpio-ixp4xx.c | 17 ++++++++++++++---
- 1 file changed, 14 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/gpio/gpio-ixp4xx.c b/drivers/gpio/gpio-ixp4xx.c
-index b3b050604e0b..6bd047e2ca46 100644
---- a/drivers/gpio/gpio-ixp4xx.c
-+++ b/drivers/gpio/gpio-ixp4xx.c
-@@ -67,6 +67,14 @@ static void ixp4xx_gpio_irq_ack(struct irq_data *d)
- __raw_writel(BIT(d->hwirq), g->base + IXP4XX_REG_GPIS);
- }
-
-+static void ixp4xx_gpio_mask_irq(struct irq_data *d)
-+{
-+ struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
-+
-+ irq_chip_mask_parent(d);
-+ gpiochip_disable_irq(gc, d->hwirq);
-+}
-+
- static void ixp4xx_gpio_irq_unmask(struct irq_data *d)
- {
- struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
-@@ -76,6 +84,7 @@ static void ixp4xx_gpio_irq_unmask(struct irq_data *d)
- if (!(g->irq_edge & BIT(d->hwirq)))
- ixp4xx_gpio_irq_ack(d);
-
-+ gpiochip_enable_irq(gc, d->hwirq);
- irq_chip_unmask_parent(d);
- }
-
-@@ -153,12 +162,14 @@ static int ixp4xx_gpio_irq_set_type(struct irq_data *d, unsigned int type)
- return irq_chip_set_type_parent(d, IRQ_TYPE_LEVEL_HIGH);
- }
-
--static struct irq_chip ixp4xx_gpio_irqchip = {
-+static const struct irq_chip ixp4xx_gpio_irqchip = {
- .name = "IXP4GPIO",
- .irq_ack = ixp4xx_gpio_irq_ack,
-- .irq_mask = irq_chip_mask_parent,
-+ .irq_mask = ixp4xx_gpio_mask_irq,
- .irq_unmask = ixp4xx_gpio_irq_unmask,
- .irq_set_type = ixp4xx_gpio_irq_set_type,
-+ .flags = IRQCHIP_IMMUTABLE,
-+ GPIOCHIP_IRQ_RESOURCE_HELPERS,
- };
-
- static int ixp4xx_gpio_child_to_parent_hwirq(struct gpio_chip *gc,
-@@ -282,7 +293,7 @@ static int ixp4xx_gpio_probe(struct platform_device *pdev)
- g->gc.owner = THIS_MODULE;
-
- girq = &g->gc.irq;
-- girq->chip = &ixp4xx_gpio_irqchip;
-+ gpio_irq_chip_set_chip(girq, &ixp4xx_gpio_irqchip);
- girq->fwnode = g->fwnode;
- girq->parent_domain = parent;
- girq->child_to_parent_hwirq = ixp4xx_gpio_child_to_parent_hwirq;
---
-2.35.1
-
usb-xhci-mtk-fix-issue-of-out-of-bounds-array-access.patch
cifs-always-initialize-struct-msghdr-smb_msg-complet.patch
drivers-hv-never-allocate-anything-besides-framebuff.patch
-gpio-ixp4xx-make-irqchip-immutable.patch
drm-amdgpu-use-dirty-framebuffer-helper.patch
drm-amd-display-limit-user-regamma-to-a-valid-value.patch
drm-rockchip-fix-return-type-of-cdn_dp_connector_mod.patch