Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/1.1/patches/2228295/?format=api
{ "id": 2228295, "url": "http://patchwork.ozlabs.org/api/1.1/patches/2228295/?format=api", "web_url": "http://patchwork.ozlabs.org/project/uboot/patch/20260423130323.32533-3-micbis.openwrt@gmail.com/", "project": { "id": 18, "url": "http://patchwork.ozlabs.org/api/1.1/projects/18/?format=api", "name": "U-Boot", "link_name": "uboot", "list_id": "u-boot.lists.denx.de", "list_email": "u-boot@lists.denx.de", "web_url": null, "scm_url": null, "webscm_url": null }, "msgid": "<20260423130323.32533-3-micbis.openwrt@gmail.com>", "date": "2026-04-23T13:03:22", "name": "[v5,2/3] usb: gadget: rcar: Add support for reset controller", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "f07c6e554fdb4bf9e07c8c3a57748fd8a9716265", "submitter": { "id": 93164, "url": "http://patchwork.ozlabs.org/api/1.1/people/93164/?format=api", "name": "Michele Bisogno", "email": "micbis.openwrt@gmail.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/uboot/patch/20260423130323.32533-3-micbis.openwrt@gmail.com/mbox/", "series": [ { "id": 501473, "url": "http://patchwork.ozlabs.org/api/1.1/series/501473/?format=api", "web_url": "http://patchwork.ozlabs.org/project/uboot/list/?series=501473", "date": "2026-04-23T13:03:21", "name": "usb: gadget: rcar: Add RZ/G2L support and lifecycle fixes", "version": 5, "mbox": "http://patchwork.ozlabs.org/series/501473/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2228295/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2228295/checks/", "tags": {}, "headers": { "Return-Path": "<u-boot-bounces@lists.denx.de>", "X-Original-To": "incoming@patchwork.ozlabs.org", "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=W2M4cXZg;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de;\n envelope-from=u-boot-bounces@lists.denx.de; receiver=patchwork.ozlabs.org)", "phobos.denx.de;\n dmarc=pass (p=none dis=none) header.from=gmail.com", "phobos.denx.de;\n spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de", "phobos.denx.de;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.b=\"W2M4cXZg\";\n\tdkim-atps=neutral", "phobos.denx.de;\n dmarc=pass (p=none dis=none) header.from=gmail.com", "phobos.denx.de;\n spf=pass smtp.mailfrom=micbis.openwrt@gmail.com" ], "Received": [ "from phobos.denx.de (phobos.denx.de\n [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g31rd3XgMz1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Sun, 26 Apr 2026 06:38:57 +1000 (AEST)", "from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id 54AF78457D;\n\tSat, 25 Apr 2026 22:36:34 +0200 (CEST)", "by phobos.denx.de (Postfix, from userid 109)\n id 03082841D7; Sat, 25 Apr 2026 22:10:31 +0200 (CEST)", "from mail-lj1-x233.google.com (mail-lj1-x233.google.com\n [IPv6:2a00:1450:4864:20::233])\n (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits))\n (No client certificate requested)\n by phobos.denx.de (Postfix) with ESMTPS id F39A484178\n for <u-boot@lists.denx.de>; Sat, 25 Apr 2026 22:10:28 +0200 (CEST)", "by mail-lj1-x233.google.com with SMTP id\n 38308e7fff4ca-38ea6a5a0b3so87743481fa.3\n for <u-boot@lists.denx.de>; Sat, 25 Apr 2026 13:10:28 -0700 (PDT)", "from localhost.localdomain ([151.70.144.55])\n by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-488fc0f8188sm549381425e9.2.2026.04.23.06.03.45\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Thu, 23 Apr 2026 06:03:45 -0700 (PDT)" ], "X-Spam-Checker-Version": "SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de", "X-Spam-Level": "", "X-Spam-Status": "No, score=-1.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_GMAIL_RCVD,FREEMAIL_FROM,\n RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS autolearn=no\n autolearn_force=no version=3.4.2", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1777147828; x=1777752628; darn=lists.denx.de;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=zkwmsnFoENg8PCpuC74lQSspv6JZWl+rFhjNSgslJ8M=;\n b=W2M4cXZgDZCKhCLqTJVNJDOfjpvI0i3OvRMyGQHgWLWmVgm8M/kGyLDqPnnUtmLif3\n 1LVKQEoqm1l0RnubZJ1QfI3yu4d/nrcjuU5czwncRyVVUxSX99WuJz20v32iWIspaVET\n MKWCc7Ok2y5pw2a52PLdWGpXibysFozt9NcaU5DfQSZuPbuoM5WVRyvdIyVU0fwcJd1s\n igaYfHCDVEsLpKpSb0TblnhJ0dFb5NRg7Rlk2n8IWw02HIRK0btce1K2wYfR8+H5ddyG\n tvpkCRMD2EBEK8310QGEjx/eTV8dFWNEkTuXwX4a99m0qHjUdlnhgNwmGdREQaESRBo5\n RJIg==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777147828; x=1777752628;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=zkwmsnFoENg8PCpuC74lQSspv6JZWl+rFhjNSgslJ8M=;\n b=h3YFIKis9xvi74Tncbp60x7QBKeCXW6PFzimJCbGTGrHWpJQfntRDObAsViOqYZF1R\n J0CvN7HfrediVHRqKE3NifN4PudVrPCuABC1AEfYd8mjpjyV9l74eBgpGje6PR652xCt\n oW0VRytz74pgmObXZRAwFV7wdF3FxXQQDbGrt6DPzEHWeubXHuZm/I14F9G0ctU8ySJh\n kZqwVMNfFkntpHeARQ0EG+LaCMdGFALCMvMMUonnDxBRgy4/LkIAvG9sfMm4MIU1dHDS\n bsvwjybB/49q5oKRNMAJOQvd5BPBrjbEVLoo0LEXoex7YjkDeaySrVYefOMyXquY3JM7\n Dmrg==", "X-Forwarded-Encrypted": "i=1;\n AFNElJ9gmiIBLiuq1eLcZWrP5WhUYQ2TjCi2eRCHGf5Awx2gQr7hN4BC8loUCVgP11D1wdI8rK5w340=@lists.denx.de", "X-Gm-Message-State": "AOJu0Yy9SMKsfKKprFGAv9xtwRFzo7p5iSrTthfO4K5L7yFBLfTwVt8R\n 67hFGHMkPLxHiocpcKj9pcqh+HVukjXK7Bz/+Z5ou1wDf7GYR1RplIA/jERlvw==", "X-Gm-Gg": "AeBDieuOVewiT7MlEsl3SSnbOOT051lxpk18j3b8sjoqCSwIdIFwv8VVRq6hn2nzYQY\n Wu6gZhKPlz+I9cFsWRdPZOKy5j6oE/4zR/mHVTiXGa+IZj8d5J+fkAFSxMltBsVijBkQuW11qJv\n Pr/aqDQwN4k1fo1cVcTeBVqov0TTV5vdfSyiyPB72UB9ZonJEWGsUo68mlEV5hO84QK/Xx1r0+l\n 2+kEAmhbifBS3Xx/xbInzpZZZp4v9pqZedpRdbs+nmc2MKRzi1mPkMsiu7hNmOe4chWL5M9tBV1\n FXp8WKCARnoltunBwwle93jbU1mue8NdC+A2yDVDRuhO5Pk2/IRXGsmhX8R8CR3WAKtg9g6Aha9\n 1tu7c4uZd8gpeKQ7+zBI897AagQbNymr0z8PXsLT9dRb/rYznbCXseHcjUQhwcGxS7R/rJ1yWBF\n qbtgIm5nbkLv9ua8WQNuI+WNQQtBFzfGDUyUqlTDM8hS5NaEzfuKc=", "X-Received": "by 2002:a05:600c:5285:b0:48a:5333:811e with SMTP id\n 5b1f17b1804b1-48a53338269mr225648525e9.15.1776949426857;\n Thu, 23 Apr 2026 06:03:46 -0700 (PDT)", "From": "Michele Bisogno <micbis.openwrt@gmail.com>", "To": "Marek Vasut <marex@denx.de>, Lukasz Majewski <lukma@denx.de>,\n Mattijs Korpershoek <mkorpershoek@kernel.org>", "Cc": "Nobuhiro Iwamatsu <iwamatsu@nigauri.org>, Tom Rini <trini@konsulko.com>,\n u-boot@lists.denx.de, Michele Bisogno <micbis.openwrt@gmail.com>", "Subject": "[PATCH v5 2/3] usb: gadget: rcar: Add support for reset controller", "Date": "Thu, 23 Apr 2026 15:03:22 +0200", "Message-Id": "<20260423130323.32533-3-micbis.openwrt@gmail.com>", "X-Mailer": "git-send-email 2.34.1", "In-Reply-To": "<20260423130323.32533-1-micbis.openwrt@gmail.com>", "References": "<20260423130323.32533-1-micbis.openwrt@gmail.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-Mailman-Approved-At": "Sat, 25 Apr 2026 22:36:28 +0200", "X-BeenThere": "u-boot@lists.denx.de", "X-Mailman-Version": "2.1.39", "Precedence": "list", "List-Id": "U-Boot discussion <u-boot.lists.denx.de>", "List-Unsubscribe": "<https://lists.denx.de/options/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>", "List-Archive": "<https://lists.denx.de/pipermail/u-boot/>", "List-Post": "<mailto:u-boot@lists.denx.de>", "List-Help": "<mailto:u-boot-request@lists.denx.de?subject=help>", "List-Subscribe": "<https://lists.denx.de/listinfo/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=subscribe>", "Errors-To": "u-boot-bounces@lists.denx.de", "Sender": "\"U-Boot\" <u-boot-bounces@lists.denx.de>", "X-Virus-Scanned": "clamav-milter 0.103.8 at phobos.denx.de", "X-Virus-Status": "Clean" }, "content": "Some Renesas SoCs, such as the RZ/G2L, require the USBHS core to\nbe explicitly deasserted from reset before register access is\npossible.\n\nUpdate the OTG probe to handle a bulk reset controller. To maintain\nhardware stability, the reset is deasserted after clocks are\nenabled in probe(), and asserted before clocks are disabled\nin remove().\n\nUpdate the error paths in probe to ensures clocks are disabled\nif the reset initialization fails.\n\nSigned-off-by: Michele Bisogno <micbis.openwrt@gmail.com>\n---\n drivers/usb/gadget/rcar/common.c | 35 +++++++++++++++++++++++++-------\n 1 file changed, 28 insertions(+), 7 deletions(-)", "diff": "diff --git a/drivers/usb/gadget/rcar/common.c b/drivers/usb/gadget/rcar/common.c\nindex d40d6736a54..32c4f1fadb1 100644\n--- a/drivers/usb/gadget/rcar/common.c\n+++ b/drivers/usb/gadget/rcar/common.c\n@@ -16,6 +16,7 @@\n #include <linux/usb/ch9.h>\n #include <linux/usb/gadget.h>\n #include <usb.h>\n+#include <reset.h>\n \n #include \"common.h\"\n \n@@ -290,6 +291,9 @@ struct usbhs_priv_otg_data {\n \tvoid __iomem\t\t*base;\n \tvoid __iomem\t\t*phybase;\n \n+\tstruct clk_bulk clk_bulk;\n+\tstruct reset_ctl_bulk reset_bulk;\n+\n \tstruct platform_device\tusbhs_dev;\n \tstruct usbhs_priv\tusbhs_priv;\n \n@@ -355,8 +359,10 @@ static int usbhs_udc_otg_gadget_handle_interrupts(struct udevice *dev)\n \treturn 0;\n }\n \n-static int usbhs_probe(struct usbhs_priv *priv)\n+static int usbhs_probe(struct udevice *dev)\n {\n+\tstruct usbhs_priv_otg_data *otg_priv = dev_get_priv(dev);\n+\tstruct usbhs_priv *priv = &otg_priv->usbhs_priv;\n \tint ret;\n \n \tpriv->dparam.type = USBHS_TYPE_RCAR_GEN3;\n@@ -396,34 +402,41 @@ static int usbhs_udc_otg_probe(struct udevice *dev)\n {\n \tstruct usbhs_priv_otg_data *priv = dev_get_priv(dev);\n \tstruct usb_gadget *gadget;\n-\tstruct clk_bulk clk_bulk;\n \tint ret = -EINVAL;\n \n \tpriv->base = dev_read_addr_ptr(dev);\n \tif (!priv->base)\n \t\treturn -EINVAL;\n \n-\tret = clk_get_bulk(dev, &clk_bulk);\n+\tret = clk_get_bulk(dev, &priv->clk_bulk);\n \tif (ret)\n \t\treturn ret;\n \n-\tret = clk_enable_bulk(&clk_bulk);\n+\tret = clk_enable_bulk(&priv->clk_bulk);\n \tif (ret)\n \t\treturn ret;\n \n+\tret = reset_get_bulk(dev, &priv->reset_bulk);\n+\tif (ret)\n+\t\tgoto err_clk;\n+\n+\tret = reset_deassert_bulk(&priv->reset_bulk);\n+\tif (ret)\n+\t\tgoto err_clk;\n+\n \tclrsetbits_le32(priv->base + UGCTRL2, UGCTRL2_USB0SEL_MASK, UGCTRL2_USB0SEL_EHCI);\n \tclrsetbits_le16(priv->base + LPSTS, LPSTS_SUSPM, LPSTS_SUSPM);\n \n \tret = generic_setup_phy(dev, &priv->phy, 0, PHY_MODE_USB_OTG, 1);\n \tif (ret)\n-\t\tgoto err_clk;\n+\t\tgoto err_reset;\n \n \tpriv->phybase = dev_read_addr_ptr(priv->phy.dev);\n \n \tpriv->usbhs_priv.pdev = &priv->usbhs_dev;\n \tpriv->usbhs_priv.base = priv->base;\n \tpriv->usbhs_dev.dev.driver_data = &priv->usbhs_priv;\n-\tret = usbhs_probe(&priv->usbhs_priv);\n+\tret = usbhs_probe(dev);\n \tif (ret < 0)\n \t\tgoto err_phy;\n \n@@ -439,8 +452,10 @@ static int usbhs_udc_otg_probe(struct udevice *dev)\n \n err_phy:\n \tgeneric_shutdown_phy(&priv->phy);\n+err_reset:\n+\treset_assert_bulk(&priv->reset_bulk);\n err_clk:\n-\tclk_disable_bulk(&clk_bulk);\n+\tclk_disable_bulk(&priv->clk_bulk);\n \treturn ret;\n }\n \n@@ -456,6 +471,12 @@ static int usbhs_udc_otg_remove(struct udevice *dev)\n \tusbhs_fifo_remove(&priv->usbhs_priv);\n \tusbhs_pipe_remove(&priv->usbhs_priv);\n \n+\treset_assert_bulk(&priv->reset_bulk);\n+\treset_release_bulk(&priv->reset_bulk);\n+\n+\tclk_disable_bulk(&priv->clk_bulk);\n+\tclk_release_bulk(&priv->clk_bulk);\n+\n \tgeneric_shutdown_phy(&priv->phy);\n \n \treturn dm_scan_fdt_dev(dev);\n", "prefixes": [ "v5", "2/3" ] }