mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 14:23:38 +00:00
kernel: bump 5.15 to 5.15.80 (#10506)
Manually rebase: pending-5.15/330-MIPS-kexec-Accept-command-line-parameters-from-users.patch ath79/patches-5.15/910-unaligned_access_hacks.patch All other patches automatically rebased Co-authored-by: John Audia <therealgraysky@proton.me> Signed-off-by: Liu Linhui <liulinhui36@gmail.com> Signed-off-by: Liu Linhui <liulinhui36@gmail.com> Co-authored-by: John Audia <therealgraysky@proton.me>
This commit is contained in:
parent
07df792ae7
commit
21bab22afa
@ -1,2 +1,2 @@
|
|||||||
LINUX_VERSION-5.15 = .79
|
LINUX_VERSION-5.15 = .80
|
||||||
LINUX_KERNEL_HASH-5.15.79 = cba39031dbc0eed0785b8afdc8c58cf23df83e47001b2354fa44486ae699c154
|
LINUX_KERNEL_HASH-5.15.80 = 3b321a6466d2021f60ed8d4e33bba21db2f23efc2ddd2d9fb775393d9afdfd4d
|
||||||
|
@ -1,3 +1,47 @@
|
|||||||
|
From: Felix Fietkau <nbd@openwrt.org>
|
||||||
|
Subject: [PATCH] ar71xx: fix unaligned access in a few more places
|
||||||
|
|
||||||
|
SVN-Revision: 35130
|
||||||
|
---
|
||||||
|
arch/mips/include/asm/checksum.h | 83 +++---------------
|
||||||
|
include/uapi/linux/ip.h | 2 +-
|
||||||
|
include/uapi/linux/ipv6.h | 2 +-
|
||||||
|
include/uapi/linux/tcp.h | 4 ++--
|
||||||
|
include/uapi/linux/udp.h | 2 +-
|
||||||
|
net/netfilter/nf_conntrack_core.c | 4 ++--
|
||||||
|
include/uapi/linux/icmp.h | 2 +-
|
||||||
|
include/uapi/linux/in6.h | 2 +-
|
||||||
|
net/ipv6/tcp_ipv6.c | 9 +++--
|
||||||
|
net/ipv6/datagram.c | 6 ++--
|
||||||
|
net/ipv6/exthdrs.c | 2 +-
|
||||||
|
include/linux/types.h | 5 +++
|
||||||
|
net/ipv4/af_inet.c | 4 ++--
|
||||||
|
net/ipv4/tcp_output.c | 69 +++++++++--------
|
||||||
|
include/uapi/linux/igmp.h | 8 +++---
|
||||||
|
net/core/flow_dissector.c | 2 +-
|
||||||
|
include/uapi/linux/icmpv6.h | 2 +-
|
||||||
|
include/net/ndisc.h | 10 ++++----
|
||||||
|
net/sched/cls_u32.c | 6 +++---
|
||||||
|
net/ipv6/ip6_offload.c | 2 +-
|
||||||
|
include/net/addrconf.h | 2 +-
|
||||||
|
include/net/inet_ecn.h | 4 ++--
|
||||||
|
include/net/ipv6.h | 23 +++++----
|
||||||
|
include/net/secure_seq.h | 1 +
|
||||||
|
include/uapi/linux/in.h | 2 +-
|
||||||
|
net/ipv6/ip6_fib.h | 2 +-
|
||||||
|
net/netfilter/nf_conntrack_proto_tcp.c | 2 +-
|
||||||
|
net/xfrm/xfrm_input.c | 4 ++--
|
||||||
|
net/ipv4/tcp_input.c | 12 ++++---
|
||||||
|
include/uapi/linux/if_pppox.h | 1 +
|
||||||
|
net/ipv6/netfilter/nf_log_ipv6.c | 4 ++--
|
||||||
|
include/net/neighbour.h | 6 +++--
|
||||||
|
include/uapi/linux/netfilter_arp/arp_tables.h | 2 +-
|
||||||
|
net/core/utils.c | 10 +++++--
|
||||||
|
include/linux/etherdevice.h | 11 ++++---
|
||||||
|
net/ipv4/tcp_offload.c | 6 +++---
|
||||||
|
net/ipv6/netfilter/ip6table_mangle.c | 4 ++--
|
||||||
|
37 file changed, 171 insertions(+), 141 deletions(-)
|
||||||
|
|
||||||
--- a/arch/mips/include/asm/checksum.h
|
--- a/arch/mips/include/asm/checksum.h
|
||||||
+++ b/arch/mips/include/asm/checksum.h
|
+++ b/arch/mips/include/asm/checksum.h
|
||||||
@@ -100,26 +100,30 @@ static inline __sum16 ip_fast_csum(const
|
@@ -100,26 +100,30 @@ static inline __sum16 ip_fast_csum(const
|
||||||
@ -118,9 +162,9 @@
|
|||||||
|
|
||||||
--- a/include/uapi/linux/ip.h
|
--- a/include/uapi/linux/ip.h
|
||||||
+++ b/include/uapi/linux/ip.h
|
+++ b/include/uapi/linux/ip.h
|
||||||
@@ -103,7 +103,7 @@ struct iphdr {
|
@@ -105,7 +105,7 @@ struct iphdr {
|
||||||
__be32 saddr;
|
__be32 daddr;
|
||||||
__be32 daddr;
|
);
|
||||||
/*The options start here. */
|
/*The options start here. */
|
||||||
-};
|
-};
|
||||||
+} __attribute__((packed, aligned(2)));
|
+} __attribute__((packed, aligned(2)));
|
||||||
@ -129,10 +173,10 @@
|
|||||||
struct ip_auth_hdr {
|
struct ip_auth_hdr {
|
||||||
--- a/include/uapi/linux/ipv6.h
|
--- a/include/uapi/linux/ipv6.h
|
||||||
+++ b/include/uapi/linux/ipv6.h
|
+++ b/include/uapi/linux/ipv6.h
|
||||||
@@ -132,7 +132,7 @@ struct ipv6hdr {
|
@@ -134,7 +134,7 @@ struct ipv6hdr {
|
||||||
|
struct in6_addr saddr;
|
||||||
struct in6_addr saddr;
|
struct in6_addr daddr;
|
||||||
struct in6_addr daddr;
|
);
|
||||||
-};
|
-};
|
||||||
+} __attribute__((packed, aligned(2)));
|
+} __attribute__((packed, aligned(2)));
|
||||||
|
|
||||||
|
@ -291,7 +291,7 @@ bcm2835-mmc: uninitialized_var is no more
|
|||||||
goto out;
|
goto out;
|
||||||
--- a/drivers/mmc/core/core.c
|
--- a/drivers/mmc/core/core.c
|
||||||
+++ b/drivers/mmc/core/core.c
|
+++ b/drivers/mmc/core/core.c
|
||||||
@@ -1801,7 +1801,8 @@ EXPORT_SYMBOL(mmc_erase);
|
@@ -1807,7 +1807,8 @@ EXPORT_SYMBOL(mmc_erase);
|
||||||
|
|
||||||
int mmc_can_erase(struct mmc_card *card)
|
int mmc_can_erase(struct mmc_card *card)
|
||||||
{
|
{
|
||||||
|
@ -157,7 +157,7 @@ Signed-off-by: Joerg Quinten <aBUGSworstnightmare@gmail.com>
|
|||||||
static const struct drm_display_mode innolux_at070tn92_mode = {
|
static const struct drm_display_mode innolux_at070tn92_mode = {
|
||||||
.clock = 33333,
|
.clock = 33333,
|
||||||
.hdisplay = 800,
|
.hdisplay = 800,
|
||||||
@@ -4660,6 +4692,9 @@ static const struct of_device_id platfor
|
@@ -4662,6 +4694,9 @@ static const struct of_device_id platfor
|
||||||
.compatible = "innolux,at043tn24",
|
.compatible = "innolux,at043tn24",
|
||||||
.data = &innolux_at043tn24,
|
.data = &innolux_at043tn24,
|
||||||
}, {
|
}, {
|
||||||
|
@ -15,7 +15,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/panel/panel-simple.c
|
--- a/drivers/gpu/drm/panel/panel-simple.c
|
||||||
+++ b/drivers/gpu/drm/panel/panel-simple.c
|
+++ b/drivers/gpu/drm/panel/panel-simple.c
|
||||||
@@ -3759,6 +3759,31 @@ static const struct panel_desc qishenglo
|
@@ -3761,6 +3761,31 @@ static const struct panel_desc qishenglo
|
||||||
.connector_type = DRM_MODE_CONNECTOR_DPI,
|
.connector_type = DRM_MODE_CONNECTOR_DPI,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -47,7 +47,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
static const struct display_timing rocktech_rk070er9427_timing = {
|
static const struct display_timing rocktech_rk070er9427_timing = {
|
||||||
.pixelclock = { 26400000, 33300000, 46800000 },
|
.pixelclock = { 26400000, 33300000, 46800000 },
|
||||||
.hactive = { 800, 800, 800 },
|
.hactive = { 800, 800, 800 },
|
||||||
@@ -4839,6 +4864,9 @@ static const struct of_device_id platfor
|
@@ -4841,6 +4866,9 @@ static const struct of_device_id platfor
|
||||||
.compatible = "qishenglong,gopher2b-lcd",
|
.compatible = "qishenglong,gopher2b-lcd",
|
||||||
.data = &qishenglong_gopher2b_lcd,
|
.data = &qishenglong_gopher2b_lcd,
|
||||||
}, {
|
}, {
|
||||||
|
@ -46,7 +46,7 @@ Acked-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
static const struct drm_display_mode giantplus_gpg482739qs5_mode = {
|
static const struct drm_display_mode giantplus_gpg482739qs5_mode = {
|
||||||
.clock = 9000,
|
.clock = 9000,
|
||||||
.hdisplay = 480,
|
.hdisplay = 480,
|
||||||
@@ -4702,6 +4728,9 @@ static const struct of_device_id platfor
|
@@ -4704,6 +4730,9 @@ static const struct of_device_id platfor
|
||||||
.compatible = "friendlyarm,hd702e",
|
.compatible = "friendlyarm,hd702e",
|
||||||
.data = &friendlyarm_hd702e,
|
.data = &friendlyarm_hd702e,
|
||||||
}, {
|
}, {
|
||||||
|
@ -37,7 +37,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
struct phylink_link_state *state);
|
struct phylink_link_state *state);
|
||||||
--- a/net/dsa/port.c
|
--- a/net/dsa/port.c
|
||||||
+++ b/net/dsa/port.c
|
+++ b/net/dsa/port.c
|
||||||
@@ -1172,6 +1172,10 @@ static int dsa_port_phylink_register(str
|
@@ -1188,6 +1188,10 @@ static int dsa_port_phylink_register(str
|
||||||
dp->pl_config.type = PHYLINK_DEV;
|
dp->pl_config.type = PHYLINK_DEV;
|
||||||
dp->pl_config.pcs_poll = ds->pcs_poll;
|
dp->pl_config.pcs_poll = ds->pcs_poll;
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
--- a/net/dsa/dsa_priv.h
|
--- a/net/dsa/dsa_priv.h
|
||||||
+++ b/net/dsa/dsa_priv.h
|
+++ b/net/dsa/dsa_priv.h
|
||||||
@@ -260,13 +260,13 @@ int dsa_port_mrp_add_ring_role(const str
|
@@ -261,13 +261,13 @@ int dsa_port_mrp_add_ring_role(const str
|
||||||
const struct switchdev_obj_ring_role_mrp *mrp);
|
const struct switchdev_obj_ring_role_mrp *mrp);
|
||||||
int dsa_port_mrp_del_ring_role(const struct dsa_port *dp,
|
int dsa_port_mrp_del_ring_role(const struct dsa_port *dp,
|
||||||
const struct switchdev_obj_ring_role_mrp *mrp);
|
const struct switchdev_obj_ring_role_mrp *mrp);
|
||||||
@ -38,7 +38,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
const struct net_device *dev)
|
const struct net_device *dev)
|
||||||
--- a/net/dsa/port.c
|
--- a/net/dsa/port.c
|
||||||
+++ b/net/dsa/port.c
|
+++ b/net/dsa/port.c
|
||||||
@@ -1076,7 +1076,7 @@ static void dsa_port_phylink_mac_link_up
|
@@ -1092,7 +1092,7 @@ static void dsa_port_phylink_mac_link_up
|
||||||
speed, duplex, tx_pause, rx_pause);
|
speed, duplex, tx_pause, rx_pause);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -47,7 +47,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
.validate = dsa_port_phylink_validate,
|
.validate = dsa_port_phylink_validate,
|
||||||
.mac_pcs_get_state = dsa_port_phylink_mac_pcs_get_state,
|
.mac_pcs_get_state = dsa_port_phylink_mac_pcs_get_state,
|
||||||
.mac_config = dsa_port_phylink_mac_config,
|
.mac_config = dsa_port_phylink_mac_config,
|
||||||
@@ -1085,6 +1085,30 @@ const struct phylink_mac_ops dsa_port_ph
|
@@ -1101,6 +1101,30 @@ const struct phylink_mac_ops dsa_port_ph
|
||||||
.mac_link_up = dsa_port_phylink_mac_link_up,
|
.mac_link_up = dsa_port_phylink_mac_link_up,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -78,7 +78,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
static int dsa_port_setup_phy_of(struct dsa_port *dp, bool enable)
|
static int dsa_port_setup_phy_of(struct dsa_port *dp, bool enable)
|
||||||
{
|
{
|
||||||
struct dsa_switch *ds = dp->ds;
|
struct dsa_switch *ds = dp->ds;
|
||||||
@@ -1161,27 +1185,15 @@ static int dsa_port_phylink_register(str
|
@@ -1177,27 +1201,15 @@ static int dsa_port_phylink_register(str
|
||||||
{
|
{
|
||||||
struct dsa_switch *ds = dp->ds;
|
struct dsa_switch *ds = dp->ds;
|
||||||
struct device_node *port_dn = dp->dn;
|
struct device_node *port_dn = dp->dn;
|
||||||
|
@ -37,7 +37,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
struct phylink_link_state *state);
|
struct phylink_link_state *state);
|
||||||
--- a/net/dsa/port.c
|
--- a/net/dsa/port.c
|
||||||
+++ b/net/dsa/port.c
|
+++ b/net/dsa/port.c
|
||||||
@@ -1095,9 +1095,8 @@ int dsa_port_phylink_create(struct dsa_p
|
@@ -1111,9 +1111,8 @@ int dsa_port_phylink_create(struct dsa_p
|
||||||
if (err)
|
if (err)
|
||||||
mode = PHY_INTERFACE_MODE_NA;
|
mode = PHY_INTERFACE_MODE_NA;
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
void (*phylink_mac_config)(struct dsa_switch *ds, int port,
|
void (*phylink_mac_config)(struct dsa_switch *ds, int port,
|
||||||
--- a/net/dsa/port.c
|
--- a/net/dsa/port.c
|
||||||
+++ b/net/dsa/port.c
|
+++ b/net/dsa/port.c
|
||||||
@@ -1012,6 +1012,20 @@ static void dsa_port_phylink_mac_pcs_get
|
@@ -1028,6 +1028,20 @@ static void dsa_port_phylink_mac_pcs_get
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -49,7 +49,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
static void dsa_port_phylink_mac_config(struct phylink_config *config,
|
static void dsa_port_phylink_mac_config(struct phylink_config *config,
|
||||||
unsigned int mode,
|
unsigned int mode,
|
||||||
const struct phylink_link_state *state)
|
const struct phylink_link_state *state)
|
||||||
@@ -1078,6 +1092,7 @@ static void dsa_port_phylink_mac_link_up
|
@@ -1094,6 +1108,7 @@ static void dsa_port_phylink_mac_link_up
|
||||||
|
|
||||||
static const struct phylink_mac_ops dsa_port_phylink_mac_ops = {
|
static const struct phylink_mac_ops dsa_port_phylink_mac_ops = {
|
||||||
.validate = dsa_port_phylink_validate,
|
.validate = dsa_port_phylink_validate,
|
||||||
|
@ -20,7 +20,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
--- a/net/dsa/port.c
|
--- a/net/dsa/port.c
|
||||||
+++ b/net/dsa/port.c
|
+++ b/net/dsa/port.c
|
||||||
@@ -1110,6 +1110,13 @@ int dsa_port_phylink_create(struct dsa_p
|
@@ -1126,6 +1126,13 @@ int dsa_port_phylink_create(struct dsa_p
|
||||||
if (err)
|
if (err)
|
||||||
mode = PHY_INTERFACE_MODE_NA;
|
mode = PHY_INTERFACE_MODE_NA;
|
||||||
|
|
||||||
|
@ -76,7 +76,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
if (iface == PHY_INTERFACE_MODE_MOCA)
|
if (iface == PHY_INTERFACE_MODE_MOCA)
|
||||||
--- a/net/dsa/port.c
|
--- a/net/dsa/port.c
|
||||||
+++ b/net/dsa/port.c
|
+++ b/net/dsa/port.c
|
||||||
@@ -1017,8 +1017,8 @@ dsa_port_phylink_mac_select_pcs(struct p
|
@@ -1033,8 +1033,8 @@ dsa_port_phylink_mac_select_pcs(struct p
|
||||||
phy_interface_t interface)
|
phy_interface_t interface)
|
||||||
{
|
{
|
||||||
struct dsa_port *dp = container_of(config, struct dsa_port, pl_config);
|
struct dsa_port *dp = container_of(config, struct dsa_port, pl_config);
|
||||||
|
@ -37,7 +37,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
--- a/net/dsa/master.c
|
--- a/net/dsa/master.c
|
||||||
+++ b/net/dsa/master.c
|
+++ b/net/dsa/master.c
|
||||||
@@ -330,28 +330,13 @@ static const struct attribute_group dsa_
|
@@ -329,28 +329,13 @@ static const struct attribute_group dsa_
|
||||||
.attrs = dsa_slave_attrs,
|
.attrs = dsa_slave_attrs,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -67,7 +67,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
|
|
||||||
/* The DSA master must use SET_NETDEV_DEV for this to work. */
|
/* The DSA master must use SET_NETDEV_DEV for this to work. */
|
||||||
consumer_link = device_link_add(ds->dev, dev->dev.parent,
|
consumer_link = device_link_add(ds->dev, dev->dev.parent,
|
||||||
@@ -361,13 +346,6 @@ int dsa_master_setup(struct net_device *
|
@@ -360,13 +345,6 @@ int dsa_master_setup(struct net_device *
|
||||||
"Failed to create a device link to DSA switch %s\n",
|
"Failed to create a device link to DSA switch %s\n",
|
||||||
dev_name(ds->dev));
|
dev_name(ds->dev));
|
||||||
|
|
||||||
@ -81,7 +81,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
/* If we use a tagging format that doesn't have an ethertype
|
/* If we use a tagging format that doesn't have an ethertype
|
||||||
* field, make sure that all packets from this point on get
|
* field, make sure that all packets from this point on get
|
||||||
* sent to the tag format's receive function.
|
* sent to the tag format's receive function.
|
||||||
@@ -405,7 +383,6 @@ void dsa_master_teardown(struct net_devi
|
@@ -404,7 +382,6 @@ void dsa_master_teardown(struct net_devi
|
||||||
sysfs_remove_group(&dev->dev.kobj, &dsa_group);
|
sysfs_remove_group(&dev->dev.kobj, &dsa_group);
|
||||||
dsa_netdev_ops_set(dev, NULL);
|
dsa_netdev_ops_set(dev, NULL);
|
||||||
dsa_master_ethtool_teardown(dev);
|
dsa_master_ethtool_teardown(dev);
|
||||||
|
@ -64,7 +64,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
static int dsa_tree_setup_lags(struct dsa_switch_tree *dst)
|
static int dsa_tree_setup_lags(struct dsa_switch_tree *dst)
|
||||||
--- a/net/dsa/master.c
|
--- a/net/dsa/master.c
|
||||||
+++ b/net/dsa/master.c
|
+++ b/net/dsa/master.c
|
||||||
@@ -267,9 +267,9 @@ static void dsa_master_set_promiscuity(s
|
@@ -266,9 +266,9 @@ static void dsa_master_set_promiscuity(s
|
||||||
if (!ops->promisc_on_master)
|
if (!ops->promisc_on_master)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -160,7 +160,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
|||||||
struct dsa_switchdev_event_work {
|
struct dsa_switchdev_event_work {
|
||||||
struct dsa_switch *ds;
|
struct dsa_switch *ds;
|
||||||
int port;
|
int port;
|
||||||
@@ -548,6 +555,12 @@ int dsa_tree_change_tag_proto(struct dsa
|
@@ -549,6 +556,12 @@ int dsa_tree_change_tag_proto(struct dsa
|
||||||
struct net_device *master,
|
struct net_device *master,
|
||||||
const struct dsa_device_ops *tag_ops,
|
const struct dsa_device_ops *tag_ops,
|
||||||
const struct dsa_device_ops *old_tag_ops);
|
const struct dsa_device_ops *old_tag_ops);
|
||||||
|
@ -87,7 +87,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
stmmac_clear_tx_descriptors(priv, queue);
|
stmmac_clear_tx_descriptors(priv, queue);
|
||||||
|
|
||||||
stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
|
stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
|
||||||
@@ -7387,6 +7382,25 @@ int stmmac_suspend(struct device *dev)
|
@@ -7390,6 +7385,25 @@ int stmmac_suspend(struct device *dev)
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(stmmac_suspend);
|
EXPORT_SYMBOL_GPL(stmmac_suspend);
|
||||||
|
|
||||||
@ -113,7 +113,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
/**
|
/**
|
||||||
* stmmac_reset_queues_param - reset queue parameters
|
* stmmac_reset_queues_param - reset queue parameters
|
||||||
* @priv: device pointer
|
* @priv: device pointer
|
||||||
@@ -7397,22 +7411,11 @@ static void stmmac_reset_queues_param(st
|
@@ -7400,22 +7414,11 @@ static void stmmac_reset_queues_param(st
|
||||||
u32 tx_cnt = priv->plat->tx_queues_to_use;
|
u32 tx_cnt = priv->plat->tx_queues_to_use;
|
||||||
u32 queue;
|
u32 queue;
|
||||||
|
|
||||||
|
@ -1143,7 +1143,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
struct stmmac_channel *ch = &priv->channel[queue];
|
struct stmmac_channel *ch = &priv->channel[queue];
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
int ret;
|
int ret;
|
||||||
@@ -6493,7 +6497,7 @@ void stmmac_xdp_release(struct net_devic
|
@@ -6496,7 +6500,7 @@ void stmmac_xdp_release(struct net_devic
|
||||||
stmmac_disable_all_queues(priv);
|
stmmac_disable_all_queues(priv);
|
||||||
|
|
||||||
for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++)
|
for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++)
|
||||||
@ -1152,7 +1152,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
/* Free the IRQ lines */
|
/* Free the IRQ lines */
|
||||||
stmmac_free_irq(dev, REQ_IRQ_ERR_ALL, 0);
|
stmmac_free_irq(dev, REQ_IRQ_ERR_ALL, 0);
|
||||||
@@ -6552,7 +6556,7 @@ int stmmac_xdp_open(struct net_device *d
|
@@ -6555,7 +6559,7 @@ int stmmac_xdp_open(struct net_device *d
|
||||||
|
|
||||||
/* DMA RX Channel Configuration */
|
/* DMA RX Channel Configuration */
|
||||||
for (chan = 0; chan < rx_cnt; chan++) {
|
for (chan = 0; chan < rx_cnt; chan++) {
|
||||||
@ -1161,7 +1161,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
stmmac_init_rx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
|
stmmac_init_rx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
|
||||||
rx_q->dma_rx_phy, chan);
|
rx_q->dma_rx_phy, chan);
|
||||||
@@ -6570,7 +6574,7 @@ int stmmac_xdp_open(struct net_device *d
|
@@ -6573,7 +6577,7 @@ int stmmac_xdp_open(struct net_device *d
|
||||||
rx_q->queue_index);
|
rx_q->queue_index);
|
||||||
} else {
|
} else {
|
||||||
stmmac_set_dma_bfsize(priv, priv->ioaddr,
|
stmmac_set_dma_bfsize(priv, priv->ioaddr,
|
||||||
@ -1170,7 +1170,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
rx_q->queue_index);
|
rx_q->queue_index);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -6579,7 +6583,7 @@ int stmmac_xdp_open(struct net_device *d
|
@@ -6582,7 +6586,7 @@ int stmmac_xdp_open(struct net_device *d
|
||||||
|
|
||||||
/* DMA TX Channel Configuration */
|
/* DMA TX Channel Configuration */
|
||||||
for (chan = 0; chan < tx_cnt; chan++) {
|
for (chan = 0; chan < tx_cnt; chan++) {
|
||||||
@ -1179,7 +1179,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
|
stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
|
||||||
tx_q->dma_tx_phy, chan);
|
tx_q->dma_tx_phy, chan);
|
||||||
@@ -6612,7 +6616,7 @@ int stmmac_xdp_open(struct net_device *d
|
@@ -6615,7 +6619,7 @@ int stmmac_xdp_open(struct net_device *d
|
||||||
|
|
||||||
irq_error:
|
irq_error:
|
||||||
for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++)
|
for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++)
|
||||||
@ -1188,7 +1188,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
stmmac_hw_teardown(dev);
|
stmmac_hw_teardown(dev);
|
||||||
init_error:
|
init_error:
|
||||||
@@ -6639,8 +6643,8 @@ int stmmac_xsk_wakeup(struct net_device
|
@@ -6642,8 +6646,8 @@ int stmmac_xsk_wakeup(struct net_device
|
||||||
queue >= priv->plat->tx_queues_to_use)
|
queue >= priv->plat->tx_queues_to_use)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
@ -1199,7 +1199,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
ch = &priv->channel[queue];
|
ch = &priv->channel[queue];
|
||||||
|
|
||||||
if (!rx_q->xsk_pool && !tx_q->xsk_pool)
|
if (!rx_q->xsk_pool && !tx_q->xsk_pool)
|
||||||
@@ -6896,8 +6900,8 @@ int stmmac_reinit_ringparam(struct net_d
|
@@ -6899,8 +6903,8 @@ int stmmac_reinit_ringparam(struct net_d
|
||||||
if (netif_running(dev))
|
if (netif_running(dev))
|
||||||
stmmac_release(dev);
|
stmmac_release(dev);
|
||||||
|
|
||||||
@ -1210,7 +1210,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
if (netif_running(dev))
|
if (netif_running(dev))
|
||||||
ret = stmmac_open(dev);
|
ret = stmmac_open(dev);
|
||||||
@@ -7333,7 +7337,7 @@ int stmmac_suspend(struct device *dev)
|
@@ -7336,7 +7340,7 @@ int stmmac_suspend(struct device *dev)
|
||||||
stmmac_disable_all_queues(priv);
|
stmmac_disable_all_queues(priv);
|
||||||
|
|
||||||
for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++)
|
for (chan = 0; chan < priv->plat->tx_queues_to_use; chan++)
|
||||||
@ -1219,7 +1219,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
if (priv->eee_enabled) {
|
if (priv->eee_enabled) {
|
||||||
priv->tx_path_in_lpi_mode = false;
|
priv->tx_path_in_lpi_mode = false;
|
||||||
@@ -7384,7 +7388,7 @@ EXPORT_SYMBOL_GPL(stmmac_suspend);
|
@@ -7387,7 +7391,7 @@ EXPORT_SYMBOL_GPL(stmmac_suspend);
|
||||||
|
|
||||||
static void stmmac_reset_rx_queue(struct stmmac_priv *priv, u32 queue)
|
static void stmmac_reset_rx_queue(struct stmmac_priv *priv, u32 queue)
|
||||||
{
|
{
|
||||||
@ -1228,7 +1228,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
rx_q->cur_rx = 0;
|
rx_q->cur_rx = 0;
|
||||||
rx_q->dirty_rx = 0;
|
rx_q->dirty_rx = 0;
|
||||||
@@ -7392,7 +7396,7 @@ static void stmmac_reset_rx_queue(struct
|
@@ -7395,7 +7399,7 @@ static void stmmac_reset_rx_queue(struct
|
||||||
|
|
||||||
static void stmmac_reset_tx_queue(struct stmmac_priv *priv, u32 queue)
|
static void stmmac_reset_tx_queue(struct stmmac_priv *priv, u32 queue)
|
||||||
{
|
{
|
||||||
|
@ -1115,7 +1115,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
|
stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
|
||||||
tx_q->dma_tx_phy, tx_q->queue_index);
|
tx_q->dma_tx_phy, tx_q->queue_index);
|
||||||
@@ -6506,7 +6622,7 @@ void stmmac_xdp_release(struct net_devic
|
@@ -6509,7 +6625,7 @@ void stmmac_xdp_release(struct net_devic
|
||||||
stmmac_stop_all_dma(priv);
|
stmmac_stop_all_dma(priv);
|
||||||
|
|
||||||
/* Release and free the Rx/Tx resources */
|
/* Release and free the Rx/Tx resources */
|
||||||
@ -1124,7 +1124,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
|
|
||||||
/* Disable the MAC Rx/Tx */
|
/* Disable the MAC Rx/Tx */
|
||||||
stmmac_mac_set(priv, priv->ioaddr, false);
|
stmmac_mac_set(priv, priv->ioaddr, false);
|
||||||
@@ -6531,14 +6647,14 @@ int stmmac_xdp_open(struct net_device *d
|
@@ -6534,14 +6650,14 @@ int stmmac_xdp_open(struct net_device *d
|
||||||
u32 chan;
|
u32 chan;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
@ -1141,7 +1141,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
netdev_err(dev, "%s: DMA descriptors initialization failed\n",
|
netdev_err(dev, "%s: DMA descriptors initialization failed\n",
|
||||||
__func__);
|
__func__);
|
||||||
@@ -6620,7 +6736,7 @@ irq_error:
|
@@ -6623,7 +6739,7 @@ irq_error:
|
||||||
|
|
||||||
stmmac_hw_teardown(dev);
|
stmmac_hw_teardown(dev);
|
||||||
init_error:
|
init_error:
|
||||||
@ -1150,7 +1150,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
dma_desc_error:
|
dma_desc_error:
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@@ -7479,7 +7595,7 @@ int stmmac_resume(struct device *dev)
|
@@ -7482,7 +7598,7 @@ int stmmac_resume(struct device *dev)
|
||||||
stmmac_reset_queues_param(priv);
|
stmmac_reset_queues_param(priv);
|
||||||
|
|
||||||
stmmac_free_tx_skbufs(priv);
|
stmmac_free_tx_skbufs(priv);
|
||||||
|
@ -20,8 +20,8 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support
|
|||||||
{QMI_FIXED_INTF(0x0408, 0xea42, 4)}, /* Yota / Megafon M100-1 */
|
{QMI_FIXED_INTF(0x0408, 0xea42, 4)}, /* Yota / Megafon M100-1 */
|
||||||
--- a/drivers/usb/serial/option.c
|
--- a/drivers/usb/serial/option.c
|
||||||
+++ b/drivers/usb/serial/option.c
|
+++ b/drivers/usb/serial/option.c
|
||||||
@@ -243,6 +243,8 @@ static void option_instat_callback(struc
|
@@ -244,6 +244,8 @@ static void option_instat_callback(struc
|
||||||
#define UBLOX_PRODUCT_R6XX 0x90fa
|
#define UBLOX_PRODUCT_R410M 0x90b2
|
||||||
/* These Yuga products use Qualcomm's vendor ID */
|
/* These Yuga products use Qualcomm's vendor ID */
|
||||||
#define YUGA_PRODUCT_CLM920_NC5 0x9625
|
#define YUGA_PRODUCT_CLM920_NC5 0x9625
|
||||||
+/* These MeigLink products use Qualcomm's vendor ID */
|
+/* These MeigLink products use Qualcomm's vendor ID */
|
||||||
@ -29,7 +29,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support
|
|||||||
|
|
||||||
#define QUECTEL_VENDOR_ID 0x2c7c
|
#define QUECTEL_VENDOR_ID 0x2c7c
|
||||||
/* These Quectel products use Quectel's vendor ID */
|
/* These Quectel products use Quectel's vendor ID */
|
||||||
@@ -1143,6 +1145,11 @@ static const struct usb_device_id option
|
@@ -1155,6 +1157,11 @@ static const struct usb_device_id option
|
||||||
.driver_info = ZLP },
|
.driver_info = ZLP },
|
||||||
{ USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96),
|
{ USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96),
|
||||||
.driver_info = RSVD(4) },
|
.driver_info = RSVD(4) },
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- a/net/wireless/wext-core.c
|
--- a/net/wireless/wext-core.c
|
||||||
+++ b/net/wireless/wext-core.c
|
+++ b/net/wireless/wext-core.c
|
||||||
@@ -956,6 +956,9 @@ static int wireless_process_ioctl(struct
|
@@ -959,6 +959,9 @@ static int wireless_process_ioctl(struct
|
||||||
else if (private)
|
else if (private)
|
||||||
return private(dev, iwr, cmd, info, handler);
|
return private(dev, iwr, cmd, info, handler);
|
||||||
}
|
}
|
||||||
|
@ -260,23 +260,22 @@ Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
|
|||||||
|
|
||||||
#ifdef CONFIG_SMP
|
#ifdef CONFIG_SMP
|
||||||
/*
|
/*
|
||||||
@@ -181,9 +182,15 @@ kexec_indirection_page:
|
@@ -177,8 +178,15 @@ EXPORT(kexec_indirection_page)
|
||||||
PTR_WD 0
|
PTR_WD 0
|
||||||
.size kexec_indirection_page, PTRSIZE
|
.size kexec_indirection_page, PTRSIZE
|
||||||
|
|
||||||
-relocate_new_kernel_end:
|
-relocate_new_kernel_end:
|
||||||
+kexec_argv_buf:
|
+kexec_argv_buf:
|
||||||
+ EXPORT(kexec_argv_buf)
|
+ EXPORT(kexec_argv_buf)
|
||||||
+ .skip KEXEC_COMMAND_LINE_SIZE
|
+ .skip KEXEC_COMMAND_LINE_SIZE
|
||||||
+ .size kexec_argv_buf, KEXEC_COMMAND_LINE_SIZE
|
+ .size kexec_argv_buf, KEXEC_COMMAND_LINE_SIZE
|
||||||
+
|
+
|
||||||
+kexec_argv:
|
+kexec_argv:
|
||||||
+ EXPORT(kexec_argv)
|
+ EXPORT(kexec_argv)
|
||||||
+ .skip KEXEC_ARGV_SIZE
|
+ .skip KEXEC_ARGV_SIZE
|
||||||
+ .size kexec_argv, KEXEC_ARGV_SIZE
|
+ .size kexec_argv, KEXEC_ARGV_SIZE
|
||||||
|
|
||||||
-relocate_new_kernel_size:
|
-EXPORT(relocate_new_kernel_size)
|
||||||
- EXPORT(relocate_new_kernel_size)
|
|
||||||
- PTR_WD relocate_new_kernel_end - relocate_new_kernel
|
- PTR_WD relocate_new_kernel_end - relocate_new_kernel
|
||||||
- .size relocate_new_kernel_size, PTRSIZE
|
- .size relocate_new_kernel_size, PTRSIZE
|
||||||
+kexec_relocate_new_kernel_end:
|
+kexec_relocate_new_kernel_end:
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
},
|
},
|
||||||
[PORT_NPCM] = {
|
[PORT_NPCM] = {
|
||||||
.name = "Nuvoton 16550",
|
.name = "Nuvoton 16550",
|
||||||
@@ -2753,6 +2753,11 @@ serial8250_do_set_termios(struct uart_po
|
@@ -2756,6 +2756,11 @@ serial8250_do_set_termios(struct uart_po
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
unsigned int baud, quot, frac = 0;
|
unsigned int baud, quot, frac = 0;
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- a/drivers/spi/spi-mt65xx.c
|
--- a/drivers/spi/spi-mt65xx.c
|
||||||
+++ b/drivers/spi/spi-mt65xx.c
|
+++ b/drivers/spi/spi-mt65xx.c
|
||||||
@@ -1223,10 +1223,16 @@
|
@@ -1223,10 +1223,16 @@ static int mtk_spi_probe(struct platform
|
||||||
goto err_disable_spi_hclk;
|
goto err_disable_spi_hclk;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -18,7 +18,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
mdata->spi_clk_hz = clk_get_rate(mdata->spi_clk);
|
mdata->spi_clk_hz = clk_get_rate(mdata->spi_clk);
|
||||||
@@ -1277,6 +1283,8 @@
|
@@ -1277,6 +1283,8 @@ static int mtk_spi_probe(struct platform
|
||||||
|
|
||||||
err_disable_runtime_pm:
|
err_disable_runtime_pm:
|
||||||
pm_runtime_disable(&pdev->dev);
|
pm_runtime_disable(&pdev->dev);
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- a/drivers/leds/Makefile
|
--- a/drivers/leds/Makefile
|
||||||
+++ b/drivers/leds/Makefile
|
+++ b/drivers/leds/Makefile
|
||||||
@@ -93,6 +93,7 @@
|
@@ -93,6 +93,7 @@ obj-$(CONFIG_LEDS_CR0014114) += leds-cr
|
||||||
obj-$(CONFIG_LEDS_DAC124S085) += leds-dac124s085.o
|
obj-$(CONFIG_LEDS_DAC124S085) += leds-dac124s085.o
|
||||||
obj-$(CONFIG_LEDS_EL15203000) += leds-el15203000.o
|
obj-$(CONFIG_LEDS_EL15203000) += leds-el15203000.o
|
||||||
obj-$(CONFIG_LEDS_SPI_BYTE) += leds-spi-byte.o
|
obj-$(CONFIG_LEDS_SPI_BYTE) += leds-spi-byte.o
|
||||||
@ -10,7 +10,7 @@
|
|||||||
obj-$(CONFIG_LEDS_USER) += uleds.o
|
obj-$(CONFIG_LEDS_USER) += uleds.o
|
||||||
--- a/drivers/leds/Kconfig
|
--- a/drivers/leds/Kconfig
|
||||||
+++ b/drivers/leds/Kconfig
|
+++ b/drivers/leds/Kconfig
|
||||||
@@ -818,6 +818,16 @@
|
@@ -818,6 +818,16 @@ config LEDS_SPI_BYTE
|
||||||
for controlling the brightness. Currently the following controller is
|
for controlling the brightness. Currently the following controller is
|
||||||
supported: Ubiquiti airCube ISP microcontroller based LED controller.
|
supported: Ubiquiti airCube ISP microcontroller based LED controller.
|
||||||
|
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
diff --git a/drivers/clk/mediatek/Kconfig b/drivers/clk/mediatek/Kconfig
|
|
||||||
index 843cea0c7a44..a558c0e1b353 100644
|
|
||||||
--- a/drivers/clk/mediatek/Kconfig
|
--- a/drivers/clk/mediatek/Kconfig
|
||||||
+++ b/drivers/clk/mediatek/Kconfig
|
+++ b/drivers/clk/mediatek/Kconfig
|
||||||
@@ -381,6 +381,23 @@ config COMMON_CLK_MT7629_HIFSYS
|
@@ -344,6 +344,23 @@ config COMMON_CLK_MT7629_HIFSYS
|
||||||
This driver supports MediaTek MT7629 HIFSYS clocks providing
|
This driver supports MediaTek MT7629 HIFSYS clocks providing
|
||||||
to PCI-E and USB.
|
to PCI-E and USB.
|
||||||
|
|
||||||
@ -26,11 +24,9 @@ index 843cea0c7a44..a558c0e1b353 100644
|
|||||||
config COMMON_CLK_MT7986
|
config COMMON_CLK_MT7986
|
||||||
bool "Clock driver for MediaTek MT7986"
|
bool "Clock driver for MediaTek MT7986"
|
||||||
depends on ARCH_MEDIATEK || COMPILE_TEST
|
depends on ARCH_MEDIATEK || COMPILE_TEST
|
||||||
diff --git a/drivers/clk/mediatek/Makefile b/drivers/clk/mediatek/Makefile
|
|
||||||
index ea3b73240303..be9ab51fa6d5 100644
|
|
||||||
--- a/drivers/clk/mediatek/Makefile
|
--- a/drivers/clk/mediatek/Makefile
|
||||||
+++ b/drivers/clk/mediatek/Makefile
|
+++ b/drivers/clk/mediatek/Makefile
|
||||||
@@ -52,6 +52,10 @@ obj-$(CONFIG_COMMON_CLK_MT7622_AUDSYS) += clk-mt7622-aud.o
|
@@ -46,6 +46,10 @@ obj-$(CONFIG_COMMON_CLK_MT7622_AUDSYS) +
|
||||||
obj-$(CONFIG_COMMON_CLK_MT7629) += clk-mt7629.o
|
obj-$(CONFIG_COMMON_CLK_MT7629) += clk-mt7629.o
|
||||||
obj-$(CONFIG_COMMON_CLK_MT7629_ETHSYS) += clk-mt7629-eth.o
|
obj-$(CONFIG_COMMON_CLK_MT7629_ETHSYS) += clk-mt7629-eth.o
|
||||||
obj-$(CONFIG_COMMON_CLK_MT7629_HIFSYS) += clk-mt7629-hif.o
|
obj-$(CONFIG_COMMON_CLK_MT7629_HIFSYS) += clk-mt7629-hif.o
|
||||||
@ -41,12 +37,9 @@ index ea3b73240303..be9ab51fa6d5 100644
|
|||||||
obj-$(CONFIG_COMMON_CLK_MT7986) += clk-mt7986-apmixed.o
|
obj-$(CONFIG_COMMON_CLK_MT7986) += clk-mt7986-apmixed.o
|
||||||
obj-$(CONFIG_COMMON_CLK_MT7986) += clk-mt7986-topckgen.o
|
obj-$(CONFIG_COMMON_CLK_MT7986) += clk-mt7986-topckgen.o
|
||||||
obj-$(CONFIG_COMMON_CLK_MT7986) += clk-mt7986-infracfg.o
|
obj-$(CONFIG_COMMON_CLK_MT7986) += clk-mt7986-infracfg.o
|
||||||
diff --git a/drivers/clk/mediatek/clk-mt7981-apmixed.c b/drivers/clk/mediatek/clk-mt7981-apmixed.c
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000000..b517d20b5fde
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/drivers/clk/mediatek/clk-mt7981-apmixed.c
|
+++ b/drivers/clk/mediatek/clk-mt7981-apmixed.c
|
||||||
@@ -0,0 +1,103 @@
|
@@ -0,0 +1,103 @@
|
||||||
+// SPDX-License-Identifier: GPL-2.0
|
+// SPDX-License-Identifier: GPL-2.0
|
||||||
+/*
|
+/*
|
||||||
+ * Copyright (c) 2021 MediaTek Inc.
|
+ * Copyright (c) 2021 MediaTek Inc.
|
||||||
@ -150,12 +143,9 @@ index 000000000000..b517d20b5fde
|
|||||||
+ },
|
+ },
|
||||||
+};
|
+};
|
||||||
+builtin_platform_driver(clk_mt7981_apmixed_drv);
|
+builtin_platform_driver(clk_mt7981_apmixed_drv);
|
||||||
diff --git a/drivers/clk/mediatek/clk-mt7981-eth.c b/drivers/clk/mediatek/clk-mt7981-eth.c
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000000..36f0fa222675
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/drivers/clk/mediatek/clk-mt7981-eth.c
|
+++ b/drivers/clk/mediatek/clk-mt7981-eth.c
|
||||||
@@ -0,0 +1,138 @@
|
@@ -0,0 +1,138 @@
|
||||||
+// SPDX-License-Identifier: GPL-2.0
|
+// SPDX-License-Identifier: GPL-2.0
|
||||||
+/*
|
+/*
|
||||||
+ * Copyright (c) 2021 MediaTek Inc.
|
+ * Copyright (c) 2021 MediaTek Inc.
|
||||||
@ -294,12 +284,9 @@ index 000000000000..36f0fa222675
|
|||||||
+ __func__, r);
|
+ __func__, r);
|
||||||
+}
|
+}
|
||||||
+CLK_OF_DECLARE(mtk_ethsys, "mediatek,mt7981-ethsys", mtk_ethsys_init);
|
+CLK_OF_DECLARE(mtk_ethsys, "mediatek,mt7981-ethsys", mtk_ethsys_init);
|
||||||
diff --git a/drivers/clk/mediatek/clk-mt7981-infracfg.c b/drivers/clk/mediatek/clk-mt7981-infracfg.c
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000000..d483e654606f
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/drivers/clk/mediatek/clk-mt7981-infracfg.c
|
+++ b/drivers/clk/mediatek/clk-mt7981-infracfg.c
|
||||||
@@ -0,0 +1,323 @@
|
@@ -0,0 +1,323 @@
|
||||||
+// SPDX-License-Identifier: GPL-2.0
|
+// SPDX-License-Identifier: GPL-2.0
|
||||||
+/*
|
+/*
|
||||||
+ * Copyright (c) 2021 MediaTek Inc.
|
+ * Copyright (c) 2021 MediaTek Inc.
|
||||||
@ -623,12 +610,9 @@ index 000000000000..d483e654606f
|
|||||||
+ },
|
+ },
|
||||||
+};
|
+};
|
||||||
+builtin_platform_driver(clk_mt7981_infracfg_ao_drv);
|
+builtin_platform_driver(clk_mt7981_infracfg_ao_drv);
|
||||||
diff --git a/drivers/clk/mediatek/clk-mt7981-topckgen.c b/drivers/clk/mediatek/clk-mt7981-topckgen.c
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000000..a136c0b36469
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/drivers/clk/mediatek/clk-mt7981-topckgen.c
|
+++ b/drivers/clk/mediatek/clk-mt7981-topckgen.c
|
||||||
@@ -0,0 +1,431 @@
|
@@ -0,0 +1,431 @@
|
||||||
+// SPDX-License-Identifier: GPL-2.0
|
+// SPDX-License-Identifier: GPL-2.0
|
||||||
+/*
|
+/*
|
||||||
+ * Copyright (c) 2021 MediaTek Inc.
|
+ * Copyright (c) 2021 MediaTek Inc.
|
||||||
@ -1060,12 +1044,9 @@ index 000000000000..a136c0b36469
|
|||||||
+ },
|
+ },
|
||||||
+};
|
+};
|
||||||
+builtin_platform_driver(clk_mt7981_topckgen_drv);
|
+builtin_platform_driver(clk_mt7981_topckgen_drv);
|
||||||
diff --git a/include/dt-bindings/clock/mt7981-clk.h b/include/dt-bindings/clock/mt7981-clk.h
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000000..0e17a7f93272
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/include/dt-bindings/clock/mt7981-clk.h
|
+++ b/include/dt-bindings/clock/mt7981-clk.h
|
||||||
@@ -0,0 +1,253 @@
|
@@ -0,0 +1,253 @@
|
||||||
+/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
|
+/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */
|
||||||
+/*
|
+/*
|
||||||
+ * Copyright (c) 2021 MediaTek Inc.
|
+ * Copyright (c) 2021 MediaTek Inc.
|
||||||
|
@ -24,7 +24,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
|
|||||||
|
|
||||||
--- a/drivers/mmc/core/core.c
|
--- a/drivers/mmc/core/core.c
|
||||||
+++ b/drivers/mmc/core/core.c
|
+++ b/drivers/mmc/core/core.c
|
||||||
@@ -1358,6 +1358,8 @@ void mmc_power_off(struct mmc_host *host
|
@@ -1364,6 +1364,8 @@ void mmc_power_off(struct mmc_host *host
|
||||||
|
|
||||||
mmc_pwrseq_power_off(host);
|
mmc_pwrseq_power_off(host);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user