{"id":2232848,"url":"http://patchwork.ozlabs.org/api/1.2/covers/2232848/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-pci/cover/20260505100523.1922388-1-vladimir.oltean@nxp.com/","project":{"id":28,"url":"http://patchwork.ozlabs.org/api/1.2/projects/28/?format=json","name":"Linux PCI development","link_name":"linux-pci","list_id":"linux-pci.vger.kernel.org","list_email":"linux-pci@vger.kernel.org","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260505100523.1922388-1-vladimir.oltean@nxp.com>","list_archive_url":null,"date":"2026-05-05T10:04:52","name":"[v8,phy-next,00/31] Split Generic PHY consumer and provider API","submitter":{"id":75582,"url":"http://patchwork.ozlabs.org/api/1.2/people/75582/?format=json","name":"Vladimir Oltean","email":"vladimir.oltean@nxp.com"},"mbox":"http://patchwork.ozlabs.org/project/linux-pci/cover/20260505100523.1922388-1-vladimir.oltean@nxp.com/mbox/","series":[{"id":502805,"url":"http://patchwork.ozlabs.org/api/1.2/series/502805/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-pci/list/?series=502805","date":"2026-05-05T10:04:53","name":"Split Generic PHY consumer and provider API","version":8,"mbox":"http://patchwork.ozlabs.org/series/502805/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/covers/2232848/comments/","headers":{"Return-Path":"\n <linux-pci+bounces-53711-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-pci@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=nxp.com header.i=@nxp.com header.a=rsa-sha256\n header.s=selector1 header.b=UOrJ7xzL;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=104.64.211.4; helo=sin.lore.kernel.org;\n envelope-from=linux-pci+bounces-53711-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com\n header.b=\"UOrJ7xzL\"","smtp.subspace.kernel.org;\n arc=fail smtp.client-ip=52.101.83.59","smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=nxp.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=nxp.com","dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=nxp.com;"],"Received":["from sin.lore.kernel.org (sin.lore.kernel.org [104.64.211.4])\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 4g8vZZ5SFYz1yJ0\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 05 May 2026 20:17:10 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sin.lore.kernel.org (Postfix) with ESMTP id 7A8033071D77\n\tfor <incoming@patchwork.ozlabs.org>; Tue,  5 May 2026 10:05:55 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 349DD336ED2;\n\tTue,  5 May 2026 10:05:39 +0000 (UTC)","from GVXPR05CU001.outbound.protection.outlook.com\n (mail-swedencentralazon11013059.outbound.protection.outlook.com\n [52.101.83.59])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 46259335568;\n\tTue,  5 May 2026 10:05:36 +0000 (UTC)","from AM9PR04MB8585.eurprd04.prod.outlook.com (2603:10a6:20b:438::13)\n by PA1PR04MB11083.eurprd04.prod.outlook.com (2603:10a6:102:484::20) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9870.25; Tue, 5 May\n 2026 10:05:30 +0000","from AM9PR04MB8585.eurprd04.prod.outlook.com\n ([fe80::f010:fca8:7ef:62f4]) by AM9PR04MB8585.eurprd04.prod.outlook.com\n ([fe80::f010:fca8:7ef:62f4%4]) with mapi id 15.20.9870.023; Tue, 5 May 2026\n 10:05:30 +0000"],"ARC-Seal":["i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1777975539; cv=fail;\n b=UcVkvkw2jL763ZLN0TDNwyA6+uAxjvj5uNyb68/odIGxX2jPQls1nk4Ybg5nruQsxk5RKROaCQnEj9IHpco8E8hpW4w/SJfj00NJr6JXU1Kn1j9zu3v/bTLVHKoxpIwC1GWWZ8j0F4RRH0VqgFkubwMCAFwnAQX+sCgNa+y97rs=","i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=QULTuqvPKQEnrFoJSEm4LtcAR0FtkIEJOR79qhJAm1hh3IClZSGAXTFBWzIrnkTfuD/NVNap+wLyJK/0vVLq4CnhWFtheT9eXIMXB2gE9FzsEZ3SDk5wOjetXsVDbiWk8jjNiOmzM/kOv0K9UmuQP4ea2GbiyODYHgNNu4CAvxRkCseKuflpxZ66KRS81j2BSHG6eRVBAWeOK3KeMwuPvC5OUk4tOuedhvV+L9Hd1MN5d8RPFojHKv1n0hbn90QpkWzsclGb8SappGWl6YjSl+o5iKxWtHPcT4F8GxuavIpznRY2rF0cSFIDdrNiHiX+NNS4J6xn4MzLHbAF2Fm8Ew=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1777975539; c=relaxed/simple;\n\tbh=gCGhQcY+27X5RyL8NyfWSURRvBN5YsrPbPgyFLZ3I8M=;\n\th=From:To:Cc:Subject:Date:Message-Id:Content-Type:MIME-Version;\n b=jlgcsORjXIcg/m5/uGg0r7rWGIBs1xzaAYVL6mqgY5gqklOOPl8gHlxGXsZkOm2lWhiJOoSSaI8qowQTF1dpzleR2T4cHgl6T8Jsp3PvjnE7WDaDg8jXa59FOKkyjNYi9K3/rdW+/QuNju5X7wrqvpxeKd04AJO4VB4/sWnOzM8=","i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n 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;\n bh=d893QG0Njme1QDWNiAIqPe0Lfdna6yNYpSSz0386f3g=;\n b=gkFSuuf6EVvi3fdR1NjuUAFT6ILQCR+SunyIRl2LU6NdqRKqHYcxsdxxPEFp/4fqyOYYG4GRfnUXxbssJablfoLS645JNseOmFFxgobfHWmmoEG8juLOkbKqNsq9Dx3A/sv4Z6rU6o8iYr/Z6xATgTnoqEUNvde63AVKdwKkY0daiN/sFj26IYp+PZ9Vh/s1J9+g4jZzYzKXNZJTAZ424XvJx969dEWsILH+Gy6DQaN242OFcD8VHibmLarK8Vm/s+YumjDmH9SH9Q6Rt/drvZVF1+izNSaBflzETnQqetagXSI7vMRZF706J1M/4R9x3a8cVOCXQ5yOZ3FsMTE/qw=="],"ARC-Authentication-Results":["i=2; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=nxp.com;\n spf=pass smtp.mailfrom=nxp.com;\n dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com\n header.b=UOrJ7xzL; arc=fail smtp.client-ip=52.101.83.59","i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass\n header.d=nxp.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=d893QG0Njme1QDWNiAIqPe0Lfdna6yNYpSSz0386f3g=;\n b=UOrJ7xzLnAtQ3PXouikVS2/6ao/ArYBL1dEHxZ0busMVz7/RIQFrdeQ1n4PaERxjO/8lk2xT32U+YqLWKCM1x6SvHgWBjY5/ztjr4gA8Y/yPcSN0W4453Q0uja4ReVz1DGWEMyegchZrKWUfrWFFKKWYSsOX7/os8hLySZBYYqgYxDWsBrNw/SIBC0XrpQ9VWe12QlK6x+K5pyHwNB5S+is4ed0eSash4m7CovIvGwxtMfy8aMTx4QsrPSAVr3bzr2t+pwY8Qz9CyZl4urPxu8maPVpvUdQxNUapc6vBVI3TcFbOt4kl5Xe3RGLGdFzq2Q17MMYL7auL+U2UyQ1EFQ==","From":"Vladimir Oltean <vladimir.oltean@nxp.com>","To":"linux-phy@lists.infradead.org","Cc":"Vinod Koul <vkoul@kernel.org>, Neil Armstrong <neil.armstrong@linaro.org>,\n dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org,\n linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org,\n linux-can@vger.kernel.org, linux-gpio@vger.kernel.org,\n linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org,\n linux-media@vger.kernel.org, linux-pci@vger.kernel.org,\n linux-renesas-soc@vger.kernel.org, linux-riscv@lists.infradead.org,\n linux-rockchip@lists.infradead.org, linux-samsung-soc@vger.kernel.org,\n linux-scsi@vger.kernel.org, linux-sunxi@lists.linux.dev,\n linux-tegra@vger.kernel.org, linux-usb@vger.kernel.org,\n netdev@vger.kernel.org, spacemit@lists.linux.dev,\n UNGLinuxDriver@microchip.com, Abhinav Kumar <abhinav.kumar@linux.dev>,\n Alexandre Belloni <alexandre.belloni@bootlin.com>,\n Alim Akhtar <alim.akhtar@samsung.com>,\n =?utf-8?q?Andr=C3=A9_Draszik?= <andre.draszik@linaro.org>,\n Andrew Lunn <andrew+netdev@lunn.ch>, Andrzej Hajda <andrzej.hajda@intel.com>,\n Andy Yan <andy.yan@rock-chips.com>, Bart Van Assche <bvanassche@acm.org>,\n Bjorn Helgaas <bhelgaas@google.com>, Can Guo <quic_cang@quicinc.com>,\n Chanho Park <chanho61.park@samsung.com>, Chen-Yu Tsai <wens@kernel.org>,\n Claudiu Beznea <claudiu.beznea@tuxon.dev>,\n Damien Le Moal <dlemoal@kernel.org>,\n Daniel Machon <daniel.machon@microchip.com>,\n David Airlie <airlied@gmail.com>, \"David S. Miller\" <davem@davemloft.net>,\n Dmitry Baryshkov <lumag@kernel.org>, Eric Dumazet <edumazet@google.com>,\n Fabio Estevam <festevam@gmail.com>, Frank Li <Frank.Li@nxp.com>,\n Geert Uytterhoeven <geert+renesas@glider.be>,\n Greg Kroah-Hartman <gregkh@linuxfoundation.org>, =?utf-8?q?Heiko_St=C3=BCbn?=\n\t=?utf-8?q?er?= <heiko@sntech.de>, Inki Dae <inki.dae@samsung.com>,\n Jagan Teki <jagan@amarulasolutions.com>, Jakub Kicinski <kuba@kernel.org>,\n \"James E.J. Bottomley\" <James.Bottomley@HansenPartnership.com>,\n JC Kuo <jckuo@nvidia.com>, Jernej Skrabec <jernej.skrabec@gmail.com>,\n Jessica Zhang <jesszhan0024@gmail.com>, Joe Perches <joe@perches.com>,\n Johan Hovold <johan+linaro@kernel.org>, Jonas Karlman <jonas@kwiboo.se>,\n Jonathan Hunter <jonathanh@nvidia.com>,\n Kevin Xie <kevin.xie@starfivetech.com>,\n Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>, =?utf-8?q?Krzys?=\n\t=?utf-8?q?ztof_Wilczy=C5=84ski?= <kwilczynski@kernel.org>,\n Laurent Pinchart <Laurent.pinchart@ideasonboard.com>,\n Linus Walleij <linusw@kernel.org>, Lorenzo Pieralisi <lpieralisi@kernel.org>,\n Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,\n Magnus Damm <magnus.damm@gmail.com>, Manivannan Sadhasivam <mani@kernel.org>,\n Marc Kleine-Budde <mkl@pengutronix.de>,\n Marek Szyprowski <m.szyprowski@samsung.com>,\n Marijn Suijten <marijn.suijten@somainline.org>,\n Markus Schneider-Pargmann <msp@baylibre.com>,\n \"Martin K. Petersen\" <martin.petersen@oracle.com>,\n Mathias Nyman <mathias.nyman@intel.com>,\n Mauro Carvalho Chehab <mchehab@kernel.org>,\n Maxime Ripard <mripard@kernel.org>, Michael Dege <michael.dege@renesas.com>,\n Nicolas Ferre <nicolas.ferre@microchip.com>,\n Niklas Cassel <cassel@kernel.org>, Nitin Rawat <quic_nitirawa@quicinc.com>,\n Paolo Abeni <pabeni@redhat.com>,\n Pengutronix Kernel Team <kernel@pengutronix.de>,\n Peter Chen <peter.chen@kernel.org>, Peter Griffin <peter.griffin@linaro.org>,\n Rob Clark <robin.clark@oss.qualcomm.com>, Robert Foss <rfoss@kernel.org>,\n Rob Herring <robh@kernel.org>,\n \"Russell King (Oracle)\" <rmk+kernel@armlinux.org.uk>,\n Samuel Holland <samuel@sholland.org>, Sandy Huang <hjc@rock-chips.com>,\n Sascha Hauer <s.hauer@pengutronix.de>, Sean Paul <sean@poorly.run>,\n Sebastian Reichel <sre@kernel.org>, Shawn Guo <shawn.guo@linaro.org>,\n Shawn Lin <shawn.lin@rock-chips.com>, Simona Vetter <simona@ffwll.ch>,\n Steen Hegelund <Steen.Hegelund@microchip.com>,\n Thierry Reding <thierry.reding@gmail.com>,\n Thinh Nguyen <Thinh.Nguyen@synopsys.com>,\n Thomas Zimmermann <tzimmermann@suse.de>,\n Tudor Ambarus <tudor.ambarus@linaro.org>,\n Vincent Mailhol <mailhol@kernel.org>, Xu Yang <xu.yang_2@nxp.com>,\n Yixun Lan <dlan@kernel.org>,\n Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>","Subject":"[PATCH v8 phy-next 00/31] Split Generic PHY consumer and provider API","Date":"Tue,  5 May 2026 13:04:52 +0300","Message-Id":"<20260505100523.1922388-1-vladimir.oltean@nxp.com>","X-Mailer":"git-send-email 2.34.1","Content-Type":"text/plain; charset=UTF-8","Content-Transfer-Encoding":"8bit","X-ClientProxiedBy":"AS4P189CA0053.EURP189.PROD.OUTLOOK.COM\n (2603:10a6:20b:659::17) To AM9PR04MB8585.eurprd04.prod.outlook.com\n (2603:10a6:20b:438::13)","Precedence":"bulk","X-Mailing-List":"linux-pci@vger.kernel.org","List-Id":"<linux-pci.vger.kernel.org>","List-Subscribe":"<mailto:linux-pci+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-pci+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","X-MS-PublicTrafficType":"Email","X-MS-TrafficTypeDiagnostic":"AM9PR04MB8585:EE_|PA1PR04MB11083:EE_","X-MS-Office365-Filtering-Correlation-Id":"32d10a31-6c1c-4dea-8324-08deaa8dd656","X-LD-Processed":"686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr","X-MS-Exchange-SenderADCheck":"1","X-MS-Exchange-AntiSpam-Relay":"0","X-Microsoft-Antispam":"\n BCL:0;ARA:13230040|376014|1800799024|19092799006|366016|7416014|18002099003|56012099003;","X-Microsoft-Antispam-Message-Info":"\n qqyk4WYl69RifxbCVyOYl8tusN6jsgnsDCA0/2YMk7PO5hlhSi4a8GXfaCHVZ6Dc7Fj+iY+jtQrpwCR/pTxZ1i/TKyJ+iAsPpGV1jdlLNcBotXd8HqapvthjbS7QrNO71yNvvOufgAhh+tGjJFfys0IsBcne51BOJ3CZz7hi+PFkChqLo30HJFxrD/VHMXa+VJYwm6//5UxWH+yliilOj3w+AEfUKnUqDn2vtoWEf3HQhh/t7eq7jU0RdigF1b+BXonvpyav+Qx8yZhr2DM9VGNH06Y1sycgVfL8NeOPLy1tGckcUyD5CQNdLLgU9vAi6zQdVE3+zFai7XLmap4NKUzYbVbbxlJg60dd4YKZqG505uQvtPR0hTg+mJZML/2sL0qi6wkeCv1S1BVGQ5Pe6RjEDCFTsHoNXskN/OSvWsfHb5QmJaQocDxpgThwG70qROBu2bt4Wf4iSSHckn9iNkFfIGdU67YeNXnNa3MGTCDHYWLr2dgNoL4pkTgX8TkhE5C4AsdlAfUe7tcXdG8jH3+WRp9RnsZhlU0qOsTTa0X2yi4PIT4BEEh+OPEsAwD+GtaIBQBZEwXm52V9tCOAnIArCmWFZwrwZyVOYczWvxPfabk+uBvec8QMxwEBq3CpCmY0ElFFyeERtkS6yzNUUMJoNFnZU6mz6z648SehqJQ+fdZUXZr7k17rpUCzj+yn7J5jLlgUNrIzwSH4W7OYKA==","X-Forefront-Antispam-Report":"\n CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM9PR04MB8585.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(19092799006)(366016)(7416014)(18002099003)(56012099003);DIR:OUT;SFP:1101;","X-MS-Exchange-AntiSpam-MessageData-ChunkCount":"1","X-MS-Exchange-AntiSpam-MessageData-0":"=?utf-8?q?UGP7NgAirl60cDfPs3YJ1W4jofeE?=\n\t=?utf-8?q?QPN8chGjjEcYYnTqUjmAhvI7Nw0Qrj08MBkI3xzUnf8sN42dvPEuj0nufnr32FndL?=\n\t=?utf-8?q?8T69tS3egrw5C9A7NWVwaQwSD6bO4Or8TJON/ZbvZSgqxaqDhZLSs/xxjQ28shlmy?=\n\t=?utf-8?q?oRQBqm9DB9dJhnavP6AJISrYliV/QCD26JPbmF9ISCv/Zcq5D2oM6ku1Xk9VHQgFJ?=\n\t=?utf-8?q?LJUAmahyT62h049EPCjzn6muCtmtnAMVUPwvXJ5sMnVbs/a0+bk5PChk0Umc5ZLKU?=\n\t=?utf-8?q?KNrATr9JnC9SnY7laJK7KKaBnWAtUxbpv0gYFJ9bKNkn78E99a5oaXneRYiorV5Cw?=\n\t=?utf-8?q?OWXaJR/L3aMTEePKpSM8fT5iKG8UtC2levLy6P1hhSC1zHTInVFFRxLfCpJr3icOJ?=\n\t=?utf-8?q?zbhNJJEUd/IEwlQVzqIaVr7wJuxTgfPjU+h5g6rQR/1OTWZczv6oxUPw7aNJc5QRo?=\n\t=?utf-8?q?I8YyjAPTb5VW3v48F5+tl3HiA8c/6MYfi+pOYJBbyhGTT5CyqWzxYgxZO/7o0+QO6?=\n\t=?utf-8?q?2ETwmYHkp5Ru1jRePlFbzig7ePXz6Ky6l5AJh6hdgzPTL82Nd0213szVvbWRtQr4u?=\n\t=?utf-8?q?D62K7835t2C4Iulh+nvFYJ8Q/uhlFWUSs9pCVCg3CkGsd6SaMJox/9ZpXcNploK5r?=\n\t=?utf-8?q?Rj9SoCnOyrnShIJWwbqkAOK9AO0kJ56KgSSCacTTR9x9mDtC5GsuFJbYhsDxEIgs5?=\n\t=?utf-8?q?u4OBw5cqtqs3L9bpHL/FxJt3v3iGGSiuY4P/TWCoBBLN1X0HKpHMkKjjBqTJCRT6N?=\n\t=?utf-8?q?87AnzkQ85472qiZVkIuPamkYyyqD9DOSL9dZhmU3ZG6CaSKy2p+sxIYrMK/88fmoh?=\n\t=?utf-8?q?08mExduhC27olG70IzHQAGdf5DilirW7c+J7Bn4VKoO/yr7PspqGit/fpjSoNqm7/?=\n\t=?utf-8?q?YRF0EINIU7oryrYvDpymJeKfTzAbd9N5W7AN3xMhxANmhicXWTDTJQdc2AozzzUPF?=\n\t=?utf-8?q?1C40vAOE5bMGYkbZncRqDSuUwx+DE9njcZRHKaoewv6nEy5rwt8YaVSX4KFERyIRN?=\n\t=?utf-8?q?dAT46h1EtQGqudkCwCCJCr/oIxAZDff8HHLDdow+v7nv013TOHbtrcCnrSl1tmEoo?=\n\t=?utf-8?q?2VjMsvWNilD1xYHCVXtdXLRXM5as6/Pdc492CPiluYOvgyLua3ZvwlIcn05DHIBDD?=\n\t=?utf-8?q?yE4s0YlcvzL9HWHyYCkOfI91HuS9u4jufKJh8VbRW6J3wtjPGqTy4EEFsC1ES2lWk?=\n\t=?utf-8?q?vFdgyNh2r0yKYjNSUdEVks6JtUd/UzUK0likiluwGaMU9fsf7rPr4zsOS6P2t+0aS?=\n\t=?utf-8?q?OUaN+5ImfUa857+Vfutl67nnnCMzWLeafrb/iDw/KbsK7RVvzkuqD0fK2g0amCVPg?=\n\t=?utf-8?q?NNS4CcaLmkrKFibnRG2+C8YtJbJKorYFGOzwJXupQErBCJOBI9l6/zzk/AC33OZew?=\n\t=?utf-8?q?qXAjNoEyvxrIrEvcwxF7g7mTsfQuTTEF9LnM2EM5KPvgTEz8Yc4bPDkNdVKgFQcq/?=\n\t=?utf-8?q?9JeFiSRCiZBc+OGT80pgnwyovo6o+4U7Do+I61yk78FTHuJbCID3C5PFV24TO5BWC?=\n\t=?utf-8?q?Nmy0Q05veBAWS4ZIW26KTQ5KJZZxv11Ud610sVsTAYsTdhGwxf8hjrPdUe+l7EZH6?=\n\t=?utf-8?q?PE8p18ld0E308Ec+bnCgKMvsxtofn6M2xAnjjdBc0sLF+MSaYL4/9Mu9K9xjTzg9p?=\n\t=?utf-8?q?PbVcqdVFgmz0xi1f9cw19Oeb7iMHGznA=3D=3D?=","X-OriginatorOrg":"nxp.com","X-MS-Exchange-CrossTenant-Network-Message-Id":"\n 32d10a31-6c1c-4dea-8324-08deaa8dd656","X-MS-Exchange-CrossTenant-AuthSource":"AM9PR04MB8585.eurprd04.prod.outlook.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"05 May 2026 10:05:30.2969\n (UTC)","X-MS-Exchange-CrossTenant-FromEntityHeader":"Hosted","X-MS-Exchange-CrossTenant-Id":"686ea1d3-bc2b-4c6f-a92c-d99c5c301635","X-MS-Exchange-CrossTenant-MailboxType":"HOSTED","X-MS-Exchange-CrossTenant-UserPrincipalName":"\n VL8jQbtg/WrYiHB3MTqbPQxj8qOVjoyGLWXEx8yv4lVic8kErny9v+y2AB4gWsKMJunR4iVY7HxJMUlIHEs3RQ==","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"PA1PR04MB11083"},"content":"The biggest problem requiring this split is the fact that consumer\ndrivers poke around in struct phy, accessing fields which shouldn't be\nvisible to them. Follow the example of mux, gpio, iio, spi offload,\npwrsec, pinctrl and regulator, which each expose separate headers for\nconsumers and providers.\n\nSome off-list discussions were had with Vinod Koul regarding the 3 PHY\nproviders outside the drivers/phy/ subsystem. It was agreed that it is\ndesirable to relocate them to drivers/phy/, rather than to publish\nphy-provider.h to include/linux/phy/ for liberal use. Only phy.h and\n(new) phy-props.h - consumer-facing headers - stay there.\n\nThe hope is that developers get a hint when they need to include the\nwrong header to get their job done.\n\nIf that fails, patch 31/31 adds a regex in the MAINTAINERS entry that\nensures linux-phy is copied on all Generic PHY patches, for an extra set\nof eyes.\n\nRequested merge strategy, I hope this works for everyone:\n- Subsystem maintainers ACK their affected portions\n- Entire series goes through linux-phy/next (v7.1-rc1)\n- linux-phy provides stable tag\n- (optionally, but recommended) Said tag is merged back into affected\n  subsystem 'next' branches. Those who strongly prefer can handle merge\n  conflicts when they send their PR. But this series unexports a lot of\n  stuff from <linux/phy/phy.h> which may cause breakage if still used\n  later, directly or not, in other subsystems.\n\nDetailed change log in patches, summary below.\n\nv7->v8:\n- new \"[PATCH v8 phy-next 01/31] PCI: cadence: Preserve all error codes\n  in cdns_plat_pcie_probe()\" to fix pre-existing issue found by Sashiko\n- bring commit message details more in line with actual code changes\n  (reported by Sashiko)\n- completely rewrote Exynos UFS patch (10/31), introducing new\n  phy_request_bus_width() consumer API (also updated regex pattern in\n  MAINTAINERS). Issues with previous approach\n  reported by Sashiko.\n- completely rewrote Qualcomm UFS patches, included 3 untested changes\n  previously sent to Manivannan Sadhasivam during v5\n- move ulpi_phy.h from include/linux/phy/ to drivers/phy/\n- make \"struct phy *\" argument const for new phy_get_max_link_rate() API\n  function, but not for existing API functions. From Geert Uytterhoeven.\n- updated all patches to clarify that phy_set_bus_width() is intended as\n  a provider-only function.\n- Bug fixes pointed out by Sashiko in Tegra XUDC and XUSB drivers\n- expanded CC list coverage for UFS changes\nv6->v7:\n- \"[PATCH v6 phy-next 15/28] drm/msm/dp: remove debugging prints with\n  internal struct phy state\" merged separately:\n  https://lore.kernel.org/linux-phy/okmmblz53sdgjwduiszsyo5l2hcqnxm3xq5yojbi6uxp7kmojm@jaz2a34av7ww/#t\n- rebase onto v7.1-rc1\n- fix new fallout in drivers/usb/dwc3/dwc3-imx.c (patch 04/31) due to\n  crossing paths with new driver\nv5->v6:\n- new patch 14/31 to avoid build breakage in ufs-qcom.c for armv7\n- expanded CC list coverage\nv4->v5:\n- fix additional compilation breakage caught by better build coverage.\n  PCI patch 02/27 received an extra change for pcie-spacemit-k1.c,\n  patch 10/27 (for ufs-qcom.c) is new, so are 12/27 and 13/27 for Tegra\n  USB (host and gadget)\nv3->v4:\n- fix build breakage in drivers/phy/qualcomm/phy-qcom-ipq806x-sata.c and\n  include/linux/phy/tegra/xusb.h added by patch 22/24\nv2->v3:\n- remove unused variable in PCI after device link removal\n- update MAINTAINERS regex pattern to escape forward slashes\n- add more people to CC list\n- provide conflict resolution\nv1->v2:\n- split \"phy: include PHY provider header\" into smaller chunks to work\n  around mailing list moderation due to patch size\n- improve MAINTAINERS regex pattern\n- make all PHY attribute helpers NULL-tolerant. Not just the new\n  phy_get_bus_width(), but also retroactively, the existing ones.\n- fixed the temporary include path from <linux/phy/phy.h> to\n  \"phy-provider.h\", removed anyway by the end of the series\n- logical bug fixes in the PCI controller <-> PHY device link removal\n  and Exynos UFS PHY API rework\n\nIn case anyone wants to test the series, here it is on top of linux-phy/next:\nhttps://github.com/vladimiroltean/linux/tree/phy-split-consumer-provider-v8\n\nv7 at:\nhttps://lore.kernel.org/linux-phy/20260430110652.558622-1-vladimir.oltean@nxp.com/\nv6 at:\nhttps://lore.kernel.org/linux-phy/20260327184706.1600329-1-vladimir.oltean@nxp.com/\nv5 at:\nhttps://lore.kernel.org/linux-phy/20260319223241.1351137-1-vladimir.oltean@nxp.com/\nv4 at:\nhttps://lore.kernel.org/linux-phy/20260317230500.2056077-1-vladimir.oltean@nxp.com/\nv3 at:\nhttps://lore.kernel.org/linux-phy/20260309190842.927634-1-vladimir.oltean@nxp.com/\nv2 at:\nhttps://lore.kernel.org/linux-phy/20260308114009.2546587-1-vladimir.oltean@nxp.com/\nv1 at:\nhttps://lore.kernel.org/linux-phy/20260304175735.2660419-13-vladimir.oltean@nxp.com/\n\nCc: Abhinav Kumar <abhinav.kumar@linux.dev>\nCc: Alexandre Belloni <alexandre.belloni@bootlin.com>\nCc: Alim Akhtar <alim.akhtar@samsung.com>\nCc: \"André Draszik\" <andre.draszik@linaro.org>\nCc: Andrew Lunn <andrew+netdev@lunn.ch>\nCc: Andrzej Hajda <andrzej.hajda@intel.com>\nCc: Andy Yan <andy.yan@rock-chips.com>\nCc: Bart Van Assche <bvanassche@acm.org>\nCc: Bjorn Helgaas <bhelgaas@google.com>\nCc: Can Guo <quic_cang@quicinc.com>\nCc: Chanho Park <chanho61.park@samsung.com>\nCc: Chen-Yu Tsai <wens@kernel.org>\nCc: Claudiu Beznea <claudiu.beznea@tuxon.dev>\nCc: Damien Le Moal <dlemoal@kernel.org>\nCc: Daniel Machon <daniel.machon@microchip.com>\nCc: David Airlie <airlied@gmail.com>\nCc: \"David S. Miller\" <davem@davemloft.net>\nCc: Dmitry Baryshkov <lumag@kernel.org>\nCc: Eric Dumazet <edumazet@google.com>\nCc: Fabio Estevam <festevam@gmail.com>\nCc: Frank Li <Frank.Li@nxp.com>\nCc: Geert Uytterhoeven <geert+renesas@glider.be>\nCc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nCc: \"Heiko Stübner\" <heiko@sntech.de>\nCc: Inki Dae <inki.dae@samsung.com>\nCc: Jagan Teki <jagan@amarulasolutions.com>\nCc: Jakub Kicinski <kuba@kernel.org>\nCc: \"James E.J. Bottomley\" <James.Bottomley@HansenPartnership.com>\nCc: JC Kuo <jckuo@nvidia.com>\nCc: Jernej Skrabec <jernej.skrabec@gmail.com>\nCc: Jessica Zhang <jesszhan0024@gmail.com>\nCc: Joe Perches <joe@perches.com>\nCc: Johan Hovold <johan+linaro@kernel.org>\nCc: Jonas Karlman <jonas@kwiboo.se>\nCc: Jonathan Hunter <jonathanh@nvidia.com>\nCc: Kevin Xie <kevin.xie@starfivetech.com>\nCc: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>\nCc: \"Krzysztof Wilczyński\" <kwilczynski@kernel.org>\nCc: Laurent Pinchart <Laurent.pinchart@ideasonboard.com>\nCc: Linus Walleij <linusw@kernel.org>\nCc: Lorenzo Pieralisi <lpieralisi@kernel.org>\nCc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>\nCc: Magnus Damm <magnus.damm@gmail.com>\nCc: Manivannan Sadhasivam <mani@kernel.org>\nCc: Marc Kleine-Budde <mkl@pengutronix.de>\nCc: Marek Szyprowski <m.szyprowski@samsung.com>\nCc: Marijn Suijten <marijn.suijten@somainline.org>\nCc: Markus Schneider-Pargmann <msp@baylibre.com>\nCc: \"Martin K. Petersen\" <martin.petersen@oracle.com>\nCc: Mathias Nyman <mathias.nyman@intel.com>\nCc: Mauro Carvalho Chehab <mchehab@kernel.org>\nCc: Maxime Ripard <mripard@kernel.org>\nCc: Michael Dege <michael.dege@renesas.com>\nCc: Neil Armstrong <neil.armstrong@linaro.org>\nCc: Nicolas Ferre <nicolas.ferre@microchip.com>\nCc: Niklas Cassel <cassel@kernel.org>\nCc: Nitin Rawat <quic_nitirawa@quicinc.com>\nCc: Paolo Abeni <pabeni@redhat.com>\nCc: Pengutronix Kernel Team <kernel@pengutronix.de>\nCc: Peter Chen <peter.chen@kernel.org>\nCc: Peter Griffin <peter.griffin@linaro.org>\nCc: Rob Clark <robin.clark@oss.qualcomm.com>\nCc: Robert Foss <rfoss@kernel.org>\nCc: Rob Herring <robh@kernel.org>\nCc: \"Russell King (Oracle)\" <rmk+kernel@armlinux.org.uk>\nCc: Samuel Holland <samuel@sholland.org>\nCc: Sandy Huang <hjc@rock-chips.com>\nCc: Sascha Hauer <s.hauer@pengutronix.de>\nCc: Sean Paul <sean@poorly.run>\nCc: Sebastian Reichel <sre@kernel.org>\nCc: Shawn Guo <shawn.guo@linaro.org>\nCc: Shawn Lin <shawn.lin@rock-chips.com>\nCc: Simona Vetter <simona@ffwll.ch>\nCc: Steen Hegelund <Steen.Hegelund@microchip.com>\nCc: Thierry Reding <thierry.reding@gmail.com>\nCc: Thinh Nguyen <Thinh.Nguyen@synopsys.com>\nCc: Thomas Zimmermann <tzimmermann@suse.de>\nCc: Tudor Ambarus <tudor.ambarus@linaro.org>\nCc: Vincent Mailhol <mailhol@kernel.org>\nCc: Xu Yang <xu.yang_2@nxp.com>\nCc: Yixun Lan <dlan@kernel.org>\nCc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>\n\nVladimir Oltean (31):\n  PCI: cadence: Preserve all error codes in cdns_plat_pcie_probe()\n  ata: add <linux/pm_runtime.h> where missing\n  PCI: Add missing headers transitively included by <linux/phy/phy.h>\n  usb: add missing headers transitively included by <linux/phy/phy.h>\n  drm: add <linux/pm_runtime.h> where missing\n  phy: add <linux/pm_runtime.h> where missing\n  phy: spacemit: include missing <linux/phy/phy.h>\n  net: lan969x: include missing <linux/of.h>\n  PCI: Remove device links to PHY\n  scsi: ufs: exynos: use dedicated API for updating PHY bus width\n  scsi: ufs: qcom: call phy_init() before phy_power_on()\n  scsi: ufs: qcom: make use of QMP PHY dynamic gear switching ability\n  scsi: ufs: qcom: keep separate track of PHY power state\n  scsi: ufs: qcom: include missing <linux/interrupt.h>\n  drm/rockchip: dw_hdmi: avoid direct dereference of phy->dev.of_node\n  usb: host: tegra: avoid direct dereference of phy->dev.of_node\n  usb: gadget: tegra-xudc: avoid direct dereference of phy->dev.of_node\n  phy: move provider API out of public <linux/phy/phy.h>\n  phy: make phy_get_mode(), phy_get_bus_width() NULL tolerant\n  phy: introduce phy_get_max_link_rate() helper for consumers\n  drm/rockchip: dsi: include PHY provider header\n  drm: bridge: cdns-mhdp8546: use consumer API for getting PHY bus width\n  media: sunxi: a83-mips-csi2: include PHY provider header\n  net: renesas: rswitch: include PHY provider header\n  pinctrl: tegra-xusb: include PHY provider header\n  power: supply: cpcap-charger: include missing <linux/property.h>\n  phy: move ulpi_phy.h from include/linux/phy/ to drivers/phy/\n  phy: include PHY provider header (1/2)\n  phy: include PHY provider header (2/2)\n  phy: remove temporary provider compatibility from consumer header\n  MAINTAINERS: add regexes for linux-phy\n\n MAINTAINERS                                   |  12 +\n drivers/ata/ahci.c                            |   1 +\n drivers/ata/ahci_brcm.c                       |   1 +\n drivers/ata/ahci_ceva.c                       |   1 +\n drivers/ata/ahci_qoriq.c                      |   1 +\n drivers/ata/libahci.c                         |   1 +\n .../drm/bridge/analogix/analogix_dp_core.c    |   1 +\n .../drm/bridge/cadence/cdns-mhdp8546-core.c   |   7 +-\n drivers/gpu/drm/bridge/nwl-dsi.c              |   1 +\n drivers/gpu/drm/bridge/samsung-dsim.c         |   1 +\n drivers/gpu/drm/bridge/synopsys/dw-dp.c       |   2 +-\n drivers/gpu/drm/msm/dp/dp_aux.c               |   1 +\n drivers/gpu/drm/rockchip/cdn-dp-core.c        |   1 +\n .../gpu/drm/rockchip/dw-mipi-dsi-rockchip.c   |   1 +\n drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c   |  25 +-\n .../sun8i-a83t-mipi-csi2/sun8i_a83t_dphy.c    |   2 +-\n drivers/net/can/at91_can.c                    |   3 +-\n drivers/net/can/flexcan/flexcan-core.c        |   3 +-\n drivers/net/can/m_can/m_can_platform.c        |   3 +-\n drivers/net/can/rcar/rcar_canfd.c             |   3 +-\n .../microchip/sparx5/lan969x/lan969x_rgmii.c  |   1 +\n drivers/net/ethernet/renesas/rswitch_main.c   |   1 +\n .../controller/cadence/pcie-cadence-plat.c    |   6 +-\n drivers/pci/controller/cadence/pcie-cadence.c |  16 +-\n drivers/pci/controller/cadence/pcie-cadence.h |   2 -\n drivers/pci/controller/dwc/pci-dra7xx.c       |  16 -\n drivers/pci/controller/dwc/pci-keystone.c     |  32 +-\n drivers/pci/controller/dwc/pcie-dw-rockchip.c |   1 +\n drivers/pci/controller/dwc/pcie-histb.c       |   1 +\n drivers/pci/controller/dwc/pcie-qcom-ep.c     |   1 +\n drivers/pci/controller/dwc/pcie-spacemit-k1.c |   3 +\n drivers/pci/controller/dwc/pcie-tegra194.c    |   1 +\n drivers/pci/controller/pci-tegra.c            |   1 +\n drivers/pci/controller/pcie-rockchip-host.c   |   1 +\n drivers/pci/controller/plda/pcie-starfive.c   |   1 +\n drivers/phy/allwinner/phy-sun4i-usb.c         |   3 +-\n drivers/phy/allwinner/phy-sun50i-usb3.c       |   3 +-\n drivers/phy/allwinner/phy-sun6i-mipi-dphy.c   |   4 +-\n drivers/phy/allwinner/phy-sun9i-usb.c         |   3 +-\n drivers/phy/amlogic/phy-meson-axg-mipi-dphy.c |   2 +\n .../amlogic/phy-meson-axg-mipi-pcie-analog.c  |   3 +-\n drivers/phy/amlogic/phy-meson-axg-pcie.c      |   2 +\n .../amlogic/phy-meson-g12a-mipi-dphy-analog.c |   3 +-\n drivers/phy/amlogic/phy-meson-g12a-usb2.c     |   3 +-\n .../phy/amlogic/phy-meson-g12a-usb3-pcie.c    |   3 +-\n drivers/phy/amlogic/phy-meson-gxl-usb2.c      |   3 +-\n drivers/phy/amlogic/phy-meson8-hdmi-tx.c      |   3 +-\n drivers/phy/amlogic/phy-meson8b-usb2.c        |   3 +-\n drivers/phy/apple/atc.c                       |   3 +-\n drivers/phy/broadcom/phy-bcm-cygnus-pcie.c    |   3 +-\n drivers/phy/broadcom/phy-bcm-kona-usb2.c      |   3 +-\n drivers/phy/broadcom/phy-bcm-ns-usb2.c        |   3 +-\n drivers/phy/broadcom/phy-bcm-ns-usb3.c        |   3 +-\n drivers/phy/broadcom/phy-bcm-ns2-pcie.c       |   3 +-\n drivers/phy/broadcom/phy-bcm-ns2-usbdrd.c     |   3 +-\n drivers/phy/broadcom/phy-bcm-sr-pcie.c        |   3 +-\n drivers/phy/broadcom/phy-bcm-sr-usb.c         |   3 +-\n drivers/phy/broadcom/phy-bcm63xx-usbh.c       |   3 +-\n drivers/phy/broadcom/phy-brcm-sata.c          |   3 +-\n drivers/phy/broadcom/phy-brcm-usb.c           |   2 +-\n drivers/phy/cadence/cdns-dphy-rx.c            |   3 +-\n drivers/phy/cadence/cdns-dphy.c               |   4 +-\n drivers/phy/cadence/phy-cadence-salvo.c       |   3 +-\n drivers/phy/cadence/phy-cadence-sierra.c      |   3 +-\n drivers/phy/cadence/phy-cadence-torrent.c     |   3 +-\n drivers/phy/canaan/phy-k230-usb.c             |   3 +-\n drivers/phy/eswin/phy-eic7700-sata.c          |   3 +-\n .../phy/freescale/phy-fsl-imx8-mipi-dphy.c    |   3 +-\n drivers/phy/freescale/phy-fsl-imx8m-pcie.c    |   4 +-\n drivers/phy/freescale/phy-fsl-imx8mq-usb.c    |   3 +-\n drivers/phy/freescale/phy-fsl-imx8qm-hsio.c   |   6 +-\n .../phy/freescale/phy-fsl-imx8qm-lvds-phy.c   |   3 +-\n drivers/phy/freescale/phy-fsl-lynx-28g.c      |   3 +-\n drivers/phy/hisilicon/phy-hi3660-usb3.c       |   3 +-\n drivers/phy/hisilicon/phy-hi3670-pcie.c       |   3 +-\n drivers/phy/hisilicon/phy-hi3670-usb3.c       |   3 +-\n drivers/phy/hisilicon/phy-hi6220-usb.c        |   3 +-\n drivers/phy/hisilicon/phy-hisi-inno-usb2.c    |   3 +-\n drivers/phy/hisilicon/phy-histb-combphy.c     |   3 +-\n drivers/phy/hisilicon/phy-hix5hd2-sata.c      |   3 +-\n drivers/phy/ingenic/phy-ingenic-usb.c         |   3 +-\n drivers/phy/intel/phy-intel-keembay-emmc.c    |   3 +-\n drivers/phy/intel/phy-intel-keembay-usb.c     |   3 +-\n drivers/phy/intel/phy-intel-lgm-combo.c       |   4 +-\n drivers/phy/intel/phy-intel-lgm-emmc.c        |   3 +-\n drivers/phy/lantiq/phy-lantiq-rcu-usb2.c      |   3 +-\n drivers/phy/lantiq/phy-lantiq-vrx200-pcie.c   |   4 +-\n drivers/phy/marvell/phy-armada375-usb2.c      |   3 +-\n drivers/phy/marvell/phy-armada38x-comphy.c    |   3 +-\n drivers/phy/marvell/phy-berlin-sata.c         |   3 +-\n drivers/phy/marvell/phy-berlin-usb.c          |   3 +-\n drivers/phy/marvell/phy-mmp3-hsic.c           |   3 +-\n drivers/phy/marvell/phy-mmp3-usb.c            |   3 +-\n drivers/phy/marvell/phy-mvebu-a3700-comphy.c  |   3 +-\n drivers/phy/marvell/phy-mvebu-a3700-utmi.c    |   3 +-\n drivers/phy/marvell/phy-mvebu-cp110-comphy.c  |   3 +-\n drivers/phy/marvell/phy-mvebu-cp110-utmi.c    |   3 +-\n drivers/phy/marvell/phy-mvebu-sata.c          |   3 +-\n drivers/phy/marvell/phy-pxa-28nm-hsic.c       |   3 +-\n drivers/phy/marvell/phy-pxa-28nm-usb2.c       |   3 +-\n drivers/phy/marvell/phy-pxa-usb.c             |   3 +-\n drivers/phy/mediatek/phy-mtk-dp.c             |   3 +-\n drivers/phy/mediatek/phy-mtk-hdmi-mt8195.c    |   1 -\n drivers/phy/mediatek/phy-mtk-hdmi.h           |   3 +-\n drivers/phy/mediatek/phy-mtk-mipi-csi-0-5.c   |   2 +-\n drivers/phy/mediatek/phy-mtk-mipi-dsi.h       |   3 +-\n drivers/phy/mediatek/phy-mtk-pcie.c           |   2 +-\n drivers/phy/mediatek/phy-mtk-tphy.c           |   2 +-\n drivers/phy/mediatek/phy-mtk-ufs.c            |   2 +-\n drivers/phy/mediatek/phy-mtk-xfi-tphy.c       |   2 +-\n drivers/phy/mediatek/phy-mtk-xsphy.c          |   2 +-\n drivers/phy/microchip/lan966x_serdes.c        |   4 +-\n drivers/phy/microchip/sparx5_serdes.c         |   2 +-\n drivers/phy/motorola/phy-cpcap-usb.c          |   3 +-\n drivers/phy/motorola/phy-mapphone-mdm6600.c   |   5 +-\n drivers/phy/mscc/phy-ocelot-serdes.c          |   3 +-\n drivers/phy/nuvoton/phy-ma35d1-usb2.c         |   3 +-\n drivers/phy/phy-airoha-pcie.c                 |   2 +-\n drivers/phy/phy-can-transceiver.c             |   3 +-\n drivers/phy/phy-core-mipi-dphy.c              |   4 +-\n drivers/phy/phy-core.c                        |  80 +++\n drivers/phy/phy-google-usb.c                  |   4 +-\n drivers/phy/phy-lpc18xx-usb-otg.c             |   3 +-\n drivers/phy/phy-nxp-ptn3222.c                 |   3 +-\n drivers/phy/phy-pistachio-usb.c               |   4 +-\n drivers/phy/phy-provider.h                    | 263 +++++++++\n drivers/phy/phy-snps-eusb2.c                  |   2 +\n drivers/phy/phy-xgene.c                       |   3 +-\n drivers/phy/qualcomm/phy-ath79-usb.c          |   3 +-\n drivers/phy/qualcomm/phy-qcom-apq8064-sata.c  |   3 +-\n drivers/phy/qualcomm/phy-qcom-edp.c           |   3 +-\n .../phy/qualcomm/phy-qcom-eusb2-repeater.c    |   3 +-\n drivers/phy/qualcomm/phy-qcom-ipq4019-usb.c   |   3 +-\n drivers/phy/qualcomm/phy-qcom-ipq806x-sata.c  |   3 +-\n drivers/phy/qualcomm/phy-qcom-ipq806x-usb.c   |   3 +-\n drivers/phy/qualcomm/phy-qcom-m31-eusb2.c     |   2 +\n drivers/phy/qualcomm/phy-qcom-m31.c           |   3 +-\n drivers/phy/qualcomm/phy-qcom-pcie2.c         |   3 +-\n drivers/phy/qualcomm/phy-qcom-qmp-combo.c     |   4 +-\n .../phy/qualcomm/phy-qcom-qmp-pcie-msm8996.c  |   3 +-\n drivers/phy/qualcomm/phy-qcom-qmp-pcie.c      |   3 +-\n drivers/phy/qualcomm/phy-qcom-qmp-ufs.c       |   9 +-\n .../phy/qualcomm/phy-qcom-qmp-usb-legacy.c    |   4 +-\n drivers/phy/qualcomm/phy-qcom-qmp-usb.c       |   4 +-\n drivers/phy/qualcomm/phy-qcom-qmp-usbc.c      |   4 +-\n drivers/phy/qualcomm/phy-qcom-qusb2.c         |   5 +-\n drivers/phy/qualcomm/phy-qcom-sgmii-eth.c     |   3 +-\n drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c |   4 +-\n .../phy/qualcomm/phy-qcom-uniphy-pcie-28lp.c  |   3 +-\n drivers/phy/qualcomm/phy-qcom-usb-hs-28nm.c   |   3 +-\n drivers/phy/qualcomm/phy-qcom-usb-hs.c        |   3 +-\n drivers/phy/qualcomm/phy-qcom-usb-hsic.c      |   3 +-\n drivers/phy/qualcomm/phy-qcom-usb-ss.c        |   3 +-\n drivers/phy/ralink/phy-mt7621-pci.c           |   3 +-\n drivers/phy/ralink/phy-ralink-usb.c           |   3 +-\n drivers/phy/realtek/phy-rtk-usb2.c            |   3 +-\n drivers/phy/realtek/phy-rtk-usb3.c            |   3 +-\n drivers/phy/renesas/phy-rcar-gen2.c           |   3 +-\n drivers/phy/renesas/phy-rcar-gen3-pcie.c      |   4 +-\n drivers/phy/renesas/phy-rcar-gen3-usb2.c      |   3 +-\n drivers/phy/renesas/phy-rcar-gen3-usb3.c      |   3 +-\n drivers/phy/renesas/phy-rzg3e-usb3.c          |   3 +-\n drivers/phy/renesas/r8a779f0-ether-serdes.c   |   4 +-\n drivers/phy/rockchip/phy-rockchip-dp.c        |   3 +-\n drivers/phy/rockchip/phy-rockchip-dphy-rx0.c  |   3 +-\n drivers/phy/rockchip/phy-rockchip-emmc.c      |   3 +-\n .../phy/rockchip/phy-rockchip-inno-csidphy.c  |   3 +-\n .../phy/rockchip/phy-rockchip-inno-dsidphy.c  |   4 +-\n drivers/phy/rockchip/phy-rockchip-inno-hdmi.c |   4 +-\n drivers/phy/rockchip/phy-rockchip-inno-usb2.c |   3 +-\n .../rockchip/phy-rockchip-naneng-combphy.c    |   3 +-\n drivers/phy/rockchip/phy-rockchip-pcie.c      |   2 +-\n .../phy/rockchip/phy-rockchip-samsung-dcphy.c |   3 +-\n .../phy/rockchip/phy-rockchip-samsung-hdptx.c |   4 +-\n .../phy/rockchip/phy-rockchip-snps-pcie3.c    |   3 +-\n drivers/phy/rockchip/phy-rockchip-typec.c     |   5 +-\n drivers/phy/rockchip/phy-rockchip-usb.c       |   3 +-\n drivers/phy/rockchip/phy-rockchip-usbdp.c     |   3 +-\n drivers/phy/samsung/phy-exynos-dp-video.c     |   3 +-\n drivers/phy/samsung/phy-exynos-mipi-video.c   |   3 +-\n drivers/phy/samsung/phy-exynos-pcie.c         |   3 +-\n drivers/phy/samsung/phy-exynos4210-usb2.c     |   3 +-\n drivers/phy/samsung/phy-exynos4x12-usb2.c     |   3 +-\n drivers/phy/samsung/phy-exynos5-usbdrd.c      |   2 +\n drivers/phy/samsung/phy-exynos5250-sata.c     |   3 +-\n drivers/phy/samsung/phy-exynos5250-usb2.c     |   3 +-\n drivers/phy/samsung/phy-s5pv210-usb2.c        |   3 +-\n drivers/phy/samsung/phy-samsung-ufs.c         |  29 +-\n drivers/phy/samsung/phy-samsung-ufs.h         |   3 +-\n drivers/phy/samsung/phy-samsung-usb2.c        |   3 +-\n drivers/phy/samsung/phy-samsung-usb2.h        |   3 +-\n drivers/phy/socionext/phy-uniphier-ahci.c     |   3 +-\n drivers/phy/socionext/phy-uniphier-pcie.c     |   3 +-\n drivers/phy/socionext/phy-uniphier-usb2.c     |   3 +-\n drivers/phy/socionext/phy-uniphier-usb3hs.c   |   3 +-\n drivers/phy/socionext/phy-uniphier-usb3ss.c   |   3 +-\n drivers/phy/sophgo/phy-cv1800-usb2.c          |   3 +-\n drivers/phy/spacemit/phy-k1-pcie.c            |   4 +-\n drivers/phy/spacemit/phy-k1-usb2.c            |   2 +\n drivers/phy/st/phy-miphy28lp.c                |   4 +-\n drivers/phy/st/phy-spear1310-miphy.c          |   3 +-\n drivers/phy/st/phy-spear1340-miphy.c          |   3 +-\n drivers/phy/st/phy-stih407-usb.c              |   3 +-\n drivers/phy/st/phy-stm32-combophy.c           |   3 +-\n drivers/phy/st/phy-stm32-usbphyc.c            |   3 +-\n drivers/phy/starfive/phy-jh7110-dphy-rx.c     |   3 +-\n drivers/phy/starfive/phy-jh7110-dphy-tx.c     |   3 +-\n drivers/phy/starfive/phy-jh7110-pcie.c        |   3 +-\n drivers/phy/starfive/phy-jh7110-usb.c         |   3 +-\n drivers/phy/sunplus/phy-sunplus-usb2.c        |   3 +-\n drivers/phy/tegra/phy-tegra194-p2u.c          |   3 +-\n drivers/phy/tegra/xusb-tegra124.c             |   2 +-\n drivers/phy/tegra/xusb-tegra186.c             |   2 +-\n drivers/phy/tegra/xusb-tegra210.c             |   2 +-\n drivers/phy/tegra/xusb.c                      |   2 +-\n drivers/phy/ti/phy-am654-serdes.c             |   3 +-\n drivers/phy/ti/phy-da8xx-usb.c                |   3 +-\n drivers/phy/ti/phy-dm816x-usb.c               |   3 +-\n drivers/phy/ti/phy-gmii-sel.c                 |   3 +-\n drivers/phy/ti/phy-omap-usb2.c                |   3 +-\n drivers/phy/ti/phy-ti-pipe3.c                 |   3 +-\n drivers/phy/ti/phy-tusb1210.c                 |   4 +-\n drivers/phy/ti/phy-twl4030-usb.c              |   3 +-\n {include/linux => drivers}/phy/ulpi_phy.h     |   2 +-\n drivers/phy/xilinx/phy-zynqmp.c               |   4 +-\n drivers/pinctrl/tegra/pinctrl-tegra-xusb.c    |   2 +-\n drivers/power/supply/cpcap-charger.c          |   1 +\n drivers/ufs/host/ufs-exynos.c                 | 114 ++--\n drivers/ufs/host/ufs-exynos.h                 |   1 +\n drivers/ufs/host/ufs-qcom.c                   |  99 ++--\n drivers/ufs/host/ufs-qcom.h                   |   1 +\n drivers/usb/chipidea/ci_hdrc_imx.c            |   1 +\n drivers/usb/core/hcd.c                        |   1 +\n drivers/usb/dwc3/dwc3-generic-plat.c          |   1 +\n drivers/usb/dwc3/dwc3-imx.c                   |   1 +\n drivers/usb/dwc3/gadget.c                     |   1 +\n drivers/usb/gadget/udc/tegra-xudc.c           |  43 +-\n drivers/usb/host/xhci-tegra.c                 |  43 +-\n include/linux/phy/phy-props.h                 |  75 +++\n include/linux/phy/phy-sun4i-usb.h             |   2 +-\n include/linux/phy/phy.h                       | 497 ++++--------------\n include/linux/phy/tegra/xusb.h                |   1 +\n 242 files changed, 1188 insertions(+), 799 deletions(-)\n create mode 100644 drivers/phy/phy-provider.h\n rename {include/linux => drivers}/phy/ulpi_phy.h (96%)\n create mode 100644 include/linux/phy/phy-props.h"}