Received: by 2002:a05:7412:b995:b0:f9:9502:5bb8 with SMTP id it21csp7702757rdb; Thu, 4 Jan 2024 05:16:30 -0800 (PST) X-Google-Smtp-Source: AGHT+IGIjyYuy/ZEAm5c7tJcRzLAZFQyBYFD3Iotfsl8MbYAgxWF78LdzHTXdA3xA4P7ABpb8ups X-Received: by 2002:aa7:9846:0:b0:6d9:a1d0:180a with SMTP id n6-20020aa79846000000b006d9a1d0180amr497767pfq.58.1704374189962; Thu, 04 Jan 2024 05:16:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1704374189; cv=none; d=google.com; s=arc-20160816; b=U7Am9hqQ2k+M8LL+sXHuaW9zSo7UIa3GWf5qSaZ2giWnOp7kQ1j8ouvRXhEkymNCyO UC0FRMDtNqNuszNVGMFN0RqE/Qwexhu5l17VNe47myJif2EXr3pcFo0V+IJepw53vLe8 uv9YeBHtA1jAtrbBk7MV8+JFERVTtl3dmlwknMvZrQkPkbiHaidnvbAapstajnro3zak tZ02MBQbEQexKVkZvd1VfSt1K/hcQhXFjCqOielIJHt/HNcRZU7Tb10QoNl64/KVLNAD u1xml5nZkptBS3nj+5YyUiarVMTL6XbS5pY235UxSRicPV6VUQ5d1uB2sXosSJ0QxkXp ALlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=in-reply-to:content-disposition:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:subject:cc:to:from :date:message-id:dkim-signature; bh=kWojNCo1dQUH3XLkmW/tyezRJ83aZaGYWSmb6/rILt8=; fh=w0OTwPD4ijNfiQf06b3GlfWjps/oDwkM6oc6I8dIhFg=; b=H14ZMFSDrFRs94fu3uaOdKa/yxnpXDPNnt5TzaOQR/8R5HNzUdRVhoc7324Uq4cwfX qczBR5+nKtWScCuxcZgDnihK7l4htNHG77/idBbqi65A0llq+v0M6yeQbM2gYf8Sh9fN i4jCT9zNeq5OKRenxc8XN5ah0JwWQYhPacb5oT+3iYiZwoo1eq3Hws+dv1XENy+7f7lZ PK4Fu9vhWwwk1V2ZDmPNj9mg4wyhYzuRYj2NXywQcld8Lf8plfXGl0ECkDy1qCe2PoPd 4YvcuA0PbhKQZUZa4vQcihxcyivOUou0kbB7GovFPGj5CUC8ZGlt3fXqz3Eqa8tGheBe dbhg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=NT6ajKdb; spf=pass (google.com: domain of linux-kernel+bounces-16697-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-kernel+bounces-16697-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [147.75.48.161]) by mx.google.com with ESMTPS id l7-20020a056a00140700b006d9b1f78047si18566359pfu.46.2024.01.04.05.16.29 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 Jan 2024 05:16:29 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-16697-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) client-ip=147.75.48.161; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=NT6ajKdb; spf=pass (google.com: domain of linux-kernel+bounces-16697-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-kernel+bounces-16697-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id AFB6CB2391C for ; Thu, 4 Jan 2024 13:16:18 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 2FC2222336; Thu, 4 Jan 2024 13:16:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="NT6ajKdb" X-Original-To: linux-kernel@vger.kernel.org Received: from mail-wr1-f45.google.com (mail-wr1-f45.google.com [209.85.221.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BADAD224C6; Thu, 4 Jan 2024 13:16:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wr1-f45.google.com with SMTP id ffacd0b85a97d-3368b9bbeb4so425013f8f.2; Thu, 04 Jan 2024 05:16:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1704374160; x=1704978960; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=kWojNCo1dQUH3XLkmW/tyezRJ83aZaGYWSmb6/rILt8=; b=NT6ajKdbu2cF2Yte3+LOcNk5l53G690JVXx5xAgIYYtpvuCD7d5qBX8NKMV288fVWN wHX6udtuQhieIFaZ3WgF0IvInsUP/nKTHTxGDZwkYHfPiyKvtfbaQckJsQjlMZ05ilk5 raEJva5h0tdHHf1UXpKKe/XzD3H4nILjcL27xRSkm2aGzbRj49H103wH8o6wto/KUj2b Yh0fu8AC/n5cjmF+B5z6xj+8M9dY/n1IbCD3wJZ+xLSokJQs/7MMugwyrJMWE9ChXqkP nFjsBtK1Uf6PNbe64LVUvcsO1ganwQTudk6VxnQ03aK6bxLQC6yySrAJovqYQ/4K7I8N 3imw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1704374160; x=1704978960; h=in-reply-to:content-disposition:mime-version:references:subject:cc :to:from:date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=kWojNCo1dQUH3XLkmW/tyezRJ83aZaGYWSmb6/rILt8=; b=h7ZabqSmc0szsLJl5ofpynBbprmrLCN3Qq6nwQ8PUv7B4ybynvLGB+vvR5cm+QKnEg KmJS2c/b4vtjTA7MsdY3LE4Nn6R/Z27D3cKhXHvEpqXX+aVsjYHBpERBtZQVFj0FIsMt TXZxYpYn6qaYlnDf7xGdTsVaSJpJpAXjuCfVPN/a4rWA2DnYEacAzypl4vfiXYcto4HO dxBf7txgQgTFlRmlb2Ibi2pmsKwji1Pim6uIv1Yad1X0gAUPQuO2sPjBd2Q9NFpsra59 xPATc04rqkmfm6aZNTLSY4B/9yA8SKGhO+hNGYAAiwYhnck13MeAXeZPYuxI4/0UMjXU +kmg== X-Gm-Message-State: AOJu0YwGb5mkT8k3+7lGptNenm0dsA5JK98XcPtxQ+RseSxc+W1egwEo +Jq7PH+uvaEU3uJb78Bak1Q= X-Received: by 2002:adf:f544:0:b0:336:e161:5a with SMTP id j4-20020adff544000000b00336e161005amr189251wrp.137.1704374159874; Thu, 04 Jan 2024 05:15:59 -0800 (PST) Received: from Ansuel-xps. (host-80-116-159-187.retail.telecomitalia.it. [80.116.159.187]) by smtp.gmail.com with ESMTPSA id c18-20020a5d4152000000b0033609b71825sm32777460wrq.35.2024.01.04.05.15.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 Jan 2024 05:15:59 -0800 (PST) Message-ID: <6596af8f.5d0a0220.1b372.4858@mx.google.com> X-Google-Original-Message-ID: Date: Thu, 4 Jan 2024 14:15:59 +0100 From: Christian Marangi To: Simon Horman Cc: Andrew Lunn , Heiner Kallweit , Russell King , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [net-next PATCH v3 2/4] net: phy: at803x: refactor qca808x cable test get status function References: <20240103124637.3078-1-ansuelsmth@gmail.com> <20240103124637.3078-3-ansuelsmth@gmail.com> <20240104130337.GG31813@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240104130337.GG31813@kernel.org> On Thu, Jan 04, 2024 at 01:03:37PM +0000, Simon Horman wrote: > On Wed, Jan 03, 2024 at 01:46:33PM +0100, Christian Marangi wrote: > > Refactor qca808x cable test get status function to remove code > > duplication and clean things up. > > > > The same logic is applied to each pair hence it can be generalized and > > moved to a common function. > > > > Signed-off-by: Christian Marangi > > --- > > drivers/net/phy/at803x.c | 65 +++++++++++++++++++++------------------- > > 1 file changed, 34 insertions(+), 31 deletions(-) > > > > diff --git a/drivers/net/phy/at803x.c b/drivers/net/phy/at803x.c > > index acf483fa0887..b87293ee736c 100644 > > --- a/drivers/net/phy/at803x.c > > +++ b/drivers/net/phy/at803x.c > > @@ -2037,10 +2037,39 @@ static int qca808x_cable_test_start(struct phy_device *phydev) > > return 0; > > } > > > > +static void qca808x_cable_test_get_pair_status(struct phy_device *phydev, u8 pair, > > + u16 status) > > +{ > > + u16 pair_code; > > + int length; > > + > > + switch (pair) { > > + case ETHTOOL_A_CABLE_PAIR_A: > > + pair_code = FIELD_GET(QCA808X_CDT_CODE_PAIR_A, status); > > + break; > > + case ETHTOOL_A_CABLE_PAIR_B: > > + pair_code = FIELD_GET(QCA808X_CDT_CODE_PAIR_B, status); > > + break; > > + case ETHTOOL_A_CABLE_PAIR_C: > > + pair_code = FIELD_GET(QCA808X_CDT_CODE_PAIR_C, status); > > + break; > > + case ETHTOOL_A_CABLE_PAIR_D: > > + pair_code = FIELD_GET(QCA808X_CDT_CODE_PAIR_D, status); > > + break; > > + } > > Hi Christian, > > I don't think this can actually happen given current usage, > but if pair doesn't match one of the cases above, > then pair_code is used uninitialised below. > > Flagged by Smatch. > In theory it would trigger a warning for the switch case not handled? But yes I will add a default case. > > + > > + ethnl_cable_test_result(phydev, pair, > > + qca808x_cable_test_result_trans(pair_code)); > > + > > + if (qca808x_cdt_fault_length_valid(pair_code)) { > > + length = qca808x_cdt_fault_length(phydev, pair); > > + ethnl_cable_test_fault_length(phydev, pair, length); > > + } > > +} > > + > > static int qca808x_cable_test_get_status(struct phy_device *phydev, bool *finished) > > { > > int ret, val; > > - int pair_a, pair_b, pair_c, pair_d; > > > > *finished = false; > > > > ... -- Ansuel