From patchwork Mon Apr 8 03:56:16 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Byungho An X-Patchwork-Id: 234562 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id BF4CA2C00B2 for ; Mon, 8 Apr 2013 13:56:22 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934295Ab3DHD4T (ORCPT ); Sun, 7 Apr 2013 23:56:19 -0400 Received: from mailout3.samsung.com ([203.254.224.33]:19979 "EHLO mailout3.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753286Ab3DHD4S (ORCPT ); Sun, 7 Apr 2013 23:56:18 -0400 Received: from epcpsbgr4.samsung.com (u144.gpu120.samsung.co.kr [203.254.230.144]) by mailout3.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0MKX005C049GMW80@mailout3.samsung.com> for netdev@vger.kernel.org; Mon, 08 Apr 2013 12:56:17 +0900 (KST) Received: from epcpsbgm1.samsung.com ( [203.254.230.48]) by epcpsbgr4.samsung.com (EPCPMTA) with SMTP id 74.D2.02019.1EF32615; Mon, 08 Apr 2013 12:56:17 +0900 (KST) X-AuditID: cbfee690-b7f656d0000007e3-3e-51623fe1fa1e Received: from epmmp2 ( [203.254.227.17]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id 58.CF.17838.0EF32615; Mon, 08 Apr 2013 12:56:17 +0900 (KST) Received: from DObh74an01 ([12.23.120.86]) by mmp2.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0MKX00J2G49S6F50@mmp2.samsung.com>; Mon, 08 Apr 2013 12:56:16 +0900 (KST) From: Byungho An To: netdev@vger.kernel.org Cc: 'Giuseppe CAVALLARO' , =?ks_c_5601-1987?B?J7HosbnB+Cc=?= , cpgs@samsung.com, davem@davemloft.net Subject: [PATCH net-next RESEND] stmmac: modified pcs mode support for SGMII Date: Mon, 08 Apr 2013 12:56:16 +0900 Message-id: <015701ce340d$052a71d0$0f7f5570$%an@samsung.com> MIME-version: 1.0 Content-type: text/plain; charset=ks_c_5601-1987 Content-transfer-encoding: 7bit X-Mailer: Microsoft Office Outlook 12.0 Thread-index: Ac40DQS8hn6Kp8kbTBOvqNF1miRueA== Content-language: ko X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrJIsWRmVeSWpSXmKPExsVy+t8zA92H9kmBBv9/s1q8PKRpMed8C4tF 74KrbBbHFohZ/H+9ldGB1WPLyptMHn1bVjF6PP2xl9nj8ya5AJYoLpuU1JzMstQifbsErowV u5YzFuwWqNj9ahV7A+N53i5GTg4JAROJe8tXsEHYYhIX7q0Hsrk4hASWMUqsOLWQFaZoyqfj 7BCJ6YwS05aeYoRwfjFKdHQ8BmtnE1CTaJ55GcwWEZCS+LhjO1gHM0jH5gk3mUASwgI+EtcO nwfq5uBgEVCV2LopByTMK2Aj8Xv1HCYIW1Dix+R7LCA2s4CBxPtZfawQtrzE5jVvmUFaJQTU JR791YVYpSfR/6+bGaJERGLfi3dgt0kI7GKXmH3sH1iCRUBA4tvkQywQvbISmw4wQzwmKXFw xQ2WCYxis5BsnoVk8ywkm2chWbGAkWUVo2hqQXJBcVJ6kYlecWJucWleul5yfu4mRki0TdjB eO+A9SHGZKD1E5mlRJPzgdGaVxJvaGxmZGFqYmpsZG5pRpqwkjiveot1oJBAemJJanZqakFq UXxRaU5q8SFGJg5OqQbGuJ8Lv3TXnFumHxGS8KXmjNqP13JCdqtk/68S+bQ0SoPh+P9vfZ3s ttHs9mJSD6cpLC1z2r5uo5A2wwcPMXEli4fu/5mrS3T3l1194SZVdziT/bP+8rXnwxwPnvnZ FGkWLBp6SGWxqeYNnd8aqxQXy3k+qNRIXqLV5/Dq+MUt4Qf0Tb6s+rJKiaU4I9FQi7moOBEA gI1gOcwCAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprKKsWRmVeSWpSXmKPExsVy+t9jQd2H9kmBBqdrLF4e0rSYc76FxaJ3 wVU2i2MLxCz+v97K6MDqsWXlTSaPvi2rGD2e/tjL7PF5k1wAS1QDo01GamJKapFCal5yfkpm XrqtkndwvHO8qZmBoa6hpYW5kkJeYm6qrZKLT4CuW2YO0FYlhbLEnFKgUEBicbGSvh2mCaEh broWMI0Rur4hQXA9RgZoIGEdY8aKXcsZC3YLVOx+tYq9gfE8bxcjJ4eEgInElE/H2SFsMYkL 99azdTFycQgJTGeUmLb0FCOE84tRoqPjMRtIFZuAmkTzzMtgtoiAlMTHHdvZQYqYQTo2T7jJ BJIQFvCRuHb4PFA3BweLgKrE1k05IGFeARuJ36vnMEHYghI/Jt9jAbGZBQwk3s/qY4Ww5SU2 r3nLDNIqIaAu8eivLsQqPYn+f93MECUiEvtevGOcwCgwC8mkWUgmzUIyaRaSlgWMLKsYRVML kguKk9JzDfWKE3OLS/PS9ZLzczcxgiP5mdQOxpUNFocYBTgYlXh4JX8kBgqxJpYVV+YeYpTg YFYS4Q1UTgoU4k1JrKxKLcqPLyrNSS0+xJgM9OdEZinR5HxgkskriTc0NjEzsjQyszAyMTcn TVhJnPdAq3WgkEB6YklqdmpqQWoRzBYmDk6pBkZjf+Ht1pbJKXtupjb3Meup/1t4dwPfmy9P nq0rdepwLUl4wHrj+oQNovvesdo/+Pfxn8LD0IN/U4/dzw/bNvmFjMqWh1+nlpRFL7C5vbck W81Dwcnn87TU1Oid0R63lCUZP/x8fstA5dQMUaeM14+6/mnYntuzqcFu7srosGccDHFLttS4 GRxWYinOSDTUYi4qTgQAXY83mSgDAAA= DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This patch modifies the pcs mode support for SGMII. Even though SGMII does auto-negotiation with phy, it needs stmmac_init_phy and stmmac_mdio_register function for initializing phy. Signed-off-by: Byungho An --- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c index 6b26d31..3ac9bd7 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -1504,7 +1504,8 @@ static int stmmac_open(struct net_device *dev) stmmac_check_ether_addr(priv); - if (!priv->pcs) { + if (priv->pcs != STMMAC_PCS_RGMII && priv->pcs != STMMAC_PCS_TBI && + priv->pcs != STMMAC_PCS_RTBI) { ret = stmmac_init_phy(dev); if (ret) { pr_err("%s: Cannot attach to PHY (error: %d)\n", @@ -1607,7 +1608,8 @@ static int stmmac_open(struct net_device *dev) /* Using PCS we cannot dial with the phy registers at this stage * so we do not support extra feature like EEE. */ - if (!priv->pcs) + if (priv->pcs != STMMAC_PCS_RGMII && priv->pcs != STMMAC_PCS_TBI && + priv->pcs != STMMAC_PCS_RTBI) priv->eee_enabled = stmmac_eee_init(priv); stmmac_init_tx_coalesce(priv); @@ -2637,7 +2639,8 @@ struct stmmac_priv *stmmac_dvr_probe(struct device *device, stmmac_check_pcs_mode(priv); - if (!priv->pcs) { + if (priv->pcs != STMMAC_PCS_RGMII && priv->pcs != STMMAC_PCS_TBI && + priv->pcs != STMMAC_PCS_RTBI) { /* MDIO bus Registration */ ret = stmmac_mdio_register(ndev); if (ret < 0) { @@ -2677,7 +2680,8 @@ int stmmac_dvr_remove(struct net_device *ndev) priv->hw->dma->stop_tx(priv->ioaddr); stmmac_set_mac(priv->ioaddr, false); - if (!priv->pcs) + if (priv->pcs != STMMAC_PCS_RGMII && priv->pcs != STMMAC_PCS_TBI && + priv->pcs != STMMAC_PCS_RTBI) stmmac_mdio_unregister(ndev); netif_carrier_off(ndev); unregister_netdev(ndev);