On Sat, 2009-04-18 at 16:49 +0100, Alan Jenkins wrote: > > That's odd, I thought I added a set_sw_state() to rfkill which would > > disable that rfkill. But there's rfkill_set_global_sw_state() which > > should do what you want -- can you try replacing the EEE set_sw_state > > call with that? > > > > johannes > > > > Well, I think the problem is clear :-P. > > if (!(rfkill_states_default_locked & BIT(rfkill->type))) { > /* first of its kind */ > BUILD_BUG_ON(NUM_RFKILL_TYPES > > sizeof(rfkill_states_default_locked) * 8); > rfkill_states_default_locked |= BIT(rfkill->type); > rfkill_global_states[rfkill->type].cur = > rfkill_global_states[rfkill->type].def; > } > > One would expect to see a reference to rfkill->blocked in here. No, that's done asynchronously in rfkill_sync_work(). But actually, heh, that means set_sw_state can _not_ work before registering. johannes
Attachment:
signature.asc
Description: This is a digitally signed message part