You are not logged in.
Has anyone tried this patch with linux-4.1.2? It just entered core repo.
update:
just tried it, for now it seems it's working fine with kernel 4.1
Last edited by matersci (2015-07-16 11:29:00)
Offline
Hi guys,
do you still use this patch? Is it working?
I'm trying to install it and get the following error with pacman
error: broadcom-wl-dkms: missing required signature
error: failed to commit transaction (package missing required signature)
Errors occurred, no packages were upgraded.
Any ideas why?
Last edited by JoKer--777 (2015-09-15 17:16:22)
Offline
Hi guys,
do you still use this patch? Is it working?
I'm trying to install it and get the following error with pacmanerror: broadcom-wl-dkms: missing required signature
error: failed to commit transaction (package missing required signature)
Errors occurred, no packages were upgraded.Any ideas why?
Yes, it's working fine.
Where are you trying to install it from?
Offline
JoKer--777 wrote:Hi guys,
do you still use this patch? Is it working?
I'm trying to install it and get the following error with pacmanerror: broadcom-wl-dkms: missing required signature
error: failed to commit transaction (package missing required signature)
Errors occurred, no packages were upgraded.Any ideas why?
Yes, it's working fine.
Where are you trying to install it from?
Hey matersci!
What do I need to install, to get my WLAN working properly?
I followed the discussion but somehow lost the line
Okay, I see that I need to install them from archlinuxgr Unofficial User Repo. But it keeps telling me the signature is missing.
If that patched package is working so good, why the hell don't they include it in the official Repos?
Last edited by vlast777 (2015-09-23 10:54:59)
Offline
just add archlinuxgr repo
[archlinuxgr]
SigLevel = PackageOptional
Server = http://archlinuxgr.tiven.org/archlinux/$arch
and do a
pacman -Sy broadcom-wl-dkms
to install version 6.30.223.141
it works well with BCM43142. other card need the newer version.
Last edited by matersci (2015-09-23 10:58:44)
Offline
Thanks alot!
So all we can do is hope, that he will never quit maintaining this repo!
So basically this package fixes the "frequent disconnection" problem with the BCM43142?
Iam still building tho.
Offline
This is absolutely brilliant!!
After installing the package from this repo, I didn't had a single disconnect.
Thanks alot!
Offline
broadcom-wl-dkms 6.30.223.141 is not working with new kernel (4.2)
Until we have a new patch I am staying with 4.1.6...
Last edited by matersci (2015-09-28 11:51:14)
Offline
Hi!
I have the similar issue with BCM43142.
Could anybody give me link where I can download broadcom-wl-dkms 6.30.223.141 driver and kernel 4.1.6 ?
Offline
kernel 4.1.6 and the rest packages you need, should be in your cache (/var/cache/pacman/pkg by default). If you don't have the packages, you can use Arch Rollback Machine
https://wiki.archlinux.org/index.php/Ar … ck_Machine
For broadcom-wl-dkms 6.30.223.141 I posted the repo a few posts before.
Offline
kernel 4.1.6 and the rest packages you need, should be in your cache (/var/cache/pacman/pkg by default). If you don't have the packages, you can use Arch Rollback Machine
https://wiki.archlinux.org/index.php/Ar … ck_MachineFor broadcom-wl-dkms 6.30.223.141 I posted the repo a few posts before.
Thanks a lot!
I will try to install these kernel and drivers.
Offline
I think this will be the last patch for 141 that (kinda) works with 4.2.2.
linux-recent.patch
diff -rupN a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c
--- a/src/wl/sys/wl_cfg80211_hybrid.c 2015-10-05 08:59:00.780462461 +0700
+++ b/src/wl/sys/wl_cfg80211_hybrid.c 2015-10-05 09:16:33.700103440 +0700
@@ -59,8 +59,13 @@ static s32 wl_cfg80211_set_wiphy_params(
static s32 wl_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *dev,
struct cfg80211_ibss_params *params);
static s32 wl_cfg80211_leave_ibss(struct wiphy *wiphy, struct net_device *dev);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 16, 0)
static s32 wl_cfg80211_get_station(struct wiphy *wiphy,
struct net_device *dev, u8 *mac, struct station_info *sinfo);
+#else
+static s32 wl_cfg80211_get_station(struct wiphy *wiphy,
+ struct net_device *dev, const u8 *mac, struct station_info *sinfo);
+#endif
static s32 wl_cfg80211_set_power_mgmt(struct wiphy *wiphy,
struct net_device *dev, bool enabled, s32 timeout);
static int wl_cfg80211_connect(struct wiphy *wiphy, struct net_device *dev,
@@ -1380,7 +1385,7 @@ wl_cfg80211_get_key(struct wiphy *wiphy,
key_endian_to_host(&key);
params.key_len = (u8) min_t(u8, DOT11_MAX_KEY_SIZE, key.len);
- memcpy(params.key, key.data, params.key_len);
+ memcpy((char *)params.key, key.data, params.key_len);
if ((err = wl_dev_ioctl(dev, WLC_GET_WSEC, &wsec, sizeof(wsec)))) {
return err;
@@ -1414,9 +1419,15 @@ wl_cfg80211_get_key(struct wiphy *wiphy,
return err;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 16, 0)
static s32
wl_cfg80211_get_station(struct wiphy *wiphy, struct net_device *dev,
u8 *mac, struct station_info *sinfo)
+#else
+static s32
+wl_cfg80211_get_station(struct wiphy *wiphy, struct net_device *dev,
+ const u8 *mac, struct station_info *sinfo)
+#endif
{
struct wl_cfg80211_priv *wl = wiphy_to_wl(wiphy);
scb_val_t scb_val;
@@ -1434,7 +1445,11 @@ wl_cfg80211_get_station(struct wiphy *wi
WL_DBG(("Could not get rate (%d)\n", err));
} else {
rate = dtoh32(rate);
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 0, 0)
+ sinfo->filled |= BIT(NL80211_STA_INFO_TX_BITRATE);
+ #else
sinfo->filled |= STATION_INFO_TX_BITRATE;
+ #endif
sinfo->txrate.legacy = rate * 5;
WL_DBG(("Rate %d Mbps\n", (rate / 2)));
}
@@ -1447,7 +1462,11 @@ wl_cfg80211_get_station(struct wiphy *wi
return err;
}
rssi = dtoh32(scb_val.val);
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 0, 0)
+ sinfo->filled |= BIT(NL80211_STA_INFO_SIGNAL);
+ #else
sinfo->filled |= STATION_INFO_SIGNAL;
+ #endif
sinfo->signal = rssi;
WL_DBG(("RSSI %d dBm\n", rssi));
}
@@ -1780,9 +1799,15 @@ static s32 wl_inform_single_bss(struct w
notify_ie = (u8 *)bi + le16_to_cpu(bi->ie_offset);
notify_ielen = le32_to_cpu(bi->ie_length);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 18, 0)
cbss = cfg80211_inform_bss(wiphy, channel, (const u8 *)(bi->BSSID.octet),
0, beacon_proberesp->capab_info, beacon_proberesp->beacon_int,
(const u8 *)notify_ie, notify_ielen, signal, GFP_KERNEL);
+#else
+ cbss = cfg80211_inform_bss(wiphy, channel, CFG80211_BSS_FTYPE_UNKNOWN, (const u8 *)(bi->BSSID.octet),
+ 0, beacon_proberesp->capab_info, beacon_proberesp->beacon_int,
+ (const u8 *)notify_ie, notify_ielen, signal, GFP_KERNEL);
+#endif
if (unlikely(!cbss))
return -ENOMEM;
@@ -1817,7 +1842,11 @@ wl_notify_connect_status(struct wl_cfg80
}
else if ((event == WLC_E_LINK && ~(flags & WLC_EVENT_MSG_LINK)) ||
event == WLC_E_DEAUTH_IND || event == WLC_E_DISASSOC_IND) {
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 2, 0)
+ cfg80211_disconnected(ndev, 0, NULL, 0, false, GFP_KERNEL);
+ #else
cfg80211_disconnected(ndev, 0, NULL, 0, GFP_KERNEL);
+ #endif
clear_bit(WL_STATUS_CONNECTED, &wl->status);
wl_link_down(wl);
wl_init_prof(wl->profile);
@@ -1841,7 +1870,11 @@ wl_notify_connect_status(struct wl_cfg80
wl_get_assoc_ies(wl);
memcpy(&wl->bssid, &e->addr, ETHER_ADDR_LEN);
wl_update_bss_info(wl);
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 15, 0)
+ cfg80211_ibss_joined(ndev, (u8 *)&wl->bssid, &wl->conf->channel, GFP_KERNEL);
+#else
cfg80211_ibss_joined(ndev, (u8 *)&wl->bssid, GFP_KERNEL);
+#endif
set_bit(WL_STATUS_CONNECTED, &wl->status);
wl->profile->active = true;
}
@@ -2395,8 +2428,16 @@ cfg80211_attach_out:
void wl_cfg80211_detach(struct net_device *ndev)
{
- struct wl_cfg80211_priv *wl = ndev_to_wl(ndev);
-
+ struct wl_cfg80211_priv *wl;
+ struct wireless_dev *wdev;
+
+ wdev = ndev->ieee80211_ptr;
+ if (wdev == NULL) {
+ printk(KERN_ERR "[%s()] in ndev=%p: IEEE80211ptr=%p\n", __FUNCTION__, ndev, wdev);
+ return;
+ }
+ wl = ndev_to_wl(ndev);
+
wl_deinit_cfg80211_priv(wl);
wl_free_wdev(wl);
}
diff -rupN a/src/wl/sys/wl_dbg.h b/src/wl/sys/wl_dbg.h
--- a/src/wl/sys/wl_dbg.h 2015-10-05 08:59:00.780462461 +0700
+++ b/src/wl/sys/wl_dbg.h 2015-10-05 08:59:00.947128224 +0700
@@ -55,10 +55,12 @@ extern int osl_printf(const char *fmt, .
#define WL_NONE(args)
+#define FORCE_TRACE_LEVEL(fmt, ...) do { printk(KERN_ERR fmt, ## __VA_ARGS__); } while (0) /* ## is GCC specific syntax to remove comma when single arg */
+
#ifdef BCMDBG_ERR
#define WL_ERROR(args) WL_PRINT(args)
#else
-#define WL_ERROR(args)
+#define WL_ERROR(args) FORCE_TRACE_LEVEL args
#endif
#define WL_TRACE(args)
#define WL_APSTA_UPDN(args)
diff -rupN a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c
--- a/src/wl/sys/wl_linux.c 2015-10-05 08:59:00.780462461 +0700
+++ b/src/wl/sys/wl_linux.c 2015-10-05 08:59:00.877128603 +0700
@@ -910,7 +910,7 @@ wl_remove(struct pci_dev *pdev)
pci_set_drvdata(pdev, NULL);
}
-static struct pci_driver wl_pci_driver = {
+static struct pci_driver wl_pci_driver __refdata = {
name: "wl",
probe: wl_pci_probe,
suspend: wl_suspend,
@@ -1308,6 +1308,7 @@ wl_free_if(wl_info_t *wl, wl_if_t *wlif)
MFREE(wl->osh, wlif->dev, sizeof(struct net_device));
#else
free_netdev(wlif->dev);
+ wlif->dev = NULL;
#endif
}
@@ -1345,7 +1346,12 @@ wl_alloc_linux_if(wl_if_t *wlif)
dev->priv = priv_link;
#else
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 17, 0))
dev = alloc_netdev(sizeof(priv_link_t), intf_name, ether_setup);
+#else
+ dev = alloc_netdev(sizeof(priv_link_t), intf_name, NET_NAME_UNKNOWN,
+ ether_setup);
+#endif
if (!dev) {
WL_ERROR(("wl%d: %s: alloc_netdev failed\n",
(wl->pub)?wl->pub->unit:wlif->subunit, __FUNCTION__));
@@ -2156,8 +2162,8 @@ wl_start(struct sk_buff *skb, struct net
wlif = WL_DEV_IF(dev);
wl = WL_INFO(dev);
+ skb->prev = NULL;
if (WL_ALL_PASSIVE_ENAB(wl) || (WL_RTR() && WL_CONFIG_SMP())) {
- skb->prev = NULL;
TXQ_LOCK(wl);
@@ -2425,8 +2431,10 @@ wl_monitor(wl_info_t *wl, wl_rxsts_t *rx
p80211msg_t *phdr;
len = sizeof(p80211msg_t) + oskb->len - D11_PHY_HDR_LEN;
- if ((skb = dev_alloc_skb(len)) == NULL)
+ if ((skb = dev_alloc_skb(len)) == NULL) {
+ WL_ERROR(("in %s:%d [%s()] dev_alloc_skb() failure!", __FILE__, __LINE__, __FUNCTION__));
return;
+ }
skb_put(skb, len);
phdr = (p80211msg_t*)skb->data;
@@ -2505,9 +2513,10 @@ wl_monitor(wl_info_t *wl, wl_rxsts_t *rx
rtap_len = sizeof(wl_radiotap_ht_brcm_2_t);
len = rtap_len + (oskb->len - D11_PHY_HDR_LEN);
- if ((skb = dev_alloc_skb(len)) == NULL)
+ if ((skb = dev_alloc_skb(len)) == NULL) {
+ WL_ERROR(("in %s:%d [%s()] dev_alloc_skb() failure!", __FILE__, __LINE__, __FUNCTION__));
return;
-
+ }
skb_put(skb, len);
if (CHSPEC_IS2G(rxsts->chanspec)) {
@@ -2636,9 +2645,11 @@ wl_monitor(wl_info_t *wl, wl_rxsts_t *rx
len += amsdu_len;
}
- if ((skb = dev_alloc_skb(len)) == NULL)
+ if ((skb = dev_alloc_skb(len)) == NULL) {
+ WL_ERROR(("in %s:%d [%s()] dev_alloc_skb() failure!", __FILE__, __LINE__, __FUNCTION__));
return;
-
+ }
+
skb_put(skb, len);
if (CHSPEC_IS2G(rxsts->chanspec)) {
@@ -2970,7 +2981,7 @@ _wl_del_monitor(wl_task_t *task)
}
void
-wl_set_monitor(wl_info_t *wl, int val)
+wl_set_monitor(wl_info_t *wl, int val) /* public => is called by wlc_hybrid.o_shipped */
{
const char *devname;
wl_if_t *wlif;
@@ -3236,7 +3247,12 @@ void
wl_tkip_printstats(wl_info_t *wl, bool group_key)
{
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 14)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
+ struct seq_file sfile;
+ struct seq_file *debug_buf = &sfile;
+#else
char debug_buf[512];
+#endif
int idx;
if (wl->tkipmodops) {
if (group_key) {
@@ -3249,7 +3265,11 @@ wl_tkip_printstats(wl_info_t *wl, bool g
wl->tkipmodops->print_stats(debug_buf, wl->tkip_ucast_data);
else
return;
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
+ printk("%s: TKIP stats from module: %s\n", debug_buf->buf, group_key?"Bcast":"Ucast");
+#else
printk("%s: TKIP stats from module: %s\n", debug_buf, group_key?"Bcast":"Ucast");
+#endif
}
#endif
}
@@ -3408,11 +3428,19 @@ wl_linux_watchdog(void *ctx)
return 0;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
static int
wl_proc_read(char *buffer, char **start, off_t offset, int length, int *eof, void *data)
{
wl_info_t * wl = (wl_info_t *)data;
+#else
+static int
+wl_proc_read(struct seq_file *seq, void *offset)
+{
+ wl_info_t * wl = (wl_info_t *)seq->private;
+#endif
int bcmerror, to_user;
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
int len;
if (offset > 0) {
@@ -3424,17 +3452,33 @@ wl_proc_read(char *buffer, char **start,
WL_ERROR(("%s: Not enough return buf space\n", __FUNCTION__));
return 0;
}
+#endif
WL_LOCK(wl);
bcmerror = wlc_ioctl(wl->wlc, WLC_GET_MONITOR, &to_user, sizeof(int), NULL);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
len = sprintf(buffer, "%d\n", to_user);
+#endif
WL_UNLOCK(wl);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
return len;
+#else
+ seq_printf(seq, "%d\n", to_user);
+ return bcmerror;
+#endif
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
static int
wl_proc_write(struct file *filp, const char *buff, unsigned long length, void *data)
{
wl_info_t * wl = (wl_info_t *)data;
+#else
+static ssize_t
+wl_proc_write(struct file *filp, const char __user *buff, size_t length, loff_t *ppos)
+{
+ struct seq_file *seq = filp->private_data;
+ wl_info_t * wl = (wl_info_t *)seq->private;
+#endif
int from_user = 0;
int bcmerror;
@@ -3445,7 +3489,11 @@ wl_proc_write(struct file *filp, const c
}
if (copy_from_user(&from_user, buff, 1)) {
WL_ERROR(("%s: copy from user failed\n", __FUNCTION__));
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
return -EIO;
+#else
+ return -EFAULT;
+#endif
}
if (from_user >= 0x30)
@@ -3459,22 +3507,48 @@ wl_proc_write(struct file *filp, const c
WL_ERROR(("%s: SET_MONITOR failed with %d\n", __FUNCTION__, bcmerror));
return -EIO;
}
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
+ *ppos += length;
+#endif
return length;
}
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
+static int wl_proc_open(struct inode *inode, struct file *file)
+{
+ return single_open(file, wl_proc_read, PDE_DATA(inode));
+}
+
+static const struct file_operations wl_fops = {
+ .owner = THIS_MODULE,
+ .open = wl_proc_open,
+ .read = seq_read,
+ .write = wl_proc_write,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+#endif
+
static int
wl_reg_proc_entry(wl_info_t *wl)
{
char tmp[32];
sprintf(tmp, "%s%d", HYBRID_PROC, wl->pub->unit);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
if ((wl->proc_entry = create_proc_entry(tmp, 0644, NULL)) == NULL) {
WL_ERROR(("%s: create_proc_entry %s failed\n", __FUNCTION__, tmp));
+#else
+ if ((wl->proc_entry = proc_create_data(tmp, 0644, NULL, &wl_fops, wl)) == NULL) {
+ WL_ERROR(("%s: proc_create_data %s failed\n", __FUNCTION__, tmp));
+#endif
ASSERT(0);
return -1;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
wl->proc_entry->read_proc = wl_proc_read;
wl->proc_entry->write_proc = wl_proc_write;
wl->proc_entry->data = wl;
+#endif
return 0;
}
#ifdef WLOFFLD
PKGBUILD
# Maintainer: Frank Vanderham <twelve.eighty (at) gmail.>
pkgname=broadcom-wl-dkms
_pkgname=broadcom-wl
pkgver=6.30.223.141
pkgrel=10
pkgdesc="Broadcom 802.11 Linux STA wireless driver"
url='http://www.broadcom.com/support/802.11/linux_sta.php'
arch=('i686' 'x86_64')
license=('custom')
depends=('dkms')
optdepends=('linux-headers')
install=broadcom-wl-dkms.install
conflicts=('wireless-bcm43142-oneiric-dkms' 'wireless-bcm43142-dkms' 'broadcom-wl6-dkms' 'broadcom-wl')
[[ $CARCH = x86_64 ]] && _arch=_64 || _arch=
source=("http://www.broadcom.com/docs/linux_sta/hybrid-v35${_arch}-nodebug-pcoem-${pkgver//./_}.tar.gz"
'broadcom-wl-dkms.conf'
'dkms.conf'
'license.patch'
'linux-recent.patch'
'gcc.patch')
sha1sums=('2917d785ffd9663b1d23cfa388b9bd7c9f03cc3b'
'a37c5dd9ab279372f0c68595bb2a8f1fe694cd13'
'91926bb064c00a00dbcab0d1d92c7eb976d56032'
'81c05d48b234d56ad2e18eaee5ce89b79550ef20'
'64afcce15fd655f76f9807ec3ed39239e0416a0b'
'a23e0d52e0a20b5155fa8a418af79b3f7d191fa1')
[[ $CARCH = x86_64 ]] && sha1sums[0]='3a2453c71a07030f41a8fc613c87badf8452848c'
backup=('etc/modprobe.d/broadcom-wl-dkms.conf')
build() {
cd "${srcdir}"
patch -p1 -i linux-recent.patch
patch -p1 -i license.patch
patch -p1 -i gcc.patch
# delete files not needed for packaging
rm hybrid-v35${_arch}-nodebug-pcoem-${pkgver//./_}.tar.gz
}
package() {
cd "${srcdir}"
mkdir -p ${pkgdir}/usr/src/${_pkgname}-${pkgver}
cp -RL * ${pkgdir}/usr/src/${_pkgname}-${pkgver}
install -D -m 644 lib/LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
install -D -m 644 broadcom-wl-dkms.conf "${pkgdir}"/etc/modprobe.d/broadcom-wl-dkms.conf
}
Offline
nice.
I have uploaded the new version to the repo, try it...
Edit
Looks that everything is working fine, same as previous version.
It seems that until kernel 4.3 we are ok...
Last edited by matersci (2015-10-05 10:11:04)
Offline
On both kernel 4.1.13 and 4.2.6
I have my journal logs full off this message, the driver itself works fine, but when I use it, spawn 3x per minute this msg.
"kernel: wl_tkip_decrypt: Invalid key_idx 1"
Is there a way how to fix it? or supress this? My log is 50% of this message. Anyway thanks for this driver. Any news about kernel 4.3 compatibility?
EDIT: Kernel 4.3 builds / works fine, the invalid key_idx 1 msg is still there. When I don't download anything the msg is not raised that often.
EDIT2: the invalid key idx message parse raw text to loged tty no idea why? so distracting, it might be a systemd228 bug aswell, does anybody know if the new 'broadcom-wl 6.30.223.271-2' works with our card without drops?
EDIT3: On Kernel 4.4 the driver compiles fine and works aswell but I suspect it's dropping aswell for some other reason than the new driver. Be cautious with kernel 4.4 I noticed weird behavior.
EDIT4: -I have moved to "linux44-broadcom-wl 6.30.223.248-1" + kernel 4.4.0.2 I will continue testing.- It drops less but it does
EDIT5: 6.30.223.271-4 driver works on kernel44, seems to work well, I will be testing and return here to post results
EDIT6: After long experience with 6.30.223.271-4 I must say the problem is no longer. I had 3x drops in a month and I was very far away and seems to be unrelated to our little problem. So I give a green light for anyone to switch to the newest driver.
Last edited by freed00m (2016-02-29 11:24:58)
Offline
Hi all!
I am a "happy" user of this piece of technology:
02:00.0 Network controller: Broadcom Corporation BCM43142 802.11b/g/n (rev 01)
And as all of you I had frequent disconnections, low speed and low reported signal strength.
But I came up with workaround:
$ ping -s 16000 192.168.1.1
It turns out that while wireless adapter is busy with transmitting data it would not dissconnect me from AP.
I hope this information was useful for all of you!
P.S. I am using aur/broadcom-wl-dkms as a driver.
Offline
@Smola,
I'm still using the "ping" workaround to keep my connection alive.
Do you know of any permanent solution to this issue? (It still not working that well under linux with the wl driver)
Thank you!
Pitou!
Offline
@Smola,
I'm still using the "ping" workaround to keep my connection alive.
Do you know of any permanent solution to this issue? (It still not working that well under linux with the wl driver)
Thank you!
Pitou!
Unfortunately, no. My workaround was not using wifi at all. Ethernet ftw.
Offline
I am having the same issue with the broadcom-wl-dkms package and 4.14.4-1-ARCH.
In lspci:
07:00.0 Network controller [0280]: Broadcom Corporation BCM43142 802.11b/g/n [14e4:4365] (rev 01)
but dmesg gives
[ 5.324254] eth0: Broadcom BCM4365 802.11 Hybrid Wireless Controller 6.30.223.141 (r415941)
Plus I same issue with connectivity problems with some routers.
Offline
Closing.
Sakura:-
Mobo: MSI MAG X570S TORPEDO MAX // Processor: AMD Ryzen 9 5950X @4.9GHz // GFX: AMD Radeon RX 5700 XT // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 6x 1TB SSD, 2x 120GB SSD, 1x 275GB M2 SSD
Making lemonade from lemons since 2015.
Offline