Watchdog problem

ergun kucukkose
Hi 

I have a problem with watchdog.

I'm running watchdog test program in FriendlyArm Folder. After 15 seconds
system rebooting. After boot process ;tcp/ip connection is not working. I
tried it in wince5 and wince6.

When i manually switch off and on ; tcp/ip is working ok.

How can i solve this problem?

Thanks
Ergun

Borut
I get similar problem. I am running watchdog application which makes soft
reset. After soft reset Ethernet controller is not working (I can not ping
or access device through ethernet). 
After manuall manually switch off and on ethertnet is working ok.

Please help!

Carsten
Hi....
having the same problems here. Using Windows CE 6.0 BSP and
after reboot (initiated from watchdog) the DM9000 network controller is not
working anymore.
I tried different modifications (OAL / init.c) doing a soft reset of
the DM9000 on every boot but without any success.
I upgraded the DM9000 driver to the newest Version 2.50 from Davicom - No
success.
Is there a solution available ? Or some hints how to solve the problem ?

In my situation the watchdog is useless with a not working network
controller after reboot.

Thanks
Carsten

bill
I also have such a problem. Any solution can provide??

perry
I also face same problem . Any body got solution ?

aljosavister
Same problem here  :/

bob feng
hardware reset!but must run a program to check the network at init.if
network not work,hardware reset.

Peter21
Hi!

I also had this problem but I found the solution.

The main problem is that the watchdog reset is effect on CPU only.
All other device on board does not know about any resetting state.
All software drivers would be smart enough to handle this case in its own
device (e.g. give software reset to hardware).

The solution is resetting DM9000's internal PHY correctly using DM9_GPR
register.
You just have to insert 2 lines in dm9000.cpp at the beginning of function
C_DM9000::EDeviceInitialize():


  // reset member varialbes
  m_uLastAddressPort = (U32)-1;

  DeviceWritePort(DM9_GPR, 0x01); // Power down internal PHY...
  NdisStallExecution(500);        // ...and wait before activate
  DeviceWritePort(0x1f, 0x00);
  NdisStallExecution(20);

  // software reset the device
  DeviceWritePort(DM9_NCR, 0x03);
  NdisStallExecution(20);


Good luck,
Peter

ergun kucukkose
Hi Peter

I inserted 2 lines to dm9000.cpp. I create new CE6 image. 
I test it with watchdog test program. But it is not working. 

Which windows did you test it; CE5 or CE6?

Thanks 
Ergun Kucukkose

Didier
Soft reset don't reset correctly the ethernet interface. Only a hard reset
is efficient.

Carsten
Hi

i think i found a solution for me. Not very "beautiful" but working in my
case.
Please try the following:
- Deactivate the DM9000 via Network Control Panel
- Let the Watchdog restart the system
- Activate the DM9000 via Network Control Panel
Now the DM9000 should work.

So in my case i will ensure (Registry Setting NDIS Power == 4) that the
system will always startup with the DM9000 deactivated.
Now i activate it via a small software using the same code the connmgr
uses.
Not fully tested but promising...

Carsten

Marc
Hi,
i have found and tested a similar workaround:


1) before soft reset unbind the lan adapter (see code on ndisconfig.c) or
call programmatically "ndisconfig.exe adapter unbind DM9CE1"

2) wait 20 seconds

3) reset board (watchdog or CESetSystemPowerState) 

after reboot the lan adapter work properly