Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp1996076rwd; Sun, 21 May 2023 10:27:54 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ7g63Bkl1m5PHSVPRMG+Ud+VrNwvugfvm4qLNvsfF6EvQHBBiYrWWhHXyTqJ8r+Nhe6S7MV X-Received: by 2002:a05:6a20:d80d:b0:103:ee82:dcb0 with SMTP id iv13-20020a056a20d80d00b00103ee82dcb0mr9337725pzb.13.1684690074435; Sun, 21 May 2023 10:27:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1684690074; cv=none; d=google.com; s=arc-20160816; b=a3/3+cIY1GAeKxzVh9sJOCgUfCwsTIuHVYwv0tDgyyDz0nccKGRg0B5qdqj7AbR+Q7 Wks+kggBrtm03wMtf5GH8CVYq2JbNw0roZVhYo1c7N7QmUYKBGCFC0Venbsz2g8GvVhb YUAPVZei33HFrUrtq1qqOxWk2uhLojmG9JLcfRP1TU9qpM5kq54NCSuBla9Ih6/hJ5VB CEd2dE87HgoQtQydcC4RviuqaiGUSwodyv3FFX9TsoqI3MG7c4oxHNYjYYA82ZfVfV9i jzXZl/j6O3ix0kBXUsVtHCHFCnylAFqoB9iSC4BqXeu/WtcAOhL78osTR9oYPseh5I3H q71Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=rvu3KWQekmN4ywRkzRRoCwLb1wL/pqLgyL8+K7dpj4E=; b=ejyRH42E9py+cIDJ/g3bn2LTAs+N7HqNg4/tI1nP8XK1tvyOcANCcDayPsPnxNriOa HBCy3pYHIIkmR9ko8iMJQN8fJICrbtlcLFr4A5bC8V2uXrLhJT6FQp1kKOYntJwgtMNU 96es/hF4Gk5gsp9a1yfSUmNp8rxgFRyn499FtR+BuDkTLVzWZaYBt8c3bHGcIkn9t/Gi Gz/r2r9Ms7GH/WNdzF7muaUwyF3wjAHUpJvDMPueKEwhJxBLUShM8NHBqMIMBOHj8d7C I2wWotAFhTF8aVaWSUjklHOfxUdvfrlhZT0CdBGn2oCtOow/7GcY6ac/gAXJi8zr2w0K vUGg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id r184-20020a632bc1000000b0052cad187979si3548565pgr.147.2023.05.21.10.18.54; Sun, 21 May 2023 10:27:54 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230445AbjEUQQ5 (ORCPT + 99 others); Sun, 21 May 2023 12:16:57 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34722 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229481AbjEUQQz (ORCPT ); Sun, 21 May 2023 12:16:55 -0400 Received: from smtp.missinglinkelectronics.com (smtp.missinglinkelectronics.com [162.55.135.183]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 51FADCD; Sun, 21 May 2023 09:16:54 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by smtp.missinglinkelectronics.com (Postfix) with ESMTP id D39152066D; Sun, 21 May 2023 18:16:52 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at missinglinkelectronics.com Received: from smtp.missinglinkelectronics.com ([127.0.0.1]) by localhost (mail.missinglinkelectronics.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id OEh0cj1Q3MH7; Sun, 21 May 2023 18:16:52 +0200 (CEST) Received: from nucnuc.mle (p578c5bfe.dip0.t-ipconnect.de [87.140.91.254]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: david) by smtp.missinglinkelectronics.com (Postfix) with ESMTPSA id 1CD402041E; Sun, 21 May 2023 18:16:52 +0200 (CEST) Date: Sun, 21 May 2023 18:16:50 +0200 From: David Epping To: Vladimir Oltean 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, UNGLinuxDriver@microchip.com Subject: Re: [PATCH net 3/3] net: phy: mscc: enable VSC8501/2 RGMII RX clock Message-ID: <20230521161650.GC2208@nucnuc.mle> References: <20230520160603.32458-1-david.epping@missinglinkelectronics.com> <20230520160603.32458-4-david.epping@missinglinkelectronics.com> <20230521134356.ar3itavhdypnvasc@skbuf> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230521134356.ar3itavhdypnvasc@skbuf> User-Agent: Mutt/1.9.4 (2018-02-28) X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_PASS, SPF_PASS,T_SCC_BODY_TEXT_LINE 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 On Sun, May 21, 2023 at 04:43:56PM +0300, Vladimir Oltean wrote: > Not only bit 11 is reserved for VSC8530, but it's also read-only, so it > should not matter what is written there. I agree and am ok with removing the PHY ID condition. > Since vsc85xx_rgmii_enable_rx_clk() and vsc85xx_rgmii_set_skews() write > to the same register, would it not make sense to combine the two into a > single phy_modify_paged() call, and to zeroize bit 11 as part of that? Since we found an explanation why the current driver works in some setups (U-Boot), I would go with the Microchip support statement, that writing bit 11 to 0 is required in all modes. It would thus stay a separate function, called without a phy mode condition, and not be combined with the RGMII skew setting function. > The other caller of vsc85xx_rgmii_set_skews(), VSC8572, unfortunately > does not document bit 11 at all - it doesn't say if it's read-only or not. > We could conditionally include the VSC8502_RGMII_RX_CLK_DISABLE bit in the > "mask" argument of phy_modify_paged() based on rgmii_cntl == VSC8502_RGMII_CNTL, > such as to exclude VSC8572. Because of the above, I would still call from vsc85xx_default_config(), so not for the PHYs where bit 11 is not documented. > What do you think? If you agree to the above, should the function be named vsc85xx_enable_rx_clk() or rather vsc8502_enable_rx_clk()? It is called for more than just VSC8502, but not for all of the PHYs the driver supports. The same is true for the existing vsc85xx_default_config(), however. I don't have a real preference.