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 X-Spam-Level: X-Spam-Status: No, score=-6.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 82F3DC55179 for ; Wed, 21 Oct 2020 14:08:57 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 34D4022447 for ; Wed, 21 Oct 2020 14:08:57 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2443243AbgJUOIz (ORCPT ); Wed, 21 Oct 2020 10:08:55 -0400 Received: from vps0.lunn.ch ([185.16.172.187]:38222 "EHLO vps0.lunn.ch" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2440702AbgJUOIy (ORCPT ); Wed, 21 Oct 2020 10:08:54 -0400 Received: from andrew by vps0.lunn.ch with local (Exim 4.94) (envelope-from ) id 1kVEnM-002pJA-It; Wed, 21 Oct 2020 16:08:52 +0200 Date: Wed, 21 Oct 2020 16:08:52 +0200 From: Andrew Lunn To: Alexandru Ardelean Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, alexaundru.ardelean@analog.com, hkallweit1@gmail.com, linux@armlinux.org.uk, davem@davemloft.net, ardeleanalex@gmail.com, kuba@kernel.org Subject: Re: [PATCH 2/2] net: phy: adin: implement cable-test support Message-ID: <20201021140852.GN139700@lunn.ch> References: <20201021135140.51300-1-alexandru.ardelean@analog.com> <20201021135140.51300-2-alexandru.ardelean@analog.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20201021135140.51300-2-alexandru.ardelean@analog.com> Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org > Signed-off-by: Alexandru Ardelean Hi Alexandru Overall, this looks good. > +static int adin_cable_test_report_trans(int result) > +{ > + int mask; > + > + if (result & ADIN1300_CDIAG_RSLT_GOOD) > + return ETHTOOL_A_CABLE_RESULT_CODE_OK; > + if (result & ADIN1300_CDIAG_RSLT_OPEN) > + return ETHTOOL_A_CABLE_RESULT_CODE_OPEN; > + > + /* short with other pairs */ > + mask = ADIN1300_CDIAG_RSLT_XSHRT3 | > + ADIN1300_CDIAG_RSLT_XSHRT2 | > + ADIN1300_CDIAG_RSLT_XSHRT1; > + if (result & mask) > + return ETHTOOL_A_CABLE_RESULT_CODE_CROSS_SHORT; The nice thing about the netlink API is that it is extendable without breaking backwards compatibility. You could if you want add another attribute, indicating what pair it is shorted to. Andrew