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 phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 21121C77B70 for ; Fri, 14 Apr 2023 04:24:50 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id A321E85D52; Fri, 14 Apr 2023 06:24:47 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=ti.com header.i=@ti.com header.b="xDrxVCHd"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id B75CF85DD5; Fri, 14 Apr 2023 06:24:45 +0200 (CEST) Received: from fllv0016.ext.ti.com (fllv0016.ext.ti.com [198.47.19.142]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 2438885CB1 for ; Fri, 14 Apr 2023 06:24:42 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=nm@ti.com Received: from fllv0034.itg.ti.com ([10.64.40.246]) by fllv0016.ext.ti.com (8.15.2/8.15.2) with ESMTP id 33E4Oa6J095104; Thu, 13 Apr 2023 23:24:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1681446276; bh=p10lOuIb4d5/ZUS6tAGq9a/8ykgUGhSWWxO4by6bmZ4=; h=From:To:CC:Subject:Date:In-Reply-To:References; b=xDrxVCHdAsTsEGqsiGKMixrhwR8k8LcPWp0a09xCZmB+Uc2y5ge9HJzMbFRmdXXL0 S9CvnmeJkzHviZXJ57ebAY5eQ09HLQB/4T6vhE9vZVxxHOJ9BY08TLvwZuF7hfrlZa d1fOfVr3cHIY9qyyfaneV8x7j1hAtxLipdT73FJk= Received: from DFLE101.ent.ti.com (dfle101.ent.ti.com [10.64.6.22]) by fllv0034.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 33E4OZrB045294 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 13 Apr 2023 23:24:35 -0500 Received: from DFLE102.ent.ti.com (10.64.6.23) by DFLE101.ent.ti.com (10.64.6.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.16; Thu, 13 Apr 2023 23:24:35 -0500 Received: from lelv0326.itg.ti.com (10.180.67.84) by DFLE102.ent.ti.com (10.64.6.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.16 via Frontend Transport; Thu, 13 Apr 2023 23:24:35 -0500 Received: from localhost (ileaxei01-snat2.itg.ti.com [10.180.69.6]) by lelv0326.itg.ti.com (8.15.2/8.15.2) with ESMTP id 33E4OZbb022211; Thu, 13 Apr 2023 23:24:35 -0500 From: Nishanth Menon To: Marek Vasut , Tom Rini CC: Siddharth Vadapalli , Vignesh Raghavendra , Michal Simek , Ramon Fried , , =?UTF-8?q?Marek=20Beh=C3=BAn?= , Nishanth Menon Subject: [PATCH V2 2/2] net: phy: Make phy_interface_is_rgmii a switch statement Date: Thu, 13 Apr 2023 23:24:33 -0500 Message-ID: <20230414042433.3436425-3-nm@ti.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20230414042433.3436425-1-nm@ti.com> References: <20230414042433.3436425-1-nm@ti.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.8 at phobos.denx.de X-Virus-Status: Clean Recent commit 75d28899e3e9 ("net: phy: Synchronize PHY interface modes with Linux") reordered the enum definitions. This exposed a problem in range checking functions to identify the interface type. Though this specific api was'nt impacted (all the RGMII definitions remained within range), this experience should be used to never to have to face this kind of challenge again. While it is possible for the phy drivers to practically use the enum's directly, drivers such as dp83867, dp83869, marvell, micrel_ksz90x1 etc use the same. Reported-by: Tom Rini Signed-off-by: Nishanth Menon --- Changes since V1: * Switch update based on feedback from Marek V1: https://lore.kernel.org/r/20230413180713.2922524-3-nm@ti.com include/phy.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/include/phy.h b/include/phy.h index 51dadcf14478..600966bc8b20 100644 --- a/include/phy.h +++ b/include/phy.h @@ -361,8 +361,15 @@ int get_phy_id(struct mii_dev *bus, int addr, int devad, u32 *phy_id); */ static inline bool phy_interface_is_rgmii(struct phy_device *phydev) { - return phydev->interface >= PHY_INTERFACE_MODE_RGMII && - phydev->interface <= PHY_INTERFACE_MODE_RGMII_TXID; + switch (phydev->interface) { + case PHY_INTERFACE_MODE_RGMII: + case PHY_INTERFACE_MODE_RGMII_ID: + case PHY_INTERFACE_MODE_RGMII_RXID: + case PHY_INTERFACE_MODE_RGMII_TXID: + return 1; + default: + return 0; + } } /** -- 2.40.0