* [U-Boot] [PATCH] Correct chip detect logic
@ 2010-12-26 2:41 Yanjun Yang
2010-12-27 11:29 ` Sergei Shtylyov
0 siblings, 1 reply; 2+ messages in thread
From: Yanjun Yang @ 2010-12-26 2:41 UTC (permalink / raw)
To: u-boot
The lan91c96_detect_chip routine is not correct according
to the manual.
Signed-off-by: YanJun Yang <yangyj.ee@gmail.com>
---
drivers/net/lan91c96.c | 2 +-
drivers/net/lan91c96.h | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/net/lan91c96.c b/drivers/net/lan91c96.c
index bd6966e..2550aa2 100644
--- a/drivers/net/lan91c96.c
+++ b/drivers/net/lan91c96.c
@@ -780,7 +780,7 @@ static int lan91c96_detect_chip(struct eth_device *dev)
u8 chip_id;
int r;
SMC_SELECT_BANK(dev, 3);
- chip_id = SMC_inw(dev, 0xA) & LAN91C96_REV_REVID;
+ chip_id = (SMC_inw(dev, 0xA) & LAN91C96_REV_CHIPID) >>
LAN91C96_CHIPID_SHIFT;
SMC_SELECT_BANK(dev, 0);
for (r = 0; r < sizeof(supported_chips) / sizeof(struct id_type); r++)
if (chip_id == supported_chips[r].id)
diff --git a/drivers/net/lan91c96.h b/drivers/net/lan91c96.h
index 6fbb0e3..609c92b 100644
--- a/drivers/net/lan91c96.h
+++ b/drivers/net/lan91c96.h
@@ -519,7 +519,8 @@ typedef unsigned long int dword;
****************************************************************************
*/
#define LAN91C96_REV_REVID (0xFU << 0)
-#define LAN91C96_REV_CHIPID (0xFU << 4)
+#define LAN91C96_CHIPID_SHIFT 4
+#define LAN91C96_REV_CHIPID (0xFU << LAN91C96_CHIPID_SHIFT)
/*
****************************************************************************
--
1.5.6.5
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [U-Boot] [PATCH] Correct chip detect logic
2010-12-26 2:41 [U-Boot] [PATCH] Correct chip detect logic Yanjun Yang
@ 2010-12-27 11:29 ` Sergei Shtylyov
0 siblings, 0 replies; 2+ messages in thread
From: Sergei Shtylyov @ 2010-12-27 11:29 UTC (permalink / raw)
To: u-boot
Hello.
On 26-12-2010 5:41, Yanjun Yang wrote:
> The lan91c96_detect_chip routine is not correct according
> to the manual.
> Signed-off-by: YanJun Yang<yangyj.ee@gmail.com>
[...]
> diff --git a/drivers/net/lan91c96.c b/drivers/net/lan91c96.c
> index bd6966e..2550aa2 100644
> --- a/drivers/net/lan91c96.c
> +++ b/drivers/net/lan91c96.c
> @@ -780,7 +780,7 @@ static int lan91c96_detect_chip(struct eth_device *dev)
> u8 chip_id;
> int r;
> SMC_SELECT_BANK(dev, 3);
> - chip_id = SMC_inw(dev, 0xA)& LAN91C96_REV_REVID;
> + chip_id = (SMC_inw(dev, 0xA)& LAN91C96_REV_CHIPID)>>
Indent with tabs, not spaces.
> LAN91C96_CHIPID_SHIFT;
Your patch is line-wrapped.
> SMC_SELECT_BANK(dev, 0);
> for (r = 0; r< sizeof(supported_chips) / sizeof(struct id_type); r++)
> if (chip_id == supported_chips[r].id)
> diff --git a/drivers/net/lan91c96.h b/drivers/net/lan91c96.h
> index 6fbb0e3..609c92b 100644
> --- a/drivers/net/lan91c96.h
> +++ b/drivers/net/lan91c96.h
> @@ -519,7 +519,8 @@ typedef unsigned long int dword;
> ****************************************************************************
> */
> #define LAN91C96_REV_REVID (0xFU<< 0)
> -#define LAN91C96_REV_CHIPID (0xFU<< 4)
> +#define LAN91C96_CHIPID_SHIFT 4
> +#define LAN91C96_REV_CHIPID (0xFU<< LAN91C96_CHIPID_SHIFT)
Align the macro values please.
WBR, Sergei
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-12-27 11:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-26 2:41 [U-Boot] [PATCH] Correct chip detect logic Yanjun Yang
2010-12-27 11:29 ` Sergei Shtylyov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox