From patchwork Wed Sep 21 23:05:02 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joel Stanley X-Patchwork-Id: 76725 Delivered-To: patch@linaro.org Received: by 10.140.106.72 with SMTP id d66csp2297316qgf; Wed, 21 Sep 2016 16:06:12 -0700 (PDT) X-Received: by 10.98.217.199 with SMTP id b68mr40066170pfl.74.1474499172339; Wed, 21 Sep 2016 16:06:12 -0700 (PDT) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y68si555077pfk.180.2016.09.21.16.06.12; Wed, 21 Sep 2016 16:06:12 -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=fail header.i=@gmail.com; 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 S934388AbcIUXGJ (ORCPT + 27 others); Wed, 21 Sep 2016 19:06:09 -0400 Received: from mail-pf0-f195.google.com ([209.85.192.195]:33615 "EHLO mail-pf0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934062AbcIUXGD (ORCPT ); Wed, 21 Sep 2016 19:06:03 -0400 Received: by mail-pf0-f195.google.com with SMTP id q2so2923127pfj.0; Wed, 21 Sep 2016 16:06:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=IBd3R8oYQusMFIUdB3lDiPvWQNYB/fugSpadEBZNPMg=; b=Q4w2VZw6KhvkFX/lkc+WVw/19N2ZMnnCZ+GWl1owfMgnCu7JW5cm0e4N6nmqWlT6k4 bsrEmIS3nD+iVMzMFTMXg9N2G2wOUsUQWJBjlCRmUj/7Vl1rfs4ZdlLiAlfE984N1Zux NJrv4s2ul6pEkzu36ZHud0xR3jn/NCLr6OpCcFrMVh1GQK17uwQ+olYipFHrhSHvqE69 zOrv86nSxL9IADgOOLwFbLdU6juQ1Q8wMv9qT1kgH5/IR51Fg7EtMW8wmpVwU8/RfpzR XzHqHOvDX7codkacRShJB3RjNTX/uZU2vR/Zvt8Haxqy4PspIoDBk9jYfPlCvXjrKdD0 H1sQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=IBd3R8oYQusMFIUdB3lDiPvWQNYB/fugSpadEBZNPMg=; b=aHAg1fmoqoMVjVZxhJno86mxQjNuIw4XrLkxNQeX9ucCMtc2iqHthGQRvrX9pQNtJS kI1xm4HgjW8POeDhq55xZlTBVoeafHhcyheERdVZy48iNbmFAlUr5h03fZuS3CE0NdoX M+npkYcoPvIyTXc+NfLWXkBipf1qBoDElN3ah9m1J7Sm3DV16jzZd8/tA3v/YwPn+8qB RLqFD2I06fg9lA2UddJ88Mee0ZNGEUWqt2dAenJVzZ4WwZ06as2xFKyksmzmQJl8Hbc4 cbpFaBvrSkxPMgwWCGIE3NjtcmK0mlnbSkBXofIDRB1MW5EdVNR0fnLijW06ZixeyDt6 xdBQ== X-Gm-Message-State: AE9vXwMxuN+b1WtBF34d69G7oe1BNus0gDD/NUVuK1pXbSV3TtgymxeW+89XAb/Sv+KcYw== X-Received: by 10.98.58.65 with SMTP id h62mr69265997pfa.82.1474499162710; Wed, 21 Sep 2016 16:06:02 -0700 (PDT) Received: from aurora.jms.id.au ([2403:480:11:8000:c0f3:c161:fe9a:f6bb]) by smtp.gmail.com with ESMTPSA id 3sm303546pfz.33.2016.09.21.16.05.57 (version=TLS1 cipher=AES128-SHA bits=128/128); Wed, 21 Sep 2016 16:06:02 -0700 (PDT) Received: by aurora.jms.id.au (sSMTP sendmail emulation); Thu, 22 Sep 2016 08:35:53 +0930 From: Joel Stanley To: davem@davemloft.net Cc: clg@kaod.org, gwshan@linux.vnet.ibm.com, andrew@lunn.ch, andrew@aj.id.au, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, benh@kernel.crashing.org Subject: [PATCH net-next v2 5/6] net/faraday: Configure old MDIO interface on Aspeed SoCs Date: Thu, 22 Sep 2016 08:35:02 +0930 Message-Id: <20160921230503.23309-6-joel@jms.id.au> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20160921230503.23309-1-joel@jms.id.au> References: <20160921230503.23309-1-joel@jms.id.au> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The Aspeed SoCs have a new MDIO interface as an option in the G4 and G5 SoCs. The old one is still available, so select it in order to remain compatible with the ftgmac100 driver. Signed-off-by: Joel Stanley --- drivers/net/ethernet/faraday/ftgmac100.c | 9 +++++++++ drivers/net/ethernet/faraday/ftgmac100.h | 5 +++++ 2 files changed, 14 insertions(+) -- 2.9.3 diff --git a/drivers/net/ethernet/faraday/ftgmac100.c b/drivers/net/ethernet/faraday/ftgmac100.c index 189373743ddf..e3653b14008a 100644 --- a/drivers/net/ethernet/faraday/ftgmac100.c +++ b/drivers/net/ethernet/faraday/ftgmac100.c @@ -1252,12 +1252,21 @@ static int ftgmac100_setup_mdio(struct net_device *netdev) struct ftgmac100 *priv = netdev_priv(netdev); struct platform_device *pdev = to_platform_device(priv->dev); int i, err = 0; + u32 reg; /* initialize mdio bus */ priv->mii_bus = mdiobus_alloc(); if (!priv->mii_bus) return -EIO; + if (of_machine_is_compatible("aspeed,ast2400") || + of_machine_is_compatible("aspeed,ast2500")) { + /* This driver supports the old MDIO interface */ + reg = ioread32(priv->base + FTGMAC100_OFFSET_REVR); + reg &= ~FTGMAC100_REVR_NEW_MDIO_INTERFACE; + iowrite32(reg, priv->base + FTGMAC100_OFFSET_REVR); + }; + priv->mii_bus->name = "ftgmac100_mdio"; snprintf(priv->mii_bus->id, MII_BUS_ID_SIZE, "%s-%d", pdev->name, pdev->id); diff --git a/drivers/net/ethernet/faraday/ftgmac100.h b/drivers/net/ethernet/faraday/ftgmac100.h index c258586ce4a4..8a377ab1d127 100644 --- a/drivers/net/ethernet/faraday/ftgmac100.h +++ b/drivers/net/ethernet/faraday/ftgmac100.h @@ -134,6 +134,11 @@ #define FTGMAC100_DMAFIFOS_TXDMA_REQ (1 << 31) /* + * Feature Register + */ +#define FTGMAC100_REVR_NEW_MDIO_INTERFACE BIT(31) + +/* * Receive buffer size register */ #define FTGMAC100_RBSR_SIZE(x) ((x) & 0x3fff)