* [U-Boot] NET: SDP3430: trouble with shifting from LAN9C916 to SMC91XX driver
@ 2009-10-14 3:13 Nishanth Menon
2009-10-14 4:36 ` Ben Warren
0 siblings, 1 reply; 7+ messages in thread
From: Nishanth Menon @ 2009-10-14 3:13 UTC (permalink / raw)
To: u-boot
Hi Folks,
While attempting to address the warning for SDP3430 as pointed out by
dirk in [1], I did a patch corresponding to what was done for EVM(353x)
as in [2]. unfortunately, this wont work for me, I get:
U-Boot 2009.08-00515-gfea6a55-dirty (Oct 12 2009 - 14:03:23)
OMAP3530-GP ES3.0, CPU-OPP2 L3-165MHz
OMAP3 SDP3430 board + LPDDR/NOR
I2C: ready
DRAM: 128 MB
Flash: 128 MB
In: serial
Out: serial
Err: serial
smc911x: Invalid chip endian 0xdee0013d
Net: No ethernet found.
OMAP34XX SDP #
and no network, using LEGACY driver seems to be working just great for me.
Note: in my patch [2], I did try both CONFIG_SMC911X_32_BIT and
CONFIG_SMC911X_16_BIT with no luck either way. I even tried to hack the
driver by skipping the supported chip detection code, but the driver
still did not work for me.
scanning a little more in the git repo, I see all the ancient boards of
OMAP family - 5912,2420 etc.. still have LEGACY driver being used..
I am pretty sure I must be missing something here and appreciate any
guidance folks can give me on this..
--
Regards,
Nishanth Menon
Ref:
[1]
http://www.nabble.com/forum/Permalink.jtp?root=25837696&post=25841367&page=y
[2]
From fea6a55cb67b3fda1d93da74b2fe68fb25376e7e Mon Sep 17 00:00:00 2001
From: Nishanth Menon <nm@ti.com>
Date: Mon, 12 Oct 2009 13:54:17 -0500
Subject: [BAD][PATCH] TI OMAP3: SDP3430: dont use legacy ethernet driver
Stop using the LEGACY driver and use NET_MULTI
this also removes the build warning for SDP3430
---
board/ti/sdp3430/sdp.c | 8 +++++---
include/configs/omap3_sdp3430.h | 7 ++++---
2 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/board/ti/sdp3430/sdp.c b/board/ti/sdp3430/sdp.c
index 40cf26f..85181c8 100644
--- a/board/ti/sdp3430/sdp.c
+++ b/board/ti/sdp3430/sdp.c
@@ -22,6 +22,7 @@
* MA 02111-1307 USA
*/
#include <common.h>
+#include <netdev.h>
#include <twl4030.h>
#include <asm/io.h>
#include <asm/arch/mux.h>
@@ -121,8 +122,8 @@ int board_init(void)
return 0;
}
-#define LAN_RESET_REGISTER (CONFIG_LAN91C96_BASE + 0x01c)
-#define ETH_CONTROL_REG (CONFIG_LAN91C96_BASE + 0x30b)
+#define LAN_RESET_REGISTER (CONFIG_SMC911X_BASE + 0x01c)
+#define ETH_CONTROL_REG (CONFIG_SMC911X_BASE + 0x30b)
/**
* @brief ether_init Take the Ethernet controller out of reset and wait
@@ -130,7 +131,7 @@ int board_init(void)
*/
static void ether_init(void)
{
-#ifdef CONFIG_DRIVER_LAN91C96
+#ifdef CONFIG_SMC911X
int cnt = 20;
writew(0x0, LAN_RESET_REGISTER);
@@ -155,6 +156,7 @@ static void ether_init(void)
writeb(readb(ETH_CONTROL_REG) & ~0x1, ETH_CONTROL_REG);
udelay(1000);
+ smc911x_initialize(0, CONFIG_SMC911X_BASE);
reset_err_out:
return;
diff --git a/include/configs/omap3_sdp3430.h
b/include/configs/omap3_sdp3430.h
index 229dc5e..7b0a248 100644
--- a/include/configs/omap3_sdp3430.h
+++ b/include/configs/omap3_sdp3430.h
@@ -200,9 +200,10 @@
*/
#if defined(CONFIG_CMD_NET)
-#define CONFIG_DRIVER_LAN91C96
-#define CONFIG_LAN91C96_BASE DEBUG_BASE
-#define CONFIG_LAN91C96_EXT_PHY
+#define CONFIG_NET_MULTI
+#define CONFIG_SMC911X
+#define CONFIG_SMC911X_32_BIT
+#define CONFIG_SMC911X_BASE DEBUG_BASE
#define CONFIG_BOOTP_SEND_HOSTNAME
/*
--
1.6.3.3
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] NET: SDP3430: trouble with shifting from LAN9C916 to SMC91XX driver
2009-10-14 3:13 [U-Boot] NET: SDP3430: trouble with shifting from LAN9C916 to SMC91XX driver Nishanth Menon
@ 2009-10-14 4:36 ` Ben Warren
2009-10-14 12:56 ` Nishanth Menon
0 siblings, 1 reply; 7+ messages in thread
From: Ben Warren @ 2009-10-14 4:36 UTC (permalink / raw)
To: u-boot
Nishanth,
On Tue, Oct 13, 2009 at 8:13 PM, Nishanth Menon <nm@ti.com> wrote:
> Hi Folks,
>
> While attempting to address the warning for SDP3430 as pointed out by
> dirk in [1], I did a patch corresponding to what was done for EVM(353x)
> as in [2]. unfortunately, this wont work for me, I get:
> U-Boot 2009.08-00515-gfea6a55-dirty (Oct 12 2009 - 14:03:23)
>
> OMAP3530-GP ES3.0, CPU-OPP2 L3-165MHz
> OMAP3 SDP3430 board + LPDDR/NOR
> I2C: ready
> DRAM: 128 MB
> Flash: 128 MB
> In: serial
> Out: serial
> Err: serial
> smc911x: Invalid chip endian 0xdee0013d
> Net: No ethernet found.
> OMAP34XX SDP #
>
> and no network, using LEGACY driver seems to be working just great for me.
>
> Note: in my patch [2], I did try both CONFIG_SMC911X_32_BIT and
> CONFIG_SMC911X_16_BIT with no luck either way. I even tried to hack the
> driver by skipping the supported chip detection code, but the driver
> still did not work for me.
>
> When using CONFIG_NET_MULTI you need to have a board_eth_init() function in
your board code which in turn must call smc911x_initialize(). Make sure
that eth_initialize() gets called somewhere in your cpu/board.c call
sequence. I suspect that while the SMC911x driver is being initialized, it
isn't being registered properly with the networking library. There are many
examples in the source tree of how to do this.
regards,
Ben
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] NET: SDP3430: trouble with shifting from LAN9C916 to SMC91XX driver
2009-10-14 4:36 ` Ben Warren
@ 2009-10-14 12:56 ` Nishanth Menon
2009-10-14 19:00 ` Ben Warren
0 siblings, 1 reply; 7+ messages in thread
From: Nishanth Menon @ 2009-10-14 12:56 UTC (permalink / raw)
To: u-boot
Ben Warren had written, on 10/13/2009 11:36 PM, the following:
> Nishanth,
>
> On Tue, Oct 13, 2009 at 8:13 PM, Nishanth Menon <nm@ti.com
> <mailto:nm@ti.com>> wrote:
>
> Hi Folks,
>
> While attempting to address the warning for SDP3430 as pointed out by
> dirk in [1], I did a patch corresponding to what was done for EVM(353x)
> as in [2]. unfortunately, this wont work for me, I get:
> U-Boot 2009.08-00515-gfea6a55-dirty (Oct 12 2009 - 14:03:23)
>
> OMAP3530-GP ES3.0, CPU-OPP2 L3-165MHz
> OMAP3 SDP3430 board + LPDDR/NOR
> I2C: ready
> DRAM: 128 MB
> Flash: 128 MB
> In: serial
> Out: serial
> Err: serial
> smc911x: Invalid chip endian 0xdee0013d
> Net: No ethernet found.
> OMAP34XX SDP #
>
> and no network, using LEGACY driver seems to be working just great
> for me.
>
> Note: in my patch [2], I did try both CONFIG_SMC911X_32_BIT and
> CONFIG_SMC911X_16_BIT with no luck either way. I even tried to hack the
> driver by skipping the supported chip detection code, but the driver
> still did not work for me.
>
> When using CONFIG_NET_MULTI you need to have a board_eth_init() function
done
> in your board code which in turn must call smc911x_initialize(). Make
done
> sure that eth_initialize() gets called somewhere in your cpu/board.c
why eth_initalize? rest of the OMAP3 boards dont seem to be doing that
> call sequence. I suspect that while the SMC911x driver is being
> initialized, it isn't being registered properly with the networking
> library. There are many examples in the source tree of how to do this.
I would expect that and did check too, but why:
smc911x: Invalid chip endian 0xdee0013d
when I had a base address and device which was supported by LAN91C96
legacy driver?
My lack of network chip knowledge is kicking me at the moment.. trying
to find the device data sheet internally @ TI..
--
Regards,
Nishanth Menon
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-TI-OMAP3-SDP3430-dont-use-legacy-ethernet-driver.patch
Type: text/x-patch
Size: 0 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20091014/0609a35a/attachment.bin
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] NET: SDP3430: trouble with shifting from LAN9C916 to SMC91XX driver
2009-10-14 12:56 ` Nishanth Menon
@ 2009-10-14 19:00 ` Ben Warren
2009-10-15 1:46 ` Nishanth Menon
0 siblings, 1 reply; 7+ messages in thread
From: Ben Warren @ 2009-10-14 19:00 UTC (permalink / raw)
To: u-boot
Hi Nishanth,
Nishanth Menon wrote:
> Ben Warren had written, on 10/13/2009 11:36 PM, the following:
>> Nishanth,
>>
>> On Tue, Oct 13, 2009 at 8:13 PM, Nishanth Menon <nm@ti.com
>> <mailto:nm@ti.com>> wrote:
>>
>> Hi Folks,
>>
>> While attempting to address the warning for SDP3430 as pointed
>> out by
>> dirk in [1], I did a patch corresponding to what was done for
>> EVM(353x)
>> as in [2]. unfortunately, this wont work for me, I get:
>> U-Boot 2009.08-00515-gfea6a55-dirty (Oct 12 2009 - 14:03:23)
>>
>> OMAP3530-GP ES3.0, CPU-OPP2 L3-165MHz
>> OMAP3 SDP3430 board + LPDDR/NOR
>> I2C: ready
>> DRAM: 128 MB
>> Flash: 128 MB
>> In: serial
>> Out: serial
>> Err: serial
>> smc911x: Invalid chip endian 0xdee0013d
>> Net: No ethernet found.
>> OMAP34XX SDP #
>>
>> and no network, using LEGACY driver seems to be working just great
>> for me.
>>
>> Note: in my patch [2], I did try both CONFIG_SMC911X_32_BIT and
>> CONFIG_SMC911X_16_BIT with no luck either way. I even tried to
>> hack the
>> driver by skipping the supported chip detection code, but the driver
>> still did not work for me.
>>
>> When using CONFIG_NET_MULTI you need to have a board_eth_init() function
> done
>> in your board code which in turn must call smc911x_initialize(). Make
> done
>> sure that eth_initialize() gets called somewhere in your cpu/board.c
> why eth_initalize? rest of the OMAP3 boards dont seem to be doing that
>> call sequence. I suspect that while the SMC911x driver is being
>> initialized, it isn't being registered properly with the networking
>> library. There are many examples in the source tree of how to do this.
> I would expect that and did check too, but why:
> smc911x: Invalid chip endian 0xdee0013d
> when I had a base address and device which was supported by LAN91C96
> legacy driver?
>
The SMC911x chips all contain the magic value 0x87654321 @ offset 0x64.
Your board has something else there (it's obviously not an endianness
issue, so ignore the error message text). I think you need to learn
more about your board, in particular which SMCS chip you're using, which
data width and where it's located in memory. This is a simple
memory-mapped device, and once you find out where it's located, it
should 'just work'
Here's a datasheet for reference. See page 68 for the memory map.
http://www.smsc.com/media/Downloads_Public/Data_Sheets/9116.pdf
regards,
Ben
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] NET: SDP3430: trouble with shifting from LAN9C916 to SMC91XX driver
2009-10-14 19:00 ` Ben Warren
@ 2009-10-15 1:46 ` Nishanth Menon
2009-10-15 5:05 ` Ben Warren
0 siblings, 1 reply; 7+ messages in thread
From: Nishanth Menon @ 2009-10-15 1:46 UTC (permalink / raw)
To: u-boot
On Wed, Oct 14, 2009 at 2:00 PM, Ben Warren <biggerbadderben@gmail.com> wrote:
[...]
> The SMC911x chips all contain the magic value 0x87654321 @ offset 0x64.
> Your board has something else there (it's obviously not an endianness
> issue, so ignore the error message text). ?I think you need to learn
> more about your board, in particular which SMCS chip you're using, which
> data width and where it's located in memory. ?This is a simple
> memory-mapped device, and once you find out where it's located, it
> should 'just work'
>
> Here's a datasheet for reference. ?See page 68 for the memory map.
>
> http://www.smsc.com/media/Downloads_Public/Data_Sheets/9116.pdf
9116 seems to use memory mapped regs, while 91c96 [1] page 39 shows it
to use banked register access. So unfortunately, SMC911X would not
support this chip as I cannot even see the banked registers in
smc911x.[ch]. so unfortuantely, I cant switch to SMC911X driver and
will have to wait till lan91c96.c becomes NET_MULTI to be able to
remove the warning in sdp3430 build.
In fact, I think the following boards use the legacy LAN91C96 driver:
include/configs/apollon.h
include/configs/assabet.h
include/configs/B2.h
include/configs/gcplus.h
include/configs/lubbock.h
include/configs/omap1510inn.h
include/configs/omap1610h2.h
include/configs/omap1610inn.h
include/configs/omap2420h4.h
include/configs/omap5912osk.h
include/configs/omap730p2.h
to confirm a non ti board which uses this legacy chip, I tried
building B2, and yep, I see the same warning which was plaguing me
:(..
Do let me know if there are alternatives available.
Regards,
Nishanth Menon
Ref:
[1] http://www.embeddedsys.com/subpages/resources/images/documents/LAN91C96_datasheet.pdf
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] NET: SDP3430: trouble with shifting from LAN9C916 to SMC91XX driver
2009-10-15 1:46 ` Nishanth Menon
@ 2009-10-15 5:05 ` Ben Warren
2009-10-15 6:05 ` Menon, Nishanth
0 siblings, 1 reply; 7+ messages in thread
From: Ben Warren @ 2009-10-15 5:05 UTC (permalink / raw)
To: u-boot
Nishanth Menon wrote:
> On Wed, Oct 14, 2009 at 2:00 PM, Ben Warren <biggerbadderben@gmail.com> wrote:
> [...]
>
>> The SMC911x chips all contain the magic value 0x87654321 @ offset 0x64.
>> Your board has something else there (it's obviously not an endianness
>> issue, so ignore the error message text). I think you need to learn
>> more about your board, in particular which SMCS chip you're using, which
>> data width and where it's located in memory. This is a simple
>> memory-mapped device, and once you find out where it's located, it
>> should 'just work'
>>
>> Here's a datasheet for reference. See page 68 for the memory map.
>>
>> http://www.smsc.com/media/Downloads_Public/Data_Sheets/9116.pdf
>>
>
> 9116 seems to use memory mapped regs, while 91c96 [1] page 39 shows it
> to use banked register access. So unfortunately, SMC911X would not
> support this chip as I cannot even see the banked registers in
> smc911x.[ch]. so unfortuantely, I cant switch to SMC911X driver and
> will have to wait till lan91c96.c becomes NET_MULTI to be able to
> remove the warning in sdp3430 build.
>
>
I guess I misunderstood in thinking that you'd switched chips on the
board design.
> In fact, I think the following boards use the legacy LAN91C96 driver:
> include/configs/apollon.h
> include/configs/assabet.h
> include/configs/B2.h
> include/configs/gcplus.h
> include/configs/lubbock.h
> include/configs/omap1510inn.h
> include/configs/omap1610h2.h
> include/configs/omap1610inn.h
> include/configs/omap2420h4.h
> include/configs/omap5912osk.h
> include/configs/omap730p2.h
> to confirm a non ti board which uses this legacy chip, I tried
> building B2, and yep, I see the same warning which was plaguing me
> :(..
>
> Do let me know if there are alternatives available.
>
>
The alternative that most immediately jumps to mind is for you to
convert the LAN91C96 driver to NET_MULTI :) It's pretty easy to do and
would help the "community" in a big way.
> Regards,
> Nishanth Menon
>
> Ref:
> [1] http://www.embeddedsys.com/subpages/resources/images/documents/LAN91C96_datasheet.pdf
>
regards,
Ben
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] NET: SDP3430: trouble with shifting from LAN9C916 to SMC91XX driver
2009-10-15 5:05 ` Ben Warren
@ 2009-10-15 6:05 ` Menon, Nishanth
0 siblings, 0 replies; 7+ messages in thread
From: Menon, Nishanth @ 2009-10-15 6:05 UTC (permalink / raw)
To: u-boot
Ben,
> -----Original Message-----
> From: Ben Warren [mailto:biggerbadderben at gmail.com]
> Sent: Thursday, October 15, 2009 12:06 AM
> To: Menon, Nishanth
[..]
> > include/configs/omap5912osk.h
> > include/configs/omap730p2.h
> > to confirm a non ti board which uses this legacy chip, I tried
> > building B2, and yep, I see the same warning which was plaguing me
> > :(..
> >
> > Do let me know if there are alternatives available.
> >
> >
> The alternative that most immediately jumps to mind is for you to
> convert the LAN91C96 driver to NET_MULTI :) It's pretty easy to do and
> would help the "community" in a big way.
:D - why do I get the feeling "I thought u'd say so" ;).. yep.. started a link in omapedia for OMAP3 TODOs I could think of
Regards,
Nishanth Menon
Ref:
[1] http://omappedia.org/wiki/OMAP3_U-Boot_TODO
PS: Dirk, I think you might ask me to post it elsewhere.. lets discuss that on a different thread if any..
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2009-10-15 6:05 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-14 3:13 [U-Boot] NET: SDP3430: trouble with shifting from LAN9C916 to SMC91XX driver Nishanth Menon
2009-10-14 4:36 ` Ben Warren
2009-10-14 12:56 ` Nishanth Menon
2009-10-14 19:00 ` Ben Warren
2009-10-15 1:46 ` Nishanth Menon
2009-10-15 5:05 ` Ben Warren
2009-10-15 6:05 ` Menon, Nishanth
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox