[U-Boot] [RESEND PATCH v3 1/5] net: expose eth_is_active() function to test network device state

Joe Hershberger
2015-09-30T17:22:45Z

> The previous eth_device struct returned by eth_get_dev() allowed
> code to directly query the state member field. However, with
> CONFIG_DM_ETH this data gets encapsulated (i.e. private), and
> eth_get_dev() returns a udevice struct 'abstraction' instead.
>
> This breaks legacy code relying on the former behaviour - e.g.
> netconsole.
> (see http://lists.denx.de/pipermail/u-boot/2015-June/216528.html)
>
> The patch introduces a method to retrieve the ethernet device
> state in a 'clean' and uniform way, supporting both legacy code
> and driver model. The new function eth_is_active() accepts a
> device struct pointer and tests it for ETH_STATE_ACTIVE.
>
> Signed-off-by: Bernhard Nortmann <bernhard.nortmann@web.de>
> Reviewed-by: Simon Glass <sjg@chromium.org>

This patch adds warnings to the following boards (all non-DM boards
with NetConsole enabled):

+(tcm-bf537,cm-bf527,bf609-ezkit,bf537-stamp,bf527-ezkit-v2,tcm-bf518,cm-bf537u,cm-bf537e,bf527-ezkit,pr1,bct-brettl2,bf537-minotaur,bf537-srv1,bf518f-ezbrd,bf526-ezbrd,br4)
../drivers/net/netconsole.c: In function ?nc_send_packet?:
+(tcm-bf537,cm-bf527,bf609-ezkit,bf537-stamp,bf527-ezkit-v2,tcm-bf518,cm-bf537u,cm-bf537e,bf527-ezkit,pr1,bct-brettl2,bf537-minotaur,bf537-srv1,bf518f-ezbrd,bf526-ezbrd,br4)
../drivers/net/netconsole.c:190: warning: implicit declaration of
function ?eth_is_active?
w+(tseries_spi,nitrogen6dl2g,guruplug,digsy_mtc_rev5,netspace_mini_v2,yosemite,taihu,tseries_nand,neo,goflexhome,nitrogen6s,nitrogen6q,acadia,lschlv2,TQM850L,digsy_mtc_RAMBOOT,ebony,devconcenter,a4m2k,iconnect,xfi3,novena,sequoia,io64,arches,nitrogen6dl,ib62x0,km_kirkwood_128m16,netspace_lite_v2,TQM860L,sansa_fuze_plus,digsy_mtc_rev5_RAMBOOT,TQM860M,mgcoge3un,kmnusa,O2MNT,nitrogen6q2g,sheevaplug,t3corp,netspace_max_v2,TQM850M,redwood,microblaze-generic,TQM823L,TQM823M,katmai,gdppc440etx,taishan,yellowstone,nas220,ocotea,walnut,O2MNT_O2M110,sycamore,mx6qsabrelite,kmsuv31,kmsugp1,sequoia_ramboot,haleakala,icon,O2MNT_O2M113,O2MNT_O2M112,rainier_ramboot,canyonlands,kmcoge5un,dlvision,glacier,dockstar,dreamplug,kwb,TQM866M,TQM862L,km_kirkwood,dns325,io,yucca,makalu,lsxhl,wtk,nitrogen6s1g,tseries_mmc,TQM862M,dlvision-10g,TTTech,iocon,netspace_v2,TQM855M,TQM855L,pogo_e02,portl2,glacier_ramboot,edminiv2,bamboo,km_kirkwood_pci,net2big_v2,luan,motionpro,v38b,TQM823L_LCD,a3m071,intip,kilauea,bubinga,digsy_mtc,gwventana,rainier)
../drivers/net/netconsole.c: In function 'nc_send_packet':
w+(tseries_spi,nitrogen6dl2g,guruplug,digsy_mtc_rev5,netspace_mini_v2,yosemite,taihu,tseries_nand,neo,goflexhome,nitrogen6s,nitrogen6q,acadia,lschlv2,TQM850L,digsy_mtc_RAMBOOT,ebony,devconcenter,a4m2k,iconnect,xfi3,novena,sequoia,io64,arches,nitrogen6dl,ib62x0,km_kirkwood_128m16,netspace_lite_v2,TQM860L,sansa_fuze_plus,digsy_mtc_rev5_RAMBOOT,TQM860M,mgcoge3un,kmnusa,O2MNT,nitrogen6q2g,sheevaplug,t3corp,netspace_max_v2,TQM850M,redwood,microblaze-generic,TQM823L,TQM823M,katmai,gdppc440etx,taishan,yellowstone,nas220,ocotea,walnut,O2MNT_O2M110,sycamore,mx6qsabrelite,kmsuv31,kmsugp1,sequoia_ramboot,haleakala,icon,O2MNT_O2M113,O2MNT_O2M112,rainier_ramboot,canyonlands,kmcoge5un,dlvision,glacier,dockstar,dreamplug,kwb,TQM866M,TQM862L,km_kirkwood,dns325,io,yucca,makalu,lsxhl,wtk,nitrogen6s1g,tseries_mmc,TQM862M,dlvision-10g,TTTech,iocon,netspace_v2,TQM855M,TQM855L,pogo_e02,portl2,glacier_ramboot,edminiv2,bamboo,km_kirkwood_pci,net2big_v2,luan,motionpro,v38b,TQM823L_LCD,a3m071,intip,kilauea,bubinga,digsy_mtc,gwventana,rainier)
../drivers/net/netconsole.c:190:3: warning: implicit declaration of
function 'eth_is_active' [-Wimplicit-function-declaration]

After fixing warnings in the above, applied to u-boot-net/master.
-Joe