kernel: bump 6.6 to 6.6.88
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.88 Manually rebased: - bcm27xx/patches-6.6/950-0327-media-i2c-ov7251-Make-the-enable-GPIO-optional.patch[1] - bcm27xx/patches-6.6/950-0521-PCI-brcmstb-Add-BCM2712-support.patch[2] - generic/hack-6.6/610-net-page_pool-try-to-free-deferred-skbs-while-waitin.patch[3] - generic/pending-6.6/734-net-ethernet-mediatek-enlarge-DMA-reserve-buffer.patch[4] All other patches automatically rebased. 1. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.88&id=f249c05416ea0bef24c9dbed0e653d2fad87b127 2. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.88&id=1fea7726276e5d6526ecd4e7ccb4c91a6135deb5 3. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.88&id=95f17738b86fd198924d874a5639bcdc49c7e5b8 4. https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.88&id=a2874f0dff63829d1f540003e2d83adb610ee64a Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com> Link: https://github.com/openwrt/openwrt/pull/18607 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
parent
a0f45a4f3f
commit
a72a2fd7e0
66 changed files with 170 additions and 162 deletions
|
@ -22,7 +22,7 @@ Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
|
||||||
|
|
||||||
--- a/drivers/of/irq.c
|
--- a/drivers/of/irq.c
|
||||||
+++ b/drivers/of/irq.c
|
+++ b/drivers/of/irq.c
|
||||||
@@ -89,6 +89,8 @@ EXPORT_SYMBOL_GPL(of_irq_find_parent);
|
@@ -94,6 +94,8 @@ EXPORT_SYMBOL_GPL(of_irq_find_parent);
|
||||||
* drawing board.
|
* drawing board.
|
||||||
*/
|
*/
|
||||||
static const char * const of_irq_imap_abusers[] = {
|
static const char * const of_irq_imap_abusers[] = {
|
||||||
|
|
|
@ -33,7 +33,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||||
#define USB_VENDOR_ID_BELKIN 0x050d
|
#define USB_VENDOR_ID_BELKIN 0x050d
|
||||||
#define USB_DEVICE_ID_FLIP_KVM 0x3201
|
#define USB_DEVICE_ID_FLIP_KVM 0x3201
|
||||||
|
|
||||||
@@ -1408,6 +1411,9 @@
|
@@ -1439,6 +1442,9 @@
|
||||||
#define USB_VENDOR_ID_XIAOMI 0x2717
|
#define USB_VENDOR_ID_XIAOMI 0x2717
|
||||||
#define USB_DEVICE_ID_MI_SILENT_MOUSE 0x5014
|
#define USB_DEVICE_ID_MI_SILENT_MOUSE 0x5014
|
||||||
|
|
||||||
|
|
|
@ -343,7 +343,7 @@ Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
|
||||||
+...
|
+...
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -20058,6 +20058,14 @@ T: git git://linuxtv.org/media_tree.git
|
@@ -20059,6 +20059,14 @@ T: git git://linuxtv.org/media_tree.git
|
||||||
F: Documentation/devicetree/bindings/media/i2c/sony,imx415.yaml
|
F: Documentation/devicetree/bindings/media/i2c/sony,imx415.yaml
|
||||||
F: drivers/media/i2c/imx415.c
|
F: drivers/media/i2c/imx415.c
|
||||||
|
|
||||||
|
|
|
@ -177,7 +177,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
+...
|
+...
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -20066,6 +20066,14 @@ T: git git://linuxtv.org/media_tree.git
|
@@ -20067,6 +20067,14 @@ T: git git://linuxtv.org/media_tree.git
|
||||||
F: Documentation/devicetree/bindings/media/i2c/imx477.yaml
|
F: Documentation/devicetree/bindings/media/i2c/imx477.yaml
|
||||||
F: drivers/media/i2c/imx477.c
|
F: drivers/media/i2c/imx477.c
|
||||||
|
|
||||||
|
|
|
@ -132,7 +132,7 @@ Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
|
||||||
+...
|
+...
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -20063,6 +20063,7 @@ M: Raspberry Pi Kernel Maintenance <kern
|
@@ -20064,6 +20064,7 @@ M: Raspberry Pi Kernel Maintenance <kern
|
||||||
L: linux-media@vger.kernel.org
|
L: linux-media@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
T: git git://linuxtv.org/media_tree.git
|
T: git git://linuxtv.org/media_tree.git
|
||||||
|
|
|
@ -13,7 +13,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||||
|
|
||||||
--- a/drivers/media/i2c/ov7251.c
|
--- a/drivers/media/i2c/ov7251.c
|
||||||
+++ b/drivers/media/i2c/ov7251.c
|
+++ b/drivers/media/i2c/ov7251.c
|
||||||
@@ -1541,7 +1541,7 @@ static int ov7251_init_ctrls(struct ov72
|
@@ -1543,7 +1543,7 @@ static int ov7251_init_ctrls(struct ov72
|
||||||
s64 pixel_rate;
|
s64 pixel_rate;
|
||||||
int hblank;
|
int hblank;
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||||
ov7251->ctrls.lock = &ov7251->lock;
|
ov7251->ctrls.lock = &ov7251->lock;
|
||||||
|
|
||||||
v4l2_ctrl_new_std(&ov7251->ctrls, &ov7251_ctrl_ops,
|
v4l2_ctrl_new_std(&ov7251->ctrls, &ov7251_ctrl_ops,
|
||||||
@@ -1600,6 +1600,7 @@ static int ov7251_init_ctrls(struct ov72
|
@@ -1602,6 +1602,7 @@ static int ov7251_init_ctrls(struct ov72
|
||||||
|
|
||||||
static int ov7251_probe(struct i2c_client *client)
|
static int ov7251_probe(struct i2c_client *client)
|
||||||
{
|
{
|
||||||
|
@ -30,7 +30,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||||
struct device *dev = &client->dev;
|
struct device *dev = &client->dev;
|
||||||
struct ov7251 *ov7251;
|
struct ov7251 *ov7251;
|
||||||
unsigned int rate = 0, clk_rate = 0;
|
unsigned int rate = 0, clk_rate = 0;
|
||||||
@@ -1690,6 +1691,15 @@ static int ov7251_probe(struct i2c_clien
|
@@ -1692,6 +1693,15 @@ static int ov7251_probe(struct i2c_clien
|
||||||
goto destroy_mutex;
|
goto destroy_mutex;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -14,13 +14,13 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||||
|
|
||||||
--- a/drivers/media/i2c/ov7251.c
|
--- a/drivers/media/i2c/ov7251.c
|
||||||
+++ b/drivers/media/i2c/ov7251.c
|
+++ b/drivers/media/i2c/ov7251.c
|
||||||
@@ -1676,7 +1676,8 @@ static int ov7251_probe(struct i2c_clien
|
@@ -1678,7 +1678,8 @@ static int ov7251_probe(struct i2c_clien
|
||||||
return PTR_ERR(ov7251->analog_regulator);
|
return PTR_ERR(ov7251->analog_regulator);
|
||||||
}
|
}
|
||||||
|
|
||||||
- ov7251->enable_gpio = devm_gpiod_get(dev, "enable", GPIOD_OUT_HIGH);
|
- ov7251->enable_gpio = devm_gpiod_get(dev, "enable", GPIOD_OUT_LOW);
|
||||||
+ ov7251->enable_gpio = devm_gpiod_get_optional(dev, "enable",
|
+ ov7251->enable_gpio = devm_gpiod_get_optional(dev, "enable",
|
||||||
+ GPIOD_OUT_HIGH);
|
+ GPIOD_OUT_LOW);
|
||||||
if (IS_ERR(ov7251->enable_gpio)) {
|
if (IS_ERR(ov7251->enable_gpio)) {
|
||||||
dev_err(dev, "cannot get enable gpio\n");
|
dev_err(dev, "cannot get enable gpio\n");
|
||||||
return PTR_ERR(ov7251->enable_gpio);
|
return PTR_ERR(ov7251->enable_gpio);
|
||||||
|
|
|
@ -15,7 +15,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||||
|
|
||||||
--- a/drivers/media/i2c/ov7251.c
|
--- a/drivers/media/i2c/ov7251.c
|
||||||
+++ b/drivers/media/i2c/ov7251.c
|
+++ b/drivers/media/i2c/ov7251.c
|
||||||
@@ -1344,6 +1344,14 @@ static int ov7251_s_stream(struct v4l2_s
|
@@ -1346,6 +1346,14 @@ static int ov7251_s_stream(struct v4l2_s
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
goto err_power_down;
|
goto err_power_down;
|
||||||
|
|
||||||
|
|
|
@ -62,7 +62,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||||
static const unsigned long supported_xclk_rates[] = {
|
static const unsigned long supported_xclk_rates[] = {
|
||||||
[OV7251_19_2_MHZ] = 19200000,
|
[OV7251_19_2_MHZ] = 19200000,
|
||||||
[OV7251_24_MHZ] = 24000000,
|
[OV7251_24_MHZ] = 24000000,
|
||||||
@@ -1372,6 +1384,23 @@ static int ov7251_s_stream(struct v4l2_s
|
@@ -1374,6 +1386,23 @@ static int ov7251_s_stream(struct v4l2_s
|
||||||
dev_err(ov7251->dev, "could not sync v4l2 controls\n");
|
dev_err(ov7251->dev, "could not sync v4l2 controls\n");
|
||||||
goto err_power_down;
|
goto err_power_down;
|
||||||
}
|
}
|
||||||
|
|
|
@ -138,7 +138,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||||
+...
|
+...
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -20107,6 +20107,14 @@ T: git git://linuxtv.org/media_tree.git
|
@@ -20108,6 +20108,14 @@ T: git git://linuxtv.org/media_tree.git
|
||||||
F: Documentation/devicetree/bindings/media/i2c/imx519.yaml
|
F: Documentation/devicetree/bindings/media/i2c/imx519.yaml
|
||||||
F: drivers/media/i2c/imx519.c
|
F: drivers/media/i2c/imx519.c
|
||||||
|
|
||||||
|
|
|
@ -271,7 +271,7 @@ Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
|
||||||
+...
|
+...
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -20112,7 +20112,7 @@ M: Raspberry Pi Kernel Maintenance <kern
|
@@ -20113,7 +20113,7 @@ M: Raspberry Pi Kernel Maintenance <kern
|
||||||
L: linux-media@vger.kernel.org
|
L: linux-media@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
T: git git://linuxtv.org/media_tree.git
|
T: git git://linuxtv.org/media_tree.git
|
||||||
|
|
|
@ -291,7 +291,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||||
+ };
|
+ };
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -20013,7 +20013,7 @@ M: Sakari Ailus <sakari.ailus@linux.inte
|
@@ -20014,7 +20014,7 @@ M: Sakari Ailus <sakari.ailus@linux.inte
|
||||||
L: linux-media@vger.kernel.org
|
L: linux-media@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
T: git git://linuxtv.org/media_tree.git
|
T: git git://linuxtv.org/media_tree.git
|
||||||
|
|
|
@ -1019,41 +1019,47 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||||
clk_disable_unprepare(pcie->clk);
|
clk_disable_unprepare(pcie->clk);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@@ -1599,6 +1970,33 @@ static int brcm_pcie_probe(struct platfo
|
@@ -1595,8 +1966,38 @@ static int brcm_pcie_probe(struct platfo
|
||||||
dev_err(pcie->dev, "probe of internal MSI failed");
|
if (pci_msi_enabled()) {
|
||||||
goto fail;
|
struct device_node *msi_np = of_parse_phandle(pcie->np, "msi-parent", 0);
|
||||||
}
|
|
||||||
+ } else if (pci_msi_enabled() && msi_np != pcie->np) {
|
|
||||||
+ /* Use RC_BAR1 for MIP access */
|
|
||||||
+ u64 msi_pci_addr;
|
|
||||||
+ u64 msi_phys_addr;
|
|
||||||
+
|
|
||||||
+ if (of_property_read_u64(msi_np, "brcm,msi-pci-addr", &msi_pci_addr)) {
|
|
||||||
+ dev_err(pcie->dev, "Unable to find MSI PCI address\n");
|
|
||||||
+ ret = -EINVAL;
|
|
||||||
+ goto fail;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (of_property_read_u64(msi_np, "reg", &msi_phys_addr)) {
|
|
||||||
+ dev_err(pcie->dev, "Unable to find MSI physical address\n");
|
|
||||||
+ ret = -EINVAL;
|
|
||||||
+ goto fail;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ writel(lower_32_bits(msi_pci_addr) | brcm_pcie_encode_ibar_size(0x1000),
|
|
||||||
+ pcie->base + PCIE_MISC_RC_BAR1_CONFIG_LO);
|
|
||||||
+ writel(upper_32_bits(msi_pci_addr),
|
|
||||||
+ pcie->base + PCIE_MISC_RC_BAR1_CONFIG_HI);
|
|
||||||
+
|
|
||||||
+ writel(lower_32_bits(msi_phys_addr) |
|
|
||||||
+ PCIE_MISC_UBUS_BAR1_CONFIG_REMAP_ACCESS_ENABLE_MASK,
|
|
||||||
+ pcie->base + PCIE_MISC_UBUS_BAR1_CONFIG_REMAP);
|
|
||||||
+ writel(upper_32_bits(msi_phys_addr),
|
|
||||||
+ pcie->base + PCIE_MISC_UBUS_BAR1_CONFIG_REMAP_HI);
|
|
||||||
}
|
|
||||||
|
|
||||||
bridge->ops = pcie->type == BCM7425 ? &brcm7425_pcie_ops : &brcm_pcie_ops;
|
- if (msi_np == pcie->np)
|
||||||
@@ -1615,6 +2013,8 @@ static int brcm_pcie_probe(struct platfo
|
+ if (msi_np == pcie->np) {
|
||||||
|
ret = brcm_pcie_enable_msi(pcie);
|
||||||
|
+ } else {
|
||||||
|
+ /* Use RC_BAR1 for MIP access */
|
||||||
|
+ u64 msi_pci_addr;
|
||||||
|
+ u64 msi_phys_addr;
|
||||||
|
+
|
||||||
|
+ if (of_property_read_u64(msi_np, "brcm,msi-pci-addr", &msi_pci_addr)) {
|
||||||
|
+ dev_err(pcie->dev, "Unable to find MSI PCI address\n");
|
||||||
|
+ ret = -EINVAL;
|
||||||
|
+ of_node_put(msi_np);
|
||||||
|
+ goto fail;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (of_property_read_u64(msi_np, "reg", &msi_phys_addr)) {
|
||||||
|
+ dev_err(pcie->dev, "Unable to find MSI physical address\n");
|
||||||
|
+ ret = -EINVAL;
|
||||||
|
+ of_node_put(msi_np);
|
||||||
|
+ goto fail;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ writel(lower_32_bits(msi_pci_addr) | brcm_pcie_encode_ibar_size(0x1000),
|
||||||
|
+ pcie->base + PCIE_MISC_RC_BAR1_CONFIG_LO);
|
||||||
|
+ writel(upper_32_bits(msi_pci_addr),
|
||||||
|
+ pcie->base + PCIE_MISC_RC_BAR1_CONFIG_HI);
|
||||||
|
+
|
||||||
|
+ writel(lower_32_bits(msi_phys_addr) |
|
||||||
|
+ PCIE_MISC_UBUS_BAR1_CONFIG_REMAP_ACCESS_ENABLE_MASK,
|
||||||
|
+ pcie->base + PCIE_MISC_UBUS_BAR1_CONFIG_REMAP);
|
||||||
|
+ writel(upper_32_bits(msi_phys_addr),
|
||||||
|
+ pcie->base + PCIE_MISC_UBUS_BAR1_CONFIG_REMAP_HI);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
of_node_put(msi_np);
|
||||||
|
|
||||||
|
@@ -1620,6 +2021,8 @@ static int brcm_pcie_probe(struct platfo
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -460,6 +460,40 @@ static int dw_i2s_set_tdm_slot(struct sn
|
@@ -459,6 +459,40 @@ static int dw_i2s_set_tdm_slot(struct sn
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -51,7 +51,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
static int dw_i2s_dai_probe(struct snd_soc_dai *dai)
|
static int dw_i2s_dai_probe(struct snd_soc_dai *dai)
|
||||||
{
|
{
|
||||||
struct dw_i2s_dev *dev = snd_soc_dai_get_drvdata(dai);
|
struct dw_i2s_dev *dev = snd_soc_dai_get_drvdata(dai);
|
||||||
@@ -476,6 +510,7 @@ static const struct snd_soc_dai_ops dw_i
|
@@ -475,6 +509,7 @@ static const struct snd_soc_dai_ops dw_i
|
||||||
.trigger = dw_i2s_trigger,
|
.trigger = dw_i2s_trigger,
|
||||||
.set_fmt = dw_i2s_set_fmt,
|
.set_fmt = dw_i2s_set_fmt,
|
||||||
.set_tdm_slot = dw_i2s_set_tdm_slot,
|
.set_tdm_slot = dw_i2s_set_tdm_slot,
|
||||||
|
|
|
@ -14,7 +14,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -248,7 +248,7 @@ static void dw_i2s_config(struct dw_i2s_
|
@@ -247,7 +247,7 @@ static void dw_i2s_config(struct dw_i2s_
|
||||||
{
|
{
|
||||||
u32 ch_reg;
|
u32 ch_reg;
|
||||||
struct i2s_clk_config_data *config = &dev->config;
|
struct i2s_clk_config_data *config = &dev->config;
|
||||||
|
@ -23,7 +23,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
i2s_disable_channels(dev, stream);
|
i2s_disable_channels(dev, stream);
|
||||||
|
|
||||||
@@ -260,6 +260,7 @@ static void dw_i2s_config(struct dw_i2s_
|
@@ -259,6 +259,7 @@ static void dw_i2s_config(struct dw_i2s_
|
||||||
dev->fifo_th - 1);
|
dev->fifo_th - 1);
|
||||||
i2s_write_reg(dev->i2s_base, TER(ch_reg), TER_TXCHEN |
|
i2s_write_reg(dev->i2s_base, TER(ch_reg), TER_TXCHEN |
|
||||||
dev->tdm_mask << TER_TXSLOT_SHIFT);
|
dev->tdm_mask << TER_TXSLOT_SHIFT);
|
||||||
|
@ -31,7 +31,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
} else {
|
} else {
|
||||||
i2s_write_reg(dev->i2s_base, RCR(ch_reg),
|
i2s_write_reg(dev->i2s_base, RCR(ch_reg),
|
||||||
dev->xfer_resolution);
|
dev->xfer_resolution);
|
||||||
@@ -267,9 +268,15 @@ static void dw_i2s_config(struct dw_i2s_
|
@@ -266,9 +267,15 @@ static void dw_i2s_config(struct dw_i2s_
|
||||||
dev->fifo_th - 1);
|
dev->fifo_th - 1);
|
||||||
i2s_write_reg(dev->i2s_base, RER(ch_reg), RER_RXCHEN |
|
i2s_write_reg(dev->i2s_base, RER(ch_reg), RER_RXCHEN |
|
||||||
dev->tdm_mask << RER_RXSLOT_SHIFT);
|
dev->tdm_mask << RER_RXSLOT_SHIFT);
|
||||||
|
|
|
@ -22,7 +22,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
#include <sound/pcm.h>
|
#include <sound/pcm.h>
|
||||||
#include <sound/pcm_params.h>
|
#include <sound/pcm_params.h>
|
||||||
#include <sound/soc.h>
|
#include <sound/soc.h>
|
||||||
@@ -208,15 +208,10 @@ static void i2s_start(struct dw_i2s_dev
|
@@ -206,15 +206,10 @@ static void i2s_start(struct dw_i2s_dev
|
||||||
i2s_write_reg(dev->i2s_base, CER, 1);
|
i2s_write_reg(dev->i2s_base, CER, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -37,9 +37,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
- else
|
- else
|
||||||
- i2s_write_reg(dev->i2s_base, IRER, 0);
|
- i2s_write_reg(dev->i2s_base, IRER, 0);
|
||||||
|
|
||||||
if (dev->use_pio || dev->is_jh7110)
|
if (!(dev->use_pio || dev->is_jh7110))
|
||||||
i2s_disable_irqs(dev, substream->stream, 8);
|
i2s_disable_dma(dev, substream->stream);
|
||||||
@@ -225,23 +220,15 @@ static void i2s_stop(struct dw_i2s_dev *
|
@@ -224,23 +219,15 @@ static void i2s_stop(struct dw_i2s_dev *
|
||||||
|
|
||||||
if (!dev->active) {
|
if (!dev->active) {
|
||||||
i2s_write_reg(dev->i2s_base, CER, 0);
|
i2s_write_reg(dev->i2s_base, CER, 0);
|
||||||
|
@ -67,7 +67,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
}
|
}
|
||||||
|
|
||||||
static void dw_i2s_config(struct dw_i2s_dev *dev, int stream)
|
static void dw_i2s_config(struct dw_i2s_dev *dev, int stream)
|
||||||
@@ -354,6 +341,62 @@ static int dw_i2s_hw_params(struct snd_p
|
@@ -353,6 +340,62 @@ static int dw_i2s_hw_params(struct snd_p
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -130,7 +130,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
static int dw_i2s_prepare(struct snd_pcm_substream *substream,
|
static int dw_i2s_prepare(struct snd_pcm_substream *substream,
|
||||||
struct snd_soc_dai *dai)
|
struct snd_soc_dai *dai)
|
||||||
{
|
{
|
||||||
@@ -381,9 +424,12 @@ static int dw_i2s_trigger(struct snd_pcm
|
@@ -380,9 +423,12 @@ static int dw_i2s_trigger(struct snd_pcm
|
||||||
i2s_start(dev, substream);
|
i2s_start(dev, substream);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -144,7 +144,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
dev->active--;
|
dev->active--;
|
||||||
i2s_stop(dev, substream);
|
i2s_stop(dev, substream);
|
||||||
break;
|
break;
|
||||||
@@ -512,6 +558,7 @@ static int dw_i2s_dai_probe(struct snd_s
|
@@ -511,6 +557,7 @@ static int dw_i2s_dai_probe(struct snd_s
|
||||||
static const struct snd_soc_dai_ops dw_i2s_dai_ops = {
|
static const struct snd_soc_dai_ops dw_i2s_dai_ops = {
|
||||||
.probe = dw_i2s_dai_probe,
|
.probe = dw_i2s_dai_probe,
|
||||||
.startup = dw_i2s_startup,
|
.startup = dw_i2s_startup,
|
||||||
|
|
|
@ -22,7 +22,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -271,23 +271,34 @@ static int dw_i2s_hw_params(struct snd_p
|
@@ -270,23 +270,34 @@ static int dw_i2s_hw_params(struct snd_p
|
||||||
{
|
{
|
||||||
struct dw_i2s_dev *dev = snd_soc_dai_get_drvdata(dai);
|
struct dw_i2s_dev *dev = snd_soc_dai_get_drvdata(dai);
|
||||||
struct i2s_clk_config_data *config = &dev->config;
|
struct i2s_clk_config_data *config = &dev->config;
|
||||||
|
@ -57,7 +57,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
dev->ccr = 0x10;
|
dev->ccr = 0x10;
|
||||||
dev->xfer_resolution = 0x05;
|
dev->xfer_resolution = 0x05;
|
||||||
break;
|
break;
|
||||||
@@ -519,24 +530,21 @@ static int dw_i2s_set_bclk_ratio(struct
|
@@ -518,24 +529,21 @@ static int dw_i2s_set_bclk_ratio(struct
|
||||||
struct dw_i2s_dev *dev = snd_soc_dai_get_drvdata(cpu_dai);
|
struct dw_i2s_dev *dev = snd_soc_dai_get_drvdata(cpu_dai);
|
||||||
struct i2s_clk_config_data *config = &dev->config;
|
struct i2s_clk_config_data *config = &dev->config;
|
||||||
|
|
||||||
|
|
|
@ -18,7 +18,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -528,11 +528,8 @@ static int dw_i2s_set_bclk_ratio(struct
|
@@ -527,11 +527,8 @@ static int dw_i2s_set_bclk_ratio(struct
|
||||||
unsigned int ratio)
|
unsigned int ratio)
|
||||||
{
|
{
|
||||||
struct dw_i2s_dev *dev = snd_soc_dai_get_drvdata(cpu_dai);
|
struct dw_i2s_dev *dev = snd_soc_dai_get_drvdata(cpu_dai);
|
||||||
|
|
|
@ -18,7 +18,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||||
|
|
||||||
--- a/drivers/media/i2c/ov7251.c
|
--- a/drivers/media/i2c/ov7251.c
|
||||||
+++ b/drivers/media/i2c/ov7251.c
|
+++ b/drivers/media/i2c/ov7251.c
|
||||||
@@ -1063,7 +1063,7 @@ static int ov7251_s_ctrl(struct v4l2_ctr
|
@@ -1065,7 +1065,7 @@ static int ov7251_s_ctrl(struct v4l2_ctr
|
||||||
case V4L2_CID_EXPOSURE:
|
case V4L2_CID_EXPOSURE:
|
||||||
ret = ov7251_set_exposure(ov7251, ctrl->val);
|
ret = ov7251_set_exposure(ov7251, ctrl->val);
|
||||||
break;
|
break;
|
||||||
|
@ -27,7 +27,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||||
ret = ov7251_set_gain(ov7251, ctrl->val);
|
ret = ov7251_set_gain(ov7251, ctrl->val);
|
||||||
break;
|
break;
|
||||||
case V4L2_CID_TEST_PATTERN:
|
case V4L2_CID_TEST_PATTERN:
|
||||||
@@ -1588,7 +1588,7 @@ static int ov7251_init_ctrls(struct ov72
|
@@ -1590,7 +1590,7 @@ static int ov7251_init_ctrls(struct ov72
|
||||||
ov7251->exposure = v4l2_ctrl_new_std(&ov7251->ctrls, &ov7251_ctrl_ops,
|
ov7251->exposure = v4l2_ctrl_new_std(&ov7251->ctrls, &ov7251_ctrl_ops,
|
||||||
V4L2_CID_EXPOSURE, 1, 32, 1, 32);
|
V4L2_CID_EXPOSURE, 1, 32, 1, 32);
|
||||||
ov7251->gain = v4l2_ctrl_new_std(&ov7251->ctrls, &ov7251_ctrl_ops,
|
ov7251->gain = v4l2_ctrl_new_std(&ov7251->ctrls, &ov7251_ctrl_ops,
|
||||||
|
|
|
@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -796,7 +796,7 @@ static int dw_configure_dai_by_dt(struct
|
@@ -795,7 +795,7 @@ static int dw_configure_dai_by_dt(struct
|
||||||
u32 idx2;
|
u32 idx2;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -235,10 +235,17 @@ static void dw_i2s_config(struct dw_i2s_
|
@@ -234,10 +234,17 @@ static void dw_i2s_config(struct dw_i2s_
|
||||||
{
|
{
|
||||||
u32 ch_reg;
|
u32 ch_reg;
|
||||||
struct i2s_clk_config_data *config = &dev->config;
|
struct i2s_clk_config_data *config = &dev->config;
|
||||||
|
@ -34,7 +34,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
for (ch_reg = 0; ch_reg < (config->chan_nr / 2); ch_reg++) {
|
for (ch_reg = 0; ch_reg < (config->chan_nr / 2); ch_reg++) {
|
||||||
if (stream == SNDRV_PCM_STREAM_PLAYBACK) {
|
if (stream == SNDRV_PCM_STREAM_PLAYBACK) {
|
||||||
i2s_write_reg(dev->i2s_base, TCR(ch_reg),
|
i2s_write_reg(dev->i2s_base, TCR(ch_reg),
|
||||||
@@ -258,10 +265,6 @@ static void dw_i2s_config(struct dw_i2s_
|
@@ -257,10 +264,6 @@ static void dw_i2s_config(struct dw_i2s_
|
||||||
dmacr |= (DMACR_DMAEN_RXCH0 << ch_reg);
|
dmacr |= (DMACR_DMAEN_RXCH0 << ch_reg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -45,7 +45,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
i2s_write_reg(dev->i2s_base, I2S_DMACR, dmacr);
|
i2s_write_reg(dev->i2s_base, I2S_DMACR, dmacr);
|
||||||
}
|
}
|
||||||
@@ -370,10 +373,13 @@ static int dw_i2s_startup(struct snd_pcm
|
@@ -369,10 +372,13 @@ static int dw_i2s_startup(struct snd_pcm
|
||||||
|
|
||||||
dw_i2s_config(dev, substream->stream);
|
dw_i2s_config(dev, substream->stream);
|
||||||
dmacr = i2s_read_reg(dev->i2s_base, I2S_DMACR);
|
dmacr = i2s_read_reg(dev->i2s_base, I2S_DMACR);
|
||||||
|
|
|
@ -67,7 +67,7 @@ Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
|
||||||
+...
|
+...
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -18620,6 +18620,13 @@ S: Supported
|
@@ -18621,6 +18621,13 @@ S: Supported
|
||||||
F: drivers/iio/light/rohm-bu27008.c
|
F: drivers/iio/light/rohm-bu27008.c
|
||||||
F: drivers/iio/light/rohm-bu27034.c
|
F: drivers/iio/light/rohm-bu27034.c
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@ Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -15872,6 +15872,14 @@ S: Maintained
|
@@ -15873,6 +15873,14 @@ S: Maintained
|
||||||
T: git git://linuxtv.org/media_tree.git
|
T: git git://linuxtv.org/media_tree.git
|
||||||
F: drivers/media/i2c/ov5695.c
|
F: drivers/media/i2c/ov5695.c
|
||||||
|
|
||||||
|
|
|
@ -18,7 +18,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -314,6 +314,25 @@ static int dw_i2s_hw_params(struct snd_p
|
@@ -313,6 +313,25 @@ static int dw_i2s_hw_params(struct snd_p
|
||||||
if (dev->tdm_slots)
|
if (dev->tdm_slots)
|
||||||
config->data_width = 32;
|
config->data_width = 32;
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
config->chan_nr = params_channels(params);
|
config->chan_nr = params_channels(params);
|
||||||
|
|
||||||
switch (config->chan_nr) {
|
switch (config->chan_nr) {
|
||||||
@@ -537,23 +556,7 @@ static int dw_i2s_set_bclk_ratio(struct
|
@@ -536,23 +555,7 @@ static int dw_i2s_set_bclk_ratio(struct
|
||||||
|
|
||||||
dev_dbg(dev->dev, "%s(%d)\n", __func__, ratio);
|
dev_dbg(dev->dev, "%s(%d)\n", __func__, ratio);
|
||||||
|
|
||||||
|
@ -69,7 +69,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -1068,6 +1071,7 @@ static int dw_i2s_probe(struct platform_
|
@@ -1067,6 +1070,7 @@ static int dw_i2s_probe(struct platform_
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -288,21 +288,18 @@ static int dw_i2s_hw_params(struct snd_p
|
@@ -287,21 +287,18 @@ static int dw_i2s_hw_params(struct snd_p
|
||||||
case SNDRV_PCM_FORMAT_S16_LE:
|
case SNDRV_PCM_FORMAT_S16_LE:
|
||||||
config->data_width = 16;
|
config->data_width = 16;
|
||||||
dma_data->dt.addr_width = 2;
|
dma_data->dt.addr_width = 2;
|
||||||
|
@ -35,7 +35,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
dev->xfer_resolution = 0x05;
|
dev->xfer_resolution = 0x05;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -314,25 +311,6 @@ static int dw_i2s_hw_params(struct snd_p
|
@@ -313,25 +310,6 @@ static int dw_i2s_hw_params(struct snd_p
|
||||||
if (dev->tdm_slots)
|
if (dev->tdm_slots)
|
||||||
config->data_width = 32;
|
config->data_width = 32;
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
config->chan_nr = params_channels(params);
|
config->chan_nr = params_channels(params);
|
||||||
|
|
||||||
switch (config->chan_nr) {
|
switch (config->chan_nr) {
|
||||||
@@ -348,11 +326,31 @@ static int dw_i2s_hw_params(struct snd_p
|
@@ -347,11 +325,31 @@ static int dw_i2s_hw_params(struct snd_p
|
||||||
|
|
||||||
dw_i2s_config(dev, substream->stream);
|
dw_i2s_config(dev, substream->stream);
|
||||||
|
|
||||||
|
@ -95,7 +95,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
if (dev->i2s_clk_cfg) {
|
if (dev->i2s_clk_cfg) {
|
||||||
ret = dev->i2s_clk_cfg(config);
|
ret = dev->i2s_clk_cfg(config);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
@@ -360,8 +358,7 @@ static int dw_i2s_hw_params(struct snd_p
|
@@ -359,8 +357,7 @@ static int dw_i2s_hw_params(struct snd_p
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -105,7 +105,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
ret = clk_set_rate(dev->clk, bitclk);
|
ret = clk_set_rate(dev->clk, bitclk);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
@@ -370,6 +367,8 @@ static int dw_i2s_hw_params(struct snd_p
|
@@ -369,6 +366,8 @@ static int dw_i2s_hw_params(struct snd_p
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -320,7 +320,7 @@ static int dw_i2s_hw_params(struct snd_p
|
@@ -319,7 +319,7 @@ static int dw_i2s_hw_params(struct snd_p
|
||||||
case TWO_CHANNEL_SUPPORT:
|
case TWO_CHANNEL_SUPPORT:
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -708,7 +708,7 @@ static int dw_configure_dai(struct dw_i2
|
@@ -707,7 +707,7 @@ static int dw_configure_dai(struct dw_i2
|
||||||
idx = 1;
|
idx = 1;
|
||||||
dw_i2s_dai->playback.channels_min = MIN_CHANNEL_NUM;
|
dw_i2s_dai->playback.channels_min = MIN_CHANNEL_NUM;
|
||||||
dw_i2s_dai->playback.channels_max =
|
dw_i2s_dai->playback.channels_max =
|
||||||
|
@ -35,7 +35,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||||
dw_i2s_dai->playback.formats = formats[idx];
|
dw_i2s_dai->playback.formats = formats[idx];
|
||||||
dw_i2s_dai->playback.rates = rates;
|
dw_i2s_dai->playback.rates = rates;
|
||||||
}
|
}
|
||||||
@@ -722,7 +722,7 @@ static int dw_configure_dai(struct dw_i2
|
@@ -721,7 +721,7 @@ static int dw_configure_dai(struct dw_i2
|
||||||
idx = 1;
|
idx = 1;
|
||||||
dw_i2s_dai->capture.channels_min = MIN_CHANNEL_NUM;
|
dw_i2s_dai->capture.channels_min = MIN_CHANNEL_NUM;
|
||||||
dw_i2s_dai->capture.channels_max =
|
dw_i2s_dai->capture.channels_max =
|
||||||
|
|
|
@ -48,7 +48,7 @@ Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
|
||||||
drivers cannot. If you rely on getting the inactive state, use .duty_cycle=0,
|
drivers cannot. If you rely on getting the inactive state, use .duty_cycle=0,
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -17438,7 +17438,7 @@ F: drivers/video/backlight/pwm_bl.c
|
@@ -17439,7 +17439,7 @@ F: drivers/video/backlight/pwm_bl.c
|
||||||
F: include/dt-bindings/pwm/
|
F: include/dt-bindings/pwm/
|
||||||
F: include/linux/pwm.h
|
F: include/linux/pwm.h
|
||||||
F: include/linux/pwm_backlight.h
|
F: include/linux/pwm_backlight.h
|
||||||
|
|
|
@ -23,7 +23,7 @@ Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -18033,6 +18033,13 @@ L: linux-wireless@vger.kernel.org
|
@@ -18034,6 +18034,13 @@ L: linux-wireless@vger.kernel.org
|
||||||
S: Orphan
|
S: Orphan
|
||||||
F: drivers/net/wireless/legacy/ray*
|
F: drivers/net/wireless/legacy/ray*
|
||||||
|
|
||||||
|
|
|
@ -87,7 +87,7 @@ Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
|
||||||
+ };
|
+ };
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -18038,6 +18038,7 @@ M: Jacopo Mondi <jacopo.mondi@ideasonboa
|
@@ -18039,6 +18039,7 @@ M: Jacopo Mondi <jacopo.mondi@ideasonboa
|
||||||
L: Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com>
|
L: Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com>
|
||||||
L: linux-media@vger.kernel.org
|
L: linux-media@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
|
|
|
@ -94,7 +94,7 @@ Signed-off-by: Richard Oliver <richard.oliver@raspberrypi.com>
|
||||||
+
|
+
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -18028,6 +18028,11 @@ F: drivers/ras/
|
@@ -18029,6 +18029,11 @@ F: drivers/ras/
|
||||||
F: include/linux/ras.h
|
F: include/linux/ras.h
|
||||||
F: include/ras/ras_event.h
|
F: include/ras/ras_event.h
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,7 @@ Signed-off-by: Richard Oliver <richard.oliver@raspberrypi.com>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -18032,6 +18032,7 @@ RASPBERRY PI RP2040 GPIO BRIDGE DRIVER
|
@@ -18033,6 +18033,7 @@ RASPBERRY PI RP2040 GPIO BRIDGE DRIVER
|
||||||
M: Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com>
|
M: Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com>
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: Documentation/devicetree/bindings/spi/raspberrypi,rp2040-gpio-bridge.yaml
|
F: Documentation/devicetree/bindings/spi/raspberrypi,rp2040-gpio-bridge.yaml
|
||||||
|
|
|
@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -236,6 +236,8 @@ static void dw_i2s_config(struct dw_i2s_
|
@@ -235,6 +235,8 @@ static void dw_i2s_config(struct dw_i2s_
|
||||||
u32 ch_reg;
|
u32 ch_reg;
|
||||||
struct i2s_clk_config_data *config = &dev->config;
|
struct i2s_clk_config_data *config = &dev->config;
|
||||||
u32 dmacr;
|
u32 dmacr;
|
||||||
|
@ -31,7 +31,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||||
|
|
||||||
i2s_disable_channels(dev, stream);
|
i2s_disable_channels(dev, stream);
|
||||||
|
|
||||||
@@ -251,7 +253,7 @@ static void dw_i2s_config(struct dw_i2s_
|
@@ -250,7 +252,7 @@ static void dw_i2s_config(struct dw_i2s_
|
||||||
i2s_write_reg(dev->i2s_base, TCR(ch_reg),
|
i2s_write_reg(dev->i2s_base, TCR(ch_reg),
|
||||||
dev->xfer_resolution);
|
dev->xfer_resolution);
|
||||||
i2s_write_reg(dev->i2s_base, TFCR(ch_reg),
|
i2s_write_reg(dev->i2s_base, TFCR(ch_reg),
|
||||||
|
@ -40,7 +40,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||||
i2s_write_reg(dev->i2s_base, TER(ch_reg), TER_TXCHEN |
|
i2s_write_reg(dev->i2s_base, TER(ch_reg), TER_TXCHEN |
|
||||||
dev->tdm_mask << TER_TXSLOT_SHIFT);
|
dev->tdm_mask << TER_TXSLOT_SHIFT);
|
||||||
dmacr |= (DMACR_DMAEN_TXCH0 << ch_reg);
|
dmacr |= (DMACR_DMAEN_TXCH0 << ch_reg);
|
||||||
@@ -783,8 +785,8 @@ static int dw_configure_dai_by_pd(struct
|
@@ -782,8 +784,8 @@ static int dw_configure_dai_by_pd(struct
|
||||||
dev->capture_dma_data.pd.data = pdata->capture_dma_data;
|
dev->capture_dma_data.pd.data = pdata->capture_dma_data;
|
||||||
dev->play_dma_data.pd.addr = res->start + I2S_TXDMA;
|
dev->play_dma_data.pd.addr = res->start + I2S_TXDMA;
|
||||||
dev->capture_dma_data.pd.addr = res->start + I2S_RXDMA;
|
dev->capture_dma_data.pd.addr = res->start + I2S_RXDMA;
|
||||||
|
@ -51,7 +51,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||||
dev->play_dma_data.pd.addr_width = bus_widths[idx];
|
dev->play_dma_data.pd.addr_width = bus_widths[idx];
|
||||||
dev->capture_dma_data.pd.addr_width = bus_widths[idx];
|
dev->capture_dma_data.pd.addr_width = bus_widths[idx];
|
||||||
dev->play_dma_data.pd.filter = pdata->filter;
|
dev->play_dma_data.pd.filter = pdata->filter;
|
||||||
@@ -815,7 +817,10 @@ static int dw_configure_dai_by_dt(struct
|
@@ -814,7 +816,10 @@ static int dw_configure_dai_by_dt(struct
|
||||||
dev->play_dma_data.dt.addr = res->start + I2S_TXDMA;
|
dev->play_dma_data.dt.addr = res->start + I2S_TXDMA;
|
||||||
dev->play_dma_data.dt.fifo_size = fifo_depth *
|
dev->play_dma_data.dt.fifo_size = fifo_depth *
|
||||||
(fifo_width[idx2]) >> 8;
|
(fifo_width[idx2]) >> 8;
|
||||||
|
@ -63,7 +63,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||||
}
|
}
|
||||||
if (COMP1_RX_ENABLED(comp1)) {
|
if (COMP1_RX_ENABLED(comp1)) {
|
||||||
idx2 = COMP2_RX_WORDSIZE_0(comp2);
|
idx2 = COMP2_RX_WORDSIZE_0(comp2);
|
||||||
@@ -824,9 +829,14 @@ static int dw_configure_dai_by_dt(struct
|
@@ -823,9 +828,14 @@ static int dw_configure_dai_by_dt(struct
|
||||||
dev->capture_dma_data.dt.addr = res->start + I2S_RXDMA;
|
dev->capture_dma_data.dt.addr = res->start + I2S_RXDMA;
|
||||||
dev->capture_dma_data.dt.fifo_size = fifo_depth *
|
dev->capture_dma_data.dt.fifo_size = fifo_depth *
|
||||||
(fifo_width[idx2] >> 8);
|
(fifo_width[idx2] >> 8);
|
||||||
|
@ -79,7 +79,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -1070,6 +1080,7 @@ static int dw_i2s_probe(struct platform_
|
@@ -1069,6 +1079,7 @@ static int dw_i2s_probe(struct platform_
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -150,7 +150,7 @@ Signed-off-by: Richard Oliver <richard.oliver@raspberrypi.com>
|
||||||
+
|
+
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -20128,6 +20128,13 @@ F: Documentation/devicetree/bindings/med
|
@@ -20129,6 +20129,13 @@ F: Documentation/devicetree/bindings/med
|
||||||
F: Documentation/devicetree/bindings/media/i2c/imx477.yaml
|
F: Documentation/devicetree/bindings/media/i2c/imx477.yaml
|
||||||
F: drivers/media/i2c/imx477.c
|
F: drivers/media/i2c/imx477.c
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@ Signed-off-by: Richard Oliver <richard.oliver@raspberrypi.com>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -20134,6 +20134,7 @@ L: linux-media@vger.kernel.org
|
@@ -20135,6 +20135,7 @@ L: linux-media@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
T: git git://linuxtv.org/media_tree.git
|
T: git git://linuxtv.org/media_tree.git
|
||||||
F: Documentation/devicetree/bindings/media/i2c/sony,imx500.yaml
|
F: Documentation/devicetree/bindings/media/i2c/sony,imx500.yaml
|
||||||
|
|
|
@ -43,7 +43,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||||
}
|
}
|
||||||
|
|
||||||
// For 10GBASE-T short-reach modules
|
// For 10GBASE-T short-reach modules
|
||||||
@@ -796,7 +796,8 @@ static void sfp_soft_start_poll(struct s
|
@@ -798,7 +798,8 @@ static void sfp_soft_start_poll(struct s
|
||||||
|
|
||||||
mutex_lock(&sfp->st_mutex);
|
mutex_lock(&sfp->st_mutex);
|
||||||
// Poll the soft state for hardware pins we want to ignore
|
// Poll the soft state for hardware pins we want to ignore
|
||||||
|
@ -53,7 +53,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||||
|
|
||||||
if (sfp->state_soft_mask & (SFP_F_LOS | SFP_F_TX_FAULT) &&
|
if (sfp->state_soft_mask & (SFP_F_LOS | SFP_F_TX_FAULT) &&
|
||||||
!sfp->need_poll)
|
!sfp->need_poll)
|
||||||
@@ -2321,7 +2322,7 @@ static int sfp_sm_mod_probe(struct sfp *
|
@@ -2323,7 +2324,7 @@ static int sfp_sm_mod_probe(struct sfp *
|
||||||
sfp->module_t_start_up = T_START_UP;
|
sfp->module_t_start_up = T_START_UP;
|
||||||
sfp->module_t_wait = T_WAIT;
|
sfp->module_t_wait = T_WAIT;
|
||||||
|
|
||||||
|
@ -62,7 +62,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||||
|
|
||||||
if (sfp->id.base.extended_cc == SFF8024_ECC_10GBASE_T_SFI ||
|
if (sfp->id.base.extended_cc == SFF8024_ECC_10GBASE_T_SFI ||
|
||||||
sfp->id.base.extended_cc == SFF8024_ECC_10GBASE_T_SR ||
|
sfp->id.base.extended_cc == SFF8024_ECC_10GBASE_T_SR ||
|
||||||
@@ -2344,6 +2345,8 @@ static int sfp_sm_mod_probe(struct sfp *
|
@@ -2346,6 +2347,8 @@ static int sfp_sm_mod_probe(struct sfp *
|
||||||
|
|
||||||
if (sfp->quirk && sfp->quirk->fixup)
|
if (sfp->quirk && sfp->quirk->fixup)
|
||||||
sfp->quirk->fixup(sfp);
|
sfp->quirk->fixup(sfp);
|
||||||
|
@ -71,7 +71,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||||
mutex_unlock(&sfp->st_mutex);
|
mutex_unlock(&sfp->st_mutex);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
@@ -2844,10 +2847,7 @@ static void sfp_check_state(struct sfp *
|
@@ -2846,10 +2849,7 @@ static void sfp_check_state(struct sfp *
|
||||||
mutex_lock(&sfp->st_mutex);
|
mutex_lock(&sfp->st_mutex);
|
||||||
state = sfp_get_state(sfp);
|
state = sfp_get_state(sfp);
|
||||||
changed = state ^ sfp->state;
|
changed = state ^ sfp->state;
|
||||||
|
|
|
@ -63,7 +63,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -13366,6 +13366,7 @@ L: netdev@vger.kernel.org
|
@@ -13367,6 +13367,7 @@ L: netdev@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/net/phy/mediatek-ge-soc.c
|
F: drivers/net/phy/mediatek-ge-soc.c
|
||||||
F: drivers/net/phy/mediatek-ge.c
|
F: drivers/net/phy/mediatek-ge.c
|
||||||
|
|
|
@ -38,7 +38,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||||
u32 phys_mii_mask;
|
u32 phys_mii_mask;
|
||||||
--- a/net/dsa/dsa.c
|
--- a/net/dsa/dsa.c
|
||||||
+++ b/net/dsa/dsa.c
|
+++ b/net/dsa/dsa.c
|
||||||
@@ -1510,6 +1510,17 @@ static int dsa_switch_probe(struct dsa_s
|
@@ -1549,6 +1549,17 @@ static int dsa_switch_probe(struct dsa_s
|
||||||
if (!ds->num_ports)
|
if (!ds->num_ports)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
|
|
|
@ -86,7 +86,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||||
static void sfp_fixup_rollball_cc(struct sfp *sfp)
|
static void sfp_fixup_rollball_cc(struct sfp *sfp)
|
||||||
{
|
{
|
||||||
sfp_fixup_rollball(sfp);
|
sfp_fixup_rollball(sfp);
|
||||||
@@ -2320,7 +2318,7 @@ static int sfp_sm_mod_probe(struct sfp *
|
@@ -2322,7 +2320,7 @@ static int sfp_sm_mod_probe(struct sfp *
|
||||||
mask |= SFP_F_RS1;
|
mask |= SFP_F_RS1;
|
||||||
|
|
||||||
sfp->module_t_start_up = T_START_UP;
|
sfp->module_t_start_up = T_START_UP;
|
||||||
|
@ -95,7 +95,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||||
|
|
||||||
sfp->state_ignore_mask = 0;
|
sfp->state_ignore_mask = 0;
|
||||||
|
|
||||||
@@ -2556,10 +2554,9 @@ static void sfp_sm_main(struct sfp *sfp,
|
@@ -2558,10 +2556,9 @@ static void sfp_sm_main(struct sfp *sfp,
|
||||||
|
|
||||||
/* We need to check the TX_FAULT state, which is not defined
|
/* We need to check the TX_FAULT state, which is not defined
|
||||||
* while TX_DISABLE is asserted. The earliest we want to do
|
* while TX_DISABLE is asserted. The earliest we want to do
|
||||||
|
@ -108,7 +108,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SFP_S_WAIT:
|
case SFP_S_WAIT:
|
||||||
@@ -2573,8 +2570,8 @@ static void sfp_sm_main(struct sfp *sfp,
|
@@ -2575,8 +2572,8 @@ static void sfp_sm_main(struct sfp *sfp,
|
||||||
* deasserting.
|
* deasserting.
|
||||||
*/
|
*/
|
||||||
timeout = sfp->module_t_start_up;
|
timeout = sfp->module_t_start_up;
|
||||||
|
@ -119,7 +119,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||||
else
|
else
|
||||||
timeout = 1;
|
timeout = 1;
|
||||||
|
|
||||||
@@ -2617,7 +2614,11 @@ static void sfp_sm_main(struct sfp *sfp,
|
@@ -2619,7 +2616,11 @@ static void sfp_sm_main(struct sfp *sfp,
|
||||||
ret = sfp_sm_probe_for_phy(sfp);
|
ret = sfp_sm_probe_for_phy(sfp);
|
||||||
if (ret == -ENODEV) {
|
if (ret == -ENODEV) {
|
||||||
if (--sfp->sm_phy_retries) {
|
if (--sfp->sm_phy_retries) {
|
||||||
|
|
|
@ -51,7 +51,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sfp_fixup_halny_gsfp(struct sfp *sfp)
|
static void sfp_fixup_halny_gsfp(struct sfp *sfp)
|
||||||
@@ -2318,6 +2325,7 @@ static int sfp_sm_mod_probe(struct sfp *
|
@@ -2320,6 +2327,7 @@ static int sfp_sm_mod_probe(struct sfp *
|
||||||
mask |= SFP_F_RS1;
|
mask |= SFP_F_RS1;
|
||||||
|
|
||||||
sfp->module_t_start_up = T_START_UP;
|
sfp->module_t_start_up = T_START_UP;
|
||||||
|
@ -59,7 +59,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||||
sfp->phy_t_retry = T_PHY_RETRY;
|
sfp->phy_t_retry = T_PHY_RETRY;
|
||||||
|
|
||||||
sfp->state_ignore_mask = 0;
|
sfp->state_ignore_mask = 0;
|
||||||
@@ -2554,9 +2562,10 @@ static void sfp_sm_main(struct sfp *sfp,
|
@@ -2556,9 +2564,10 @@ static void sfp_sm_main(struct sfp *sfp,
|
||||||
|
|
||||||
/* We need to check the TX_FAULT state, which is not defined
|
/* We need to check the TX_FAULT state, which is not defined
|
||||||
* while TX_DISABLE is asserted. The earliest we want to do
|
* while TX_DISABLE is asserted. The earliest we want to do
|
||||||
|
@ -72,7 +72,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SFP_S_WAIT:
|
case SFP_S_WAIT:
|
||||||
@@ -2570,8 +2579,8 @@ static void sfp_sm_main(struct sfp *sfp,
|
@@ -2572,8 +2581,8 @@ static void sfp_sm_main(struct sfp *sfp,
|
||||||
* deasserting.
|
* deasserting.
|
||||||
*/
|
*/
|
||||||
timeout = sfp->module_t_start_up;
|
timeout = sfp->module_t_start_up;
|
||||||
|
|
|
@ -15,7 +15,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||||
|
|
||||||
--- a/drivers/net/usb/r8152.c
|
--- a/drivers/net/usb/r8152.c
|
||||||
+++ b/drivers/net/usb/r8152.c
|
+++ b/drivers/net/usb/r8152.c
|
||||||
@@ -2584,8 +2584,9 @@ static int rx_bottom(struct r8152 *tp, i
|
@@ -2585,8 +2585,9 @@ static int rx_bottom(struct r8152 *tp, i
|
||||||
while (urb->actual_length > len_used) {
|
while (urb->actual_length > len_used) {
|
||||||
struct net_device *netdev = tp->netdev;
|
struct net_device *netdev = tp->netdev;
|
||||||
struct net_device_stats *stats = &netdev->stats;
|
struct net_device_stats *stats = &netdev->stats;
|
||||||
|
@ -26,7 +26,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||||
|
|
||||||
WARN_ON_ONCE(skb_queue_len(&tp->rx_queue) >= 1000);
|
WARN_ON_ONCE(skb_queue_len(&tp->rx_queue) >= 1000);
|
||||||
|
|
||||||
@@ -2598,45 +2599,77 @@ static int rx_bottom(struct r8152 *tp, i
|
@@ -2599,45 +2600,77 @@ static int rx_bottom(struct r8152 *tp, i
|
||||||
break;
|
break;
|
||||||
|
|
||||||
pkt_len -= ETH_FCS_LEN;
|
pkt_len -= ETH_FCS_LEN;
|
||||||
|
|
|
@ -41,7 +41,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -21989,6 +21989,7 @@ U-BOOT ENVIRONMENT VARIABLES
|
@@ -21990,6 +21990,7 @@ U-BOOT ENVIRONMENT VARIABLES
|
||||||
M: Rafał Miłecki <rafal@milecki.pl>
|
M: Rafał Miłecki <rafal@milecki.pl>
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: Documentation/devicetree/bindings/nvmem/u-boot,env.yaml
|
F: Documentation/devicetree/bindings/nvmem/u-boot,env.yaml
|
||||||
|
|
|
@ -19,7 +19,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||||
|
|
||||||
--- a/drivers/net/dsa/mv88e6xxx/chip.c
|
--- a/drivers/net/dsa/mv88e6xxx/chip.c
|
||||||
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
|
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
|
||||||
@@ -3699,7 +3699,7 @@ static int mv88e6xxx_mdio_register(struc
|
@@ -3725,7 +3725,7 @@ static int mv88e6xxx_mdio_register(struc
|
||||||
|
|
||||||
if (external) {
|
if (external) {
|
||||||
mv88e6xxx_reg_lock(chip);
|
mv88e6xxx_reg_lock(chip);
|
||||||
|
|
|
@ -27,7 +27,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||||
|
|
||||||
--- a/drivers/net/dsa/mv88e6xxx/chip.c
|
--- a/drivers/net/dsa/mv88e6xxx/chip.c
|
||||||
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
|
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
|
||||||
@@ -3699,7 +3699,10 @@ static int mv88e6xxx_mdio_register(struc
|
@@ -3725,7 +3725,10 @@ static int mv88e6xxx_mdio_register(struc
|
||||||
|
|
||||||
if (external) {
|
if (external) {
|
||||||
mv88e6xxx_reg_lock(chip);
|
mv88e6xxx_reg_lock(chip);
|
||||||
|
|
|
@ -127,7 +127,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||||
#include <linux/netdevice.h>
|
#include <linux/netdevice.h>
|
||||||
#include <linux/gpio/consumer.h>
|
#include <linux/gpio/consumer.h>
|
||||||
#include <linux/phylink.h>
|
#include <linux/phylink.h>
|
||||||
@@ -3265,14 +3266,43 @@ static int mv88e6xxx_setup_upstream_port
|
@@ -3276,14 +3277,43 @@ static int mv88e6xxx_setup_upstream_port
|
||||||
static int mv88e6xxx_setup_port(struct mv88e6xxx_chip *chip, int port)
|
static int mv88e6xxx_setup_port(struct mv88e6xxx_chip *chip, int port)
|
||||||
{
|
{
|
||||||
struct device_node *phy_handle = NULL;
|
struct device_node *phy_handle = NULL;
|
||||||
|
@ -173,7 +173,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||||
|
|
||||||
err = mv88e6xxx_port_setup_mac(chip, port, LINK_UNFORCED,
|
err = mv88e6xxx_port_setup_mac(chip, port, LINK_UNFORCED,
|
||||||
SPEED_UNFORCED, DUPLEX_UNFORCED,
|
SPEED_UNFORCED, DUPLEX_UNFORCED,
|
||||||
@@ -4491,6 +4521,7 @@ static const struct mv88e6xxx_ops mv88e6
|
@@ -4517,6 +4547,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||||
.port_disable_learn_limit = mv88e6xxx_port_disable_learn_limit,
|
.port_disable_learn_limit = mv88e6xxx_port_disable_learn_limit,
|
||||||
.port_disable_pri_override = mv88e6xxx_port_disable_pri_override,
|
.port_disable_pri_override = mv88e6xxx_port_disable_pri_override,
|
||||||
.port_get_cmode = mv88e6352_port_get_cmode,
|
.port_get_cmode = mv88e6352_port_get_cmode,
|
||||||
|
@ -181,7 +181,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||||
.port_setup_message_port = mv88e6xxx_setup_message_port,
|
.port_setup_message_port = mv88e6xxx_setup_message_port,
|
||||||
.stats_snapshot = mv88e6320_g1_stats_snapshot,
|
.stats_snapshot = mv88e6320_g1_stats_snapshot,
|
||||||
.stats_set_histogram = mv88e6095_g1_stats_set_histogram,
|
.stats_set_histogram = mv88e6095_g1_stats_set_histogram,
|
||||||
@@ -4593,6 +4624,7 @@ static const struct mv88e6xxx_ops mv88e6
|
@@ -4619,6 +4650,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||||
.port_disable_learn_limit = mv88e6xxx_port_disable_learn_limit,
|
.port_disable_learn_limit = mv88e6xxx_port_disable_learn_limit,
|
||||||
.port_disable_pri_override = mv88e6xxx_port_disable_pri_override,
|
.port_disable_pri_override = mv88e6xxx_port_disable_pri_override,
|
||||||
.port_get_cmode = mv88e6352_port_get_cmode,
|
.port_get_cmode = mv88e6352_port_get_cmode,
|
||||||
|
@ -189,7 +189,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||||
.port_setup_message_port = mv88e6xxx_setup_message_port,
|
.port_setup_message_port = mv88e6xxx_setup_message_port,
|
||||||
.stats_snapshot = mv88e6320_g1_stats_snapshot,
|
.stats_snapshot = mv88e6320_g1_stats_snapshot,
|
||||||
.stats_set_histogram = mv88e6095_g1_stats_set_histogram,
|
.stats_set_histogram = mv88e6095_g1_stats_set_histogram,
|
||||||
@@ -4868,6 +4900,7 @@ static const struct mv88e6xxx_ops mv88e6
|
@@ -4894,6 +4926,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||||
.port_disable_learn_limit = mv88e6xxx_port_disable_learn_limit,
|
.port_disable_learn_limit = mv88e6xxx_port_disable_learn_limit,
|
||||||
.port_disable_pri_override = mv88e6xxx_port_disable_pri_override,
|
.port_disable_pri_override = mv88e6xxx_port_disable_pri_override,
|
||||||
.port_get_cmode = mv88e6352_port_get_cmode,
|
.port_get_cmode = mv88e6352_port_get_cmode,
|
||||||
|
@ -197,7 +197,7 @@ Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||||
.port_setup_message_port = mv88e6xxx_setup_message_port,
|
.port_setup_message_port = mv88e6xxx_setup_message_port,
|
||||||
.stats_snapshot = mv88e6320_g1_stats_snapshot,
|
.stats_snapshot = mv88e6320_g1_stats_snapshot,
|
||||||
.stats_set_histogram = mv88e6095_g1_stats_set_histogram,
|
.stats_set_histogram = mv88e6095_g1_stats_set_histogram,
|
||||||
@@ -5290,6 +5323,7 @@ static const struct mv88e6xxx_ops mv88e6
|
@@ -5318,6 +5351,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||||
.port_disable_learn_limit = mv88e6xxx_port_disable_learn_limit,
|
.port_disable_learn_limit = mv88e6xxx_port_disable_learn_limit,
|
||||||
.port_disable_pri_override = mv88e6xxx_port_disable_pri_override,
|
.port_disable_pri_override = mv88e6xxx_port_disable_pri_override,
|
||||||
.port_get_cmode = mv88e6352_port_get_cmode,
|
.port_get_cmode = mv88e6352_port_get_cmode,
|
||||||
|
|
|
@ -16,7 +16,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
|
|
||||||
--- a/net/core/page_pool.c
|
--- a/net/core/page_pool.c
|
||||||
+++ b/net/core/page_pool.c
|
+++ b/net/core/page_pool.c
|
||||||
@@ -873,12 +873,23 @@ static void page_pool_release_retry(stru
|
@@ -873,7 +873,7 @@ static void page_pool_release_retry(stru
|
||||||
{
|
{
|
||||||
struct delayed_work *dwq = to_delayed_work(wq);
|
struct delayed_work *dwq = to_delayed_work(wq);
|
||||||
struct page_pool *pool = container_of(dwq, typeof(*pool), release_dw);
|
struct page_pool *pool = container_of(dwq, typeof(*pool), release_dw);
|
||||||
|
@ -24,7 +24,9 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
+ int cpu, inflight;
|
+ int cpu, inflight;
|
||||||
|
|
||||||
inflight = page_pool_release(pool);
|
inflight = page_pool_release(pool);
|
||||||
if (!inflight)
|
/* In rare cases, a driver bug may cause inflight to go negative.
|
||||||
|
@@ -885,6 +885,17 @@ static void page_pool_release_retry(stru
|
||||||
|
if (inflight <= 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
+ /* Run NET_RX_SOFTIRQ in order to free pending skbs in softnet_data
|
+ /* Run NET_RX_SOFTIRQ in order to free pending skbs in softnet_data
|
||||||
|
|
|
@ -13,7 +13,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
|
|
||||||
--- a/net/sched/sch_fq_codel.c
|
--- a/net/sched/sch_fq_codel.c
|
||||||
+++ b/net/sched/sch_fq_codel.c
|
+++ b/net/sched/sch_fq_codel.c
|
||||||
@@ -465,7 +465,11 @@ static int fq_codel_init(struct Qdisc *s
|
@@ -463,7 +463,11 @@ static int fq_codel_init(struct Qdisc *s
|
||||||
|
|
||||||
sch->limit = 10*1024;
|
sch->limit = 10*1024;
|
||||||
q->flows_cnt = 1024;
|
q->flows_cnt = 1024;
|
||||||
|
|
|
@ -9,7 +9,7 @@ Subject: [PATCH] net/dsa/mv88e6xxx: disable ATU violation
|
||||||
|
|
||||||
--- a/drivers/net/dsa/mv88e6xxx/chip.c
|
--- a/drivers/net/dsa/mv88e6xxx/chip.c
|
||||||
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
|
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
|
||||||
@@ -3435,6 +3435,9 @@ static int mv88e6xxx_setup_port(struct m
|
@@ -3446,6 +3446,9 @@ static int mv88e6xxx_setup_port(struct m
|
||||||
else
|
else
|
||||||
reg = 1 << port;
|
reg = 1 << port;
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
||||||
#include <linux/crc32.h>
|
#include <linux/crc32.h>
|
||||||
#include <linux/if_vlan.h>
|
#include <linux/if_vlan.h>
|
||||||
#include <linux/uaccess.h>
|
#include <linux/uaccess.h>
|
||||||
@@ -7044,6 +7045,22 @@ static void rtl_tally_reset(struct r8152
|
@@ -7045,6 +7046,22 @@ static void rtl_tally_reset(struct r8152
|
||||||
ocp_write_word(tp, MCU_TYPE_PLA, PLA_RSTTALLY, ocp_data);
|
ocp_write_word(tp, MCU_TYPE_PLA, PLA_RSTTALLY, ocp_data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
||||||
static void r8152b_init(struct r8152 *tp)
|
static void r8152b_init(struct r8152 *tp)
|
||||||
{
|
{
|
||||||
u32 ocp_data;
|
u32 ocp_data;
|
||||||
@@ -7085,6 +7102,8 @@ static void r8152b_init(struct r8152 *tp
|
@@ -7086,6 +7103,8 @@ static void r8152b_init(struct r8152 *tp
|
||||||
ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL);
|
ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL);
|
||||||
ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN);
|
ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN);
|
||||||
ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data);
|
ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data);
|
||||||
|
@ -54,7 +54,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
||||||
}
|
}
|
||||||
|
|
||||||
static void r8153_init(struct r8152 *tp)
|
static void r8153_init(struct r8152 *tp)
|
||||||
@@ -7225,6 +7244,8 @@ static void r8153_init(struct r8152 *tp)
|
@@ -7226,6 +7245,8 @@ static void r8153_init(struct r8152 *tp)
|
||||||
tp->coalesce = COALESCE_SLOW;
|
tp->coalesce = COALESCE_SLOW;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -63,7 +63,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
||||||
}
|
}
|
||||||
|
|
||||||
static void r8153b_init(struct r8152 *tp)
|
static void r8153b_init(struct r8152 *tp)
|
||||||
@@ -7307,6 +7328,8 @@ static void r8153b_init(struct r8152 *tp
|
@@ -7308,6 +7329,8 @@ static void r8153b_init(struct r8152 *tp
|
||||||
rtl_tally_reset(tp);
|
rtl_tally_reset(tp);
|
||||||
|
|
||||||
tp->coalesce = 15000; /* 15 us */
|
tp->coalesce = 15000; /* 15 us */
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
LINUX_VERSION-6.6 = .87
|
LINUX_VERSION-6.6 = .88
|
||||||
LINUX_KERNEL_HASH-6.6.87 = 8957e5c2dacdbc47a16dbf1f6303ca7088409be6197a3881f752313275357ac6
|
LINUX_KERNEL_HASH-6.6.88 = 19df89b63ef7e950de7297dabfac0569183bf87636f4c300a25336c7da490650
|
||||||
|
|
|
@ -36,7 +36,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -22016,6 +22016,12 @@ F: Documentation/filesystems/ubifs-authe
|
@@ -22017,6 +22017,12 @@ F: Documentation/filesystems/ubifs-authe
|
||||||
F: Documentation/filesystems/ubifs.rst
|
F: Documentation/filesystems/ubifs.rst
|
||||||
F: fs/ubifs/
|
F: fs/ubifs/
|
||||||
|
|
||||||
|
|
|
@ -76,7 +76,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
if ((ret & NETIF_F_GSO_ENCAP_ALL) && (ret & NETIF_F_CSUM_MASK))
|
if ((ret & NETIF_F_GSO_ENCAP_ALL) && (ret & NETIF_F_CSUM_MASK))
|
||||||
--- a/net/8021q/vlan_dev.c
|
--- a/net/8021q/vlan_dev.c
|
||||||
+++ b/net/8021q/vlan_dev.c
|
+++ b/net/8021q/vlan_dev.c
|
||||||
@@ -583,7 +583,7 @@ static int vlan_dev_init(struct net_devi
|
@@ -560,7 +560,7 @@ static int vlan_dev_init(struct net_devi
|
||||||
dev->state |= (1 << __LINK_STATE_NOCARRIER);
|
dev->state |= (1 << __LINK_STATE_NOCARRIER);
|
||||||
|
|
||||||
dev->hw_features = NETIF_F_HW_CSUM | NETIF_F_SG |
|
dev->hw_features = NETIF_F_HW_CSUM | NETIF_F_SG |
|
||||||
|
@ -85,7 +85,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
NETIF_F_GSO_ENCAP_ALL |
|
NETIF_F_GSO_ENCAP_ALL |
|
||||||
NETIF_F_HIGHDMA | NETIF_F_SCTP_CRC |
|
NETIF_F_HIGHDMA | NETIF_F_SCTP_CRC |
|
||||||
NETIF_F_ALL_FCOE;
|
NETIF_F_ALL_FCOE;
|
||||||
@@ -676,7 +676,7 @@ static netdev_features_t vlan_dev_fix_fe
|
@@ -653,7 +653,7 @@ static netdev_features_t vlan_dev_fix_fe
|
||||||
if (lower_features & (NETIF_F_IP_CSUM|NETIF_F_IPV6_CSUM))
|
if (lower_features & (NETIF_F_IP_CSUM|NETIF_F_IPV6_CSUM))
|
||||||
lower_features |= NETIF_F_HW_CSUM;
|
lower_features |= NETIF_F_HW_CSUM;
|
||||||
features = netdev_intersect_features(features, lower_features);
|
features = netdev_intersect_features(features, lower_features);
|
||||||
|
|
|
@ -34,7 +34,7 @@ Signed-off-by: Chad Monroe <chad@monroe.io>
|
||||||
+ val &= ~MTK_RESV_BUF_MASK;
|
+ val &= ~MTK_RESV_BUF_MASK;
|
||||||
val |= MTK_MUTLI_CNT | MTK_RESV_BUF |
|
val |= MTK_MUTLI_CNT | MTK_RESV_BUF |
|
||||||
MTK_WCOMP_EN | MTK_DMAD_WR_WDONE |
|
MTK_WCOMP_EN | MTK_DMAD_WR_WDONE |
|
||||||
MTK_CHK_DDONE_EN | MTK_LEAKY_BUCKET_EN;
|
MTK_CHK_DDONE_EN;
|
||||||
- else
|
- else
|
||||||
+ } else {
|
+ } else {
|
||||||
val |= MTK_RX_BT_32DWORDS;
|
val |= MTK_RX_BT_32DWORDS;
|
||||||
|
|
|
@ -19,7 +19,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -13356,7 +13356,9 @@ M: Daniel Golle <daniel@makrotopia.org>
|
@@ -13357,7 +13357,9 @@ M: Daniel Golle <daniel@makrotopia.org>
|
||||||
L: netdev@vger.kernel.org
|
L: netdev@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/net/pcs/pcs-mtk-lynxi.c
|
F: drivers/net/pcs/pcs-mtk-lynxi.c
|
||||||
|
|
|
@ -32,7 +32,7 @@ Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -17717,6 +17717,13 @@ L: netdev@vger.kernel.org
|
@@ -17718,6 +17718,13 @@ L: netdev@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: drivers/net/ethernet/qualcomm/emac/
|
F: drivers/net/ethernet/qualcomm/emac/
|
||||||
|
|
||||||
|
|
|
@ -64,7 +64,7 @@ Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -17723,6 +17723,7 @@ L: netdev@vger.kernel.org
|
@@ -17724,6 +17724,7 @@ L: netdev@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: Documentation/devicetree/bindings/net/qcom,ipq4019-ess-edma.yaml
|
F: Documentation/devicetree/bindings/net/qcom,ipq4019-ess-edma.yaml
|
||||||
F: drivers/net/ethernet/qualcomm/ipqess/
|
F: drivers/net/ethernet/qualcomm/ipqess/
|
||||||
|
|
|
@ -382,7 +382,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||||
-};
|
-};
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -11863,6 +11863,7 @@ LANTIQ / INTEL Ethernet drivers
|
@@ -11864,6 +11864,7 @@ LANTIQ / INTEL Ethernet drivers
|
||||||
M: Hauke Mehrtens <hauke@hauke-m.de>
|
M: Hauke Mehrtens <hauke@hauke-m.de>
|
||||||
L: netdev@vger.kernel.org
|
L: netdev@vger.kernel.org
|
||||||
S: Maintained
|
S: Maintained
|
||||||
|
|
|
@ -891,7 +891,7 @@ Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
|
||||||
+};
|
+};
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -8359,6 +8359,14 @@ F: drivers/ptp/ptp_qoriq.c
|
@@ -8360,6 +8360,14 @@ F: drivers/ptp/ptp_qoriq.c
|
||||||
F: drivers/ptp/ptp_qoriq_debugfs.c
|
F: drivers/ptp/ptp_qoriq_debugfs.c
|
||||||
F: include/linux/fsl/ptp_qoriq.h
|
F: include/linux/fsl/ptp_qoriq.h
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
|
||||||
|
|
||||||
--- a/drivers/pwm/pwm-mediatek.c
|
--- a/drivers/pwm/pwm-mediatek.c
|
||||||
+++ b/drivers/pwm/pwm-mediatek.c
|
+++ b/drivers/pwm/pwm-mediatek.c
|
||||||
@@ -341,6 +341,13 @@ static const struct pwm_mediatek_of_data
|
@@ -345,6 +345,13 @@ static const struct pwm_mediatek_of_data
|
||||||
.reg_offset = mtk_pwm_reg_offset_v1,
|
.reg_offset = mtk_pwm_reg_offset_v1,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
|
||||||
static const struct pwm_mediatek_of_data mt8183_pwm_data = {
|
static const struct pwm_mediatek_of_data mt8183_pwm_data = {
|
||||||
.num_pwms = 4,
|
.num_pwms = 4,
|
||||||
.pwm45_fixup = false,
|
.pwm45_fixup = false,
|
||||||
@@ -371,6 +378,7 @@ static const struct of_device_id pwm_med
|
@@ -375,6 +382,7 @@ static const struct of_device_id pwm_med
|
||||||
{ .compatible = "mediatek,mt7629-pwm", .data = &mt7629_pwm_data },
|
{ .compatible = "mediatek,mt7629-pwm", .data = &mt7629_pwm_data },
|
||||||
{ .compatible = "mediatek,mt7981-pwm", .data = &mt7981_pwm_data },
|
{ .compatible = "mediatek,mt7981-pwm", .data = &mt7981_pwm_data },
|
||||||
{ .compatible = "mediatek,mt7986-pwm", .data = &mt7986_pwm_data },
|
{ .compatible = "mediatek,mt7986-pwm", .data = &mt7986_pwm_data },
|
||||||
|
|
|
@ -16,7 +16,7 @@ Cc: Robert Marko <robert.marko@sartura.hr>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -10142,6 +10142,22 @@ IFCVF VIRTIO DATA PATH ACCELERATOR
|
@@ -10143,6 +10143,22 @@ IFCVF VIRTIO DATA PATH ACCELERATOR
|
||||||
R: Zhu Lingshan <lingshan.zhu@intel.com>
|
R: Zhu Lingshan <lingshan.zhu@intel.com>
|
||||||
F: drivers/vdpa/ifcvf/
|
F: drivers/vdpa/ifcvf/
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
||||||
|
|
||||||
--- a/drivers/media/usb/uvc/uvc_driver.c
|
--- a/drivers/media/usb/uvc/uvc_driver.c
|
||||||
+++ b/drivers/media/usb/uvc/uvc_driver.c
|
+++ b/drivers/media/usb/uvc/uvc_driver.c
|
||||||
@@ -3287,6 +3287,18 @@ static const struct usb_device_id uvc_id
|
@@ -3296,6 +3296,18 @@ static const struct usb_device_id uvc_id
|
||||||
.bInterfaceSubClass = 1,
|
.bInterfaceSubClass = 1,
|
||||||
.bInterfaceProtocol = 0,
|
.bInterfaceProtocol = 0,
|
||||||
.driver_info = UVC_INFO_META(V4L2_META_FMT_D4XX) },
|
.driver_info = UVC_INFO_META(V4L2_META_FMT_D4XX) },
|
||||||
|
|
|
@ -10,7 +10,7 @@ Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
|
||||||
|
|
||||||
--- a/drivers/net/phy/sfp.c
|
--- a/drivers/net/phy/sfp.c
|
||||||
+++ b/drivers/net/phy/sfp.c
|
+++ b/drivers/net/phy/sfp.c
|
||||||
@@ -1568,6 +1568,10 @@ static void sfp_hwmon_probe(struct work_
|
@@ -1570,6 +1570,10 @@ static void sfp_hwmon_probe(struct work_
|
||||||
struct sfp *sfp = container_of(work, struct sfp, hwmon_probe.work);
|
struct sfp *sfp = container_of(work, struct sfp, hwmon_probe.work);
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
|
||||||
/* hwmon interface needs to access 16bit registers in atomic way to
|
/* hwmon interface needs to access 16bit registers in atomic way to
|
||||||
* guarantee coherency of the diagnostic monitoring data. If it is not
|
* guarantee coherency of the diagnostic monitoring data. If it is not
|
||||||
* possible to guarantee coherency because EEPROM is broken in such way
|
* possible to guarantee coherency because EEPROM is broken in such way
|
||||||
@@ -2430,6 +2434,13 @@ static void sfp_sm_module(struct sfp *sf
|
@@ -2432,6 +2436,13 @@ static void sfp_sm_module(struct sfp *sf
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
|
||||||
|
|
||||||
--- a/drivers/net/phy/sfp.c
|
--- a/drivers/net/phy/sfp.c
|
||||||
+++ b/drivers/net/phy/sfp.c
|
+++ b/drivers/net/phy/sfp.c
|
||||||
@@ -673,10 +673,64 @@ static int sfp_i2c_write(struct sfp *sfp
|
@@ -675,10 +675,64 @@ static int sfp_i2c_write(struct sfp *sfp
|
||||||
return ret == ARRAY_SIZE(msgs) ? len : 0;
|
return ret == ARRAY_SIZE(msgs) ? len : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -77,7 +77,7 @@ Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
|
||||||
|
|
||||||
sfp->i2c = i2c;
|
sfp->i2c = i2c;
|
||||||
sfp->read = sfp_i2c_read;
|
sfp->read = sfp_i2c_read;
|
||||||
@@ -708,6 +762,29 @@ static int sfp_i2c_mdiobus_create(struct
|
@@ -710,6 +764,29 @@ static int sfp_i2c_mdiobus_create(struct
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -107,7 +107,7 @@ Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
|
||||||
static void sfp_i2c_mdiobus_destroy(struct sfp *sfp)
|
static void sfp_i2c_mdiobus_destroy(struct sfp *sfp)
|
||||||
{
|
{
|
||||||
mdiobus_unregister(sfp->i2c_mii);
|
mdiobus_unregister(sfp->i2c_mii);
|
||||||
@@ -1886,9 +1963,15 @@ static void sfp_sm_fault(struct sfp *sfp
|
@@ -1888,9 +1965,15 @@ static void sfp_sm_fault(struct sfp *sfp
|
||||||
|
|
||||||
static int sfp_sm_add_mdio_bus(struct sfp *sfp)
|
static int sfp_sm_add_mdio_bus(struct sfp *sfp)
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,7 +12,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -7053,6 +7053,14 @@ T: git git://anongit.freedesktop.org/drm
|
@@ -7054,6 +7054,14 @@ T: git git://anongit.freedesktop.org/drm
|
||||||
F: Documentation/devicetree/bindings/display/rockchip/
|
F: Documentation/devicetree/bindings/display/rockchip/
|
||||||
F: drivers/gpu/drm/rockchip/
|
F: drivers/gpu/drm/rockchip/
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
DRM DRIVERS FOR STI
|
DRM DRIVERS FOR STI
|
||||||
M: Alain Volmat <alain.volmat@foss.st.com>
|
M: Alain Volmat <alain.volmat@foss.st.com>
|
||||||
L: dri-devel@lists.freedesktop.org
|
L: dri-devel@lists.freedesktop.org
|
||||||
@@ -16017,6 +16025,13 @@ F: Documentation/i2c/busses/i2c-ocores.r
|
@@ -16018,6 +16026,13 @@ F: Documentation/i2c/busses/i2c-ocores.r
|
||||||
F: drivers/i2c/busses/i2c-ocores.c
|
F: drivers/i2c/busses/i2c-ocores.c
|
||||||
F: include/linux/platform_data/i2c-ocores.h
|
F: include/linux/platform_data/i2c-ocores.h
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
OPENRISC ARCHITECTURE
|
OPENRISC ARCHITECTURE
|
||||||
M: Jonas Bonn <jonas@southpole.se>
|
M: Jonas Bonn <jonas@southpole.se>
|
||||||
M: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
|
M: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
|
||||||
@@ -16428,6 +16443,14 @@ S: Maintained
|
@@ -16429,6 +16444,14 @@ S: Maintained
|
||||||
F: Documentation/devicetree/bindings/pci/layerscape-pcie-gen4.txt
|
F: Documentation/devicetree/bindings/pci/layerscape-pcie-gen4.txt
|
||||||
F: drivers/pci/controller/mobiveil/pcie-layerscape-gen4.c
|
F: drivers/pci/controller/mobiveil/pcie-layerscape-gen4.c
|
||||||
|
|
||||||
|
@ -56,7 +56,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
PCI DRIVER FOR RENESAS R-CAR
|
PCI DRIVER FOR RENESAS R-CAR
|
||||||
M: Marek Vasut <marek.vasut+renesas@gmail.com>
|
M: Marek Vasut <marek.vasut+renesas@gmail.com>
|
||||||
M: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
|
M: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
|
||||||
@@ -16659,7 +16682,7 @@ M: Daire McNamara <daire.mcnamara@microc
|
@@ -16660,7 +16683,7 @@ M: Daire McNamara <daire.mcnamara@microc
|
||||||
L: linux-pci@vger.kernel.org
|
L: linux-pci@vger.kernel.org
|
||||||
S: Supported
|
S: Supported
|
||||||
F: Documentation/devicetree/bindings/pci/microchip*
|
F: Documentation/devicetree/bindings/pci/microchip*
|
||||||
|
@ -65,7 +65,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
|
|
||||||
PCIE DRIVER FOR QUALCOMM MSM
|
PCIE DRIVER FOR QUALCOMM MSM
|
||||||
M: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
M: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||||
@@ -16683,6 +16706,13 @@ S: Maintained
|
@@ -16684,6 +16707,13 @@ S: Maintained
|
||||||
F: Documentation/devicetree/bindings/pci/socionext,uniphier-pcie*
|
F: Documentation/devicetree/bindings/pci/socionext,uniphier-pcie*
|
||||||
F: drivers/pci/controller/dwc/pcie-uniphier*
|
F: drivers/pci/controller/dwc/pcie-uniphier*
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
PCIE DRIVER FOR ST SPEAR13XX
|
PCIE DRIVER FOR ST SPEAR13XX
|
||||||
M: Pratyush Anand <pratyush.anand@gmail.com>
|
M: Pratyush Anand <pratyush.anand@gmail.com>
|
||||||
L: linux-pci@vger.kernel.org
|
L: linux-pci@vger.kernel.org
|
||||||
@@ -18455,7 +18485,7 @@ F: drivers/char/hw_random/mpfs-rng.c
|
@@ -18456,7 +18486,7 @@ F: drivers/char/hw_random/mpfs-rng.c
|
||||||
F: drivers/clk/microchip/clk-mpfs*.c
|
F: drivers/clk/microchip/clk-mpfs*.c
|
||||||
F: drivers/i2c/busses/i2c-microchip-corei2c.c
|
F: drivers/i2c/busses/i2c-microchip-corei2c.c
|
||||||
F: drivers/mailbox/mailbox-mpfs.c
|
F: drivers/mailbox/mailbox-mpfs.c
|
||||||
|
@ -88,7 +88,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
F: drivers/pwm/pwm-microchip-core.c
|
F: drivers/pwm/pwm-microchip-core.c
|
||||||
F: drivers/reset/reset-mpfs.c
|
F: drivers/reset/reset-mpfs.c
|
||||||
F: drivers/rtc/rtc-mpfs.c
|
F: drivers/rtc/rtc-mpfs.c
|
||||||
@@ -20436,6 +20466,15 @@ M: Ion Badulescu <ionut@badula.org>
|
@@ -20437,6 +20467,15 @@ M: Ion Badulescu <ionut@badula.org>
|
||||||
S: Odd Fixes
|
S: Odd Fixes
|
||||||
F: drivers/net/ethernet/adaptec/starfire*
|
F: drivers/net/ethernet/adaptec/starfire*
|
||||||
|
|
||||||
|
@ -104,7 +104,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
STARFIVE CRYPTO DRIVER
|
STARFIVE CRYPTO DRIVER
|
||||||
M: Jia Jie Ho <jiajie.ho@starfivetech.com>
|
M: Jia Jie Ho <jiajie.ho@starfivetech.com>
|
||||||
M: William Qiu <william.qiu@starfivetech.com>
|
M: William Qiu <william.qiu@starfivetech.com>
|
||||||
@@ -20474,6 +20513,13 @@ S: Supported
|
@@ -20475,6 +20514,13 @@ S: Supported
|
||||||
F: Documentation/devicetree/bindings/clock/starfive,jh7110-pll.yaml
|
F: Documentation/devicetree/bindings/clock/starfive,jh7110-pll.yaml
|
||||||
F: drivers/clk/starfive/clk-starfive-jh7110-pll.c
|
F: drivers/clk/starfive/clk-starfive-jh7110-pll.c
|
||||||
|
|
||||||
|
@ -118,7 +118,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
STARFIVE JH7110 SYSCON
|
STARFIVE JH7110 SYSCON
|
||||||
M: William Qiu <william.qiu@starfivetech.com>
|
M: William Qiu <william.qiu@starfivetech.com>
|
||||||
M: Xingyu Wu <xingyu.wu@starfivetech.com>
|
M: Xingyu Wu <xingyu.wu@starfivetech.com>
|
||||||
@@ -20521,9 +20567,10 @@ F: drivers/usb/cdns3/cdns3-starfive.c
|
@@ -20522,9 +20568,10 @@ F: drivers/usb/cdns3/cdns3-starfive.c
|
||||||
|
|
||||||
STARFIVE JH71XX PMU CONTROLLER DRIVER
|
STARFIVE JH71XX PMU CONTROLLER DRIVER
|
||||||
M: Walker Chen <walker.chen@starfivetech.com>
|
M: Walker Chen <walker.chen@starfivetech.com>
|
||||||
|
@ -130,7 +130,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
F: include/dt-bindings/power/starfive,jh7110-pmu.h
|
F: include/dt-bindings/power/starfive,jh7110-pmu.h
|
||||||
|
|
||||||
STARFIVE SOC DRIVERS
|
STARFIVE SOC DRIVERS
|
||||||
@@ -20531,7 +20578,13 @@ M: Conor Dooley <conor@kernel.org>
|
@@ -20532,7 +20579,13 @@ M: Conor Dooley <conor@kernel.org>
|
||||||
S: Maintained
|
S: Maintained
|
||||||
T: git https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/
|
T: git https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git/
|
||||||
F: Documentation/devicetree/bindings/soc/starfive/
|
F: Documentation/devicetree/bindings/soc/starfive/
|
||||||
|
|
|
@ -16,7 +16,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -917,7 +917,11 @@ static int jh7110_i2stx0_clk_cfg(struct
|
@@ -916,7 +916,11 @@ static int jh7110_i2stx0_clk_cfg(struct
|
||||||
|
|
||||||
static int dw_i2s_probe(struct platform_device *pdev)
|
static int dw_i2s_probe(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
|
|
|
@ -15,7 +15,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
|
|
||||||
--- a/sound/soc/dwc/dwc-i2s.c
|
--- a/sound/soc/dwc/dwc-i2s.c
|
||||||
+++ b/sound/soc/dwc/dwc-i2s.c
|
+++ b/sound/soc/dwc/dwc-i2s.c
|
||||||
@@ -906,6 +906,27 @@ static int jh7110_i2srx_crg_init(struct
|
@@ -905,6 +905,27 @@ static int jh7110_i2srx_crg_init(struct
|
||||||
return jh7110_i2s_crg_slave_init(dev);
|
return jh7110_i2s_crg_slave_init(dev);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
||||||
static int jh7110_i2stx0_clk_cfg(struct i2s_clk_config_data *config)
|
static int jh7110_i2stx0_clk_cfg(struct i2s_clk_config_data *config)
|
||||||
{
|
{
|
||||||
struct dw_i2s_dev *dev = container_of(config, struct dw_i2s_dev, config);
|
struct dw_i2s_dev *dev = container_of(config, struct dw_i2s_dev, config);
|
||||||
@@ -1086,11 +1107,21 @@ static const struct i2s_platform_data jh
|
@@ -1085,11 +1106,21 @@ static const struct i2s_platform_data jh
|
||||||
.i2s_pd_init = jh7110_i2srx_crg_init,
|
.i2s_pd_init = jh7110_i2srx_crg_init,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ Signed-off-by: Emil Renner Berthing <kernel@esmil.dk>
|
||||||
|
|
||||||
--- a/MAINTAINERS
|
--- a/MAINTAINERS
|
||||||
+++ b/MAINTAINERS
|
+++ b/MAINTAINERS
|
||||||
@@ -20555,7 +20555,7 @@ STARFIVE JH71X0 RESET CONTROLLER DRIVERS
|
@@ -20556,7 +20556,7 @@ STARFIVE JH71X0 RESET CONTROLLER DRIVERS
|
||||||
M: Emil Renner Berthing <kernel@esmil.dk>
|
M: Emil Renner Berthing <kernel@esmil.dk>
|
||||||
M: Hal Feng <hal.feng@starfivetech.com>
|
M: Hal Feng <hal.feng@starfivetech.com>
|
||||||
S: Maintained
|
S: Maintained
|
||||||
|
|
Loading…
Reference in a new issue