tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Some updates



Hello again!
The function `void mskc_reset(struct sk_softc *sc)' in OpenBSD is
approximately the same as the NetBSD `void msk_reset(struct sk_softc *sc)'.
There are some swapped lines and maybe some different code blocks, but
the basic structure is almost equal.
It is invoked inside `msk_watchdog' in both the sourcecodes (even if
`msk_watchdog itself is slightly different in the two cases) and in
`mskc_shutdown', which is not present in NetBSD.

As regards the OpenBSD `msk_reset', it is the same as a bunch of lines
included in NetBSD `msk_init_yukon':

        SK_IF_WRITE_4(sc_if, 0, SK_GMAC_CTRL, SK_GMAC_RESET_SET);
        SK_IF_WRITE_4(sc_if, 0, SK_GPHY_CTRL, SK_GPHY_RESET_SET);
        DELAY(1000);

        DPRINTFN(6, ("msk_init_yukon: 2\n"));
 
        SK_IF_WRITE_4(sc_if, 0, SK_GPHY_CTRL, SK_GPHY_RESET_CLEAR);
        SK_IF_WRITE_4(sc_if, 0, SK_GMAC_CTRL, SK_GMAC_LOOP_OFF |
                      SK_GMAC_PAUSE_ON | SK_GMAC_RESET_CLEAR);

This `msk_reset' in OpenBSD is invoked in `msk_attach' and `msk_watchdog',
but interestingly not in `msk_init_yukon'. So the above lines not only seem
to have been extracted in OpenBSD to a separated function, but they are not
used inside `msk_init_yukon'.

Who is the NetBSD maintainer for if_msk.c? Is there any reason for this?
For Ryota, this is my previous mail, so you can better understand:
http://mail-index.netbsd.org/tech-kern/2017/10/11/msg022430.html

Rocky


Home | Main Index | Thread Index | Old Index