From nobody Thu Apr 2 15:37:42 2026 Received: from OS0P286CU010.outbound.protection.outlook.com (mail-japanwestazon11011017.outbound.protection.outlook.com [40.107.74.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C7D2933260F; Fri, 27 Mar 2026 18:09:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.74.17 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774634990; cv=fail; b=Kw1xWAUEO9b8Qnf8K+w/FJIH92PssjZ3Cxg0z7WxfjqBol1dEVedKhrR6ouJdXo4T5bLCIMqDeJZNGu3465384Hahjh25WQdS2GF90gwFsTqDzjzCYUKKCCFQs6j6dUftEveOQ8HDjC7Awx95q7sf5gbhVi1MpV5xCIg84FF9jg= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774634990; c=relaxed/simple; bh=uksNAMd0c65RZAG9rrjZvKw8sbLnYn6IgbXzD8JWk5M=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=c/mFOGd8IFZpSkV1hlO0bmmIJOhZIy/IjhDz4lHVCdEopiG4FhRB/xBvgxLE8LZ3oWrwF425maTnavOA0piKSD3Cps99/dNAT+TK4oTyaq2iGe41lTIeoIzymEEP4L14dvs7/ohl9aLZhlBQt8hZkq3LiOsRYiq7ZSEUCojCvEw= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com; spf=pass smtp.mailfrom=bp.renesas.com; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b=aHSSxYhx; arc=fail smtp.client-ip=40.107.74.17 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b="aHSSxYhx" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=do5REuRsLJSfYosefxp/RlclOdUbyHvprOhKZKFKzOzkF8G/q2nuARyKDTC9Sydp3+U4fAokDRzmezGslJTRxCnGl8omPyxPmFa86UchzIdJ5vm1TVKzAFqGyZ8gdtHTp+ovFypdbnQ4ZXqahWR2CX9W3s4iFUq3Sikb/QuyZMOD0uvdPntCaqvUjBFVMujQRv9QBXkp1mUnQ7s2FuMIEQUloduP/1nkOf5AnCf/DS8sUYXcQKxlpPA7qvOnbxoJpOYR8m+/jdYN7abgqoPiVH+Vlws3DVmP9Fquot016ype3FIquixKI0c8n/hJf6qCb0pHzXBBrGp2ZebQu70oWA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=SHXb7+soJHTQuUHPjWApw9N0qlbwW6U93SZe6yaVzfE=; b=Hk7emEXeeRU9rCfltO1BqZ/yEWISy429zZr00WdzVziCBfQYNR/xlcFdEVrc+/ozTkBzaj+9Ta/5nlFfWnioUg96r4D9ryqb8zXi4jufxoOdNwk/0cULftYTdxTh0bE5rDR4oh06Ve+5EOqkGnntCXb7gSYQ0/A7225W8Qz+K4m3NXVNB0wDCNXmOTkjQo0fTHU2NO7yc898z/rg0p09FKRCzLka0rT5O+zu0J21IaWwaGS2E3WAYGg1kGoNpt++BcnW5ebvR0k3+ucuU6BumzP7TXOQES2lWwyJUtaoIgPYqmqqOIzurDHFqclu1tjCmdQYXwWqWQjDYDuI7XzfYQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=bp.renesas.com; dmarc=pass action=none header.from=bp.renesas.com; dkim=pass header.d=bp.renesas.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bp.renesas.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SHXb7+soJHTQuUHPjWApw9N0qlbwW6U93SZe6yaVzfE=; b=aHSSxYhxmdr0GXzXl775VLcIWLahtzRHJYRQth0i1Xvz3IewWi5UNjmA3PXwAxtnOr+55W2fj8ZkRI0akXR8p/D7e5TKy0+P46TJxQGDrMSNoPNIVNCUP3cACKR/Q+QjowpG8NejYlJEBj9wCS2NXUrXcE5EubNTrDXRXk/IgxQ= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=bp.renesas.com; Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com (2603:1096:400:409::5) by OSRPR01MB11662.jpnprd01.prod.outlook.com (2603:1096:604:22e::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Fri, 27 Mar 2026 18:09:44 +0000 Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495]) by TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495%6]) with mapi id 15.20.9745.024; Fri, 27 Mar 2026 18:09:44 +0000 From: Tommaso Merciai To: tomm.merciai@gmail.com, peda@axentia.se, p.zabel@pengutronix.de Cc: linux-renesas-soc@vger.kernel.org, biju.das.jz@bp.renesas.com, Tommaso Merciai , Fabrizio Castro , Lad Prabhakar , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Magnus Damm , Greg Kroah-Hartman , Josua Mayer , Ulf Hansson , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v9 1/6] mux: Add driver for Renesas RZ/V2H USB VBENCTL VBUS_SEL mux Date: Fri, 27 Mar 2026 19:08:48 +0100 Message-ID: <2b98798fda67e1cfcb7b4df80097c98a148f22c9.1774601289.git.tommaso.merciai.xr@bp.renesas.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0056.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:cc::16) To TYWPR01MB11940.jpnprd01.prod.outlook.com (2603:1096:400:3fd::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TY3PR01MB11948:EE_|OSRPR01MB11662:EE_ X-MS-Office365-Filtering-Correlation-Id: 44ce05ca-0a43-4cf8-c82a-08de8c2c061d X-LD-Processed: 53d82571-da19-47e4-9cb4-625a166a4a2a,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|38350700014|56012099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: HN2Zpya+lbaREr6K5dm1r7m+MWDxBE0v72aKAXQrPIWjN5nH0aGMbRR0BiAXSqkdBdgN/RY8pUTBRrGpMgbddCJgwFG0rB3UVRmvT9a4Vk2OpCIruXvhzOvPTHagJXJGEFO0KWhfow0gJ1m8yAeLv1bwiizEHfjm2c6qGB/vs10Xsnw5E08qF8KkSguc3lytfAMioqXUANS3X+NS/YcPdA2hVMG/ujsPm7i/Gxg0JHItb+yhK1Te8+OvmRMkuz9NcZ16Iaa9/d4DR6kCu+1tvmbXf6ipfjFXHa0pBusatbWbzS/QJXg9nHTfwF1RIL/b5cIj9OpFNFbau7R8gfKUVrmQA+VAfQHqRchxBA7+Vw8ShWDr0ddUMWKuHmP512IeVgiFafNq5Ny+WrMI+dpP16IqRx/OXZbhG5bqk6f63ctlDM9oLG3wcgtjLRJnrJzfKIXenUlkcvQU1zJIExqXDmNcZQpSmi3572O0gbkStLL30kyB25wKieIebH7lb6rdwnzQ2UHXeiZoUOoGryxCQ+0RiRIwKhGF7+apgCtWlFe1/AS4EhG2PIvmQOEW48qALP9JAiVAuGEPKYCfUq5zMvtiCX5RrWilIHO6LDQUeSi7MaDQPIQOOtX0Kbp+hqB6GuvsqD9BhTW0BjOzeJhPvUjCMRUFEQv7QT0srp6Grmm8U93M/ABd/jMxbVrSIxE2uPGvlrYe9w8vki2KWlahWZyYNWmEnIL94DQOfujXiYO9fz1fhHgXim/yz4H48tM6uPXAxcAwuZRgpJ3lrUDvkQSpy2pLgYDa4YJqHptKuY0= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TY3PR01MB11948.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(38350700014)(56012099003)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?1K7tV3mqKH5q53/CeZGqlPla19I7QJREkUtNFr4//4BJNZWfpBEjEVIQPi9g?= =?us-ascii?Q?S/IZiyBJ1cjVHw/EJ7X/QwIVFchHEZay9Y9x/S8rzlddKmaaTRCH6P1Dy4Zi?= =?us-ascii?Q?80yrL1NOhuLO7OwnghUYjivUk9Y/N1l4qa6ld0B3S/nqcz2R2tr8Hd2sJ15u?= =?us-ascii?Q?ksuWhbiodtl5k99IjVWW0s3B2BNTl9TVfkp2vcEkTl+ZRlIBi2SoOiWuKPPw?= =?us-ascii?Q?sTj3nShWqXv5oNyz7ri5EBzMtjNc3fSoPeyXnXEJvAJlg19cxDxfWSDqnF2z?= =?us-ascii?Q?MBWEyszbhhyvR6Ec+HbdUxZCfP4ZPxMvQbaLPgAiasShEtQZA8UsI1Zuq/Og?= =?us-ascii?Q?A0upkd3Ebwcbs15ypfpjeWS4fwuX+RCEZgtH1lCYQs+RNZ8NtGRoBjmF+YD+?= =?us-ascii?Q?Jrjo7qfEPSKrrDYSR4INeWXCYZJqrvGcBDq021WVBDMW+nj6ecMTwQr8WFTt?= =?us-ascii?Q?XuR2AzGlJHxNLxfP0yACrdxZIwliZLohfSNgnq95yFYB2sVMii4hgdurCN9v?= =?us-ascii?Q?17miq/ovXtCnI87aoZX0L0+p32myC90SeFoHYUpmZ4JLcF+xNyl5esQAfp0W?= =?us-ascii?Q?Khu4qbVX5NRk1tT6On+okcQGhnu2b37FLfQoKaAV+To5ofufzrfnPRERZlq7?= =?us-ascii?Q?gK6NtSw54Hd/xRtpTsmDQOXO3Cxyd+6fAI+5zqImIm64/bKrpOhH9eEmmZKe?= =?us-ascii?Q?4i2k0Lbf/KKAgz89DwgsAbfPvzsOO+ya3yExrlHs9s2VxBvamCqo7IqzeH18?= =?us-ascii?Q?HBsYAcI6fnw3IQbl03r8uQA7hLnWqxh48SXYFI1sU6euR73wE9rNIWfe1Hb+?= =?us-ascii?Q?jvxK5M+hHvpC9RYMCXzpRV3eQbyI2uX7MEGb4vF+gPp+C6GLp9WJ67gj9zUl?= =?us-ascii?Q?nPX+TXbhYOGxEkLl4HHyBMRSgF6sCl9DWpBtWOcuOSAz6uy2XXIJifeA08fP?= =?us-ascii?Q?ulg07yTT2lFAhmecAj9Lqc4ylL+02n/Q4GP74xSV4C+ZqRsUgOi7oDQ1kcYp?= =?us-ascii?Q?TrdBGJZWlEYoRPTIdj8hJDw4HY9Fw6GUPLRQOrlfpzajFAoN8gNw3GVSANLm?= =?us-ascii?Q?XS3vMehgUFXjabrCbRLeD2r1La6vbancKarlcs2pIAky5liEnT0/viq1+SHX?= =?us-ascii?Q?kQ42YGov1h+xYxAEyTzYMJsUlix60/0E/wjIrz/Fc3a3e092cnhWFRoYeYQY?= =?us-ascii?Q?d38mPHiGz0SHtwAbsEQsdLjNCEnoiC/5NHClggP9hzsaZhEK6ACrI/sXcmvB?= =?us-ascii?Q?dxFsdqzTrapDTV9pETZGlYUdSQO8OKxt5fmCwJbQDC4yjOQ6U1e9jFyYFfyr?= =?us-ascii?Q?/DBJx04D5EhZCGl8QTKO9oM+959sv8Gi0bLMX/63ocdATYkH4RcIXbkegva0?= =?us-ascii?Q?y3nR+viPeleXwj9sDD0rkmEwGi5FubQd+nOGWFV72yvNoOen77aI3JyubBZU?= =?us-ascii?Q?nEjPLIPSVRgt+5S+XCUtk/MkPHjNYCeIuP0lqS3lAe3+vokiwc9FpgKIkBYC?= =?us-ascii?Q?08JwvdHWXlMeDzX0TCMvGCq7CyzveEx/n4Al9WLO9w3mfRpIJx/kHRzuBNfn?= =?us-ascii?Q?O+CSR8wEaJWyHin6MzucJVB0YkfAYv7LI8XmgWe4AmQevgMn8HfrhwBrV2Ca?= =?us-ascii?Q?DY0cc+BEd1F4kNWhYu7au9+hkuMLJul0W4mwZH0Ym9fKJxomxB2FY3OLaWB8?= =?us-ascii?Q?CLTv5wF59YP0HU74++Odl2cL8PgfAGUNxpitXYrTWCi/ft9xCZCqtRBS4eEB?= =?us-ascii?Q?phTeq+78j9qz4hlcZCDhl3S4lCZvV3T1uzXNCoF38SdsbuxrF2F2?= X-OriginatorOrg: bp.renesas.com X-MS-Exchange-CrossTenant-Network-Message-Id: 44ce05ca-0a43-4cf8-c82a-08de8c2c061d X-MS-Exchange-CrossTenant-AuthSource: TYWPR01MB11940.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Mar 2026 18:09:44.6433 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: NTHi3K3fTznNzJPTuJ9gTXnXzI8Yl+FnAJi6y7ncMoQcKB3D6/wChnCATORAk0JE6IXVq9XorfVDfFmdkjVvnGSBhR/jQI234ARwaclJ0dl3fq376XvDUgC+VVA21Qj0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSRPR01MB11662 Content-Type: text/plain; charset="utf-8" As per the RZ/V2H(P) HW manual, VBUSEN can be controlled by the VBUS_SEL bit of the VBENCTL Control Register. This register is mapped in the reset framework. The reset driver expose this register as mux-controller and instantiates this driver. The consumer will use the mux API to control the VBUS_SEL bit. Reviewed-by: Philipp Zabel Signed-off-by: Tommaso Merciai --- v8->v9: - Fixed driver comment year (2025 -> 2026) - Switch from devm_regmap_init_mmio() to dev_get_regmap(). - Drop unnecessasry include bitops.h, of.h, property.h and drivers/reset/reset-rzv2h-usb2phy.h headers, driver is now based on regm= ap. - Collected PZabel tag. v7->v8: - No changes. v6->v7: - No changes. v5->v6: - No changes. v4->v5: - Changed file name to rzv2h-usb-vbenctl.c and Fixed Makefile, Kconfig, function names accordingly. - Changed driver .name to "vbenctl" and fix auxiliary_device_id name. - Updated commit msg. v3->v4: - Removed mux_chip->dev.of_node not needed. v2->v3: - Added mux_chip->dev.of_node =3D dev->of_node->child as the mux-controller is an internal node. - Fixed auxiliary_device_id name. - Get rdev using from platform_data. - Drop struct auxiliary_device adev from reset_rzv2h_usb2phy_adev as it is needed. - Drop to_reset_rzv2h_usb2phy_adev() as it is not needed. v1->v2: - New patch drivers/mux/Kconfig | 11 +++++ drivers/mux/Makefile | 2 + drivers/mux/rzv2h-usb-vbenctl.c | 85 +++++++++++++++++++++++++++++++++ 3 files changed, 98 insertions(+) create mode 100644 drivers/mux/rzv2h-usb-vbenctl.c diff --git a/drivers/mux/Kconfig b/drivers/mux/Kconfig index 6d17dfa25dad..7f334540c189 100644 --- a/drivers/mux/Kconfig +++ b/drivers/mux/Kconfig @@ -70,6 +70,17 @@ config MUX_MMIO To compile the driver as a module, choose M here: the module will be called mux-mmio. =20 +config MUX_RZV2H_USB_VBENCTL + tristate "Renesas RZ/V2H USB VBENCTL VBUS_SEL mux driver" + depends on RESET_RZV2H_USB2PHY || COMPILE_TEST + depends on OF + select REGMAP + select AUXILIARY_BUS + default RESET_RZV2H_USB2PHY + help + Support for USB VBENCTL VBUS_SEL mux implemented on Renesas + RZ/V2H SoCs. + endmenu =20 endif # MULTIPLEXER diff --git a/drivers/mux/Makefile b/drivers/mux/Makefile index 6e9fa47daf56..3bd9b3846835 100644 --- a/drivers/mux/Makefile +++ b/drivers/mux/Makefile @@ -8,9 +8,11 @@ mux-adg792a-objs :=3D adg792a.o mux-adgs1408-objs :=3D adgs1408.o mux-gpio-objs :=3D gpio.o mux-mmio-objs :=3D mmio.o +mux-rzv2h-usb-vbenctl-objs :=3D rzv2h-usb-vbenctl.o =20 obj-$(CONFIG_MULTIPLEXER) +=3D mux-core.o obj-$(CONFIG_MUX_ADG792A) +=3D mux-adg792a.o obj-$(CONFIG_MUX_ADGS1408) +=3D mux-adgs1408.o obj-$(CONFIG_MUX_GPIO) +=3D mux-gpio.o obj-$(CONFIG_MUX_MMIO) +=3D mux-mmio.o +obj-$(CONFIG_MUX_RZV2H_USB_VBENCTL) +=3D mux-rzv2h-usb-vbenctl.o diff --git a/drivers/mux/rzv2h-usb-vbenctl.c b/drivers/mux/rzv2h-usb-vbenct= l.c new file mode 100644 index 000000000000..79197fddbf74 --- /dev/null +++ b/drivers/mux/rzv2h-usb-vbenctl.c @@ -0,0 +1,85 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Renesas RZ/V2H(P) USB VBENCTL VBUS_SEL mux driver + * + * Copyright (C) 2026 Renesas Electronics Corp. + */ + +#include +#include +#include +#include +#include + +#define RZV2H_VBENCTL 0xf0c + +struct mux_rzv2h_usb_vbenctl_priv { + struct regmap_field *field; +}; + +static int mux_rzv2h_usb_vbenctl_set(struct mux_control *mux, int state) +{ + struct mux_rzv2h_usb_vbenctl_priv *priv =3D mux_chip_priv(mux->chip); + + return regmap_field_write(priv->field, state); +} + +static const struct mux_control_ops mux_rzv2h_usb_vbenctl_ops =3D { + .set =3D mux_rzv2h_usb_vbenctl_set, +}; + +static int mux_rzv2h_usb_vbenctl_probe(struct auxiliary_device *adev, + const struct auxiliary_device_id *id) +{ + struct mux_rzv2h_usb_vbenctl_priv *priv; + struct device *dev =3D &adev->dev; + struct mux_chip *mux_chip; + struct regmap *regmap; + struct reg_field reg_field =3D { + .reg =3D RZV2H_VBENCTL, + .lsb =3D 0, + .msb =3D 0, + }; + int ret; + + regmap =3D dev_get_regmap(adev->dev.parent, NULL); + if (!regmap) + return -ENODEV; + + mux_chip =3D devm_mux_chip_alloc(dev, 1, sizeof(*priv)); + if (IS_ERR(mux_chip)) + return PTR_ERR(mux_chip); + + priv =3D mux_chip_priv(mux_chip); + + priv->field =3D devm_regmap_field_alloc(dev, regmap, reg_field); + if (IS_ERR(priv->field)) + return PTR_ERR(priv->field); + + mux_chip->ops =3D &mux_rzv2h_usb_vbenctl_ops; + mux_chip->mux[0].states =3D 2; + mux_chip->mux[0].idle_state =3D MUX_IDLE_AS_IS; + + ret =3D devm_mux_chip_register(dev, mux_chip); + if (ret < 0) + return dev_err_probe(dev, ret, "Failed to register mux chip\n"); + + return 0; +} + +static const struct auxiliary_device_id mux_rzv2h_usb_vbenctl_ids[] =3D { + { .name =3D "rzv2h_usb2phy_reset.vbenctl" }, + { /* sentinel */ } +}; +MODULE_DEVICE_TABLE(auxiliary, mux_rzv2h_usb_vbenctl_ids); + +static struct auxiliary_driver mux_rzv2h_usb_vbenctl_driver =3D { + .name =3D "vbenctl", + .probe =3D mux_rzv2h_usb_vbenctl_probe, + .id_table =3D mux_rzv2h_usb_vbenctl_ids, +}; +module_auxiliary_driver(mux_rzv2h_usb_vbenctl_driver); + +MODULE_DESCRIPTION("RZ/V2H USB VBENCTL VBUS_SEL mux driver"); +MODULE_AUTHOR("Tommaso Merciai "); +MODULE_LICENSE("GPL"); --=20 2.43.0 From nobody Thu Apr 2 15:37:42 2026 Received: from TYVP286CU001.outbound.protection.outlook.com (mail-japaneastazon11011011.outbound.protection.outlook.com [52.101.125.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1635F33F8C5; Fri, 27 Mar 2026 18:09:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.125.11 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774634995; cv=fail; b=jmYvXTtJSVZCz0vbZd0ZHZhU0yiteXLSqmkSTCyyoQfNefIdrbqE0wmdzOWggVoiaKfEXjAnGMxSjF4Q1uw0f7OcfUUE/mDbN5K1RkrZwlyEGJ4lBPgsKmngpDmVrPC5yUWKyW9zqN3kSxbC1NcOLBgEJyjqBVJiWaGhNDbxo6Q= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774634995; c=relaxed/simple; bh=rglh0CYuGfQ7+y+wLWE8+2IdyqW6pmomGeUz+rtdLUI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=TDl55fQQYP2g/DvhbSbXzt/y7zsyNPMUEpn+m4SGP03ueXQvJZaJZsLhBLqNXHU4sTDLgJb/WPERtFhbC4K51h9vAriRlz16FjEeeZXQgXC60k0ohy9NRuk5hLeOVMdcdd9A8fFrNRWdTtMuGZGvR4AlVr8cP81WW89CE3UlzlU= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com; spf=pass smtp.mailfrom=bp.renesas.com; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b=j7rpW6uY; arc=fail smtp.client-ip=52.101.125.11 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b="j7rpW6uY" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=SirtGduNvuljVsGeFKT5Or9HKDyfArkPip9Uzjegbe1c28gUPYMccvfXoQTN55S8Sz6j5yVwrY4FKOXKj8p+LmetD5WoEol9aGunUgM/psgQgPVy9VnnBVfpHz1SF83OXqNCM3s2RPwxBHeX64Px2Dc0fp2xEenmjy046Wb4x2kFfvoJxtPKdyjPK5ddtql3khPN4pDsqX4G1MIQEuFgFa4rG3lnWSc7W+4a5uJokBpVca1fReX0uduUzIUH7T5TWADQEN1v0yl+AUIAzDUCXdzwdPTjsQmiPPHEiKbkU9stuAW647SuZItXkJcVi7v+cnFOmwAJ/FoPpODDCFDU9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ro0qxBzAuz6o/8zO6n8HNp8drgzDmZxCi5bDu875mlM=; b=jlwSTzP+0p/3yPnrgQMSnqwfoQ/qmAQZKxS8yncjk4YjEeSSdsxDr0j5hvEy3JFxEsjh1FnxgZegT+LlGeo2LVwy+FqzJcvjBC6fK4qEQg69JmxupC5JRHb/Zy41Hpjw07IKLJgrIC/o2/AU2flWpSWo2+n9cLaTqOdKkKDyEvjuKEb+pbvjOgWkWfC4BEriM9WsjWieslIl/daQPkJYMXi7OM/6Dea5NV6IpQb3JFqDOA0EyOr6ElAlfRb6obtmq8mdW5racmbWCOSWfyEldrMjKzo5RUh6dZD8WlTNy+vHnTlM7gpPLjLopqMsEYABYRDPzrJO8E3RtuAR1nE1Vw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=bp.renesas.com; dmarc=pass action=none header.from=bp.renesas.com; dkim=pass header.d=bp.renesas.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bp.renesas.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ro0qxBzAuz6o/8zO6n8HNp8drgzDmZxCi5bDu875mlM=; b=j7rpW6uY9vriD+Z3EuhaIY1yqCRvy2AMPJ/Ufdd0/pGZ6RTsTVdRVJ5VN6NyWIl+Rw1G3V3PjoBDZX++KxKKyLNHeTyNv36wCwoi/1t1fKRM4cQu/gWaJfyr2/YH+sEEWgk1xjZvvBJWK3RqAhCw/+BYG7dJDJ5ZdkYShDmvIPc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=bp.renesas.com; Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com (2603:1096:400:409::5) by OSRPR01MB11662.jpnprd01.prod.outlook.com (2603:1096:604:22e::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Fri, 27 Mar 2026 18:09:51 +0000 Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495]) by TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495%6]) with mapi id 15.20.9745.024; Fri, 27 Mar 2026 18:09:51 +0000 From: Tommaso Merciai To: tomm.merciai@gmail.com, peda@axentia.se, p.zabel@pengutronix.de Cc: linux-renesas-soc@vger.kernel.org, biju.das.jz@bp.renesas.com, Tommaso Merciai , Fabrizio Castro , Lad Prabhakar , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Magnus Damm , Greg Kroah-Hartman , Josua Mayer , Ulf Hansson , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Krzysztof Kozlowski Subject: [PATCH v9 2/6] dt-bindings: reset: renesas,rzv2h-usb2phy: Add '#mux-state-cells' property Date: Fri, 27 Mar 2026 19:08:49 +0100 Message-ID: X-Mailer: git-send-email 2.43.0 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0056.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:cc::16) To TYWPR01MB11940.jpnprd01.prod.outlook.com (2603:1096:400:3fd::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TY3PR01MB11948:EE_|OSRPR01MB11662:EE_ X-MS-Office365-Filtering-Correlation-Id: 2c5ef91c-3618-46ce-c4d4-08de8c2c0a68 X-LD-Processed: 53d82571-da19-47e4-9cb4-625a166a4a2a,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|38350700014|56012099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: rUxXN6TSQVF47ak8jTh6wyEC+/cUf7WkxzejWgl3H0QHoMLf5hMmQF92KmChawbOxRN63ciQq9SLP6iEoj8Vo7o3QmZdlSUPRAKeWJS2kzCCkOkaNFK8mm/TZqRhs4Zj8qf3nJUG3alfuCE89U//fd319ulgHG2agSUVzBjfczGYI2Gp7t55wkdwaDpHLffZsPccimRgjhoFxJPLrAy06GhW/L297A9Ca/Z+BADd3XnKTaczjh30K8ipPwxNHgWKmiZXqbL5dDND3VZAaOwPHsgZMWJe7unkNrdJV72O95uEbC6YffgIikjZ3xBl424/jsFNBURJhnXdbLe4UmDmEjkAup3B3v7vsPVj13JnzmCFbYEgdX3oBWk5AKBaba58nMCo2auVJzkSpfNXQD3VeYjyPOvtv1vBfKfSYsNCHpRPaRl3YMbjqBdjCv50x4TkiuGyTRm2ixtnWk1AtGPZJ/xK14jvoAD8BkRjorh7IcKofdJF44xEjZinCMK+E93wBVuAx3Qx4U7c3ibaQf/swRFTrDqWHdkA2eYuySNciRQnfLngYGOobHmX/NuRAovQqpNvXtiftS65Jos8WYZIpvddP2EMKkEbRMt0NH5QMVw751BawPZaPAWuaRyjP0Hf5ukTgcbyeBW944pnR8Lg3tqBHcAkwfi44bF4oEK0ogJZb+qbamVI9PAafrngeE7en5Qssp0Ob+8P6gAhvbTB9I10d9fqXk4ZY9UJ/RWsGdWm4dCEvM3JaAR7YssmZj40M0KNHVIRALzvMQERt1BQP5Y1dleDWVhP4LE9glGkdCg= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TY3PR01MB11948.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(38350700014)(56012099003)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?FpGxzAzEr6Ij2FCQwccjW23es4MDRPV/dLue2r/VKWYlQu2B1an357dvdwIf?= =?us-ascii?Q?I+f/7BiOXI11f5M+cJZRA0uAzIN4X5yB8nQoWinroXcU6qhEZMvXuiyy1BSe?= =?us-ascii?Q?s8uGNSig0OnEf8xM90gFBMcyqC1t+Ephwz946C/rr+oPF6FXORHOsXveUgiF?= =?us-ascii?Q?VjGwrrMwrPQc10MkKCiK+3dwZOXopHvbamkLQttM6J1ryQZdHK9Xs2NNhyLp?= =?us-ascii?Q?Lt1DPNfDGbLR0G2nnAD4AcEzoBVmYXCdPheyh92St0iYz+jfFVoiTKHRgACJ?= =?us-ascii?Q?HlEgIRGdJPN+XkcN8P/i0+FaCPq6zM2kzFh8WrE9MoeSlQF5V3pUgq1qQ1Cy?= =?us-ascii?Q?uqvP56xp2phwSL54POQYjFbZ5h6QZuBexwfuaLi8Mhgu6G8q3hPHQyRhej1W?= =?us-ascii?Q?rdzuU5qpUaxJbTnvo3JKFT1N13rop6biqTiy8szWPgYOJe7MwSrYKAoDDztZ?= =?us-ascii?Q?BCamz/vfX5Xd3Wo0yZstZ+bcggmFWh/Ot65XyDLBEoUBG81gnw+uRfK1J59r?= =?us-ascii?Q?9pn3UZJnOmnBP4+v+eDk3sfPuF9OTuUmL1JbiUlcqiSUBolYkYHKUzzFXs+t?= =?us-ascii?Q?4Aiq/YqCZ07l2tzE5NhK6rYkSldxPoI9IFWBmAhJFZnkuQlVo7nxxfadqbyX?= =?us-ascii?Q?JKnEFcWBntZsVjqa/IxZmPM/x/lUM6IciXV0yWB836Bdix9XAft0vYT8n5/t?= =?us-ascii?Q?zCxibMbQH6TSHP66Pc1pHdltiFqicP+ivTIIVqJkZ70XYS9UqjiogOY7qqFL?= =?us-ascii?Q?iBKYFj+jCFwHEal6FLMoPLsaQ5Cjp7FoSl1TtDnL+XzAZWVYdvQ200YGQVy1?= =?us-ascii?Q?wTjbl/CxYy6tppiONrgWGENfZXlppfE/r3OzFi+Y2j55X9ZhYwcAW5WIeEzl?= =?us-ascii?Q?ZprdeHQAZlraZYNKI6tqtEd9sIHoguelJZH6P91KZDE/XFKK07mEl+P+UYP0?= =?us-ascii?Q?qQBwFUwmzoxoMHW8blVuOWdiN4fED3z4G68rDbas3bsKv+hXf/l74k7nWJS8?= =?us-ascii?Q?5Y/9Hd7CksJ51uPknUw8zHPlIEg6RW6cYne0LmOnlaVy8R5GRjmnpZQTgUdY?= =?us-ascii?Q?ks/SmKOV0tJhnHnihv1QcdbMmmASQZXVV5SrT1NECPMpLtXjmuXnGY4VCPnS?= =?us-ascii?Q?DrJC0mXi815vSs9NYxgJplTyys90lsa9KFMTjWuD+ehpmxQznt97604i807h?= =?us-ascii?Q?MvqGqtJijhsiHE8P9IUtqeIGRuXlY4pJ7MScV1EgNhC79uMYQ5dpJi/P/m68?= =?us-ascii?Q?qDxs6YdyD/QmjinRTDY+3dm2OTnhBqq54qg1kv0KuugYIDRHSa4It/PNckDa?= =?us-ascii?Q?uOMP4AKLrrazryFxXsQVJULgS45ycnK1Knl8c81GzqR1oLNhpaJ/rLn0+k3H?= =?us-ascii?Q?D1fO6jR+qPPdF6rzykETqC9SV+WA+yI0VAyl29lijubxzd62fWM7gsqUBkqZ?= =?us-ascii?Q?bCkC22BVg41bTr1vkKf4wMPO+e8fKxV+8ns5Isnm/O9cdc+zWcvom1Ghx7vK?= =?us-ascii?Q?n5XiahX0UrpEbw475gulel1nWd/YQeUgJS/Ebw7QLanLaJ6JB79wM6ClRwV4?= =?us-ascii?Q?C/cHA/uncUTOc30cVOamJOJ9L9i+EKOZ3iKaP07hU9vyPhfVCRbCHq3nncPB?= =?us-ascii?Q?gRLnjizLCup7DnOfUUR7OGFzKPoBGVVmLjwhyqBlz4fN/zP3JOtjj1qJbu3V?= =?us-ascii?Q?MpoSKOXo0DV83dNRSPniqiYumgoqqAATnkJovYOELdCZgJQ1Xcaj7rHcdXV6?= =?us-ascii?Q?zj1jcVNJFJl4tQO5Wgi0KjAwZEfJvIrEWtQ06nhntPhyf0UDMG6B?= X-OriginatorOrg: bp.renesas.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2c5ef91c-3618-46ce-c4d4-08de8c2c0a68 X-MS-Exchange-CrossTenant-AuthSource: TYWPR01MB11940.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Mar 2026 18:09:51.8144 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: RPDOZyeVdysg00pMspi1hwgw1rNSy12r2XeyaUh2goA8POwPUr8Ye9Sdkz39ArP9SOChyBoiTJgGme2RTjsILBH3kcbAf8/acq2dCVvi4ddlVl99w64EodLcrxkeeUKg X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSRPR01MB11662 Content-Type: text/plain; charset="utf-8" Add the '#mux-state-cells' property to support describing the USB VBUS_SEL multiplexer as a mux-controller in the Renesas RZ/V2H(P) USB2PHY binding. The mux-controller cannot be integrated into the parent USB2PHY node because the VBUS source selector is part of a separate hardware block, not the USB2PHY block itself. This is required to properly configure USB PHY power selection on RZ/V2H(P) and RZ/G3E SoCs. Acked-by: Krzysztof Kozlowski Signed-off-by: Tommaso Merciai --- v8->v9: - No changes v7->v8: - No changes v6->v7: - No changes v5->v6: - Collected KKrzysztof tag v4->v5: - No changes v3->v4: - Switch back to v2 implementation. - Improve commit body. v2->v3: - Manipulate mux-controller as an internal node. - Improved commit body. v1->v2: - New patch .../bindings/reset/renesas,rzv2h-usb2phy-reset.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-= reset.yaml b/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-= reset.yaml index c1b800a10b53..7ed0980b9ee1 100644 --- a/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-reset.y= aml +++ b/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-reset.y= aml @@ -37,6 +37,9 @@ properties: '#reset-cells': const: 0 =20 + '#mux-state-cells': + const: 1 + required: - compatible - reg @@ -44,6 +47,7 @@ required: - resets - power-domains - '#reset-cells' + - '#mux-state-cells' =20 additionalProperties: false =20 @@ -58,4 +62,5 @@ examples: resets =3D <&cpg 0xaf>; power-domains =3D <&cpg>; #reset-cells =3D <0>; + #mux-state-cells =3D <1>; }; --=20 2.43.0 From nobody Thu Apr 2 15:37:42 2026 Received: from OS0P286CU010.outbound.protection.outlook.com (mail-japanwestazon11011006.outbound.protection.outlook.com [40.107.74.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5467F3624C2; Fri, 27 Mar 2026 18:10:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.74.6 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774635004; cv=fail; b=Bhc6zPExaZBkpOhb0PRJgVKGiW80eAetirbAhrCdfPRcqsJxyvQFfemP+gwtDlWP5K/qzi0diHfA5aBKO4hb/bxzg7XMMzH65BVkdY10mGhyd5Ok1o8OKF70e5dEPS7iUy2nve4hqddFKSkAVxSrCrtTTGP/fOKtLL780iKi2Yo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774635004; c=relaxed/simple; bh=/SYqrr9MpEfcv/IYdQVYcuP+rSCEBHb6S9xPRpH8m1A=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=hIHqwVbcFSkMn+RZssNjvs3aH1hJsOmefC/DIowDjqv6mL+s4f3IbG2bTMCDXRHB5unpRdsYpc+ow1TQ72cvZzDGqI+7sU91VDY1OL6rgaQ5o+TlgFqQHU7oNA6WbM9cyZCGNJ/nMG4fAGItrgHb5o2nwNEWweCwyIDvJeTvDc4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com; spf=pass smtp.mailfrom=bp.renesas.com; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b=M0yOiKlv; arc=fail smtp.client-ip=40.107.74.6 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b="M0yOiKlv" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=yBpNa8oR3Ckt7Zjg4fAhTduijFZXTDwiRZ5QzLO1JqG8xbKgcdFASyWj0g7AVpCEdAmOWa/BNYUn6nGZY0VzAQZG3QkMZsL8zFd6n2j4MoSndU08V6clbr4SiW0flWDO74drK6ETt2BPBJ3drYjqTQrCiatx4crrrsm16yKq736ureJBsEsfOJqTTV84iE9h2prTDKG5e1ydpmm7Fvm2srBbF7hcbJCHrsL5L78QctWmskM69YqY7vLakxcXZTCpiSfUlw1kkPXENOL23/4mSKZzxAJoxmTFAFmr6DawOlCxlXdPWxQuaR4cNB+dn2vwgrC5iO3G2VUlplS1owZjVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=p1YUzFmcXGWSu9tTU7vtLMx+4YSqglonpaNA/TwhrfQ=; b=Cy4CUaDoF5j3bddWaDRejPXqmzT2j3dh+nDaPZvBLar3Q+ZKmi4kjAcHfViOozKglZ9+g/1gF/gkmfXKO96kGh3BAjSV6adCgbvzcfMODb8FMJm8DgVUnb16HrE9YMiS0+Dft/wQ0VBZfAQSssQWnmDwAhdt38lf9ojRn9UxIU0rwJOMEMaJzkXK0Ia51adLmPUsmyGds5DSCMAFkOHHHFVM/X/NYb/5Kywma2+qPoU5PbmG9piWugg7TzGTJGAVuA32/kAZ6bwbXqQNyCasb6NhjblSlfGm/7QzbOFHY7HaVvpKdQRFlSFZbbH9OvHwKYABLMVJFGqRAWzl05kpdg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=bp.renesas.com; dmarc=pass action=none header.from=bp.renesas.com; dkim=pass header.d=bp.renesas.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bp.renesas.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=p1YUzFmcXGWSu9tTU7vtLMx+4YSqglonpaNA/TwhrfQ=; b=M0yOiKlvP5DdMBvQtYPby+bI/I+Zgsis+gC4EdhS5PjvI7U73sKngmagBepDtclfy2XZQIkfB1mhs9063Q7bz9u6/Az6RtfRvzRiHZx3OMF6m1iWPMMw5RIuPqPyFgkA8YR4xOR80YLQOOl6aAkacYsi/o/pButnMAUVh1ww6FE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=bp.renesas.com; Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com (2603:1096:400:409::5) by OSRPR01MB11662.jpnprd01.prod.outlook.com (2603:1096:604:22e::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Fri, 27 Mar 2026 18:09:58 +0000 Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495]) by TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495%6]) with mapi id 15.20.9745.024; Fri, 27 Mar 2026 18:09:58 +0000 From: Tommaso Merciai To: tomm.merciai@gmail.com, peda@axentia.se, p.zabel@pengutronix.de Cc: linux-renesas-soc@vger.kernel.org, biju.das.jz@bp.renesas.com, Tommaso Merciai , Fabrizio Castro , Lad Prabhakar , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Magnus Damm , Greg Kroah-Hartman , Josua Mayer , Ulf Hansson , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Conor Dooley Subject: [PATCH v9 3/6] dt-bindings: reset: renesas,rzv2h-usb2phy: Document RZ/G3E USB2PHY reset Date: Fri, 27 Mar 2026 19:08:50 +0100 Message-ID: <346ab1e3261f7c8157c8d5bc3997ffd646edab6e.1774601289.git.tommaso.merciai.xr@bp.renesas.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0056.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:cc::16) To TYWPR01MB11940.jpnprd01.prod.outlook.com (2603:1096:400:3fd::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TY3PR01MB11948:EE_|OSRPR01MB11662:EE_ X-MS-Office365-Filtering-Correlation-Id: 0bd564d9-1d2f-47ad-4f3c-08de8c2c0ec5 X-LD-Processed: 53d82571-da19-47e4-9cb4-625a166a4a2a,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|38350700014|56012099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: eCkzzE3wsB+etH5IwwE1lcVCxvu/xNQ9vXMlJ8Etuf1ns2uhT7MKoCNHoANzMLxXJX/FlAjh7GTQYhadQgoCnBauHOiVkdtxKz1EtjaAK5DBsK0LDOxsHDVwfFxBSfApC24f0yqwNpyM442IbDz7X1SpCRjSbYcSXdXzj51nC4IY5MMfv1R475a+pvVtd/AfLK3Be80lHa6sz0lRx/R2qreje40f5Id187ncCDiwBF6nZEsBXofoWW4GkK5K7pHx1LKPjSbvDL8wu6lL+9M4oMyOnmq1bS0Vb5tWEnh6oTp7tqsMSlOQ8HwRUGZlDIOafCurctvVjp+L33LfKhtb31HBRnZyN0nf9psvNGg03TGqroNthhNIp7cRkhpiwbiNgQz8kin9G3ayz1l0o1iKghz1EINEfCMbR2jmYAYmP7iYhFXXfYhxihLu/uvyQTDIznOlYKy5SE9xi7M0A/FUMcYLbhFHTFMJYcXDGKmb1TMZ0m+N2+ShO8dXJzPuDvnpusvvzePyL6yzlYwwzJ0O5CWhKMFnlzeafUjlmP7glxI/cysykG8ZxMdFRotve2yWd+XZpA+6WR2zHolzEFLR7h9JLgwjcaNAcF80FmWJcZee93YPVO0PDn3IFZutzCXReMYBPAlWMIrsR/GvKtdb/u/gU6IiV0ERe7J27iwQ/27kyYXATXNQSbqNlL18izyOL5c0o4YngeGNTylmovGpuDlqqQTNfuQEUvT1pOAgJN+zmb6Gu0XKJZJrpxNaC53oMqUE131da6qLnvVXzYTLgEUFBPYBw2/XjHZNoQgMXrI= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TY3PR01MB11948.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(38350700014)(56012099003)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?U+qTEycUVmY3qRgdYFbjFNE2wjEjpFmnCHsQw4p1fbMaauUjWpt+dyxo6Kd1?= =?us-ascii?Q?i1Zf/353en1mxS0Eg6OlTnH3NRu9bhqVvDHwI1m88E+4uREVe8a7u69EAuJM?= =?us-ascii?Q?3mpTKJaevZx3mrj8E364R3T9uSUejeDMqwIqYZHszq19wU877CetSGm7eZe9?= =?us-ascii?Q?FmCBhZj5hvWwo/5d/TzWADlWqhTXtQH9+9Wa2cXZyNHavQkNd/rPgI/zeHiv?= =?us-ascii?Q?talc0svaCcpKa8y5RBFE037K97lF7Wh3rXZP66LlX91kRe5+DFVD7UTCdSxf?= =?us-ascii?Q?R2vLI5dNXy0fHaY5FVWOD0QuZytIFpEyvx+Z1K4o84E3F/rOSyq5POVVncfw?= =?us-ascii?Q?HFHQpyLd9sp8u4VobhGwCqkxNOF1xsR+c8aVqg5rkRUj7upT7057K0rj2NWk?= =?us-ascii?Q?AqxoQ8Awg/PkF39RAM++MWjR2678S2ks3B8Mx85Mx+22rUqaeyiGvZ6PoOQX?= =?us-ascii?Q?J313Pjejocm35seAVf7WuW3Tns7MRQ0h4R4KWuQuvNqRU5IVLeRBZTFf1KNI?= =?us-ascii?Q?Opw8ybbf/NFOszjDfwDliP165x4N93cuRXfLKNcAz+Rnm+VcV8hds7iOWOoR?= =?us-ascii?Q?NQy/XLxlrKNtyEmdUxIpo3s3Kbr0ES/PFyf7n4qYiSxCYPmnxhSpRkrYVqdq?= =?us-ascii?Q?XV7AzuYToZ4+FABqtjSNLcGdBIH3e1MuH7mZtcFQb9L/oQL95+dzl6gDcKo6?= =?us-ascii?Q?ykSy/CX0/UF64uJa0w5uwNjrC++uv0KCOhjnxbSduiGV3fhfcjE7WRmCPqtL?= =?us-ascii?Q?6jKYpRmvAmLmyLvzkbsUHZvSj+uFn0/Xv4BWeysvMci5r1AHHCCtguMalJ3w?= =?us-ascii?Q?21INzp6tHBt2X04E1vTmSYBNwxff/ftTfWmrbN17XgJI5KGKhhcN0NAMoL3q?= =?us-ascii?Q?jXv6Ep4aRHjCi1c0P44zkWSgwlpRYx5wSnEjBUmPWP1dQpHQ4gyha6YZwb/c?= =?us-ascii?Q?5yLySxEW5c3wew+DSIhWISEwOG0NWWUQZ8nYx0FueYhhUlkNC/qVIotrcq6N?= =?us-ascii?Q?GD1JnGvwfXT9sg7FAGaJQBXvWt8B4a5L+P4resUEN1U5gens6oqsH5HKw21i?= =?us-ascii?Q?xNRnHKjDDLkQPKq6CNjxSzvF18hE/9Px9YXBjbdD3EgHzsVBEvtyoL0OdUvR?= =?us-ascii?Q?rINOxa7XgHz0X2s/MJcRSOfEc66dkLskZkXnRR0DE1ramCDG61n8eD2hM43r?= =?us-ascii?Q?joIZfH8rQCh8hwLUIqgCaS+11rBfEsNohaQ2WbFQqb+wVOMLDuta2SCWpuXJ?= =?us-ascii?Q?ZLra81E6kICV0L+SBMhCmoG1vpx64Um8xDN4HvcqBVmEd2nrENAbovRultDy?= =?us-ascii?Q?/TiR07Qa8bsio+GkAfuPwANnpzREj44J3YSjRCLXVLA+UJtMIl3NgoZYBwKf?= =?us-ascii?Q?stE6jePCYyQ1Cq2fq9Q/hatIGSJqaBAUJLQSXsggW9BemFsZqAyNKUBNEQJA?= =?us-ascii?Q?pFCOByJ42yfZxeUT4n7uSBO/NxRydSiXmn2vias+Wb0njh254e+PqH3aszKo?= =?us-ascii?Q?BfU2W/yX2o5992NMi+S7KvroaYs1tSVL4FxyFCd/EHu0BEqydNEhndpV90ct?= =?us-ascii?Q?Rv1gexF/T/EVp923KAnM4CzDGhahUeV2pT6k5hLqzViI1nEROt5E8oTqrdc8?= =?us-ascii?Q?zPl82BPAILAwTnDHVYmnlhKCmj2ZGWMDOrpAlD8xOQNFZKPZQhh2OBw8bPOD?= =?us-ascii?Q?n19mBwH9Bvc6NojMJLii/JMsdx4MfEGmNhnxxhkxPqD3TLzJNMMQuhAmPe/j?= =?us-ascii?Q?zDyqGXRmlb2CStJSUh8oWK3wMHTQgNnaUVUchhDcdkYgJGDzX0rM?= X-OriginatorOrg: bp.renesas.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0bd564d9-1d2f-47ad-4f3c-08de8c2c0ec5 X-MS-Exchange-CrossTenant-AuthSource: TYWPR01MB11940.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Mar 2026 18:09:58.8792 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: gdlta3i/5zDVbX9D4fD96B8l3CFUitBp9JAatgqxt0u9eWDRrVtPVI4O00g7LWw4bm7G45P7IpJQZGu11C6G20CoXoW8FbOWsuKZ7xdr119dml0WbU1Y7PlgA/e8oxib X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSRPR01MB11662 Content-Type: text/plain; charset="utf-8" Document USB2PHY reset controller bindings for RZ/G3E ("R9A09G047") SoC. The RZ/G3E USB2PHY reset controller is functionally identical to the one found on the RZ/V2H(P), so no driver changes are needed. The existing "renesas,r9a09g057-usb2phy-reset" will be used as a fallback compatible for this IP. Acked-by: Conor Dooley Signed-off-by: Tommaso Merciai --- v8->v9: - No changes v7->v8: - No changes v6->v7: - No changes v5->v6: - Fixed commit msg v4->v5: - No changes v3->v4: - No changes v2->v3: - No changes v1->v2: - Collected CDooley tag .../bindings/reset/renesas,rzv2h-usb2phy-reset.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-= reset.yaml b/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-= reset.yaml index 7ed0980b9ee1..66650ef8f772 100644 --- a/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-reset.y= aml +++ b/Documentation/devicetree/bindings/reset/renesas,rzv2h-usb2phy-reset.y= aml @@ -17,7 +17,9 @@ properties: compatible: oneOf: - items: - - const: renesas,r9a09g056-usb2phy-reset # RZ/V2N + - enum: + - renesas,r9a09g047-usb2phy-reset # RZ/G3E + - renesas,r9a09g056-usb2phy-reset # RZ/V2N - const: renesas,r9a09g057-usb2phy-reset =20 - const: renesas,r9a09g057-usb2phy-reset # RZ/V2H(P) --=20 2.43.0 From nobody Thu Apr 2 15:37:42 2026 Received: from TYVP286CU001.outbound.protection.outlook.com (mail-japaneastazon11011043.outbound.protection.outlook.com [52.101.125.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5EC5233D6E3; Fri, 27 Mar 2026 18:10:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.125.43 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774635011; cv=fail; b=sFaQ1YHLXPfzYupbc7J8Ko1BTaYj076qjDY5Xu9Z5n4P406G5XmznKXp/Ib5GR82TS6l4Q3FC1L4LqZOpSIR5ePtIRgnEbodH1Tr2mN7YpCtsRkI18IeX9Hb/Z1RfcgEab9X22aheFSEh5iDPcAwLdxjMk033SyjJY0i0AtfL80= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774635011; c=relaxed/simple; bh=vNbndE+aZJV3IXUIStfB3bS+Ecdi3wBG0qw2spACxhQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=PEjGUB6oORlPCsf+UeaIIDvCzocKo++xNWnxPijJxePoVRRd2skhs+gt2yAQaw60i/nicGryqxaH2qnIA6P9663SGalOtOcGCTJ4tZPn8GfzVD3nPZ1aDXvE0je59cHOajhVD2glimz2TudaPv4qaIKtT0FhUF3jYGv2mvPNd6w= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com; spf=pass smtp.mailfrom=bp.renesas.com; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b=uEzI99Kk; arc=fail smtp.client-ip=52.101.125.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b="uEzI99Kk" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Hl3sDHOOKn7zlM77ii+qCVYUo9lNZrC08TE7gEjzz6cCgtQrEH13Uw89BWERJNkaiIVheQHUmqbLZRivnDc+kCeomDMF5skIAksj17L6q84vOOl4ebUzxB6NIxg/yjEtyrDPOh4X2sUEDV9hHdW14JkJkvnQle5kepAkPLmqXB0o+L9FjK19svPdviACjxBsKW006ng9GfpS/OO6Gnqynk64F7rE149NT7m+xnqpoTlH0a8fZJzx3vFUNGbnc9cYfnqWZg1pyqQ0Teusy+5xFnCjhQ+q3dshQ1XFwxphyxhPQ6N70xsCfUh6wypFEhBIt6sCnX2WGyYcYEZNu8PR8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=9Sc1xVZ0xkSQd7oYxrg8pcvFKoBrRVtE49OQXEGFRNg=; b=vceL5hGFJBPLEB0yYB9elyPgsSblUXwdDm87UfeOYFDuXgfPpxhvtPLoVdyQRrKsyuNzsU8RCHHj69DFUtRfMMGfMcurOEoBfi2pLJZ4eHTGP8dmKz0P36+f9JYTDujnSgOiW9udzlEh9Y0UfDHOP2NopOwZNYiSQLCUIGV6vWoNnN13gCXG6PIfaSI7iGZ7LOKd7J2+7fn8RCiXJEOYleDLDH4X8WQkaRWjUTvt9YN2T3TjheONxsxti3k7QsDEB1PzFv8TFymVFjz8gFkMuKes5+Xv9RWuIq2qjdc7aBpcxPL88PcG9HnhdL1oBUSyYFj/VQvNXMdX4zjPqAJ4mw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=bp.renesas.com; dmarc=pass action=none header.from=bp.renesas.com; dkim=pass header.d=bp.renesas.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bp.renesas.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9Sc1xVZ0xkSQd7oYxrg8pcvFKoBrRVtE49OQXEGFRNg=; b=uEzI99KkO17C6nh19nl5mrniFDF8wiT1JsxX+gU3r2Iquk14mAKisYdLFSyRxaNvKmQlOskjXY2DsTIjACxsaCKbQzGcfNyWEDuWGXA/X0eGDHm+EfwjF/shHiFyljzoBKKXOpVwfD7MEJhoIFI9ze3Cc+of7/sJr16WeKzAI4Y= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=bp.renesas.com; Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com (2603:1096:400:409::5) by OSRPR01MB11662.jpnprd01.prod.outlook.com (2603:1096:604:22e::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Fri, 27 Mar 2026 18:10:06 +0000 Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495]) by TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495%6]) with mapi id 15.20.9745.024; Fri, 27 Mar 2026 18:10:06 +0000 From: Tommaso Merciai To: tomm.merciai@gmail.com, peda@axentia.se, p.zabel@pengutronix.de Cc: linux-renesas-soc@vger.kernel.org, biju.das.jz@bp.renesas.com, Tommaso Merciai , Fabrizio Castro , Lad Prabhakar , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Magnus Damm , Greg Kroah-Hartman , Josua Mayer , Ulf Hansson , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org Subject: [PATCH v9 4/6] reset: rzv2h-usb2phy: Keep PHY clock enabled for entire device lifetime Date: Fri, 27 Mar 2026 19:08:51 +0100 Message-ID: <7b7a2f95169742d800828b8fd8575d4ff5614268.1774601289.git.tommaso.merciai.xr@bp.renesas.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0056.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:cc::16) To TYWPR01MB11940.jpnprd01.prod.outlook.com (2603:1096:400:3fd::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TY3PR01MB11948:EE_|OSRPR01MB11662:EE_ X-MS-Office365-Filtering-Correlation-Id: b0d355c4-066f-485a-c6b8-08de8c2c12e0 X-LD-Processed: 53d82571-da19-47e4-9cb4-625a166a4a2a,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|38350700014|56012099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: OC45q9JeX1tDF5KN6Gm60Q3+XtoHZDKRnmUlJAE7EVu77nUBcfmjtkUZSaSA8vYecPdNAJV5IqW4c6fHfwncufnOLM8DVpltT+gXxh5iFutFZ5aQhkkFnd/rw4Lj8/86bAYPx1CHTggKo5gOmPM7YkBkbDUkYO7tK541OpvQcqWMTH8I1ZBvEiZDgj9ejuw89282bbGwh0+d6fwDyGckk6iooJA6fC4hunkqV0IAe9VR7wmemHvIisbEAlqHbagTgCg9888oIPDXMWrdpp4mP5cQt3BDJsz21Fvqhmxe1z1vkDI9eeHEC3AlSH6o/sZ8y8K1bEi8LGc1q7FoBG/rjEzKh0X6OPVTpi/1O2Xoshee1ljdYzd5BzzWUjVEulhbjgwy5SARU/VANqMbAyfcVoCYuWY1bwJvZ0Sk5FAMjQJJf8kWj+5QIGNosX4CXSujucvWRp3KqgoBjInnjbGFkByW3kU41lQWq3L6eODJTjbneRt4kE8ZsmFLV40dWb0GrLJXoohLyVEkgDKS0nBEuV9GJS87gmgmFDikXpsJtrwPboi3kGPDcZJ1pcq1LoHyROaIGjPO6n+bnjKJdDBH5E+oEbx0A4d5i0m7UCigu92xrDRF0eI8+1mVqF/V1he3sTrREdaww0LpvFCRKTw3HSmF/J4soamfh2G4NuYMT/LkIOVQW4sKiMtM7wVkti44i66XHSGYQFbFcecpWDTkcRcs5+yDfCVdusG9FNCO9q0hMq+TCeMU/RiR9VmWrqUPIwnIQlkhL4niyCs/EunhhcugtaeCFX4Sx/xDUEb3/7g= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TY3PR01MB11948.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(38350700014)(56012099003)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?hgStZVTsbq11pXSAUXIsxKXdcqG7whiXz6/fynhdzi4pMIAZTnAT5m90c3yN?= =?us-ascii?Q?sAZODqYl7El/VoOZslABdh0iPs0jHpvCbsusEQZFHGX4t9JsH73rJDcGnq3X?= =?us-ascii?Q?J2VCNMLhTec2z0THaE2b/ns3ApSecdUtL3Lu2/Ah+mxHd+14tYIr4LkN6kGd?= =?us-ascii?Q?UG9va3B6C6InXcB4po1wl4pDAcfsubga/T/kM8yKbXcagD4v1S9Rp4/iiWIU?= =?us-ascii?Q?iKAUMrscZstB0H2qlwHM/scztN5uqmSeMhPr9xlxf4ZB1Tmi21w0yDw3EJCl?= =?us-ascii?Q?bATdvnubBMRsfmyhtmKUwnoWcDWOqbs3GrR8MTo9XmVt7JtJJnzuLWZlngzS?= =?us-ascii?Q?ffH+HNIAiRS3sR3xMCv+uGWEo0a4obmc3Hx8W5XJONtIw3vGvrrEkk7pkmjb?= =?us-ascii?Q?FKrWfEQskG3rcKt9s1y2zvTzYtgYt9/RcMd6gFVD56pje9KH2yHray/0AOoG?= =?us-ascii?Q?op2ILnJnMGrRQCDyPDt00BmI8YlFKrw60ONvyJ7GWYW6Q3QoF45u/2DIRPPW?= =?us-ascii?Q?zv6COksHuoIYjuTp8IjBpU78rT0TQ2IyUk1+FN6JTMq5WkUxAXHaD1lxg5nV?= =?us-ascii?Q?Se2BnE0bwhTFSaMDHTLWM0GPYErcNy/Y0mxpysd8xljtzr8AJPJZxC84r/uk?= =?us-ascii?Q?O4MqDz1PzFte9h3/8GZOfw15NpUuYUwS9NTLHpO6ffC1zsPj0JlVMA4DMVDd?= =?us-ascii?Q?OMSbpP1NreXM4g4Pl0zz8OZ+0NSdNn0IzYrqd/s8V7X032u1snnrzTzn5FqJ?= =?us-ascii?Q?tBi0oVAilNDJeaBCSLn/s/viLXEwyozxLWaMw7syhg4oQL+wpsapEOI93B/I?= =?us-ascii?Q?1mgXTs5TQRRRVvhfjx7IvAH3KRId3W3+G71wonMaMjk5G+cYaK0V6iVEOsqb?= =?us-ascii?Q?jBcUpCDdZ66kCGPFU+njCI4KQ+HR1VvZFi8Orc77/ow67Le2pb39o7HL7h3T?= =?us-ascii?Q?Wl30Z90O+5kioVrcqM9NrKI3Ij9ZzzLNKibOAQrILWLMNjEs/twOkDehgtRb?= =?us-ascii?Q?EjhJIrhTiak5j/83qLjbzJ0aDZgX5GE37aHOYCW8yZ5f/iIzL7lIdkFmYuvY?= =?us-ascii?Q?X+SztCTclw9fzBLTbn+KIJvBq8xzCV5pQB9wPOAwEPI8Lwx1/WTDUNItj/cd?= =?us-ascii?Q?JWGDSrzzvK3ruBdsV+SbU9Ax0grPOBELrG1rFxWXc6ZCoM4fITd2bYOUFnQ2?= =?us-ascii?Q?zKAW6EKifTC8BAgAPt7U0w2fYW5BiupAU8SrneGiO8t65j6eQSIF/vwHs4fi?= =?us-ascii?Q?RtVxYg/wJQ7cB1aYJI/OozTSvLaoZdd2WzPVRkjCPTB7Kq8u2+tW+c/iqvow?= =?us-ascii?Q?wuX5ARb66ydcXazSCfbcBGrYhopRbg+OQa9lTvxh1OJj1PBqs7kk7rjIsJz5?= =?us-ascii?Q?IHTNUoV2DPtLRqnistWzBh2DGCmqJF17ljLgk7SGR0opZcLb3K4n/RrT8RS0?= =?us-ascii?Q?GAA+vV9BkebipIXgJ4rJeMncQyDjdynR5+iCbsLwls5y5XchpXIR1y/N5Ok0?= =?us-ascii?Q?VmSiy8aRQw/YSCc9EkMFGuf3qy4H1qjUw+MKxAA74MBlV72opFybhvtAPPSA?= =?us-ascii?Q?EhOoaHiLP9U9QeASuYmnsJ9li7MGP7CZchLg1oROMcneDVsD63ZJ0JgwFaF8?= =?us-ascii?Q?UTkGj6XrMna74vuhObBf2B+DkZ2iW72ezN78kSvAf5Tri6jn8itEAarMIWv2?= =?us-ascii?Q?Ko1CoV/Upinpk2OZ+nnwCZB24u/Vvx1ahAqvxnGHqFPrCg8VJXhOjoDuVrIc?= =?us-ascii?Q?4jWnXLCgNVN/oD3uCKqCAeAdvS5gmu73txu5fbhzI7mbjOlSrQJn?= X-OriginatorOrg: bp.renesas.com X-MS-Exchange-CrossTenant-Network-Message-Id: b0d355c4-066f-485a-c6b8-08de8c2c12e0 X-MS-Exchange-CrossTenant-AuthSource: TYWPR01MB11940.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Mar 2026 18:10:06.0267 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: qvkC2GcS5k09Q5zdguPlbPO14iCRUFb2oWDAcrskCxJJRIltrdsPWOLbm+Bzjq7g8JeCDzCT3hFBbfkrDuV9X197ttM6l2l8gabr/76Sdhs/BBuwIoEo70k04sGwqWQI X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSRPR01MB11662 Content-Type: text/plain; charset="utf-8" The driver was disabling the USB2 PHY clock immediately after register initialization in probe() and after each reset operation. This left the PHY unclocked even though it must remain active for USB functionality. The behavior appeared to work only when another driver (e.g., USB controller) had already enabled the clock, making operation unreliable and hardware-dependent. In configurations where this driver is the sole clock user, USB functionality would fail. Fix this by: - Enabling the clock once in probe() via pm_runtime_resume_and_get() - Removing all pm_runtime_put() calls from assert/deassert/status - Registering a devm cleanup action to release the clock at removal - Removed rzv2h_usbphy_assert_helper() and its call in rzv2h_usb2phy_reset_probe() This ensures the PHY clock remains enabled for the entire device lifetime, preventing instability and aligning with hardware requirements. Reviewed-by: Philipp Zabel Cc: stable@vger.kernel.org Fixes: e3911d7f865b ("reset: Add USB2PHY port reset driver for Renesas RZ/V= 2H(P)") Signed-off-by: Tommaso Merciai --- v8->v9: - Collected PZabel tag. v7->v8: - No changes v6->v7: - No changes v5->v6: - No changes v4->v5: - No changes. v3->v4: - No changes. v2->v3: - Added missing Cc: stable@vger.kernel.org - Improved commit body describing the removal of rzv2h_usbphy_assert_helpe= r() from rzv2h_usb2phy_reset_probe(). v1->v2: - Improve commit body and commit msg - Added Fixes tag - Dropped unnecessary rzv2h_usbphy_assert_helper() functio drivers/reset/reset-rzv2h-usb2phy.c | 64 ++++++++--------------------- 1 file changed, 18 insertions(+), 46 deletions(-) diff --git a/drivers/reset/reset-rzv2h-usb2phy.c b/drivers/reset/reset-rzv2= h-usb2phy.c index ae643575b067..5bdd39274612 100644 --- a/drivers/reset/reset-rzv2h-usb2phy.c +++ b/drivers/reset/reset-rzv2h-usb2phy.c @@ -49,9 +49,10 @@ static inline struct rzv2h_usb2phy_reset_priv return container_of(rcdev, struct rzv2h_usb2phy_reset_priv, rcdev); } =20 -/* This function must be called only after pm_runtime_resume_and_get() has= been called */ -static void rzv2h_usbphy_assert_helper(struct rzv2h_usb2phy_reset_priv *pr= iv) +static int rzv2h_usbphy_reset_assert(struct reset_controller_dev *rcdev, + unsigned long id) { + struct rzv2h_usb2phy_reset_priv *priv =3D rzv2h_usbphy_rcdev_to_priv(rcde= v); const struct rzv2h_usb2phy_reset_of_data *data =3D priv->data; =20 scoped_guard(spinlock, &priv->lock) { @@ -60,24 +61,6 @@ static void rzv2h_usbphy_assert_helper(struct rzv2h_usb2= phy_reset_priv *priv) } =20 usleep_range(11, 20); -} - -static int rzv2h_usbphy_reset_assert(struct reset_controller_dev *rcdev, - unsigned long id) -{ - struct rzv2h_usb2phy_reset_priv *priv =3D rzv2h_usbphy_rcdev_to_priv(rcde= v); - struct device *dev =3D priv->dev; - int ret; - - ret =3D pm_runtime_resume_and_get(dev); - if (ret) { - dev_err(dev, "pm_runtime_resume_and_get failed\n"); - return ret; - } - - rzv2h_usbphy_assert_helper(priv); - - pm_runtime_put(dev); =20 return 0; } @@ -87,14 +70,6 @@ static int rzv2h_usbphy_reset_deassert(struct reset_cont= roller_dev *rcdev, { struct rzv2h_usb2phy_reset_priv *priv =3D rzv2h_usbphy_rcdev_to_priv(rcde= v); const struct rzv2h_usb2phy_reset_of_data *data =3D priv->data; - struct device *dev =3D priv->dev; - int ret; - - ret =3D pm_runtime_resume_and_get(dev); - if (ret) { - dev_err(dev, "pm_runtime_resume_and_get failed\n"); - return ret; - } =20 scoped_guard(spinlock, &priv->lock) { writel(data->reset_deassert_val, priv->base + data->reset_reg); @@ -102,8 +77,6 @@ static int rzv2h_usbphy_reset_deassert(struct reset_cont= roller_dev *rcdev, writel(data->reset_release_val, priv->base + data->reset_reg); } =20 - pm_runtime_put(dev); - return 0; } =20 @@ -111,20 +84,10 @@ static int rzv2h_usbphy_reset_status(struct reset_cont= roller_dev *rcdev, unsigned long id) { struct rzv2h_usb2phy_reset_priv *priv =3D rzv2h_usbphy_rcdev_to_priv(rcde= v); - struct device *dev =3D priv->dev; - int ret; u32 reg; =20 - ret =3D pm_runtime_resume_and_get(dev); - if (ret) { - dev_err(dev, "pm_runtime_resume_and_get failed\n"); - return ret; - } - reg =3D readl(priv->base + priv->data->reset_reg); =20 - pm_runtime_put(dev); - return (reg & priv->data->reset_status_bits) =3D=3D priv->data->reset_sta= tus_bits; } =20 @@ -141,6 +104,11 @@ static int rzv2h_usb2phy_reset_of_xlate(struct reset_c= ontroller_dev *rcdev, return 0; } =20 +static void rzv2h_usb2phy_reset_pm_runtime_put(void *data) +{ + pm_runtime_put(data); +} + static int rzv2h_usb2phy_reset_probe(struct platform_device *pdev) { const struct rzv2h_usb2phy_reset_of_data *data; @@ -175,14 +143,14 @@ static int rzv2h_usb2phy_reset_probe(struct platform_= device *pdev) if (error) return dev_err_probe(dev, error, "pm_runtime_resume_and_get failed\n"); =20 + error =3D devm_add_action_or_reset(dev, rzv2h_usb2phy_reset_pm_runtime_pu= t, + dev); + if (error) + return dev_err_probe(dev, error, "unable to register cleanup action\n"); + for (unsigned int i =3D 0; i < data->init_val_count; i++) writel(data->init_vals[i].val, priv->base + data->init_vals[i].reg); =20 - /* keep usb2phy in asserted state */ - rzv2h_usbphy_assert_helper(priv); - - pm_runtime_put(dev); - priv->rcdev.ops =3D &rzv2h_usbphy_reset_ops; priv->rcdev.of_reset_n_cells =3D 0; priv->rcdev.nr_resets =3D 1; @@ -190,7 +158,11 @@ static int rzv2h_usb2phy_reset_probe(struct platform_d= evice *pdev) priv->rcdev.of_node =3D dev->of_node; priv->rcdev.dev =3D dev; =20 - return devm_reset_controller_register(dev, &priv->rcdev); + error =3D devm_reset_controller_register(dev, &priv->rcdev); + if (error) + return dev_err_probe(dev, error, "could not register reset controller\n"= ); + + return 0; } =20 /* --=20 2.43.0 From nobody Thu Apr 2 15:37:42 2026 Received: from TYVP286CU001.outbound.protection.outlook.com (mail-japaneastazon11011006.outbound.protection.outlook.com [52.101.125.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BD97A35A390; Fri, 27 Mar 2026 18:10:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.125.6 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774635016; cv=fail; b=A3SVU9ebGFdUwFuNnpKakbAM9tquUaiGdu7jje+jq0GskzsqdFgkk7ttCAGj4w78C/ldW9Uayx00eO8hEOM703jqfYjXURqsUgrUFxwCSzm7oABXhOdJm/6Ny1f4ipGBWPqwzgzD6/+Wdh2tichKigKl0L+bM1rrmOLhWqs8K2U= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774635016; c=relaxed/simple; bh=ext1Exm+rdMb66mkHxMP0TmXidrTr2A0QttuOXDio+M=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=W0m90ns7zNRiJnElQOso3PxCLJWYecbEheCt0hXLBUq+f31WKoahZv1yzb/ghA+Dw2EwyXzJqFkcG7z4WnT1+t0vbXA5fJRR8VMbtF2V1Oo5yiTGwCxC4jrmVmS5XOJrPMuIin6Q/n4BM+0wtUFUa74N0JS8+2zgFge+UfsHzlA= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com; spf=pass smtp.mailfrom=bp.renesas.com; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b=fJWFjYg8; arc=fail smtp.client-ip=52.101.125.6 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b="fJWFjYg8" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=pCgw49KNhRFyiLkvNfmZx2pn4CL5omSpf0gXMlvEQidOJPkCxde+YWzdt5nPGUJHFm9Al36xjn2k8twpG3XWSuynUbxEIFZ/uoT9Nx3J13ZRn7CUuRLWj+9e8Qq528eF2l5HIjQbxxbzX+YMRaf51kzDTGqaKhu0R4+Rgt1xSJm09OunhIVretW95m7RbDBOSeSAOZriY/dDLU6pXJiwYYfdUgHNJ81KJJTZpAj/YFeD/y53J+XQ2bJZIaEiGuBARJgBFNi+OCkj68gH8oToKbAvMatPWOju+1enWzB6vmUlzS9Yj24pfhwLfjQfGJtXlrUiMwF9cwO6imCBslH77A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Np55NWnOcvO5uOBCpSDbf17OPfrjG8eHCXRC0dlBCjs=; b=r3aBYB5noXj0S8MHN64Zi4a+naJqssy6nvGARF0Eaw4IjUEYKA48aNdxKN6dKea1/gDa4JGkQ42xAzJ6XS9Nt3b8cb5nafYqjlxLWwhkYkRwggrGR9rzcJHAZe2FCFYshj0URZ4Qk0vN7Hf1P6TtacKnfkOk6/p0e0oWbOJFQ+zyKcZUd3ROTzjsxwRCLAEOmxJncbCtB0Wo8pVXxEWUpEtjeXt448FUGfjtZv8pA6XW9M6iogyPWgzVzh4IwWMyWglK3luh28+DbWhK3E7uRFw1UQnSUYWwDmS6YigebOAgWD5XOL2kpJauIgbzNtwZ4brN5ZnXrvOdDSsAA2jJ0Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=bp.renesas.com; dmarc=pass action=none header.from=bp.renesas.com; dkim=pass header.d=bp.renesas.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bp.renesas.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Np55NWnOcvO5uOBCpSDbf17OPfrjG8eHCXRC0dlBCjs=; b=fJWFjYg8oExn/pQ1roOeZYjZj3AA/nPIKJ5WxOjjUdYIidtAPjK+AWLyT1lRRKOd1S8DaxUP47sSKRHm2vB62ZKYs1o1OP6McuyMpkOm2DWlpoQMljHAG2GGlpiHHBPRvYG8Ah9XEF6zC3iDrtYC/DTCY/PO+XjzMW/24KV1soo= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=bp.renesas.com; Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com (2603:1096:400:409::5) by OSRPR01MB11662.jpnprd01.prod.outlook.com (2603:1096:604:22e::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Fri, 27 Mar 2026 18:10:12 +0000 Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495]) by TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495%6]) with mapi id 15.20.9745.024; Fri, 27 Mar 2026 18:10:12 +0000 From: Tommaso Merciai To: tomm.merciai@gmail.com, peda@axentia.se, p.zabel@pengutronix.de Cc: linux-renesas-soc@vger.kernel.org, biju.das.jz@bp.renesas.com, Tommaso Merciai , Fabrizio Castro , Lad Prabhakar , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Magnus Damm , Greg Kroah-Hartman , Josua Mayer , Ulf Hansson , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v9 5/6] reset: rzv2h-usb2phy: Convert to regmap API Date: Fri, 27 Mar 2026 19:08:52 +0100 Message-ID: <0259040014396ea03d58a87c2ce2a3f9eff2b0b6.1774601289.git.tommaso.merciai.xr@bp.renesas.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0056.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:cc::16) To TYWPR01MB11940.jpnprd01.prod.outlook.com (2603:1096:400:3fd::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TY3PR01MB11948:EE_|OSRPR01MB11662:EE_ X-MS-Office365-Filtering-Correlation-Id: c66d933b-126b-4211-4b09-08de8c2c16f9 X-LD-Processed: 53d82571-da19-47e4-9cb4-625a166a4a2a,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|38350700014|56012099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: kxugZbTUJndp1li7+h7Qmn07Av2iOd3yX+Zn4feGzekO5bi10VA1f3F8zHpbGL7YlpU5auJGjaHE7quLgBZOnbbWX8VaBrobt/ZgbmLhfzOH3KB+w5HmRLTv7BarRoF5/cB7UGyT7APKLrvBfarNr7Y4oOn3iPEANRMpcbMPKtRpzRoOYYOuL0alr3sgZLIRYi2sLHNCsowsQ1WKRVRRlukGL4n1PNZWjlzZX97k6/epCugxoQRJydFwYgFcygIJgffbXfSbFkngysHmSZtw9zITjQyCogU7ibYOXA+vppZdby0cO7fzUjQPYwjxwAcBS8kyqCLTAmJ3PO3DcmvNg6Wf1tTq7PY8wI0LpiipKS6yGlZAdfHGFoWZozlU/e9ygS7V0JrU5TB4/ebqa3HvweLBvP4dtBWK1w+KjVsSHjYSbE6Z15Z8WTLbef0ma3AeWy9/+IXG1B2QfZTPUe99cBG7pytrm1mxHAqati3F3xqfvauu1HeHTLAk/mw23XWE3qwd82fftOClC9MPvYNxQ+aq4U2XiihKDEFf2Hup41etj/pGhhVkhfdjXNZys/e8rfmnCsRf6C808ILwYU3ZTBXQ0F8tE0OWoUxMjQKVSeSwFw4n2xOKO7q6rkc/cG0kAi8Ad2Zl4TNQi8iWAc3AalDGYPThms2V+dI/Xivk20vMQs7j17VLVEeGZpmgdU5lN72rPrcypnKm9/1BHGTAZ7PSy3FBVaJFKwTrkinXdzxtgeJV7dOYpbecWgDsS8Aqj36EB3g0urBg8EL1UzLDwgahcEFS1T+wWNd7NgPoobc= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TY3PR01MB11948.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(38350700014)(56012099003)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?661mrK1fAOYV7CDIK9BHhlToBR8FhhvtqdnH9T21Se60jx+fgzsEVtQQzT5D?= =?us-ascii?Q?aBzBlp1cNKrGv/0Ikcm7yEVPB5Gs2jjsCavQs3nzgmDuXhW+NUuxD4FRK9X/?= =?us-ascii?Q?w/vKJ/9jsnzoKPLIjUGVoV3PGNdrnH+MOE8Sh7uOafxmO1NM1VeINPlqPaH4?= =?us-ascii?Q?AGuldGGKbORsypIQSQlkoXyTLFRIOAYQsjx1FVUWC4Y7FwtllTK3HSf4k3U6?= =?us-ascii?Q?txMtK+Bd1m8ppcyeYFIpBhbMT/Qi6TdeJxQE5rcyuvylpsJ0MqlijxWc6nBJ?= =?us-ascii?Q?OeO+awoTc6cLDidpIe09bPqchmcGUN4AE6x0kmYjvuHWnCJ8yO5vxmrmtqEw?= =?us-ascii?Q?ZLDW0+4zffbektkgRqSURHvguVy0+fZHXYdZovqG9UMzoL99h5D+sYFDQkgq?= =?us-ascii?Q?Giqq0267py8x5FT+HXwtT8gJ8TK09L9I/KpGETfM5rMkTSImDssvqgr9r/cG?= =?us-ascii?Q?c3w32QmGWmgiE1Qmf6WLmCZxi2vhPCRHrF/5Q1qK1OmqT5KWmFthLz+G0wW6?= =?us-ascii?Q?xcj0eFYOGv3Z2wBFxbrRfdO5bVLU6eSObVsjOJyCAxzXdaxoPPuUYZh3yq2h?= =?us-ascii?Q?2Sd2h6c8tcVQ8QkGGRVrHrWYurxjR2ZFr8nNJhvE0HbbH0i5EmfENP1XolMS?= =?us-ascii?Q?YOW3mSUEjR67v3L8asBKpEsY5qRufkaDEb2Yam/KiwS9EM2RcvreOdJtsEuD?= =?us-ascii?Q?VU/iMPLhjQh3keT9Muvj/ApwQOD+ENI+qEHG0+z+FCu0lfSGiHrQT30f19C6?= =?us-ascii?Q?wYw26LRiREFAVV/EpyVNKi4dFHo6RkmMxiRxw3vczS+rudwrRD8tp8Mg7yYg?= =?us-ascii?Q?emlwdpyFoZNamPdd3Wh2zBpcLGUWthvRg+sgv2CCFF520Rmy0ttbeqfrgFK0?= =?us-ascii?Q?rQnX7aAFLfbCnR+FJxBURZbe9jeKTrMnd4Lo4DdD03cLVCzXqL8xf3ubL1MY?= =?us-ascii?Q?R8/nNzH2UzfaDH7PeoWsNAMDh1O817Nw1sL5NNOwvmgknMMxyBhHKJMYMEky?= =?us-ascii?Q?5RkIE03RAUAuTaGU824R258llnPLnXekd9jgthtw17NO7LPZLXVW9lriZa+s?= =?us-ascii?Q?SqrE7l/BzqhXrnkjLkCUxODWdnmrLyGxHxNd6egeLqxWOwGKIpiBJE6bbHLv?= =?us-ascii?Q?oUORn8RTWeEkFXBNaJnunDrAmWyX0w5tsH/rkjO65KOEAiFcCGrpWSeYvn+k?= =?us-ascii?Q?Fli0OfrOD+bKhAiNhQMcEgd19uraGjD7I0a8uzugZMw+15c8VShQASUopuGl?= =?us-ascii?Q?Sv/tpm7Rl/qxxnoUVV1XIrVrGIDmiqHCJO9f9qSOSZGGQaLavATMU8olD33m?= =?us-ascii?Q?a4gWRh8ROI/tkqETCYk9P0wuFMPxP1N1DhNGGRKk2usM6f/sSCJas20cK8M+?= =?us-ascii?Q?TxZPy42B1DVttK0YMzPMc2lBpztBPbR9rn/1eW67x/4zy9PAS8kz28mdSrto?= =?us-ascii?Q?WBMxrC2eBdSqCT8/6tC9FzPqvhahpABcYP8iznGOoVth3MJTj8caqlTdMQwn?= =?us-ascii?Q?AF5gWfEOlfE2uinE4oziZlhhDj73bKptvXJNByEWw49ZNGC4h46iekZkTWuC?= =?us-ascii?Q?cCNfF8SdDP3OH/Pd9CP5rItB6kzDGJWlqwLSP+HfAtS8hGAA9AZ4Lo+2BtI0?= =?us-ascii?Q?UgTNNt8gw/YS3WOzFZTNQlDqzpk2zT8Ov1ok+YNRIlgcCcZwy+qo+J8u5e6p?= =?us-ascii?Q?KWClJYKKbnaugmS2n0wysmikjWT7wuBsw4vhVy42jEyhGQlOJncoDkXiNKGq?= =?us-ascii?Q?D1dnmO1IksxW9E8dLj+fFrXHtqjaSErr6Hx9QbGiZogiB7Gl+jSy?= X-OriginatorOrg: bp.renesas.com X-MS-Exchange-CrossTenant-Network-Message-Id: c66d933b-126b-4211-4b09-08de8c2c16f9 X-MS-Exchange-CrossTenant-AuthSource: TYWPR01MB11940.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Mar 2026 18:10:12.6492 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 2XtubncErAQgfIMp20U8U+II+BDFNARpOrWO+oCqsjXnjRH4R4Yr+kr+JzcFktZQAjvlcCW9tbvyYMOEeCIunx6nP+KC1Cv1UYZBBTvWSgDoGacNgd7eh45mBovsyYOr X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSRPR01MB11662 Content-Type: text/plain; charset="utf-8" Replace raw MMIO accesses (void __iomem *, readl/writel) with regmap_read/regmap_write via devm_regmap_init_mmio(). Regmap provides its own internal locking, so the manual spinlock and scoped_guard() wrappers are no longer needed. Signed-off-by: Tommaso Merciai --- v8->v9: - New patch drivers/reset/Kconfig | 1 + drivers/reset/reset-rzv2h-usb2phy.c | 42 ++++++++++++++++------------- 2 files changed, 24 insertions(+), 19 deletions(-) diff --git a/drivers/reset/Kconfig b/drivers/reset/Kconfig index 5165006be693..c539ca88518f 100644 --- a/drivers/reset/Kconfig +++ b/drivers/reset/Kconfig @@ -257,6 +257,7 @@ config RESET_RZG2L_USBPHY_CTRL config RESET_RZV2H_USB2PHY tristate "Renesas RZ/V2H(P) (and similar SoCs) USB2PHY Reset driver" depends on ARCH_RENESAS || COMPILE_TEST + select REGMAP_MMIO help Support for USB2PHY Port reset Control found on the RZ/V2H(P) SoC (and similar SoCs). diff --git a/drivers/reset/reset-rzv2h-usb2phy.c b/drivers/reset/reset-rzv2= h-usb2phy.c index 5bdd39274612..4014eff0f017 100644 --- a/drivers/reset/reset-rzv2h-usb2phy.c +++ b/drivers/reset/reset-rzv2h-usb2phy.c @@ -5,13 +5,13 @@ * Copyright (C) 2025 Renesas Electronics Corporation */ =20 -#include #include #include #include #include #include #include +#include #include #include =20 @@ -37,10 +37,9 @@ struct rzv2h_usb2phy_reset_of_data { =20 struct rzv2h_usb2phy_reset_priv { const struct rzv2h_usb2phy_reset_of_data *data; - void __iomem *base; + struct regmap *regmap; struct device *dev; struct reset_controller_dev rcdev; - spinlock_t lock; /* protects register accesses */ }; =20 static inline struct rzv2h_usb2phy_reset_priv @@ -55,10 +54,8 @@ static int rzv2h_usbphy_reset_assert(struct reset_contro= ller_dev *rcdev, struct rzv2h_usb2phy_reset_priv *priv =3D rzv2h_usbphy_rcdev_to_priv(rcde= v); const struct rzv2h_usb2phy_reset_of_data *data =3D priv->data; =20 - scoped_guard(spinlock, &priv->lock) { - writel(data->reset2_acquire_val, priv->base + data->reset2_reg); - writel(data->reset_assert_val, priv->base + data->reset_reg); - } + regmap_write(priv->regmap, data->reset2_reg, data->reset2_acquire_val); + regmap_write(priv->regmap, data->reset_reg, data->reset_assert_val); =20 usleep_range(11, 20); =20 @@ -71,11 +68,9 @@ static int rzv2h_usbphy_reset_deassert(struct reset_cont= roller_dev *rcdev, struct rzv2h_usb2phy_reset_priv *priv =3D rzv2h_usbphy_rcdev_to_priv(rcde= v); const struct rzv2h_usb2phy_reset_of_data *data =3D priv->data; =20 - scoped_guard(spinlock, &priv->lock) { - writel(data->reset_deassert_val, priv->base + data->reset_reg); - writel(data->reset2_release_val, priv->base + data->reset2_reg); - writel(data->reset_release_val, priv->base + data->reset_reg); - } + regmap_write(priv->regmap, data->reset_reg, data->reset_deassert_val); + regmap_write(priv->regmap, data->reset2_reg, data->reset2_release_val); + regmap_write(priv->regmap, data->reset_reg, data->reset_release_val); =20 return 0; } @@ -86,7 +81,7 @@ static int rzv2h_usbphy_reset_status(struct reset_control= ler_dev *rcdev, struct rzv2h_usb2phy_reset_priv *priv =3D rzv2h_usbphy_rcdev_to_priv(rcde= v); u32 reg; =20 - reg =3D readl(priv->base + priv->data->reset_reg); + regmap_read(priv->regmap, priv->data->reset_reg, ®); =20 return (reg & priv->data->reset_status_bits) =3D=3D priv->data->reset_sta= tus_bits; } @@ -104,6 +99,12 @@ static int rzv2h_usb2phy_reset_of_xlate(struct reset_co= ntroller_dev *rcdev, return 0; } =20 +static const struct regmap_config rzv2h_usb2phy_reset_regconf =3D { + .reg_bits =3D 32, + .val_bits =3D 32, + .reg_stride =3D 4, +}; + static void rzv2h_usb2phy_reset_pm_runtime_put(void *data) { pm_runtime_put(data); @@ -115,6 +116,7 @@ static int rzv2h_usb2phy_reset_probe(struct platform_de= vice *pdev) struct rzv2h_usb2phy_reset_priv *priv; struct device *dev =3D &pdev->dev; struct reset_control *rstc; + void __iomem *base; int error; =20 priv =3D devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); @@ -124,17 +126,19 @@ static int rzv2h_usb2phy_reset_probe(struct platform_= device *pdev) data =3D of_device_get_match_data(dev); priv->data =3D data; priv->dev =3D dev; - priv->base =3D devm_platform_ioremap_resource(pdev, 0); - if (IS_ERR(priv->base)) - return PTR_ERR(priv->base); + base =3D devm_platform_ioremap_resource(pdev, 0); + if (IS_ERR(base)) + return PTR_ERR(base); + + priv->regmap =3D devm_regmap_init_mmio(dev, base, &rzv2h_usb2phy_reset_re= gconf); + if (IS_ERR(priv->regmap)) + return PTR_ERR(priv->regmap); =20 rstc =3D devm_reset_control_get_shared_deasserted(dev, NULL); if (IS_ERR(rstc)) return dev_err_probe(dev, PTR_ERR(rstc), "failed to get deasserted reset\n"); =20 - spin_lock_init(&priv->lock); - error =3D devm_pm_runtime_enable(dev); if (error) return dev_err_probe(dev, error, "Failed to enable pm_runtime\n"); @@ -149,7 +153,7 @@ static int rzv2h_usb2phy_reset_probe(struct platform_de= vice *pdev) return dev_err_probe(dev, error, "unable to register cleanup action\n"); =20 for (unsigned int i =3D 0; i < data->init_val_count; i++) - writel(data->init_vals[i].val, priv->base + data->init_vals[i].reg); + regmap_write(priv->regmap, data->init_vals[i].reg, data->init_vals[i].va= l); =20 priv->rcdev.ops =3D &rzv2h_usbphy_reset_ops; priv->rcdev.of_reset_n_cells =3D 0; --=20 2.43.0 From nobody Thu Apr 2 15:37:42 2026 Received: from OS0P286CU011.outbound.protection.outlook.com (mail-japanwestazon11010002.outbound.protection.outlook.com [52.101.228.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E5197340293; Fri, 27 Mar 2026 18:10:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.228.2 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774635023; cv=fail; b=t4S2NPDiIYALOCBnsEPJLoygJDfR3aclYeY3/GN/mUN/xIhEhDB0ZaGwrQ0Y4wIlJ3yoF+N54LEY7t1TSEdY97fBgHYeabnXRz7hBPRxe4BRArrRBxh597tR7QTWqJIqMsMkN86Nigvkth1f6O2nczYJi9GUTm+t9DR0c8bwHO0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774635023; c=relaxed/simple; bh=GEICBCTtJF7Pn6Q+2GOdbuGMx0a0W3CnNuIRjBAw7Sg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=RRftnikFlLXfbshFHppqd6VTfCfozGvQT3T0k4j+Z3pG8LefF1+Fr9fylnNBllvjezJy5oR5nWBpwz/ULJh+4tNT24xewGT6jbA558CCXnXD+sBci5ZNfZ9wsvbDkFX5ReBN0ebCBUUQcf3DjQImj/aqr0joNtX8HNr6e8EAXmo= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com; spf=pass smtp.mailfrom=bp.renesas.com; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b=dM7U3xbL; arc=fail smtp.client-ip=52.101.228.2 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bp.renesas.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=bp.renesas.com header.i=@bp.renesas.com header.b="dM7U3xbL" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=hPoKeB+yCvbEE3ANofBiENXM92MTvxKah29Qz0dxmdICWt+0VRAuRZgi9v0uCogVCNJ7D8qcie2w1hD5mbhWEcxfQ8c2OQYwQLyRnGiK1jdVe9KViV/ZgRpXUyK0okr+LE6WA+sNaSK+C4g7gXDIEwHBuXHF8dwTE+zfsXLfQBJV8xfkUV+I6B189qTmTDMfwNKK5x0xk7FCHSZuJeROYlFdijtTS376nYV5c2pfjC23XLD/lgwUM0MtDhops0tryZwBRIYEqQHa6AjCJRMtDL9IXWapLx7NUkxfV9C7isJx5KdSCwbvOJ/dOvL23hZGHahw/bnrlFGNIi0O5acKHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=UblEgaPILoKckoOpkp8WuekSGw1PZy4Rqr179I64za8=; b=qzcezC+SIo/brcBOEeEXH7vwnpnfQWfPShW+g2VEJN7gp0Wqn3Es2DjiZGhbx1zJmbupRonyyc1E+6b6g4OWfsxXiwW8Z+OwWeK/WMsk+dZipfqgPvy0Tc3LCVLAdnGfo118uMEEDJZyq1n0kDqa7/KIeUPCoP2LYQHmdwmbeF75ZYtFaAoYSxaRM60d1SqJHal47Qo/ipkwCAYrmbhimI8/Z5ganS3jvhZKlXFvi5YKWuMWU1wH5nhRbuAn7ZpUr2nRcYXS4s0aC7n4SDWb/bmkrRdBslrJ95p1zTfACCq+YsIKSB6x2H13Gg6pcqRYmExIl9EKdR6X2hX1HcolHg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=bp.renesas.com; dmarc=pass action=none header.from=bp.renesas.com; dkim=pass header.d=bp.renesas.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bp.renesas.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UblEgaPILoKckoOpkp8WuekSGw1PZy4Rqr179I64za8=; b=dM7U3xbLv033f4zU3adZZbhTfFXZi6LTEv4i5T/rB7HQ/u41Me232+4B4zvzTWhReaioLjtYQL2u5x5YukLMNgbQyH2QUTpzB056y679trMXH/cA+RKsBI6dL1K92i/buMr5vOWwKRZ8MuZ71eu5uTf/hE7xrsRPJBOqWLxwbqA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=bp.renesas.com; Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com (2603:1096:400:409::5) by OSRPR01MB11662.jpnprd01.prod.outlook.com (2603:1096:604:22e::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Fri, 27 Mar 2026 18:10:19 +0000 Received: from TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495]) by TY3PR01MB11948.jpnprd01.prod.outlook.com ([fe80::b718:17d0:6c0f:1495%6]) with mapi id 15.20.9745.024; Fri, 27 Mar 2026 18:10:19 +0000 From: Tommaso Merciai To: tomm.merciai@gmail.com, peda@axentia.se, p.zabel@pengutronix.de Cc: linux-renesas-soc@vger.kernel.org, biju.das.jz@bp.renesas.com, Tommaso Merciai , Fabrizio Castro , Lad Prabhakar , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Magnus Damm , Greg Kroah-Hartman , Josua Mayer , Ulf Hansson , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v9 6/6] reset: rzv2h-usb2phy: Add support for VBUS mux controller registration Date: Fri, 27 Mar 2026 19:08:53 +0100 Message-ID: X-Mailer: git-send-email 2.43.0 In-Reply-To: References: Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0056.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:cc::16) To TYWPR01MB11940.jpnprd01.prod.outlook.com (2603:1096:400:3fd::8) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TY3PR01MB11948:EE_|OSRPR01MB11662:EE_ X-MS-Office365-Filtering-Correlation-Id: 0ce003ca-93f5-4c61-6d88-08de8c2c1aeb X-LD-Processed: 53d82571-da19-47e4-9cb4-625a166a4a2a,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|7416014|376014|1800799024|366016|38350700014|56012099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: l8TRTEGCtLxFP0/o2wFZpI5nJZ1hC38i+aY5SZoGrgW/s1TfZVL8bqPeP9PF+DdYSR9hP3alQoYOY4Pu5lFsdDJzmh2L1T2OvPG3dW4ZUOGmajP8jyl2pwIUi0MGCJT5KN76k5w39kIsTMN0gGv+7wh1nTJ3aGcavUxRV/P0i2tKeiDUIw0TAmXGukIlWbsrY3tcnOLCjlIWliBnUzf93wiBazho4iPflxQMSrl5B78Z+B04ucb0OcMylX8hS2sf2DP9ZODMAWk95iKv6wFpxErzjlDXoC6eHpUIZFEFF11OA9xZPiPI5EKJgMxOikBTw1cpL0YP7+IOZWJ+mRD0DnWpzW/gVdond5aqvC8XVRazD9qcs7moGPRr2zA3Jw2JOu09ZkejMvluyA6rNqOq5lRPr6IiUrHipySG/CoK4HA0fezatgewcis5p4l+WVX/0XSXicdsQKlUtdjjX75ECWIkCnM1PHmEDIX+yVSGozCgA1Pqfw2GoI8WWVA6IIqYHMvgfQjFZEwy8ySmSCXHvN6EIZnnmNLCN7h6GzboCWZlXTcyUS6GLhlhVzVvudTRSksUcAdR6f03ajVFkWLkfJfMO9xwxLSwVuFDnZl3H+1b/rzzuMn4M9YP22g3ZlUI3SFfGmZBlo6VDJPpC2JLOXHBgs+nHo57A6eXp2rs3HW6Q6UMZXr7XsBeXIqwZTfiPPdJL+O72fWprHmrK/D7V4AMXZEtidtotTu2inONntYkvVxZXNUIb3rOONjrDachonajdwPJ49IWt2Ayg1G20k180MDi6CUjrNUyJ7zGEl0= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TY3PR01MB11948.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(7416014)(376014)(1800799024)(366016)(38350700014)(56012099003)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?8oCo6iOjF0fGwuOf/ePh4KxKz2JKUMLV3Zv59zhKE35B9AtAIGwUowvGJGi6?= =?us-ascii?Q?At7wcEZYjs1KNBhd1hV5JqJ8d6WL0vL33PDavq2GxDO0j/JeZfcck2hZzwWD?= =?us-ascii?Q?KqOhmiit2pHvCSGfMPffZEKNvJoVOz8Dbx92E2IH2bRYsa/M08fvyV8+BmJH?= =?us-ascii?Q?T91SjyzFCls6lzfi5gNrUwR74pfyKfvUBYuN1+dRkllSWgbHD3oo/71YmjsJ?= =?us-ascii?Q?50rRnMKhMbSER5WgA0tb1q26uj0sNf7hIAjXE8Sv08puLSuwGZfj59dWB++B?= =?us-ascii?Q?erJv6lkQ3c4fm2N0+1ERxoFnRO2GkLbYg0CM6qY4rJdZdGO5EuUuWgSa7ksj?= =?us-ascii?Q?f17dpnvyUENl9sf3CoONtRS37mBeF6ddfO1b8JjYPw51tDL2Tp+Kjy4xLRSD?= =?us-ascii?Q?OwhEFxziFLVUG5t6Q08I+ImDlKlBE/U+MmDsyG+Ilt3ACWgo24hrDSwUWgHj?= =?us-ascii?Q?SLqVjwNk/MNB+CcJicnhbfLkcpU9mtlGNh94PrE1FeX/wMyTEOVy/dtYDEZ7?= =?us-ascii?Q?uYqUl3muvDkYj1gVbAH1vjmcViEfKNiqMaqT2gqF+O+RPPdyS+EY8m4vzl+I?= =?us-ascii?Q?Uq1uVLm1jLxPHRnjbSX4kkxeGaLI/5XTtXHoAe0YsmMoKPgy1ClBH/HVPmwe?= =?us-ascii?Q?c0NAxdE7OEYIRUIpf/OAze17n3DzV+y8RQZLQgQV28lTJYsEMEfnIa91dNXK?= =?us-ascii?Q?qMZbw2vLrpkWj9fGpUenAes2culw2JedD1dF6dnUJpjLUtf9ewh1SuHkOdUY?= =?us-ascii?Q?CRcaY+7Z+B44B+WIUs21eF4cnS7xxDWTtJMayh/q3swocd4JQcmwF3BiGzy4?= =?us-ascii?Q?b8tbtjTNwV0dPxgBL0+JAtBC4kk1527MoyGBl7TlUuWwU+9j0SlMH98nrsQU?= =?us-ascii?Q?cfy2bKTEaYuyuzhc/PfXzrGyTjsXAON6r7E2MOiQrs6DIGMkPVJ/JeQPXNJl?= =?us-ascii?Q?mUay1jaV37ABReTgLogetjt7G5fZKSU2WC0qolyivcNMrxe9GI5s01RyE0NK?= =?us-ascii?Q?L0R8sH6YRh9byh+1uMi/+QA2jEIwUouYE9/buaPtwkNGTFfmhG5zB2qWswLq?= =?us-ascii?Q?eWhrJ8n1AFpdJX8s2BDcF0dI9oioCBL0IRkjB+XIussTry5pYDXekKhx71mX?= =?us-ascii?Q?OV0S28CL1wp/cC3x//9PLJhlIn3pUv3BdLhIJhx12ita7HOF2Jk/RkipclCo?= =?us-ascii?Q?Pab3mifGBM1pSjReg3/GJuYGW9TPJSQSCKHRcMbg1MjVROvGxJBDtsZrPu25?= =?us-ascii?Q?BzAsOKfAYc/WOcG3XCDtnvXbQ786ZR7m/ut7m3qbhqMhQaIKGEYrd3JZZjq2?= =?us-ascii?Q?yO45mHFyrMQ1wH7DHbDNA+KNtuZ/qOC5ThhllnvWRiG3zOdjr0UjPg/SeMmj?= =?us-ascii?Q?VKHsCeIINatak8wFkg1juVYI5201kXLOVpo9hUN4lfWdf0sfiaS2G+Q60diO?= =?us-ascii?Q?QmFNs/2ilI5QhHonaODfl9VaM0jYJpjXAP7gXc1WE07Q/dOyGQRI7OzUNhzH?= =?us-ascii?Q?m/eYBMlYAtTwKxZa35l73hjvE0DnyNMrSnA/+OvwYRY3XFL6ZreHryLCDmTZ?= =?us-ascii?Q?CWBvU7ZuXRJ2ryAsPNx8XWKAODAITjKCIlK6txdDsGDVi0uOvt0FIWsO8S30?= =?us-ascii?Q?hJyMHmWWjhPYZCaW9ydWN3syS6N2n6tfBQJFdxzH5WCHI/RNFnPwW5BffoJ2?= =?us-ascii?Q?YSQkT+ZDUlz1EbDrvxGujb6UFGL9Pa1+DT4RIFW89eJ61lhP7w9dVjUD8v8Y?= =?us-ascii?Q?z041Uzd7EYgRtVTtR65l4n3oFpSAkiGoM/eB174lsn6BvmD1Bi5w?= X-OriginatorOrg: bp.renesas.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0ce003ca-93f5-4c61-6d88-08de8c2c1aeb X-MS-Exchange-CrossTenant-AuthSource: TYWPR01MB11940.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Mar 2026 18:10:19.4882 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 53d82571-da19-47e4-9cb4-625a166a4a2a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 6auUcYfD/W11Qdligp98/4u/yEoJqVhavLoJ9ox4rPB2LCAM3aaOckiXggzwimGQJNHK2lhfI0eGobvc5KxANH78JIKyU4uF6s8FN+TlSmBHsinGlLodhRI9c/smiTEp X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSRPR01MB11662 Content-Type: text/plain; charset="utf-8" The RZ/V2H USB2 PHY requires control of the VBUS selection line (VBENCTL) through a mux controller described in the device tree as "mux-controller". This change adds support for registering the rzv2h-usb-vbenctl auxiliary driver during probe. This enables proper management of USB2.0 VBUS source selection on platforms using the RZ/V2H SoC. Reviewed-by: Philipp Zabel Signed-off-by: Tommaso Merciai --- v8->v9: - Drop linux/reset/reset_rzv2h_usb2phy.h dependecy as the driver is now based on regmap and does not need the reset driver's private header, update driver accordingly. - Collected PZabel tag. v7->v8: - No changes v6->v7: - No changes v5->v6: - No changes v4->v5: - Update mux_name to "vbenctl" to match the driver name. - Updated commit message. v3->v4: - No changes. v2->v3: - Use __devm_auxiliary_device_create() to create the auxiliary device. v1->v2: - New patch drivers/reset/Kconfig | 1 + drivers/reset/reset-rzv2h-usb2phy.c | 35 +++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) diff --git a/drivers/reset/Kconfig b/drivers/reset/Kconfig index c539ca88518f..62b2c3919613 100644 --- a/drivers/reset/Kconfig +++ b/drivers/reset/Kconfig @@ -257,6 +257,7 @@ config RESET_RZG2L_USBPHY_CTRL config RESET_RZV2H_USB2PHY tristate "Renesas RZ/V2H(P) (and similar SoCs) USB2PHY Reset driver" depends on ARCH_RENESAS || COMPILE_TEST + select AUXILIARY_BUS select REGMAP_MMIO help Support for USB2PHY Port reset Control found on the RZ/V2H(P) SoC diff --git a/drivers/reset/reset-rzv2h-usb2phy.c b/drivers/reset/reset-rzv2= h-usb2phy.c index 4014eff0f017..b1b8fa8377dd 100644 --- a/drivers/reset/reset-rzv2h-usb2phy.c +++ b/drivers/reset/reset-rzv2h-usb2phy.c @@ -5,7 +5,9 @@ * Copyright (C) 2025 Renesas Electronics Corporation */ =20 +#include #include +#include #include #include #include @@ -15,6 +17,8 @@ #include #include =20 +static DEFINE_IDA(auxiliary_ids); + struct rzv2h_usb2phy_regval { u16 reg; u16 val; @@ -99,6 +103,33 @@ static int rzv2h_usb2phy_reset_of_xlate(struct reset_co= ntroller_dev *rcdev, return 0; } =20 +static void rzv2h_usb2phy_reset_ida_free(void *data) +{ + struct auxiliary_device *adev =3D data; + + ida_free(&auxiliary_ids, adev->id); +} + +static int rzv2h_usb2phy_reset_mux_register(struct device *dev, + const char *mux_name) +{ + struct auxiliary_device *adev; + int id; + + id =3D ida_alloc(&auxiliary_ids, GFP_KERNEL); + if (id < 0) + return id; + + adev =3D __devm_auxiliary_device_create(dev, dev->driver->name, + mux_name, NULL, id); + if (!adev) { + ida_free(&auxiliary_ids, id); + return -ENOMEM; + } + + return devm_add_action_or_reset(dev, rzv2h_usb2phy_reset_ida_free, adev); +} + static const struct regmap_config rzv2h_usb2phy_reset_regconf =3D { .reg_bits =3D 32, .val_bits =3D 32, @@ -166,6 +197,10 @@ static int rzv2h_usb2phy_reset_probe(struct platform_d= evice *pdev) if (error) return dev_err_probe(dev, error, "could not register reset controller\n"= ); =20 + error =3D rzv2h_usb2phy_reset_mux_register(dev, "vbenctl"); + if (error) + return dev_err_probe(dev, error, "could not register aux mux\n"); + return 0; } =20 --=20 2.43.0