Received: by 2002:a25:23cc:0:0:0:0:0 with SMTP id j195csp1087008ybj; Tue, 5 May 2020 12:48:50 -0700 (PDT) X-Google-Smtp-Source: APiQypKMQT184CeHv7cMY345PBmDAjeCZVsmfcUo4LR0pY2oLEfKbsD5hgUSPVnqgHnsK6zRY5h1 X-Received: by 2002:a17:907:2142:: with SMTP id rk2mr2174956ejb.225.1588708129918; Tue, 05 May 2020 12:48:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588708129; cv=none; d=google.com; s=arc-20160816; b=jBREzrAYl45ipcoYP/aIOPsstIkzoD2xll9M9TrNuOAR7sN8I3ff8rlpxQcCBEUMqO +lVI9Ps5bLYjrLabV/C91M01NZ6N++VKu7ObfZr57HpxZmlzQHL0El5bLHBfz973vaOQ a21gPlMTHECv97xsuBTJI4jJlQs33OsQvUcPJO/A/TtS+79gOQJBHUkJcQsTUEEobUHf xrHkEGoGwiI/xhL0kFJVranWJf3UobAx52ElxA1TUQwu3APLQZqg7ww6v7RKoPyHMyxT 6XZOBrSBfQ70ozZnqmZU080+E+iygJAaQywh6J3sdJkbw6LafdfLyk0I8wYzpRhbevmf X91Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=K0CPwP+uUETQWhx4Eefug1xPJmgLMLYpzeBtc2GJ6Cs=; b=We2UBZw9fy4vNufDzAtKwwONhFCWWAoxf3h0lztXn9gZQzZQtF1G/0GIM4rnTVtsqL KBagAJ6nIITw/YDSXUubPLYF7S41ufLRK2/4qE0DwqfF4XW8Z9RJq4oUGghyIie/t/lR WASDS1w7VjX+Dx2OhvM7L3UUE00ctHjADkZsrIQIbOOim2BwJy8eOFTSaQQwkDk8YZUu CaWjSc/qTXxI8AyjCUQhW1s9fALuUSErDil3bQlcpyEQWgUlJ+0XTiBECQy0TjsxsN94 DvkfeUYwtwFH6oj4GxAY7cbyy6R4P4KR+j91jnv2MT4SLqsJVQuuBm+XsiOvqBGge7hh D/CA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id c21si1899722edx.105.2020.05.05.12.48.26; Tue, 05 May 2020 12:48:49 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729072AbgEETo4 (ORCPT + 99 others); Tue, 5 May 2020 15:44:56 -0400 Received: from mx2.suse.de ([195.135.220.15]:49510 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728737AbgEEToz (ORCPT ); Tue, 5 May 2020 15:44:55 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 4E41FABBE; Tue, 5 May 2020 19:44:56 +0000 (UTC) Received: by lion.mk-sys.cz (Postfix, from userid 1000) id 7E685602B9; Tue, 5 May 2020 21:44:52 +0200 (CEST) Date: Tue, 5 May 2020 21:44:52 +0200 From: Michal Kubecek To: netdev@vger.kernel.org Cc: Oleksij Rempel , Andrew Lunn , "David S. Miller" , Florian Fainelli , Heiner Kallweit , Jakub Kicinski , Jonathan Corbet , David Jander , kernel@pengutronix.de, linux-kernel@vger.kernel.org, Russell King , mkl@pengutronix.de, Marek Vasut , Christian Herber Subject: Re: [PATCH net-next v6 1/2] ethtool: provide UAPI for PHY master/slave configuration. Message-ID: <20200505194452.GP8237@lion.mk-sys.cz> References: <20200505063506.3848-1-o.rempel@pengutronix.de> <20200505063506.3848-2-o.rempel@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200505063506.3848-2-o.rempel@pengutronix.de> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, May 05, 2020 at 08:35:05AM +0200, Oleksij Rempel wrote: > This UAPI is needed for BroadR-Reach 100BASE-T1 devices. Due to lack of > auto-negotiation support, we needed to be able to configure the > MASTER-SLAVE role of the port manually or from an application in user > space. > > The same UAPI can be used for 1000BASE-T or MultiGBASE-T devices to > force MASTER or SLAVE role. See IEEE 802.3-2018: > 22.2.4.3.7 MASTER-SLAVE control register (Register 9) > 22.2.4.3.8 MASTER-SLAVE status register (Register 10) > 40.5.2 MASTER-SLAVE configuration resolution > 45.2.1.185.1 MASTER-SLAVE config value (1.2100.14) > 45.2.7.10 MultiGBASE-T AN control 1 register (Register 7.32) > > The MASTER-SLAVE role affects the clock configuration: > > ------------------------------------------------------------------------------- > When the PHY is configured as MASTER, the PMA Transmit function shall > source TX_TCLK from a local clock source. When configured as SLAVE, the > PMA Transmit function shall source TX_TCLK from the clock recovered from > data stream provided by MASTER. > > iMX6Q KSZ9031 XXX > ------\ /-----------\ /------------\ > | | | | | > MAC |<----RGMII----->| PHY Slave |<------>| PHY Master | > |<--- 125 MHz ---+-<------/ | | \ | > ------/ \-----------/ \------------/ > ^ > \-TX_TCLK > > ------------------------------------------------------------------------------- > > Since some clock or link related issues are only reproducible in a > specific MASTER-SLAVE-role, MAC and PHY configuration, it is beneficial > to provide generic (not 100BASE-T1 specific) interface to the user space > for configuration flexibility and trouble shooting. > > Signed-off-by: Oleksij Rempel > --- I'm OK with the ethtool part and interface between ethtool and phy code but I'm not confident to review the low level genphy stuff so it would be nice if someone could check that. Michal