kernel: bump 6.12 to 6.12.67

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.67

Manually rebased:
  rockchip/patches-6.12/160-01-phy-rockchip-inno-usb2-Simplify-rockchip-usbgrf-handling.patch

Build system: x86/64
Build-tested: flogic/glinet_gl-mt6000
Run-tested: flogic/glinet_gl-mt6000

Signed-off-by: John Audia <therealgraysky@proton.me>
Link: https://github.com/openwrt/openwrt/pull/21629
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
John Audia 2026-01-23 16:22:18 -05:00 committed by Hauke Mehrtens
parent 2ae350b725
commit 2228b7048c
29 changed files with 92 additions and 150 deletions

View file

@ -25,7 +25,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
module_param_named(mousepoll, hid_mousepoll_interval, uint, 0644);
MODULE_PARM_DESC(mousepoll, "Polling interval of mice");
@@ -1117,7 +1117,9 @@ static int usbhid_start(struct hid_devic
@@ -1132,7 +1132,9 @@ static int usbhid_start(struct hid_devic
*/
switch (hid->collection->usage) {
case HID_GD_MOUSE:
@ -36,7 +36,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
interval = hid_mousepoll_interval;
break;
case HID_GD_JOYSTICK:
@@ -1129,6 +1131,7 @@ static int usbhid_start(struct hid_devic
@@ -1144,6 +1146,7 @@ static int usbhid_start(struct hid_devic
interval = hid_kbpoll_interval;
break;
}

View file

@ -315,7 +315,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
ddc = of_parse_phandle(dev->of_node, "ddc-i2c-bus", 0);
if (ddc) {
panel->ddc = of_find_i2c_adapter_by_node(ddc);
@@ -2263,6 +2244,32 @@ static const struct panel_desc friendlya
@@ -2264,6 +2245,32 @@ static const struct panel_desc friendlya
},
};
@ -348,7 +348,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
static const struct drm_display_mode giantplus_gpg482739qs5_mode = {
.clock = 9000,
.hdisplay = 480,
@@ -2443,6 +2450,38 @@ static const struct panel_desc innolux_a
@@ -2444,6 +2451,38 @@ static const struct panel_desc innolux_a
.bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_DRIVE_POSEDGE,
};
@ -387,7 +387,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
static const struct drm_display_mode innolux_at070tn92_mode = {
.clock = 33333,
.hdisplay = 800,
@@ -3856,6 +3895,31 @@ static const struct panel_desc rocktech_
@@ -3857,6 +3896,31 @@ static const struct panel_desc rocktech_
.connector_type = DRM_MODE_CONNECTOR_DPI,
};
@ -419,7 +419,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 },
@@ -4800,6 +4864,9 @@ static const struct of_device_id platfor
@@ -4801,6 +4865,9 @@ static const struct of_device_id platfor
.compatible = "friendlyarm,hd702e",
.data = &friendlyarm_hd702e,
}, {
@ -429,7 +429,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
.compatible = "giantplus,gpg482739qs5",
.data = &giantplus_gpg482739qs5
}, {
@@ -4821,6 +4888,9 @@ static const struct of_device_id platfor
@@ -4822,6 +4889,9 @@ static const struct of_device_id platfor
.compatible = "innolux,at043tn24",
.data = &innolux_at043tn24,
}, {
@ -439,7 +439,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
.compatible = "innolux,at070tn92",
.data = &innolux_at070tn92,
}, {
@@ -4980,6 +5050,9 @@ static const struct of_device_id platfor
@@ -4981,6 +5051,9 @@ static const struct of_device_id platfor
.compatible = "rocktech,rk043fn48h",
.data = &rocktech_rk043fn48h,
}, {
@ -449,7 +449,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
.compatible = "rocktech,rk070er9427",
.data = &rocktech_rk070er9427,
}, {
@@ -5336,6 +5409,9 @@ static const struct panel_desc_dsi osd10
@@ -5337,6 +5410,9 @@ static const struct panel_desc_dsi osd10
.lanes = 4,
};
@ -459,7 +459,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
static const struct of_device_id dsi_of_match[] = {
{
.compatible = "auo,b080uan01",
@@ -5359,20 +5435,137 @@ static const struct of_device_id dsi_of_
@@ -5360,20 +5436,137 @@ static const struct of_device_id dsi_of_
.compatible = "osddisplays,osd101t2045-53ts",
.data = &osd101t2045_53ts
}, {

View file

@ -20,7 +20,7 @@ Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -207,6 +207,27 @@ EXPORT_SYMBOL(node_states);
@@ -234,6 +234,27 @@ EXPORT_SYMBOL(node_states);
gfp_t gfp_allowed_mask __read_mostly = GFP_BOOT_MASK;
@ -48,7 +48,7 @@ Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
#ifdef CONFIG_HUGETLB_PAGE_SIZE_VARIABLE
unsigned int pageblock_order __read_mostly;
#endif
@@ -2265,12 +2286,13 @@ __rmqueue(struct zone *zone, unsigned in
@@ -2292,12 +2313,13 @@ __rmqueue(struct zone *zone, unsigned in
if (IS_ENABLED(CONFIG_CMA)) {
/*
* Balance movable allocations between regular and CMA areas by

View file

@ -212,7 +212,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
},
--- a/drivers/usb/dwc3/core.c
+++ b/drivers/usb/dwc3/core.c
@@ -1320,6 +1320,24 @@ static void dwc3_config_threshold(struct
@@ -1322,6 +1322,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
@@ -1387,6 +1405,8 @@ static int dwc3_core_init(struct dwc3 *d
@@ -1389,6 +1407,8 @@ static int dwc3_core_init(struct dwc3 *d
dwc3_config_soc_bus(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;
@@ -1491,6 +1511,24 @@ static int dwc3_core_init(struct dwc3 *d
@@ -1493,6 +1513,24 @@ static int dwc3_core_init(struct dwc3 *d
dwc3_writel(dwc->regs, DWC3_LLUCTL, reg);
}
@ -271,7 +271,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
return 0;
err_power_off_phy:
@@ -1676,6 +1714,7 @@ static void dwc3_get_properties(struct d
@@ -1678,6 +1716,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>
/* default to highest possible threshold */
lpm_nyet_threshold = 0xf;
@@ -1696,6 +1735,9 @@ static void dwc3_get_properties(struct d
@@ -1698,6 +1737,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);
@@ -1810,6 +1852,9 @@ static void dwc3_get_properties(struct d
@@ -1812,6 +1854,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;
@@ -1827,6 +1872,8 @@ static void dwc3_get_properties(struct d
@@ -1829,6 +1874,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->tx_fifo_resize_max_num = tx_fifo_resize_max_num;
}
@@ -2185,6 +2232,12 @@ static int dwc3_probe(struct platform_de
@@ -2187,6 +2234,12 @@ static int dwc3_probe(struct platform_de
if (IS_ERR(dwc->usb_psy))
return dev_err_probe(dev, PTR_ERR(dwc->usb_psy), "couldn't get usb power supply\n");
@ -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
@@ -1337,6 +1341,7 @@ struct dwc3 {
@@ -1338,6 +1342,7 @@ struct dwc3 {
u8 tx_max_burst_prd;
u8 tx_fifo_resize_max_num;
u8 clear_stall_protocol;

View file

@ -16,7 +16,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- a/drivers/usb/dwc3/core.c
+++ b/drivers/usb/dwc3/core.c
@@ -1486,6 +1486,9 @@ static int dwc3_core_init(struct dwc3 *d
@@ -1488,6 +1488,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)) {
if (dwc->maximum_speed == USB_SPEED_FULL ||
dwc->maximum_speed == USB_SPEED_HIGH)
@@ -1832,6 +1835,8 @@ static void dwc3_get_properties(struct d
@@ -1834,6 +1837,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>
* @gfladj_refclk_lpm_sel: set if we need to enable SOF/ITP counter
* running based on ref_clk
* @tx_de_emphasis_quirk: set if we enable Tx de-emphasis quirk
@@ -1385,6 +1388,7 @@ struct dwc3 {
@@ -1386,6 +1389,7 @@ struct dwc3 {
unsigned ulpi_ext_vbus_drv:1;
unsigned parkmode_disable_ss_quirk:1;
unsigned parkmode_disable_hs_quirk:1;

View file

@ -84,9 +84,9 @@ Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
#include <linux/numa_memblks.h>
+#include <linux/cma.h>
#include <asm/numa.h>
#include <acpi/acpi_numa.h>
#define FAKE_NODE_MIN_SIZE ((u64)32 << 20)
@@ -51,6 +52,7 @@ static int __init emu_setup_memblk(struc
@@ -52,6 +53,7 @@ static int __init emu_setup_memblk(struc
{
struct numa_memblk *eb = &ei->blk[ei->nr_blks];
struct numa_memblk *pb = &pi->blk[phys_blk];
@ -94,7 +94,7 @@ Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
if (ei->nr_blks >= NR_NODE_MEMBLKS) {
pr_err("NUMA: Too many emulated memblks, failing emulation\n");
@@ -62,6 +64,10 @@ static int __init emu_setup_memblk(struc
@@ -63,6 +65,10 @@ static int __init emu_setup_memblk(struc
eb->end = pb->start + size;
eb->nid = nid;

View file

@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- a/drivers/usb/dwc3/core.c
+++ b/drivers/usb/dwc3/core.c
@@ -1480,6 +1480,12 @@ static int dwc3_core_init(struct dwc3 *d
@@ -1482,6 +1482,12 @@ static int dwc3_core_init(struct dwc3 *d
if (dwc->dis_tx_ipgap_linecheck_quirk)
reg |= DWC3_GUCTL1_TX_IPGAP_LINECHECK_DIS;
@ -35,7 +35,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
if (dwc->parkmode_disable_ss_quirk)
reg |= DWC3_GUCTL1_PARKMODE_DISABLE_SS;
@@ -1831,6 +1837,10 @@ static void dwc3_get_properties(struct d
@@ -1833,6 +1839,10 @@ static void dwc3_get_properties(struct d
"snps,resume-hs-terminations");
dwc->ulpi_ext_vbus_drv = device_property_read_bool(dev,
"snps,ulpi-ext-vbus-drv");
@ -66,7 +66,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
* @parkmode_disable_ss_quirk: If set, disable park mode feature for all
* Superspeed instances.
* @parkmode_disable_hs_quirk: If set, disable park mode feature for all
@@ -1386,6 +1390,8 @@ struct dwc3 {
@@ -1387,6 +1391,8 @@ struct dwc3 {
unsigned dis_tx_ipgap_linecheck_quirk:1;
unsigned resume_hs_terminations:1;
unsigned ulpi_ext_vbus_drv:1;

View file

@ -18,7 +18,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
--- a/drivers/nvme/host/pci.c
+++ b/drivers/nvme/host/pci.c
@@ -2106,6 +2106,7 @@ static void nvme_free_host_mem(struct nv
@@ -2109,6 +2109,7 @@ static void nvme_free_host_mem(struct nv
dev->nr_host_mem_descs = 0;
}
@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
static int __nvme_alloc_host_mem(struct nvme_dev *dev, u64 preferred,
u32 chunk_size)
{
@@ -2174,9 +2175,11 @@ out:
@@ -2177,9 +2178,11 @@ out:
dev->host_mem_descs = NULL;
return -ENOMEM;
}
@ -38,7 +38,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
u64 min_chunk = min_t(u64, preferred, PAGE_SIZE * MAX_ORDER_NR_PAGES);
u64 hmminds = max_t(u32, dev->ctrl.hmminds * 4096, PAGE_SIZE * 2);
u64 chunk_size;
@@ -2189,6 +2192,7 @@ static int nvme_alloc_host_mem(struct nv
@@ -2192,6 +2195,7 @@ static int nvme_alloc_host_mem(struct nv
nvme_free_host_mem(dev);
}
}

View file

@ -15,8 +15,6 @@ Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/clk-en7523.c | 93 ++++++++++++++--------------------------
1 file changed, 33 insertions(+), 60 deletions(-)
diff --git a/drivers/clk/clk-en7523.c b/drivers/clk/clk-en7523.c
index fdd8ea989ed2..60dc938144d7 100644
--- a/drivers/clk/clk-en7523.c
+++ b/drivers/clk/clk-en7523.c
@@ -76,11 +76,6 @@ struct en_rst_data {
@ -31,7 +29,7 @@ index fdd8ea989ed2..60dc938144d7 100644
int (*hw_init)(struct platform_device *pdev,
struct clk_hw_onecell_data *clk_data);
};
@@ -595,32 +590,6 @@ static void en7581_register_clocks(struct device *dev, struct clk_hw_onecell_dat
@@ -596,32 +591,6 @@ static void en7581_register_clocks(struc
clk_data->num = EN7523_NUM_CLOCKS;
}
@ -64,7 +62,7 @@ index fdd8ea989ed2..60dc938144d7 100644
static int en7523_reset_update(struct reset_controller_dev *rcdev,
unsigned long id, bool assert)
{
@@ -670,23 +639,18 @@ static int en7523_reset_xlate(struct reset_controller_dev *rcdev,
@@ -671,23 +640,18 @@ static int en7523_reset_xlate(struct res
return rst_data->idx_map[reset_spec->args[0]];
}
@ -90,7 +88,7 @@ index fdd8ea989ed2..60dc938144d7 100644
base = devm_platform_ioremap_resource(pdev, 1);
if (IS_ERR(base))
return PTR_ERR(base);
@@ -695,13 +659,13 @@ static int en7523_reset_register(struct platform_device *pdev,
@@ -696,13 +660,13 @@ static int en7523_reset_register(struct
if (!rst_data)
return -ENOMEM;
@ -108,7 +106,7 @@ index fdd8ea989ed2..60dc938144d7 100644
rst_data->rcdev.of_node = dev->of_node;
rst_data->rcdev.of_reset_n_cells = 1;
rst_data->rcdev.owner = THIS_MODULE;
@@ -710,6 +674,32 @@ static int en7523_reset_register(struct platform_device *pdev,
@@ -711,6 +675,32 @@ static int en7523_reset_register(struct
return devm_reset_controller_register(dev, &rst_data->rcdev);
}
@ -141,7 +139,7 @@ index fdd8ea989ed2..60dc938144d7 100644
static int en7523_clk_probe(struct platform_device *pdev)
{
struct device_node *node = pdev->dev.of_node;
@@ -728,19 +718,7 @@ static int en7523_clk_probe(struct platform_device *pdev)
@@ -729,19 +719,7 @@ static int en7523_clk_probe(struct platf
if (r)
return r;
@ -162,7 +160,7 @@ index fdd8ea989ed2..60dc938144d7 100644
}
static const struct en_clk_soc_data en7523_data = {
@@ -758,11 +736,6 @@ static const struct en_clk_soc_data en7581_data = {
@@ -759,11 +737,6 @@ static const struct en_clk_soc_data en75
.enable = en7581_pci_enable,
.disable = en7581_pci_disable,
},
@ -174,6 +172,3 @@ index fdd8ea989ed2..60dc938144d7 100644
.hw_init = en7581_clk_hw_init,
};
--
2.39.5

View file

@ -14,8 +14,6 @@ Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/clk-en7523.c | 32 +++++++++++++-------------------
1 file changed, 13 insertions(+), 19 deletions(-)
diff --git a/drivers/clk/clk-en7523.c b/drivers/clk/clk-en7523.c
index 60dc938144d7..e52c5460e927 100644
--- a/drivers/clk/clk-en7523.c
+++ b/drivers/clk/clk-en7523.c
@@ -39,8 +39,8 @@
@ -29,7 +27,7 @@ index 60dc938144d7..e52c5460e927 100644
struct en_clk_desc {
int id;
@@ -645,15 +645,9 @@ static const struct reset_control_ops en7581_reset_ops = {
@@ -646,15 +646,9 @@ static const struct reset_control_ops en
.status = en7523_reset_status,
};
@ -46,7 +44,7 @@ index 60dc938144d7..e52c5460e927 100644
rst_data = devm_kzalloc(dev, sizeof(*rst_data), GFP_KERNEL);
if (!rst_data)
@@ -677,27 +671,27 @@ static int en7581_reset_register(struct platform_device *pdev)
@@ -678,27 +672,27 @@ static int en7581_reset_register(struct
static int en7581_clk_hw_init(struct platform_device *pdev,
struct clk_hw_onecell_data *clk_data)
{
@ -84,6 +82,3 @@ index 60dc938144d7..e52c5460e927 100644
}
static int en7523_clk_probe(struct platform_device *pdev)
--
2.39.5

View file

@ -30,11 +30,9 @@ Acked-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/clk-en7523.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/clk/clk-en7523.c b/drivers/clk/clk-en7523.c
index e52c5460e927..513730e5b953 100644
--- a/drivers/clk/clk-en7523.c
+++ b/drivers/clk/clk-en7523.c
@@ -477,7 +477,6 @@ static int en7581_pci_enable(struct clk_hw *hw)
@@ -478,7 +478,6 @@ static int en7581_pci_enable(struct clk_
REG_PCI_CONTROL_PERSTOUT;
val = readl(np_base + REG_PCI_CONTROL);
writel(val | mask, np_base + REG_PCI_CONTROL);
@ -42,6 +40,3 @@ index e52c5460e927..513730e5b953 100644
return 0;
}
--
2.39.5

View file

@ -18,8 +18,6 @@ Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/clk-en7523.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/drivers/clk/clk-en7523.c b/drivers/clk/clk-en7523.c
index 495c0d607c7d..3a4b7ed40af4 100644
--- a/drivers/clk/clk-en7523.c
+++ b/drivers/clk/clk-en7523.c
@@ -75,6 +75,7 @@ struct en_rst_data {
@ -30,7 +28,7 @@ index 495c0d607c7d..3a4b7ed40af4 100644
const struct clk_ops pcie_ops;
int (*hw_init)(struct platform_device *pdev,
struct clk_hw_onecell_data *clk_data);
@@ -504,8 +505,6 @@ static void en7523_register_clocks(struct device *dev, struct clk_hw_onecell_dat
@@ -503,8 +504,6 @@ static void en7523_register_clocks(struc
u32 rate;
int i;
@ -39,7 +37,7 @@ index 495c0d607c7d..3a4b7ed40af4 100644
for (i = 0; i < ARRAY_SIZE(en7523_base_clks); i++) {
const struct en_clk_desc *desc = &en7523_base_clks[i];
u32 reg = desc->div_reg ? desc->div_reg : desc->base_reg;
@@ -587,8 +586,6 @@ static void en7581_register_clocks(struct device *dev, struct clk_hw_onecell_dat
@@ -586,8 +585,6 @@ static void en7581_register_clocks(struc
hw = en7523_register_pcie_clk(dev, base);
clk_data->hws[EN7523_CLK_PCIE] = hw;
@ -48,7 +46,7 @@ index 495c0d607c7d..3a4b7ed40af4 100644
}
static int en7523_reset_update(struct reset_controller_dev *rcdev,
@@ -702,13 +699,15 @@ static int en7523_clk_probe(struct platform_device *pdev)
@@ -701,13 +698,15 @@ static int en7523_clk_probe(struct platf
struct clk_hw_onecell_data *clk_data;
int r;
@ -66,7 +64,7 @@ index 495c0d607c7d..3a4b7ed40af4 100644
r = soc_data->hw_init(pdev, clk_data);
if (r)
return r;
@@ -717,6 +716,7 @@ static int en7523_clk_probe(struct platform_device *pdev)
@@ -716,6 +715,7 @@ static int en7523_clk_probe(struct platf
}
static const struct en_clk_soc_data en7523_data = {
@ -74,7 +72,7 @@ index 495c0d607c7d..3a4b7ed40af4 100644
.pcie_ops = {
.is_enabled = en7523_pci_is_enabled,
.prepare = en7523_pci_prepare,
@@ -726,6 +726,8 @@ static const struct en_clk_soc_data en7523_data = {
@@ -725,6 +725,8 @@ static const struct en_clk_soc_data en75
};
static const struct en_clk_soc_data en7581_data = {
@ -83,6 +81,3 @@ index 495c0d607c7d..3a4b7ed40af4 100644
.pcie_ops = {
.is_enabled = en7581_pci_is_enabled,
.enable = en7581_pci_enable,
--
2.39.5

View file

@ -13,11 +13,9 @@ Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/clk-en7523.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/drivers/clk/clk-en7523.c b/drivers/clk/clk-en7523.c
index 3a4b7ed40af4..6a763bc9ac1a 100644
--- a/drivers/clk/clk-en7523.c
+++ b/drivers/clk/clk-en7523.c
@@ -91,6 +91,7 @@ static const u32 emi7581_base[] = { 540000000, 480000000, 400000000, 300000000 }
@@ -91,6 +91,7 @@ static const u32 emi7581_base[] = { 5400
static const u32 bus7581_base[] = { 600000000, 540000000 };
static const u32 npu7581_base[] = { 800000000, 750000000, 720000000, 600000000 };
static const u32 crypto_base[] = { 540000000, 480000000 };
@ -25,7 +23,7 @@ index 3a4b7ed40af4..6a763bc9ac1a 100644
static const struct en_clk_desc en7523_base_clks[] = {
{
@@ -281,6 +282,15 @@ static const struct en_clk_desc en7581_base_clks[] = {
@@ -281,6 +282,15 @@ static const struct en_clk_desc en7581_b
.base_shift = 0,
.base_values = crypto_base,
.n_base_values = ARRAY_SIZE(crypto_base),
@ -41,6 +39,3 @@ index 3a4b7ed40af4..6a763bc9ac1a 100644
}
};
--
2.39.5

View file

@ -14,8 +14,6 @@ Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/clk-en7523.c | 64 ++++++++++++++++++++++++++++++++++++----
1 file changed, 59 insertions(+), 5 deletions(-)
diff --git a/drivers/clk/clk-en7523.c b/drivers/clk/clk-en7523.c
index 15bbdeb60b8e..08cc8e5acf43 100644
--- a/drivers/clk/clk-en7523.c
+++ b/drivers/clk/clk-en7523.c
@@ -9,6 +9,7 @@
@ -90,7 +88,7 @@ index 15bbdeb60b8e..08cc8e5acf43 100644
static u32 en7523_get_base_rate(const struct en_clk_desc *desc, u32 val)
{
if (!desc->base_bits)
@@ -552,7 +603,8 @@ static int en7523_clk_hw_init(struct platform_device *pdev,
@@ -552,7 +603,8 @@ static int en7523_clk_hw_init(struct pla
en7523_register_clocks(&pdev->dev, clk_data, base, np_base);
@ -100,7 +98,7 @@ index 15bbdeb60b8e..08cc8e5acf43 100644
}
static void en7581_register_clocks(struct device *dev, struct clk_hw_onecell_data *clk_data,
@@ -652,7 +704,8 @@ static const struct reset_control_ops en7581_reset_ops = {
@@ -652,7 +704,8 @@ static const struct reset_control_ops en
.status = en7523_reset_status,
};
@ -110,7 +108,7 @@ index 15bbdeb60b8e..08cc8e5acf43 100644
{
struct en_rst_data *rst_data;
@@ -661,10 +714,10 @@ static int en7581_reset_register(struct device *dev, void __iomem *base)
@@ -661,10 +714,10 @@ static int en7581_reset_register(struct
return -ENOMEM;
rst_data->bank_ofs = en7581_rst_ofs;
@ -123,7 +121,7 @@ index 15bbdeb60b8e..08cc8e5acf43 100644
rst_data->rcdev.of_xlate = en7523_reset_xlate;
rst_data->rcdev.ops = &en7581_reset_ops;
rst_data->rcdev.of_node = dev->of_node;
@@ -698,7 +751,8 @@ static int en7581_clk_hw_init(struct platform_device *pdev,
@@ -698,7 +751,8 @@ static int en7581_clk_hw_init(struct pla
val = readl(base + REG_NP_SCU_PCIC);
writel(val | 3, base + REG_NP_SCU_PCIC);
@ -133,6 +131,3 @@ index 15bbdeb60b8e..08cc8e5acf43 100644
}
static int en7523_clk_probe(struct platform_device *pdev)
--
2.39.5

View file

@ -14,20 +14,18 @@ Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Documentation/devicetree/bindings/clock/airoha,en7523-scu.yaml | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/clock/airoha,en7523-scu.yaml b/Documentation/devicetree/bindings/clock/airoha,en7523-scu.yaml
index fe2c5c1baf43..a8471367175b 100644
--- a/Documentation/devicetree/bindings/clock/airoha,en7523-scu.yaml
+++ b/Documentation/devicetree/bindings/clock/airoha,en7523-scu.yaml
@@ -64,8 +64,6 @@ allOf:
reg:
minItems: 2
- description: scu base address
- description: misc scu base address
- '#reset-cells': false
-
- if:
properties:
compatible:
@@ -85,6 +83,7 @@ examples:
@@ -89,6 +87,7 @@ examples:
reg = <0x1fa20000 0x400>,
<0x1fb00000 0x1000>;
#clock-cells = <1>;
@ -35,6 +33,3 @@ index fe2c5c1baf43..a8471367175b 100644
};
- |
--
2.39.5

View file

@ -18,8 +18,6 @@ Signed-off-by: Stephen Boyd <sboyd@kernel.org>
.../bindings/clock/airoha,en7523-scu.yaml | 23 +++++++------------
1 file changed, 8 insertions(+), 15 deletions(-)
diff --git a/Documentation/devicetree/bindings/clock/airoha,en7523-scu.yaml b/Documentation/devicetree/bindings/clock/airoha,en7523-scu.yaml
index 84353fd09428..fe2c5c1baf43 100644
--- a/Documentation/devicetree/bindings/clock/airoha,en7523-scu.yaml
+++ b/Documentation/devicetree/bindings/clock/airoha,en7523-scu.yaml
@@ -34,8 +34,10 @@ properties:
@ -44,9 +42,9 @@ index 84353fd09428..fe2c5c1baf43 100644
- - description: misc scu base address
+ minItems: 2
'#reset-cells': false
@@ -73,11 +73,7 @@ allOf:
- if:
properties:
@@ -71,11 +71,7 @@ allOf:
then:
properties:
reg:
@ -59,7 +57,7 @@ index 84353fd09428..fe2c5c1baf43 100644
additionalProperties: false
@@ -96,12 +92,9 @@ examples:
@@ -95,12 +91,9 @@ examples:
#address-cells = <2>;
#size-cells = <2>;
@ -74,6 +72,3 @@ index 84353fd09428..fe2c5c1baf43 100644
#clock-cells = <1>;
#reset-cells = <1>;
};
--
2.39.5

View file

@ -15,9 +15,6 @@ Signed-off-by: Stephen Boyd <sboyd@kernel.org>
1 file changed, 61 insertions(+)
create mode 100644 include/dt-bindings/reset/airoha,en7523-reset.h
diff --git a/include/dt-bindings/reset/airoha,en7523-reset.h b/include/dt-bindings/reset/airoha,en7523-reset.h
new file mode 100644
index 000000000000..211e8a23a21c
--- /dev/null
+++ b/include/dt-bindings/reset/airoha,en7523-reset.h
@@ -0,0 +1,61 @@
@ -82,6 +79,3 @@ index 000000000000..211e8a23a21c
+#define EN7523_XPON_MAC_RST 41
+
+#endif /* __DT_BINDINGS_RESET_CONTROLLER_AIROHA_EN7523_H_ */
--
2.39.5

View file

@ -15,8 +15,6 @@ Signed-off-by: Stephen Boyd <sboyd@kernel.org>
include/dt-bindings/clock/en7523-clk.h | 2 --
1 file changed, 2 deletions(-)
diff --git a/include/dt-bindings/clock/en7523-clk.h b/include/dt-bindings/clock/en7523-clk.h
index 717d23a5e5ae..28e56745ccff 100644
--- a/include/dt-bindings/clock/en7523-clk.h
+++ b/include/dt-bindings/clock/en7523-clk.h
@@ -12,6 +12,4 @@
@ -26,6 +24,3 @@ index 717d23a5e5ae..28e56745ccff 100644
-#define EN7523_NUM_CLOCKS 8
-
#endif /* _DT_BINDINGS_CLOCK_AIROHA_EN7523_H_ */
--
2.39.5

View file

@ -14,8 +14,6 @@ Signed-off-by: Stephen Boyd <sboyd@kernel.org>
include/dt-bindings/clock/en7523-clk.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/dt-bindings/clock/en7523-clk.h b/include/dt-bindings/clock/en7523-clk.h
index 28e56745ccff..edfa64045f52 100644
--- a/include/dt-bindings/clock/en7523-clk.h
+++ b/include/dt-bindings/clock/en7523-clk.h
@@ -12,4 +12,6 @@
@ -25,6 +23,3 @@ index 28e56745ccff..edfa64045f52 100644
+#define EN7581_CLK_EMMC 8
+
#endif /* _DT_BINDINGS_CLOCK_AIROHA_EN7523_H_ */
--
2.39.5

View file

@ -97,7 +97,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
help
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -3658,6 +3658,11 @@ static int xmit_one(struct sk_buff *skb,
@@ -3671,6 +3671,11 @@ static int xmit_one(struct sk_buff *skb,
if (dev_nit_active(dev))
dev_queue_xmit_nit(skb, dev);

View file

@ -247,7 +247,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
}
--- a/mm/vmstat.c
+++ b/mm/vmstat.c
@@ -2195,10 +2195,12 @@ void __init init_mm_internals(void)
@@ -2197,10 +2197,12 @@ void __init init_mm_internals(void)
start_shepherd_timer();
#endif
#ifdef CONFIG_PROC_FS

View file

@ -1,2 +1,2 @@
LINUX_VERSION-6.12 = .66
LINUX_KERNEL_HASH-6.12.66 = ba3897a1c060b05a03cb4dda6f20d8c75e6f73c88b217744823a915056536eaf
LINUX_VERSION-6.12 = .67
LINUX_KERNEL_HASH-6.12.67 = 16805dc62e1fa5ef8a3f466f3f44a2efb171b5206d6840ced4ba5475cf12c432

View file

@ -35,7 +35,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
| NETIF_F_HW_CSUM
--- a/drivers/net/macvlan.c
+++ b/drivers/net/macvlan.c
@@ -897,7 +897,7 @@ static int macvlan_hwtstamp_set(struct n
@@ -903,7 +903,7 @@ static int macvlan_hwtstamp_set(struct n
static struct lock_class_key macvlan_netdev_addr_lock_key;
#define ALWAYS_ON_OFFLOADS \

View file

@ -19,7 +19,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
--- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
@@ -435,7 +435,8 @@ static int rockchip_usb2phy_extcon_regis
@@ -433,7 +433,8 @@ static int rockchip_usb2phy_extcon_regis
rockchip_usb2phy_extcon_cable);
if (IS_ERR(edev))
@ -28,4 +28,4 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
+ "failed to allocate extcon device\n");
ret = devm_extcon_dev_register(rphy->dev, edev);
if (ret) {
if (ret)

View file

@ -83,7 +83,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
init.parent_names = &clk_name;
init.num_parents = 1;
} else {
@@ -1407,11 +1425,13 @@ static int rockchip_usb2phy_probe(struct
@@ -1408,16 +1426,26 @@ static int rockchip_usb2phy_probe(struct
if (IS_ERR(rphy->phy_reset))
return PTR_ERR(rphy->phy_reset);
@ -101,10 +101,8 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
+ rphy->num_clks = ret < 0 ? 0 : ret;
ret = rockchip_usb2phy_clk480m_register(rphy);
if (ret) {
@@ -1419,6 +1439,14 @@ static int rockchip_usb2phy_probe(struct
return ret;
}
if (ret)
return dev_err_probe(dev, ret, "failed to register 480m output clock\n");
+ ret = clk_bulk_prepare_enable(rphy->num_clks, rphy->clks);
+ if (ret)

View file

@ -17,7 +17,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
--- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
@@ -1524,6 +1524,30 @@ static int rk3128_usb2phy_tuning(struct
@@ -1521,6 +1521,30 @@ static int rk3128_usb2phy_tuning(struct
BIT(2) << BIT_WRITEABLE_SHIFT | 0);
}
@ -48,7 +48,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
static int rk3588_usb2phy_tuning(struct rockchip_usb2phy *rphy)
{
int ret;
@@ -1952,6 +1976,84 @@ static const struct rockchip_usb2phy_cfg
@@ -1949,6 +1973,84 @@ static const struct rockchip_usb2phy_cfg
{ /* sentinel */ }
};
@ -133,7 +133,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
static const struct rockchip_usb2phy_cfg rk3588_phy_cfgs[] = {
{
.reg = 0x0000,
@@ -2123,6 +2225,7 @@ static const struct of_device_id rockchi
@@ -2120,6 +2222,7 @@ static const struct of_device_id rockchi
{ .compatible = "rockchip,rk3366-usb2phy", .data = &rk3366_phy_cfgs },
{ .compatible = "rockchip,rk3399-usb2phy", .data = &rk3399_phy_cfgs },
{ .compatible = "rockchip,rk3568-usb2phy", .data = &rk3568_phy_cfgs },

View file

@ -86,7 +86,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
}
static unsigned long
@@ -577,7 +567,6 @@ static int rockchip_usb2phy_power_on(str
@@ -574,7 +564,6 @@ static int rockchip_usb2phy_power_on(str
{
struct rockchip_usb2phy_port *rport = phy_get_drvdata(phy);
struct rockchip_usb2phy *rphy = dev_get_drvdata(phy->dev.parent);
@ -94,7 +94,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
int ret;
dev_dbg(&rport->phy->dev, "port power on\n");
@@ -589,7 +578,7 @@ static int rockchip_usb2phy_power_on(str
@@ -586,7 +575,7 @@ static int rockchip_usb2phy_power_on(str
if (ret)
return ret;
@ -103,7 +103,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
if (ret) {
clk_disable_unprepare(rphy->clk480m);
return ret;
@@ -618,7 +607,6 @@ static int rockchip_usb2phy_power_off(st
@@ -615,7 +604,6 @@ static int rockchip_usb2phy_power_off(st
{
struct rockchip_usb2phy_port *rport = phy_get_drvdata(phy);
struct rockchip_usb2phy *rphy = dev_get_drvdata(phy->dev.parent);
@ -111,7 +111,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
int ret;
dev_dbg(&rport->phy->dev, "port power off\n");
@@ -626,7 +614,7 @@ static int rockchip_usb2phy_power_off(st
@@ -623,7 +611,7 @@ static int rockchip_usb2phy_power_off(st
if (rport->suspended)
return 0;
@ -120,7 +120,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
if (ret)
return ret;
@@ -790,28 +778,22 @@ static const char *chg_to_string(enum po
@@ -787,28 +775,22 @@ static const char *chg_to_string(enum po
static void rockchip_chg_enable_dcd(struct rockchip_usb2phy *rphy,
bool en)
{
@ -155,33 +155,33 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
}
#define CHG_DCD_POLL_TIME (100 * HZ / 1000)
@@ -823,7 +805,6 @@ static void rockchip_chg_detect_work(str
@@ -820,7 +802,6 @@ static void rockchip_chg_detect_work(str
struct rockchip_usb2phy_port *rport =
container_of(work, struct rockchip_usb2phy_port, chg_work.work);
struct rockchip_usb2phy *rphy = dev_get_drvdata(rport->phy->dev.parent);
- struct regmap *base = get_reg_base(rphy);
bool is_dcd, tmout, vout;
bool is_dcd, tmout, vout, vbus_attach;
unsigned long delay;
@@ -834,7 +815,7 @@ static void rockchip_chg_detect_work(str
if (!rport->suspended)
rockchip_usb2phy_power_off(rport->phy);
/* put the controller in non-driving mode */
- property_enable(base, &rphy->phy_cfg->chg_det.opmode, false);
+ property_enable(rphy->grf, &rphy->phy_cfg->chg_det.opmode, false);
if (!vbus_attach)
- property_enable(base, &rphy->phy_cfg->chg_det.opmode, false);
+ property_enable(rphy->grf, &rphy->phy_cfg->chg_det.opmode, false);
/* Start DCD processing stage 1 */
rockchip_chg_enable_dcd(rphy, true);
rphy->chg_state = USB_CHG_STATE_WAIT_FOR_DCD;
@@ -897,7 +878,7 @@ static void rockchip_chg_detect_work(str
fallthrough;
@@ -898,7 +879,7 @@ static void rockchip_chg_detect_work(str
case USB_CHG_STATE_DETECTED:
/* put the controller in normal mode */
- property_enable(base, &rphy->phy_cfg->chg_det.opmode, true);
+ property_enable(rphy->grf, &rphy->phy_cfg->chg_det.opmode, true);
if (!vbus_attach)
- property_enable(base, &rphy->phy_cfg->chg_det.opmode, true);
+ property_enable(rphy->grf, &rphy->phy_cfg->chg_det.opmode, true);
rockchip_usb2phy_otg_sm_work(&rport->otg_sm_work.work);
dev_dbg(&rport->phy->dev, "charger = %s\n",
chg_to_string(rphy->chg_type));
@@ -1352,29 +1333,14 @@ static int rockchip_usb2phy_probe(struct
@@ -1353,29 +1334,14 @@ static int rockchip_usb2phy_probe(struct
if (!rphy)
return -ENOMEM;

View file

@ -107,7 +107,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
}
static unsigned long
@@ -1335,9 +1360,13 @@ static int rockchip_usb2phy_probe(struct
@@ -1336,9 +1361,13 @@ static int rockchip_usb2phy_probe(struct
if (!dev->parent || !dev->parent->of_node ||
of_property_present(np, "rockchip,usbgrf")) {

View file

@ -28,7 +28,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
--- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
@@ -1519,6 +1519,28 @@ static int rk3128_usb2phy_tuning(struct
@@ -1516,6 +1516,28 @@ static int rk3128_usb2phy_tuning(struct
BIT(2) << BIT_WRITEABLE_SHIFT | 0);
}
@ -57,7 +57,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
static int rk3576_usb2phy_tuning(struct rockchip_usb2phy *rphy)
{
int ret;
@@ -1901,6 +1923,57 @@ static const struct rockchip_usb2phy_cfg
@@ -1898,6 +1920,57 @@ static const struct rockchip_usb2phy_cfg
{ /* sentinel */ }
};
@ -115,7 +115,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
static const struct rockchip_usb2phy_cfg rk3568_phy_cfgs[] = {
{
.reg = 0xfe8a0000,
@@ -2219,6 +2292,7 @@ static const struct of_device_id rockchi
@@ -2216,6 +2289,7 @@ static const struct of_device_id rockchi
{ .compatible = "rockchip,rk3328-usb2phy", .data = &rk3328_phy_cfgs },
{ .compatible = "rockchip,rk3366-usb2phy", .data = &rk3366_phy_cfgs },
{ .compatible = "rockchip,rk3399-usb2phy", .data = &rk3399_phy_cfgs },