[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200804121236.45670.IvDoorn@gmail.com>
Date: Sat, 12 Apr 2008 12:36:45 +0200
From: Ivo van Doorn <ivdoorn@...il.com>
To: Henrique de Moraes Holschuh <hmh@....eng.br>
Cc: linux-kernel@...r.kernel.org,
Inaky Perez-Gonzalez <inaky@...ux.intel.com>,
Iñaky Pérez-González
<inaky.perez-gonzalez@...el.com>,
"John W. Linville" <linville@...driver.com>,
"David S. Miller" <davem@...emloft.net>
Subject: Re: [PATCH 6/8] rfkill: add the WWAN radio type
On Friday 11 April 2008, Henrique de Moraes Holschuh wrote:
> Unfortunately, instead of adding a generic Wireless WAN type, a technology-
> specific type (WiMAX) was added. That's useless for other WWAN devices,
> such as EDGE, UMTS, X-RTT and other such radios.
Then perhaps we should replace WiMAX with the WWAN type?
> Add a WWAN rfkill type for generic wireless WAN devices. No keys are added
> as most devices use KEY_RADIO for WWAN control and need no specific keycode
> added.
In the discussion around the WiMAX addition I do remember people wanted
it to have a seperate key code because it was "different technology". Wouldn't that
be the same for all WWAN technologies?
Aka, should the WiMAX keycode be changed to a WWAN keycode in input.h
and then be used for all WWAN rfkill switches?
Ivo
> Signed-off-by: Inaky Perez-Gonzalez <inaky@...ux.intel.com>
> Cc: Iñaky Pérez-González <inaky.perez-gonzalez@...el.com>
> Cc: Ivo van Doorn <IvDoorn@...il.com>
> Cc: John W. Linville <linville@...driver.com>
> Cc: David S. Miller <davem@...emloft.net>
> ---
> include/linux/rfkill.h | 2 ++
> net/rfkill/rfkill-input.c | 5 +++++
> net/rfkill/rfkill.c | 3 +++
> 3 files changed, 10 insertions(+), 0 deletions(-)
>
> diff --git a/include/linux/rfkill.h b/include/linux/rfkill.h
> index 931d32b..7650517 100644
> --- a/include/linux/rfkill.h
> +++ b/include/linux/rfkill.h
> @@ -34,12 +34,14 @@
> * RFKILL_TYPE_BLUETOOTH: switch is on a bluetooth device.
> * RFKILL_TYPE_UWB: switch is on a ultra wideband device.
> * RFKILL_TYPE_WIMAX: switch is on a WiMAX device.
> + * RFKILL_TYPE_WWAN: switch is on a wireless WAN device.
> */
> enum rfkill_type {
> RFKILL_TYPE_WLAN ,
> RFKILL_TYPE_BLUETOOTH,
> RFKILL_TYPE_UWB,
> RFKILL_TYPE_WIMAX,
> + RFKILL_TYPE_WWAN,
> RFKILL_TYPE_MAX,
> };
>
> diff --git a/net/rfkill/rfkill-input.c b/net/rfkill/rfkill-input.c
> index 7d1e520..675651b 100644
> --- a/net/rfkill/rfkill-input.c
> +++ b/net/rfkill/rfkill-input.c
> @@ -101,6 +101,7 @@ static DEFINE_RFKILL_TASK(rfkill_wlan, RFKILL_TYPE_WLAN);
> static DEFINE_RFKILL_TASK(rfkill_bt, RFKILL_TYPE_BLUETOOTH);
> static DEFINE_RFKILL_TASK(rfkill_uwb, RFKILL_TYPE_UWB);
> static DEFINE_RFKILL_TASK(rfkill_wimax, RFKILL_TYPE_WIMAX);
> +static DEFINE_RFKILL_TASK(rfkill_wwan, RFKILL_TYPE_WIMAX);
>
> static void rfkill_event(struct input_handle *handle, unsigned int type,
> unsigned int code, int data)
> @@ -121,6 +122,7 @@ static void rfkill_event(struct input_handle *handle, unsigned int type,
> break;
> case KEY_RADIO:
> /* EVERY radio type */
> + rfkill_schedule_toggle(&rfkill_wwan);
> rfkill_schedule_toggle(&rfkill_wimax);
> rfkill_schedule_toggle(&rfkill_uwb);
> rfkill_schedule_toggle(&rfkill_bt);
> @@ -133,6 +135,9 @@ static void rfkill_event(struct input_handle *handle, unsigned int type,
> switch (code) {
> case SW_RADIO:
> /* EVERY radio type. data != 0 means radios ON */
> + rfkill_schedule_set(&rfkill_wwan,
> + (data)? RFKILL_STATE_ON:
> + RFKILL_STATE_OFF);
> rfkill_schedule_set(&rfkill_wimax,
> (data)? RFKILL_STATE_ON:
> RFKILL_STATE_OFF);
> diff --git a/net/rfkill/rfkill.c b/net/rfkill/rfkill.c
> index d149d94..56241a4 100644
> --- a/net/rfkill/rfkill.c
> +++ b/net/rfkill/rfkill.c
> @@ -171,6 +171,9 @@ static ssize_t rfkill_type_show(struct device *dev,
> case RFKILL_TYPE_WIMAX:
> type = "wimax";
> break;
> + case RFKILL_TYPE_WWAN:
> + type = "wwan";
> + break;
> default:
> BUG();
> }
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists