ath79: adapt to the 6.18 kernel to fix build errors

s/irq_linear_revmap/irq_find_mapping/ [1]
s/del_timer_sync/timer_delete_sync/ [2]
s/from_timer/timer_container_of/ [3]

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.18.y&id=14ebb11ba895c9223d9a453a17df2fd81410c96c
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.18.y&id=87bdd932e85881895d4720255b40ac28749c4e32
[3] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.18.y&id=41cb08555c4164996d67c78b3bf1c658075b75f1
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/22771
Signed-off-by: Nick Hainke <vincent@systemli.org>
This commit is contained in:
Shiji Yang 2026-04-03 23:30:29 +08:00 committed by Nick Hainke
parent f19b2d7d20
commit c6e0a18418
4 changed files with 24 additions and 15 deletions

View File

@ -15,6 +15,7 @@
#include <linux/of_net.h>
#include <linux/of_address.h>
#include <linux/of_platform.h>
#include <linux/version.h>
#include "ag71xx.h"
#define AG71XX_DEFAULT_MSG_ENABLE \
@ -990,7 +991,11 @@ static void ag71xx_hw_disable(struct ag71xx *ag)
ag71xx_dma_reset(ag);
napi_disable(&ag->napi);
#if LINUX_VERSION_CODE < KERNEL_VERSION(6,16,0)
del_timer_sync(&ag->oom_timer);
#else
timer_delete_sync(&ag->oom_timer);
#endif
ag71xx_rings_cleanup(ag);
}
@ -1170,7 +1175,11 @@ static int ag71xx_do_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
static void ag71xx_oom_timer_handler(struct timer_list *t)
{
#if LINUX_VERSION_CODE < KERNEL_VERSION(6,16,0)
struct ag71xx *ag = from_timer(ag, t, oom_timer);
#else
struct ag71xx *ag = timer_container_of(ag, t, oom_timer);
#endif
napi_schedule(&ag->napi);
}

View File

@ -60,19 +60,19 @@ Signed-off-by: John Crispin <john@phrozen.org>
if (pending & AR71XX_PCI_INT_DEV0)
- generic_handle_irq(apc->irq_base + 0);
+ generic_handle_irq(irq_linear_revmap(apc->domain, 1));
+ generic_handle_irq(irq_find_mapping(apc->domain, 1));
else if (pending & AR71XX_PCI_INT_DEV1)
- generic_handle_irq(apc->irq_base + 1);
+ generic_handle_irq(irq_linear_revmap(apc->domain, 2));
+ generic_handle_irq(irq_find_mapping(apc->domain, 2));
else if (pending & AR71XX_PCI_INT_DEV2)
- generic_handle_irq(apc->irq_base + 2);
+ generic_handle_irq(irq_linear_revmap(apc->domain, 3));
+ generic_handle_irq(irq_find_mapping(apc->domain, 3));
else if (pending & AR71XX_PCI_INT_CORE)
- generic_handle_irq(apc->irq_base + 4);
+ generic_handle_irq(irq_linear_revmap(apc->domain, 4));
+ generic_handle_irq(irq_find_mapping(apc->domain, 4));
else
spurious_interrupt();
@ -85,7 +85,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
apc = irq_data_get_irq_chip_data(d);
- irq = d->irq - apc->irq_base;
+ irq = irq_linear_revmap(apc->domain, d->irq);
+ irq = irq_find_mapping(apc->domain, d->irq);
t = __raw_readl(base + AR71XX_RESET_REG_PCI_INT_ENABLE);
__raw_writel(t | (1 << irq), base + AR71XX_RESET_REG_PCI_INT_ENABLE);
@ -94,7 +94,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
apc = irq_data_get_irq_chip_data(d);
- irq = d->irq - apc->irq_base;
+ irq = irq_linear_revmap(apc->domain, d->irq);
+ irq = irq_find_mapping(apc->domain, d->irq);
t = __raw_readl(base + AR71XX_RESET_REG_PCI_INT_ENABLE);
__raw_writel(t & ~(1 << irq), base + AR71XX_RESET_REG_PCI_INT_ENABLE);

View File

@ -71,7 +71,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
if (pending & AR724X_PCI_INT_DEV0)
- generic_handle_irq(apc->irq_base + 0);
-
+ generic_handle_irq(irq_linear_revmap(apc->domain, 1));
+ generic_handle_irq(irq_find_mapping(apc->domain, 1));
else
spurious_interrupt();
+ chained_irq_exit(chip, desc);
@ -89,7 +89,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
- offset = apc->irq_base - d->irq;
- switch (offset) {
+ switch (irq_linear_revmap(apc->domain, d->irq)) {
+ switch (irq_find_mapping(apc->domain, d->irq)) {
case 0:
t = __raw_readl(base + AR724X_PCI_REG_INT_MASK);
__raw_writel(t | AR724X_PCI_INT_DEV0,
@ -105,7 +105,7 @@ Signed-off-by: John Crispin <john@phrozen.org>
- offset = apc->irq_base - d->irq;
- switch (offset) {
+ switch (irq_linear_revmap(apc->domain, d->irq)) {
+ switch (irq_find_mapping(apc->domain, d->irq)) {
case 0:
t = __raw_readl(base + AR724X_PCI_REG_INT_MASK);
__raw_writel(t & ~AR724X_PCI_INT_DEV0,

View File

@ -38,16 +38,16 @@ Submitted-by: John Crispin <john@phrozen.org>
- __raw_readl(base + AR71XX_RESET_REG_PCI_INT_ENABLE);
-
- if (pending & AR71XX_PCI_INT_DEV0)
- generic_handle_irq(irq_linear_revmap(apc->domain, 1));
- generic_handle_irq(irq_find_mapping(apc->domain, 1));
-
- else if (pending & AR71XX_PCI_INT_DEV1)
- generic_handle_irq(irq_linear_revmap(apc->domain, 2));
- generic_handle_irq(irq_find_mapping(apc->domain, 2));
-
- else if (pending & AR71XX_PCI_INT_DEV2)
- generic_handle_irq(irq_linear_revmap(apc->domain, 3));
- generic_handle_irq(irq_find_mapping(apc->domain, 3));
-
- else if (pending & AR71XX_PCI_INT_CORE)
- generic_handle_irq(irq_linear_revmap(apc->domain, 4));
- generic_handle_irq(irq_find_mapping(apc->domain, 4));
-
- else
- spurious_interrupt();
@ -62,7 +62,7 @@ Submitted-by: John Crispin <john@phrozen.org>
- u32 t;
-
- apc = irq_data_get_irq_chip_data(d);
- irq = irq_linear_revmap(apc->domain, d->irq);
- irq = irq_find_mapping(apc->domain, d->irq);
-
- t = __raw_readl(base + AR71XX_RESET_REG_PCI_INT_ENABLE);
- __raw_writel(t | (1 << irq), base + AR71XX_RESET_REG_PCI_INT_ENABLE);
@ -79,7 +79,7 @@ Submitted-by: John Crispin <john@phrozen.org>
- u32 t;
-
- apc = irq_data_get_irq_chip_data(d);
- irq = irq_linear_revmap(apc->domain, d->irq);
- irq = irq_find_mapping(apc->domain, d->irq);
-
- t = __raw_readl(base + AR71XX_RESET_REG_PCI_INT_ENABLE);
- __raw_writel(t & ~(1 << irq), base + AR71XX_RESET_REG_PCI_INT_ENABLE);