Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp3214010imm; Tue, 4 Sep 2018 18:09:25 -0700 (PDT) X-Google-Smtp-Source: ANB0Vda95iPjtZvo4px/NXqJ1YJMIXhG+bP86cSsvaDiSHNxby28d4gfk3gwsYC4o5MkPmYQ4Eu8 X-Received: by 2002:a17:902:2804:: with SMTP id e4-v6mr35962883plb.327.1536109765383; Tue, 04 Sep 2018 18:09:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1536109765; cv=none; d=google.com; s=arc-20160816; b=jFIjTtGgGCBPWe39/PctBfOXrg9kjfzYsMK/9yq3X7qVbXhEmI+y16tcLszi9ya/uW UY/N2yATKEKbpuIWzyVIXSiYNhqYzzFvbmyi2UYaDy6zG969Wj30+5888hvE5zSsstRI fYDktfYUupsB81HhtQCFAxXu8s4nfskAV8AEErzTTXzXSAbkfNlNMS1iJhoCVXmzj+BQ IfhrYBooa7BvvuaYt2FT5/857vqTM2FpYDXm9yWCTyTzb9GLfi5V9oVF2VbSsJRlPVTF ugrBYGD9RdYXrgrRL1JaRtke+kcvkw75c6EnJeJCOkzdF56AyxmtjC5zD5FH7dcv8I66 i5CQ== 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:dkim-signature; bh=/DzokV9yKpRI1xBDAJpjMelIzPlMSsIbStb2Ra+5Plg=; b=IAR+mkgfDTal/cvf0HVHZt9YFyj5wYhma+0Mn4cqF8MdCyTxWs7Gxzqd7dhZZ9cT4N MmLQv8RXpbaIzu6y0AvMNUX3tJbFb6noFcGyUzN3kvWhe1JcsBy4t39dOHbRjc0C0bGf 0KTT/0cHNmSrL1RCUau7GoALReaP3FS9vgCIAzs2SOaxwdwraNJlgid9MxcZkf7nLzCx kLuDa1NL73xw/ep7pZrVlgAb1OyyAGpmnZw1doa6RHhm2Mxw4PLQLZ/SD6mMZzuFZHjw Un8YyVY8UzpKTGQblEO3Q+SZC8Hi08AgOxnR27TsU4z0QqHvrlsIIS/phO/OssQWnrMt EvJA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@lunn.ch header.s=20171124 header.b=qLtjirJJ; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b5-v6si395849plr.101.2018.09.04.18.09.08; Tue, 04 Sep 2018 18:09:25 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@lunn.ch header.s=20171124 header.b=qLtjirJJ; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726290AbeIEFfj (ORCPT + 99 others); Wed, 5 Sep 2018 01:35:39 -0400 Received: from vps0.lunn.ch ([185.16.172.187]:52421 "EHLO vps0.lunn.ch" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725886AbeIEFfi (ORCPT ); Wed, 5 Sep 2018 01:35:38 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lunn.ch; s=20171124; h=In-Reply-To:Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date; bh=/DzokV9yKpRI1xBDAJpjMelIzPlMSsIbStb2Ra+5Plg=; b=qLtjirJJysQqccb8CyTVPljVgqKwJXmt6vozxeWJUr2xITPutgSnJBzR8+tq1TSbAAGxJ9DCJKo48kGH0X2BR0W5eo+buTqM4GOfrOFGYHl8th6UjoFD2N6mrg0O4FEub+H3nK8FBqrRRxZr/juQOuhoK/HEyVkydymwQyS+mME=; Received: from andrew by vps0.lunn.ch with local (Exim 4.84_2) (envelope-from ) id 1fxMIV-00044F-35; Wed, 05 Sep 2018 03:07:55 +0200 Date: Wed, 5 Sep 2018 03:07:55 +0200 From: Andrew Lunn To: Moritz Fischer Cc: netdev@vger.kernel.org, davem@davemloft.net, f.fainelli@gmail.com, alex.williams@ni.com, moritz.fischer@ettus.com, linux-kernel@vger.kernel.org Subject: Re: [RFC/PATCH] net: nixge: Add PHYLINK support Message-ID: <20180905010755.GO29121@lunn.ch> References: <20180905001535.19168-1-mdf@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180905001535.19168-1-mdf@kernel.org> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > -static void nixge_handle_link_change(struct net_device *ndev) > -{ > - struct nixge_priv *priv = netdev_priv(ndev); > - struct phy_device *phydev = ndev->phydev; > - > - if (phydev->link != priv->link || phydev->speed != priv->speed || > - phydev->duplex != priv->duplex) { > - priv->link = phydev->link; > - priv->speed = phydev->speed; > - priv->duplex = phydev->duplex; > - phy_print_status(phydev); > - } > -} I think this is why you are having trouble with the phylink callbacks. You currently don't have any configuration of the MAC. You normally need to tell the MAC what speed it should be doing. What duplex it should be doing, if the link is up or down, if it should do pause, or asym pause or no pause, etc. Andrew