On Thu, 2009-04-09 at 22:14 -0500, Larry Finger wrote: > The rfkill system fails to issue a LED trigger event when the rfkill state > changes. I have no issues with this patch, and will just port my rewrite over it -- I'll get back to the rewrite next week for good, hopefully. johannes > Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx> > --- > > John, > > This is 2.6.31 material. > > Larry > --- > > Index: wireless-testing/net/rfkill/rfkill.c > =================================================================== > --- wireless-testing.orig/net/rfkill/rfkill.c > +++ wireless-testing/net/rfkill/rfkill.c > @@ -96,6 +96,7 @@ static void update_rfkill_state(struct r > } > mutex_unlock(&rfkill->mutex); > } > + rfkill_led_trigger(rfkill, rfkill->state); > } > > /** > @@ -136,8 +137,9 @@ static int rfkill_toggle_radio(struct rf > oldstate = rfkill->state; > > if (rfkill->get_state && !force && > - !rfkill->get_state(rfkill->data, &newstate)) > + !rfkill->get_state(rfkill->data, &newstate)) { > rfkill->state = newstate; > + } > > switch (state) { > case RFKILL_STATE_HARD_BLOCKED: > @@ -172,6 +174,7 @@ static int rfkill_toggle_radio(struct rf > if (force || rfkill->state != oldstate) > rfkill_uevent(rfkill); > > + rfkill_led_trigger(rfkill, rfkill->state); > return retval; > } > > @@ -204,6 +207,7 @@ static void __rfkill_switch_all(const en > mutex_lock(&rfkill->mutex); > rfkill_toggle_radio(rfkill, state, 0); > mutex_unlock(&rfkill->mutex); > + rfkill_led_trigger(rfkill, rfkill->state); > } > } > } > @@ -256,6 +260,7 @@ void rfkill_epo(void) > RFKILL_STATE_SOFT_BLOCKED; > } > mutex_unlock(&rfkill_global_mutex); > + rfkill_led_trigger(rfkill, rfkill->state); > } > EXPORT_SYMBOL_GPL(rfkill_epo); > > @@ -358,6 +363,7 @@ int rfkill_force_state(struct rfkill *rf > rfkill_uevent(rfkill); > > mutex_unlock(&rfkill->mutex); > + rfkill_led_trigger(rfkill, rfkill->state); > > return 0; > } > @@ -520,6 +526,7 @@ static int rfkill_resume(struct device * > 1); > > mutex_unlock(&rfkill->mutex); > + rfkill_led_trigger(rfkill, rfkill->state); > } > > return 0; >
Attachment:
signature.asc
Description: This is a digitally signed message part