mirror of
git://git.openwrt.org/openwrt/openwrt.git
synced 2024-12-26 16:42:47 +00:00
kernel: bump 6.6 to 6.6.37
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.37 Added: generic/hack-6.6/900-fix-build-to-handle-return-value.patch[1] Manually rebased: generic/pending-6.6/834-ledtrig-libata.patch Removed upstreamed: bcm27xx/patches-6.6/950-0398-drm-panel-panel-ilitek9881c-Use-cansleep-methods.patch[2] All other patches automatically rebased. 1. Patch suggested by @DragonBluep to circumvent upstream breakage of kernel 6.6.37 compilation. See comments in https://github.com/openwrt/openwrt/pull/15879 for additional discussion. 2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.37&id=1618f7a875ffd916596392fd29880c0429b8af60 Build system: x86/64 Build-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3 Run-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3 Signed-off-by: John Audia <therealgraysky@proton.me> Link: https://github.com/openwrt/openwrt/pull/15879 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
parent
d92c42f469
commit
69dd5a788f
@ -1,2 +1,2 @@
|
||||
LINUX_VERSION-6.6 = .36
|
||||
LINUX_KERNEL_HASH-6.6.36 = b9676828b737e8fb8eaa5198303d35d35e8df019550be153c8a42c99afe0cdd5
|
||||
LINUX_VERSION-6.6 = .37
|
||||
LINUX_KERNEL_HASH-6.6.37 = f3976e77708694fe4a1f8d1307c315c8a36cbc58f038a38e006b91e29a1f3214
|
||||
|
@ -751,7 +751,7 @@ SVN-Revision: 35130
|
||||
EXPORT_SYMBOL(xfrm_parse_spi);
|
||||
--- a/net/ipv4/tcp_input.c
|
||||
+++ b/net/ipv4/tcp_input.c
|
||||
@@ -4188,14 +4188,16 @@ static bool tcp_parse_aligned_timestamp(
|
||||
@@ -4205,14 +4205,16 @@ static bool tcp_parse_aligned_timestamp(
|
||||
{
|
||||
const __be32 *ptr = (const __be32 *)(th + 1);
|
||||
|
||||
|
@ -1993,7 +1993,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
#define MAX_TUNING_LOOP 40
|
||||
|
||||
@@ -3209,7 +3209,7 @@ static void sdhci_timeout_timer(struct t
|
||||
@@ -3212,7 +3212,7 @@ static void sdhci_timeout_timer(struct t
|
||||
spin_lock_irqsave(&host->lock, flags);
|
||||
|
||||
if (host->cmd && !sdhci_data_line_cmd(host->cmd)) {
|
||||
@ -2002,7 +2002,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
mmc_hostname(host->mmc));
|
||||
sdhci_err_stats_inc(host, REQ_TIMEOUT);
|
||||
sdhci_dumpregs(host);
|
||||
@@ -3232,7 +3232,7 @@ static void sdhci_timeout_data_timer(str
|
||||
@@ -3235,7 +3235,7 @@ static void sdhci_timeout_data_timer(str
|
||||
|
||||
if (host->data || host->data_cmd ||
|
||||
(host->cmd && sdhci_data_line_cmd(host->cmd))) {
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
|
||||
--- a/drivers/gpu/drm/panel/panel-simple.c
|
||||
+++ b/drivers/gpu/drm/panel/panel-simple.c
|
||||
@@ -3375,6 +3375,31 @@ static const struct panel_desc rocktech_
|
||||
@@ -3376,6 +3376,31 @@ static const struct panel_desc rocktech_
|
||||
.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 = {
|
||||
.pixelclock = { 26400000, 33300000, 46800000 },
|
||||
.hactive = { 800, 800, 800 },
|
||||
@@ -4426,6 +4451,9 @@ static const struct of_device_id platfor
|
||||
@@ -4427,6 +4452,9 @@ static const struct of_device_id platfor
|
||||
.compatible = "rocktech,rk043fn48h",
|
||||
.data = &rocktech_rk043fn48h,
|
||||
}, {
|
||||
|
@ -46,7 +46,7 @@ Acked-by: Maxime Ripard <maxime@cerno.tech>
|
||||
static const struct drm_display_mode giantplus_gpg482739qs5_mode = {
|
||||
.clock = 9000,
|
||||
.hdisplay = 480,
|
||||
@@ -4301,6 +4327,9 @@ static const struct of_device_id platfor
|
||||
@@ -4302,6 +4328,9 @@ static const struct of_device_id platfor
|
||||
.compatible = "friendlyarm,hd702e",
|
||||
.data = &friendlyarm_hd702e,
|
||||
}, {
|
||||
|
@ -48,7 +48,7 @@ Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
|
||||
/*
|
||||
* A cached value of the page's pageblock's migratetype, used when the page is
|
||||
* put on a pcplist. Used to avoid the pageblock migratetype lookup when
|
||||
@@ -2090,12 +2111,13 @@ __rmqueue(struct zone *zone, unsigned in
|
||||
@@ -2095,12 +2116,13 @@ __rmqueue(struct zone *zone, unsigned in
|
||||
if (IS_ENABLED(CONFIG_CMA)) {
|
||||
/*
|
||||
* Balance movable allocations between regular and CMA areas by
|
||||
|
@ -1,37 +0,0 @@
|
||||
From 79f7bcfff7a02fd32019cac8df7908dd61e1c7f7 Mon Sep 17 00:00:00 2001
|
||||
From: Mark Williams <mwp@mwp.id.au>
|
||||
Date: Wed, 7 Dec 2022 18:20:40 -0700
|
||||
Subject: [PATCH 0398/1085] drm/panel: panel-ilitek9881c: Use cansleep methods
|
||||
|
||||
Use cansleep version of gpiod_set_value so external IO drivers (like
|
||||
via I2C) can be used.
|
||||
|
||||
Signed-off-by: Mark Williams <mwp@mwp.id.au>
|
||||
---
|
||||
drivers/gpu/drm/panel/panel-ilitek-ili9881c.c | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
--- a/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c
|
||||
+++ b/drivers/gpu/drm/panel/panel-ilitek-ili9881c.c
|
||||
@@ -1107,10 +1107,10 @@ static int ili9881c_prepare(struct drm_p
|
||||
msleep(5);
|
||||
|
||||
/* And reset it */
|
||||
- gpiod_set_value(ctx->reset, 1);
|
||||
+ gpiod_set_value_cansleep(ctx->reset, 1);
|
||||
msleep(20);
|
||||
|
||||
- gpiod_set_value(ctx->reset, 0);
|
||||
+ gpiod_set_value_cansleep(ctx->reset, 0);
|
||||
msleep(20);
|
||||
|
||||
for (i = 0; i < ctx->desc->init_length; i++) {
|
||||
@@ -1165,7 +1165,7 @@ static int ili9881c_unprepare(struct drm
|
||||
|
||||
mipi_dsi_dcs_enter_sleep_mode(ctx->dsi);
|
||||
regulator_disable(ctx->power);
|
||||
- gpiod_set_value(ctx->reset, 1);
|
||||
+ gpiod_set_value_cansleep(ctx->reset, 1);
|
||||
|
||||
return 0;
|
||||
}
|
@ -165,7 +165,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
static const struct drm_display_mode innolux_at070tn92_mode = {
|
||||
.clock = 33333,
|
||||
.hdisplay = 800,
|
||||
@@ -4351,6 +4383,9 @@ static const struct of_device_id platfor
|
||||
@@ -4352,6 +4384,9 @@ static const struct of_device_id platfor
|
||||
.compatible = "innolux,at043tn24",
|
||||
.data = &innolux_at043tn24,
|
||||
}, {
|
||||
|
@ -63,7 +63,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
#include "sdhci-cqhci.h"
|
||||
#include "sdhci-pltfm.h"
|
||||
@@ -26,18 +28,43 @@
|
||||
@@ -27,18 +29,43 @@
|
||||
|
||||
#define BRCMSTB_PRIV_FLAGS_HAS_CQE BIT(0)
|
||||
#define BRCMSTB_PRIV_FLAGS_GATE_CLOCK BIT(1)
|
||||
@ -107,7 +107,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
struct sdhci_ops *ops;
|
||||
const unsigned int flags;
|
||||
};
|
||||
@@ -94,6 +121,124 @@ static void sdhci_brcmstb_set_clock(stru
|
||||
@@ -95,6 +122,124 @@ static void sdhci_brcmstb_set_clock(stru
|
||||
sdhci_enable_clk(host, clk);
|
||||
}
|
||||
|
||||
@ -232,7 +232,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static void sdhci_brcmstb_set_uhs_signaling(struct sdhci_host *host,
|
||||
unsigned int timing)
|
||||
{
|
||||
@@ -123,6 +268,146 @@ static void sdhci_brcmstb_set_uhs_signal
|
||||
@@ -124,6 +269,146 @@ static void sdhci_brcmstb_set_uhs_signal
|
||||
sdhci_writew(host, ctrl_2, SDHCI_HOST_CONTROL2);
|
||||
}
|
||||
|
||||
@ -379,7 +379,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static void sdhci_brcmstb_dumpregs(struct mmc_host *mmc)
|
||||
{
|
||||
sdhci_dumpregs(mmc_priv(mmc));
|
||||
@@ -155,6 +440,21 @@ static struct sdhci_ops sdhci_brcmstb_op
|
||||
@@ -156,6 +441,21 @@ static struct sdhci_ops sdhci_brcmstb_op
|
||||
.set_uhs_signaling = sdhci_set_uhs_signaling,
|
||||
};
|
||||
|
||||
@ -401,7 +401,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static struct sdhci_ops sdhci_brcmstb_ops_7216 = {
|
||||
.set_clock = sdhci_brcmstb_set_clock,
|
||||
.set_bus_width = sdhci_set_bus_width,
|
||||
@@ -179,10 +479,16 @@ static const struct brcmstb_match_priv m
|
||||
@@ -180,10 +480,16 @@ static const struct brcmstb_match_priv m
|
||||
.ops = &sdhci_brcmstb_ops_7216,
|
||||
};
|
||||
|
||||
@ -418,7 +418,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
{},
|
||||
};
|
||||
|
||||
@@ -255,6 +561,8 @@ static int sdhci_brcmstb_probe(struct pl
|
||||
@@ -256,6 +562,8 @@ static int sdhci_brcmstb_probe(struct pl
|
||||
struct sdhci_brcmstb_priv *priv;
|
||||
u32 actual_clock_mhz;
|
||||
struct sdhci_host *host;
|
||||
@ -427,7 +427,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
struct clk *clk;
|
||||
struct clk *base_clk = NULL;
|
||||
int res;
|
||||
@@ -283,6 +591,11 @@ static int sdhci_brcmstb_probe(struct pl
|
||||
@@ -284,6 +592,11 @@ static int sdhci_brcmstb_probe(struct pl
|
||||
match_priv->ops->irq = sdhci_brcmstb_cqhci_irq;
|
||||
}
|
||||
|
||||
@ -439,7 +439,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
/* Map in the non-standard CFG registers */
|
||||
priv->cfg_regs = devm_platform_get_and_ioremap_resource(pdev, 1, NULL);
|
||||
if (IS_ERR(priv->cfg_regs)) {
|
||||
@@ -295,6 +608,43 @@ static int sdhci_brcmstb_probe(struct pl
|
||||
@@ -296,6 +609,43 @@ static int sdhci_brcmstb_probe(struct pl
|
||||
if (res)
|
||||
goto err;
|
||||
|
||||
@ -483,7 +483,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
/*
|
||||
* Automatic clock gating does not work for SD cards that may
|
||||
* voltage switch so only enable it for non-removable devices.
|
||||
@@ -311,6 +661,13 @@ static int sdhci_brcmstb_probe(struct pl
|
||||
@@ -312,6 +662,13 @@ static int sdhci_brcmstb_probe(struct pl
|
||||
(host->mmc->caps2 & MMC_CAP2_HS400_ES))
|
||||
host->mmc_host_ops.hs400_enhanced_strobe = match_priv->hs400es;
|
||||
|
||||
|
@ -26,7 +26,7 @@ sdhci: remove PYA0_INTR_BUG quirk. Add quirks to disable some of the higher SDR
|
||||
static int dwcmshc_rk35xx_init(struct sdhci_host *host, struct dwcmshc_priv *dwc_priv)
|
||||
--- a/drivers/mmc/host/sdhci.c
|
||||
+++ b/drivers/mmc/host/sdhci.c
|
||||
@@ -3047,6 +3047,15 @@ static void sdhci_card_event(struct mmc_
|
||||
@@ -3050,6 +3050,15 @@ static void sdhci_card_event(struct mmc_
|
||||
spin_unlock_irqrestore(&host->lock, flags);
|
||||
}
|
||||
|
||||
@ -42,7 +42,7 @@ sdhci: remove PYA0_INTR_BUG quirk. Add quirks to disable some of the higher SDR
|
||||
static const struct mmc_host_ops sdhci_ops = {
|
||||
.request = sdhci_request,
|
||||
.post_req = sdhci_post_req,
|
||||
@@ -3062,6 +3071,7 @@ static const struct mmc_host_ops sdhci_o
|
||||
@@ -3065,6 +3074,7 @@ static const struct mmc_host_ops sdhci_o
|
||||
.execute_tuning = sdhci_execute_tuning,
|
||||
.card_event = sdhci_card_event,
|
||||
.card_busy = sdhci_card_busy,
|
||||
@ -50,7 +50,7 @@ sdhci: remove PYA0_INTR_BUG quirk. Add quirks to disable some of the higher SDR
|
||||
};
|
||||
|
||||
/*****************************************************************************\
|
||||
@@ -4580,6 +4590,15 @@ int sdhci_setup_host(struct sdhci_host *
|
||||
@@ -4583,6 +4593,15 @@ int sdhci_setup_host(struct sdhci_host *
|
||||
!(host->quirks2 & SDHCI_QUIRK2_BROKEN_DDR50))
|
||||
mmc->caps |= MMC_CAP_UHS_DDR50;
|
||||
|
||||
|
@ -212,7 +212,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
},
|
||||
--- a/drivers/usb/dwc3/core.c
|
||||
+++ b/drivers/usb/dwc3/core.c
|
||||
@@ -1163,6 +1163,24 @@ static void dwc3_config_threshold(struct
|
||||
@@ -1181,6 +1181,24 @@ static void dwc3_config_threshold(struct
|
||||
}
|
||||
}
|
||||
|
||||
@ -237,7 +237,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
/**
|
||||
* dwc3_core_init - Low-level initialization of DWC3 Core
|
||||
* @dwc: Pointer to our controller context structure
|
||||
@@ -1228,6 +1246,8 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
@@ -1246,6 +1264,8 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
|
||||
dwc3_set_incr_burst_type(dwc);
|
||||
|
||||
@ -246,7 +246,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
ret = dwc3_phy_power_on(dwc);
|
||||
if (ret)
|
||||
goto err_exit_phy;
|
||||
@@ -1302,6 +1322,24 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
@@ -1320,6 +1340,24 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
|
||||
dwc3_config_threshold(dwc);
|
||||
|
||||
@ -271,7 +271,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
return 0;
|
||||
|
||||
err_power_off_phy:
|
||||
@@ -1445,6 +1483,7 @@ static void dwc3_get_properties(struct d
|
||||
@@ -1463,6 +1501,7 @@ static void dwc3_get_properties(struct d
|
||||
u8 tx_thr_num_pkt_prd = 0;
|
||||
u8 tx_max_burst_prd = 0;
|
||||
u8 tx_fifo_resize_max_num;
|
||||
@ -279,7 +279,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
const char *usb_psy_name;
|
||||
int ret;
|
||||
|
||||
@@ -1467,6 +1506,9 @@ static void dwc3_get_properties(struct d
|
||||
@@ -1485,6 +1524,9 @@ static void dwc3_get_properties(struct d
|
||||
*/
|
||||
tx_fifo_resize_max_num = 6;
|
||||
|
||||
@ -289,7 +289,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
dwc->maximum_speed = usb_get_maximum_speed(dev);
|
||||
dwc->max_ssp_rate = usb_get_maximum_ssp_rate(dev);
|
||||
dwc->dr_mode = usb_get_dr_mode(dev);
|
||||
@@ -1588,6 +1630,9 @@ static void dwc3_get_properties(struct d
|
||||
@@ -1606,6 +1648,9 @@ static void dwc3_get_properties(struct d
|
||||
dwc->dis_split_quirk = device_property_read_bool(dev,
|
||||
"snps,dis-split-quirk");
|
||||
|
||||
@ -299,7 +299,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
dwc->lpm_nyet_threshold = lpm_nyet_threshold;
|
||||
dwc->tx_de_emphasis = tx_de_emphasis;
|
||||
|
||||
@@ -1605,6 +1650,8 @@ static void dwc3_get_properties(struct d
|
||||
@@ -1623,6 +1668,8 @@ static void dwc3_get_properties(struct d
|
||||
dwc->tx_thr_num_pkt_prd = tx_thr_num_pkt_prd;
|
||||
dwc->tx_max_burst_prd = tx_max_burst_prd;
|
||||
|
||||
@ -308,7 +308,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
dwc->imod_interval = 0;
|
||||
|
||||
dwc->tx_fifo_resize_max_num = tx_fifo_resize_max_num;
|
||||
@@ -1880,6 +1927,12 @@ static int dwc3_probe(struct platform_de
|
||||
@@ -1898,6 +1945,12 @@ static int dwc3_probe(struct platform_de
|
||||
|
||||
dwc3_get_properties(dwc);
|
||||
|
||||
@ -341,7 +341,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
* @hsphy_interface: "utmi" or "ulpi"
|
||||
* @connected: true when we're connected to a host, false otherwise
|
||||
* @softconnect: true when gadget connect is called, false when disconnect runs
|
||||
@@ -1293,6 +1297,7 @@ struct dwc3 {
|
||||
@@ -1294,6 +1298,7 @@ struct dwc3 {
|
||||
u8 tx_max_burst_prd;
|
||||
u8 tx_fifo_resize_max_num;
|
||||
u8 clear_stall_protocol;
|
||||
|
@ -16,7 +16,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
|
||||
--- a/drivers/gpu/drm/panel/panel-simple.c
|
||||
+++ b/drivers/gpu/drm/panel/panel-simple.c
|
||||
@@ -3437,11 +3437,11 @@ static const struct panel_desc rocktech_
|
||||
@@ -3438,11 +3438,11 @@ static const struct panel_desc rocktech_
|
||||
};
|
||||
|
||||
static const struct drm_display_mode raspberrypi_7inch_mode = {
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
|
||||
--- a/drivers/gpu/drm/drm_fb_helper.c
|
||||
+++ b/drivers/gpu/drm/drm_fb_helper.c
|
||||
@@ -1837,7 +1837,7 @@ __drm_fb_helper_initial_config_and_unloc
|
||||
@@ -1840,7 +1840,7 @@ __drm_fb_helper_initial_config_and_unloc
|
||||
struct drm_device *dev = fb_helper->dev;
|
||||
struct fb_info *info;
|
||||
unsigned int width, height;
|
||||
|
@ -36,7 +36,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
sdhci_writew(host, SDHCI_MAKE_CMD(cmd->opcode, flags), SDHCI_COMMAND);
|
||||
|
||||
return true;
|
||||
@@ -3306,6 +3312,11 @@ static void sdhci_cmd_irq(struct sdhci_h
|
||||
@@ -3309,6 +3315,11 @@ static void sdhci_cmd_irq(struct sdhci_h
|
||||
if (intmask & SDHCI_INT_TIMEOUT) {
|
||||
host->cmd->error = -ETIMEDOUT;
|
||||
sdhci_err_stats_inc(host, CMD_TIMEOUT);
|
||||
|
@ -23,7 +23,7 @@ Signed-off-by: Timon Skerutsch <kernel@diodes-delight.com>
|
||||
|
||||
/**
|
||||
* struct panel_desc - Describes a simple panel.
|
||||
@@ -4874,6 +4875,9 @@ static const struct panel_desc_dsi osd10
|
||||
@@ -4875,6 +4876,9 @@ static const struct panel_desc_dsi osd10
|
||||
.lanes = 4,
|
||||
};
|
||||
|
||||
@ -33,7 +33,7 @@ Signed-off-by: Timon Skerutsch <kernel@diodes-delight.com>
|
||||
static const struct of_device_id dsi_of_match[] = {
|
||||
{
|
||||
.compatible = "auo,b080uan01",
|
||||
@@ -4897,20 +4901,137 @@ static const struct of_device_id dsi_of_
|
||||
@@ -4898,20 +4902,137 @@ static const struct of_device_id dsi_of_
|
||||
.compatible = "osddisplays,osd101t2045-53ts",
|
||||
.data = &osd101t2045_53ts
|
||||
}, {
|
||||
|
@ -26,7 +26,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
default ARCH_BRCMSTB || BMIPS_GENERIC
|
||||
--- a/drivers/mmc/host/sdhci-brcmstb.c
|
||||
+++ b/drivers/mmc/host/sdhci-brcmstb.c
|
||||
@@ -49,10 +49,6 @@ struct sdhci_brcmstb_priv {
|
||||
@@ -50,10 +50,6 @@ struct sdhci_brcmstb_priv {
|
||||
unsigned int flags;
|
||||
struct clk *base_clk;
|
||||
u32 base_freq_hz;
|
||||
@ -37,7 +37,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
struct regulator *sde_1v8;
|
||||
struct device_node *sde_pcie;
|
||||
void *__iomem sde_ioaddr;
|
||||
@@ -121,113 +117,6 @@ static void sdhci_brcmstb_set_clock(stru
|
||||
@@ -122,113 +118,6 @@ static void sdhci_brcmstb_set_clock(stru
|
||||
sdhci_enable_clk(host, clk);
|
||||
}
|
||||
|
||||
@ -151,7 +151,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static void sdhci_brcmstb_set_power(struct sdhci_host *host, unsigned char mode,
|
||||
unsigned short vdd)
|
||||
{
|
||||
@@ -441,12 +330,6 @@ static struct sdhci_ops sdhci_brcmstb_op
|
||||
@@ -442,12 +331,6 @@ static struct sdhci_ops sdhci_brcmstb_op
|
||||
};
|
||||
|
||||
static struct sdhci_ops sdhci_brcmstb_ops_2712 = {
|
||||
|
@ -16,7 +16,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/usb/dwc3/core.c
|
||||
+++ b/drivers/usb/dwc3/core.c
|
||||
@@ -1312,6 +1312,9 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
@@ -1330,6 +1330,9 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
if (dwc->parkmode_disable_hs_quirk)
|
||||
reg |= DWC3_GUCTL1_PARKMODE_DISABLE_HS;
|
||||
|
||||
@ -26,7 +26,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
if (DWC3_VER_IS_WITHIN(DWC3, 290A, ANY) &&
|
||||
(dwc->maximum_speed == USB_SPEED_HIGH ||
|
||||
dwc->maximum_speed == USB_SPEED_FULL))
|
||||
@@ -1610,6 +1613,8 @@ static void dwc3_get_properties(struct d
|
||||
@@ -1628,6 +1631,8 @@ static void dwc3_get_properties(struct d
|
||||
"snps,parkmode-disable-ss-quirk");
|
||||
dwc->parkmode_disable_hs_quirk = device_property_read_bool(dev,
|
||||
"snps,parkmode-disable-hs-quirk");
|
||||
@ -62,7 +62,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
* @tx_de_emphasis_quirk: set if we enable Tx de-emphasis quirk
|
||||
* @tx_de_emphasis: Tx de-emphasis value
|
||||
* 0 - -6dB de-emphasis
|
||||
@@ -1341,6 +1344,7 @@ struct dwc3 {
|
||||
@@ -1342,6 +1345,7 @@ struct dwc3 {
|
||||
unsigned ulpi_ext_vbus_drv:1;
|
||||
unsigned parkmode_disable_ss_quirk:1;
|
||||
unsigned parkmode_disable_hs_quirk:1;
|
||||
|
@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/mmc/host/sdhci-brcmstb.c
|
||||
+++ b/drivers/mmc/host/sdhci-brcmstb.c
|
||||
@@ -38,7 +38,8 @@
|
||||
@@ -39,7 +39,8 @@
|
||||
|
||||
#define SDIO_CFG_SD_PIN_SEL 0x44
|
||||
#define SDIO_CFG_SD_PIN_SEL_MASK 0x3
|
||||
@ -32,7 +32,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
#define SDIO_CFG_MAX_50MHZ_MODE 0x1ac
|
||||
#define SDIO_CFG_MAX_50MHZ_MODE_STRAP_OVERRIDE BIT(31)
|
||||
@@ -102,6 +103,42 @@ static void sdhci_brcmstb_hs400es(struct
|
||||
@@ -103,6 +104,42 @@ static void sdhci_brcmstb_hs400es(struct
|
||||
writel(reg, host->ioaddr + SDHCI_VENDOR);
|
||||
}
|
||||
|
||||
@ -75,7 +75,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static void sdhci_brcmstb_set_clock(struct sdhci_host *host, unsigned int clock)
|
||||
{
|
||||
u16 clk;
|
||||
@@ -161,22 +198,16 @@ static void sdhci_brcmstb_cfginit_2712(s
|
||||
@@ -162,22 +199,16 @@ static void sdhci_brcmstb_cfginit_2712(s
|
||||
{
|
||||
struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
|
||||
struct sdhci_brcmstb_priv *brcmstb_priv = sdhci_pltfm_priv(pltfm_host);
|
||||
@ -102,7 +102,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
reg = readl(brcmstb_priv->cfg_regs + SDIO_CFG_MAX_50MHZ_MODE);
|
||||
reg &= ~SDIO_CFG_MAX_50MHZ_MODE_ENABLE;
|
||||
reg |= SDIO_CFG_MAX_50MHZ_MODE_STRAP_OVERRIDE;
|
||||
@@ -190,12 +221,6 @@ static void sdhci_brcmstb_cfginit_2712(s
|
||||
@@ -191,12 +222,6 @@ static void sdhci_brcmstb_cfginit_2712(s
|
||||
reg &= ~SDIO_CFG_CTRL_SDCD_N_TEST_LEV;
|
||||
reg |= SDIO_CFG_CTRL_SDCD_N_TEST_EN;
|
||||
writel(reg, brcmstb_priv->cfg_regs + SDIO_CFG_CTRL);
|
||||
@ -115,7 +115,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
}
|
||||
}
|
||||
|
||||
@@ -330,7 +355,7 @@ static struct sdhci_ops sdhci_brcmstb_op
|
||||
@@ -331,7 +356,7 @@ static struct sdhci_ops sdhci_brcmstb_op
|
||||
};
|
||||
|
||||
static struct sdhci_ops sdhci_brcmstb_ops_2712 = {
|
||||
|
@ -17,7 +17,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/mmc/host/sdhci-brcmstb.c
|
||||
+++ b/drivers/mmc/host/sdhci-brcmstb.c
|
||||
@@ -41,6 +41,9 @@
|
||||
@@ -42,6 +42,9 @@
|
||||
#define SDIO_CFG_SD_PIN_SEL_SD BIT(1)
|
||||
#define SDIO_CFG_SD_PIN_SEL_MMC BIT(0)
|
||||
|
||||
@ -27,7 +27,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
#define SDIO_CFG_MAX_50MHZ_MODE 0x1ac
|
||||
#define SDIO_CFG_MAX_50MHZ_MODE_STRAP_OVERRIDE BIT(31)
|
||||
#define SDIO_CFG_MAX_50MHZ_MODE_ENABLE BIT(0)
|
||||
@@ -201,7 +204,7 @@ static void sdhci_brcmstb_cfginit_2712(s
|
||||
@@ -202,7 +205,7 @@ static void sdhci_brcmstb_cfginit_2712(s
|
||||
u32 uhs_mask = (MMC_CAP_UHS_SDR50 | MMC_CAP_UHS_SDR104);
|
||||
u32 hsemmc_mask = (MMC_CAP2_HS200_1_8V_SDR | MMC_CAP2_HS200_1_2V_SDR |
|
||||
MMC_CAP2_HS400_1_8V | MMC_CAP2_HS400_1_2V);
|
||||
@ -36,7 +36,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
/*
|
||||
* If we support a speed that requires tuning,
|
||||
@@ -222,6 +225,11 @@ static void sdhci_brcmstb_cfginit_2712(s
|
||||
@@ -223,6 +226,11 @@ static void sdhci_brcmstb_cfginit_2712(s
|
||||
reg |= SDIO_CFG_CTRL_SDCD_N_TEST_EN;
|
||||
writel(reg, brcmstb_priv->cfg_regs + SDIO_CFG_CTRL);
|
||||
}
|
||||
@ -48,7 +48,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
}
|
||||
|
||||
static int bcm2712_init_sd_express(struct sdhci_host *host, struct mmc_ios *ios)
|
||||
@@ -493,6 +501,8 @@ static int sdhci_brcmstb_probe(struct pl
|
||||
@@ -494,6 +502,8 @@ static int sdhci_brcmstb_probe(struct pl
|
||||
return PTR_ERR(host);
|
||||
|
||||
pltfm_host = sdhci_priv(host);
|
||||
@ -57,7 +57,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
priv = sdhci_pltfm_priv(pltfm_host);
|
||||
if (device_property_read_bool(&pdev->dev, "supports-cqe")) {
|
||||
priv->flags |= BRCMSTB_PRIV_FLAGS_HAS_CQE;
|
||||
@@ -623,7 +633,6 @@ add_host:
|
||||
@@ -627,7 +637,6 @@ add_host:
|
||||
if (res)
|
||||
goto err;
|
||||
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/net/usb/ax88179_178a.c
|
||||
+++ b/drivers/net/usb/ax88179_178a.c
|
||||
@@ -1319,6 +1319,8 @@ static int ax88179_bind(struct usbnet *d
|
||||
@@ -1320,6 +1320,8 @@ static int ax88179_bind(struct usbnet *d
|
||||
|
||||
ax88179_reset(dev);
|
||||
|
||||
|
@ -17,7 +17,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/mmc/host/sdhci-brcmstb.c
|
||||
+++ b/drivers/mmc/host/sdhci-brcmstb.c
|
||||
@@ -338,6 +338,7 @@ static void sdhci_brcmstb_dumpregs(struc
|
||||
@@ -339,6 +339,7 @@ static void sdhci_brcmstb_dumpregs(struc
|
||||
static void sdhci_brcmstb_cqe_enable(struct mmc_host *mmc)
|
||||
{
|
||||
struct sdhci_host *host = mmc_priv(mmc);
|
||||
@ -25,7 +25,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
u32 reg;
|
||||
|
||||
reg = sdhci_readl(host, SDHCI_PRESENT_STATE);
|
||||
@@ -347,6 +348,9 @@ static void sdhci_brcmstb_cqe_enable(str
|
||||
@@ -348,6 +349,9 @@ static void sdhci_brcmstb_cqe_enable(str
|
||||
}
|
||||
|
||||
sdhci_cqe_enable(mmc);
|
||||
|
@ -14,7 +14,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/mmc/host/sdhci-brcmstb.c
|
||||
+++ b/drivers/mmc/host/sdhci-brcmstb.c
|
||||
@@ -400,6 +400,8 @@ static const struct brcmstb_match_priv m
|
||||
@@ -401,6 +401,8 @@ static const struct brcmstb_match_priv m
|
||||
};
|
||||
|
||||
static const struct brcmstb_match_priv match_priv_2712 = {
|
||||
|
@ -16,7 +16,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
|
||||
--- a/drivers/gpu/drm/panel/panel-simple.c
|
||||
+++ b/drivers/gpu/drm/panel/panel-simple.c
|
||||
@@ -3420,11 +3420,11 @@ static const struct drm_display_mode ras
|
||||
@@ -3421,11 +3421,11 @@ static const struct drm_display_mode ras
|
||||
.hdisplay = 800,
|
||||
.hsync_start = 800 + 59,
|
||||
.hsync_end = 800 + 59 + 2,
|
||||
|
@ -21,7 +21,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
|
||||
--- a/drivers/gpu/drm/panel/panel-simple.c
|
||||
+++ b/drivers/gpu/drm/panel/panel-simple.c
|
||||
@@ -3416,11 +3416,11 @@ static const struct panel_desc rocktech_
|
||||
@@ -3417,11 +3417,11 @@ static const struct panel_desc rocktech_
|
||||
};
|
||||
|
||||
static const struct drm_display_mode raspberrypi_7inch_mode = {
|
||||
|
@ -17,7 +17,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/mmc/host/sdhci-brcmstb.c
|
||||
+++ b/drivers/mmc/host/sdhci-brcmstb.c
|
||||
@@ -197,6 +197,20 @@ static void sdhci_brcmstb_set_uhs_signal
|
||||
@@ -198,6 +198,20 @@ static void sdhci_brcmstb_set_uhs_signal
|
||||
sdhci_writew(host, ctrl_2, SDHCI_HOST_CONTROL2);
|
||||
}
|
||||
|
||||
@ -38,7 +38,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static void sdhci_brcmstb_cfginit_2712(struct sdhci_host *host)
|
||||
{
|
||||
struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
|
||||
@@ -215,6 +229,8 @@ static void sdhci_brcmstb_cfginit_2712(s
|
||||
@@ -216,6 +230,8 @@ static void sdhci_brcmstb_cfginit_2712(s
|
||||
reg &= ~SDIO_CFG_MAX_50MHZ_MODE_ENABLE;
|
||||
reg |= SDIO_CFG_MAX_50MHZ_MODE_STRAP_OVERRIDE;
|
||||
writel(reg, brcmstb_priv->cfg_regs + SDIO_CFG_MAX_50MHZ_MODE);
|
||||
|
@ -24,7 +24,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
BUG_ON(data->blksz > host->mmc->max_blk_size);
|
||||
BUG_ON(data->blocks > 65535);
|
||||
|
||||
@@ -4724,11 +4724,16 @@ int sdhci_setup_host(struct sdhci_host *
|
||||
@@ -4727,11 +4727,16 @@ int sdhci_setup_host(struct sdhci_host *
|
||||
spin_lock_init(&host->lock);
|
||||
|
||||
/*
|
||||
|
@ -17,7 +17,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/mmc/host/sdhci-brcmstb.c
|
||||
+++ b/drivers/mmc/host/sdhci-brcmstb.c
|
||||
@@ -365,8 +365,21 @@ static void sdhci_brcmstb_cqe_enable(str
|
||||
@@ -366,8 +366,21 @@ static void sdhci_brcmstb_cqe_enable(str
|
||||
|
||||
sdhci_cqe_enable(mmc);
|
||||
|
||||
@ -41,7 +41,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
}
|
||||
|
||||
static const struct cqhci_host_ops sdhci_brcmstb_cqhci_ops = {
|
||||
@@ -386,7 +399,7 @@ static struct sdhci_ops sdhci_brcmstb_op
|
||||
@@ -387,7 +400,7 @@ static struct sdhci_ops sdhci_brcmstb_op
|
||||
.set_clock = sdhci_bcm2712_set_clock,
|
||||
.set_power = sdhci_brcmstb_set_power,
|
||||
.set_bus_width = sdhci_set_bus_width,
|
||||
|
@ -16,7 +16,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/mmc/host/sdhci-brcmstb.c
|
||||
+++ b/drivers/mmc/host/sdhci-brcmstb.c
|
||||
@@ -429,7 +429,6 @@ static const struct brcmstb_match_priv m
|
||||
@@ -430,7 +430,6 @@ static const struct brcmstb_match_priv m
|
||||
};
|
||||
|
||||
static const struct brcmstb_match_priv match_priv_2712 = {
|
||||
|
@ -0,0 +1,19 @@
|
||||
--- a/arch/arm64/net/bpf_jit_comp.c
|
||||
+++ b/arch/arm64/net/bpf_jit_comp.c
|
||||
@@ -1526,6 +1526,7 @@ struct bpf_prog *bpf_int_jit_compile(str
|
||||
bool extra_pass = false;
|
||||
struct jit_ctx ctx;
|
||||
u8 *image_ptr;
|
||||
+ int ret;
|
||||
|
||||
if (!prog->jit_requested)
|
||||
return orig_prog;
|
||||
@@ -1648,7 +1649,7 @@ skip_init_ctx:
|
||||
prog->jited_len = 0;
|
||||
goto out_off;
|
||||
}
|
||||
- bpf_jit_binary_lock_ro(header);
|
||||
+ ret = bpf_jit_binary_lock_ro(header);
|
||||
} else {
|
||||
jit_data->ctx = ctx;
|
||||
jit_data->image = image_ptr;
|
@ -235,7 +235,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
if (!pe)
|
||||
--- a/mm/vmalloc.c
|
||||
+++ b/mm/vmalloc.c
|
||||
@@ -4438,6 +4438,8 @@ static const struct seq_operations vmall
|
||||
@@ -4447,6 +4447,8 @@ static const struct seq_operations vmall
|
||||
|
||||
static int __init proc_vmalloc_init(void)
|
||||
{
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
--- a/net/netfilter/nf_tables_api.c
|
||||
+++ b/net/netfilter/nf_tables_api.c
|
||||
@@ -8268,7 +8268,7 @@ static int nft_register_flowtable_net_ho
|
||||
@@ -8267,7 +8267,7 @@ static int nft_register_flowtable_net_ho
|
||||
err = flowtable->data.type->setup(&flowtable->data,
|
||||
hook->ops.dev,
|
||||
FLOW_BLOCK_BIND);
|
||||
|
@ -83,20 +83,20 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
||||
ata_sff_port_init(ap);
|
||||
|
||||
return ap;
|
||||
@@ -5530,6 +5547,12 @@ static void ata_host_release(struct kref
|
||||
kfree(ap->pmp_link);
|
||||
kfree(ap->slave_link);
|
||||
kfree(ap->ncq_sense_buf);
|
||||
@@ -5507,6 +5524,12 @@ void ata_port_free(struct ata_port *ap)
|
||||
kfree(ap->pmp_link);
|
||||
kfree(ap->slave_link);
|
||||
kfree(ap->ncq_sense_buf);
|
||||
+#ifdef CONFIG_ATA_LEDS
|
||||
+ if (ap->ledtrig) {
|
||||
+ led_trigger_unregister(ap->ledtrig);
|
||||
+ kfree(ap->ledtrig);
|
||||
+ };
|
||||
+ if (ap->ledtrig) {
|
||||
+ led_trigger_unregister(ap->ledtrig);
|
||||
+ kfree(ap->ledtrig);
|
||||
+ };
|
||||
+#endif
|
||||
kfree(ap);
|
||||
host->ports[i] = NULL;
|
||||
}
|
||||
@@ -5920,7 +5943,23 @@ int ata_host_register(struct ata_host *h
|
||||
kfree(ap);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(ata_port_free);
|
||||
@@ -5927,7 +5950,23 @@ int ata_host_register(struct ata_host *h
|
||||
host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
|
||||
host->ports[i]->local_port_no = i + 1;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user