lkml.org 
[lkml]   [2009]   [Aug]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 2/3] Add rfkill support to compal-laptop
From
Date
Hi everyone,

> > I'm attaching the updated patch (sorry, git send-email seems to still
> > not be very graceful with line breaks when the SMTP implementation is
> > exchange from what i've seen)
>
> > +static void compal_rfkill_poll(struct rfkill *rfkill, void *data)
> > +{
> > + unsigned long radio = (unsigned long) data;
> > + u8 result;
> > + bool hw_blocked;
> > + bool sw_blocked;
> > +
> > + ec_read(COMPAL_EC_COMMAND_WIRELESS, &result);
> > +
> > + hw_blocked = !(result & KILLSWITCH_MASK);
> > + sw_blocked = (!hw_blocked && !(result & radio));
> > +
> > + rfkill_set_states(rfkill, sw_blocked, hw_blocked);
> > +}
>
> I assume you have good reason for having sw_block depend on hw_block.
> I.e. you can't read sw_blocked while hw_blocked is set, right?
>
> If KILLSWITCH is toggled on and off, will the hardware "forget" any
> prior soft-blocks?

That's a bit strange indeed, but I haven't seen the rest of the code.

Does the 'soft block' bit change based on user input, like pressing a
button?

If not, you shouldn't poll that bit at all, but just set it based on
what rfkill gives you as the return value of set_hw_state().

hth,
johannes
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2009-08-18 23:33    [W:0.070 / U:0.996 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site