On Sat, 2011-10-01 at 15:45 +0200, Aleksander Morgado wrote:
> Hey hey,
>
> > > Supported and Allowed modes are modified to be bitmasks of MM_MODEM_MODE values,
> > > and preference of a specific mode is now given in the new PreferredMode
> > > property and as an extra argument to the SetAllowedModes() call.
> > >
> > > * Supported Modes: bitmask specifying which modes are supported by the specific
> > > hardware. For example, a modem may only support 1G/2G/3G connections (not 4G).
> > >
> > > * Allowed Modes: bitmask specifying which modes, of the ones Supported by the
> > > modem, are allowed to use. For example, a modem may support 1G/2G/3G connections
> > > but only 1G and 2G connections are allowed by the user as 3G involves more
> > > expensive data rates.
> > >
> > > [Allowed] ⊆ [Supported]
> > >
> > > * Preferred Mode: specific mode which is preferred among the ones defined in
> > > the Allowed modes bitmask. For example, a modem may allow 1G/2G/3G connections
> > > but the user would like that if possible 2G be used, as 3G consumes too much
> > > battery. If 2G is not possible, 3G can be used.
> > >
> > > [Preferred] ∈ [Allowed]
> >
> > I don't have a huge objection to this, but I'm not sure I see the
> > benefit of having the Preferred/Allowed split versus the complexity.
> > Basically, if Allowed were an enum where we enumerated the preference
> > there are 4 items to choose from (4G, 3G, 2G, empty) and 3 slots in the
> > preference order (since empty doesn't get a slot, just a single enum).
> > Thats a total of 25 combinations, but some like 2G>4G don't really make
> > sense, so we have somewhere under 25. 32-bits gives us a lot of range
> > there if it's an enum not a bitfield. The downside is that it has no
> > relationship with the MM_MODEM_MODE flags. My worry is just that it's
> > added complexity (3 properties to check instead of 2) that may be just a
> > bit more work for clients.
> >
>
> I do see problems in both implementations, and I understand that the new
> one may be more complex, but trying to cope with the addition of 4G to
> the list is not an easy task, I would say.
Yeah, I know.