All patches automatically rebased.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
-LINUX_VERSION-5.10 = .198
-LINUX_KERNEL_HASH-5.10.198 = 2b141fce994364fbbf137b01e7910d3518b8cdbdf18f1811b48470ab4ce2fa05
+LINUX_VERSION-5.10 = .199
+LINUX_KERNEL_HASH-5.10.199 = a0ea77a1f5eeb1387d62e7a8df585ffc53758e4da153d98224ccd833bd2624c1
hcd->msi_enabled = 1;
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
-@@ -1904,6 +1904,7 @@ struct xhci_hcd {
+@@ -1903,6 +1903,7 @@ struct xhci_hcd {
struct xhci_hub usb2_rhub;
struct xhci_hub usb3_rhub;
/* support xHCI 1.0 spec USB2 hardware LPM */
}
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
-@@ -5564,7 +5564,7 @@ static void port_event(struct usb_hub *h
+@@ -5662,7 +5662,7 @@ static void port_event(struct usb_hub *h
port_dev->over_current_count++;
port_over_current_notify(port_dev);
--- a/arch/arm64/kernel/armv8_deprecated.c
+++ b/arch/arm64/kernel/armv8_deprecated.c
-@@ -183,10 +183,15 @@ static void __init register_insn_emulati
+@@ -546,10 +546,15 @@ static void __init register_insn_emulati
- switch (ops->status) {
+ switch (insn->status) {
case INSN_DEPRECATED:
+#if 0
insn->current_mode = INSN_EMULATE;
* @dev: the device whose endpoint is being disabled
--- a/include/linux/usb.h
+++ b/include/linux/usb.h
-@@ -1848,6 +1848,8 @@ extern int usb_clear_halt(struct usb_dev
+@@ -1850,6 +1850,8 @@ extern int usb_clear_halt(struct usb_dev
extern int usb_reset_configuration(struct usb_device *dev);
extern int usb_set_interface(struct usb_device *dev, int ifnum, int alternate);
extern void usb_reset_endpoint(struct usb_device *dev, unsigned int epaddr);
--- a/drivers/usb/host/xhci-mem.c
+++ b/drivers/usb/host/xhci-mem.c
-@@ -2559,9 +2559,11 @@ int xhci_mem_init(struct xhci_hcd *xhci,
+@@ -2562,9 +2562,11 @@ int xhci_mem_init(struct xhci_hcd *xhci,
* Event ring setup: Allocate a normal ring, but also setup
* the event ring segment table (ERST). Section 4.9.3.
*/
if (!xhci->event_ring)
goto fail;
if (xhci_check_trb_in_td_math(xhci) < 0)
-@@ -2574,7 +2576,7 @@ int xhci_mem_init(struct xhci_hcd *xhci,
+@@ -2577,7 +2579,7 @@ int xhci_mem_init(struct xhci_hcd *xhci,
/* set ERST count with the number of entries in the segment table */
val = readl(&xhci->ir_set->erst_size);
val &= ERST_SIZE_MASK;
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
-@@ -1897,6 +1897,7 @@ struct xhci_hcd {
+@@ -1896,6 +1896,7 @@ struct xhci_hcd {
#define XHCI_RESET_TO_DEFAULT BIT_ULL(44)
#define XHCI_ZHAOXIN_TRB_FETCH BIT_ULL(45)
#define XHCI_ZHAOXIN_HOST BIT_ULL(46)
--- a/drivers/gpu/drm/drm_connector.c
+++ b/drivers/gpu/drm/drm_connector.c
-@@ -2147,6 +2147,27 @@ int drm_connector_attach_max_bpc_propert
+@@ -2165,6 +2165,27 @@ int drm_connector_attach_max_bpc_propert
EXPORT_SYMBOL(drm_connector_attach_max_bpc_property);
/**
drm_connector_attach_max_bpc_property(connector, 8, 12);
--- a/include/drm/drm_connector.h
+++ b/include/drm/drm_connector.h
-@@ -1622,6 +1622,7 @@ int drm_connector_attach_scaling_mode_pr
+@@ -1647,6 +1647,7 @@ int drm_connector_attach_scaling_mode_pr
u32 scaling_mode_mask);
int drm_connector_attach_vrr_capable_property(
struct drm_connector *connector);
return PTR_ERR(crtc_state);
--- a/drivers/gpu/drm/drm_connector.c
+++ b/drivers/gpu/drm/drm_connector.c
-@@ -2168,6 +2168,34 @@ int drm_connector_attach_hdr_output_meta
+@@ -2186,6 +2186,34 @@ int drm_connector_attach_hdr_output_meta
EXPORT_SYMBOL(drm_connector_attach_hdr_output_metadata_property);
/**
return 0;
--- a/include/drm/drm_connector.h
+++ b/include/drm/drm_connector.h
-@@ -1623,6 +1623,8 @@ int drm_connector_attach_scaling_mode_pr
+@@ -1648,6 +1648,8 @@ int drm_connector_attach_scaling_mode_pr
int drm_connector_attach_vrr_capable_property(
struct drm_connector *connector);
int drm_connector_attach_hdr_output_metadata_property(struct drm_connector *connector);
--- a/drivers/gpu/drm/drm_connector.c
+++ b/drivers/gpu/drm/drm_connector.c
-@@ -2168,6 +2168,26 @@ int drm_connector_attach_hdr_output_meta
+@@ -2186,6 +2186,26 @@ int drm_connector_attach_hdr_output_meta
EXPORT_SYMBOL(drm_connector_attach_hdr_output_metadata_property);
/**
}
--- a/include/drm/drm_connector.h
+++ b/include/drm/drm_connector.h
-@@ -1622,6 +1622,7 @@ int drm_connector_attach_scaling_mode_pr
+@@ -1647,6 +1647,7 @@ int drm_connector_attach_scaling_mode_pr
u32 scaling_mode_mask);
int drm_connector_attach_vrr_capable_property(
struct drm_connector *connector);
--- a/drivers/gpu/drm/drm_connector.c
+++ b/drivers/gpu/drm/drm_connector.c
-@@ -94,6 +94,7 @@ static struct drm_conn_prop_enum_list dr
+@@ -102,6 +102,7 @@ static struct drm_conn_prop_enum_list dr
{ DRM_MODE_CONNECTOR_DPI, "DPI" },
{ DRM_MODE_CONNECTOR_WRITEBACK, "Writeback" },
{ DRM_MODE_CONNECTOR_SPI, "SPI" },
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
-@@ -4278,9 +4278,9 @@ void xhci_queue_new_dequeue_state(struct
+@@ -4277,9 +4277,9 @@ void xhci_queue_new_dequeue_state(struct
}
ep = &xhci->devs[slot_id]->eps[ep_index];
if ((ep->ep_state & SET_DEQ_PENDING)) {
offset = CORE_STS_OVERRIDE_IMP;
else
offset = CORE_STS_OVERRIDE_IMP2;
-@@ -714,7 +715,8 @@ static void bcm_sf2_sw_mac_link_down(str
+@@ -720,7 +721,8 @@ static void bcm_sf2_sw_mac_link_down(str
return;
if (port != core_readl(priv, CORE_IMP0_PRT_ID)) {
offset = CORE_STS_OVERRIDE_GMIIP_PORT(port);
else
offset = CORE_STS_OVERRIDE_GMIIP2_PORT(port);
-@@ -741,7 +743,8 @@ static void bcm_sf2_sw_mac_link_up(struc
+@@ -747,7 +749,8 @@ static void bcm_sf2_sw_mac_link_up(struc
bcm_sf2_sw_mac_link_set(ds, port, interface, true);
if (port != core_readl(priv, CORE_IMP0_PRT_ID)) {
offset = CORE_STS_OVERRIDE_GMIIP_PORT(port);
else
offset = CORE_STS_OVERRIDE_GMIIP2_PORT(port);
-@@ -1139,6 +1142,30 @@ struct bcm_sf2_of_data {
+@@ -1145,6 +1148,30 @@ struct bcm_sf2_of_data {
unsigned int num_cfp_rules;
};
/* Register offsets for the SWITCH_REG_* block */
static const u16 bcm_sf2_7445_reg_offsets[] = {
[REG_SWITCH_CNTRL] = 0x00,
-@@ -1187,6 +1214,9 @@ static const struct bcm_sf2_of_data bcm_
+@@ -1193,6 +1220,9 @@ static const struct bcm_sf2_of_data bcm_
};
static const struct of_device_id bcm_sf2_of_match[] = {
static void bcm_sf2_intr_disable(struct bcm_sf2_priv *priv)
{
intrl2_0_mask_set(priv, 0xffffffff);
-@@ -880,6 +918,8 @@ static int bcm_sf2_sw_resume(struct dsa_
+@@ -886,6 +924,8 @@ static int bcm_sf2_sw_resume(struct dsa_
return ret;
}
ret = bcm_sf2_cfp_resume(ds);
if (ret)
return ret;
-@@ -1151,6 +1191,7 @@ struct bcm_sf2_of_data {
+@@ -1157,6 +1197,7 @@ struct bcm_sf2_of_data {
const u16 *reg_offsets;
unsigned int core_reg_align;
unsigned int num_cfp_rules;
};
static const u16 bcm_sf2_4908_reg_offsets[] = {
-@@ -1175,6 +1216,7 @@ static const struct bcm_sf2_of_data bcm_
+@@ -1181,6 +1222,7 @@ static const struct bcm_sf2_of_data bcm_
.core_reg_align = 0,
.reg_offsets = bcm_sf2_4908_reg_offsets,
.num_cfp_rules = 0, /* FIXME */
};
/* Register offsets for the SWITCH_REG_* block */
-@@ -1285,6 +1327,7 @@ static int bcm_sf2_sw_probe(struct platf
+@@ -1291,6 +1333,7 @@ static int bcm_sf2_sw_probe(struct platf
priv->reg_offsets = data->reg_offsets;
priv->core_reg_align = data->core_reg_align;
priv->num_cfp_rules = data->num_cfp_rules;
priv->rcdev = devm_reset_control_get_optional_exclusive(&pdev->dev,
"switch");
-@@ -1362,6 +1405,8 @@ static int bcm_sf2_sw_probe(struct platf
+@@ -1368,6 +1411,8 @@ static int bcm_sf2_sw_probe(struct platf
goto out_clk_mdiv;
}
--- a/drivers/net/dsa/bcm_sf2.c
+++ b/drivers/net/dsa/bcm_sf2.c
-@@ -1215,7 +1215,7 @@ static const struct bcm_sf2_of_data bcm_
+@@ -1221,7 +1221,7 @@ static const struct bcm_sf2_of_data bcm_
.type = BCM4908_DEVICE_ID,
.core_reg_align = 0,
.reg_offsets = bcm_sf2_4908_reg_offsets,
static void bcm_sf2_imp_setup(struct dsa_switch *ds, int port)
{
struct bcm_sf2_priv *priv = bcm_sf2_to_priv(ds);
-@@ -696,6 +721,7 @@ static void bcm_sf2_sw_mac_config(struct
+@@ -702,6 +727,7 @@ static void bcm_sf2_sw_mac_config(struct
{
struct bcm_sf2_priv *priv = bcm_sf2_to_priv(ds);
u32 id_mode_dis = 0, port_mode;
u32 reg;
if (port == core_readl(priv, CORE_IMP0_PRT_ID))
-@@ -719,10 +745,12 @@ static void bcm_sf2_sw_mac_config(struct
+@@ -725,10 +751,12 @@ static void bcm_sf2_sw_mac_config(struct
return;
}
reg &= ~ID_MODE_DIS;
reg &= ~(PORT_MODE_MASK << PORT_MODE_SHIFT);
-@@ -730,13 +758,14 @@ static void bcm_sf2_sw_mac_config(struct
+@@ -736,13 +764,14 @@ static void bcm_sf2_sw_mac_config(struct
if (id_mode_dis)
reg |= ID_MODE_DIS;
u32 reg;
if (!phy_interface_mode_is_rgmii(interface) &&
-@@ -744,13 +773,15 @@ static void bcm_sf2_sw_mac_link_set(stru
+@@ -750,13 +779,15 @@ static void bcm_sf2_sw_mac_link_set(stru
interface != PHY_INTERFACE_MODE_REVMII)
return;
}
static void bcm_sf2_sw_mac_link_down(struct dsa_switch *ds, int port,
-@@ -787,11 +818,15 @@ static void bcm_sf2_sw_mac_link_up(struc
+@@ -793,11 +824,15 @@ static void bcm_sf2_sw_mac_link_up(struc
{
struct bcm_sf2_priv *priv = bcm_sf2_to_priv(ds);
struct ethtool_eee *p = &priv->dev->ports[port].eee;
if (priv->type == BCM4908_DEVICE_ID ||
priv->type == BCM7445_DEVICE_ID)
offset = CORE_STS_OVERRIDE_GMIIP_PORT(port);
-@@ -802,7 +837,7 @@ static void bcm_sf2_sw_mac_link_up(struc
+@@ -808,7 +843,7 @@ static void bcm_sf2_sw_mac_link_up(struc
interface == PHY_INTERFACE_MODE_RGMII_TXID ||
interface == PHY_INTERFACE_MODE_MII ||
interface == PHY_INTERFACE_MODE_REVMII) {
reg &= ~(RX_PAUSE_EN | TX_PAUSE_EN);
if (tx_pause)
-@@ -810,7 +845,7 @@ static void bcm_sf2_sw_mac_link_up(struc
+@@ -816,7 +851,7 @@ static void bcm_sf2_sw_mac_link_up(struc
if (rx_pause)
reg |= RX_PAUSE_EN;
break;
default:
switch (port) {
-@@ -1238,9 +1243,7 @@ static const u16 bcm_sf2_4908_reg_offset
+@@ -1244,9 +1249,7 @@ static const u16 bcm_sf2_4908_reg_offset
[REG_PHY_REVISION] = 0x14,
[REG_SPHY_CNTRL] = 0x24,
[REG_CROSSBAR] = 0xc8,
--- a/drivers/net/dsa/bcm_sf2.c
+++ b/drivers/net/dsa/bcm_sf2.c
-@@ -827,11 +827,9 @@ static void bcm_sf2_sw_mac_link_up(struc
+@@ -833,11 +833,9 @@ static void bcm_sf2_sw_mac_link_up(struc
bcm_sf2_sw_mac_link_set(ds, port, interface, true);
if (port != core_readl(priv, CORE_IMP0_PRT_ID)) {
if (priv->type == BCM4908_DEVICE_ID ||
priv->type == BCM7445_DEVICE_ID)
offset = CORE_STS_OVERRIDE_GMIIP_PORT(port);
-@@ -842,6 +840,7 @@ static void bcm_sf2_sw_mac_link_up(struc
+@@ -848,6 +846,7 @@ static void bcm_sf2_sw_mac_link_up(struc
interface == PHY_INTERFACE_MODE_RGMII_TXID ||
interface == PHY_INTERFACE_MODE_MII ||
interface == PHY_INTERFACE_MODE_REVMII) {
}
}
-@@ -1243,9 +1280,14 @@ static const u16 bcm_sf2_4908_reg_offset
+@@ -1249,9 +1286,14 @@ static const u16 bcm_sf2_4908_reg_offset
[REG_SPHY_CNTRL] = 0x24,
[REG_CROSSBAR] = 0xc8,
[REG_RGMII_11_CNTRL] = 0x014c,
--- a/drivers/net/dsa/bcm_sf2.c
+++ b/drivers/net/dsa/bcm_sf2.c
-@@ -1544,10 +1544,14 @@ static int bcm_sf2_sw_probe(struct platf
+@@ -1550,10 +1550,14 @@ static int bcm_sf2_sw_probe(struct platf
rev = reg_readl(priv, REG_PHY_REVISION);
priv->hw_params.gphy_rev = rev & PHY_REVISION_MASK;
--- a/drivers/net/dsa/bcm_sf2.c
+++ b/drivers/net/dsa/bcm_sf2.c
-@@ -1558,6 +1558,12 @@ static int bcm_sf2_sw_probe(struct platf
+@@ -1564,6 +1564,12 @@ static int bcm_sf2_sw_probe(struct platf
priv->hw_params.core_rev >> 8, priv->hw_params.core_rev & 0xff,
priv->irq0, priv->irq1);
/*
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
-@@ -1897,6 +1897,7 @@ struct xhci_hcd {
+@@ -1896,6 +1896,7 @@ struct xhci_hcd {
#define XHCI_RESET_TO_DEFAULT BIT_ULL(44)
#define XHCI_ZHAOXIN_TRB_FETCH BIT_ULL(45)
#define XHCI_ZHAOXIN_HOST BIT_ULL(46)
u32 mahr = ravb_read(ndev, MAHR);
u32 malr = ravb_read(ndev, MALR);
-@@ -2189,7 +2191,7 @@ static int ravb_probe(struct platform_de
+@@ -2191,7 +2193,7 @@ static int ravb_probe(struct platform_de
priv->msg_enable = RAVB_DEF_MSG_ENABLE;
/* Read and set MAC address */
{QMI_FIXED_INTF(0x0408, 0xea42, 4)}, /* Yota / Megafon M100-1 */
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
-@@ -244,6 +244,8 @@ static void option_instat_callback(struc
+@@ -247,6 +247,8 @@ static void option_instat_callback(struc
#define UBLOX_PRODUCT_R410M 0x90b2
/* These Yuga products use Qualcomm's vendor ID */
#define YUGA_PRODUCT_CLM920_NC5 0x9625
#define QUECTEL_VENDOR_ID 0x2c7c
/* These Quectel products use Quectel's vendor ID */
-@@ -1180,6 +1182,11 @@ static const struct usb_device_id option
+@@ -1185,6 +1187,11 @@ static const struct usb_device_id option
.driver_info = ZLP },
{ USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96),
.driver_info = RSVD(4) },
--- a/net/ipv4/fib_trie.c
+++ b/net/ipv4/fib_trie.c
-@@ -2989,11 +2989,13 @@ static const struct seq_operations fib_r
+@@ -2993,11 +2993,13 @@ static const struct seq_operations fib_r
int __net_init fib_proc_init(struct net *net)
{
fib_triestat_seq_show, NULL))
goto out2;
-@@ -3004,17 +3006,21 @@ int __net_init fib_proc_init(struct net
+@@ -3008,17 +3010,21 @@ int __net_init fib_proc_init(struct net
return 0;
out3:
static void rt_fibinfo_free(struct rtable __rcu **rtp)
--- a/net/ipv4/fib_trie.c
+++ b/net/ipv4/fib_trie.c
-@@ -2737,6 +2737,7 @@ static const char *const rtn_type_names[
+@@ -2741,6 +2741,7 @@ static const char *const rtn_type_names[
[RTN_THROW] = "THROW",
[RTN_NAT] = "NAT",
[RTN_XRESOLVE] = "XRESOLVE",