Yes, that's perfectly normal, it's a "feature" they've built in for some unknown reason...
I have a modified version of Coldfire Lite V3.2 available for download. The modification includes a couple of bug fixes and functional improvements, including the one you mention.
You can find more about it, including download link, in this thread:
I downloaded this new patch which had fix for reset, now reset not happening, but I noticed that it took 18 Seconds to get INET prompt. Is there anyway this can be reduced to less than 10 Seconds, I don't know where is the bottleneck, sometimes this much time cannot be tolerated if this stack implements in real products?. also I am looking for some benchmark numbers for this stack, any idea where can I get it?.
appreciated for your help.
The network hardware of older 5223x CPUs contains a known bug that may cause link auto negotiation to fail on some networks. Auto negotiation is turned of in Coldfire Lite when running on this CPU and taken over by a software routine. This software negotiation does take some time, this is probably what you notice.
If your board contains a more recent CPU that has this bug fixed, you could modify the network hardware initialisation routine to use hardware link negotiation. This should speed up startup time considerably. Unfortunately I do not know how to recognise which CPUs are affected by the bug.
Thanks Marc, appreciated. I am going to use 52236 chipset, this is new to 5223x family I believe, probably NW Hardware should have that fix, any idea which files I need to change to make improvement of booting time.
The file that needs to be modified to activate auto negotiation is MCF52235_sysinit.c, and should reside somewhere in the CPU folder (left pane in CodeWarrior). The routine mcf5223x_ePHY_init is the one that enables the PHY and also does the link negotiation. You'll have to modify that routine by removing the software negotiation steps and set the PHY registers to enable auto negotiation.
Configuring the PHY is not a hard thing to do. The PHY registers are described in the 52235 reference manual. Remember to use the fec_mii_read and fec_mii_write functions to access the PHY registers.
I may also figure out the modification for you but that will take a little time, and I may not be able to test it out as my demo boards only contain the older device with the bug.
Right now I have 52233DEMO board only, I am getting 52236 based Prototype in couple of weeks, I believe HW modification there for auto negotiation, let me take a look now this change. Thanks.
TVNAIDU wrote:Marc: Right now I have 52233DEMO board only, I am getting 52236 based Prototype in couple of weeks, I believe HW modification there for auto negotiation, let me take a look now this change. Thanks.
I'm afraid I must disappoint you. I beleive the relevant errata sheet is here:
The latest version is dated February 2009. It says that the fix for the autonegotiation bug is planned. There is no information if fixed chips are being sold now, they probably aren't.
Retrieving data ...