)]}'
{
  "log": [
    {
      "commit": "4d257993af63cf11934a40896a65546141d54ba2",
      "tree": "73d894e7d5c5864b2355c3fc4055f739cb57a7eb",
      "parents": [
        "88eec49ec68a54fe9a988b6f3edc39158813ff7f"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Nov 12 10:31:12 2024 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:53:38 2026 +0200"
      },
      "message": "[LOCAL] riscv: rzfive: defconfig: Update for renesas-drivers\n\nUpdate the defconfig for Renesas RZ/Five systems:\n  - Compile the kernel with warnings as errors.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n"
    },
    {
      "commit": "88eec49ec68a54fe9a988b6f3edc39158813ff7f",
      "tree": "d6d4791273d9068e3203fefad0b1c3dcb7c45e76",
      "parents": [
        "20d9c5adfdf975b9c1d50766d80a78da5be46fb6"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jul 17 11:30:29 2018 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:53:38 2026 +0200"
      },
      "message": "[LOCAL] arm64: renesas: defconfig: Update for renesas-drivers\n\nUpdate the defconfig for Renesas ARM64 systems:\n  - Compile the kernel with warnings as errors,\n  - Enable kexec file based system call (kexec is cool),\n  - Disable HiSilicon Hip09 erratum 162100125 support (not applicable).\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n"
    },
    {
      "commit": "20d9c5adfdf975b9c1d50766d80a78da5be46fb6",
      "tree": "73e76de0b2e9b577364e7bcb2ae0b215cd944b3c",
      "parents": [
        "db593818b11be371068f41e6126f9002a0b21b7f"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Sep 14 09:48:50 2021 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:53:38 2026 +0200"
      },
      "message": "ARM: shmobile: defconfig: Update for renesas-drivers\n\nUpdate the defconfig for Renesas ARM systems:\n  - Compile the kernel with warnings as errors.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n"
    },
    {
      "commit": "db593818b11be371068f41e6126f9002a0b21b7f",
      "tree": "e25f91312f67340d573d6aaa07e7ee618fe7127a",
      "parents": [
        "de183db6348683d3ed475da0c90597c49350a5d7"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Wed Jan 24 17:03:13 2024 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:53:38 2026 +0200"
      },
      "message": "[TEST] soc: renesas: rcar-rst: Enable WDT reset on early R-Car V4M\n\nEarly R-Car V4M firmware versions do not enable WDT resets, so enable it\nmanually.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n"
    },
    {
      "commit": "de183db6348683d3ed475da0c90597c49350a5d7",
      "tree": "9d905c9a465c8482a048206b2ee0843f8a5da66a",
      "parents": [
        "797d35514afe60874e0f96c3db777691f7f4ce9a",
        "f47ee77bed98b306b2b4a3934470f9cee3a7361f"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:53:37 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:53:37 2026 +0200"
      },
      "message": "Merge branch \u0027topic/rcar-x5h-ironhide-scmi-cpg-mdlc-remapping-v2-wip\u0027 into renesas-drivers\n"
    },
    {
      "commit": "797d35514afe60874e0f96c3db777691f7f4ce9a",
      "tree": "55f2e4a5b0494e2021c2c598ef82df51d7317e6c",
      "parents": [
        "087917304d6f08e94df54365f03bebe69dcc766b",
        "d81fa6c25e4eac71e14e5bbcdf2964e8c1a12ecb"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:53:37 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:53:37 2026 +0200"
      },
      "message": "Merge branch \u0027renesas-pinctrl-for-v7.3\u0027 into renesas-drivers\n"
    },
    {
      "commit": "087917304d6f08e94df54365f03bebe69dcc766b",
      "tree": "3c2c94eb3966444c2249c365ba31cbc80d7116ee",
      "parents": [
        "ce9ddd9df41312827ef85c901fcfbb9cc3a6e1c3",
        "ed0c053a699863795a6523b0bf664179ff2fcab5"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:53:36 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:53:36 2026 +0200"
      },
      "message": "Merge branch \u0027renesas-clk-for-v7.3\u0027 into renesas-drivers\n"
    },
    {
      "commit": "f47ee77bed98b306b2b4a3934470f9cee3a7361f",
      "tree": "36539cce373459b06cbba53e9e7309880b421de7",
      "parents": [
        "a545c605a88d53f7cdf26444d33eb82918a10b88"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Fri Mar 06 11:03:52 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "arm64: dts: renesas: ironhide: Add CPG/MDLC firmware properties\n\nLink the various Clock Pulse Generator (CPG) and Module Controller\n(MDLC) device nodes to their SCMI provider.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nv2:\n  - No changes.\n"
    },
    {
      "commit": "a545c605a88d53f7cdf26444d33eb82918a10b88",
      "tree": "87ee34581a981ae8b9eeb09e695defa0886daa24",
      "parents": [
        "e2d0f076260df3f1fd69d3cbbafe87230122d7a3"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Fri Jan 23 14:11:28 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "arm64: dts: renesas: r8a78000: Add CPG/MDLC nodes\n\nAdd device nodes for the Clock Pulse Generator (CPG) and Module Control\n(MDLC) blocks on the R-Car X5H (R8A78000) SoC.\n\nConvert all (H)SCIF serial ports from dummy to CPG clocks, and link them\nto an MDLC for power domains and resets.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nAdd all MDLC nodes from the start, or only when used/tested?\n\nv2:\n  - No changes.\n"
    },
    {
      "commit": "e2d0f076260df3f1fd69d3cbbafe87230122d7a3",
      "tree": "9d62404bd9c5175116d25b3475f110efef5c0080",
      "parents": [
        "d8b84d3a7964bfc0e5e3e75a3bdeb7a9680a7d1d"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Fri Feb 20 14:43:39 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "pmdomain: renesas: Add R-Car X5H MDLC SCMI remapping driver\n\nAdd a proof-of-concept Module Controller driver for the R-Car X5H\n(R8A78000) SoC, using tables to remap from hardware power domain,\nmodule, and reset IDs to SCMI power domains, clocks, and resets.\n\nNote that SCMI clocks representing hardware modules are fake clocks,\nwith a zero clock rate, that can just be enabled and disabled.\nHence these are controlled from the clock domain\u0027s start/stop callbacks.\n\nFor now this contains preliminary support for SCP FW SDKv4.28.0,\nv4.31.0, and v4.32.0:\n  - As the SCMI power domain IDs are idential for all three versions,\n    r8a78000_mdlc_*_power_fw_4_28_0[] apply to all of them,\n  - As the SCMI clock and reset IDs are identical for the last two\n    versions (except for the addition of two reset IDs in v4.32.0),\n    r8a78000_mdlc_fw_4_31_0[] applies to both of them.\n\nNote that v4.32 has two new reset IDs without corresponding clock IDs,\nso \"/* SCMI clock and reset IDs are identical */\" is no longer 100%\ntrue.  However, these new resets seem to be meant for board control, not\nSoC control.\n\nSuggested-by: Marek Vasut \u003cmarek.vasut+renesas@mailbox.org\u003e\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nv2:\n  - No changes.\n"
    },
    {
      "commit": "d8b84d3a7964bfc0e5e3e75a3bdeb7a9680a7d1d",
      "tree": "cb6f49418c6bb5758ba8d72e8ff376b1b261d1fc",
      "parents": [
        "2a53bc28cca2abe331f9e7f0724773f141aa9724"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Thu Dec 18 17:12:44 2025 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "clk: renesas: Add R-Car X5H CPG SCMI remapping driver\n\nAdd a proof-of-concept Clock Pulse Generator driver for the R-Car X5H\n(R8A78000) SoC, using tables to remap from hardware clock IDs to SCMI\nclock IDs.\n\nSome SCMI clocks do not support the SCMI CLOCK_ATTRIBUTES command, and\nare thus not usable from Linux.  Register a bunch of fixed-rate clocks,\nand use them as replacements for SCMI clocks that are known to be\nunusable.\n\nFor now this contains preliminary support for SCP FW SDKv4.28.0,\nv4.31.0, and v4.32.0.  As SCMI clock IDs are identical for SDKv4.31.0\nand v4.32.0, r8a78000_cpg_fw_4_31_0[] applies to both of them.\n\nSuggested-by: Marek Vasut \u003cmarek.vasut+renesas@mailbox.org\u003e\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nv2:\n  - Add R8A78000_CPG_S0D4_PERE_MAIN, which is the UFS0 functional clock\n    parent.\n"
    },
    {
      "commit": "2a53bc28cca2abe331f9e7f0724773f141aa9724",
      "tree": "a780911d86d135ad16580968e68f44ba27066919",
      "parents": [
        "14809a5d6b85e338720b220de3d8a6dc97e7cf52"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Thu Feb 19 11:36:17 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "dt-bindings: power: Document Renesas R-Car X5H Module Controller\n\nDocument support for Renesas R-Car X5H Module Controllers, and\nadd definitions for power domains not backed by registers.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nv2:\n  - Clarify the meaning of the two power domain cells and the reset\n    cell,\n  - Add missing asterisk to blank kerneldoc line,\n  - Drop R8A78000_MDLC_PD_CMN, as CMN is backed by MDPG bits.\n"
    },
    {
      "commit": "14809a5d6b85e338720b220de3d8a6dc97e7cf52",
      "tree": "25e61ec632607da82c0d0222fe64786597734208",
      "parents": [
        "32f9821a5945c73088022c370a0bf55931e431b1"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Fri Jan 23 14:08:53 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "dt-bindings: clock: Document Renesas R-Car X5H Clock Pulse Generator\n\nDocument support for the Renesas R-Car X5H Clock Pulse Generator,\nand add definitions for a very limited and preliminary set of clocks.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nv2:\n  - Add R8A78000_CPG_S0D4_PERE_MAIN, which is the UFS0 functional clock\n    parent.\n"
    },
    {
      "commit": "32f9821a5945c73088022c370a0bf55931e431b1",
      "tree": "5569ed1078ad59fa964262fb7cf40afc818fe8f4",
      "parents": [
        "7e3bcbc2567af69ecd9747bd673f9b1ff28bccc7"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Fri Feb 20 14:48:41 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "reset: Add reset_controller_get_provider()\n\nThe reset subsystem differs from the clock subsystem in multiple ways:\n  1. It does not provide a public way to lookup resets from a reset\n     provider (clock has of_clk_get_from_provider()),\n  2. The xlate callback does not return a reset object, but merely an\n     index, which is converted to a reset object by the reset core.\n\nHence add a public helper reset_controller_get_provider(), which just\nreturns the provider, and will be used by the R-Car X5H Module\nController driver.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nv2:\n  - No changes.\n"
    },
    {
      "commit": "7e3bcbc2567af69ecd9747bd673f9b1ff28bccc7",
      "tree": "02015cf52b9051c50a11f2267cf81ad43104ae28",
      "parents": [
        "74058cadc0a326f1a820a8a1eadf162cf73701ed"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Fri Feb 20 14:46:40 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "pmdomain: Make genpd_get_from_provider() public\n\nUnlike the corresponding function in the clock subsystem\n(of_clk_get_from_provider()), genpd_get_from_provider() is private, and\nthus cannot be used by PM Domain drivers.\n\nMake it public, so it be used by the R-Car X5H Module Controller driver.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nv2:\n  - No changes.\n"
    },
    {
      "commit": "74058cadc0a326f1a820a8a1eadf162cf73701ed",
      "tree": "975e6deb795f7a1f0365c40c644d7c3612a98aca",
      "parents": [
        "f441fa95b32f9e4bc10c951160e465fd1e701ce9"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Mon Mar 16 17:54:10 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "of: property: fw_devlink: Add support for firmware\n\nLet fw_devlink create device links between consumers and suppliers of\nfirmware, and enforce these dependencies.\n\nThis prevents probing of drivers before the firmware they depend on\nbecomes available, thus avoiding unneeded probe deferrals.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nWritten for the upcoming R-Car X5H Clock Pulse Generator and Module\nController drivers and their dependency on SCMI, but the existing\nRaspberry Pi power domain driver should benefit from this, too.\n\nv2:\n  - No changes.\n"
    },
    {
      "commit": "f441fa95b32f9e4bc10c951160e465fd1e701ce9",
      "tree": "5f855b82839ba991e58ecc98098653de256b3d2d",
      "parents": [
        "24a0cea1f4edec70d5f1078188db6090e951434d"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Mon Mar 09 13:49:44 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "firmware: arm_scmi: Add scmi_get_base_info()\n\nCurrently non-SCMI drivers cannot find out what the specific versions of\neach SCMI provider implementation on the running system are.\n\nHowever, different versions may use different ABIs (e.g. different clock\nIDs), or behave different, requiring remapping or workarounds in other\ndrivers.\n\nAdd a public function to obtain base protocol information for the\nselected SCMI provider.  This will be used by the R-Car X5H Clock Pulse\nGenerator and Module Controller drivers.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nv2:\n  - No changes.\n"
    },
    {
      "commit": "24a0cea1f4edec70d5f1078188db6090e951434d",
      "tree": "ce0d9ef18edb1180ae1033f6d2896cbf20e7f386",
      "parents": [
        "0e22a88ab373b0a8598b3055ae8a52d4c0f25a85"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Mon Feb 16 16:29:43 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "arm64: dts: renesas: ironhide: Enable SCMI devpd, sys, clock, and reset\n\nSCP FW SDKv4.28.0 and later for Renesas R-Car X5H Ironhide not only\nimplements the SCMI base protocol, but also the SCMI power domain,\nsystem power, clock, and reset domain management protocols.\n\nEnable support for the latter by adding the corresponding SCMI protocol\nsubnodes.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nv2:\n  - Fix misindentations,\n  - Add scmi_clk node, as it is no longer added in earlier commits.\n"
    },
    {
      "commit": "0e22a88ab373b0a8598b3055ae8a52d4c0f25a85",
      "tree": "98d400a3e1d24d82c067a9a1f8d7d8b9605cd354",
      "parents": [
        "44c35780779ac7b6e4582b91a16ab166879c9fd5"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Thu Mar 19 14:38:31 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "firmware: arm_scmi: quirk: Handle critical clocks on R-Car X5H\n\nRenesas R-Car X5H SCP FW SDKv4.28.0, v4.31.0, and v4.32.0 advertise a\nfew clocks that crash the system when disabled.  Add quirks to prevent\nsuch crashes.\n\nAs SCMI clock IDs are identical for SDKv4.31.0 and v4.32.0, the quirk\nfor these two versions can be shared.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nSome of these could be handled by improving hardware descriptions in DT,\nor by the CPG and MDLC drivers.\n\nv2:\n  - Mark all Cortex-A related clocks as do-not-touch . Those clocks supply\n    CPU cores and clusters and are managed purely by TFA BL31. CPU cores\n    and clusters are managed by Linux purely via PSCI interface.\n\n    The clocks marked here are CLK_ZC0/ZC1/ZD_APUn core clocks and\n    MDLC APRTMGINTn modules.\n\n    Signed-off-by: Marek Vasut \u003cmarek.vasut+renesas@mailbox.org\u003e\n"
    },
    {
      "commit": "44c35780779ac7b6e4582b91a16ab166879c9fd5",
      "tree": "6222ddfdc4ed5cdbc561ef0e5373a27dc69bc8b9",
      "parents": [
        "15af9f8bcc1ed15fb31e7d370177f63205b8f493"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Mon Feb 16 16:06:11 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "firmware: arm_scmi: quirk: Handle bad power domains on R-Car X5H\n\nRenesas R-Car X5H SCP FW SDKv4.28.0, v4.31.0, and v4.32.0 advertise a\nfew power domains that crash the system when touched or powered off.\nAdd a quirk to prevent such crashes.\n\nAs the SCMI power domain IDs are identical for all three versions, the\nquirk can be shared.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n---\nPreventing power off could be handled in the MDLC driver, but no-touch\ncannot.\n\nv2:\n  - Mark all Cortex-A related power domains as do-not-touch.  Those\n    power domains are used to bring CPU cores and clusters up and down,\n    and are managed purely by TFA BL31. CPU cores and clusters are\n    brought up and down by Linux purely via PSCI interface.\n    The domains marked here are PD_ACn core domains, PD_ACLn cluster\n    domains, PD_APUn cluster group and peripheral domains, and the CMN\n    coherent mesh network interconnect.\n\n    Signed-off-by: Marek Vasut \u003cmarek.vasut+renesas@mailbox.org\u003e\n"
    },
    {
      "commit": "15af9f8bcc1ed15fb31e7d370177f63205b8f493",
      "tree": "d5855718df7b4d14b705908ff27647e65c8e4ee7",
      "parents": [
        "ce9ddd9df41312827ef85c901fcfbb9cc3a6e1c3"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Feb 24 16:00:17 2026 +0100"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:51:44 2026 +0200"
      },
      "message": "arm64: renesas: defconfig: Enable MFIS and SCMI for Ironhide\n\nThe Renesas Ironhide board uses the ARM System Control and Management\nInterface (SCMI) protocol for various system operations.\n\nEnable R-Car MFIS support for communicating with the System Control\nProcessor (SCP), and various SCMI-related options.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\n"
    },
    {
      "commit": "ce9ddd9df41312827ef85c901fcfbb9cc3a6e1c3",
      "tree": "a2440082ef7cbbb71bf1c51ab579bf88229b8f11",
      "parents": [
        "41fd7864a90ebaaca425861d36ac7ac316c01c74",
        "eec9f31bbbff9a4c5d93da9a9c6e2a8d7c29996c"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:48 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:48 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027scmi/for-linux-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "41fd7864a90ebaaca425861d36ac7ac316c01c74",
      "tree": "a2440082ef7cbbb71bf1c51ab579bf88229b8f11",
      "parents": [
        "d85a58fa5921c318fbfb7b6eb07e1ba75fe08c06",
        "b232fc005aec5fa5346d970f8986b8f0046f328b"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:44 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:44 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027char-misc/char-misc-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "d85a58fa5921c318fbfb7b6eb07e1ba75fe08c06",
      "tree": "32c2fd477b7189cf33a22a9b725b108ca15a7d0f",
      "parents": [
        "599867390ea9013caae0b062e0650ab6b4eae2ef",
        "69679101cc8935b9f4032678c12612ea584a573a"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:41 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:41 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027nvmem/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "599867390ea9013caae0b062e0650ab6b4eae2ef",
      "tree": "974b9f81ff42b184ccd9cda1f0faebed8bdfc84b",
      "parents": [
        "c93a080b03e16212e64ff2198b6c1a05de824741",
        "528ad521a433cf873724893bda339df95d8ac1e0"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:38 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:38 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027pmdomain/next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "c93a080b03e16212e64ff2198b6c1a05de824741",
      "tree": "b31890409a26a9999437e41a3b2693096f346828",
      "parents": [
        "6d9c9248fc45f5964fce0d4d59bf11bacb1604bc",
        "319fafd9a3743b617b8547d81c41c99fb67857b1"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:36 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:36 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027riscv/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "6d9c9248fc45f5964fce0d4d59bf11bacb1604bc",
      "tree": "686ceb0964aefa3fcd96667b4d8f1b321eda82db",
      "parents": [
        "fc6d8488558ec4d6462f4e77935f471fee6d5e8d",
        "57a6ed0b41677ccc5e28cc0976e495c1dfa33747"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:33 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:33 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027scsi-mkp/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "fc6d8488558ec4d6462f4e77935f471fee6d5e8d",
      "tree": "a6bb88cb99bbf852ddd874be8b4e389ae6bca2ad",
      "parents": [
        "e5977fdf5d689a165378ccae60755d2dcb97247d",
        "2617d2831a10eb2c4e77f5b390fa4dbb8400486a"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:31 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:31 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027scsi-jejb/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "e5977fdf5d689a165378ccae60755d2dcb97247d",
      "tree": "ca33596cb21e91030dac4b9ec627baa8c13e179d",
      "parents": [
        "d6bea67ab579d341bfca5501ec7a01e6131eec7d",
        "fe221742e388bea3f5856b5d9b2cb0a037020ea4"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:27 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:27 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027driver-core/driver-core-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "d6bea67ab579d341bfca5501ec7a01e6131eec7d",
      "tree": "57f02e2eb5fcf2fe627d73b8a7f6fe42d13ca0ad",
      "parents": [
        "7469b9ca1641adecef7332aec17788f7cc7a5e3f",
        "6ea0ce3a19f9c37a014099e2b0a46b27fa164564"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:24 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:24 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027crypto/master\u0027 into renesas-drivers\n"
    },
    {
      "commit": "7469b9ca1641adecef7332aec17788f7cc7a5e3f",
      "tree": "fa8ce995051ec33dc499dfddfca9a964baf1a470",
      "parents": [
        "1a72717136b26600825d255ad6055adee972814d",
        "b417b241dfcd92450ada1c733cc8bfb3450a7d10"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:22 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:22 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027dt-rh/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "1a72717136b26600825d255ad6055adee972814d",
      "tree": "1eccbb5fdc6c30aedfa6fdf213038734dfcfcd84",
      "parents": [
        "0f90d35950b187e056cbefb5780aa66fce0455aa",
        "b07f7904e0523170856876e4412be852377d492a"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:20 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:20 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027mfd/for-mfd-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "0f90d35950b187e056cbefb5780aa66fce0455aa",
      "tree": "45dadacb1b106fe6772330c66884ef9b5c9ee41f",
      "parents": [
        "ad4975eab6b6dacc59bb613d36b3536473b0e2ba",
        "2ace2e949979b82f82f12dd76d7c5a6145246ca3"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:17 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:17 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027phy/next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "ad4975eab6b6dacc59bb613d36b3536473b0e2ba",
      "tree": "cbb1861d7553cf13a04af5cb981d1c0028db6789",
      "parents": [
        "1fec75870490fd461c0449b5cf4ddd127ca7b7a1",
        "2d021f1aeb372856bdf5f6ea28823de584331220"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:14 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:14 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027pci/next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "1fec75870490fd461c0449b5cf4ddd127ca7b7a1",
      "tree": "067bf2864b1f353c23231fbb0f2582b74dc12e21",
      "parents": [
        "daa7ce841710864dcad31f72d25fee44dff0a187",
        "61c19a9feb1d87156e46e38d7759f3ad23710e24"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:09 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:38:09 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027arm64/for-next/core\u0027 into renesas-drivers\n\nConflicts:\n\tarch/arm64/kvm/hyp/include/hyp/switch.h\n"
    },
    {
      "commit": "daa7ce841710864dcad31f72d25fee44dff0a187",
      "tree": "82ee3e2b8d2b103251010d446d319f2ec222ea7a",
      "parents": [
        "a927c54cbda7e52fe05fcc2d89e185dfd8f9e142",
        "504413df7daf7cd51588adad1c59caaf13035ae9"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:40 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:40 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027regulator/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "a927c54cbda7e52fe05fcc2d89e185dfd8f9e142",
      "tree": "0efee71b02bf97e7b0dde6d4ad2581e5b1875971",
      "parents": [
        "f460c1d9d0738b3f79029ed58e7331c2b6d7e6dd",
        "972ea78305bddb6a1db0586357914f125e913ffe"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:37 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:37 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027soc/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "f460c1d9d0738b3f79029ed58e7331c2b6d7e6dd",
      "tree": "83fdb6453ee2fd9eb2918601aead1eda0774772e",
      "parents": [
        "a1b9b7e9ad4ddb39f4a1e730702351ff998e77c2",
        "a888754e51e915731c8974c4d6d62709facb35d3"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:34 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:34 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027battery/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "a1b9b7e9ad4ddb39f4a1e730702351ff998e77c2",
      "tree": "ed1baf951f86af6abc79c9e568112186442919ca",
      "parents": [
        "2ad483ea1e9e8991b9992d5684e17e124bc81c70",
        "1fe27cc614722f15903ea56c922f93a5d2f54123"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:32 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:32 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027block/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "2ad483ea1e9e8991b9992d5684e17e124bc81c70",
      "tree": "918f68d5db381ff2aac2e35b858300afecdd7c1d",
      "parents": [
        "22788e5a0f6da76a7390cea20ab09ee996a95fb7",
        "21e7b9710a24bd7688c02f136923c89bee2fda5a"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:29 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:29 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027libata/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "22788e5a0f6da76a7390cea20ab09ee996a95fb7",
      "tree": "648ec704a7b8f885335429db62f8c8a9f0bb0720",
      "parents": [
        "5f2f55c688ef53f2bb858ee36450fc0d7907e7e7",
        "a1a35c09241f0577cc40f65d7372fed01138619d"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:26 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:26 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027irqchip/irq/drivers\u0027 into renesas-drivers\n"
    },
    {
      "commit": "5f2f55c688ef53f2bb858ee36450fc0d7907e7e7",
      "tree": "a0831ab4cf71710b6c8e2e5fca51f8d2894b67d5",
      "parents": [
        "226b5e86a16d1b82aeca7be4dd6759d1f431e6f1",
        "8f727615134abc6382f0ea07b90270d7bdde578f"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:24 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:24 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027irqchip/irq/core\u0027 into renesas-drivers\n"
    },
    {
      "commit": "226b5e86a16d1b82aeca7be4dd6759d1f431e6f1",
      "tree": "cb930c5104fec353431f5d93aadfaa874f918134",
      "parents": [
        "88d540f61ae0b25a30b62ff78430748f9967c7d8",
        "30b239c09eb6a2f13edea56206069ab54ec52f57"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:22 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:22 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027regmap/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "88d540f61ae0b25a30b62ff78430748f9967c7d8",
      "tree": "0b550f78909c8921104739d9f96bfc18e0a0192e",
      "parents": [
        "3413b27871a91cc0ef6348956e047d867e133d09",
        "75ca78c7d982a0b7c658722fa9eb2ce70e180307"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:19 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:19 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027arm/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "3413b27871a91cc0ef6348956e047d867e133d09",
      "tree": "f5bc3908d42b7829c67dab7bde25dc551699fd9f",
      "parents": [
        "582807e1bd1875a6f848b7c6ae934d49a2bc9b4f",
        "7cb1c5b32a2bfde961fff8d5204526b609bcb30a"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:16 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:16 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027staging/staging-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "582807e1bd1875a6f848b7c6ae934d49a2bc9b4f",
      "tree": "b0676dd538562b9eaf0857e4084649c68bc34d6a",
      "parents": [
        "31e77122e898c16f4f19b72e2e23480553a7da7f",
        "7524fe142b5a772f8421aeee2132cf7e21a00103"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:14 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:14 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027dmaengine/next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "31e77122e898c16f4f19b72e2e23480553a7da7f",
      "tree": "b8d86ecc85a8f4fad3eae554d6f552ead7d5255c",
      "parents": [
        "bdb7b441045e1e4d1c285a71d6b1c64eb3e9c114",
        "a9ac745bc320cbdc2ed3c851eb78f91f22ff975b"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:12 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:12 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027clockevents/timers/drivers/next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "bdb7b441045e1e4d1c285a71d6b1c64eb3e9c114",
      "tree": "dd8be32de900577708a3bc7aa51c4fd4d296b6e6",
      "parents": [
        "7999c9dc8cee43cefe93303218ac35e72d4a0f9e",
        "898ab0f30e008e411ce93ddf81c4099abd9d4e46"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:09 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:09 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027pwm/pwm/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "7999c9dc8cee43cefe93303218ac35e72d4a0f9e",
      "tree": "dc4dd91364e9dcdc5b76292d0c1d3f08a2643378",
      "parents": [
        "adad5af371f0d83041d4d112055d0ca3e466e50c",
        "576e40d20e100ba62e21bfda94ad948820c90a23"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:07 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:07 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027mmc/next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "adad5af371f0d83041d4d112055d0ca3e466e50c",
      "tree": "99e9e56d5a6f1fcb0788764c9b5edffefe889666",
      "parents": [
        "4d1b41b8b8d3dfebca442317c47c5afe983b0b46",
        "06cb687a5132fcffe624c0070576ab852ac6b568"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:02 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:36:02 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027media/master\u0027 into renesas-drivers\n\nConflicts:\n\tdrivers/media/platform/qcom/iris/iris_core.c\n\tdrivers/media/platform/qcom/iris/iris_vdec.c\n\tdrivers/media/platform/qcom/iris/iris_venc.c\n\tdrivers/media/platform/qcom/iris/iris_vpu_common.c\n"
    },
    {
      "commit": "4d1b41b8b8d3dfebca442317c47c5afe983b0b46",
      "tree": "61117fedd6ae96e6579894b2c24cf68db6100541",
      "parents": [
        "04bc9c902ae18a0991bbc651519979769e7c7da3",
        "dd8a3c6cd531dca5917111a94fa3074077f6ba5a"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:35:52 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:35:52 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027iommu/next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "04bc9c902ae18a0991bbc651519979769e7c7da3",
      "tree": "979b8b2861feb5ed231d0aeb8216a2696566b609",
      "parents": [
        "c7c755f2889d798bf46d98fecfe6660e03bea8d7",
        "52d4ab1ca790a668cc8f2c27017138b1c467168c"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:35:41 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:35:41 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027drm/drm-next\u0027 into renesas-drivers\n\nConflicts:\n\tdrivers/gpu/drm/amd/amdgpu/amdgpu_cs.c\n\tdrivers/gpu/drm/amd/amdgpu/amdgpu_hmm.c\n\tdrivers/gpu/drm/amd/amdgpu/amdgpu_vm.c\n\tdrivers/gpu/drm/drm_atomic.c\n\tinclude/drm/drm_colorop.h\n\trust/kernel/alloc/kbox.rs\n"
    },
    {
      "commit": "c7c755f2889d798bf46d98fecfe6660e03bea8d7",
      "tree": "ebbf6be8e1ecf13177202fd9812547d3d7704ba5",
      "parents": [
        "47a16bad3ba2bdeb0eccc29256cdec64ff9b5a60",
        "1c2b66a7d7257d2652aa41f9a860ecb96dde27dd"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:35:15 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:35:15 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027usb/usb-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "47a16bad3ba2bdeb0eccc29256cdec64ff9b5a60",
      "tree": "1e9de5035e98f774d6555dc8e042e8bedf051ac6",
      "parents": [
        "f6c5a62663abe58111d5e4ddfc57caa60044a6bf",
        "9161224dc97e5e6d8514826729a2f98edbb5035b"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:35:12 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:35:12 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027sound-asoc/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "f6c5a62663abe58111d5e4ddfc57caa60044a6bf",
      "tree": "8cdf9d56084016433853ea15dbfe5e3d23e13fee",
      "parents": [
        "3ec521384d0f1c1d45298e2190e00bf8be0eae98",
        "90220ddfa8e2c93e26af2cd51d6158ca2243c622"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:35:07 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:35:07 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027i2c-host/i2c/i2c-host\u0027 into renesas-drivers\n\nConflicts:\n\tdrivers/acpi/acpi_apd.c\n"
    },
    {
      "commit": "3ec521384d0f1c1d45298e2190e00bf8be0eae98",
      "tree": "1bf37d6611d4f57246607d89745f73494e0851b6",
      "parents": [
        "bb4007287b07f29028b9376b0ae09f0471d4d98d",
        "426e83cab1f5d53069ac7030cb03e2d7c6367ef1"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:55 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:55 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027tty/tty-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "bb4007287b07f29028b9376b0ae09f0471d4d98d",
      "tree": "08844190d221bcfc856057ebe5beff95ae8e7f8d",
      "parents": [
        "8e326aba3bfc477a2b4b9cff04af21f85e1ebaff",
        "72dfa4700f78a6d79300cb8a1a600791795232de"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:52 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:52 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027net-next/main\u0027 into renesas-drivers\n"
    },
    {
      "commit": "8e326aba3bfc477a2b4b9cff04af21f85e1ebaff",
      "tree": "ee6b794b6f30a20c4fd50ff18e6b2095a0815148",
      "parents": [
        "e949768ae25d202e7f41e16e3c6c8c8576140b6f",
        "cf4ff717af69cfe2dff8ddb843dce36205cb3c40"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:49 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:49 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027mtd/mtd/next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "e949768ae25d202e7f41e16e3c6c8c8576140b6f",
      "tree": "5e1be47d15bb1ff9759942f7cb791817a89d257c",
      "parents": [
        "4218c02e331f2d1b752137772e50e0a73e35e85b",
        "6d8e4f548d2e238541828c4599a2ecee70fa7ad8"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:47 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:47 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027spi/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "4218c02e331f2d1b752137772e50e0a73e35e85b",
      "tree": "1d40aeec40980a1e557c92ce83e978185bc6a007",
      "parents": [
        "e0841588929f9556cab32a8be66881e2d137537e",
        "f953585dafd71ecb0897f9def9c0a3702afc1bf8"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:45 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:45 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027gpio/gpio/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "e0841588929f9556cab32a8be66881e2d137537e",
      "tree": "cbc7f208023e73e346dbf097ed5198e0fb7ea9b5",
      "parents": [
        "909defc26a65614a7435e356f1b54b1e9a8ed246",
        "3bd25818aebd8dc6cdc44cb9356a539e98a76c6c"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:42 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:42 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027pinctrl/for-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "909defc26a65614a7435e356f1b54b1e9a8ed246",
      "tree": "5d053a6c09ee85c80134ed1d2431dd615ca5bc63",
      "parents": [
        "0630a82d22b1fb7931e8af55c75188000b20ebf5",
        "8d03cc42a42b1a3f1535757f65bfb74a9753953f"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:39 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:39 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027clk/clk-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "0630a82d22b1fb7931e8af55c75188000b20ebf5",
      "tree": "e83dc735f6e8553060a5db976aef04a8eba55c3c",
      "parents": [
        "7f382bff3a7758f5df46e27342a00cad5bdc438a",
        "5504ce0317f777dcf102751c3e518284226fc2e1"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:37 2026 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert+renesas@glider.be",
        "time": "Tue Jun 16 11:34:37 2026 +0200"
      },
      "message": "Merge remote-tracking branch \u0027pm/linux-next\u0027 into renesas-drivers\n"
    },
    {
      "commit": "72dfa4700f78a6d79300cb8a1a600791795232de",
      "tree": "ff2eb5f933d2e59b838a8dda47b56e71fdfb326d",
      "parents": [
        "2c53418347224f0c4e65842dafa4577695a93508"
      ],
      "author": {
        "name": "David Yang",
        "email": "mmyangfl@gmail.com",
        "time": "Sun Jun 14 22:13:16 2026 +0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 19:01:48 2026 -0700"
      },
      "message": "net: dsa: sja1105: fix lastused timestamp in flower stats\n\nflow_stats_update() takes an absolute timestamp for lastused, not delta.\nFix that.\n\nSigned-off-by: David Yang \u003cmmyangfl@gmail.com\u003e\nLink: https://patch.msgid.link/20260614141320.1133321-1-mmyangfl@gmail.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "57a6ed0b41677ccc5e28cc0976e495c1dfa33747",
      "tree": "8568af0ddb7d08829663fc298b43e45fe689a0ac",
      "parents": [
        "66aefc277ebb796ec285d550305535dc3fc0179f"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Thu Jun 11 14:55:56 2026 +0200"
      },
      "committer": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Mon Jun 15 22:01:26 2026 -0400"
      },
      "message": "scsi: bfa: Reduce kernel stack usage in bfa_fcs_lport_fdmi_build_portattr_block()\n\nbfa_fcs_fdmi_get_portattr() gets inlined into multiple places and has\ntwo fairly large variables on the stack, to the point of causing a\nwarning in some randconfig builds:\n\ndrivers/scsi/bfa/bfa_fcs_lport.c:2198:1: error: stack frame size (1560) exceeds limit (1280) in \u0027bfa_fcs_lport_fdmi_build_portattr_block\u0027 [-Werror,-Wframe-larger-than]\n 2198 | bfa_fcs_lport_fdmi_build_portattr_block(struct bfa_fcs_lport_fdmi_s *fdmi,\n      | ^\ndrivers/scsi/bfa/bfa_fcs_lport.c:1856:1: error: stack frame size (1600) exceeds limit (1280) in \u0027bfa_fcs_lport_fdmi_build_rhba_pyld\u0027 [-Werror,-Wframe-larger-than]\n 1856 | bfa_fcs_lport_fdmi_build_rhba_pyld(struct bfa_fcs_lport_fdmi_s *fdmi, u8 *pyld)\n      | ^\n\nMark the inner function as noinline_for_stack to keep it separate from\nthe other variables and prevent multiple copies of the same variable to\nget inlined here.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nLink: https://patch.msgid.link/20260611125601.3385418-1-arnd@kernel.org\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\n"
    },
    {
      "commit": "2c53418347224f0c4e65842dafa4577695a93508",
      "tree": "476bf37633f0e6aeba35084bd3910fa13af24231",
      "parents": [
        "987257c49bfb59ccf94bb30f41edc92ea0d6f739",
        "74ac711839a1640cd6eb64b1a4884b1dca90b20d"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:58:03 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:58:03 2026 -0700"
      },
      "message": "Merge branch \u0027extend-netkit-io_uring-zc-selftests\u0027\n\nDaniel Borkmann says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nExtend netkit io_uring ZC selftests\n\nSmall follow-up to the HW net selftests, in particular to add a\nselftest showing that also large rx_buf_len for io_uring ZC is\nsupported with netkit queue leasing.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://patch.msgid.link/20260614102607.863838-1-daniel@iogearbox.net\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "74ac711839a1640cd6eb64b1a4884b1dca90b20d",
      "tree": "476bf37633f0e6aeba35084bd3910fa13af24231",
      "parents": [
        "5024cfc8a37bdc4ddf5d90b86cdc6acb85849cee"
      ],
      "author": {
        "name": "Daniel Borkmann",
        "email": "daniel@iogearbox.net",
        "time": "Sun Jun 14 12:26:07 2026 +0200"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:58:01 2026 -0700"
      },
      "message": "selftests/net: Add hugepage kernel config dependency for zcrx\n\ntest_iou_zcrx_large_buf in drivers/net/hw/nk_qlease.py runs iou-zcrx\nwith rx_buf_len \u003e page size, backed by a hugepage-mapped area. Thus\nadd to the Kconfig.\n\nSigned-off-by: Daniel Borkmann \u003cdaniel@iogearbox.net\u003e\nReviewed-by: Bobby Eshleman \u003cbobbyeshleman@meta.com\u003e\nLink: https://patch.msgid.link/20260614102607.863838-5-daniel@iogearbox.net\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "5024cfc8a37bdc4ddf5d90b86cdc6acb85849cee",
      "tree": "9e1178d4f8cf355d3853ab7b04d3fdd091873f07",
      "parents": [
        "96fda937b4c170ae6164419f33434830423ce0e2"
      ],
      "author": {
        "name": "Daniel Borkmann",
        "email": "daniel@iogearbox.net",
        "time": "Sun Jun 14 12:26:06 2026 +0200"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:58:01 2026 -0700"
      },
      "message": "selftests/net: Add netkit io_uring ZC test for large rx_buf_len\n\nAdd test_iou_zcrx_large_buf, which runs iou-zcrx with rx_buf_len \u003e\npage size (-x 2) through a netkit-leased RX queue. The netkit ifindex\nis opaque to io_uring, but rx_page_size is honoured by the leased\nphysical qops via netif_mp_open_rxq()\u0027s lease redirect.\n\nOriginally, I also added a BIG TCP variant on top, but dropped it\nhere as fbnic (and the QEMU fbnic model) has no BIG TCP support\nto exercise it as this point.\n\nTested against the QEMU fbnic emulation. The new test exercises\nthe \u003e page rx_buf_len path only when the leased NIC advertises\nQCFG_RX_PAGE_SIZE; otherwise it skips.\n\nFor fbnic, I used Bjorn\u0027s patches locally [0]:\n\n  # ./nk_qlease.py\n  TAP version 13\n  1..5\n  ok 1 nk_qlease.test_iou_zcrx\n  ok 2 nk_qlease.test_iou_zcrx_large_buf\n  ok 3 nk_qlease.test_attrs\n  ok 4 nk_qlease.test_attach_xdp_with_mp\n  ok 5 nk_qlease.test_destroy\n  # Totals: pass:5 fail:0 xfail:0 xpass:0 skip:0 error:0\n\nWithout those patches (aka not advertising QCFG_RX_PAGE_SIZE):\n\n  # ./nk_qlease.py\n  TAP version 13\n  1..5\n  ok 1 nk_qlease.test_iou_zcrx\n  ok 2 nk_qlease.test_iou_zcrx_large_buf # SKIP Large chunks are not supported -95\n  ok 3 nk_qlease.test_attrs\n  ok 4 nk_qlease.test_attach_xdp_with_mp\n  ok 5 nk_qlease.test_destroy\n  # Totals: pass:4 fail:0 xfail:0 xpass:0 skip:1 error:0\n\nSigned-off-by: Daniel Borkmann \u003cdaniel@iogearbox.net\u003e\nReviewed-by: Bobby Eshleman \u003cbobbyeshleman@meta.com\u003e\nLink: https://lore.kernel.org/netdev/20260522113225.241337-1-bjorn@kernel.org/ [0]\nLink: https://patch.msgid.link/20260614102607.863838-4-daniel@iogearbox.net\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "96fda937b4c170ae6164419f33434830423ce0e2",
      "tree": "f59577c76b716d6a7eebebea8b654d3cdea90d0c",
      "parents": [
        "bc5c25c8f684982d0363380e3490f626c68e0427"
      ],
      "author": {
        "name": "Daniel Borkmann",
        "email": "daniel@iogearbox.net",
        "time": "Sun Jun 14 12:26:05 2026 +0200"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:58:01 2026 -0700"
      },
      "message": "selftests/net: Use public NetDrvContEnv API in nk_qlease fixtures\n\nExpose the netkit host ifname as a public attribute nk_host_ifname\n(symmetric with the already-public nk_guest_ifname), rename _attach_bpf\nto a public attach_bpf, and add a public detach_bpf helper that\nencapsulates the tc-filter teardown bookkeeping. Switch the fixtures\nto this public API. No functional change and keeps pylint happy.\n\nSigned-off-by: Daniel Borkmann \u003cdaniel@iogearbox.net\u003e\nReviewed-by: Bobby Eshleman \u003cbobbyeshleman@meta.com\u003e\nLink: https://patch.msgid.link/20260614102607.863838-3-daniel@iogearbox.net\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "bc5c25c8f684982d0363380e3490f626c68e0427",
      "tree": "360480df3a2dc393d381b1cf43e95fdfb9edf288",
      "parents": [
        "987257c49bfb59ccf94bb30f41edc92ea0d6f739"
      ],
      "author": {
        "name": "Daniel Borkmann",
        "email": "daniel@iogearbox.net",
        "time": "Sun Jun 14 12:26:04 2026 +0200"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:58:00 2026 -0700"
      },
      "message": "selftests/net: Move netkit lease hw setup into per-test fixtures\n\nThe HW counterpart of nk_qlease.py was carrying its lease setup in main()\nand stashing src_queue / nk_queue / nk_*_ifname on cfg, which had drawbacks\ncalled out during the review at [0].\n\nThis is the deferred half of the cleanup that landed in commit e254ffb9502c\n(\"selftests/net: Split netdevsim tests from HW tests in nk_qlease\") which\nwas the SW counterpart of nk_qlease.py.\n\nWhile at it, convert the open-coded \"ip netns exec\" prefixes in the test\nbodies over to the ns\u003d argument of cmd() / bkg().\n\nSigned-off-by: Daniel Borkmann \u003cdaniel@iogearbox.net\u003e\nReviewed-by: Bobby Eshleman \u003cbobbyeshleman@meta.com\u003e\nLink: https://lore.kernel.org/netdev/20260408162238.16709090@kernel.org/ [0]\nLink: https://patch.msgid.link/20260614102607.863838-2-daniel@iogearbox.net\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "66aefc277ebb796ec285d550305535dc3fc0179f",
      "tree": "1fbf5a8dceea59cd6715000ace83e28027e907e4",
      "parents": [
        "ca978f8a93d4d36841839bf2847d29b88c2591d6"
      ],
      "author": {
        "name": "Michael Bommarito",
        "email": "michael.bommarito@gmail.com",
        "time": "Thu Jun 11 08:30:46 2026 -0400"
      },
      "committer": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Mon Jun 15 21:52:39 2026 -0400"
      },
      "message": "scsi: xen: scsiback: Free the command tag on the TMR submit-failure path\n\nscsiback_device_action() obtains a command tag in\nscsiback_get_pend_req() and submits a task-management request with\ntarget_submit_tmr(). When target_submit_tmr() fails it returns \u003c 0 and\nscsiback jumps to the err: label, which sends a response but frees\nnothing, leaking the tag.\n\nImpact: a pvSCSI guest can leak the command tags of a LUN\u0027s session,\nstopping the LUN, by issuing VSCSIIF_ACT_SCSI_ABORT or RESET requests\nwhenever target_submit_tmr() fails.\n\ntransport_generic_free_cmd() cannot be used here. By the time\ntarget_submit_tmr() returns an error it has already run\n__target_init_cmd() (so se_cmd-\u003ecmd_kref is one, not zero), and on its\ntarget_get_sess_cmd() error path it has freed se_cmd-\u003ese_tmr_req via\ncore_tmr_release_req() while leaving SCF_SCSI_TMR_CDB set and the\npointer dangling. Letting the command release run target_free_cmd_mem()\nwould then double-free se_tmr_req.\n\nUse the same helper, which returns just the tag, on this path too.\n\nFixes: 2dbcdf33dbf6 (\"xen-scsiback: Convert to percpu_ida tag allocation\")\nCc: stable@vger.kernel.org\nAssisted-by: Claude:claude-opus-4-8\nSigned-off-by: Michael Bommarito \u003cmichael.bommarito@gmail.com\u003e\nReviewed-by: Juergen Gross \u003cjgross@suse.com\u003e\nLink: https://patch.msgid.link/20260611123046.2323342-3-michael.bommarito@gmail.com\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\n"
    },
    {
      "commit": "ca978f8a93d4d36841839bf2847d29b88c2591d6",
      "tree": "f368baf24aee983997a038bf1d9fbe9cfad5dbb1",
      "parents": [
        "e81f1079f9000892cf54b23a9572ad5d86036fca"
      ],
      "author": {
        "name": "Michael Bommarito",
        "email": "michael.bommarito@gmail.com",
        "time": "Thu Jun 11 08:30:45 2026 -0400"
      },
      "committer": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Mon Jun 15 21:52:39 2026 -0400"
      },
      "message": "scsi: xen: scsiback: Free unsubmitted command instead of double-putting it\n\nscsiback_get_pend_req() obtains a command tag and returns a vscsibk_pend\nwhose embedded se_cmd has only been memset to 0, so its cmd_kref is 0;\nthe se_cmd is initialised (kref_init() via target_init_cmd()) only\nlater, in scsiback_cmd_exec(), on the successful VSCSIIF_ACT_SCSI_CDB\npath. The two error paths in scsiback_do_cmd_fn() taken before the\ncommand is submitted -- a failed scsiback_gnttab_data_map() and an\nunknown ring_req.act -- call\ntransport_generic_free_cmd(\u0026pending_req-\u003ese_cmd, 0), which kref_put()s a\nrefcount of 0. That underflows it (\"refcount_t: underflow;\nuse-after-free\") and, as the release function is not run, leaks the\ncommand tag.\n\nImpact: a pvSCSI guest can leak every command tag of a LUN\u0027s session,\nstopping the LUN, by submitting requests with a bad grant reference or\nan unknown request type; under panic_on_warn the refcount underflow\npanics the host.\n\nAdd a helper that just returns the tag with target_free_tag() and sends\nthe error response. It frees the tag while the v2p reference still pins\nthe session, and snapshots the response fields beforehand because\nfreeing the tag can let another ring reuse the pending_req slot.\n\nFixes: 2dbcdf33dbf6 (\"xen-scsiback: Convert to percpu_ida tag allocation\")\nCc: stable@vger.kernel.org\nAssisted-by: Claude:claude-opus-4-8\nSigned-off-by: Michael Bommarito \u003cmichael.bommarito@gmail.com\u003e\nReviewed-by: Juergen Gross \u003cjgross@suse.com\u003e\nLink: https://patch.msgid.link/20260611123046.2323342-2-michael.bommarito@gmail.com\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\n"
    },
    {
      "commit": "e81f1079f9000892cf54b23a9572ad5d86036fca",
      "tree": "1e4bc925cf53378db862bfcdb9c1b04916c15ffb",
      "parents": [
        "4f87e9068bf3aaf45f226261d5efd50bec42c12c"
      ],
      "author": {
        "name": "Catalin Iacob",
        "email": "iacobcatalin@gmail.com",
        "time": "Mon Jun 08 17:29:16 2026 +0300"
      },
      "committer": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Mon Jun 15 21:48:31 2026 -0400"
      },
      "message": "scsi: core: Remove export for scsi_device_from_queue()\n\nCommit 1cea5180f2f8 (\"block: remove pktcdvd driver\") left behind an export\nthat is now dead code. Remove it and move the declaration of\nscsi_device_from_queue() to drivers/scsi/scsi_priv.h.\n\nSigned-off-by: Catalin Iacob \u003ciacobcatalin@gmail.com\u003e\nLink: https://patch.msgid.link/20260608-remove-pktcdvd-references-v4-1-72f88b04cc87@gmail.com\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\n"
    },
    {
      "commit": "987257c49bfb59ccf94bb30f41edc92ea0d6f739",
      "tree": "309d4805775f46c3767037ff07118c5aad8c5900",
      "parents": [
        "195900546305644b5570dcd615e30be3abe86185",
        "3277e605ac01fd11d0a7c6c68c617547ba66c87f"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:15:12 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:15:12 2026 -0700"
      },
      "message": "Merge branch \u0027ionic-expose-more-port-stats-to-ethtool\u0027\n\nEric Joyner says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nionic: Expose more port stats to ethtool [part]\n\nThe primary aim of this patchset is to support the reporting of new port\nstatistics (and one old one) that firmware sends to the driver. A scheme\nfor these extra stats is introduced in order to prevent devices that\ndon\u0027t support these new statistics from unconditionally setting them or\nreporting them in ethtool.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://patch.msgid.link/20260614205303.48088-1-eric.joyner@amd.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "3277e605ac01fd11d0a7c6c68c617547ba66c87f",
      "tree": "309d4805775f46c3767037ff07118c5aad8c5900",
      "parents": [
        "cb683ff6ee07ab92701cc45ae21373c2b0c8d481"
      ],
      "author": {
        "name": "Eric Joyner",
        "email": "eric.joyner@amd.com",
        "time": "Sun Jun 14 13:53:02 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:15:08 2026 -0700"
      },
      "message": "ionic: Get \"link_down_count\" ext link stat from firmware\n\nThe number of times that link has gone down at the port level is tracked\nby the firmware and sent to the driver via regular DMA writes to an\ninstance of struct ionic_port_status in the driver\u0027s memory.\n\nThis statistic was never reported in favor of a driver-derived stat, but\ndoing it in the driver was never necessary since firmware had been\nreporting it the whole time. Since it would be more accurate and true to\nthe description of the statistic to get this count at the PHY level,\nreplace the driver-calculated statistic with one derived from the\nfirmware one and remove the driver-calculated one entirely.\n\nThe stat reported by the ethtool .get_link_ext_stats() handler is\nnormalized to 0 on driver load and any device resets that require the\ndriver to rebuild state while also handling overflows.\n\nSigned-off-by: Eric Joyner \u003ceric.joyner@amd.com\u003e\nLink: https://patch.msgid.link/20260614205303.48088-5-eric.joyner@amd.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "cb683ff6ee07ab92701cc45ae21373c2b0c8d481",
      "tree": "bbccb5ebebbd5acbed6539e7d3b2dfef2396482a",
      "parents": [
        "433bc500814916133db94e55f096ccc01e5faa30"
      ],
      "author": {
        "name": "Eric Joyner",
        "email": "eric.joyner@amd.com",
        "time": "Sun Jun 14 13:53:01 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:15:08 2026 -0700"
      },
      "message": "ionic: Report \"rx_bits_phy\" stat to ethtool\n\nThis stat contains the number of total bits that the PHY has received;\nit\u0027s useful for BER calculations. Add it to the ethtool stats output.\n\nHowever, since this is one of the new \"extra port stats\", it\u0027s reported\nin a different manner than the existing port stats and only\nconditionally added to the ethtool stats output list: both the\nDEV_CAP_EXTRA_STATS capability must be supported by the firmware, and\nthe firmware must set the value of the statistic to something other than\nIONIC_STAT_INVALID.\n\nTo help support this scheme, the extra port stats region is initialized to\n0xff\u0027s/IONIC_STAT_INVALID by the driver, to ensure the statistics that\nthe driver knows about but the firmware does not are still invalid\nto the driver.\n\nSigned-off-by: Eric Joyner \u003ceric.joyner@amd.com\u003e\nLink: https://patch.msgid.link/20260614205303.48088-4-eric.joyner@amd.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "433bc500814916133db94e55f096ccc01e5faa30",
      "tree": "9494b16865c35965514d79d6e68484f8c90ad824",
      "parents": [
        "7678e69079c10b2fb10977f28f44ddb22971ea5b"
      ],
      "author": {
        "name": "Eric Joyner",
        "email": "eric.joyner@amd.com",
        "time": "Sun Jun 14 13:53:00 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:15:08 2026 -0700"
      },
      "message": "ionic: Update ionic_if.h with new extra port stats\n\nAdd a new structure to report additional statistics from the firmware to\nstruct ionic_port_info. This new struct currently only contains FEC\nrelated statistics, but any new port-level statistics collected by the\nfirmware would go into it.\n\nThe new structure is located in the same area as the unused\nionic_port_pb_stats structure, so this patch also removes that and its\nsupporting enumerations since they was never used in this driver.\n\nFinally, to indicate firmware support for the new structure, introduce a\nnew device capability that the driver can use to see if the attached\ndevice supports reporting these extra stats.\n\nSigned-off-by: Eric Joyner \u003ceric.joyner@amd.com\u003e\nLink: https://patch.msgid.link/20260614205303.48088-3-eric.joyner@amd.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "7678e69079c10b2fb10977f28f44ddb22971ea5b",
      "tree": "c332ee9a7efee836364d2336c34595c604a9e8f6",
      "parents": [
        "195900546305644b5570dcd615e30be3abe86185"
      ],
      "author": {
        "name": "Brett Creeley",
        "email": "brett.creeley@amd.com",
        "time": "Sun Jun 14 13:52:59 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 18:15:08 2026 -0700"
      },
      "message": "ionic: Fix check in ionic_get_link_ext_stats\n\nThe current check will fail if SR-IOV is not initialized for the\nphysical function; this is because is_physfn is 0 if sriov_init() isn\u0027t\nrun or fails. Change the check that prevents getting the link down count\nto use is_virtfn instead so that VFs don\u0027t get this functionality, which\nwas the original intent.\n\nFixes: 132b4ebfa090 (\"ionic: add support for ethtool extended stat link_down_count\")\nSigned-off-by: Brett Creeley \u003cbrett.creeley@amd.com\u003e\nSigned-off-by: Eric Joyner \u003ceric.joyner@amd.com\u003e\nLink: https://patch.msgid.link/20260614205303.48088-2-eric.joyner@amd.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "4f87e9068bf3aaf45f226261d5efd50bec42c12c",
      "tree": "64ed81ea2559bb799f0905be4cbdbd37bb247fbf",
      "parents": [
        "7c08d430835a90414cd962e3a9602e5b002dee3b",
        "5d5221f8a4064a256b9499485a9f8c6f530f21dc"
      ],
      "author": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Mon Jun 15 21:01:30 2026 -0400"
      },
      "committer": {
        "name": "Martin K. Petersen",
        "email": "martin.petersen@oracle.com",
        "time": "Mon Jun 15 21:01:30 2026 -0400"
      },
      "message": "Merge branch 7.1/scsi-fixes into 7.2/scsi-staging\n\nPull in outstanding commits from 7.1 branch.\n\nSigned-off-by: Martin K. Petersen \u003cmartin.petersen@oracle.com\u003e\n"
    },
    {
      "commit": "195900546305644b5570dcd615e30be3abe86185",
      "tree": "a4fe0491e77dc0234277bf905e064a62e5f359fb",
      "parents": [
        "a459b560e58be327689e9bd8c0a6be9a4f163366",
        "13ea4d4888c4614e496faa84d19a37f272116cc0"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 17:18:02 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 17:18:03 2026 -0700"
      },
      "message": "Merge branch \u0027net-dsa-mxl862xx-serdes-ports\u0027\n\nDaniel Golle says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nnet: dsa: mxl862xx: SerDes ports\n\nAdd support for the two SerDes PCS interfaces of the MxL862xx switch\nICs, which can both either be used to connect PHYs or SFP cages, or as\nCPU port(s). 1000Base-X, 2500Base-X, 10GBase-R, 10GBase-KR, SGMII,\nQSGMII and USXGMII (single 10G or quad 2.5G) are supported.\n\nThe firmware only added the API to directly control the PCS as of\nversion 1.0.84, so the PCS features are gated behind a version check.\n\nAs the driver is growing do some refactoring to break out the phylink\nparts into mxl862xx-phylink.h.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://patch.msgid.link/cover.1781319534.git.daniel@makrotopia.org\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "13ea4d4888c4614e496faa84d19a37f272116cc0",
      "tree": "a4fe0491e77dc0234277bf905e064a62e5f359fb",
      "parents": [
        "7dab839724ed4b02f89b90fa88e7bc820f299948"
      ],
      "author": {
        "name": "Daniel Golle",
        "email": "daniel@makrotopia.org",
        "time": "Sat Jun 13 04:07:29 2026 +0100"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 17:18:01 2026 -0700"
      },
      "message": "net: dsa: mxl862xx: add support for SerDes ports\n\nThe MxL862xx has two XPCS/SerDes interfaces (XPCS0 for ports 9-12,\nXPCS1 for ports 13-16). Each can operate in various single-lane modes\n(SGMII, 1000Base-X, 2500Base-X, 10GBase-R, 10GBase-KR, USXGMII) or as\nQSGMII or 10G_QXGMII providing four sub-ports per interface.\n\nImplement phylink PCS operations using the firmware\u0027s XPCS API:\n\n  - pcs_enable/pcs_disable: refcount the sub-ports sharing an XPCS\n    and power it down once the last sub-port is released.\n  - pcs_config: configure negotiation mode and CL37/SGMII advertising.\n  - pcs_get_state: read link state and the link-partner ability word\n    from firmware and decode using phylink\u0027s standard CL37, SGMII, and\n    USXGMII decoders.\n  - pcs_an_restart: restart CL37 or CL73 auto-negotiation.\n  - pcs_link_up: force speed/duplex for SGMII.\n  - pcs_inband_caps: report per-mode in-band status capabilities.\n\nRegister a PCS instance for each SerDes interface and\nQSGMII/10G_QXGMII sub-ports during setup. Advertise the supported\ninterface modes in phylink_get_caps based on port number.\n\nFirmware older than 1.0.84 lacks the XPCS API and instead configures\nthe SerDes itself, using defaults stored in flash. mac_select_pcs()\nreturns NULL in that case while the single-lane interface modes stay\nadvertised, so a CPU port keeps working in the firmware-configured\nmode.\n\nLacking support for expressing PHY-side role modes in Linux only the\nMAC-side of SGMII, QSGMII, USXGMII and 10G_QXGMII are implemented for\nnow.\n\nSigned-off-by: Daniel Golle \u003cdaniel@makrotopia.org\u003e\nLink: https://patch.msgid.link/736e4df02e4cb8c530c1670cbe7efac20b5d696d.1781319534.git.daniel@makrotopia.org\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "7dab839724ed4b02f89b90fa88e7bc820f299948",
      "tree": "32041fe8629bf3daa7efc32ea765b42b369cda00",
      "parents": [
        "c1034332003fc3f9dc99f0c45f7c0e31c695adb8"
      ],
      "author": {
        "name": "Daniel Golle",
        "email": "daniel@makrotopia.org",
        "time": "Sat Jun 13 04:07:23 2026 +0100"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 17:18:01 2026 -0700"
      },
      "message": "net: dsa: mxl862xx: move API macros to mxl862xx-host.h\n\nMove the MXL862XX_API_WRITE, MXL862XX_API_READ and\nMXL862XX_API_READ_QUIET convenience macros from mxl862xx.c to\nmxl862xx-host.h next to the mxl862xx_api_wrap() prototype they wrap.\nThis makes them available to other compilation units that include\nmxl862xx-host.h, which is needed once the SerDes PCS code in\nmxl862xx-phylink.c also calls firmware commands.\n\nNo functional change.\n\nSigned-off-by: Daniel Golle \u003cdaniel@makrotopia.org\u003e\nReviewed-by: Maxime Chevallier \u003cmaxime.chevallier@bootlin.com\u003e\nLink: https://patch.msgid.link/914f57931e79cc3932a9f32813465c08d29cf4bf.1781319534.git.daniel@makrotopia.org\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "c1034332003fc3f9dc99f0c45f7c0e31c695adb8",
      "tree": "0c2003031e320a85a3d3a4846031be4356561d79",
      "parents": [
        "937137db7914ed332ce455cdac94a218e6ae2693"
      ],
      "author": {
        "name": "Daniel Golle",
        "email": "daniel@makrotopia.org",
        "time": "Sat Jun 13 04:07:16 2026 +0100"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 17:18:00 2026 -0700"
      },
      "message": "net: dsa: mxl862xx: move phylink stubs to mxl862xx-phylink.c\n\nMove the phylink MAC operations and get_caps callback from mxl862xx.c\ninto a dedicated mxl862xx-phylink.c file. This prepares for the SerDes\nPCS implementation which adds substantial phylink/PCS code -- keeping\nit in a separate file avoids function-position churn in the main\ndriver file.\n\nNo functional change.\n\nSigned-off-by: Daniel Golle \u003cdaniel@makrotopia.org\u003e\nReviewed-by: Maxime Chevallier \u003cmaxime.chevallier@bootlin.com\u003e\nLink: https://patch.msgid.link/fb9336de94bef47a0834287cbca87954e5e4c795.1781319534.git.daniel@makrotopia.org\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "937137db7914ed332ce455cdac94a218e6ae2693",
      "tree": "e1d07207026484c8358ce417e2ae9bd320736196",
      "parents": [
        "a459b560e58be327689e9bd8c0a6be9a4f163366"
      ],
      "author": {
        "name": "Daniel Golle",
        "email": "daniel@makrotopia.org",
        "time": "Sat Jun 13 04:07:11 2026 +0100"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 17:18:00 2026 -0700"
      },
      "message": "net: dsa: mxl862xx: store firmware version for feature gating\n\nQuery the firmware version at init (already done in wait_ready),\ncache it in priv-\u003efw_version, and provide MXL862XX_FW_VER_MIN()\nfor version-gated code paths throughout the driver.\n\nMXL862XX_FW_VER() packs major/minor/revision into a u32 with\nbitwise shifts so that versions compare with natural ordering,\nindependent of host endianness.\n\nSigned-off-by: Daniel Golle \u003cdaniel@makrotopia.org\u003e\nReviewed-by: Andrew Lunn \u003candrew@lunn.ch\u003e\nLink: https://patch.msgid.link/91a26a8ffeaa2ce1729f98347e93e779973976bb.1781319534.git.daniel@makrotopia.org\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "a459b560e58be327689e9bd8c0a6be9a4f163366",
      "tree": "5bf38b1945e094b13ac96b8dbf0ab2e67b1d5a45",
      "parents": [
        "7f80f60161497c1b5a1e15392b11e5f4e3a323e3"
      ],
      "author": {
        "name": "Lorenzo Bianconi",
        "email": "lorenzo@kernel.org",
        "time": "Thu Jun 11 23:55:51 2026 +0200"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 16:35:41 2026 -0700"
      },
      "message": "net: airoha: use int instead of atomic_t for qdma users counter\n\nQDMA users counter is always accessed holding RTNL lock so we do not\nrequire atomic_t for it.\n\nSigned-off-by: Lorenzo Bianconi \u003clorenzo@kernel.org\u003e\nReviewed-by: Simon Horman \u003chorms@kernel.org\u003e\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "7f80f60161497c1b5a1e15392b11e5f4e3a323e3",
      "tree": "4449851c19d181d7275a141d32b4c1bfb0bc2cf2",
      "parents": [
        "b0d62ed164247b55dc39f4f9f668e6e8e067763c",
        "ae57a55332436ca58d1824d3375478afd51dca6a"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:57:32 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 16:00:00 2026 -0700"
      },
      "message": "Merge branch \u0027tcp-rehash-onto-different-local-ecmp-path-on-retransmit-timeout\u0027\n\nNeil Spring says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\ntcp: rehash onto different local ECMP path on retransmit timeout\n\nCurrently sk_rethink_txhash() re-rolls the socket\u0027s txhash on RTO,\nPLB, and spurious-retransmission events, but the new hash is not\npropagated into the IPv6 ECMP path selection.  The cached\nroute is reused and fib6_select_path() is never re-invoked, so\nthe connection uses the same local ECMP decision.\n\nThis series adds the two missing pieces:\n\n1. __sk_dst_reset() alongside sk_rethink_txhash() so the cached dst\n   is invalidated and the next transmit triggers a fresh route lookup.\n\n2. fl6-\u003emp_hash set from sk_txhash before each route lookup so\n   fib6_select_path() picks a path from the (potentially re-rolled) hash.\n\nThe override applies only to fib_multipath_hash_policy 0 (the default L3\npolicy).  Its hash includes the flow label, but that is 0 by default\n(np-\u003eflow_label is unset; auto_flowlabels computes the on-wire label\nlater, per packet), so flows to the same peer share one local path.\nKeying it on sk_txhash makes that local path per-connection and lets a\nrehash re-select it; even when a flow label is present (reflected REPFLOW\nor explicitly set) only local path selection changes -- the on-wire flow\nlabel is unaffected.  Policies 1-3 are left unchanged.\n\nPatch 1 is the kernel change; patch 2 adds selftests covering rehash on\nSYN, SYN/ACK, midstream RTO, midstream spurious-retransmission, and PLB\nevents, plus a policy 1 negative test, a flowlabel-leak regression test,\na dst-rebuild consistency test, and a syncookie path-consistency test.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://patch.msgid.link/20260615042158.1600746-1-ntspring@meta.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "ae57a55332436ca58d1824d3375478afd51dca6a",
      "tree": "4449851c19d181d7275a141d32b4c1bfb0bc2cf2",
      "parents": [
        "658eb696544cc0e39ef1d60795546e64f542604a"
      ],
      "author": {
        "name": "Neil Spring",
        "email": "ntspring@meta.com",
        "time": "Sun Jun 14 21:21:58 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:58:13 2026 -0700"
      },
      "message": "selftests: net: add local ECMP rehash test\n\nAdd ecmp_rehash.sh with nine scenarios verifying that TCP rehash\nselects a different local ECMP path for IPv6:\n\n  - SYN retransmission (forward path blocked during setup)\n  - SYN/ACK retransmission (reverse path blocked during setup)\n  - Midstream RTO (forward path blocked on established connection)\n  - Midstream ACK rehash (reverse path blocked on established connection)\n  - PLB rehash (ECN-driven congestion on established connection)\n  - Hash policy 1 negative test (rehash attempted but path unchanged)\n  - No flowlabel leak (client mp_hash does not alter on-wire flowlabel)\n  - Dst rebuild consistency (dst invalidation does not change path)\n  - Syncookie server path consistency (SYN-ACK and post-cookie ACKs\n    use the same ECMP path)\n\nThe policy 1 test verifies that fib_multipath_hash_policy\u003d1 computes\na deterministic 5-tuple hash, so txhash re-rolls do not change the\nECMP path while TcpTimeoutRehash still increments.\n\nThe flowlabel leak test sets auto_flowlabels\u003d0 on the client and\ninstalls tc filters on client egress that drop TCP packets with\nnonzero flowlabel, confirming that the client\u0027s fl6-\u003emp_hash does\nnot leak into the on-wire IPv6 flow label.\n\nThe PLB test needs DCTCP, a restricted congestion control.  Rather\nthan relax the host-global tcp_allowed_congestion_control (no\nper-netns equivalent), it pins dctcp on the test routes via the\ncongctl route attribute, confined to the test namespaces.\n\nThe dst rebuild test streams data, invalidates the cached dst by\nadding and removing a dummy route (bumping the fib6_node sernum),\nand verifies that traffic stays on the same path.  The sernum change\ncauses ip6_dst_check() to fail on the next transmit, triggering a\nfresh route lookup via inet6_csk_route_socket().\nECMP_REBUILD_ROUNDS\u003d10 repeats the check to reduce the probability\nof a buggy kernel passing by chance with 2-way ECMP.\n\nThe syncookie server path consistency test verifies that the\nserver\u0027s SYN-ACK and subsequent ACKs use the same ECMP path.\nWith syncookies, the request socket is freed after the SYN-ACK,\nso cookie_tcp_reqsk_init() must derive the same txhash (from the\ncookie) that was used for the SYN-ACK\u0027s route lookup.\n\nThe syncookie test forces tcp_syncookies\u003d2; it skips when\nCONFIG_SYN_COOKIES is not available.  selftests/net/config selects\nit (and CONFIG_TCP_CONG_DCTCP for the PLB test).\n\nSigned-off-by: Neil Spring \u003cntspring@meta.com\u003e\nLink: https://patch.msgid.link/20260615042158.1600746-3-ntspring@meta.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "658eb696544cc0e39ef1d60795546e64f542604a",
      "tree": "6b6892097d03896735425fccde69160fd8fd83bf",
      "parents": [
        "b0d62ed164247b55dc39f4f9f668e6e8e067763c"
      ],
      "author": {
        "name": "Neil Spring",
        "email": "ntspring@meta.com",
        "time": "Sun Jun 14 21:21:57 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:57:31 2026 -0700"
      },
      "message": "tcp: rehash onto different local ECMP path on retransmit timeout\n\nCurrently sk_rethink_txhash() re-rolls the socket\u0027s txhash on RTO, PLB,\nand spurious-retransmission events, but the cached route is reused and\nthe new hash is not propagated into the ECMP path selection logic.  Two\nchanges are needed to make rehash select a different local ECMP path:\n\n1. Add __sk_dst_reset() alongside sk_rethink_txhash() in\n   tcp_write_timeout(), tcp_rcv_spurious_retrans(), and\n   tcp_plb_check_rehash() so the cached dst is invalidated and the\n   next transmit triggers a fresh route lookup.\n\n2. Set fl6-\u003emp_hash from sk_txhash (or tcp_rsk(req)-\u003etxhash for\n   SYN/ACK retransmits and syncookies) in tcp_v6_connect(),\n   inet6_sk_rebuild_header(), inet6_csk_route_req(),\n   inet6_csk_route_socket(), tcp_v6_send_response(), and\n   cookie_v6_check() so fib6_select_path() picks a path based on the\n   new hash.\n\nThe mp_hash override only applies to fib_multipath_hash_policy 0 (the\ndefault L3 policy).  Its hash includes the flow label, but that is 0 by\ndefault -- np-\u003eflow_label is unset, and auto_flowlabels only computes\nthe on-wire label later, per packet -- so flows to the same peer share\none local path.  Keying the hash on sk_txhash makes the local path\nper-connection and lets a rehash re-select it.  Policies 1-3 are left\nunchanged.\n\nThe mp_hash assignment is factored into a small helper,\nip6_ecmp_set_mp_hash(), shared by inet6_csk_route_req(),\ninet6_csk_route_socket(), tcp_v6_connect(), inet6_sk_rebuild_header(),\ntcp_v6_send_response(), and cookie_v6_check().  It applies\n(txhash \u003e\u003e 1) ?: 1 for policy 0 (the \u003e\u003e 1 keeps mp_hash in the 31-bit\nrange; ?: 1 keeps it non-zero, since 0 would fall back to\nrt6_multipath_hash()).  inet6_csk_route_socket() calls it only for\nsk_protocol \u003d\u003d IPPROTO_TCP so that non-TCP callers (e.g., L2TP via\ninet6_csk_xmit) fall through to rt6_multipath_hash() and retain their\nexisting flow-key-based ECMP behavior.\n\ntcp_v6_send_response() also sets mp_hash from the response txhash so\nthat a control packet (a RST from the full socket, or an ACK from a\ntime-wait socket) selects the same local ECMP nexthop as the\nconnection\u0027s txhash rather than falling back to the flow hash.  The\ntime-wait socket\u0027s tw_txhash is copied from sk_txhash when the\nconnection enters TIME_WAIT, so it reflects any rehash that occurred.\n\nSetting mp_hash explicitly is necessary because the default ECMP hash\nderives from fl6-\u003eflowlabel via np-\u003eflow_label, which is not updated\nfrom sk_txhash (REPFLOW is off by default).  ip6_make_flowlabel()\ncannot help either, as it runs after the route lookup.\n\nAs a consequence, for policy 0 the local ECMP path of an IPv6 TCP\nflow follows sk_txhash even when fl6-\u003eflowlabel is non-zero, e.g. a\nreflected (REPFLOW) or explicitly set (IPV6_FLOWLABEL_MGR) flow\nlabel.  This is intentional: only local path selection changes, so\nrehash can recover from a failed path; the on-wire flow label is\nunchanged.\n\nsk_set_txhash() is moved before ip6_dst_lookup_flow() in\ntcp_v6_connect() so the initial ECMP path is selected by the same\ntxhash that subsequent route rebuilds will use.  This avoids\nunintended path changes when the cached dst is naturally invalidated\n(e.g., by PMTU discovery or route changes).\n\nThe rehash sites (tcp_write_timeout(), tcp_plb_check_rehash(), and\ntcp_rcv_spurious_retrans()) call __sk_rethink_txhash_reset_dst(),\nwhich re-rolls the txhash and, when it changed, drops the cached dst\nso the next transmit re-runs route selection.  The dst reset is\nguarded by sk-\u003esk_family \u003d\u003d AF_INET6 since IPv4 ECMP does not\ncurrently use sk_txhash for path selection.  For IPv4-mapped IPv6\nsockets this produces a redundant dst reset on a cold path\n(RTO/PLB); the subsequent IPv4 route lookup returns the same result.\nThe helper is deliberately separate from sk_rethink_txhash() itself:\ndst_negative_advice() calls sk_rethink_txhash() before its own dst op,\nso resetting the dst inside sk_rethink_txhash() would skip that op\n(e.g. rt6_remove_exception_rt()).\n\nFor syncookies, cookie_init_sequence() computes the cookie value\nbefore route_req() and sets txhash so the SYN-ACK selects the same\nECMP path that cookie_v6_check() will use when the full socket is\ncreated.  cookie_tcp_reqsk_init() derives txhash from the cookie so\nthe full socket\u0027s ECMP path matches the SYN-ACK.  Both the SYN-ACK\nassignment in tcp_conn_request() and the full-socket assignment in\ncookie_tcp_reqsk_init() set txhash from the cookie for IPv4 and IPv6\nalike.  On IPv6 this drives ECMP path selection; on IPv4, which does\nnot use sk_txhash for ECMP, it only affects TX-queue selection.  That\nselection scales the hash by its high bits (reciprocal_scale()), which\nare uniform in the keyed secure_tcp_syn_cookie() output -- the MSS index\nonly perturbs the low bits -- so the queue distribution matches\nnet_tx_rndhash().\n\ncookie_init_sequence() is split from the former version that also\ncalled tcp_synq_overflow() and incremented SYNCOOKIESSENT; those\nside effects are now in cookie_record_sent(), called after\nroute_req() succeeds so they are not bumped when route_req() fails.\ncookie_record_sent() is guarded by CONFIG_SYN_COOKIES to\nmatch the guard on tcp_synq_overflow().  route_req() receives 0 as\ntw_isn for the syncookie path so that tcp_v6_init_req() still saves\nireq-\u003epktopts for REPFLOW flowlabel reflection and IPv6 cmsg\noptions.  The ecn_ok clear for syncookies without timestamps stays\nafter tcp_ecn_create_request() so it takes precedence.\n\nSigned-off-by: Neil Spring \u003cntspring@meta.com\u003e\nReviewed-by: Eric Dumazet \u003cedumazet@google.com\u003e\nLink: https://patch.msgid.link/20260615042158.1600746-2-ntspring@meta.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "b0d62ed164247b55dc39f4f9f668e6e8e067763c",
      "tree": "3dca4b9f47a7d71c254d6137a8a176435897dc9f",
      "parents": [
        "eb82367bca5656c99d98bba65f101776e2c2dc36"
      ],
      "author": {
        "name": "Wayen.Yan",
        "email": "win847@gmail.com",
        "time": "Sun Jun 14 07:52:39 2026 +0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:53:57 2026 -0700"
      },
      "message": "net: airoha: Fix MODULE_LICENSE to match SPDX GPL-2.0-only identifier\n\nBoth airoha_eth.c and airoha_npu.c declare SPDX-License-Identifier:\nGPL-2.0-only but use MODULE_LICENSE(\"GPL\"), which the kernel module\nloader interprets as GPL-2.0+ (any GPL version). This mismatch causes\nlicense compliance tools (FOSSology, ScanCode, etc.) to misidentify\nthe effective license as more permissive than intended.\n\nReplace MODULE_LICENSE(\"GPL\") with MODULE_LICENSE(\"GPL v2\") to\nalign with the GPL-2.0-only SPDX identifier. Per include/linux/module.h,\n\"GPL v2\" maps to GPL-2.0-only, matching the source files\u0027 declared\nlicense.\n\nSigned-off-by: Wayen \u003cwin847@gmail.com\u003e\nLink: https://patch.msgid.link/6a2ded59.63d39acb.391892.7632@mx.google.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "eb82367bca5656c99d98bba65f101776e2c2dc36",
      "tree": "278c2a31420e397e1af5a3879cb6398c3faa38aa",
      "parents": [
        "952d66f16dcd0d7c24b3187e79a292549ef83bf0"
      ],
      "author": {
        "name": "Ethan Nelson-Moore",
        "email": "enelsonmoore@gmail.com",
        "time": "Sat Jun 13 16:37:25 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:52:54 2026 -0700"
      },
      "message": "sctp: correct CONFIG_SCTP_DBG_OBJCNT macro name in comment\n\nA comment in \u003cnet/sctp/sctp.h\u003e incorrectly refers to\nCONFIG_SCTP_DBG_OBJCOUNT instead of CONFIG_SCTP_DBG_OBJCNT. Correct it.\n\nDiscovered while searching for CONFIG_* symbols referenced in code but\nnot defined in any Kconfig file.\n\nSigned-off-by: Ethan Nelson-Moore \u003cenelsonmoore@gmail.com\u003e\nLink: https://patch.msgid.link/20260613233725.162470-1-enelsonmoore@gmail.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "952d66f16dcd0d7c24b3187e79a292549ef83bf0",
      "tree": "5bdcad1864399e7ac596ad0e11b32f63018012a4",
      "parents": [
        "a061dfb063fa03ed09cf21145ffff247cf94721a"
      ],
      "author": {
        "name": "Ethan Nelson-Moore",
        "email": "enelsonmoore@gmail.com",
        "time": "Sat Jun 13 15:59:00 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:46:47 2026 -0700"
      },
      "message": "net/mlx5: HWS: correct CONFIG_MLX5_HW_STEERING macro name in comment\n\nA comment in\ndrivers/net/ethernet/mellanox/mlx5/core/steering/hws/fs_hws.h\nincorrectly refers to CONFIG_MLX5_HWS_STEERING instead of\nCONFIG_MLX5_HW_STEERING. Correct it.\n\nDiscovered while searching for CONFIG_* symbols referenced in code but\nnot defined in any Kconfig file.\n\nSigned-off-by: Ethan Nelson-Moore \u003cenelsonmoore@gmail.com\u003e\nReviewed-by: Gal Pressman \u003cgal@nvidia.com\u003e\nLink: https://patch.msgid.link/20260613225904.140791-1-enelsonmoore@gmail.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "a061dfb063fa03ed09cf21145ffff247cf94721a",
      "tree": "308233ddce2e55d5229104517b9ebd1b477a4c55",
      "parents": [
        "05173fa30add3787e7ab2e735c4ee00431994259"
      ],
      "author": {
        "name": "Wayen.Yan",
        "email": "win847@gmail.com",
        "time": "Sat Jun 13 08:41:16 2026 +0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:45:45 2026 -0700"
      },
      "message": "net: airoha: Fix typos in comments and Kconfig\n\nFix several typos found during code review:\n- Kconfig: \"Aiorha\" -\u003e \"Airoha\" in NET_AIROHA_FLOW_STATS help text\n- Comment: \"CMD1\" -\u003e \"CDM1\" (Central DMA, not Command)\n- Comments: \"GMD1/2/3/4\" -\u003e \"GDM1/2/3/4\" (Gigabit DMA, not GMD)\n\nThese are pure comment and documentation fixes with no functional impact.\n\nSigned-off-by: Wayen.Yan \u003cwin847@gmail.com\u003e\nAcked-by: Lorenzo Bianconi \u003clorenzo@kernel.org\u003e\nLink: https://patch.msgid.link/6a2ca74a.c5b1db4e.21a698.01e7@mx.google.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "05173fa30add3787e7ab2e735c4ee00431994259",
      "tree": "a8b5d2f28d84fa2d7af6153972e7a7301434c960",
      "parents": [
        "14dacf766c2518147522dbf5649228d27ef3e1ab"
      ],
      "author": {
        "name": "Wayen.Yan",
        "email": "win847@gmail.com",
        "time": "Sat Jun 13 08:22:31 2026 +0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:44:26 2026 -0700"
      },
      "message": "net: airoha: Fix non-standard return value in airoha_ppe_get_wdma_info()\n\nairoha_ppe_get_wdma_info() returns -1 when the last path in the\nforwarding path stack is not of type DEV_PATH_MTK_WDMA. This is not\na standard kernel error code. Replace it with -EINVAL since the\ninput path type is invalid from the caller\u0027s perspective.\n\nSigned-off-by: Wayen.Yan \u003cwin847@gmail.com\u003e\nAcked-by: Lorenzo Bianconi \u003clorenzo@kernel.org\u003e\nLink: https://patch.msgid.link/6a2ca3d9.ad59c0a6.147df9.2a62@mx.google.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "14dacf766c2518147522dbf5649228d27ef3e1ab",
      "tree": "bd9f6dea9d5346e6d819c6e216f0170247953f6e",
      "parents": [
        "a61bb36996db340edd861f305c1360185fe12127",
        "d9e4dd3c6f1fab3531d954c4ddedd7207402920b"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:42:55 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:42:56 2026 -0700"
      },
      "message": "Merge branch \u0027docs-net-more-adjustments-to-docs\u0027\n\nJakub Kicinski says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\ndocs: net: more adjustments to docs\n\nA few small updates to the docs.\nThis is trying to prepare docs for getting fed directly\ninto AI reviews.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://patch.msgid.link/20260613165846.2913092-1-kuba@kernel.org\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "d9e4dd3c6f1fab3531d954c4ddedd7207402920b",
      "tree": "bd9f6dea9d5346e6d819c6e216f0170247953f6e",
      "parents": [
        "e504cf18ef4706b4794fb91a010d345e3d48c72d"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Sat Jun 13 09:58:46 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:42:53 2026 -0700"
      },
      "message": "docs: net: fix minor issues with strparser docs\n\nNot sure if anyone would read this doc, but the API has evolved\nsince it was written. Update to:\n- show the int return type for strp_init()\n- refer to strp_data_ready(), not the old strp_tcp_data_ready() name\n- direct users to strp_msg(skb) for strparser metadata instead of\n  treating skb-\u003ecb as struct strp_msg directly\n\nLink: https://patch.msgid.link/20260613165846.2913092-4-kuba@kernel.org\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "e504cf18ef4706b4794fb91a010d345e3d48c72d",
      "tree": "183144e0dc1acaebd3c5155fa33d1c078f475806",
      "parents": [
        "c8ee634048ddab66580c168174c9d46ce1b0fc53"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Sat Jun 13 09:58:45 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:42:53 2026 -0700"
      },
      "message": "docs: net: fix minor issues with devlink docs\n\nUpdate devlink documentation to match current code:\n\n- describe health reporter defaults (it\u0027s currently under \"callbacks\"),\n  best-effort auto-dump, and port-scoped reporters\n- fix generic parameter names and values\n- fix nested devlink setup wording and registration ordering\n\nLink: https://patch.msgid.link/20260613165846.2913092-3-kuba@kernel.org\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "c8ee634048ddab66580c168174c9d46ce1b0fc53",
      "tree": "d381c2735291e58e6935d8f575dfebede3b62cd7",
      "parents": [
        "a61bb36996db340edd861f305c1360185fe12127"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Sat Jun 13 09:58:44 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:42:52 2026 -0700"
      },
      "message": "docs: net: tls-offload: document tls_dev_del, tls_dev_resync, and rekey\n\nFill in some gaps in the TLS offload doc:\n\n- describe the tls_dev_del and tls_dev_resync callbacks\n- add a mention of rekeying being out of scope for now\n\nReviewed-by: Sabrina Dubroca \u003csd@queasysnail.net\u003e\nLink: https://patch.msgid.link/20260613165846.2913092-2-kuba@kernel.org\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "a61bb36996db340edd861f305c1360185fe12127",
      "tree": "1b8cc55134a532065d72a03cb9586e59a2e28b1b",
      "parents": [
        "f34c6b3a3c3d98f34918e1d2ea846a5acccac6d1",
        "0384ba23186859fe3871d1071ed769d23d0d773d"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:38:46 2026 -0700"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:38:47 2026 -0700"
      },
      "message": "Merge branch \u0027net-atlantic-add-ptp-support-for-aqc113-antigua\u0027\n\nSukhdeep Singh says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nnet: atlantic: add PTP support for AQC113 (Antigua)\n\nThis series adds IEEE 1588 PTP support for the AQC113 (Antigua) network\ncontroller. AQC113 is the successor to the existing AQC107 (Atlantic)\nchip already supported by the atlantic driver.\n\nAQC113 uses a substantially different hardware architecture for PTP\ncompared to AQC107:\n\n  - Dual on-chip TSG clocks with direct register access instead of\n    PHY-based timestamping via firmware\n  - TX timestamps via descriptor writeback instead of firmware mailbox\n  - Hardware L3/L4 RX filters for PTP multicast steering with both\n    IPv4 and IPv6 support\n  - Reference-counted shared filter slots managed through an Action\n    Resolver Table (ART), allowing multiple rules to share L3/L4\n    hardware filters when their match criteria are identical\n\nThe series is structured in four parts:\n\nPatches 1-3 prepare the existing L3/L4 filter path:\n\n  Patch 1 corrects flow_type masking and IPv6 address handling in\n  aq_set_data_fl3l4(). Patch 2 moves the active_ipv4/ipv6 bitmap\n  updates to after the hardware write succeeds. Patch 3 decouples\n  the function from driver-internal structures so it can be called\n  directly by the AQC113 PTP filter setup code.\n\nPatches 4-5 add the AQC113 hardware infrastructure:\n\n  Patch 4 adds the low-level register definitions and accessor\n  functions. Patch 5 adds filter data structures and firmware\n  capability query.\n\nPatches 6-7 implement the AQC113 L2/L3/L4 RX filter management:\n\n  Patch 6 fixes the AQC113 HW init path: ART section selection,\n  L2 filter slot assignment, and MAC address programming. Patch 7\n  implements the complete L3/L4 RX filter ops including reference-\n  counted ART sharing and IPv4/IPv6 steering.\n\nPatches 8-12 add the AQC113 PTP feature:\n\n  Patch 8 reserves the dedicated PTP traffic class buffer and\n  configures the TX path. Patch 9 extends the hw_ops interface\n  with PTP-specific function pointers and updates AQC107 to the\n  new signatures. Patches 10-12 implement the full PTP subsystem:\n  Patch 10 adds the hw_atl2 register-level PTP clock ops, Patch 11\n  adds TX timestamp polling and PTP TX traffic classification, and\n  Patch 12 integrates PTP into aq_ptp and the driver core.\n\nThe existing AQC107 PTP implementation is not functionally changed\nby this series; AQC113-specific code paths are gated on chip\ndetection throughout.\n\nTested on AQC113 at 1G, 2.5G, 5G, and 10G link speeds using\nptp4l/phc2sys with hardware timestamping in both L2 and L4\n(IPv4/IPv6) modes.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://patch.msgid.link/20260610115448.272-1-sukhdeeps@marvell.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "0384ba23186859fe3871d1071ed769d23d0d773d",
      "tree": "1b8cc55134a532065d72a03cb9586e59a2e28b1b",
      "parents": [
        "da8222888659610f2faf050dea02b8c9bebf4c40"
      ],
      "author": {
        "name": "Sukhdeep Singh",
        "email": "sukhdeeps@marvell.com",
        "time": "Wed Jun 10 17:24:48 2026 +0530"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:38:44 2026 -0700"
      },
      "message": "net: atlantic: add AQC113 PTP support in aq_ptp and driver core\n\naq_ptp.c / aq_ptp.h:\n- Add aq_ptp_state enum (AQ_PTP_FIRST_INIT, AQ_PTP_LINK_UP,\n  AQ_PTP_NO_LINK) to distinguish first init from link-change events;\n  on AQC113 only reset the TSG clock on first init to avoid disrupting\n  ongoing synchronization.\n- Add aq_ptp_dpath_enable() for comprehensive L3/L4 PTP filter\n  setup/teardown, replacing the previous single-filter approach with\n  an array of 4 slots for IPv4 and IPv6 PTP multicast addresses\n  (224.0.1.129, 224.0.0.107, ff0e::181, ff02::6b).\n- Add aq_ptp_parse_rx_filters() to map hwtstamp_rx_filters to L2/L4\n  enable flags and call aq_ptp_dpath_enable().\n- Re-apply RX filters on link change (hardware state lost after reset).\n- Extend PTP ring alloc/init/start/stop to handle AQC113 PTP ring ops.\n- Add per-instance PTP offset table for AQC113 with empirically measured\n  values at 100M/1G/2.5G/5G/10G link speeds.\n- Export aq_ptp_dpath_enable() and updated ring helpers in aq_ptp.h.\n\naq_hw.h:\n- Include hw_atl2/hw_atl2.h for AQC113 PTP type definitions.\n\naq_nic.c:\n- Account for PTP IRQ vector (AQ_HW_PTP_IRQS) in vector count math.\n- Call hw_atl2 PTP re-enable hook after hardware reset in\n  aq_nic_update_link_status().\n\naq_pci_func.c:\n- Pass PTP IRQ index to aq_ptp_irq_alloc() in probe path.\n\nSigned-off-by: Sukhdeep Singh \u003csukhdeeps@marvell.com\u003e\nLink: https://patch.msgid.link/20260610115448.272-13-sukhdeeps@marvell.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "da8222888659610f2faf050dea02b8c9bebf4c40",
      "tree": "d1e9041defdd5470d291096a2252a5259c3d3d1f",
      "parents": [
        "f6a7a4bcc5d3402a44ef3344157ba4e0420317d1"
      ],
      "author": {
        "name": "Sukhdeep Singh",
        "email": "sukhdeeps@marvell.com",
        "time": "Wed Jun 10 17:24:47 2026 +0530"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Mon Jun 15 15:38:44 2026 -0700"
      },
      "message": "net: atlantic: add AQC113 TX timestamp polling and PTP TX classification\n\naq_ring.h / aq_ring.c:\n- Add ptp_ts_deadline field to aq_ring_s to track TX timestamp timeout.\n- In aq_ring_tx_clean(): when hw_ring_tx_ptp_get_ts() returns 0 (HW not\n  yet written back the timestamp), clear buff-\u003eis_mapped and buff-\u003epa\n  before breaking to prevent double dma_unmap on retry.  When\n  ptp_ts_deadline expires, dequeue and drop the head of skb_ring to keep\n  it in lockstep with buff_ring, then clear request_ts and free the skb\n  via dev_kfree_skb_any() to unblock the ring.\n\naq_main.c:\n- Add IPv6 PTP packet detection in aq_ndev_start_xmit() using\n  ipv6_hdr()-\u003enexthdr for ETH_P_IPV6 frames, steering them through\n  aq_ptp_xmit() alongside the existing IPv4 path.\n- Use PTP_EV_PORT/PTP_GEN_PORT constants instead of magic numbers 319/320.\n- Remove duplicate aq_reapply_rxnfc_all_rules() and\n  aq_filters_vlans_update()\n  calls from aq_ndev_open() - now covered by aq_nic_start(), which also\n  ensures filters are restored correctly after PM resume.\n\naq_nic.c:\n- Move aq_reapply_rxnfc_all_rules() and aq_filters_vlans_update() into\n  aq_nic_start() after hardware init, replacing the duplicate calls that\n  were removed from aq_ndev_open().\n\nSigned-off-by: Sukhdeep Singh \u003csukhdeeps@marvell.com\u003e\nLink: https://patch.msgid.link/20260610115448.272-12-sukhdeeps@marvell.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    }
  ],
  "next": "f6a7a4bcc5d3402a44ef3344157ba4e0420317d1"
}
