I have figured out what was wrong just after a good night of sleep. It's amazing how things get clear when you have a shower. http://forum.niosforum.com/work2/style_emoticons/<#EMO_DIR#>/biggrin.gif
I had forgotten to provide the proper clock to ENET_CLK signal! I knew I was missing something. Pehaps you are missing the same thing. Be careful of how you implement this clock. I did as follow and everything went ok:
-- SOME CODE HERE
-- ...
SIGNAL tmpClk : STD_LOGIC := '0';
BEGIN
-- ENET CLOCK (25MHz)
tmpClk <= NOT tmpClk WHEN CLOCK_50'EVENT AND CLOCK_50 = '1';
ENET_CLK <= tmpClk;
-- MORE CODE HERE
-- ...
You can make this code without the tmpClk signal, I did it just for readability, but be sure of initialize the signal with "0" or '1' before applying the NOT operator.
I also had a look at the uCLinux source and changed my IRQ to 3 as well. This is the default IRQ for DM9000 and I thought it would avoid later problems.
Good luck!!