mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
kernel: bump 5.10 to 5.10.98 (#8835)
Signed-off-by: aakkll <94471752+aakkll@users.noreply.github.com> Co-authored-by: John Audia <graysky@archlinux.us>
This commit is contained in:
parent
ddb8d35652
commit
609f4c8ed7
@ -1,2 +1,2 @@
|
|||||||
LINUX_VERSION-5.10 = .96
|
LINUX_VERSION-5.10 = .98
|
||||||
LINUX_KERNEL_HASH-5.10.96 = 35e5a042819dd37af891c47d151b209d93e078a22f2637b2f5171bdff5b2e048
|
LINUX_KERNEL_HASH-5.10.98 = 1b24c6c15f1011bcca54da7e58539c612c7c84f95b7902f62d34754aaf0f9443
|
||||||
|
@ -706,7 +706,7 @@
|
|||||||
EXPORT_SYMBOL(xfrm_parse_spi);
|
EXPORT_SYMBOL(xfrm_parse_spi);
|
||||||
--- a/net/ipv4/tcp_input.c
|
--- a/net/ipv4/tcp_input.c
|
||||||
+++ b/net/ipv4/tcp_input.c
|
+++ b/net/ipv4/tcp_input.c
|
||||||
@@ -4081,14 +4081,16 @@ static bool tcp_parse_aligned_timestamp(
|
@@ -4083,14 +4083,16 @@ static bool tcp_parse_aligned_timestamp(
|
||||||
{
|
{
|
||||||
const __be32 *ptr = (const __be32 *)(th + 1);
|
const __be32 *ptr = (const __be32 *)(th + 1);
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
@@ -1497,9 +1497,6 @@ static int vc4_hdmi_cec_init(struct vc4_
|
@@ -1491,9 +1491,6 @@ static int vc4_hdmi_cec_init(struct vc4_
|
||||||
u32 value;
|
u32 value;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
@ -22,7 +22,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
|
|||||||
vc4_hdmi->cec_adap = cec_allocate_adapter(&vc4_hdmi_cec_adap_ops,
|
vc4_hdmi->cec_adap = cec_allocate_adapter(&vc4_hdmi_cec_adap_ops,
|
||||||
vc4_hdmi, "vc4",
|
vc4_hdmi, "vc4",
|
||||||
CEC_CAP_DEFAULTS |
|
CEC_CAP_DEFAULTS |
|
||||||
@@ -1934,7 +1931,6 @@ static const struct vc4_hdmi_variant bcm
|
@@ -1926,7 +1923,6 @@ static const struct vc4_hdmi_variant bcm
|
||||||
.debugfs_name = "hdmi_regs",
|
.debugfs_name = "hdmi_regs",
|
||||||
.card_name = "vc4-hdmi",
|
.card_name = "vc4-hdmi",
|
||||||
.max_pixel_clock = 162000000,
|
.max_pixel_clock = 162000000,
|
||||||
|
@ -29,7 +29,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -1740,6 +1746,7 @@ static int vc5_hdmi_init_resources(struc
|
@@ -1732,6 +1738,7 @@ static int vc5_hdmi_init_resources(struc
|
||||||
struct platform_device *pdev = vc4_hdmi->pdev;
|
struct platform_device *pdev = vc4_hdmi->pdev;
|
||||||
struct device *dev = &pdev->dev;
|
struct device *dev = &pdev->dev;
|
||||||
struct resource *res;
|
struct resource *res;
|
||||||
@ -37,7 +37,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
|
|
||||||
res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "hdmi");
|
res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "hdmi");
|
||||||
if (!res)
|
if (!res)
|
||||||
@@ -1830,6 +1837,38 @@ static int vc5_hdmi_init_resources(struc
|
@@ -1822,6 +1829,38 @@ static int vc5_hdmi_init_resources(struc
|
||||||
return PTR_ERR(vc4_hdmi->reset);
|
return PTR_ERR(vc4_hdmi->reset);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
value |= clk_cnt << VC4_HDMI_CEC_DIV_CLK_CNT_SHIFT;
|
value |= clk_cnt << VC4_HDMI_CEC_DIV_CLK_CNT_SHIFT;
|
||||||
HDMI_WRITE(HDMI_CEC_CNTRL_1, value);
|
HDMI_WRITE(HDMI_CEC_CNTRL_1, value);
|
||||||
}
|
}
|
||||||
@@ -1875,6 +1875,7 @@ static int vc4_hdmi_init_resources(struc
|
@@ -1867,6 +1867,7 @@ static int vc4_hdmi_init_resources(struc
|
||||||
return PTR_ERR(vc4_hdmi->hsm_clock);
|
return PTR_ERR(vc4_hdmi->hsm_clock);
|
||||||
}
|
}
|
||||||
vc4_hdmi->audio_clock = vc4_hdmi->hsm_clock;
|
vc4_hdmi->audio_clock = vc4_hdmi->hsm_clock;
|
||||||
@ -35,7 +35,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -1969,6 +1970,12 @@ static int vc5_hdmi_init_resources(struc
|
@@ -1961,6 +1962,12 @@ static int vc5_hdmi_init_resources(struc
|
||||||
return PTR_ERR(vc4_hdmi->audio_clock);
|
return PTR_ERR(vc4_hdmi->audio_clock);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@ Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
@@ -1729,9 +1729,11 @@ static int vc4_hdmi_cec_adap_enable(stru
|
@@ -1723,9 +1723,11 @@ static int vc4_hdmi_cec_adap_enable(stru
|
||||||
((3600 / usecs) << VC4_HDMI_CEC_CNT_TO_3600_US_SHIFT) |
|
((3600 / usecs) << VC4_HDMI_CEC_CNT_TO_3600_US_SHIFT) |
|
||||||
((3500 / usecs) << VC4_HDMI_CEC_CNT_TO_3500_US_SHIFT));
|
((3500 / usecs) << VC4_HDMI_CEC_CNT_TO_3500_US_SHIFT));
|
||||||
|
|
||||||
@ -34,7 +34,7 @@ Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
HDMI_WRITE(HDMI_CEC_CNTRL_5, val |
|
HDMI_WRITE(HDMI_CEC_CNTRL_5, val |
|
||||||
VC4_HDMI_CEC_TX_SW_RESET | VC4_HDMI_CEC_RX_SW_RESET);
|
VC4_HDMI_CEC_TX_SW_RESET | VC4_HDMI_CEC_RX_SW_RESET);
|
||||||
}
|
}
|
||||||
@@ -1803,8 +1805,6 @@ static int vc4_hdmi_cec_init(struct vc4_
|
@@ -1797,8 +1799,6 @@ static int vc4_hdmi_cec_init(struct vc4_
|
||||||
cec_fill_conn_info_from_drm(&conn_info, &vc4_hdmi->connector);
|
cec_fill_conn_info_from_drm(&conn_info, &vc4_hdmi->connector);
|
||||||
cec_s_conn_info(vc4_hdmi->cec_adap, &conn_info);
|
cec_s_conn_info(vc4_hdmi->cec_adap, &conn_info);
|
||||||
|
|
||||||
@ -43,7 +43,7 @@ Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
value = HDMI_READ(HDMI_CEC_CNTRL_1);
|
value = HDMI_READ(HDMI_CEC_CNTRL_1);
|
||||||
/* Set the logical address to Unregistered */
|
/* Set the logical address to Unregistered */
|
||||||
value |= VC4_HDMI_CEC_ADDR_MASK;
|
value |= VC4_HDMI_CEC_ADDR_MASK;
|
||||||
@@ -1812,12 +1812,32 @@ static int vc4_hdmi_cec_init(struct vc4_
|
@@ -1806,12 +1806,32 @@ static int vc4_hdmi_cec_init(struct vc4_
|
||||||
|
|
||||||
vc4_hdmi_cec_update_clk_div(vc4_hdmi);
|
vc4_hdmi_cec_update_clk_div(vc4_hdmi);
|
||||||
|
|
||||||
@ -82,7 +82,7 @@ Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
|
|
||||||
ret = cec_register_adapter(vc4_hdmi->cec_adap, &pdev->dev);
|
ret = cec_register_adapter(vc4_hdmi->cec_adap, &pdev->dev);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
@@ -2294,6 +2314,7 @@ static const struct vc4_hdmi_variant bcm
|
@@ -2286,6 +2306,7 @@ static const struct vc4_hdmi_variant bcm
|
||||||
PHY_LANE_CK,
|
PHY_LANE_CK,
|
||||||
},
|
},
|
||||||
.unsupported_odd_h_timings = true,
|
.unsupported_odd_h_timings = true,
|
||||||
@ -90,7 +90,7 @@ Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
|
|
||||||
.init_resources = vc5_hdmi_init_resources,
|
.init_resources = vc5_hdmi_init_resources,
|
||||||
.csc_setup = vc5_hdmi_csc_setup,
|
.csc_setup = vc5_hdmi_csc_setup,
|
||||||
@@ -2320,6 +2341,7 @@ static const struct vc4_hdmi_variant bcm
|
@@ -2312,6 +2333,7 @@ static const struct vc4_hdmi_variant bcm
|
||||||
PHY_LANE_2,
|
PHY_LANE_2,
|
||||||
},
|
},
|
||||||
.unsupported_odd_h_timings = true,
|
.unsupported_odd_h_timings = true,
|
||||||
|
@ -19,7 +19,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
@@ -1791,9 +1791,15 @@ static int vc4_hdmi_cec_init(struct vc4_
|
@@ -1785,9 +1785,15 @@ static int vc4_hdmi_cec_init(struct vc4_
|
||||||
{
|
{
|
||||||
struct cec_connector_info conn_info;
|
struct cec_connector_info conn_info;
|
||||||
struct platform_device *pdev = vc4_hdmi->pdev;
|
struct platform_device *pdev = vc4_hdmi->pdev;
|
||||||
|
@ -61,7 +61,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void vc4_hdmi_encoder_post_crtc_disable(struct drm_encoder *encoder,
|
static void vc4_hdmi_encoder_post_crtc_disable(struct drm_encoder *encoder,
|
||||||
@@ -2304,6 +2329,7 @@ static const struct vc4_hdmi_variant bcm
|
@@ -2296,6 +2321,7 @@ static const struct vc4_hdmi_variant bcm
|
||||||
.phy_rng_enable = vc4_hdmi_phy_rng_enable,
|
.phy_rng_enable = vc4_hdmi_phy_rng_enable,
|
||||||
.phy_rng_disable = vc4_hdmi_phy_rng_disable,
|
.phy_rng_disable = vc4_hdmi_phy_rng_disable,
|
||||||
.channel_map = vc4_hdmi_channel_map,
|
.channel_map = vc4_hdmi_channel_map,
|
||||||
@ -69,7 +69,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
};
|
};
|
||||||
|
|
||||||
static const struct vc4_hdmi_variant bcm2711_hdmi0_variant = {
|
static const struct vc4_hdmi_variant bcm2711_hdmi0_variant = {
|
||||||
@@ -2331,6 +2357,7 @@ static const struct vc4_hdmi_variant bcm
|
@@ -2323,6 +2349,7 @@ static const struct vc4_hdmi_variant bcm
|
||||||
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
|
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
|
||||||
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
|
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
|
||||||
.channel_map = vc5_hdmi_channel_map,
|
.channel_map = vc5_hdmi_channel_map,
|
||||||
@ -77,7 +77,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||||||
};
|
};
|
||||||
|
|
||||||
static const struct vc4_hdmi_variant bcm2711_hdmi1_variant = {
|
static const struct vc4_hdmi_variant bcm2711_hdmi1_variant = {
|
||||||
@@ -2358,6 +2385,7 @@ static const struct vc4_hdmi_variant bcm
|
@@ -2350,6 +2377,7 @@ static const struct vc4_hdmi_variant bcm
|
||||||
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
|
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
|
||||||
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
|
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
|
||||||
.channel_map = vc5_hdmi_channel_map,
|
.channel_map = vc5_hdmi_channel_map,
|
||||||
|
@ -19,7 +19,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
@@ -2440,7 +2440,7 @@ static const struct vc4_hdmi_variant bcm
|
@@ -2432,7 +2432,7 @@ static const struct vc4_hdmi_variant bcm
|
||||||
.encoder_type = VC4_ENCODER_TYPE_HDMI0,
|
.encoder_type = VC4_ENCODER_TYPE_HDMI0,
|
||||||
.debugfs_name = "hdmi0_regs",
|
.debugfs_name = "hdmi0_regs",
|
||||||
.card_name = "vc4-hdmi-0",
|
.card_name = "vc4-hdmi-0",
|
||||||
|
@ -65,7 +65,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
#ifdef CONFIG_DRM_VC4_HDMI_CEC
|
#ifdef CONFIG_DRM_VC4_HDMI_CEC
|
||||||
static irqreturn_t vc4_cec_irq_handler_rx_thread(int irq, void *priv)
|
static irqreturn_t vc4_cec_irq_handler_rx_thread(int irq, void *priv)
|
||||||
{
|
{
|
||||||
@@ -2325,6 +2365,10 @@ static int vc4_hdmi_bind(struct device *
|
@@ -2317,6 +2357,10 @@ static int vc4_hdmi_bind(struct device *
|
||||||
if (ret)
|
if (ret)
|
||||||
goto err_destroy_encoder;
|
goto err_destroy_encoder;
|
||||||
|
|
||||||
|
@ -70,7 +70,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
static void vc4_hdmi_encoder_post_crtc_disable(struct drm_encoder *encoder,
|
static void vc4_hdmi_encoder_post_crtc_disable(struct drm_encoder *encoder,
|
||||||
struct drm_atomic_state *state)
|
struct drm_atomic_state *state)
|
||||||
{
|
{
|
||||||
@@ -2283,6 +2307,7 @@ static int vc4_hdmi_bind(struct device *
|
@@ -2275,6 +2299,7 @@ static int vc4_hdmi_bind(struct device *
|
||||||
vc4_hdmi = devm_kzalloc(dev, sizeof(*vc4_hdmi), GFP_KERNEL);
|
vc4_hdmi = devm_kzalloc(dev, sizeof(*vc4_hdmi), GFP_KERNEL);
|
||||||
if (!vc4_hdmi)
|
if (!vc4_hdmi)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
--- a/kernel/cgroup/cgroup.c
|
--- a/kernel/cgroup/cgroup.c
|
||||||
+++ b/kernel/cgroup/cgroup.c
|
+++ b/kernel/cgroup/cgroup.c
|
||||||
@@ -5690,6 +5690,9 @@ int __init cgroup_init_early(void)
|
@@ -5695,6 +5695,9 @@ int __init cgroup_init_early(void)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
/**
|
/**
|
||||||
* cgroup_init - cgroup initialization
|
* cgroup_init - cgroup initialization
|
||||||
*
|
*
|
||||||
@@ -5728,6 +5731,12 @@ int __init cgroup_init(void)
|
@@ -5733,6 +5736,12 @@ int __init cgroup_init(void)
|
||||||
|
|
||||||
mutex_unlock(&cgroup_mutex);
|
mutex_unlock(&cgroup_mutex);
|
||||||
|
|
||||||
@ -40,7 +40,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
for_each_subsys(ss, ssid) {
|
for_each_subsys(ss, ssid) {
|
||||||
if (ss->early_init) {
|
if (ss->early_init) {
|
||||||
struct cgroup_subsys_state *css =
|
struct cgroup_subsys_state *css =
|
||||||
@@ -6265,6 +6274,10 @@ static int __init cgroup_disable(char *s
|
@@ -6270,6 +6279,10 @@ static int __init cgroup_disable(char *s
|
||||||
strcmp(token, ss->legacy_name))
|
strcmp(token, ss->legacy_name))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@ -51,7 +51,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
static_branch_disable(cgroup_subsys_enabled_key[i]);
|
static_branch_disable(cgroup_subsys_enabled_key[i]);
|
||||||
pr_info("Disabling %s control group subsystem\n",
|
pr_info("Disabling %s control group subsystem\n",
|
||||||
ss->name);
|
ss->name);
|
||||||
@@ -6274,6 +6287,31 @@ static int __init cgroup_disable(char *s
|
@@ -6279,6 +6292,31 @@ static int __init cgroup_disable(char *s
|
||||||
}
|
}
|
||||||
__setup("cgroup_disable=", cgroup_disable);
|
__setup("cgroup_disable=", cgroup_disable);
|
||||||
|
|
||||||
|
@ -102,7 +102,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
static u32 vc4_hdmi_channel_map(struct vc4_hdmi *vc4_hdmi, u32 channel_mask)
|
static u32 vc4_hdmi_channel_map(struct vc4_hdmi *vc4_hdmi, u32 channel_mask)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
@@ -2344,6 +2361,7 @@ static const struct vc4_hdmi_variant bcm
|
@@ -2336,6 +2353,7 @@ static const struct vc4_hdmi_variant bcm
|
||||||
.phy_disable = vc4_hdmi_phy_disable,
|
.phy_disable = vc4_hdmi_phy_disable,
|
||||||
.phy_rng_enable = vc4_hdmi_phy_rng_enable,
|
.phy_rng_enable = vc4_hdmi_phy_rng_enable,
|
||||||
.phy_rng_disable = vc4_hdmi_phy_rng_disable,
|
.phy_rng_disable = vc4_hdmi_phy_rng_disable,
|
||||||
@ -110,7 +110,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
.channel_map = vc4_hdmi_channel_map,
|
.channel_map = vc4_hdmi_channel_map,
|
||||||
.supports_hdr = false,
|
.supports_hdr = false,
|
||||||
};
|
};
|
||||||
@@ -2372,6 +2390,7 @@ static const struct vc4_hdmi_variant bcm
|
@@ -2364,6 +2382,7 @@ static const struct vc4_hdmi_variant bcm
|
||||||
.phy_disable = vc5_hdmi_phy_disable,
|
.phy_disable = vc5_hdmi_phy_disable,
|
||||||
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
|
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
|
||||||
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
|
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
|
||||||
@ -118,7 +118,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
.channel_map = vc5_hdmi_channel_map,
|
.channel_map = vc5_hdmi_channel_map,
|
||||||
.supports_hdr = true,
|
.supports_hdr = true,
|
||||||
};
|
};
|
||||||
@@ -2400,6 +2419,7 @@ static const struct vc4_hdmi_variant bcm
|
@@ -2392,6 +2411,7 @@ static const struct vc4_hdmi_variant bcm
|
||||||
.phy_disable = vc5_hdmi_phy_disable,
|
.phy_disable = vc5_hdmi_phy_disable,
|
||||||
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
|
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
|
||||||
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
|
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
|
||||||
|
@ -24,7 +24,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
{
|
{
|
||||||
struct vc4_hdmi *vc4_hdmi = cec_get_drvdata(adap);
|
struct vc4_hdmi *vc4_hdmi = cec_get_drvdata(adap);
|
||||||
/* clock period in microseconds */
|
/* clock period in microseconds */
|
||||||
@@ -1775,38 +1775,53 @@ static int vc4_hdmi_cec_adap_enable(stru
|
@@ -1769,38 +1769,53 @@ static int vc4_hdmi_cec_adap_enable(stru
|
||||||
val |= ((4700 / usecs) << VC4_HDMI_CEC_CNT_TO_4700_US_SHIFT) |
|
val |= ((4700 / usecs) << VC4_HDMI_CEC_CNT_TO_4700_US_SHIFT) |
|
||||||
((4500 / usecs) << VC4_HDMI_CEC_CNT_TO_4500_US_SHIFT);
|
((4500 / usecs) << VC4_HDMI_CEC_CNT_TO_4500_US_SHIFT);
|
||||||
|
|
||||||
|
@ -25,57 +25,43 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
@@ -1902,40 +1902,49 @@ static int vc4_hdmi_cec_init(struct vc4_
|
@@ -1896,40 +1896,49 @@ static int vc4_hdmi_cec_init(struct vc4_
|
||||||
vc4_hdmi_cec_update_clk_div(vc4_hdmi);
|
vc4_hdmi_cec_update_clk_div(vc4_hdmi);
|
||||||
|
|
||||||
if (vc4_hdmi->variant->external_irq_controller) {
|
if (vc4_hdmi->variant->external_irq_controller) {
|
||||||
- ret = devm_request_threaded_irq(&pdev->dev,
|
- ret = devm_request_threaded_irq(&pdev->dev,
|
||||||
- platform_get_irq_byname(pdev, "cec-rx"),
|
- platform_get_irq_byname(pdev, "cec-rx"),
|
||||||
- vc4_cec_irq_handler_rx_bare,
|
|
||||||
- vc4_cec_irq_handler_rx_thread, 0,
|
|
||||||
- "vc4 hdmi cec rx", vc4_hdmi);
|
|
||||||
+ ret = request_threaded_irq(platform_get_irq_byname(pdev, "cec-rx"),
|
+ ret = request_threaded_irq(platform_get_irq_byname(pdev, "cec-rx"),
|
||||||
+ vc4_cec_irq_handler_rx_bare,
|
vc4_cec_irq_handler_rx_bare,
|
||||||
+ vc4_cec_irq_handler_rx_thread, 0,
|
vc4_cec_irq_handler_rx_thread, 0,
|
||||||
+ "vc4 hdmi cec rx", vc4_hdmi);
|
"vc4 hdmi cec rx", vc4_hdmi);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto err_delete_cec_adap;
|
goto err_delete_cec_adap;
|
||||||
|
|
||||||
- ret = devm_request_threaded_irq(&pdev->dev,
|
- ret = devm_request_threaded_irq(&pdev->dev,
|
||||||
- platform_get_irq_byname(pdev, "cec-tx"),
|
- platform_get_irq_byname(pdev, "cec-tx"),
|
||||||
- vc4_cec_irq_handler_tx_bare,
|
|
||||||
- vc4_cec_irq_handler_tx_thread, 0,
|
|
||||||
- "vc4 hdmi cec tx", vc4_hdmi);
|
|
||||||
+ ret = request_threaded_irq(platform_get_irq_byname(pdev, "cec-tx"),
|
+ ret = request_threaded_irq(platform_get_irq_byname(pdev, "cec-tx"),
|
||||||
+ vc4_cec_irq_handler_tx_bare,
|
vc4_cec_irq_handler_tx_bare,
|
||||||
+ vc4_cec_irq_handler_tx_thread, 0,
|
vc4_cec_irq_handler_tx_thread, 0,
|
||||||
+ "vc4 hdmi cec tx", vc4_hdmi);
|
"vc4 hdmi cec tx", vc4_hdmi);
|
||||||
if (ret)
|
if (ret)
|
||||||
- goto err_delete_cec_adap;
|
- goto err_delete_cec_adap;
|
||||||
+ goto err_remove_cec_rx_handler;
|
+ goto err_remove_cec_rx_handler;
|
||||||
+
|
|
||||||
} else {
|
} else {
|
||||||
HDMI_WRITE(HDMI_CEC_CPU_MASK_SET, 0xffffffff);
|
HDMI_WRITE(HDMI_CEC_CPU_MASK_SET, 0xffffffff);
|
||||||
|
|
||||||
- ret = devm_request_threaded_irq(&pdev->dev, platform_get_irq(pdev, 0),
|
- ret = devm_request_threaded_irq(&pdev->dev, platform_get_irq(pdev, 0),
|
||||||
- vc4_cec_irq_handler,
|
|
||||||
- vc4_cec_irq_handler_thread, 0,
|
|
||||||
- "vc4 hdmi cec", vc4_hdmi);
|
|
||||||
+ ret = request_threaded_irq(platform_get_irq(pdev, 0),
|
+ ret = request_threaded_irq(platform_get_irq(pdev, 0),
|
||||||
+ vc4_cec_irq_handler,
|
vc4_cec_irq_handler,
|
||||||
+ vc4_cec_irq_handler_thread, 0,
|
vc4_cec_irq_handler_thread, 0,
|
||||||
+ "vc4 hdmi cec", vc4_hdmi);
|
"vc4 hdmi cec", vc4_hdmi);
|
||||||
if (ret)
|
@@ -1924,10 +1922,20 @@ static int vc4_hdmi_cec_init(struct vc4_
|
||||||
goto err_delete_cec_adap;
|
|
||||||
}
|
|
||||||
|
|
||||||
ret = cec_register_adapter(vc4_hdmi->cec_adap, &pdev->dev);
|
ret = cec_register_adapter(vc4_hdmi->cec_adap, &pdev->dev);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
- goto err_delete_cec_adap;
|
- goto err_delete_cec_adap;
|
||||||
+ goto err_remove_handlers;
|
+ goto err_remove_handlers;
|
||||||
|
|
||||||
pm_runtime_put(&vc4_hdmi->pdev->dev);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
+err_remove_handlers:
|
+err_remove_handlers:
|
||||||
@ -91,7 +77,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
err_delete_cec_adap:
|
err_delete_cec_adap:
|
||||||
cec_delete_adapter(vc4_hdmi->cec_adap);
|
cec_delete_adapter(vc4_hdmi->cec_adap);
|
||||||
|
|
||||||
@@ -1944,6 +1953,15 @@ err_delete_cec_adap:
|
@@ -1936,6 +1944,15 @@ err_delete_cec_adap:
|
||||||
|
|
||||||
static void vc4_hdmi_cec_exit(struct vc4_hdmi *vc4_hdmi)
|
static void vc4_hdmi_cec_exit(struct vc4_hdmi *vc4_hdmi)
|
||||||
{
|
{
|
||||||
|
@ -83,7 +83,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
#ifdef CONFIG_DRM_VC4_HDMI_CEC
|
#ifdef CONFIG_DRM_VC4_HDMI_CEC
|
||||||
static irqreturn_t vc4_cec_irq_handler_rx_thread(int irq, void *priv)
|
static irqreturn_t vc4_cec_irq_handler_rx_thread(int irq, void *priv)
|
||||||
{
|
{
|
||||||
@@ -2314,7 +2326,7 @@ static int vc4_hdmi_bind(struct device *
|
@@ -2305,7 +2317,7 @@ static int vc4_hdmi_bind(struct device *
|
||||||
|
|
||||||
ret = vc4_hdmi_cec_init(vc4_hdmi);
|
ret = vc4_hdmi_cec_init(vc4_hdmi);
|
||||||
if (ret)
|
if (ret)
|
||||||
@ -92,7 +92,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
ret = vc4_hdmi_audio_init(vc4_hdmi);
|
ret = vc4_hdmi_audio_init(vc4_hdmi);
|
||||||
if (ret)
|
if (ret)
|
||||||
@@ -2328,6 +2340,8 @@ static int vc4_hdmi_bind(struct device *
|
@@ -2319,6 +2331,8 @@ static int vc4_hdmi_bind(struct device *
|
||||||
|
|
||||||
err_free_cec:
|
err_free_cec:
|
||||||
vc4_hdmi_cec_exit(vc4_hdmi);
|
vc4_hdmi_cec_exit(vc4_hdmi);
|
||||||
@ -101,7 +101,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
err_destroy_conn:
|
err_destroy_conn:
|
||||||
vc4_hdmi_connector_destroy(&vc4_hdmi->connector);
|
vc4_hdmi_connector_destroy(&vc4_hdmi->connector);
|
||||||
err_destroy_encoder:
|
err_destroy_encoder:
|
||||||
@@ -2369,6 +2383,7 @@ static void vc4_hdmi_unbind(struct devic
|
@@ -2360,6 +2374,7 @@ static void vc4_hdmi_unbind(struct devic
|
||||||
kfree(vc4_hdmi->hd_regset.regs);
|
kfree(vc4_hdmi->hd_regset.regs);
|
||||||
|
|
||||||
vc4_hdmi_cec_exit(vc4_hdmi);
|
vc4_hdmi_cec_exit(vc4_hdmi);
|
||||||
|
@ -18,7 +18,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
|
||||||
@@ -2304,6 +2304,18 @@ static int vc4_hdmi_bind(struct device *
|
@@ -2295,6 +2295,18 @@ static int vc4_hdmi_bind(struct device *
|
||||||
if (ret)
|
if (ret)
|
||||||
goto err_put_ddc;
|
goto err_put_ddc;
|
||||||
|
|
||||||
@ -37,7 +37,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
if (vc4_hdmi->variant->reset)
|
if (vc4_hdmi->variant->reset)
|
||||||
vc4_hdmi->variant->reset(vc4_hdmi);
|
vc4_hdmi->variant->reset(vc4_hdmi);
|
||||||
|
|
||||||
@@ -2315,8 +2327,6 @@ static int vc4_hdmi_bind(struct device *
|
@@ -2306,8 +2318,6 @@ static int vc4_hdmi_bind(struct device *
|
||||||
clk_prepare_enable(vc4_hdmi->pixel_bvb_clock);
|
clk_prepare_enable(vc4_hdmi->pixel_bvb_clock);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -46,7 +46,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
drm_simple_encoder_init(drm, encoder, DRM_MODE_ENCODER_TMDS);
|
drm_simple_encoder_init(drm, encoder, DRM_MODE_ENCODER_TMDS);
|
||||||
drm_encoder_helper_add(encoder, &vc4_hdmi_encoder_helper_funcs);
|
drm_encoder_helper_add(encoder, &vc4_hdmi_encoder_helper_funcs);
|
||||||
|
|
||||||
@@ -2340,6 +2350,8 @@ static int vc4_hdmi_bind(struct device *
|
@@ -2331,6 +2341,8 @@ static int vc4_hdmi_bind(struct device *
|
||||||
vc4_hdmi_debugfs_regs,
|
vc4_hdmi_debugfs_regs,
|
||||||
vc4_hdmi);
|
vc4_hdmi);
|
||||||
|
|
||||||
@ -55,7 +55,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err_free_cec:
|
err_free_cec:
|
||||||
@@ -2350,6 +2362,7 @@ err_destroy_conn:
|
@@ -2341,6 +2353,7 @@ err_destroy_conn:
|
||||||
vc4_hdmi_connector_destroy(&vc4_hdmi->connector);
|
vc4_hdmi_connector_destroy(&vc4_hdmi->connector);
|
||||||
err_destroy_encoder:
|
err_destroy_encoder:
|
||||||
drm_encoder_cleanup(encoder);
|
drm_encoder_cleanup(encoder);
|
||||||
|
@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
#define PACKET_FANOUT_LB 1
|
#define PACKET_FANOUT_LB 1
|
||||||
--- a/net/packet/af_packet.c
|
--- a/net/packet/af_packet.c
|
||||||
+++ b/net/packet/af_packet.c
|
+++ b/net/packet/af_packet.c
|
||||||
@@ -1819,6 +1819,7 @@ static int packet_rcv_spkt(struct sk_buf
|
@@ -1822,6 +1822,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||||
{
|
{
|
||||||
struct sock *sk;
|
struct sock *sk;
|
||||||
struct sockaddr_pkt *spkt;
|
struct sockaddr_pkt *spkt;
|
||||||
@ -38,7 +38,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* When we registered the protocol we saved the socket in the data
|
* When we registered the protocol we saved the socket in the data
|
||||||
@@ -1826,6 +1827,7 @@ static int packet_rcv_spkt(struct sk_buf
|
@@ -1829,6 +1830,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||||
*/
|
*/
|
||||||
|
|
||||||
sk = pt->af_packet_priv;
|
sk = pt->af_packet_priv;
|
||||||
@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Yank back the headers [hope the device set this
|
* Yank back the headers [hope the device set this
|
||||||
@@ -1838,7 +1840,7 @@ static int packet_rcv_spkt(struct sk_buf
|
@@ -1841,7 +1843,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||||
* so that this procedure is noop.
|
* so that this procedure is noop.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -55,7 +55,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
@@ -2076,12 +2078,12 @@ static int packet_rcv(struct sk_buff *sk
|
@@ -2079,12 +2081,12 @@ static int packet_rcv(struct sk_buff *sk
|
||||||
unsigned int snaplen, res;
|
unsigned int snaplen, res;
|
||||||
bool is_drop_n_account = false;
|
bool is_drop_n_account = false;
|
||||||
|
|
||||||
@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
goto drop;
|
goto drop;
|
||||||
|
|
||||||
@@ -2207,12 +2209,12 @@ static int tpacket_rcv(struct sk_buff *s
|
@@ -2210,12 +2212,12 @@ static int tpacket_rcv(struct sk_buff *s
|
||||||
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
|
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
|
||||||
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
|
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
|
||||||
|
|
||||||
@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||||
goto drop;
|
goto drop;
|
||||||
|
|
||||||
@@ -3319,6 +3321,7 @@ static int packet_create(struct net *net
|
@@ -3322,6 +3324,7 @@ static int packet_create(struct net *net
|
||||||
mutex_init(&po->pg_vec_lock);
|
mutex_init(&po->pg_vec_lock);
|
||||||
po->rollover = NULL;
|
po->rollover = NULL;
|
||||||
po->prot_hook.func = packet_rcv;
|
po->prot_hook.func = packet_rcv;
|
||||||
@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
if (sock->type == SOCK_PACKET)
|
if (sock->type == SOCK_PACKET)
|
||||||
po->prot_hook.func = packet_rcv_spkt;
|
po->prot_hook.func = packet_rcv_spkt;
|
||||||
@@ -3956,6 +3959,16 @@ packet_setsockopt(struct socket *sock, i
|
@@ -3960,6 +3963,16 @@ packet_setsockopt(struct socket *sock, i
|
||||||
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
|
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
default:
|
default:
|
||||||
return -ENOPROTOOPT;
|
return -ENOPROTOOPT;
|
||||||
}
|
}
|
||||||
@@ -4012,6 +4025,13 @@ static int packet_getsockopt(struct sock
|
@@ -4016,6 +4029,13 @@ static int packet_getsockopt(struct sock
|
||||||
case PACKET_VNET_HDR:
|
case PACKET_VNET_HDR:
|
||||||
val = po->has_vnet_hdr;
|
val = po->has_vnet_hdr;
|
||||||
break;
|
break;
|
||||||
|
@ -14,7 +14,7 @@ Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
||||||
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
||||||
@@ -3269,6 +3269,7 @@ static const struct mtk_soc_data mt7623_
|
@@ -3302,6 +3302,7 @@ static const struct mtk_soc_data mt7623_
|
||||||
.hw_features = MTK_HW_FEATURES,
|
.hw_features = MTK_HW_FEATURES,
|
||||||
.required_clks = MT7623_CLKS_BITMAP,
|
.required_clks = MT7623_CLKS_BITMAP,
|
||||||
.required_pctl = true,
|
.required_pctl = true,
|
||||||
|
@ -51,7 +51,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
|
if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
|
||||||
ret = device_reset(eth->dev);
|
ret = device_reset(eth->dev);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
@@ -3071,6 +3079,16 @@ static int mtk_probe(struct platform_dev
|
@@ -3104,6 +3112,16 @@ static int mtk_probe(struct platform_dev
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -70,7 +70,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
GFP_KERNEL);
|
GFP_KERNEL);
|
||||||
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.h
|
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.h
|
||||||
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.h
|
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.h
|
||||||
@@ -450,6 +450,12 @@
|
@@ -456,6 +456,12 @@
|
||||||
#define RSTCTRL_FE BIT(6)
|
#define RSTCTRL_FE BIT(6)
|
||||||
#define RSTCTRL_PPE BIT(31)
|
#define RSTCTRL_PPE BIT(31)
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ Signed-off-by: René van Dorst <opensource@vdorst.com>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
||||||
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
||||||
@@ -2914,6 +2914,7 @@ static const struct net_device_ops mtk_n
|
@@ -2941,6 +2941,7 @@ static const struct net_device_ops mtk_n
|
||||||
|
|
||||||
static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np)
|
static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np)
|
||||||
{
|
{
|
||||||
@ -22,9 +22,9 @@ Signed-off-by: René van Dorst <opensource@vdorst.com>
|
|||||||
const __be32 *_id = of_get_property(np, "reg", NULL);
|
const __be32 *_id = of_get_property(np, "reg", NULL);
|
||||||
phy_interface_t phy_mode;
|
phy_interface_t phy_mode;
|
||||||
struct phylink *phylink;
|
struct phylink *phylink;
|
||||||
@@ -3008,6 +3009,9 @@ static int mtk_add_mac(struct mtk_eth *e
|
@@ -3036,6 +3037,9 @@ static int mtk_add_mac(struct mtk_eth *e
|
||||||
|
else
|
||||||
of_platform_device_create(np, NULL, NULL);
|
eth->netdev[id]->max_mtu = MTK_MAX_RX_LENGTH_2K - MTK_RX_ETH_HLEN;
|
||||||
|
|
||||||
+ if (name)
|
+ if (name)
|
||||||
+ strlcpy(eth->netdev[id]->name, name, IFNAMSIZ);
|
+ strlcpy(eth->netdev[id]->name, name, IFNAMSIZ);
|
||||||
|
Loading…
Reference in New Issue
Block a user