2012-02-15 21:46:46

by John W. Linville

[permalink] [raw]
Subject: [PATCH] compat-wireless: remove olpc_ec_wakeup_* calls for pre-3.1 kernels

This section of the libertas driver calls functions that simply don't
exist before the release of 3.1. This code in question was an addition,
not a change from any existing code. It is safe to simply remove it for
older kernels.

Signed-off-by: John W. Linville <[email protected]>
---
patches/50-libertas-olpc-ec-wakeup.patch | 25 +++++++++++++++++++++++++
1 files changed, 25 insertions(+), 0 deletions(-)
create mode 100644 patches/50-libertas-olpc-ec-wakeup.patch

diff --git a/patches/50-libertas-olpc-ec-wakeup.patch b/patches/50-libertas-olpc-ec-wakeup.patch
new file mode 100644
index 0000000..13413af
--- /dev/null
+++ b/patches/50-libertas-olpc-ec-wakeup.patch
@@ -0,0 +1,25 @@
+This section of the libertas driver calls functions that simply don't
+exist before the release of 3.1. This code in question was an addition,
+not a change from any existing code. It is safe to simply remove it for
+older kernels.
+
+diff --git a/drivers/net/wireless/libertas/if_usb.c b/drivers/net/wireless/libertas/if_usb.c
+index b5fbbc7..513ae29 100644
+--- a/drivers/net/wireless/libertas/if_usb.c
++++ b/drivers/net/wireless/libertas/if_usb.c
+@@ -1133,6 +1133,7 @@ static int if_usb_suspend(struct usb_interface *intf, pm_message_t message)
+ if (priv->psstate != PS_STATE_FULL_POWER)
+ return -1;
+
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0))
+ #ifdef CONFIG_OLPC
+ if (machine_is_olpc()) {
+ if (priv->wol_criteria == EHS_REMOVE_WAKEUP)
+@@ -1141,6 +1142,7 @@ static int if_usb_suspend(struct usb_interface *intf, pm_message_t message)
+ olpc_ec_wakeup_set(EC_SCI_SRC_WLAN);
+ }
+ #endif
++#endif
+
+ ret = lbs_suspend(priv);
+ if (ret)
--
1.7.4.4



2012-02-16 19:54:33

by Luis R. Rodriguez

[permalink] [raw]
Subject: Re: [PATCH] compat-wireless: remove olpc_ec_wakeup_* calls for pre-3.1 kernels

On Wed, Feb 15, 2012 at 1:37 PM, John W. Linville
<[email protected]> wrote:
> This section of the libertas driver calls functions that simply don't
> exist before the release of 3.1.  This code in question was an addition,
> not a change from any existing code.  It is safe to simply remove it for
> older kernels.
>
> Signed-off-by: John W. Linville <[email protected]>

Applied and pushed, thanks!

Luis