From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 97057CD343A for ; Tue, 5 May 2026 10:07:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=OBpE8qH8hDR80Jw3aVFsGyWhSusiObychzb63Vn1+1c=; b=ycPJ1EaG6DeRpj KblJaRihD6o/rOque6NJGgFPwNvOz39LKeR53nbmyp6JIw+yby13ar0vnVHw6OxWH0mPtlQkxRCgs jbs1Yq1zAmvQIauAaaTp6fOAEzaS30QMhuVNEzm6QwHvBkvZphz54uPgfdnt2RVePVPKFyb4heGJn Jh7MyMakijC/G6/c70kFBAkuejoGO2iyZIbx5MYHegaGQshGO5UtOMQEY3k0+zF9w3RJ0rL8DFb7/ RAzMbEnZ1lehYb6hqNT53qH9HmnyvFSTQNwsUed6/tdLTG56Lxu6GljBkJ/fHxYBtWzBB7MbxnbVS BAaRR2R8Zre7QwuuWjJw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1wKCgb-0000000FmyX-3ysR; Tue, 05 May 2026 10:07:29 +0000 Received: from desiato.infradead.org ([2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1wKCfi-0000000FlfK-1A6b; Tue, 05 May 2026 10:06:34 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=MIME-Version:Content-Type: Content-Transfer-Encoding:References:In-Reply-To:Message-Id:Date:Subject:Cc: To:From:Sender:Reply-To:Content-ID:Content-Description; bh=wZ+isOtDBiGdaQngxwM8TQfr9FS5ZBf0bZ6sYC0op/c=; b=OHApo/Z0m33rZqfMm/xQKAKzaq FtzoFwv09OJJzgvGcOUi8VakASqgfPH72a88Fw6Kwtjri1Y6vk1fVlLIv+k6jy3d6JysIGqhlllCb +Re1zgNSxoxLezw18z8rQ1aesclqRr68K4nKpdBXkIuu2wYq9bVxT8OXKkAIEDcxSqFNlB9yVpBiC zAIFvZbyroyFA48vSAFdbAug6HPPS7JEqyWLjMhhsr+nQd4A+6H68LUmLhBmWDpendkulDU06CVfx yKWiC1+hC/3mao8LVI1U9tCKzKYHDs7Uy2yOagoFwSa9llYyZTqg7oMRQOKoybS2kKn0La/xOcmlg u8e8vxPA==; Received: from mail-norwayeastazon11013038.outbound.protection.outlook.com ([40.107.159.38] helo=OSPPR02CU001.outbound.protection.outlook.com) by desiato.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1wKCfd-0000000D7jp-3pFw; Tue, 05 May 2026 10:06:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=KnufvZLsCxODLLbbqgfwlwnH8mfKSHpAZyCW4vijBaG3Px72k00zp4lOkOe00LCO5gXdhIGWL269E7nKBEuux1vKzzJw5tMWhWetC9AbGk0+khPDhvUMgUNBeaC8uqkOjflfVHmyzZccJLMIMtl4vp7VozTPzuaGgTPCp/dHCz5BioBKXsZqGJQ+QSmvTPXf204JLoUrISwZ5uvNTGK0MvtjNwhBn0hHVH5P4ZgcnS8Cdtxlg7PISiYN3eiohkJwOktuj1TlVQOVqOt2RZom1U54XYu7uG4ll139djnKYxG7R90gw/yWcoAIGSj3WGdyH9wVhDlBRMG1ri5UoG7eyw== 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=wZ+isOtDBiGdaQngxwM8TQfr9FS5ZBf0bZ6sYC0op/c=; b=SBPCcXT82m9avpCK4ae+sGH9l+8JJJaQoF0X6fd4fltUeqgUgvvdmsxt1NE7f/Wba/taud49dybRhWEK5ygI+C95n3d68wLzIC2EXuG+zfVyiM66bS3kjVsxRDxLvDnMzxIrbyhtV60p6AbRrL4oOGQIEbY9N4Vr+Nko19jQKtTeWoEq1PMxyd04ITLBQ4DxKmd1Kt0ZLRCuzvKzKa27AyH9QptSn9OWkrxLwnNwlz6as5lLfOTGPA1fCCEx2u2ZOJ1cSBBe8SYFZnDIXl9NwN9pDbGegGL9zC86BR8J2OyUgQQHVESw1jlSmXRel8V0Jpqu5+0vyMCcnqCd1W6eIg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wZ+isOtDBiGdaQngxwM8TQfr9FS5ZBf0bZ6sYC0op/c=; b=MFN1WmdVshKNOyKNArnKkrVRHeTFbU5zssha7inKz5Dp6FrUcLaPUJNSohwLRXMoUS5ZISWHP2L2uPmiBe0T8EUJssg2OKVrF8ibpsTHPlCC4RjYPQ8VIICA2EUv3kiW8air+sgmzO5H01Qs0O3/dQzq5cnvH0xGfyUT/zjNlnvI+e/B55YT3wXN6nedyQcQm0zVr8TLxCw4aljp9gk3OVPYfScE5L3auMNYXMerd05tfVJKZa3DEGNrhFCBpPZFsiRLpiq9kW2OI25s7sKWAtGF8TYor5hVKN09cVIXY9dE1UzVLZ1kpbw6Y7VaQEBkrdoUAOcLFSCe6QzO2gL1RA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AM9PR04MB8585.eurprd04.prod.outlook.com (2603:10a6:20b:438::13) by DB9PR04MB8363.eurprd04.prod.outlook.com (2603:10a6:10:24b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Tue, 5 May 2026 10:06:18 +0000 Received: from AM9PR04MB8585.eurprd04.prod.outlook.com ([fe80::f010:fca8:7ef:62f4]) by AM9PR04MB8585.eurprd04.prod.outlook.com ([fe80::f010:fca8:7ef:62f4%4]) with mapi id 15.20.9870.023; Tue, 5 May 2026 10:06:18 +0000 From: Vladimir Oltean To: linux-phy@lists.infradead.org Cc: Vinod Koul , Neil Armstrong , dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-can@vger.kernel.org, linux-gpio@vger.kernel.org, linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-pci@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-riscv@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-scsi@vger.kernel.org, linux-sunxi@lists.linux.dev, linux-tegra@vger.kernel.org, linux-usb@vger.kernel.org, netdev@vger.kernel.org, spacemit@lists.linux.dev, UNGLinuxDriver@microchip.com Subject: [PATCH v8 phy-next 19/31] phy: make phy_get_mode(), phy_get_bus_width() NULL tolerant Date: Tue, 5 May 2026 13:05:11 +0300 Message-Id: <20260505100523.1922388-20-vladimir.oltean@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260505100523.1922388-1-vladimir.oltean@nxp.com> References: <20260505100523.1922388-1-vladimir.oltean@nxp.com> X-ClientProxiedBy: FR2P281CA0091.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9b::10) To AM9PR04MB8585.eurprd04.prod.outlook.com (2603:10a6:20b:438::13) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM9PR04MB8585:EE_|DB9PR04MB8363:EE_ X-MS-Office365-Filtering-Correlation-Id: c7fb6cf6-0481-4c47-edab-08deaa8df368 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|19092799006|7416014|366016|22082099003|18002099003|56012099003; X-Microsoft-Antispam-Message-Info: /a//P5nBkCfqnRvVoqVpEyuC2uK6kRuN/SjgLATqCvebQvEexUyjif9ijWqEKYaxrGUhM4FLdD8r8+Jh50358uAnl7fFI5vSseQ7CZeMUz3n756j2SMTjW+sWqnip4I+LsRBR27Es03rLM+c3wcRQugrJ1TjCUDKJMYac+MbklMkXjmxy/BToGgysu5Yv13jxZpxRkvnFVmxFruIutWRWsrK9c0pVhAKWj+OdFalxhFBIRXU4nnjdyEVitG4nK6rQCy8ZrxqbRY4ve4yMU9eztI4RDisK/669z2oQOOFuCZoqzs0AsNNxd6wSH57NvZ8WlY0Z8l5upgtkSGlAx2NyHBmkJiGg2W7NX+JbaBxI5pawSkb3walqpkidvxlj6gSjw4XC1FTDsrEo6qiOK0gP70yhYmSTGvch91yQHaAz3waeXjQ2YyTEQIHKsHbgN2PQF+Kd3kYWq7YP9w/8M5VJsME+HcJm4ovQl4YPAXA8gdgXU37Nxlik/t+CLZY1Sv6SDQRlHAJ6c7piG0DrujWQzR0GpvSxH199vQfgk9qLUHsk0Vvxkyh3kn07NoJrNOu5pd8tSvBYSvBB6pKaojLW5tVRNtsIlL285IG28/Tk80wxgcsnAvmWBcUy5Sga/26K2jR3LpDuLJmkb/1Djgkz87n9BtQthMq6NP1kIAbRzzEmc62UVZaKUVGKuc2ms5f X-Forefront-Antispam-Report: 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)(7416014)(366016)(22082099003)(18002099003)(56012099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?LCHm9hycUvjg0wZUFoqWtudJSUf2D7ImSw+SvVUQMxk2AS3PfdcUXzfjwAhg?= =?us-ascii?Q?sWkDb/SD/bRcEk/kVDdhz0+SeFIQNSCa1bckQRgQkMsf2ocN9YfDqD7X1g3r?= =?us-ascii?Q?HqZ7In9vKlnb7AvA+W1VHDn/wADnOnvkD52qnIqeC3vXehfHbIgtO2K+RzdI?= =?us-ascii?Q?gEHl94ANpM9OdtkER4PYzXwM6yUbzuj2J/i9XKuhv8vWSkecESmmSHV2N0CO?= =?us-ascii?Q?/bEsjAJG46EAX/+BHkq9uIWnUAWIyVyJet2snb9ekOlJ7/x0x+y3wmoU/XUF?= =?us-ascii?Q?KwX8E8FkvsP0iodZpvDlq1jm+Osz8GNZKBt6EAVcRIFhkWejXmyWCdIpMOjX?= =?us-ascii?Q?qldXMU9sZvZaPSa/ufS9gSniAEM5tYu3tKZ7mnyJFRhCFerkzdUMEHoUDLF7?= =?us-ascii?Q?eo4qUP1hvSh86ny4RNNt8P7AwsRfJoJhyCvSLROq90y/fQdUPjGuOly5fH7E?= =?us-ascii?Q?NMbp3x45dPVwwInzr3GPQUX41eJMZuH4Yvrte+++yo/D3uy2y9xsDM1oj6lp?= =?us-ascii?Q?oE7YXUUvnb8JwiSYUHfz+tK05fN9k7RF+DsZPzthOWTxST861tpfE6Fvnma4?= =?us-ascii?Q?pMxFGDMUVlFn+HUgfQ1nMWDOuMHQf+8vN2IPVo/YoGtFrRGNOSxjNttf5HRi?= =?us-ascii?Q?fRBRj5sAufWSQ+Iz0cUSp+tLt8r5ZkLlLCLNYLQ4RZnQD+HqP5DrIMXqkoAt?= =?us-ascii?Q?iKhBg/JIK8J8ZqlUElwujXoIR+i8WcUCZ7IbWrtSj5vF8yALIRxeYArkarRV?= =?us-ascii?Q?8BdGAWVSzH1WCZC5xEURQMg+/1g5pCpCb4YWFDjfuBmErPqS9TrWdpUfFs2Y?= =?us-ascii?Q?fjbNvMUL8PBlw5/pSlnNkbGNvtR6dKwROco0ChzI71ee8J4dk6b0+IZkIk6p?= =?us-ascii?Q?YMMOQhbWS4Za321/83hEFR/rBYlYCUeeSgyJApm7l8jW4/XwS1aYxX3hqUBC?= =?us-ascii?Q?9a7VqwD25lwPNDCwUk2tTwfBPisQiHUviaelzDOK3M2aYiyDbP/sMlc0clGN?= =?us-ascii?Q?cnOjjkakxknTnJnOnkmaZhGO7/QfxCn9ySvy6WOTipWF0yLViDDIqQZ/Z749?= =?us-ascii?Q?VVCSJvwO7iOfS8+5TS3J8VHziVgld4hKJnSCynErTNfcUv5aZKYqJ7psOmGJ?= =?us-ascii?Q?kim+3zPDVeDBZOw59GgHkpPN2dvam8dweyJysSzXDC2TG5Dtq77jbq+XjxTs?= =?us-ascii?Q?nUyBpPq07rNXmO+8EdCBtUInnyr7R2qR0Bm6D2rJVoplzStZrxAqGlAUf0Zp?= =?us-ascii?Q?EQFJmUWQ1A3VoHzTyx2SyWihEZFoR5YygelLkJOUQ6vJWLpmedSympmWp35F?= =?us-ascii?Q?FmkcdVrep7g5WH5v3rnt8CazH9AcsmclA2IbMa5V2pVvyQci7JVBivNc9OvG?= =?us-ascii?Q?siLzuZbSwlA7nkwDURufprTd2rVzSdIKeRHZU/3IGmgqs/kZz4cxwbYl4XGp?= =?us-ascii?Q?nxeJ3G+rS0p9REhJKLgP/fDYss+cMhOJci6Tb/fyx8572zbFCUle6GRg5qk+?= =?us-ascii?Q?UoobbqMZjJjw43QJnLdmoEK4tuwJ1MUUecanPES5rCSTZFpLihvDnBhbpzAS?= =?us-ascii?Q?0Ii/ufUhlz/Yw1Zl+oYU6dzuEY+el0xJRmXHMiNrRbC5UI+OdXO6m+p2zTFR?= =?us-ascii?Q?EMfIv24S+QsRuxukz0IQzvaMLGJ2uNRwzd5pxRj6AhojdXtOure5ldx5+dpa?= =?us-ascii?Q?HsZ8yZKZQHBjQPDdZqe4oBsp+GVek7V12frKITGp6LiAxt5N/CEncg0yR228?= =?us-ascii?Q?+2llez3yOQ=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: c7fb6cf6-0481-4c47-edab-08deaa8df368 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:06:18.6754 (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: KvyEhIHLQnmLBRKszQMYOPkkkFVb6nyZ2yYGSCYppqzBghAF7Ues+fbv85bXGghMCX5WynQUNFKY3Z0hMoyCTg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8363 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260505_110630_128871_A54982C6 X-CRM114-Status: GOOD ( 10.30 ) X-BeenThere: linux-phy@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux Phy Mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-phy" Errors-To: linux-phy-bounces+linux-phy=archiver.kernel.org@lists.infradead.org The PHY API has an optional "get" which returns NULL, so it needs to accept that NULL coming back in. Most PHY functions do this, only the formerly static inline attribute dereferences did not. Signed-off-by: Vladimir Oltean --- v7->v8: remove phy_set_bus_width() from this change, it has become a provider function which does not need the protection v2->v7: none v1->v2: patch is new Signed-off-by: Vladimir Oltean --- drivers/phy/phy-core.c | 6 ++++++ include/linux/phy/phy.h | 2 ++ 2 files changed, 8 insertions(+) diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c index fe933629286b..6cd33204d2ff 100644 --- a/drivers/phy/phy-core.c +++ b/drivers/phy/phy-core.c @@ -624,12 +624,18 @@ EXPORT_SYMBOL_GPL(phy_validate); enum phy_mode phy_get_mode(struct phy *phy) { + if (!phy) + return PHY_MODE_INVALID; + return phy->attrs.mode; } EXPORT_SYMBOL_GPL(phy_get_mode); int phy_get_bus_width(struct phy *phy) { + if (!phy) + return 0; + return phy->attrs.bus_width; } EXPORT_SYMBOL_GPL(phy_get_bus_width); diff --git a/include/linux/phy/phy.h b/include/linux/phy/phy.h index d716e5e0584c..99d3d65da614 100644 --- a/include/linux/phy/phy.h +++ b/include/linux/phy/phy.h @@ -248,6 +248,8 @@ static inline int phy_notify_state(struct phy *phy, union phy_notify state) static inline int phy_get_bus_width(struct phy *phy) { + if (!phy) + return 0; return -ENOSYS; } -- 2.34.1 -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy