From patchwork Tue Mar 24 06:47:25 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Zhao X-Patchwork-Id: 24943 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.176.167]) by ozlabs.org (Postfix) with ESMTP id 5DDF3DDE0E for ; Tue, 24 Mar 2009 17:47:40 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756090AbZCXGr2 (ORCPT ); Tue, 24 Mar 2009 02:47:28 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1755617AbZCXGr1 (ORCPT ); Tue, 24 Mar 2009 02:47:27 -0400 Received: from wa-out-1112.google.com ([209.85.146.177]:29653 "EHLO wa-out-1112.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754582AbZCXGr0 (ORCPT ); Tue, 24 Mar 2009 02:47:26 -0400 Received: by wa-out-1112.google.com with SMTP id j5so1704302wah.21 for ; Mon, 23 Mar 2009 23:47:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=it7YGJVwxFg9p07gi3qtJE7QkLAILW3xgmpgFgqU1ps=; b=BCWKF2DifejF/v9doKh7GgHnp8CUUw+xxaZayLrufZ8aCyJFPnG32kF+OxmjqjcLRp RTFEEULDYwhmoljcSP+UBsrWgcoiXkmL7XZY5KQWLsMQ0abq92fYDW+BIKZaifA5fP/z 7YlI9qothXX2+c41te3PBPWLsDPEeXaOO72m8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=wUXpMv8youATTpmf0sZUMhX1TT90V/WO4IubT+diHQu5oQC3nFlbXJ2OBuYGFQL8Zs skcWHcIJC2B4RwutG2X6AcBo79xKOQWJmFfffs38g492NjEVaVNJK5sUhY7uNrRQ8pVm GiJO1rAX1rli8UoSnQz5H3xtET0hRGpwMW/jI= MIME-Version: 1.0 Received: by 10.114.147.1 with SMTP id u1mr5382277wad.115.1237877245292; Mon, 23 Mar 2009 23:47:25 -0700 (PDT) Date: Tue, 24 Mar 2009 14:47:25 +0800 Message-ID: <4e090d470903232347g2b6e91a7o385af2e66f05a936@mail.gmail.com> Subject: [PATCH 3/3] smsc911x: add flag SMSC911X_USE_INTERPHY From: Richard Zhao To: steve.glendinning@smsc.com, netdev@vger.kernel.org Cc: linux-arm-kernel@lists.arm.linux.org.uk, kernel@pengutronix.de Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org mx31pdk board don't have external PHY, but it wrongly pull up MDIO. So, add flag SMSC911X_USE_INTERPHY to force using internal PHY. Signed-off-by: Richard Zhao diff --git a/drivers/net/smsc911x.c b/drivers/net/smsc911x.c index d1590ac..60f7b74 100644 --- a/drivers/net/smsc911x.c +++ b/drivers/net/smsc911x.c @@ -831,10 +831,12 @@ static int __devinit smsc911x_mii_init(struct platform_device *pdev, case 0x01150000: case 0x117A0000: case 0x115A0000: - /* External PHY supported, try to autodetect */ - if (smsc911x_phy_initialise_external(pdata) < 0) { - SMSC_TRACE(HW, "No external PHY detected, " - "using internal PHY"); + if (!(pdata->config & SMSC911X_USE_INTERPHY)) { + /* External PHY supported, try to autodetect */ + if (smsc911x_phy_initialise_external(pdata) < 0) { + SMSC_TRACE(HW, "No external PHY detected, " + "using internal PHY"); + } } break; default: diff --git a/include/linux/smsc911x.h b/include/linux/smsc911x.h index 1cbf031..42b088d 100644 --- a/include/linux/smsc911x.h +++ b/include/linux/smsc911x.h @@ -43,5 +43,6 @@ struct smsc911x_platform_config { /* Constants for flags */ #define SMSC911X_USE_16BIT (BIT(0)) #define SMSC911X_USE_32BIT (BIT(1)) +#define SMSC911X_USE_INTERPHY (BIT(2)) #endif /* __LINUX_SMSC911X_H__ */