can someone explain this CONFIG_COMMANDS, CFG_CMD thing?

Sascha Hauer s.hauer at
Mon Dec 21 11:23:07 EST 2009

On Mon, Dec 21, 2009 at 09:56:07AM -0500, Robert P. J. Day wrote:
>   i'm looking at some of the stuff sascha commented on earlier, like:
> $ grep -r CONFIG_MII drivers
> drivers/net/Makefile:obj-$(CONFIG_MIIPHY)			+= miiphy.o
> drivers/net/at91_ether.c:#if defined(CONFIG_MII) || (CONFIG_COMMANDS & CFG_CMD_MII)
> drivers/net/at91_ether.c:#endif	/* defined(CONFIG_MII) || (CONFIG_COMMANDS & CFG_CMD_MII) */
> drivers/net/at91_ether.c:#if defined(CONFIG_MII) || (CONFIG_COMMANDS & CFG_CMD_MII)
> $
> and i'd like to clarify what any of that is *supposed* to mean.
>   first, what means "CONFIG_COMMANDS"?  that is, in the sense that
> you're *bitwise* or'ing it with something else?  is that supposed to
> be a test that a command has been selected for inclusion?  surely
> there's a cleaner way to do that.

Forget about CONFIG_COMMANDS. This is from old U-Boot and is a bitmask
for the available commands. CFG_CMD_MII was one bit of this command
mask. Someday they realized that they want to support more than 32
commands and got rid of it.

The parts you are referring to should simply be

#if defined(CONFIG_MII)

Hm, looking closer at it this part of the at91 ethernet driver is
outdated. Compare to the other ethernet drivers to get an idea how phys
are handled now. Maybe I'll fix this after christmas.


Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 |  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

More information about the barebox mailing list