From: Guennadi Liakhovetski <lg@denx.de>
To: Peter Korsgaard <jacmet@sunsite.dk>
Cc: Steve.Glendinning@smsc.com, netdev@vger.kernel.org,
Ian.Saturley@smsc.com
Subject: [PATCH] smc911x: Add support for LAN921{5,7,8} chips from SMSC
Date: Sat, 11 Oct 2008 23:13:30 +0200 (CEST) [thread overview]
Message-ID: <Pine.LNX.4.64.0810112311030.4965@axis700.grange> (raw)
In-Reply-To: <87k5cfoz7b.fsf@macbook.be.48ers.dk>
LAN92{5,7,8} chips from SMSC are register compatible with LAN911{5,6,7,8}
controllers, and only add support for HP Auto-MDIX. LAN9218 doesn't have
an external MII interface. Also fixes a couple of minor style issues.
Signed-off-by: Guennadi Liakhovetski <lg@denx.de>
---
against 2.6.27
drivers/net/smc911x.c | 15 +++++++--------
drivers/net/smc911x.h | 14 ++++++++++----
2 files changed, 17 insertions(+), 12 deletions(-)
diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c
index dbc51e9..428b852 100644
--- a/drivers/net/smc911x.c
+++ b/drivers/net/smc911x.c
@@ -685,8 +685,10 @@ static void smc911x_phy_detect(struct net_device *dev)
* PHY#1 to PHY#31, and then PHY#0 last.
*/
switch(lp->version) {
- case 0x115:
- case 0x117:
+ case CHIP_9115:
+ case CHIP_9117:
+ case CHIP_9215:
+ case CHIP_9217:
cfg = SMC_GET_HW_CFG(lp);
if (cfg & HW_CFG_EXT_PHY_DET_) {
cfg &= ~HW_CFG_PHY_CLK_SEL_;
@@ -995,7 +997,7 @@ static void smc911x_phy_interrupt(struct net_device *dev)
smc911x_phy_check_media(dev, 0);
/* read to clear status bits */
- SMC_GET_PHY_INT_SRC(lp, phyaddr,status);
+ SMC_GET_PHY_INT_SRC(lp, phyaddr, status);
DBG(SMC_DEBUG_MISC, "%s: PHY interrupt status 0x%04x\n",
dev->name, status & 0xffff);
DBG(SMC_DEBUG_MISC, "%s: AFC_CFG 0x%08x\n",
@@ -1033,7 +1035,6 @@ static irqreturn_t smc911x_interrupt(int irq, void *dev_id)
/* set a timeout value, so I don't stay here forever */
timeout = 8;
-
do {
status = SMC_GET_INT(lp);
@@ -1172,12 +1173,10 @@ static irqreturn_t smc911x_interrupt(int irq, void *dev_id)
/* restore mask state */
SMC_SET_INT_EN(lp, mask);
- DBG(SMC_DEBUG_MISC, "%s: Interrupt done (%d loops)\n",
- dev->name, 8-timeout);
-
spin_unlock_irqrestore(&lp->lock, flags);
- DBG(3, "%s: Interrupt done (%d loops)\n", dev->name, 8-timeout);
+ DBG(SMC_DEBUG_MISC, "%s: Interrupt done (%d loops)\n",
+ dev->name, 8-timeout);
return IRQ_HANDLED;
}
diff --git a/drivers/net/smc911x.h b/drivers/net/smc911x.h
index 2abfc28..bf6240f 100644
--- a/drivers/net/smc911x.h
+++ b/drivers/net/smc911x.h
@@ -666,10 +666,13 @@ smc_pxa_dma_outsl(struct smc911x_local *lp, u_long physaddr,
#define LAN911X_INTERNAL_PHY_ID (0x0007C000)
/* Chip ID values */
-#define CHIP_9115 0x115
-#define CHIP_9116 0x116
-#define CHIP_9117 0x117
-#define CHIP_9118 0x118
+#define CHIP_9115 0x0115
+#define CHIP_9116 0x0116
+#define CHIP_9117 0x0117
+#define CHIP_9118 0x0118
+#define CHIP_9215 0x115A
+#define CHIP_9217 0x117A
+#define CHIP_9218 0x118A
struct chip_id {
u16 id;
@@ -681,6 +684,9 @@ static const struct chip_id chip_ids[] = {
{ CHIP_9116, "LAN9116" },
{ CHIP_9117, "LAN9117" },
{ CHIP_9118, "LAN9118" },
+ { CHIP_9215, "LAN9215" },
+ { CHIP_9217, "LAN9217" },
+ { CHIP_9218, "LAN9218" },
{ 0, NULL },
};
--
1.5.4
next prev parent reply other threads:[~2008-10-11 21:13 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-09 15:26 Extend smc911x to support LAN921x chips - differences? Steve.Glendinning
2008-09-09 16:18 ` Guennadi Liakhovetski
2008-09-09 20:08 ` Peter Korsgaard
2008-10-10 23:33 ` [PATCH, RFC] Extend smc911x to support LAN921x chips Guennadi Liakhovetski
2008-10-11 7:22 ` Peter Korsgaard
2008-10-11 9:00 ` Guennadi Liakhovetski
2008-10-11 16:48 ` Peter Korsgaard
2008-10-11 20:30 ` Guennadi Liakhovetski
2008-10-12 7:38 ` Peter Korsgaard
2008-10-11 21:10 ` [PATCH] smc911x: Fix external PHY detection Guennadi Liakhovetski
2008-10-11 22:07 ` David Miller
2008-10-12 7:43 ` Peter Korsgaard
2008-10-11 21:13 ` Guennadi Liakhovetski [this message]
2008-10-11 22:08 ` [PATCH] smc911x: Add support for LAN921{5,7,8} chips from SMSC David Miller
2008-10-11 22:59 ` [PATCH v2] " Guennadi Liakhovetski
2008-10-12 7:54 ` Peter Korsgaard
2008-10-13 4:05 ` David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Pine.LNX.4.64.0810112311030.4965@axis700.grange \
--to=lg@denx.de \
--cc=Ian.Saturley@smsc.com \
--cc=Steve.Glendinning@smsc.com \
--cc=jacmet@sunsite.dk \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox