Received: by 2002:a05:7412:419a:b0:f3:1519:9f41 with SMTP id i26csp935933rdh; Fri, 24 Nov 2023 01:14:50 -0800 (PST) X-Google-Smtp-Source: AGHT+IGlTe5XYj/TDmsjxElkt4SdiS3Qc6Otq8iA9wegy3s2vwC+T9lLg36nF/JwXeu2qNJJfHwN X-Received: by 2002:a17:90b:1b12:b0:27f:fc2f:4831 with SMTP id nu18-20020a17090b1b1200b0027ffc2f4831mr1975357pjb.13.1700817290427; Fri, 24 Nov 2023 01:14:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1700817290; cv=none; d=google.com; s=arc-20160816; b=kN6Bv7YBDSrM7nJ59KU+J5s4txckYFhlEEvf1Cv3CWFwKL8VMg/8uvyFp/L0V4Jz/l gVb7whhVVjNG9PeKBjHuPN/uLtpCEZTAVnjYiwNlbo+LWVExR2rPnwfp2xwW11TOPaqX 2F+jxzexzFLlqkslTAsUps/wR0yii9UPeOX/3p1Xb3HU0cor/b6vbj0Jf0/8lo9TnO2p aTuTos4vzOdDjdxBRoSvE3+PZjdzwcOWAKK++dErN1CHHZ82oD8D3GX4CC6/HRl0JOuE BCAM2jtGSBSqRdcD4yPPZh7lqFL39+QrDmyBB+i3PxJSSUtjLz7U3iT1PIu89joqNoRI ulIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature; bh=r1rAm5jR/6md8ILmUhugQ8toaM7ECJmSBokwUzobLWo=; fh=oUQXlm9N18NE8BciMxTG8yakJePvyLDL7KOQwgHv8WI=; b=d0jls3V6EjBSFTrZ2HhhQEN2uaGV/hVaz3bSJaBCbFBSGyXLiotnuOoJzG9aIIT5oi UI/lkaKOiJvxyOEe3IGYTqrbaGCFT5kVGlkZVVRgocmJkFm96H3bX9eMucNBPyRXnoRf 4QuREXmIqWXsjH2n7p/6tClaWJBSAG4ak5cgNdjs1e200G7HFTnJlPM+O5bAlCGyD7rs w23vuOxx+R3u7ilE7jw/W1vfhdqTGphLwociU3IwGYm+0iYA44AgIAh6G6Va0QqcwN/M CgFrMwTMQ1tS/xt05MfmdpxqoaR8dx1ROlhguffaC2teV2PXg5cHEIZjai8w69BNghoL k7xA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail (test mode) header.i=@armlinux.org.uk header.s=pandora-2019 header.b=WtJQb6aL; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=armlinux.org.uk Return-Path: Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id 13-20020a17090a08cd00b0028103abc77csi3796757pjn.18.2023.11.24.01.14.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 Nov 2023 01:14:50 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=fail (test mode) header.i=@armlinux.org.uk header.s=pandora-2019 header.b=WtJQb6aL; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=armlinux.org.uk Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 20F0B807EDB8; Fri, 24 Nov 2023 01:12:37 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230367AbjKXJMV (ORCPT + 99 others); Fri, 24 Nov 2023 04:12:21 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54076 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229705AbjKXJMU (ORCPT ); Fri, 24 Nov 2023 04:12:20 -0500 Received: from pandora.armlinux.org.uk (pandora.armlinux.org.uk [IPv6:2001:4d48:ad52:32c8:5054:ff:fe00:142]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 34DD812B; Fri, 24 Nov 2023 01:12:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=armlinux.org.uk; s=pandora-2019; h=Sender:In-Reply-To:Content-Type: MIME-Version:References:Message-ID:Subject:Cc:To:From:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=r1rAm5jR/6md8ILmUhugQ8toaM7ECJmSBokwUzobLWo=; b=WtJQb6aLCdUyJqLHSxN1r6+Iet CEpijUCrf7cgv+SKytQHd+Pav+6+9T+RFLivuotQVIlzRWdscxVDY82MoPcwOAWcpvCU6xjg1f4W0 oP6MS7sx0BxVnnThYqLfZWUJkgjhvvz8J1BLL1Lm7pseksb4+aVQG1hZeLfXjXWB8FrCZfGP/AqD0 OBOjkGDIhegny3DqPVI5nibJ7DSBZSWpUqmSwkQIUr5f+p3zq8/1lM+UjHrZWR3qmLavF3AvdMRe0 HAyXK3Nv5ynOyWvlHM/ckMFE9t6cbrOp4L9VnE0lB9kPH4aJasWh9kxyj/1cLbR4C81fiPgEp+/HG 3ePZO9BQ==; Received: from shell.armlinux.org.uk ([fd8f:7570:feb6:1:5054:ff:fe00:4ec]:57684) by pandora.armlinux.org.uk with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1r6SEJ-0002Zh-2T; Fri, 24 Nov 2023 09:12:07 +0000 Received: from linux by shell.armlinux.org.uk with local (Exim 4.94.2) (envelope-from ) id 1r6SEG-00077c-Qm; Fri, 24 Nov 2023 09:12:04 +0000 Date: Fri, 24 Nov 2023 09:12:04 +0000 From: "Russell King (Oracle)" To: Sneh Shah Cc: Vinod Koul , Bhupesh Sharma , Alexandre Torgue , Jose Abreu , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Maxime Coquelin , netdev@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kernel@quicinc.com, Andrew Halaney Subject: Re: [PATCH net] net: stmmac: update Rx clk divider for 10M SGMII Message-ID: References: <20231124050818.1221-1-quic_snehshah@quicinc.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20231124050818.1221-1-quic_snehshah@quicinc.com> Sender: Russell King (Oracle) X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Fri, 24 Nov 2023 01:12:37 -0800 (PST) On Fri, Nov 24, 2023 at 10:38:18AM +0530, Sneh Shah wrote: > #define RGMII_CONFIG_LOOPBACK_EN BIT(2) > #define RGMII_CONFIG_PROG_SWAP BIT(1) > #define RGMII_CONFIG_DDR_MODE BIT(0) > +#define RGMII_CONFIG_SGMII_CLK_DVDR GENMASK(18, 10) So you're saying here that this is a 9 bit field... > @@ -617,6 +618,8 @@ static int ethqos_configure_sgmii(struct qcom_ethqos *ethqos) > case SPEED_10: > val |= ETHQOS_MAC_CTRL_PORT_SEL; > val &= ~ETHQOS_MAC_CTRL_SPEED_MODE; > + rgmii_updatel(ethqos, RGMII_CONFIG_SGMII_CLK_DVDR, BIT(10) | > + GENMASK(15, 14), RGMII_IO_MACRO_CONFIG); ... and then you use GENMASK(15,14) | BIT(10) here to set bits in that bitfield. If there are multiple bitfields, then these should be defined separately and the mask built up. I suspect that they aren't, and you're using this to generate a _value_ that has bits 5, 4, and 0 set for something that really takes a _value_. So, FIELD_PREP(RGMII_CONFIG_SGMII_CLK_DVDR, 0x31) or FIELD_PREP(RGMII_CONFIG_SGMII_CLK_DVDR, 49) would be entirely correct here. The next concern I have is that you're only doing this for SPEED_10. If it needs to be programmed for SPEED_10 to work, and not any of the other speeds, isn't this something that can be done at initialisation time? If it has to be done depending on the speed, then don't you need to do this for each speed with an appropriate value? -- RMK's Patch system: https://www.armlinux.org.uk/developer/patches/ FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!