From patchwork Tue Jan 30 06:08:38 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Priyanka Jain X-Patchwork-Id: 867403 X-Patchwork-Delegate: joe.hershberger@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="mUNNe80c"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3zVwvd280Mz9ryT for ; Tue, 30 Jan 2018 17:09:47 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 7C1A9C21E26; Tue, 30 Jan 2018 06:09:42 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAD_ENC_HEADER, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 6644EC21C4F; Tue, 30 Jan 2018 06:09:39 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 11D7EC21C4F; Tue, 30 Jan 2018 06:09:38 +0000 (UTC) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0040.outbound.protection.outlook.com [104.47.1.40]) by lists.denx.de (Postfix) with ESMTPS id A0A47C21C29 for ; Tue, 30 Jan 2018 06:09:37 +0000 (UTC) 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; bh=cchI6rrarcFfMCmz8JMpztEZrd4HTFPYBym9Y1zHvvs=; b=mUNNe80crV03mqeCirrrukO97Sq8ZcLVx1V9XKChfU30u2gwx7i0VPuMIacnNbY/2NB0Ka3NXA2kaRk5kYYnQPvC9VZPXL70178hF9MCiaWnfx0B19hx3zsZctLkDE3tLHDkTJv2YqjvVqYJmNp0De3iEa2uW4Iay68wtWu39Eg= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=priyanka.jain@nxp.com; Received: from idcbfarm.ap.freescale.net (192.88.169.1) by DB6PR0402MB2709.eurprd04.prod.outlook.com (2603:10a6:4:94::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.444.14; Tue, 30 Jan 2018 06:09:34 +0000 From: Priyanka Jain To: u-boot@lists.denx.de, joe.hershberger@ni.com Date: Tue, 30 Jan 2018 11:38:38 +0530 Message-Id: <1517292518-11054-1-git-send-email-priyanka.jain@nxp.com> X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 X-Originating-IP: [192.88.169.1] X-ClientProxiedBy: BMXPR01CA0037.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:c::23) To DB6PR0402MB2709.eurprd04.prod.outlook.com (2603:10a6:4:94::11) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 867c6218-82e0-43b8-2ec6-08d567a809e4 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(48565401081)(5600026)(4604075)(2017052603307)(7153060)(7193020); SRVR:DB6PR0402MB2709; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0402MB2709; 3:DXX2QgQGEib9Zp15UA4zUHbDJzKV9AKwDOVZvbCEBJHkwTysZrZcjkcDNOyHEfrNlXerv8P2/XZOKSFDzbaiTwzZQ0aJjmszPgOU5FdHHLOqQm+tcDKxW81+kXYQ9ScQcUQFXjuacdUneBW/aShHEgwjB/C9FjJx+vP5yItuuXrrFR7PpGNdcxUEKQAJ4eUBXCH+aeeGcMeEItB2YvVhQZgRsb+DySHWpC7dyiDFGV7Y5T+f9ufS8VjFFRmXphkQ; 25:54WfJ6fJpuFoRbpTFmM0Ki6iCXao3yirU3i6Dbn5BUZ+2hApvtl6sKhKEG7whcdtYHe8DfrTybH5djylAgD9lnx7lhD6/HiuL8jt7evrCXRwJhZGx3v3kn8C2S0/+cVqSPHG3FKD947K+2XZI36DG7r9xJzDwiC79lPFme5YgdX/0fratpWt33AOFtAJcVZKkFMdTTHYHhNIXajG4G2QzP8cqTXvP1S6YEWYBN7Hi6Dev2n4kdjofu+q40Rl+TO/hVr8YNyl7AATY0y6xG/Cw+d8UqLnAvXddoSLUZkUHIsMzlkzGuv2XYhhKQJbiCvoC/4WJSDhB1b6rdJBozmD1g==; 31:hH6NV9wGHK9nE32jpp2Jmnv4YgUSRVF/r6iFVLIva6OmPDakmCvA8ZdSHpqOwFUbTR+8kApvYHkqusrpsVm77tqSLnJ7XbuTnawFjBHG8v7qd6690e8DH3Lr6PR10WDRsXgcg4rlKKxI8Sa6sch5LG1k4m+gBPqVCYOCt9PSuVV/kPys/5pHGU2W2uxfJwnRRHpQaQJfnApj58ISu9+LKEw67ueL585plOt56gRAz6E= X-MS-TrafficTypeDiagnostic: DB6PR0402MB2709: X-Microsoft-Exchange-Diagnostics: 1; DB6PR0402MB2709; 20:PqkLIVnwoP/8Z3a9EjMrAXCgteUzSI0t7jaX/v3XwmsQFsPb5ktxKyuoprwy6kn8jVjK4Q3GsZRmT+FXULppavJM1/KkN1QvN5XtcoSSeapwCZc611s7nSlI+wMDCwy+ZuptFCg6XqqPaIRaREvPHI+2H4IrqUdvjsKMzJjVXm5yRPDgOBf6ePByH47Ly/6HhBkBD2MzvIna7tnEs05uAJ3/kV5wCcK0ERmR5vNQQ3AihzoMlByVaPPJq1dx6IOrTUeqEDLMQXD2RbyvENYj/SkGSl3Kz4RgSCpIV8AUZkbwADhyNpVdsp+ZK4ho0PVUNkLqBB7vyV7sOcKwf0wg2e9q+wsByLvW6h1rF84DKUFdo2aDt/Zo9uf/p1hK6YKh1wECQ7X3axFK7p0kvooz/XalzHmVJlTjT1llzwQ+5khOnIxJpNaYYIL5xhj7AVEycLpQfBIdf5MHIeAFNPNxMNGVRsmLdIVwH1e6mLwMkVW9+STHi/sWzOPcDd3bi2Xk; 4:YF9hdqQD6DPKvFoLn5xvxnF8/6c8Fdgeyv9kafXGKVtwE/ZiBogBDziQODQkcndCFWnb2/2PB14qClSQdIQwc+xaWycFN18QkQBXKhTCBhgYH2XsCnFkCb9hd/Mq2A7sMMrEvCRJ6nNKQfdPYr8AI8CBhC+W/WSQYvw7HxK17j8yb7uLbteJY68WHtehHQDOeVPEsDMT8RnbhOpd12v44rAGPaTFk63b3GSHn9vKTJcT8furtU6odoQ6FXMpnA+V2436HsT4vXsLtlIfmMzsjmki6OXPPZqMFHEOrVJnvjZ068lgrRUaOLIkxNwdWOhC X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040501)(2401047)(5005006)(8121501046)(3231101)(944501161)(10201501046)(3002001)(93006095)(93001095)(6055026)(6041288)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(6072148)(201708071742011); SRVR:DB6PR0402MB2709; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0402MB2709; X-Forefront-PRVS: 0568F32D91 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(366004)(346002)(376002)(396003)(39860400002)(39380400002)(199004)(189003)(97736004)(6116002)(48376002)(386003)(305945005)(6506007)(3846002)(478600001)(6512007)(8936002)(16586007)(105586002)(316002)(8676002)(81166006)(50226002)(106356001)(50466002)(81156014)(53936002)(5660300001)(52116002)(47776003)(7736002)(59450400001)(6486002)(2906002)(25786009)(66066001)(15650500001)(36756003)(51416003)(86362001)(4326008)(68736007)(26005)(186003)(16526019); DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0402MB2709; H:idcbfarm.ap.freescale.net; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0402MB2709; 23:/Rfa16yVUb7fCAfpf9585FVau6xPXEpt4m3HZK7?= ZlCevnoQDwhHc1kpOdMJjYR7GP/dSvt8duT9SyoV4W/XizaHqKlazWsTzWQmBLy9QkfszqZQU6J0E22QKNSM09aYpNvLlyD45K7tg6PIlHd/Q6CHX0qtGMbB7NVEYxfgmHLvpRfhq5UblkJHIQo8AUqRFjJB0lRkKYDTWRuV7IXd9YMILt8uRkcJTRrxObWvBPm7dlRcKknQ6hil8G67olR1anF9rTVhkq8AtJUjlPtG+oK1jJIKHsZzRZzC3SaHtVIAo0/jUWZtdrzPtbNdyAbmfppPUlF1lAzpfiQmAcfe7bBqkUYowVmf5BaqaE2FGxlUZ2zWUeZi5jDf7/c41rYh6BfxoSXOCcRzwErxSxzSs0pTr/AClME2KjAuJqvJI+1fcepuOXvFGA5MxGSKrr+w6D6o2bbzjDbImUKu8VoQmWo6t/hljJFms2sdt/YgZdByBH6l/UXJkx2xCP34NPZw0EVCAof9kHabKP7XSsNmFUYqemd7WR8NtWobmt/Ym7jIApGJrHy0AT22mgzjncLe1ElmDs3YcUFsdklbIa3Z2klCgbRhMjlXBu3Ie4r3d1i+EQVvY9U4a+71aE6Ux4PAmD/pxo8QORUReye507eaBx4ZhTOwRGpJW2EotFjbLoTEH0u3r0ULHoqxZhEC8eg+XU9z1rJLFlucdkNEYn3itCptvht8bonUKP250SN4eB34r67tzpIg36QkX0AcdpQ9NXUDoYywAzdbx9apgEAyu1LLI/5TbCTAQZkPosCx42j+od34nQ0N68osJ3+sWHRWikVwu+HhJHONHckV/se02CAcjIWFhbBD7b24DdNxsIGBFs8iJeKr4RF8IC+hEOx//CTXnFYw7RV6rkBr4HT/wDqWjOVTP9mjLRF3aTW7jMOSiOxc1maM2wGhpgDsQwxrQsYd+bVkqUMEvfgykuFvoUh7LYcwt5vGxnAzMrqfRYObIcBJCWU79nM7v2UBVitfeKtW9gMSdbEvcse+23+99RpU8pD4rO4HlfV4G+t5OiX7LrnX00bJTf7YHoWUrW9FA X-Microsoft-Exchange-Diagnostics: 1; DB6PR0402MB2709; 6:CjcfVrZSHFqZM7RYzxDjyIkRUSz9AKhMjHTlUfJfu3u5MbwhZifUIwS3KqtJ/kVsNKoxaLp9rJ3dmjegKhG9pbKsq29ftM6Yu6ZPJ1VQqbM10vpw3ak6c+sTpkMyUXJAbODFk+byXBLRT2v5YT0nN8R7NK/ToDUNwO/fZR010FwwrwAX3PGshUa9orGowJc5J96ZnAxlV9UCz30kMdkA9wKtdBG8JIvd8gIicAdZm8epCAZOU5wJ6WgHko1y86M2Z12+vTwIi6mzD8ItE0mL7zgL5RT/OpL8WJUV2UzTAPP26JlsJpSTHVbs4QaqLBFG36rJ3YuNcMD2QS7SKt5meSw7zPlnouj7wnPEvjdIvBY=; 5:5ib5P1Zofb6j6u55OKkqNdnexyqJQauyenYg9ba0AngtkT4zJ8GOWhvpRG3wtHsLSYoncLrrmIZDCxjd345c8y5dmrpjmwHdKqoE+RmxC8gl0ju4hRuVNuNr1d1BQcCG/34+wVK+/e6EIgh6sr677mjQr28qJTQFJq2ZLNMyBRk=; 24:4Ot2jdJoRb4VhTF8I/4Gd7Jiqs26NEMPuO0PEhbxhFZJnf/3XRG/4xqmGlrupb5tFzhRPIx7tbf1Ix9LpEth09nKbnB1CWx1eZFSP9WGnuw=; 7:3rNtPsGZKalglL55wXKpAoEVl0mTf2krk0ubTaJH+4E6/0lze+5vohvZGKn54bgqmFkgN8csFoHjNwa/GjMEgkiKGPrnTYUzxOR/ey9PuMTZPqJzIxRAWcqArv28+UWpCmrlmGTvFWj/xotqIE+u2a44jNOxvxZ5V0X0NDU11l1S5L6oL1gLt7LA/FRkR78xSlsYhf+pd7J//wICZBbyAJt9By2cAlRpkDvp5un6UgIWP+BrmFNQBUyVKcox/neC SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jan 2018 06:09:34.9502 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 867c6218-82e0-43b8-2ec6-08d567a809e4 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0402MB2709 Cc: Priyanka Jain Subject: [U-Boot] [PATCH] net/phy/cortina.c: Update get_phy_id implementation X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 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" Update get_phy_id() implementation in cortina.c to check for Cortina_phy by comparing device phy_id with cortina phy_id instead of relying on presence of CORTINA macros. This will allow get_phy_id to work with non-cortina phy devices which might have same phy address as Cortina device but on different bus. Signed-off-by: Priyanka Jain Acked-by: Joe Hershberger --- drivers/net/phy/cortina.c | 46 +++++++++++++++++----------------------------- 1 file changed, 17 insertions(+), 29 deletions(-) diff --git a/drivers/net/phy/cortina.c b/drivers/net/phy/cortina.c index 637d89a..3ac833d 100644 --- a/drivers/net/phy/cortina.c +++ b/drivers/net/phy/cortina.c @@ -295,45 +295,33 @@ int phy_cortina_init(void) int get_phy_id(struct mii_dev *bus, int addr, int devad, u32 *phy_id) { int phy_reg; - bool is_cortina_phy = false; - - switch (addr) { -#ifdef CORTINA_PHY_ADDR1 - case CORTINA_PHY_ADDR1: -#endif -#ifdef CORTINA_PHY_ADDR2 - case CORTINA_PHY_ADDR2: -#endif -#ifdef CORTINA_PHY_ADDR3 - case CORTINA_PHY_ADDR3: -#endif -#ifdef CORTINA_PHY_ADDR4 - case CORTINA_PHY_ADDR4: -#endif - is_cortina_phy = true; - break; - default: - break; - } /* Cortina PHY has non-standard offset of PHY ID registers */ - if (is_cortina_phy) - phy_reg = bus->read(bus, addr, 0, VILLA_GLOBAL_CHIP_ID_LSB); - else - phy_reg = bus->read(bus, addr, devad, MII_PHYSID1); + phy_reg = bus->read(bus, addr, 0, VILLA_GLOBAL_CHIP_ID_LSB); + if (phy_reg < 0) + return -EIO; + *phy_id = (phy_reg & 0xffff) << 16; + phy_reg = bus->read(bus, addr, 0, VILLA_GLOBAL_CHIP_ID_MSB); if (phy_reg < 0) return -EIO; + *phy_id |= (phy_reg & 0xffff); - *phy_id = (phy_reg & 0xffff) << 16; - if (is_cortina_phy) - phy_reg = bus->read(bus, addr, 0, VILLA_GLOBAL_CHIP_ID_MSB); - else - phy_reg = bus->read(bus, addr, devad, MII_PHYSID2); + if (*phy_id == PHY_UID_CS4340) + return 0; + /* + * If Cortina PHY not detected, + * try generic way to find PHY ID registers + */ + phy_reg = bus->read(bus, addr, devad, MII_PHYSID1); if (phy_reg < 0) return -EIO; + *phy_id = (phy_reg & 0xffff) << 16; + phy_reg = bus->read(bus, addr, devad, MII_PHYSID2); + if (phy_reg < 0) + return -EIO; *phy_id |= (phy_reg & 0xffff); return 0;