From patchwork Fri Apr 8 16:08:22 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dan Murphy X-Patchwork-Id: 65415 Delivered-To: patch@linaro.org Received: by 10.112.43.237 with SMTP id z13csp156321lbl; Fri, 8 Apr 2016 09:08:40 -0700 (PDT) X-Received: by 10.28.211.1 with SMTP id k1mr4949549wmg.93.1460131720154; Fri, 08 Apr 2016 09:08:40 -0700 (PDT) Return-Path: Received: from theia.denx.de (theia.denx.de. [85.214.87.163]) by mx.google.com with ESMTP id 21si3637142wmu.10.2016.04.08.09.08.39; Fri, 08 Apr 2016 09:08:40 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 85.214.87.163 as permitted sender) client-ip=85.214.87.163; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 85.214.87.163 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id D5BE2A7531; Fri, 8 Apr 2016 18:08:35 +0200 (CEST) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hekckewl-iZZ; Fri, 8 Apr 2016 18:08:35 +0200 (CEST) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 671A9A7760; Fri, 8 Apr 2016 18:08:34 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id A7CB9A7635 for ; Fri, 8 Apr 2016 18:08:25 +0200 (CEST) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id LJWQzo4GhPiU for ; Fri, 8 Apr 2016 18:08:25 +0200 (CEST) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from comal.ext.ti.com (comal.ext.ti.com [198.47.26.152]) by theia.denx.de (Postfix) with ESMTPS id 1C9E2A7531 for ; Fri, 8 Apr 2016 18:08:21 +0200 (CEST) Received: from dlelxv90.itg.ti.com ([172.17.2.17]) by comal.ext.ti.com (8.13.7/8.13.7) with ESMTP id u38G8KXZ006193; Fri, 8 Apr 2016 11:08:20 -0500 Received: from DLEE71.ent.ti.com (dlee71.ent.ti.com [157.170.170.114]) by dlelxv90.itg.ti.com (8.14.3/8.13.8) with ESMTP id u38G8JNZ026607; Fri, 8 Apr 2016 11:08:20 -0500 Received: from dlep32.itg.ti.com (157.170.170.100) by DLEE71.ent.ti.com (157.170.170.114) with Microsoft SMTP Server id 14.3.224.2; Fri, 8 Apr 2016 11:08:19 -0500 Received: from legion.dal.design.ti.com (legion.dal.design.ti.com [128.247.22.53]) by dlep32.itg.ti.com (8.14.3/8.13.8) with ESMTP id u38G8Jah001163; Fri, 8 Apr 2016 11:08:19 -0500 Received: from localhost (a0272616local.am.dhcp.ti.com [172.22.141.132]) by legion.dal.design.ti.com (8.11.7p1+Sun/8.11.7) with ESMTP id u38G8J917944; Fri, 8 Apr 2016 11:08:19 -0500 (CDT) From: Dan Murphy To: Date: Fri, 8 Apr 2016 11:08:22 -0500 Message-ID: <1460131707-8496-2-git-send-email-dmurphy@ti.com> X-Mailer: git-send-email 2.7.2.333.g70bd996 In-Reply-To: <1460131707-8496-1-git-send-email-dmurphy@ti.com> References: <1460131707-8496-1-git-send-email-dmurphy@ti.com> MIME-Version: 1.0 Cc: trini@konsulko.com, michal.simek@xilinx.com Subject: [U-Boot] [uboot] [PATCH 2/7] net: zynq_gem: Add the passing of the phy-handle node X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.15 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Add the ability to pass the phy-handle node offset to the phy driver. This allows the phy driver to access the DT subnode's data and parse accordingly. Signed-off-by: Dan Murphy --- drivers/net/zynq_gem.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) -- 2.8.0.rc3 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c index aec8077..722927a 100644 --- a/drivers/net/zynq_gem.c +++ b/drivers/net/zynq_gem.c @@ -179,6 +179,7 @@ struct zynq_gem_priv { struct zynq_gem_regs *iobase; phy_interface_t interface; struct phy_device *phydev; + int phy_of_handle; struct mii_dev *bus; }; @@ -352,6 +353,10 @@ static int zynq_phy_init(struct udevice *dev) priv->phydev->supported = supported | ADVERTISED_Pause | ADVERTISED_Asym_Pause; priv->phydev->advertising = priv->phydev->supported; + + if (priv->phy_of_handle > 0) + priv->phydev->dev->of_offset = priv->phy_of_handle; + phy_config(priv->phydev); return 0; @@ -684,10 +689,11 @@ static int zynq_gem_ofdata_to_platdata(struct udevice *dev) priv->emio = 0; priv->phyaddr = -1; - offset = fdtdec_lookup_phandle(gd->fdt_blob, dev->of_offset, + priv->phy_of_handle = fdtdec_lookup_phandle(gd->fdt_blob, dev->of_offset, "phy-handle"); - if (offset > 0) - priv->phyaddr = fdtdec_get_int(gd->fdt_blob, offset, "reg", -1); + if (priv->phy_of_handle > 0) + priv->phyaddr = fdtdec_get_int(gd->fdt_blob, + priv->phy_of_handle, "reg", -1); phy_mode = fdt_getprop(gd->fdt_blob, dev->of_offset, "phy-mode", NULL); if (phy_mode)