Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f9a904ef authored by David S. Miller's avatar David S. Miller
Browse files

Merge tag 'wireless-drivers-next-for-davem-2019-04-18' of...

Merge tag 'wireless-drivers-next-for-davem-2019-04-18' of git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next



Kalle Valo says:

====================
wireless-drivers-next patches for 5.2

Nothing really special standing out this time, iwlwifi being the most
active driver.

Major changes:

iwlwifi

* send NO_DATA events so they can be captured in radiotap

* support for multiple BSSID

* support for some new FW API versions

* support new hardware

* debugfs cleanups by Greg-KH

qtnfmac

* allow each MAC to specify its own regulatory rules
====================

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents b8fb1ab4 b5250c9c
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -1835,7 +1835,7 @@ static void lpphy_papd_cal(struct b43_wldev *dev, struct lpphy_tx_gains gains,
static void lpphy_papd_cal_txpwr(struct b43_wldev *dev)
{
	struct b43_phy_lp *lpphy = dev->phy.lp;
	struct lpphy_tx_gains gains, oldgains;
	struct lpphy_tx_gains oldgains;
	int old_txpctl, old_afe_ovr, old_rf, old_bbmult;

	lpphy_read_tx_pctl_mode_from_hardware(dev);
@@ -1849,9 +1849,9 @@ static void lpphy_papd_cal_txpwr(struct b43_wldev *dev)
	lpphy_set_tx_power_control(dev, B43_LPPHY_TXPCTL_OFF);

	if (dev->dev->chip_id == 0x4325 && dev->dev->chip_rev == 0)
		lpphy_papd_cal(dev, gains, 0, 1, 30);
		lpphy_papd_cal(dev, oldgains, 0, 1, 30);
	else
		lpphy_papd_cal(dev, gains, 0, 1, 65);
		lpphy_papd_cal(dev, oldgains, 0, 1, 65);

	if (old_afe_ovr)
		lpphy_set_tx_gains(dev, oldgains);
+9 −2
Original line number Diff line number Diff line
@@ -490,11 +490,18 @@ int brcmf_proto_bcdc_attach(struct brcmf_pub *drvr)
	return -ENOMEM;
}

void brcmf_proto_bcdc_detach(struct brcmf_pub *drvr)
void brcmf_proto_bcdc_detach_pre_delif(struct brcmf_pub *drvr)
{
	struct brcmf_bcdc *bcdc = drvr->proto->pd;

	brcmf_fws_detach_pre_delif(bcdc->fws);
}

void brcmf_proto_bcdc_detach_post_delif(struct brcmf_pub *drvr)
{
	struct brcmf_bcdc *bcdc = drvr->proto->pd;

	drvr->proto->pd = NULL;
	brcmf_fws_detach(bcdc->fws);
	brcmf_fws_detach_post_delif(bcdc->fws);
	kfree(bcdc);
}
+4 −2
Original line number Diff line number Diff line
@@ -18,14 +18,16 @@

#ifdef CONFIG_BRCMFMAC_PROTO_BCDC
int brcmf_proto_bcdc_attach(struct brcmf_pub *drvr);
void brcmf_proto_bcdc_detach(struct brcmf_pub *drvr);
void brcmf_proto_bcdc_detach_pre_delif(struct brcmf_pub *drvr);
void brcmf_proto_bcdc_detach_post_delif(struct brcmf_pub *drvr);
void brcmf_proto_bcdc_txflowblock(struct device *dev, bool state);
void brcmf_proto_bcdc_txcomplete(struct device *dev, struct sk_buff *txp,
				 bool success);
struct brcmf_fws_info *drvr_to_fws(struct brcmf_pub *drvr);
#else
static inline int brcmf_proto_bcdc_attach(struct brcmf_pub *drvr) { return 0; }
static inline void brcmf_proto_bcdc_detach(struct brcmf_pub *drvr) {}
static void brcmf_proto_bcdc_detach_pre_delif(struct brcmf_pub *drvr) {};
static inline void brcmf_proto_bcdc_detach_post_delif(struct brcmf_pub *drvr) {}
#endif

#endif /* BRCMFMAC_BCDC_H */
+3 −5
Original line number Diff line number Diff line
@@ -628,15 +628,13 @@ int brcmf_sdiod_send_buf(struct brcmf_sdio_dev *sdiodev, u8 *buf, uint nbytes)

	err = brcmf_sdiod_set_backplane_window(sdiodev, addr);
	if (err)
		return err;
		goto out;

	addr &= SBSDIO_SB_OFT_ADDR_MASK;
	addr |= SBSDIO_SB_ACCESS_2_4B_FLAG;

	if (!err)
		err = brcmf_sdiod_skbuff_write(sdiodev, sdiodev->func2, addr,
					       mypkt);

	err = brcmf_sdiod_skbuff_write(sdiodev, sdiodev->func2, addr, mypkt);
out:
	brcmu_pkt_buf_free_skb(mypkt);

	return err;
+12 −0
Original line number Diff line number Diff line
@@ -91,6 +91,7 @@ struct brcmf_bus_ops {
	int (*get_fwname)(struct device *dev, const char *ext,
			  unsigned char *fw_name);
	void (*debugfs_create)(struct device *dev);
	int (*reset)(struct device *dev);
};


@@ -245,6 +246,15 @@ void brcmf_bus_debugfs_create(struct brcmf_bus *bus)
	return bus->ops->debugfs_create(bus->dev);
}

static inline
int brcmf_bus_reset(struct brcmf_bus *bus)
{
	if (!bus->ops->reset)
		return -EOPNOTSUPP;

	return bus->ops->reset(bus->dev);
}

/*
 * interface functions from common layer
 */
@@ -262,6 +272,8 @@ void brcmf_detach(struct device *dev);
void brcmf_dev_reset(struct device *dev);
/* Request from bus module to initiate a coredump */
void brcmf_dev_coredump(struct device *dev);
/* Indication that firmware has halted or crashed */
void brcmf_fw_crashed(struct device *dev);

/* Configure the "global" bus state used by upper layers */
void brcmf_bus_change_state(struct brcmf_bus *bus, enum brcmf_bus_state state);
Loading