From: Alexander Smirnov <alex.bluesman.smir...@gmail.com>
Date: Mon, 26 Dec 2011 20:02:33 +0300

> +enum ieee802154_hw_addr_filt_flags {
> +     IEEE802515_SADDR_CHANGED        = 1 << 0,
> +     IEEE802515_IEEEADDR_CHANGED     = 1 << 1,
> +     IEEE802515_PANID_CHANGED        = 1 << 2,
> +     IEEE802515_PANC_CHANGED         = 1 << 3,
> +};

These enumeration definitions for flags are undesriable for several
reasons.

First you do not even indicate what datastructure member these flags
are used in.  And because you use an enumeration you can't just indicate
this by using "enum ieee802154_hw_addr_filt_flags" as the type in the
datastructure.

Forget all the enum crap, at the datastructure where the flags are defined
do something like:

        u32     flags;
#define IEEE802154_AFILT_SADDR_CHANGED          0x00000001
#define IEEE802154_AFILT_IEEEADDR_CHANGED       0x00000002
#define IEEE802154_AFILT_PANID_CHANGED          0x00000004
#define IEEE802154_AFILT_PANC_CHANGED           0x00000008

There is then no confusion whatsoever where these flag bits are meant
to be applied and used, and the spurious data type definition is eliminated.

------------------------------------------------------------------------------
Write once. Port to many.
Get the SDK and tools to simplify cross-platform app development. Create 
new or port existing apps to sell to consumers worldwide. Explore the 
Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join
http://p.sf.net/sfu/intel-appdev
_______________________________________________
Linux-zigbee-devel mailing list
Linux-zigbee-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-zigbee-devel

Reply via email to