mirror of
https://github.com/immortalwrt/immortalwrt.git
synced 2025-08-11 06:11:53 +08:00
kernel: bump 6.6 to 6.6.93
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.93 Removed upstreamed: backport-6.6/780-51-v6.15-r8169-don-t-scan-PHY-addresses-0.patch[1] All other patches automatically rebased. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.93&id=961ee132104b09e054308e53d8ab4a2386a21904 Build system: x86/64 Build-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, x86/64 Run-tested: flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3, x86/64 Signed-off-by: John Audia <therealgraysky@proton.me> Link: https://github.com/openwrt/openwrt/pull/19026 Signed-off-by: Nick Hainke <vincent@systemli.org>
This commit is contained in:
@ -14,7 +14,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
--- a/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
+++ b/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
@@ -196,10 +196,10 @@ mtk_flow_set_output_device(struct mtk_et
|
||||
@@ -198,10 +198,10 @@ mtk_flow_set_output_device(struct mtk_et
|
||||
if (mtk_is_netsys_v2_or_greater(eth)) {
|
||||
switch (info.wdma_idx) {
|
||||
case 0:
|
||||
|
@ -34,7 +34,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
};
|
||||
--- a/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
+++ b/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
@@ -201,6 +201,9 @@ mtk_flow_set_output_device(struct mtk_et
|
||||
@@ -203,6 +203,9 @@ mtk_flow_set_output_device(struct mtk_et
|
||||
case 1:
|
||||
pse_port = PSE_WDMA1_PORT;
|
||||
break;
|
||||
|
@ -77,7 +77,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
int mtk_foe_entry_commit(struct mtk_ppe *ppe, struct mtk_flow_entry *entry);
|
||||
--- a/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
+++ b/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
@@ -111,6 +111,7 @@ mtk_flow_get_wdma_info(struct net_device
|
||||
@@ -113,6 +113,7 @@ mtk_flow_get_wdma_info(struct net_device
|
||||
info->queue = path->mtk_wdma.queue;
|
||||
info->bss = path->mtk_wdma.bss;
|
||||
info->wcid = path->mtk_wdma.wcid;
|
||||
@ -85,7 +85,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -192,7 +193,7 @@ mtk_flow_set_output_device(struct mtk_et
|
||||
@@ -194,7 +195,7 @@ mtk_flow_set_output_device(struct mtk_et
|
||||
|
||||
if (mtk_flow_get_wdma_info(dev, dest_mac, &info) == 0) {
|
||||
mtk_foe_entry_set_wdma(eth, foe, info.wdma_idx, info.queue,
|
||||
|
@ -328,7 +328,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
int mtk_flow_offload_cmd(struct mtk_eth *eth, struct flow_cls_offload *cls,
|
||||
--- a/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
+++ b/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
@@ -245,10 +245,10 @@ mtk_flow_offload_replace(struct mtk_eth
|
||||
@@ -247,10 +247,10 @@ mtk_flow_offload_replace(struct mtk_eth
|
||||
int ppe_index)
|
||||
{
|
||||
struct flow_rule *rule = flow_cls_offload_flow_rule(f);
|
||||
@ -340,7 +340,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
struct mtk_flow_entry *entry;
|
||||
int offload_type = 0;
|
||||
int wed_index = -1;
|
||||
@@ -264,6 +264,17 @@ mtk_flow_offload_replace(struct mtk_eth
|
||||
@@ -266,6 +266,17 @@ mtk_flow_offload_replace(struct mtk_eth
|
||||
struct flow_match_meta match;
|
||||
|
||||
flow_rule_match_meta(rule, &match);
|
||||
|
@ -19,7 +19,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
--- a/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
+++ b/drivers/net/ethernet/mediatek/mtk_ppe_offload.c
|
||||
@@ -266,7 +266,7 @@ mtk_flow_offload_replace(struct mtk_eth
|
||||
@@ -268,7 +268,7 @@ mtk_flow_offload_replace(struct mtk_eth
|
||||
flow_rule_match_meta(rule, &match);
|
||||
if (mtk_is_netsys_v2_or_greater(eth)) {
|
||||
idev = __dev_get_by_index(&init_net, match.key->ingress_ifindex);
|
||||
|
@ -296,7 +296,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
static void r8168fp_adjust_ocp_cmd(struct rtl8169_private *tp, u32 *cmd, int type)
|
||||
{
|
||||
/* based on RTL8168FP_OOBMAC_BASE in vendor driver */
|
||||
@@ -5203,6 +5261,7 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5204,6 +5262,7 @@ static int rtl_init_one(struct pci_dev *
|
||||
raw_spin_lock_init(&tp->cfg9346_usage_lock);
|
||||
raw_spin_lock_init(&tp->config25_lock);
|
||||
raw_spin_lock_init(&tp->mac_ocp_lock);
|
||||
@ -304,7 +304,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
dev->tstats = devm_netdev_alloc_pcpu_stats(&pdev->dev,
|
||||
struct pcpu_sw_netstats);
|
||||
@@ -5359,6 +5418,12 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5360,6 +5419,12 @@ static int rtl_init_one(struct pci_dev *
|
||||
if (rc)
|
||||
return rc;
|
||||
|
||||
|
@ -59,7 +59,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
obj-$(CONFIG_R8169) += r8169.o
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -5418,11 +5418,10 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5419,11 +5419,10 @@ static int rtl_init_one(struct pci_dev *
|
||||
if (rc)
|
||||
return rc;
|
||||
|
||||
|
@ -75,7 +75,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
genphy_soft_reset(tp->phydev);
|
||||
}
|
||||
|
||||
@@ -5120,7 +5095,9 @@ static int r8169_mdio_register(struct rt
|
||||
@@ -5121,7 +5096,9 @@ static int r8169_mdio_register(struct rt
|
||||
}
|
||||
|
||||
tp->phydev->mac_managed_pm = true;
|
||||
@ -86,7 +86,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
phy_support_asym_pause(tp->phydev);
|
||||
|
||||
/* PHY will be woken up in rtl_open() */
|
||||
@@ -5255,7 +5232,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5256,7 +5233,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
tp->dev = dev;
|
||||
tp->pci_dev = pdev;
|
||||
tp->supports_gmii = ent->driver_data == RTL_CFG_NO_GBIT ? 0 : 1;
|
||||
|
@ -321,7 +321,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
padto = max_t(unsigned int, padto, ETH_ZLEN);
|
||||
break;
|
||||
default:
|
||||
@@ -5147,7 +5204,7 @@ static void rtl_hw_initialize(struct rtl
|
||||
@@ -5148,7 +5205,7 @@ static void rtl_hw_initialize(struct rtl
|
||||
case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_48:
|
||||
rtl_hw_init_8168g(tp);
|
||||
break;
|
||||
|
@ -16,7 +16,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -5296,11 +5296,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5297,11 +5297,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
raw_spin_lock_init(&tp->mac_ocp_lock);
|
||||
mutex_init(&tp->led_lock);
|
||||
|
||||
@ -28,7 +28,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
/* Get the *optional* external "ether_clk" used on some boards */
|
||||
tp->clk = devm_clk_get_optional_enabled(&pdev->dev, "ether_clk");
|
||||
if (IS_ERR(tp->clk))
|
||||
@@ -5415,6 +5410,8 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5416,6 +5411,8 @@ static int rtl_init_one(struct pci_dev *
|
||||
dev->hw_features |= NETIF_F_RXALL;
|
||||
dev->hw_features |= NETIF_F_RXFCS;
|
||||
|
||||
|
@ -225,7 +225,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
void r8169_get_led_name(struct rtl8169_private *tp, int idx,
|
||||
char *buf, int buf_len)
|
||||
{
|
||||
@@ -5448,10 +5499,12 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5449,10 +5500,12 @@ static int rtl_init_one(struct pci_dev *
|
||||
if (rc)
|
||||
return rc;
|
||||
|
||||
|
@ -133,7 +133,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
unregister_netdev(tp->dev);
|
||||
|
||||
if (tp->dash_type != RTL_DASH_NONE)
|
||||
@@ -5533,9 +5537,9 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5534,9 +5538,9 @@ static int rtl_init_one(struct pci_dev *
|
||||
|
||||
if (IS_ENABLED(CONFIG_R8169_LEDS)) {
|
||||
if (rtl_is_8125(tp))
|
||||
|
@ -224,7 +224,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
padto = max_t(unsigned int, padto, ETH_ZLEN);
|
||||
break;
|
||||
default:
|
||||
@@ -5294,7 +5306,7 @@ static void rtl_hw_initialize(struct rtl
|
||||
@@ -5295,7 +5307,7 @@ static void rtl_hw_initialize(struct rtl
|
||||
case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_48:
|
||||
rtl_hw_init_8168g(tp);
|
||||
break;
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -5491,11 +5491,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5492,11 +5492,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
|
||||
dev->features |= dev->hw_features;
|
||||
|
||||
@ -32,7 +32,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
if (rtl_chip_supports_csum_v2(tp)) {
|
||||
dev->hw_features |= NETIF_F_SG | NETIF_F_TSO | NETIF_F_TSO6;
|
||||
netif_set_tso_max_size(dev, RTL_GSO_MAX_SIZE_V2);
|
||||
@@ -5506,6 +5501,17 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5507,6 +5502,17 @@ static int rtl_init_one(struct pci_dev *
|
||||
netif_set_tso_max_segs(dev, RTL_GSO_MAX_SEGS_V1);
|
||||
}
|
||||
|
||||
|
@ -102,7 +102,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
switch (tp->mac_version) {
|
||||
case RTL_GIGA_MAC_VER_02 ... RTL_GIGA_MAC_VER_06:
|
||||
@@ -5460,8 +5437,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5461,8 +5438,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
tp->supports_gmii = ent->driver_data == RTL_CFG_NO_GBIT ? 0 : 1;
|
||||
tp->ocp_base = OCP_STD_PHY_BASE;
|
||||
|
||||
|
@ -22,7 +22,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -5236,6 +5236,11 @@ static int r8169_mdio_register(struct rt
|
||||
@@ -5237,6 +5237,11 @@ static int r8169_mdio_register(struct rt
|
||||
tp->phydev->supported_eee);
|
||||
phy_support_asym_pause(tp->phydev);
|
||||
|
||||
|
@ -78,7 +78,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
}
|
||||
|
||||
static int rtl_alloc_irq(struct rtl8169_private *tp)
|
||||
@@ -5304,7 +5293,6 @@ static int rtl_jumbo_max(struct rtl8169_
|
||||
@@ -5305,7 +5294,6 @@ static int rtl_jumbo_max(struct rtl8169_
|
||||
case RTL_GIGA_MAC_VER_02 ... RTL_GIGA_MAC_VER_06:
|
||||
return JUMBO_7K;
|
||||
/* RTL8168b */
|
||||
|
@ -233,7 +233,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
padto = max_t(unsigned int, padto, ETH_ZLEN);
|
||||
break;
|
||||
default:
|
||||
@@ -5274,7 +5274,7 @@ static void rtl_hw_initialize(struct rtl
|
||||
@@ -5275,7 +5275,7 @@ static void rtl_hw_initialize(struct rtl
|
||||
case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_48:
|
||||
rtl_hw_init_8168g(tp);
|
||||
break;
|
||||
|
@ -1,26 +0,0 @@
|
||||
From faac69a4ae5abb49e62c79c66b51bb905c9aa5ec Mon Sep 17 00:00:00 2001
|
||||
From: Heiner Kallweit <hkallweit1@gmail.com>
|
||||
Date: Tue, 4 Feb 2025 07:58:17 +0100
|
||||
Subject: [PATCH] r8169: don't scan PHY addresses > 0
|
||||
|
||||
The PHY address is a dummy, because r8169 PHY access registers
|
||||
don't support a PHY address. Therefore scan address 0 only.
|
||||
|
||||
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
|
||||
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
|
||||
Link: https://patch.msgid.link/830637dd-4016-4a68-92b3-618fcac6589d@gmail.com
|
||||
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
---
|
||||
drivers/net/ethernet/realtek/r8169_main.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -5230,6 +5230,7 @@ static int r8169_mdio_register(struct rt
|
||||
new_bus->priv = tp;
|
||||
new_bus->parent = &pdev->dev;
|
||||
new_bus->irq[0] = PHY_MAC_INTERRUPT;
|
||||
+ new_bus->phy_mask = GENMASK(31, 1);
|
||||
snprintf(new_bus->id, MII_BUS_ID_SIZE, "r8169-%x-%x",
|
||||
pci_domain_nr(pdev->bus), pci_dev_id(pdev));
|
||||
|
@ -19,7 +19,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
--- a/drivers/nvmem/qfprom.c
|
||||
+++ b/drivers/nvmem/qfprom.c
|
||||
@@ -424,12 +424,12 @@ static int qfprom_probe(struct platform_
|
||||
@@ -438,12 +438,12 @@ static int qfprom_probe(struct platform_
|
||||
if (IS_ERR(priv->vcc))
|
||||
return PTR_ERR(priv->vcc);
|
||||
|
||||
|
@ -48,7 +48,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
mtd->nvmem = nvmem_register(&config);
|
||||
--- a/drivers/nvmem/core.c
|
||||
+++ b/drivers/nvmem/core.c
|
||||
@@ -918,7 +918,7 @@ struct nvmem_device *nvmem_register(cons
|
||||
@@ -932,7 +932,7 @@ struct nvmem_device *nvmem_register(cons
|
||||
nvmem->nkeepout = config->nkeepout;
|
||||
if (config->of_node)
|
||||
nvmem->dev.of_node = config->of_node;
|
||||
|
@ -25,7 +25,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
--- a/drivers/nvmem/core.c
|
||||
+++ b/drivers/nvmem/core.c
|
||||
@@ -823,14 +823,6 @@ static int nvmem_add_cells_from_layout(s
|
||||
@@ -837,14 +837,6 @@ static int nvmem_add_cells_from_layout(s
|
||||
}
|
||||
|
||||
#if IS_ENABLED(CONFIG_OF)
|
||||
|
@ -84,7 +84,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
static int __nvmem_reg_read(struct nvmem_device *nvmem, unsigned int offset,
|
||||
void *val, size_t bytes)
|
||||
{
|
||||
@@ -739,97 +736,22 @@ static int nvmem_add_cells_from_fixed_la
|
||||
@@ -753,97 +750,22 @@ static int nvmem_add_cells_from_fixed_la
|
||||
return err;
|
||||
}
|
||||
|
||||
@ -189,7 +189,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
const void *nvmem_layout_get_match_data(struct nvmem_device *nvmem,
|
||||
struct nvmem_layout *layout)
|
||||
{
|
||||
@@ -837,7 +759,7 @@ const void *nvmem_layout_get_match_data(
|
||||
@@ -851,7 +773,7 @@ const void *nvmem_layout_get_match_data(
|
||||
const struct of_device_id *match;
|
||||
|
||||
layout_np = of_nvmem_layout_get_container(nvmem);
|
||||
@ -198,7 +198,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
return match ? match->data : NULL;
|
||||
}
|
||||
@@ -949,19 +871,6 @@ struct nvmem_device *nvmem_register(cons
|
||||
@@ -963,19 +885,6 @@ struct nvmem_device *nvmem_register(cons
|
||||
goto err_put_device;
|
||||
}
|
||||
|
||||
@ -218,7 +218,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
if (config->cells) {
|
||||
rval = nvmem_add_cells(nvmem, config->cells, config->ncells);
|
||||
if (rval)
|
||||
@@ -982,24 +891,24 @@ struct nvmem_device *nvmem_register(cons
|
||||
@@ -996,24 +905,24 @@ struct nvmem_device *nvmem_register(cons
|
||||
if (rval)
|
||||
goto err_remove_cells;
|
||||
|
||||
@ -249,7 +249,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
if (config->compat)
|
||||
nvmem_sysfs_remove_compat(nvmem, config);
|
||||
err_put_device:
|
||||
@@ -1021,7 +930,7 @@ static void nvmem_device_release(struct
|
||||
@@ -1035,7 +944,7 @@ static void nvmem_device_release(struct
|
||||
device_remove_bin_file(nvmem->base_dev, &nvmem->eeprom);
|
||||
|
||||
nvmem_device_remove_all_cells(nvmem);
|
||||
@ -258,7 +258,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
device_unregister(&nvmem->dev);
|
||||
}
|
||||
|
||||
@@ -1323,6 +1232,12 @@ nvmem_cell_get_from_lookup(struct device
|
||||
@@ -1337,6 +1246,12 @@ nvmem_cell_get_from_lookup(struct device
|
||||
return cell;
|
||||
}
|
||||
|
||||
@ -271,7 +271,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
#if IS_ENABLED(CONFIG_OF)
|
||||
static struct nvmem_cell_entry *
|
||||
nvmem_find_cell_entry_by_node(struct nvmem_device *nvmem, struct device_node *np)
|
||||
@@ -1341,6 +1256,18 @@ nvmem_find_cell_entry_by_node(struct nvm
|
||||
@@ -1355,6 +1270,18 @@ nvmem_find_cell_entry_by_node(struct nvm
|
||||
return cell;
|
||||
}
|
||||
|
||||
@ -290,7 +290,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
/**
|
||||
* of_nvmem_cell_get() - Get a nvmem cell from given device node and cell id
|
||||
*
|
||||
@@ -1403,16 +1330,29 @@ struct nvmem_cell *of_nvmem_cell_get(str
|
||||
@@ -1417,16 +1344,29 @@ struct nvmem_cell *of_nvmem_cell_get(str
|
||||
return ERR_CAST(nvmem);
|
||||
}
|
||||
|
||||
@ -322,7 +322,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
return cell;
|
||||
}
|
||||
@@ -1526,6 +1466,7 @@ void nvmem_cell_put(struct nvmem_cell *c
|
||||
@@ -1540,6 +1480,7 @@ void nvmem_cell_put(struct nvmem_cell *c
|
||||
|
||||
kfree(cell);
|
||||
__nvmem_device_put(nvmem);
|
||||
@ -330,7 +330,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(nvmem_cell_put);
|
||||
|
||||
@@ -2118,11 +2059,22 @@ EXPORT_SYMBOL_GPL(nvmem_dev_size);
|
||||
@@ -2132,11 +2073,22 @@ EXPORT_SYMBOL_GPL(nvmem_dev_size);
|
||||
|
||||
static int __init nvmem_init(void)
|
||||
{
|
||||
|
@ -180,7 +180,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
#else /* CONFIG_NVMEM_SYSFS */
|
||||
|
||||
static int nvmem_sysfs_setup_compat(struct nvmem_device *nvmem,
|
||||
@@ -738,11 +847,25 @@ static int nvmem_add_cells_from_fixed_la
|
||||
@@ -752,11 +861,25 @@ static int nvmem_add_cells_from_fixed_la
|
||||
|
||||
int nvmem_layout_register(struct nvmem_layout *layout)
|
||||
{
|
||||
@ -207,7 +207,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(nvmem_layout_register);
|
||||
|
||||
@@ -901,10 +1024,20 @@ struct nvmem_device *nvmem_register(cons
|
||||
@@ -915,10 +1038,20 @@ struct nvmem_device *nvmem_register(cons
|
||||
if (rval)
|
||||
goto err_remove_dev;
|
||||
|
||||
|
@ -44,7 +44,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
--- a/drivers/nvmem/core.c
|
||||
+++ b/drivers/nvmem/core.c
|
||||
@@ -853,7 +853,7 @@ int nvmem_layout_register(struct nvmem_l
|
||||
@@ -867,7 +867,7 @@ int nvmem_layout_register(struct nvmem_l
|
||||
return -EINVAL;
|
||||
|
||||
/* Populate the cells */
|
||||
|
@ -24,7 +24,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
--- a/drivers/nvmem/core.c
|
||||
+++ b/drivers/nvmem/core.c
|
||||
@@ -875,19 +875,6 @@ void nvmem_layout_unregister(struct nvme
|
||||
@@ -889,19 +889,6 @@ void nvmem_layout_unregister(struct nvme
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(nvmem_layout_unregister);
|
||||
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
--- a/drivers/nvmem/core.c
|
||||
+++ b/drivers/nvmem/core.c
|
||||
@@ -805,6 +805,11 @@ static int nvmem_add_cells_from_dt(struc
|
||||
@@ -819,6 +819,11 @@ static int nvmem_add_cells_from_dt(struc
|
||||
if (addr && len == (2 * sizeof(u32))) {
|
||||
info.bit_offset = be32_to_cpup(addr++);
|
||||
info.nbits = be32_to_cpup(addr);
|
||||
|
@ -16,7 +16,7 @@ Signed-off-by: Lee Jones <lee@kernel.org>
|
||||
|
||||
--- a/drivers/leds/trigger/ledtrig-netdev.c
|
||||
+++ b/drivers/leds/trigger/ledtrig-netdev.c
|
||||
@@ -99,6 +99,18 @@ static void set_baseline_state(struct le
|
||||
@@ -104,6 +104,18 @@ static void set_baseline_state(struct le
|
||||
trigger_data->link_speed == SPEED_1000)
|
||||
blink_on = true;
|
||||
|
||||
@ -35,7 +35,7 @@ Signed-off-by: Lee Jones <lee@kernel.org>
|
||||
if (test_bit(TRIGGER_NETDEV_HALF_DUPLEX, &trigger_data->mode) &&
|
||||
trigger_data->duplex == DUPLEX_HALF)
|
||||
blink_on = true;
|
||||
@@ -289,6 +301,9 @@ static ssize_t netdev_led_attr_show(stru
|
||||
@@ -294,6 +306,9 @@ static ssize_t netdev_led_attr_show(stru
|
||||
case TRIGGER_NETDEV_LINK_10:
|
||||
case TRIGGER_NETDEV_LINK_100:
|
||||
case TRIGGER_NETDEV_LINK_1000:
|
||||
@ -45,7 +45,7 @@ Signed-off-by: Lee Jones <lee@kernel.org>
|
||||
case TRIGGER_NETDEV_HALF_DUPLEX:
|
||||
case TRIGGER_NETDEV_FULL_DUPLEX:
|
||||
case TRIGGER_NETDEV_TX:
|
||||
@@ -319,6 +334,9 @@ static ssize_t netdev_led_attr_store(str
|
||||
@@ -324,6 +339,9 @@ static ssize_t netdev_led_attr_store(str
|
||||
case TRIGGER_NETDEV_LINK_10:
|
||||
case TRIGGER_NETDEV_LINK_100:
|
||||
case TRIGGER_NETDEV_LINK_1000:
|
||||
@ -55,7 +55,7 @@ Signed-off-by: Lee Jones <lee@kernel.org>
|
||||
case TRIGGER_NETDEV_HALF_DUPLEX:
|
||||
case TRIGGER_NETDEV_FULL_DUPLEX:
|
||||
case TRIGGER_NETDEV_TX:
|
||||
@@ -337,7 +355,10 @@ static ssize_t netdev_led_attr_store(str
|
||||
@@ -342,7 +360,10 @@ static ssize_t netdev_led_attr_store(str
|
||||
if (test_bit(TRIGGER_NETDEV_LINK, &mode) &&
|
||||
(test_bit(TRIGGER_NETDEV_LINK_10, &mode) ||
|
||||
test_bit(TRIGGER_NETDEV_LINK_100, &mode) ||
|
||||
@ -67,7 +67,7 @@ Signed-off-by: Lee Jones <lee@kernel.org>
|
||||
return -EINVAL;
|
||||
|
||||
cancel_delayed_work_sync(&trigger_data->work);
|
||||
@@ -367,6 +388,9 @@ DEFINE_NETDEV_TRIGGER(link, TRIGGER_NETD
|
||||
@@ -372,6 +393,9 @@ DEFINE_NETDEV_TRIGGER(link, TRIGGER_NETD
|
||||
DEFINE_NETDEV_TRIGGER(link_10, TRIGGER_NETDEV_LINK_10);
|
||||
DEFINE_NETDEV_TRIGGER(link_100, TRIGGER_NETDEV_LINK_100);
|
||||
DEFINE_NETDEV_TRIGGER(link_1000, TRIGGER_NETDEV_LINK_1000);
|
||||
@ -77,7 +77,7 @@ Signed-off-by: Lee Jones <lee@kernel.org>
|
||||
DEFINE_NETDEV_TRIGGER(half_duplex, TRIGGER_NETDEV_HALF_DUPLEX);
|
||||
DEFINE_NETDEV_TRIGGER(full_duplex, TRIGGER_NETDEV_FULL_DUPLEX);
|
||||
DEFINE_NETDEV_TRIGGER(tx, TRIGGER_NETDEV_TX);
|
||||
@@ -425,6 +449,9 @@ static struct attribute *netdev_trig_att
|
||||
@@ -435,6 +459,9 @@ static struct attribute *netdev_trig_att
|
||||
&dev_attr_link_10.attr,
|
||||
&dev_attr_link_100.attr,
|
||||
&dev_attr_link_1000.attr,
|
||||
@ -87,7 +87,7 @@ Signed-off-by: Lee Jones <lee@kernel.org>
|
||||
&dev_attr_full_duplex.attr,
|
||||
&dev_attr_half_duplex.attr,
|
||||
&dev_attr_rx.attr,
|
||||
@@ -522,6 +549,9 @@ static void netdev_trig_work(struct work
|
||||
@@ -532,6 +559,9 @@ static void netdev_trig_work(struct work
|
||||
test_bit(TRIGGER_NETDEV_LINK_10, &trigger_data->mode) ||
|
||||
test_bit(TRIGGER_NETDEV_LINK_100, &trigger_data->mode) ||
|
||||
test_bit(TRIGGER_NETDEV_LINK_1000, &trigger_data->mode) ||
|
||||
|
Reference in New Issue
Block a user