[yellowfin] GNIC-II bus width problem

Yvon JEGOU Yvon.Jegou@irisa.fr
Thu, 21 Dec 2000 14:55:33 +0100


Hi,

We have found (and solved) a bug in the hamachi bus width management.

A request on this mailing-list from Mel Jones  (Fri Mar 24 11:09:22
2000) describes a similar problem.

hamachi.c:v1.01 5/16/2000 
integrated to linux 2.2.18 distribution,

after line 791

-----------------------------------------
    /* If the bus size is misidentified, do the following. */
    force32 = force32 ? force32 :
        ((option  >= 0) ? ((option & 0x00000070) >> 4) : 0 );
    if (force32)
        writeb(force32, ioaddr + VirtualJumpers);

    /* Hmmm, do we really need to reset the chip???. */
    writeb(0x01, ioaddr + ChipReset);
-----------------------------------------

This sequence is not correct: the chip reset configures the bus
width back to 64 bits.

We have moved the bus width configuration after the reset code, and
now everything works fine.



-- 
Yvon Jégou
IRISA / INRIA              | e-mail: Yvon.Jegou@irisa.fr
Campus de Beaulieu         | tel   : +33 2 99 84 73 27  
35042 RENNES Cedex, FRANCE | fax   : +33 2 99 84 25 28