mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-30 02:29:01 +00:00
kernel: bump 5.10 to 5.10.147
Removed upstreamed: bcm53xx/patches-5.10/083-v6.0-clk-iproc-Do-not-rely-on-node-name-for-correct-PLL-s.patch[1] All other patches automatically rebased. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.147&id=a8e6cde5062fb2aff81f86cc0770591714bee545 Signed-off-by: John Audia <therealgraysky@proton.me>
This commit is contained in:
parent
df08849c00
commit
e2da6a0a59
@ -1,2 +1,2 @@
|
|||||||
LINUX_VERSION-5.10 = .146
|
LINUX_VERSION-5.10 = .147
|
||||||
LINUX_KERNEL_HASH-5.10.146 = 7bbd97f3278eadb73c19a1ca8c1a655c60afcee9f487b910063cdd15e9ee6dc1
|
LINUX_KERNEL_HASH-5.10.147 = 85253abf097eb5013b988a400eb022eed0e0626e7e0a7daa3ab4b6bcabbced9a
|
||||||
|
@ -34,7 +34,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
|
|||||||
mtd->type = MTD_NORFLASH;
|
mtd->type = MTD_NORFLASH;
|
||||||
--- a/drivers/mtd/mtdcore.c
|
--- a/drivers/mtd/mtdcore.c
|
||||||
+++ b/drivers/mtd/mtdcore.c
|
+++ b/drivers/mtd/mtdcore.c
|
||||||
@@ -849,6 +849,17 @@ out_error:
|
@@ -851,6 +851,17 @@ out_error:
|
||||||
*/
|
*/
|
||||||
static void mtd_set_dev_defaults(struct mtd_info *mtd)
|
static void mtd_set_dev_defaults(struct mtd_info *mtd)
|
||||||
{
|
{
|
||||||
|
@ -1,72 +0,0 @@
|
|||||||
From 1b24a132eba7a1c19475ba2510ec1c00af3ff914 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Florian Fainelli <f.fainelli@gmail.com>
|
|
||||||
Date: Mon, 5 Sep 2022 09:15:03 -0700
|
|
||||||
Subject: [PATCH] clk: iproc: Do not rely on node name for correct PLL setup
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
After commit 31fd9b79dc58 ("ARM: dts: BCM5301X: update CRU block
|
|
||||||
description") a warning from clk-iproc-pll.c was generated due to a
|
|
||||||
duplicate PLL name as well as the console stopped working. Upon closer
|
|
||||||
inspection it became clear that iproc_pll_clk_setup() used the Device
|
|
||||||
Tree node unit name as an unique identifier as well as a parent name to
|
|
||||||
parent all clocks under the PLL.
|
|
||||||
|
|
||||||
BCM5301X was the first platform on which that got noticed because of the
|
|
||||||
DT node unit name renaming but the same assumptions hold true for any
|
|
||||||
user of the iproc_pll_clk_setup() function.
|
|
||||||
|
|
||||||
The first 'clock-output-names' property is always guaranteed to be
|
|
||||||
unique as well as providing the actual desired PLL clock name, so we
|
|
||||||
utilize that to register the PLL and as a parent name of all children
|
|
||||||
clock.
|
|
||||||
|
|
||||||
Fixes: 5fe225c105fd ("clk: iproc: add initial common clock support")
|
|
||||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
|
||||||
Acked-by: Rafał Miłecki <rafal@milecki.pl>
|
|
||||||
Link: https://lore.kernel.org/r/20220905161504.1526-1-f.fainelli@gmail.com
|
|
||||||
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
|
|
||||||
---
|
|
||||||
drivers/clk/bcm/clk-iproc-pll.c | 12 ++++++++----
|
|
||||||
1 file changed, 8 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
--- a/drivers/clk/bcm/clk-iproc-pll.c
|
|
||||||
+++ b/drivers/clk/bcm/clk-iproc-pll.c
|
|
||||||
@@ -736,6 +736,7 @@ void iproc_pll_clk_setup(struct device_n
|
|
||||||
const char *parent_name;
|
|
||||||
struct iproc_clk *iclk_array;
|
|
||||||
struct clk_hw_onecell_data *clk_data;
|
|
||||||
+ const char *clk_name;
|
|
||||||
|
|
||||||
if (WARN_ON(!pll_ctrl) || WARN_ON(!clk_ctrl))
|
|
||||||
return;
|
|
||||||
@@ -783,7 +784,12 @@ void iproc_pll_clk_setup(struct device_n
|
|
||||||
iclk = &iclk_array[0];
|
|
||||||
iclk->pll = pll;
|
|
||||||
|
|
||||||
- init.name = node->name;
|
|
||||||
+ ret = of_property_read_string_index(node, "clock-output-names",
|
|
||||||
+ 0, &clk_name);
|
|
||||||
+ if (WARN_ON(ret))
|
|
||||||
+ goto err_pll_register;
|
|
||||||
+
|
|
||||||
+ init.name = clk_name;
|
|
||||||
init.ops = &iproc_pll_ops;
|
|
||||||
init.flags = 0;
|
|
||||||
parent_name = of_clk_get_parent_name(node, 0);
|
|
||||||
@@ -803,13 +809,11 @@ void iproc_pll_clk_setup(struct device_n
|
|
||||||
goto err_pll_register;
|
|
||||||
|
|
||||||
clk_data->hws[0] = &iclk->hw;
|
|
||||||
+ parent_name = clk_name;
|
|
||||||
|
|
||||||
/* now initialize and register all leaf clocks */
|
|
||||||
for (i = 1; i < num_clks; i++) {
|
|
||||||
- const char *clk_name;
|
|
||||||
-
|
|
||||||
memset(&init, 0, sizeof(init));
|
|
||||||
- parent_name = node->name;
|
|
||||||
|
|
||||||
ret = of_property_read_string_index(node, "clock-output-names",
|
|
||||||
i, &clk_name);
|
|
@ -27,7 +27,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
#include <net/dsa.h>
|
#include <net/dsa.h>
|
||||||
|
|
||||||
#include "mt7530.h"
|
#include "mt7530.h"
|
||||||
@@ -1534,6 +1535,109 @@ mtk_get_tag_protocol(struct dsa_switch *
|
@@ -1537,6 +1538,109 @@ mtk_get_tag_protocol(struct dsa_switch *
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -137,7 +137,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
static int
|
static int
|
||||||
mt7530_setup(struct dsa_switch *ds)
|
mt7530_setup(struct dsa_switch *ds)
|
||||||
{
|
{
|
||||||
@@ -1676,6 +1780,12 @@ mt7530_setup(struct dsa_switch *ds)
|
@@ -1679,6 +1783,12 @@ mt7530_setup(struct dsa_switch *ds)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
--- a/drivers/net/dsa/mt7530.c
|
--- a/drivers/net/dsa/mt7530.c
|
||||||
+++ b/drivers/net/dsa/mt7530.c
|
+++ b/drivers/net/dsa/mt7530.c
|
||||||
@@ -2366,6 +2366,17 @@ static void mt753x_phylink_mac_link_up(s
|
@@ -2371,6 +2371,17 @@ static void mt753x_phylink_mac_link_up(s
|
||||||
mcr |= PMCR_RX_FC_EN;
|
mcr |= PMCR_RX_FC_EN;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -35,7 +35,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
mt7530_set(priv, MT7530_PMCR_P(port), mcr);
|
mt7530_set(priv, MT7530_PMCR_P(port), mcr);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2596,6 +2607,36 @@ mt753x_phy_write(struct dsa_switch *ds,
|
@@ -2599,6 +2610,36 @@ mt753x_phy_write(struct dsa_switch *ds,
|
||||||
return priv->info->phy_write(ds, port, regnum, val);
|
return priv->info->phy_write(ds, port, regnum, val);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -72,7 +72,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
static const struct dsa_switch_ops mt7530_switch_ops = {
|
static const struct dsa_switch_ops mt7530_switch_ops = {
|
||||||
.get_tag_protocol = mtk_get_tag_protocol,
|
.get_tag_protocol = mtk_get_tag_protocol,
|
||||||
.setup = mt753x_setup,
|
.setup = mt753x_setup,
|
||||||
@@ -2624,6 +2665,8 @@ static const struct dsa_switch_ops mt753
|
@@ -2627,6 +2668,8 @@ static const struct dsa_switch_ops mt753
|
||||||
.phylink_mac_an_restart = mt753x_phylink_mac_an_restart,
|
.phylink_mac_an_restart = mt753x_phylink_mac_an_restart,
|
||||||
.phylink_mac_link_down = mt753x_phylink_mac_link_down,
|
.phylink_mac_link_down = mt753x_phylink_mac_link_down,
|
||||||
.phylink_mac_link_up = mt753x_phylink_mac_link_up,
|
.phylink_mac_link_up = mt753x_phylink_mac_link_up,
|
||||||
|
@ -1360,7 +1360,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
int irq;
|
int irq;
|
||||||
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
|
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
|
||||||
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
|
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
|
||||||
@@ -4987,7 +4987,7 @@ int stmmac_dvr_probe(struct device *devi
|
@@ -5000,7 +5000,7 @@ int stmmac_dvr_probe(struct device *devi
|
||||||
priv->wol_irq = res->wol_irq;
|
priv->wol_irq = res->wol_irq;
|
||||||
priv->lpi_irq = res->lpi_irq;
|
priv->lpi_irq = res->lpi_irq;
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
--- a/drivers/net/dsa/mt7530.c
|
--- a/drivers/net/dsa/mt7530.c
|
||||||
+++ b/drivers/net/dsa/mt7530.c
|
+++ b/drivers/net/dsa/mt7530.c
|
||||||
@@ -1015,6 +1015,53 @@ mt7530_port_disable(struct dsa_switch *d
|
@@ -1018,6 +1018,53 @@ mt7530_port_disable(struct dsa_switch *d
|
||||||
mutex_unlock(&priv->reg_mutex);
|
mutex_unlock(&priv->reg_mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -73,7 +73,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
static void
|
static void
|
||||||
mt7530_stp_state_set(struct dsa_switch *ds, int port, u8 state)
|
mt7530_stp_state_set(struct dsa_switch *ds, int port, u8 state)
|
||||||
{
|
{
|
||||||
@@ -2647,6 +2694,8 @@ static const struct dsa_switch_ops mt753
|
@@ -2650,6 +2697,8 @@ static const struct dsa_switch_ops mt753
|
||||||
.get_sset_count = mt7530_get_sset_count,
|
.get_sset_count = mt7530_get_sset_count,
|
||||||
.port_enable = mt7530_port_enable,
|
.port_enable = mt7530_port_enable,
|
||||||
.port_disable = mt7530_port_disable,
|
.port_disable = mt7530_port_disable,
|
||||||
|
@ -18,7 +18,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
--- a/drivers/net/dsa/mt7530.c
|
--- a/drivers/net/dsa/mt7530.c
|
||||||
+++ b/drivers/net/dsa/mt7530.c
|
+++ b/drivers/net/dsa/mt7530.c
|
||||||
@@ -1703,6 +1703,7 @@ mt7530_setup(struct dsa_switch *ds)
|
@@ -1706,6 +1706,7 @@ mt7530_setup(struct dsa_switch *ds)
|
||||||
*/
|
*/
|
||||||
dn = dsa_to_port(ds, MT7530_CPU_PORT)->master->dev.of_node->parent;
|
dn = dsa_to_port(ds, MT7530_CPU_PORT)->master->dev.of_node->parent;
|
||||||
ds->configure_vlan_while_not_filtering = true;
|
ds->configure_vlan_while_not_filtering = true;
|
||||||
@ -26,7 +26,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
if (priv->id == ID_MT7530) {
|
if (priv->id == ID_MT7530) {
|
||||||
regulator_set_voltage(priv->core_pwr, 1000000, 1000000);
|
regulator_set_voltage(priv->core_pwr, 1000000, 1000000);
|
||||||
@@ -1948,6 +1949,7 @@ mt7531_setup(struct dsa_switch *ds)
|
@@ -1953,6 +1954,7 @@ mt7531_setup(struct dsa_switch *ds)
|
||||||
}
|
}
|
||||||
|
|
||||||
ds->configure_vlan_while_not_filtering = true;
|
ds->configure_vlan_while_not_filtering = true;
|
||||||
|
@ -20,7 +20,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
--- a/drivers/net/dsa/mt7530.c
|
--- a/drivers/net/dsa/mt7530.c
|
||||||
+++ b/drivers/net/dsa/mt7530.c
|
+++ b/drivers/net/dsa/mt7530.c
|
||||||
@@ -870,6 +870,46 @@ mt7530_get_sset_count(struct dsa_switch
|
@@ -873,6 +873,46 @@ mt7530_get_sset_count(struct dsa_switch
|
||||||
return ARRAY_SIZE(mt7530_mib);
|
return ARRAY_SIZE(mt7530_mib);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -67,7 +67,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
static void mt7530_setup_port5(struct dsa_switch *ds, phy_interface_t interface)
|
static void mt7530_setup_port5(struct dsa_switch *ds, phy_interface_t interface)
|
||||||
{
|
{
|
||||||
struct mt7530_priv *priv = ds->priv;
|
struct mt7530_priv *priv = ds->priv;
|
||||||
@@ -2694,6 +2734,7 @@ static const struct dsa_switch_ops mt753
|
@@ -2697,6 +2737,7 @@ static const struct dsa_switch_ops mt753
|
||||||
.phy_write = mt753x_phy_write,
|
.phy_write = mt753x_phy_write,
|
||||||
.get_ethtool_stats = mt7530_get_ethtool_stats,
|
.get_ethtool_stats = mt7530_get_ethtool_stats,
|
||||||
.get_sset_count = mt7530_get_sset_count,
|
.get_sset_count = mt7530_get_sset_count,
|
||||||
|
@ -14,7 +14,7 @@ Signed-off-by: DENG Qingfang <dqfext@gmail.com>
|
|||||||
|
|
||||||
--- a/drivers/net/dsa/mt7530.c
|
--- a/drivers/net/dsa/mt7530.c
|
||||||
+++ b/drivers/net/dsa/mt7530.c
|
+++ b/drivers/net/dsa/mt7530.c
|
||||||
@@ -998,9 +998,6 @@ mt753x_cpu_port_enable(struct dsa_switch
|
@@ -1001,9 +1001,6 @@ mt753x_cpu_port_enable(struct dsa_switch
|
||||||
mt7530_write(priv, MT7530_PVC_P(port),
|
mt7530_write(priv, MT7530_PVC_P(port),
|
||||||
PORT_SPEC_TAG);
|
PORT_SPEC_TAG);
|
||||||
|
|
||||||
@ -24,7 +24,7 @@ Signed-off-by: DENG Qingfang <dqfext@gmail.com>
|
|||||||
/* Set CPU port number */
|
/* Set CPU port number */
|
||||||
if (priv->id == ID_MT7621)
|
if (priv->id == ID_MT7621)
|
||||||
mt7530_rmw(priv, MT7530_MFC, CPU_MASK, CPU_EN | CPU_PORT(port));
|
mt7530_rmw(priv, MT7530_MFC, CPU_MASK, CPU_EN | CPU_PORT(port));
|
||||||
@@ -1131,6 +1128,20 @@ mt7530_stp_state_set(struct dsa_switch *
|
@@ -1134,6 +1131,20 @@ mt7530_stp_state_set(struct dsa_switch *
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -45,7 +45,7 @@ Signed-off-by: DENG Qingfang <dqfext@gmail.com>
|
|||||||
mt7530_port_bridge_join(struct dsa_switch *ds, int port,
|
mt7530_port_bridge_join(struct dsa_switch *ds, int port,
|
||||||
struct net_device *bridge)
|
struct net_device *bridge)
|
||||||
{
|
{
|
||||||
@@ -1331,6 +1342,63 @@ err:
|
@@ -1334,6 +1345,63 @@ err:
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -109,7 +109,7 @@ Signed-off-by: DENG Qingfang <dqfext@gmail.com>
|
|||||||
mt7530_vlan_cmd(struct mt7530_priv *priv, enum mt7530_vlan_cmd cmd, u16 vid)
|
mt7530_vlan_cmd(struct mt7530_priv *priv, enum mt7530_vlan_cmd cmd, u16 vid)
|
||||||
{
|
{
|
||||||
struct mt7530_dummy_poll p;
|
struct mt7530_dummy_poll p;
|
||||||
@@ -2740,11 +2808,15 @@ static const struct dsa_switch_ops mt753
|
@@ -2743,11 +2811,15 @@ static const struct dsa_switch_ops mt753
|
||||||
.port_change_mtu = mt7530_port_change_mtu,
|
.port_change_mtu = mt7530_port_change_mtu,
|
||||||
.port_max_mtu = mt7530_port_max_mtu,
|
.port_max_mtu = mt7530_port_max_mtu,
|
||||||
.port_stp_state_set = mt7530_stp_state_set,
|
.port_stp_state_set = mt7530_stp_state_set,
|
||||||
|
@ -27,7 +27,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
#include <linux/of_mdio.h>
|
#include <linux/of_mdio.h>
|
||||||
#include <linux/of_net.h>
|
#include <linux/of_net.h>
|
||||||
#include <linux/of_platform.h>
|
#include <linux/of_platform.h>
|
||||||
@@ -600,18 +601,14 @@ mt7530_mib_reset(struct dsa_switch *ds)
|
@@ -603,18 +604,14 @@ mt7530_mib_reset(struct dsa_switch *ds)
|
||||||
mt7530_write(priv, MT7530_MIB_CCR, CCR_MIB_ACTIVATE);
|
mt7530_write(priv, MT7530_MIB_CCR, CCR_MIB_ACTIVATE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -48,7 +48,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
return mdiobus_write_nested(priv->bus, port, regnum, val);
|
return mdiobus_write_nested(priv->bus, port, regnum, val);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -789,9 +786,8 @@ out:
|
@@ -792,9 +789,8 @@ out:
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -59,7 +59,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
int devad;
|
int devad;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
@@ -807,10 +803,9 @@ mt7531_ind_phy_read(struct dsa_switch *d
|
@@ -810,10 +806,9 @@ mt7531_ind_phy_read(struct dsa_switch *d
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -71,7 +71,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
int devad;
|
int devad;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
@@ -826,6 +821,22 @@ mt7531_ind_phy_write(struct dsa_switch *
|
@@ -829,6 +824,22 @@ mt7531_ind_phy_write(struct dsa_switch *
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -94,7 +94,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
static void
|
static void
|
||||||
mt7530_get_strings(struct dsa_switch *ds, int port, u32 stringset,
|
mt7530_get_strings(struct dsa_switch *ds, int port, u32 stringset,
|
||||||
uint8_t *data)
|
uint8_t *data)
|
||||||
@@ -1793,6 +1804,210 @@ mt7530_setup_gpio(struct mt7530_priv *pr
|
@@ -1796,6 +1807,210 @@ mt7530_setup_gpio(struct mt7530_priv *pr
|
||||||
return devm_gpiochip_add_data(dev, gc, priv);
|
return devm_gpiochip_add_data(dev, gc, priv);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -305,7 +305,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
static int
|
static int
|
||||||
mt7530_setup(struct dsa_switch *ds)
|
mt7530_setup(struct dsa_switch *ds)
|
||||||
{
|
{
|
||||||
@@ -2744,24 +2959,20 @@ static int
|
@@ -2747,24 +2962,20 @@ static int
|
||||||
mt753x_setup(struct dsa_switch *ds)
|
mt753x_setup(struct dsa_switch *ds)
|
||||||
{
|
{
|
||||||
struct mt7530_priv *priv = ds->priv;
|
struct mt7530_priv *priv = ds->priv;
|
||||||
@ -340,7 +340,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int mt753x_get_mac_eee(struct dsa_switch *ds, int port,
|
static int mt753x_get_mac_eee(struct dsa_switch *ds, int port,
|
||||||
@@ -2798,8 +3009,6 @@ static const struct dsa_switch_ops mt753
|
@@ -2801,8 +3012,6 @@ static const struct dsa_switch_ops mt753
|
||||||
.get_tag_protocol = mtk_get_tag_protocol,
|
.get_tag_protocol = mtk_get_tag_protocol,
|
||||||
.setup = mt753x_setup,
|
.setup = mt753x_setup,
|
||||||
.get_strings = mt7530_get_strings,
|
.get_strings = mt7530_get_strings,
|
||||||
@ -349,7 +349,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
.get_ethtool_stats = mt7530_get_ethtool_stats,
|
.get_ethtool_stats = mt7530_get_ethtool_stats,
|
||||||
.get_sset_count = mt7530_get_sset_count,
|
.get_sset_count = mt7530_get_sset_count,
|
||||||
.set_ageing_time = mt7530_set_ageing_time,
|
.set_ageing_time = mt7530_set_ageing_time,
|
||||||
@@ -2982,6 +3191,9 @@ mt7530_remove(struct mdio_device *mdiode
|
@@ -2985,6 +3194,9 @@ mt7530_remove(struct mdio_device *mdiode
|
||||||
dev_err(priv->dev, "Failed to disable io pwr: %d\n",
|
dev_err(priv->dev, "Failed to disable io pwr: %d\n",
|
||||||
ret);
|
ret);
|
||||||
|
|
||||||
|
@ -31,3 +31,4 @@ Submitted-by: Rosen Penev <rosenp@gmail.com>
|
|||||||
+ tristate "OID"
|
+ tristate "OID"
|
||||||
help
|
help
|
||||||
Enable fast lookup object identifier registry.
|
Enable fast lookup object identifier registry.
|
||||||
|
|
||||||
|
@ -71,7 +71,7 @@ Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
|
|||||||
|
|
||||||
--- a/mm/page_alloc.c
|
--- a/mm/page_alloc.c
|
||||||
+++ b/mm/page_alloc.c
|
+++ b/mm/page_alloc.c
|
||||||
@@ -7059,7 +7059,7 @@ static void __ref alloc_node_mem_map(str
|
@@ -7104,7 +7104,7 @@ static void __ref alloc_node_mem_map(str
|
||||||
if (pgdat == NODE_DATA(0)) {
|
if (pgdat == NODE_DATA(0)) {
|
||||||
mem_map = NODE_DATA(0)->node_mem_map;
|
mem_map = NODE_DATA(0)->node_mem_map;
|
||||||
if (page_to_pfn(mem_map) != pgdat->node_start_pfn)
|
if (page_to_pfn(mem_map) != pgdat->node_start_pfn)
|
||||||
|
@ -65,7 +65,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
/**
|
/**
|
||||||
* ata_build_rw_tf - Build ATA taskfile for given read/write request
|
* ata_build_rw_tf - Build ATA taskfile for given read/write request
|
||||||
* @tf: Target ATA taskfile
|
* @tf: Target ATA taskfile
|
||||||
@@ -4551,6 +4564,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
|
@@ -4555,6 +4568,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
|
||||||
if (tag < 0)
|
if (tag < 0)
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@ -75,7 +75,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
|
|
||||||
qc = __ata_qc_from_tag(ap, tag);
|
qc = __ata_qc_from_tag(ap, tag);
|
||||||
qc->tag = qc->hw_tag = tag;
|
qc->tag = qc->hw_tag = tag;
|
||||||
@@ -5329,6 +5345,9 @@ struct ata_port *ata_port_alloc(struct a
|
@@ -5333,6 +5349,9 @@ struct ata_port *ata_port_alloc(struct a
|
||||||
ap->stats.unhandled_irq = 1;
|
ap->stats.unhandled_irq = 1;
|
||||||
ap->stats.idle_irq = 1;
|
ap->stats.idle_irq = 1;
|
||||||
#endif
|
#endif
|
||||||
@ -85,7 +85,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
ata_sff_port_init(ap);
|
ata_sff_port_init(ap);
|
||||||
|
|
||||||
return ap;
|
return ap;
|
||||||
@@ -5364,6 +5383,12 @@ static void ata_host_release(struct kref
|
@@ -5368,6 +5387,12 @@ static void ata_host_release(struct kref
|
||||||
|
|
||||||
kfree(ap->pmp_link);
|
kfree(ap->pmp_link);
|
||||||
kfree(ap->slave_link);
|
kfree(ap->slave_link);
|
||||||
@ -98,7 +98,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
kfree(ap);
|
kfree(ap);
|
||||||
host->ports[i] = NULL;
|
host->ports[i] = NULL;
|
||||||
}
|
}
|
||||||
@@ -5770,7 +5795,23 @@ int ata_host_register(struct ata_host *h
|
@@ -5774,7 +5799,23 @@ int ata_host_register(struct ata_host *h
|
||||||
host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
|
host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
|
||||||
host->ports[i]->local_port_no = i + 1;
|
host->ports[i]->local_port_no = i + 1;
|
||||||
}
|
}
|
||||||
|
@ -29,7 +29,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
|
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
|
||||||
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
|
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
|
||||||
@@ -5020,6 +5020,10 @@ int stmmac_dvr_probe(struct device *devi
|
@@ -5033,6 +5033,10 @@ int stmmac_dvr_probe(struct device *devi
|
||||||
reset_control_reset(priv->plat->stmmac_rst);
|
reset_control_reset(priv->plat->stmmac_rst);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -40,7 +40,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
/* Init MAC and get the capabilities */
|
/* Init MAC and get the capabilities */
|
||||||
ret = stmmac_hw_init(priv);
|
ret = stmmac_hw_init(priv);
|
||||||
if (ret)
|
if (ret)
|
||||||
@@ -5244,6 +5248,7 @@ int stmmac_dvr_remove(struct device *dev
|
@@ -5247,6 +5251,7 @@ int stmmac_dvr_remove(struct device *dev
|
||||||
phylink_destroy(priv->phylink);
|
phylink_destroy(priv->phylink);
|
||||||
if (priv->plat->stmmac_rst)
|
if (priv->plat->stmmac_rst)
|
||||||
reset_control_assert(priv->plat->stmmac_rst);
|
reset_control_assert(priv->plat->stmmac_rst);
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- a/arch/mips/Kconfig
|
--- a/arch/mips/Kconfig
|
||||||
+++ b/arch/mips/Kconfig
|
+++ b/arch/mips/Kconfig
|
||||||
@@ -2438,6 +2438,12 @@ config MIPS_VPE_LOADER
|
@@ -2434,6 +2434,12 @@ config MIPS_VPE_LOADER
|
||||||
Includes a loader for loading an elf relocatable object
|
Includes a loader for loading an elf relocatable object
|
||||||
onto another VPE and running it.
|
onto another VPE and running it.
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
/* initialize internal qc */
|
/* initialize internal qc */
|
||||||
qc = __ata_qc_from_tag(ap, ATA_TAG_INTERNAL);
|
qc = __ata_qc_from_tag(ap, ATA_TAG_INTERNAL);
|
||||||
|
|
||||||
@@ -4558,6 +4566,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
|
@@ -4562,6 +4570,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
|
||||||
if (unlikely(ap->pflags & ATA_PFLAG_FROZEN))
|
if (unlikely(ap->pflags & ATA_PFLAG_FROZEN))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
@ -25,7 +25,7 @@
|
|||||||
/* libsas case */
|
/* libsas case */
|
||||||
if (ap->flags & ATA_FLAG_SAS_HOST) {
|
if (ap->flags & ATA_FLAG_SAS_HOST) {
|
||||||
tag = ata_sas_allocate_tag(ap);
|
tag = ata_sas_allocate_tag(ap);
|
||||||
@@ -4603,6 +4614,8 @@ void ata_qc_free(struct ata_queued_cmd *
|
@@ -4607,6 +4618,8 @@ void ata_qc_free(struct ata_queued_cmd *
|
||||||
qc->tag = ATA_TAG_POISON;
|
qc->tag = ATA_TAG_POISON;
|
||||||
if (ap->flags & ATA_FLAG_SAS_HOST)
|
if (ap->flags & ATA_FLAG_SAS_HOST)
|
||||||
ata_sas_free_tag(tag, ap);
|
ata_sas_free_tag(tag, ap);
|
||||||
|
@ -34,7 +34,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
|
|||||||
mtd->type = MTD_NORFLASH;
|
mtd->type = MTD_NORFLASH;
|
||||||
--- a/drivers/mtd/mtdcore.c
|
--- a/drivers/mtd/mtdcore.c
|
||||||
+++ b/drivers/mtd/mtdcore.c
|
+++ b/drivers/mtd/mtdcore.c
|
||||||
@@ -849,6 +849,17 @@ out_error:
|
@@ -851,6 +851,17 @@ out_error:
|
||||||
*/
|
*/
|
||||||
static void mtd_set_dev_defaults(struct mtd_info *mtd)
|
static void mtd_set_dev_defaults(struct mtd_info *mtd)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user