diff options
Diffstat (limited to 'drivers/net/smc911x.c')
-rw-r--r-- | drivers/net/smc911x.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c index 02cc064c2c8b..8aa7460ef0e3 100644 --- a/drivers/net/smc911x.c +++ b/drivers/net/smc911x.c | |||
@@ -685,8 +685,10 @@ static void smc911x_phy_detect(struct net_device *dev) | |||
685 | * PHY#1 to PHY#31, and then PHY#0 last. | 685 | * PHY#1 to PHY#31, and then PHY#0 last. |
686 | */ | 686 | */ |
687 | switch(lp->version) { | 687 | switch(lp->version) { |
688 | case 0x115: | 688 | case CHIP_9115: |
689 | case 0x117: | 689 | case CHIP_9117: |
690 | case CHIP_9215: | ||
691 | case CHIP_9217: | ||
690 | cfg = SMC_GET_HW_CFG(lp); | 692 | cfg = SMC_GET_HW_CFG(lp); |
691 | if (cfg & HW_CFG_EXT_PHY_DET_) { | 693 | if (cfg & HW_CFG_EXT_PHY_DET_) { |
692 | cfg &= ~HW_CFG_PHY_CLK_SEL_; | 694 | cfg &= ~HW_CFG_PHY_CLK_SEL_; |
@@ -722,6 +724,9 @@ static void smc911x_phy_detect(struct net_device *dev) | |||
722 | break; | 724 | break; |
723 | } | 725 | } |
724 | } | 726 | } |
727 | if (phyaddr < 32) | ||
728 | /* Found an external PHY */ | ||
729 | break; | ||
725 | } | 730 | } |
726 | default: | 731 | default: |
727 | /* Internal media only */ | 732 | /* Internal media only */ |