Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2217237/?format=api
{ "id": 2217237, "url": "http://patchwork.ozlabs.org/api/patches/2217237/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-ide/patch/20260327184706.1600329-14-vladimir.oltean@nxp.com/", "project": { "id": 13, "url": "http://patchwork.ozlabs.org/api/projects/13/?format=api", "name": "Linux IDE development", "link_name": "linux-ide", "list_id": "linux-ide.vger.kernel.org", "list_email": "linux-ide@vger.kernel.org", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260327184706.1600329-14-vladimir.oltean@nxp.com>", "list_archive_url": null, "date": "2026-03-27T18:46:51", "name": "[v6,phy-next,13/28] usb: host: tegra: avoid direct dereference of phy->dev.of_node", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "45dd3b1b425e544d7d1dc43dbc6fd27a223b4bc0", "submitter": { "id": 75582, "url": "http://patchwork.ozlabs.org/api/people/75582/?format=api", "name": "Vladimir Oltean", "email": "vladimir.oltean@nxp.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linux-ide/patch/20260327184706.1600329-14-vladimir.oltean@nxp.com/mbox/", "series": [ { "id": 497820, "url": "http://patchwork.ozlabs.org/api/series/497820/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-ide/list/?series=497820", "date": "2026-03-27T18:46:39", "name": "Split Generic PHY consumer and provider", "version": 6, "mbox": "http://patchwork.ozlabs.org/series/497820/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2217237/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2217237/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "\n <linux-ide+bounces-5371-incoming=patchwork.ozlabs.org@vger.kernel.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "linux-ide@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=lTv9BMyg;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-ide+bounces-5371-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=\"lTv9BMyg\"", "smtp.subspace.kernel.org;\n arc=fail smtp.client-ip=52.101.84.49", "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 tor.lore.kernel.org (tor.lore.kernel.org\n [IPv6:2600:3c04:e001:36c::12fc:5321])\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 4fj9226b52z1y1P\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 28 Mar 2026 06:00:10 +1100 (AEDT)", "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id 4266630B51A8\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 27 Mar 2026 18:52:45 +0000 (UTC)", "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 9580839D6D0;\n\tFri, 27 Mar 2026 18:49:08 +0000 (UTC)", "from DB3PR0202CU003.outbound.protection.outlook.com\n (mail-northeuropeazon11010049.outbound.protection.outlook.com [52.101.84.49])\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 A24DE396B9B;\n\tFri, 27 Mar 2026 18:49:06 +0000 (UTC)", "from DU2PR04MB8584.eurprd04.prod.outlook.com (2603:10a6:10:2db::24)\n by GV1PR04MB9515.eurprd04.prod.outlook.com (2603:10a6:150:24::6) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Fri, 27 Mar\n 2026 18:49:01 +0000", "from DU2PR04MB8584.eurprd04.prod.outlook.com\n ([fe80::3f9d:4a01:f53c:952d]) by DU2PR04MB8584.eurprd04.prod.outlook.com\n ([fe80::3f9d:4a01:f53c:952d%5]) with mapi id 15.20.9745.019; Fri, 27 Mar 2026\n 18:49:00 +0000" ], "ARC-Seal": [ "i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1774637348; cv=fail;\n b=B/+t4bxB/548zOTBBLzuWFSJyubEbbwR2poByHDYjo6h4/22MLqi3sHYXg7mAEOCXk3vj7qjSe6aSuAYKmdVSwppEboL+8QpGAIQRM6x4UOLGKAcrRJs5sUBrIladpXv2cMR+5HqT7viqq9BFXr2bvEWAT5OObCcQeTm1tcO3CM=", "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=yAP+RmPi+8qLYYmEfqhFdiAnAbiPfKeOHinikM/+lDkY0/E8tOMdogB7z4ae+/kI+3fmnoW7kjzHIP0kJNr+wW+EEszgEX6HhigPd3k4aF558N+RkqeIZoB+d1dq+Aqd6oy2l4rxvhZblT0TTzkdnh8aXtxtHjNA1sFUhDsVpdaIVX6XgOBwd//ik4ppMBr45GcEhf5bhvNUA7HF63I4nT1XdAI5VpXMhI8eYVseQnlefxEr8j8yR0QtqVicQ3HxarnPEDConuOmTgzFAS6aTxWs7tOuBZ9hA6iKYIyp/sLpqnoYHWbXvQyktC4shX9mEEItvGKVrHoWbhbMqtNlBw==" ], "ARC-Message-Signature": [ "i=2; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1774637348; c=relaxed/simple;\n\tbh=yWu7uuuHULUSp+20Dei2NjEcFIGY5BDwgOfeZTWCHD4=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t Content-Type:MIME-Version;\n b=igeQb4A31lNQ4u9IbtPZGaupAzNJYQLECvsOKLeGCPWHxjV6fv/o2PI76QaDxajnRJAcqSj78y2m7XrP1irAkraW77lxkGGzO9s1w0H2s6oX77hhwNU3V+6lc8ZmGaUgf9d8G7kkewUiuEz67DqBXSkS0uJJwn5rubMEhOTPpsY=", "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=XJHQIdxatGSBOKq1fCo05grOTfGAB4Wg90ZlPx2X9IM=;\n b=Ivk1Vj7mBJAdhAjp9oA7WPvUL0k+LeByOlDfDTi6PDm73XyB2qqdOz0IvVJqyeQ7lpthD5U/XIPIRfqH00em7c6DRS/y6yBRWCz0GUmFO3l5VNIfux0V+xJVvsL8E67Zn0E84A/k/bkalAv74tL3jDFudLKKlMIZNcv17+uz8eWSJ5M7FVDA2OyEzyr1kOaA8kSlnS2AASnRTBsCicuDiryo9/L1Zkf7Bctm4M21+k/Qb8RLPbvGFB7e/GBs+M+HC42YK1TMT100Y89jsgxA2aOTejD9UTkQeAKFtQH+3Jp8V+x3szGE/ML+dSJfMrE3ZM8M5vGll4qybuevQwn98Q==" ], "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=lTv9BMyg; arc=fail smtp.client-ip=52.101.84.49", "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=XJHQIdxatGSBOKq1fCo05grOTfGAB4Wg90ZlPx2X9IM=;\n b=lTv9BMygZZaB762kAs5DcQdsvGaPV5uKA3B0VwwNh1X9X5ocJUfpoa++G+9saTLIU+QN9Cgg9CGA3+y7rXQwXciYJaqtY4usq6pAWB95nS9z0hmoOlx7zsppPh6+bWeXL1yEP3MS/gmXz6WkMyIlJLWq49/rk1B+OSlmBj2ARDjRc6y0wM/FBAvoVGhLuHQ0YIeIzwTUjUuYQ2Hmh+eKmS+3iZcfmT9jW3BF5SajmAmr/ZVH/wFHEtxghfHkElgRgjMWvdayZ0/5M9FhlraWpJAdP9cIReJfugYrV8kHR3p/3uvZYVt/fNKUZjptOjJnKwyFIAngRvpCNTJg/dWnuQ==", "From": "Vladimir Oltean <vladimir.oltean@nxp.com>", "To": "linux-phy@lists.infradead.org", "Cc": "Vinod Koul <vkoul@kernel.org>,\n\tNeil Armstrong <neil.armstrong@linaro.org>,\n\tdri-devel@lists.freedesktop.org,\n\tfreedreno@lists.freedesktop.org,\n\tlinux-arm-kernel@lists.infradead.org,\n\tlinux-arm-msm@vger.kernel.org,\n\tlinux-can@vger.kernel.org,\n\tlinux-gpio@vger.kernel.org,\n\tlinux-ide@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org,\n\tlinux-media@vger.kernel.org,\n\tlinux-pci@vger.kernel.org,\n\tlinux-renesas-soc@vger.kernel.org,\n\tlinux-riscv@lists.infradead.org,\n\tlinux-rockchip@lists.infradead.org,\n\tlinux-samsung-soc@vger.kernel.org,\n\tlinux-scsi@vger.kernel.org,\n\tlinux-sunxi@lists.linux.dev,\n\tlinux-tegra@vger.kernel.org,\n\tlinux-usb@vger.kernel.org,\n\tnetdev@vger.kernel.org,\n\tspacemit@lists.linux.dev,\n\tUNGLinuxDriver@microchip.com,\n\tGreg Kroah-Hartman <gregkh@linuxfoundation.org>,\n\tJC Kuo <jckuo@nvidia.com>,\n\tJohan Hovold <johan+linaro@kernel.org>,\n\tJonathan Hunter <jonathanh@nvidia.com>,\n\tMathias Nyman <mathias.nyman@intel.com>,\n\tThierry Reding <thierry.reding@gmail.com>", "Subject": "[PATCH v6 phy-next 13/28] usb: host: tegra: avoid direct dereference\n of phy->dev.of_node", "Date": "Fri, 27 Mar 2026 20:46:51 +0200", "Message-ID": "<20260327184706.1600329-14-vladimir.oltean@nxp.com>", "X-Mailer": "git-send-email 2.43.0", "In-Reply-To": "<20260327184706.1600329-1-vladimir.oltean@nxp.com>", "References": "<20260327184706.1600329-1-vladimir.oltean@nxp.com>", "Content-Transfer-Encoding": "8bit", "Content-Type": "text/plain", "X-ClientProxiedBy": "VI6PEPF0000022D.AUTP296.PROD.OUTLOOK.COM\n (2603:10a6:808:1::8e7) To DU2PR04MB8584.eurprd04.prod.outlook.com\n (2603:10a6:10:2db::24)", "Precedence": "bulk", "X-Mailing-List": "linux-ide@vger.kernel.org", "List-Id": "<linux-ide.vger.kernel.org>", "List-Subscribe": "<mailto:linux-ide+subscribe@vger.kernel.org>", "List-Unsubscribe": "<mailto:linux-ide+unsubscribe@vger.kernel.org>", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "DU2PR04MB8584:EE_|GV1PR04MB9515:EE_", "X-MS-Office365-Filtering-Correlation-Id": "d5bb4a42-f2cc-41b2-105b-08de8c3182bb", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "\n\tBCL:0;ARA:13230040|10070799003|7416014|376014|366016|1800799024|19092799006|56012099003|18002099003|22082099003;", "X-Microsoft-Antispam-Message-Info": "\n\txY1l7aFTeNUm7FNH9tDLJygXQPn4VZ2bLR96AaSj4B6kfsQA6Tk/v1/MlqeRe0MYb+H9NMbc0byBHwUaNc1pPXL0QmGlT6vhE9chhdO4dbYzmFyU38OKlJSsxtkFksX/vGDuu+w0yeyCZUhsEq/+jq1ZY/0oO/wrXuEn/hJlYHCNUCufqvT0xKe4eN141zXEm5+37kH8+fD+S/k9dnZaqn/zvPA6CA/oF3g8E8c/+O8k/0AkSDQu6U6YfM8mRPmmtmE3/VBP++IoNPJMma7HxyDpBwqe1T1seb77qN2O+wn2owYkXSXTTUrhiM37NHbRKFAGk7Fm04nuF1J+WoGTcTXxZ9zKL2DJw8yiW5jcnALpDOXZhnx/JPIYm970KwHIpGuZvl4uWoW4wPi+nB2TzR3DjrJINVNRi3hB+LeuoTMwGNRuNYGjFS2ebc+fQDyqawUfqxtsAM/yuur2P+Re/N45tNt2Q49GALCCLQONn+gEcYJkPJ+1wcAg81tOdR1Zohq8BdH64a8ifNTY6rf+Qn5K9SFdmtvfCSXdRu37fq1OrHxPQ4l0b0fZgPhWcjkaodjkdfNPV9JyyiRrW9AC4uRntKr3jQc1vfLqBo9C5qP9KQwGYsQqNm3g+CT/E4iZGIcgDPBYEcFZWFjGQ6QiMGOZ6SAFIxIieq/yDOzsi30+fcDbbzYHs/UY+ZyGR2ezX98ObR9BHIoejixiFEAN5JbU45dbOd08pTWraMgAcig=", "X-Forefront-Antispam-Report": "\n\tCIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8584.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(10070799003)(7416014)(376014)(366016)(1800799024)(19092799006)(56012099003)(18002099003)(22082099003);DIR:OUT;SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "2", "X-MS-Exchange-AntiSpam-MessageData-0": "\n 3kuVTH5isJjtXFcjLfHmUPHZVYTJwe0pdRhYSCLbJLoF8eHWx2xjGcih42l6IXUSivaw1PXH6wPwb1gIxIIanvrKSkXpFRdoRk5qm5ZXGvX0JOoaX64ZZ/phdW1wGBb/5h3eAGXO8bgorJnSA2AxacH+MquXXb0PWlPo8PowOxRrknq224okZChuPShV23YIXmTKSIlffzAJF5I8ejr8Ax6U2Ax20VHWBQnUN+vHKJYUP8xH8FA4dlllNDVLb8vaW1U5s5b3o9DFbKM9Lw2zpa0mFQQnX1d3EqZwhpG1neEDLWe8fX0m+ybmNwRer/0Uww2c6BBYFh0+c64zMWYGwiU3O2DnKnBHf5q6tk8OQPBHqlVPDT42eMOi70JYVyZ/1WBVtkbl+c0aWmWaLXxjXasxUDRoEfMxUXnwhkU1LqAV8XeyXhsZ5db+0HYBYmKaw2RvFA3BlL87XpBJoW9CHCv8IE0qN45ZeaFF0UwY3PY/MDBSxy00evxfDXSxkz06O2y7jg+57h82ot5BCI9msGgGf3O8FAkmNdWjHkvAUCEv5aS/vIcrDfs3jw5gWBtxFfY6KeXdJORb0hV3Z2JJ8trXmmHq4PWdrhH4/O5zCPX7TnpD68ut6XKe4JMVjvvom/y6zTLdLCmBVfcOPP8/1gJGEIakvJrrSCaw9zOdd/o0qX1C9JHYsP2OhtaFBxDpJ5JNjng/84KOnqPO48J3DhkP/zF3Fip2tTQZOdBIzSrxuwVoweSv6OFLvPpCm71FupAcxWr7bqRp3NE1LbBecy+SoRpoiZKT3IzjQr27sADXX8j1/BMZEr+3hw52MgBozVHxNcfqWwtwG0+BsouzWge440kOTKlnubq7QDvdJMjpNqmEaHFoEOisXUVeVHwjBHLGqIuOrIfWrd5xJPH/BGQLFgjwt3+D5wrSKlNNwVfV81giBlPIGI07A+JQPxGX/NDlENru9gHG6Hb+rU2Mzsjz57HK//3T4sCvk81Dy6FwGL13vuh5qKYTi2P6WEK0KunJFdnUKQ2RajS02DSGcTzfxyK60zJYRseSsLdxVhU+HvKy8wE9HkrQDdzUwVZUWB99svPtpD181nY9et0fki/3aGuoSvY5YJVXs9EfafHtIzNC/88tUPecvon1D8eIKOKtd2EYNMNbG1uYOxZl1W6w0afurrw5deWTfECe6DVHFqIb5agdkZjcrzLwohTSnTC4xYQxt40P9BvdE9KWioqwSL/KazDqQODoYBJ46lbVKAvTDn/5XPaDmdqwbh0TumLTW4+jcgkMlXeG24bmaMIunRttX3HkyyJuVejFhD34LbxTLYeMhWVkxdQBVHCyiDxQo9LsMDhudLOtQaTACb/pH8f5NP5SF4HLU0ztVnU3PEuQWSGj5FlWuWk72NXGu5UAK74cm4RODOIkJBUML6eyS8F5DJmIHmTA0N/BoPCqM+Bif5qSjx8rW3QPoJLUBNd/M1Af0pVeP9EiribIEHCVDpZLJjTYWW1BC+cHRt4inhkvW2qouk/CMyhHrhD7PJPEt+pdxbuPME9j5/7MB2TnzI8zEsbn+iuIpoWVxhhKxF7kpDRZ5d8mXJaYiGpOBV+MT8O+80CMlt1w3KgaOLpR5A1/iojyiqHGQI7wMgIDQ5mqSVLKZF3mbl7btpPZR1W90mdYEES7Pvrok2qtJabp8L1USkSHa3+IG0ZhnHlTvGrZ/JVAPM+sXP9HdgV9eGP/2YpPhTs4OFWfMaMwUJmq1V2QIJbdXnXp5Hm6Iezp18/EJbub0/7g9WjuwJZg1PglVfHe", "X-MS-Exchange-AntiSpam-MessageData-1": "ROMaaScYYHgBAsZW9q3mwm6eTzy+XK3/iAY=", "X-OriginatorOrg": "nxp.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n d5bb4a42-f2cc-41b2-105b-08de8c3182bb", "X-MS-Exchange-CrossTenant-AuthSource": "DU2PR04MB8584.eurprd04.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "27 Mar 2026 18:49:00.8684\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 L6W2X22ZCBkBcPzVVWy6sr4wwLQeAQ+NSrZJT7tcOv/BRPDGGvDFuY7HTi2S5JcgDppHcFE9sCgw03mZNAZpgA==", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "GV1PR04MB9515" }, "content": "A piece of context which seems relevant here is that the USB subsystem\nis transitioning from struct usb_phy to struct phy (belonging to the\nGeneric PHY subsystem). Commit 1a229d8690a0 (\"Revert \"usb: phy: add usb\nphy notify port status API\"\") seems to confirm that this is the case.\n\nIn the transition process, some PHY provider drivers register themselves\nas both Generic PHY and USB PHY in an attempt to bridge the API gap.\nSuch is the case with drivers/phy/tegra/xusb.c, accessed here by the\nTegra USB host driver. This USB host expects the PHY device behind the\nGeneric PHY to also be a USB PHY, and calls\ndevm_usb_get_phy_by_node(phy->dev.of_node).\n\nThe Generic PHY exposes no API to get the OF node from a PHY device, so\nthe Tegra USB host driver gets it directly. However, \"struct phy\" will\nbe made an opaque pointer, to avoid misuse, so this will no longer be\npossible.\n\nConsidering the fact that the Generic PHY/USB PHY duality is a\ntransitional state, I am deliberately not planning to make the life of\nthis driver any easier by providing a helper to get to the OF node\nsomehow. Instead, implement a parallel lookup path through which the\nTegra USB host driver can continue to get to the OF node provided by the\npadctl component, using the 'phys' phandle.\n\nSecondly (minor issue) the driver uses the phy->dev.of_node again to\nprint using dev_dbg() that a \"remote wake\" was detected. Just print the\nindex at which the PHY appears inside the driver's tegra->phys[] array\ninstead.\n\nSigned-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>\n---\nCc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nCc: JC Kuo <jckuo@nvidia.com>\nCc: Johan Hovold <johan+linaro@kernel.org>\nCc: Jonathan Hunter <jonathanh@nvidia.com>\nCc: Mathias Nyman <mathias.nyman@intel.com>\nCc: Thierry Reding <thierry.reding@gmail.com>\n\nv5->v6: none\nv4->v5: patch is new\n---\n drivers/usb/host/xhci-tegra.c | 42 ++++++++++++++++++++++-------------\n 1 file changed, 26 insertions(+), 16 deletions(-)", "diff": "diff --git a/drivers/usb/host/xhci-tegra.c b/drivers/usb/host/xhci-tegra.c\nindex 3f6aa2440b05..46fee219e09a 100644\n--- a/drivers/usb/host/xhci-tegra.c\n+++ b/drivers/usb/host/xhci-tegra.c\n@@ -1495,6 +1495,7 @@ static int tegra_xhci_id_notify(struct notifier_block *nb,\n \n static int tegra_xusb_init_usb_phy(struct tegra_xusb *tegra)\n {\n+\tstruct device_node *np = dev_of_node(tegra->dev);\n \tunsigned int i;\n \n \ttegra->usbphy = devm_kcalloc(tegra->dev, tegra->num_usb_phys,\n@@ -1508,23 +1509,33 @@ static int tegra_xusb_init_usb_phy(struct tegra_xusb *tegra)\n \ttegra->otg_usb3_port = -EINVAL;\n \n \tfor (i = 0; i < tegra->num_usb_phys; i++) {\n-\t\tstruct phy *phy = tegra_xusb_get_phy(tegra, \"usb2\", i);\n+\t\tstruct of_phandle_args args;\n+\t\tstruct usb_phy *usbphy;\n+\t\tint index, err;\n+\t\tchar prop[8];\n \n-\t\tif (!phy)\n+\t\tsnprintf(prop, sizeof(prop), \"usb2-%d\", i);\n+\n+\t\t/*\n+\t\t * usb-phy is optional, continue if it's not available.\n+\t\t */\n+\t\tindex = of_property_match_string(np, \"phy-names\", prop);\n+\t\tif (index < 0)\n \t\t\tcontinue;\n \n-\t\ttegra->usbphy[i] = devm_usb_get_phy_by_node(tegra->dev,\n-\t\t\t\t\t\t\tphy->dev.of_node,\n-\t\t\t\t\t\t\t&tegra->id_nb);\n-\t\tif (!IS_ERR(tegra->usbphy[i])) {\n-\t\t\tdev_dbg(tegra->dev, \"usbphy-%d registered\", i);\n-\t\t\totg_set_host(tegra->usbphy[i]->otg, &tegra->hcd->self);\n-\t\t} else {\n-\t\t\t/*\n-\t\t\t * usb-phy is optional, continue if its not available.\n-\t\t\t */\n-\t\t\ttegra->usbphy[i] = NULL;\n-\t\t}\n+\t\terr = of_parse_phandle_with_args(np, \"phys\", \"#phy-cells\",\n+\t\t\t\t\t\t index, &args);\n+\t\tif (err)\n+\t\t\tcontinue;\n+\n+\t\tusbphy = devm_usb_get_phy_by_node(tegra->dev, args.np,\n+\t\t\t\t\t\t &tegra->id_nb);\n+\t\tif (IS_ERR(usbphy))\n+\t\t\tcontinue;\n+\n+\t\ttegra->usbphy[i] = usbphy;\n+\t\tdev_dbg(tegra->dev, \"usbphy-%d registered\", i);\n+\t\totg_set_host(tegra->usbphy[i]->otg, &tegra->hcd->self);\n \t}\n \n \treturn 0;\n@@ -2172,8 +2183,7 @@ static void tegra_xhci_disable_phy_wake(struct tegra_xusb *tegra)\n \t\t\tcontinue;\n \n \t\tif (tegra_xusb_padctl_remote_wake_detected(padctl, tegra->phys[i]))\n-\t\t\tdev_dbg(tegra->dev, \"%pOF remote wake detected\\n\",\n-\t\t\t\ttegra->phys[i]->dev.of_node);\n+\t\t\tdev_dbg(tegra->dev, \"PHY %d remote wake detected\\n\", i);\n \n \t\ttegra_xusb_padctl_disable_phy_wake(padctl, tegra->phys[i]);\n \t}\n", "prefixes": [ "v6", "phy-next", "13/28" ] }