20 May, 2011

1 commit

  • This adds a new generic gpio rfkill driver to support rfkill switches
    which are controlled by gpios. The driver also supports passing in
    data about the clock for the radio, so that when rfkill is blocking,
    it can disable the clock.

    This driver assumes platform data is passed from the board files to
    configure it for specific devices.

    Original-patch-by: Anantha Idapalapati
    Signed-off-by: Rhyland Klein
    Signed-off-by: John W. Linville

    Rhyland Klein
     

20 Apr, 2011

1 commit

  • Add a regulator consumer driver for rfkill to enable controlling radio
    transmitters connected to voltage regulators using the regulator
    framework.

    A new "vrfkill" virtual supply is provided to use in platform code.

    Signed-off-by: Guiming Zhuo
    Signed-off-by: Antonio Ospite
    Reviewed-by: Johannes Berg
    Signed-off-by: John W. Linville

    Antonio Ospite
     

04 Jun, 2009

1 commit

  • This patch completely rewrites the rfkill core to address
    the following deficiencies:

    * all rfkill drivers need to implement polling where necessary
    rather than having one central implementation

    * updating the rfkill state cannot be done from arbitrary
    contexts, forcing drivers to use schedule_work and requiring
    lots of code

    * rfkill drivers need to keep track of soft/hard blocked
    internally -- the core should do this

    * the rfkill API has many unexpected quirks, for example being
    asymmetric wrt. alloc/free and register/unregister

    * rfkill can call back into a driver from within a function the
    driver called -- this is prone to deadlocks and generally
    should be avoided

    * rfkill-input pointlessly is a separate module

    * drivers need to #ifdef rfkill functions (unless they want to
    depend on or select RFKILL) -- rfkill should provide inlines
    that do nothing if it isn't compiled in

    * the rfkill structure is not opaque -- drivers need to initialise
    it correctly (lots of sanity checking code required) -- instead
    force drivers to pass the right variables to rfkill_alloc()

    * the documentation is hard to read because it always assumes the
    reader is completely clueless and contains way TOO MANY CAPS

    * the rfkill code needlessly uses a lot of locks and atomic
    operations in locked sections

    * fix LED trigger to actually change the LED when the radio state
    changes -- this wasn't done before

    Tested-by: Alan Jenkins
    Signed-off-by: Henrique de Moraes Holschuh [thinkpad]
    Signed-off-by: Johannes Berg
    Signed-off-by: John W. Linville

    Johannes Berg
     

07 May, 2007

1 commit