Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Open sidebar
Chakra
Packages
core
Commits
14d4b01f
Commit
14d4b01f
authored
May 01, 2013
by
Manuel
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Rebuild against new kernel
parent
5d7d6032
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
146 additions
and
52 deletions
+146
-52
broadcom-wl/PKGBUILD
broadcom-wl/PKGBUILD
+12
-12
broadcom-wl/linux-recent.patch
broadcom-wl/linux-recent.patch
+87
-9
broadcom-wl/user-ioctl.patch
broadcom-wl/user-ioctl.patch
+47
-31
No files found.
broadcom-wl/PKGBUILD
View file @
14d4b01f
#
# Chakra Packages for Chakra, part of chakra-project.org
#
# maintainer abveritas@chakra-project.org
# Find the kernel name inside the chroot
_extramodules
=
extramodules-3.8-CHAKRA
_kver
=
"
$(
cat
/lib/modules/
${
_extramodules
}
/version
)
"
_k
ern
ver
=
"
$(
cat
/lib/modules/
${
_extramodules
}
/version
)
"
pkgname
=
broadcom-wl
pkgver
=
5.100.82.112
pkgrel
=
1
6
pkgrel
=
1
7
pkgdesc
=
'Broadcom 802.11abgn hybrid Linux networking device driver'
arch
=(
'x86_64'
)
url
=
'http://www.broadcom.com/support/802.11/linux_sta.php'
arch
=(
'i686'
'x86_64'
)
license
=(
'custom'
)
depends
=(
'linux
>=3.8'
'linux<3.9
'
)
depends
=(
'linux'
)
makedepends
=(
'linux-headers'
)
source
=(
"http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_x86_64-v
${
pkgver
//./_
}
.tar.gz"
[[
$CARCH
=
x86_64
]]
&&
ARCH
=
x86_64
||
ARCH
=
x86_32
source
=(
"http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_
${
ARCH
}
-v
${
pkgver
//./_
}
.tar.gz"
'modprobe.d'
'license.patch'
'user-ioctl.patch'
'linux-recent.patch'
)
sha1sums
=(
'
5bd78c20324e6a4aa9f3fafdc6f0155e884d5131
'
sha1sums
=(
'
01aa32f9e85621253a3f15cf4361bb80d41da3e8
'
'89bf92286ede30dd85304c6c4e42e89cfdc0f60a'
'ea7b67982ddc0f56fd3becb9914fd4458fe7d373'
'e0366dd15ea5b25aae0f61bec6be7a203dfca7e4'
'df3cd65e24beed349a40abcf476bdaa82bbc57d3'
)
'a41f11ffc18dbb126176259e02dd93b6ade04a10'
'64f99cde29168e7bd8508af30702c68f907556d9'
)
[[
$CARCH
=
x86_64
]]
&&
sha1sums[0]
=
'5bd78c20324e6a4aa9f3fafdc6f0155e884d5131'
backup
=(
'etc/modprobe.d/broadcom-wl.conf'
)
install
=
install
...
...
@@ -34,11 +34,11 @@ install=install
build
()
{
cd
"
${
srcdir
}
"
patch
-p1
-i
license.patch
patch
-p1
-i
linux-recent.patch
patch
-p1
-i
user-ioctl.patch
patch
-p1
-i
license.patch
make
-C
/lib/modules/
"
${
_kver
}
"
/build
M
=
`
pwd
`
make
-C
/lib/modules/
"
${
_k
ern
ver
}
"
/build
M
=
`
pwd
`
}
package
()
{
...
...
broadcom-wl/linux-recent.patch
View file @
14d4b01f
diff -Naur old/Makefile new/Makefile
--- old/Makefile 201
2
-10-
15 23:08:11.256904135
+1100
+++ new/Makefile 201
2-10
-1
5
23:
08:18.970262327
+1100
--- old/Makefile 201
1
-10-
23 03:56:55.000000000
+1100
+++ new/Makefile 201
3-03
-1
8
23:
40:48.561529595
+1100
@@ -15,21 +15,9 @@
ifneq ($(KERNELRELEASE),)
...
...
@@ -26,8 +26,8 @@ diff -Naur old/Makefile new/Makefile
ifneq ($(API),)
ifeq ($(API), CFG80211)
diff -Naur old/src/wl/sys/wl_cfg80211.c new/src/wl/sys/wl_cfg80211.c
--- old/src/wl/sys/wl_cfg80211.c 201
2
-10-
15 23:08:11.266904352
+1100
+++ new/src/wl/sys/wl_cfg80211.c 201
2-10
-1
5
23:
08:32.313638398
+1100
--- old/src/wl/sys/wl_cfg80211.c 201
1
-10-
23 03:56:55.000000000
+1100
+++ new/src/wl/sys/wl_cfg80211.c 201
3-03
-1
8
23:
54:16.904968829
+1100
@@ -42,7 +42,7 @@
enum nl80211_iftype type, u32 *flags, struct vif_params *params);
static s32 __wl_cfg80211_scan(struct wiphy *wiphy, struct net_device *ndev,
...
...
@@ -37,7 +37,27 @@ diff -Naur old/src/wl/sys/wl_cfg80211.c new/src/wl/sys/wl_cfg80211.c
struct cfg80211_scan_request *request);
static s32 wl_cfg80211_set_wiphy_params(struct wiphy *wiphy, u32 changed);
static s32 wl_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *dev,
@@ -570,10 +570,12 @@
@@ -56,15 +56,10 @@
struct cfg80211_connect_params *sme);
static s32 wl_cfg80211_disconnect(struct wiphy *wiphy, struct net_device *dev, u16 reason_code);
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 36)
-static s32 wl_cfg80211_set_tx_power(struct wiphy *wiphy,
- enum nl80211_tx_power_setting type, s32 dbm);
-#else
-static s32 wl_cfg80211_set_tx_power(struct wiphy *wiphy,
- enum tx_power_setting type, s32 dbm);
-#endif
-
-static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, s32 *dbm);
+static s32 wl_cfg80211_set_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev,
+ enum nl80211_tx_power_setting type, s32 dbm);
+static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev,
+ s32 *dbm);
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 38)
static s32 wl_cfg80211_config_default_key(struct wiphy *wiphy,
@@ -570,10 +565,12 @@
}
static s32
...
...
@@ -51,9 +71,67 @@ diff -Naur old/src/wl/sys/wl_cfg80211.c new/src/wl/sys/wl_cfg80211.c
CHECK_SYS_UP();
err = __wl_cfg80211_scan(wiphy, ndev, request, NULL);
@@ -742,7 +739,7 @@
else
memset(&join_params.params.bssid, 0, ETHER_ADDR_LEN);
- wl_ch_to_chanspec(params->channel, &join_params, &join_params_size);
+ wl_ch_to_chanspec(params->chandef.chan, &join_params, &join_params_size);
err = wl_dev_ioctl(dev, WLC_SET_SSID, &join_params, join_params_size);
if (err) {
@@ -1099,16 +1096,9 @@
return err;
}
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 36)
-static s32
-wl_cfg80211_set_tx_power(struct wiphy *wiphy, enum nl80211_tx_power_setting type, s32 dbm)
-#else
-#define NL80211_TX_POWER_AUTOMATIC TX_POWER_AUTOMATIC
-#define NL80211_TX_POWER_LIMITED TX_POWER_LIMITED
-#define NL80211_TX_POWER_FIXED TX_POWER_FIXED
static s32
-wl_cfg80211_set_tx_power(struct wiphy *wiphy, enum tx_power_setting type, s32 dbm)
-#endif
+wl_cfg80211_set_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev,
+ enum nl80211_tx_power_setting type, s32 dbm)
{
struct wl_priv *wl = wiphy_to_wl(wiphy);
@@ -1158,7 +1148,8 @@
return err;
}
-static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, s32 *dbm)
+static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev,
+ s32 *dbm)
{
struct wl_priv *wl = wiphy_to_wl(wiphy);
struct net_device *ndev = wl_to_ndev(wl);
@@ -2036,6 +2027,7 @@
static s32 wl_update_bss_info(struct wl_priv *wl)
{
+ struct cfg80211_bss_ies *ies;
struct cfg80211_bss *bss;
struct wl_bss_info *bi;
struct wlc_ssid *ssid;
@@ -2074,8 +2066,9 @@
beacon_interval = cpu_to_le16(bi->beacon_period);
} else {
WL_DBG(("Found the AP in the list - BSSID %pM\n", bss->bssid));
- ie = bss->information_elements;
- ie_len = bss->len_information_elements;
+ ies = (struct cfg80211_bss_ies *)rcu_dereference(bss->ies);
+ ie = ies->data;
+ ie_len = ies->len;
beacon_interval = bss->beacon_interval;
cfg80211_put_bss(bss);
}
diff -Naur old/src/wl/sys/wl_iw.h new/src/wl/sys/wl_iw.h
--- old/src/wl/sys/wl_iw.h 201
2
-10-
15 23:08:11.266904352
+1100
+++ new/src/wl/sys/wl_iw.h 201
2-10
-1
5
23:
08:18.97359567
5 +1100
--- old/src/wl/sys/wl_iw.h 201
1
-10-
23 03:56:55.000000000
+1100
+++ new/src/wl/sys/wl_iw.h 201
3-03
-1
8
23:
40:48.56152959
5 +1100
@@ -15,6 +15,7 @@
#ifndef _wl_iw_h_
#define _wl_iw_h_
...
...
@@ -63,8 +141,8 @@ diff -Naur old/src/wl/sys/wl_iw.h new/src/wl/sys/wl_iw.h
#include <typedefs.h>
diff -Naur old/src/wl/sys/wl_linux.c new/src/wl/sys/wl_linux.c
--- old/src/wl/sys/wl_linux.c 201
2
-10-
15 23:08:11.266904352
+1100
+++ new/src/wl/sys/wl_linux.c 201
2-10
-1
5
23:
08:18.973595675
+1100
--- old/src/wl/sys/wl_linux.c 201
1
-10-
23 03:56:55.000000000
+1100
+++ new/src/wl/sys/wl_linux.c 201
3-03
-1
8
23:
40:48.581530042
+1100
@@ -40,7 +40,6 @@
#include <linux/pci_ids.h>
#define WLC_MAXBSSCFG 1
...
...
broadcom-wl/user-ioctl.patch
View file @
14d4b01f
...
...
@@ -29,3 +29,19 @@ diff -aur old/src/wl/sys/wl_linux.c new/src/wl/sys/wl_linux.c
WL_UNLOCK(wl);
done1:
diff -aur old/src/wl/sys/wl_cfg80211.c new/src/wl/sys/wl_cfg80211.c.new
--- old/src/wl/sys/wl_cfg80211.c 2013-04-30 18:21:18.190170600 +0300
+++ new/src/wl/sys/wl_cfg80211.c.new 2013-04-30 18:33:04.516810699 +0300
@@ -2073,7 +2073,11 @@
ie = ies->data;
ie_len = ies->len;
beacon_interval = bss->beacon_interval;
- cfg80211_put_bss(bss);
+ #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 9, 0)
+ cfg80211_put_bss(bss);
+ #else
+ cfg80211_put_bss(wl_to_wiphy(wl), bss);
+ #endif
}
tim = bcm_parse_tlvs(ie, ie_len, WLAN_EID_TIM);
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment