Ethernet Shield Reset

Quick Question, Hopefully a quick answer.

I have an ethernet shield connected to an arduino uno. A condition has come up in testing that requires a restart to the Ethernet Shield but NOT to the arduino itself. I bent the reset pin on the ethernet shield so that it did not connect to the arduino, connected pin 6 to the ethernet shield's reset, and issued the following command

void ResetEthernet()
  pinMode(6, OUTPUT);
  digitalWrite(6, LOW);
  digitalWrite(6, HIGH);
  pinMode(6, INPUT);
     // start Ethernet
  Ethernet.begin(Config.mac, Config.ip, Config.gateway, Config.subnet);

When i use the serial monitor, i only get the 4th println and then my setup() code is called signifying the arduino has been reset. Any suggestions?

According to fungus, just the Ethernet.begin() call should reset the ethernet shield.

Yes, it does a soft reset on the ethernet shield. However, what i am proposing to do is basically press the reset button on the ethernet shield through code. Using some more serial.println i was able to determine that the pinMode() command seems to be whats restarting the arduino. Not sure why though?

Seems there may be a diode mod that could fix the problem if the shield needs to start after the arduino.

Maybe you need to bend one more pin. There is a reset pin on the ICSP connector (pin 5). Maybe that is how the reset is getting to the Uno.

Older reset info.

I believe you are right surfertim! much thanks!
If i am looking at the bottom of the shield with Italy facing normally..which one is pin5..i find the schematics to be a little vague

Pin 5 is easier to find on the component side of the Uno. It is the pin under the IC in ICSP.
You should be able to see a very small white dot at pin 1.

There is also a small white dot at pin 1 on the shield.