As part of working out the details of the ndd-compat component,
I'm looking into purging the nd_param_t crud in bge (Garrett- take 
note! :-)) and pondering over the various MII ndd parameters.

There's  the following enums in bge_impl.h

/*
 * NDD parameter indexes, divided into:
   :
 */
enum {
        PARAM_AUTONEG_CAP,
        PARAM_PAUSE_CAP,
        PARAM_ASYM_PAUSE_CAP,
        PARAM_1000FDX_CAP,
        PARAM_1000HDX_CAP,
        PARAM_100T4_CAP,
        PARAM_100FDX_CAP,
        PARAM_100HDX_CAP,
        PARAM_10FDX_CAP,
        PARAM_10HDX_CAP,

which seem somehat orphaned: they have nd_param_t entries that 
are read-only, but no code (other than ndd) that actually reads
their value. Even the ETHER_STAT_ISMII() macro does not take the
above into consideration. 

This brings up questions like "why do we need both PARAM_AUTONEG_CAP
and PARAM_LINK_AUTONEG?"

Can someone on this list provide some background on where this
duplication went wrong? 

where I'm trying to head: I'd like to rip out the nd_param_t, and
collapse all the mii params into one bitmask managed in the bge_t. 

--Sowmini
                        

Reply via email to