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

Commit 4144cb2a authored by David S. Miller's avatar David S. Miller
Browse files
parents 59f608d8 604c4ef1
Loading
Loading
Loading
Loading
+8 −7
Original line number Diff line number Diff line
@@ -1411,6 +1411,7 @@ F: net/ax25/
B43 WIRELESS DRIVER
M:	Stefano Brivio <stefano.brivio@polimi.it>
L:	linux-wireless@vger.kernel.org
L:	b43-dev@lists.infradead.org (moderated for non-subscribers)
W:	http://linuxwireless.org/en/users/Drivers/b43
S:	Maintained
F:	drivers/net/wireless/b43/
@@ -1587,6 +1588,13 @@ L: linux-scsi@vger.kernel.org
S:	Supported
F:	drivers/scsi/bnx2fc/

BROADCOM SPECIFIC AMBA DRIVER (BCMA)
M:	Rafał Miłecki <zajec5@gmail.com>
L:	linux-wireless@vger.kernel.org
S:	Maintained
F:	drivers/bcma/
F:	include/linux/bcma/

BROCADE BFA FC SCSI DRIVER
M:	Jing Huang <huangj@brocade.com>
L:	linux-scsi@vger.kernel.org
@@ -6099,13 +6107,6 @@ S: Maintained
F:	drivers/ssb/
F:	include/linux/ssb/

BROADCOM SPECIFIC AMBA DRIVER (BCMA)
M:	Rafał Miłecki <zajec5@gmail.com>
L:	linux-wireless@vger.kernel.org
S:	Maintained
F:	drivers/bcma/
F:	include/linux/bcma/

SONY VAIO CONTROL DEVICE DRIVER
M:	Mattia Dongili <malattia@linux.it>
L:	platform-driver-x86@vger.kernel.org
+1 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ int __init bcma_bus_early_register(struct bcma_bus *bus,
				   struct bcma_device *core_cc,
				   struct bcma_device *core_mips);
#ifdef CONFIG_PM
int bcma_bus_suspend(struct bcma_bus *bus);
int bcma_bus_resume(struct bcma_bus *bus);
#endif

+18 −25
Original line number Diff line number Diff line
@@ -235,38 +235,32 @@ static void bcma_host_pci_remove(struct pci_dev *dev)
}

#ifdef CONFIG_PM
static int bcma_host_pci_suspend(struct pci_dev *dev, pm_message_t state)
static int bcma_host_pci_suspend(struct device *dev)
{
	/* Host specific */
	pci_save_state(dev);
	pci_disable_device(dev);
	pci_set_power_state(dev, pci_choose_state(dev, state));
	struct pci_dev *pdev = to_pci_dev(dev);
	struct bcma_bus *bus = pci_get_drvdata(pdev);

	return 0;
	bus->mapped_core = NULL;

	return bcma_bus_suspend(bus);
}

static int bcma_host_pci_resume(struct pci_dev *dev)
static int bcma_host_pci_resume(struct device *dev)
{
	struct bcma_bus *bus = pci_get_drvdata(dev);
	int err;
	struct pci_dev *pdev = to_pci_dev(dev);
	struct bcma_bus *bus = pci_get_drvdata(pdev);

	/* Host specific */
	pci_set_power_state(dev, 0);
	err = pci_enable_device(dev);
	if (err)
		return err;
	pci_restore_state(dev);
	return bcma_bus_resume(bus);
}

	/* Bus specific */
	err = bcma_bus_resume(bus);
	if (err)
		return err;
static SIMPLE_DEV_PM_OPS(bcma_pm_ops, bcma_host_pci_suspend,
			 bcma_host_pci_resume);
#define BCMA_PM_OPS	(&bcma_pm_ops)

	return 0;
}
#else /* CONFIG_PM */
# define bcma_host_pci_suspend	NULL
# define bcma_host_pci_resume	NULL

#define BCMA_PM_OPS     NULL

#endif /* CONFIG_PM */

static DEFINE_PCI_DEVICE_TABLE(bcma_pci_bridge_tbl) = {
@@ -284,8 +278,7 @@ static struct pci_driver bcma_pci_bridge_driver = {
	.id_table = bcma_pci_bridge_tbl,
	.probe = bcma_host_pci_probe,
	.remove = bcma_host_pci_remove,
	.suspend = bcma_host_pci_suspend,
	.resume = bcma_host_pci_resume,
	.driver.pm = BCMA_PM_OPS,
};

int __init bcma_host_pci_init(void)
+24 −0
Original line number Diff line number Diff line
@@ -241,6 +241,21 @@ int __init bcma_bus_early_register(struct bcma_bus *bus,
}

#ifdef CONFIG_PM
int bcma_bus_suspend(struct bcma_bus *bus)
{
	struct bcma_device *core;

	list_for_each_entry(core, &bus->cores, list) {
		struct device_driver *drv = core->dev.driver;
		if (drv) {
			struct bcma_driver *adrv = container_of(drv, struct bcma_driver, drv);
			if (adrv->suspend)
				adrv->suspend(core);
		}
	}
	return 0;
}

int bcma_bus_resume(struct bcma_bus *bus)
{
	struct bcma_device *core;
@@ -252,6 +267,15 @@ int bcma_bus_resume(struct bcma_bus *bus)
		bcma_core_chipcommon_init(&bus->drv_cc);
	}

	list_for_each_entry(core, &bus->cores, list) {
		struct device_driver *drv = core->dev.driver;
		if (drv) {
			struct bcma_driver *adrv = container_of(drv, struct bcma_driver, drv);
			if (adrv->resume)
				adrv->resume(core);
		}
	}

	return 0;
}
#endif
+3 −2
Original line number Diff line number Diff line
@@ -557,9 +557,10 @@ int ath9k_hw_process_rxdesc_edma(struct ath_hw *ah, struct ath_rx_status *rxs,
			rxs->rs_status |= ATH9K_RXERR_DECRYPT;
		else if (rxsp->status11 & AR_MichaelErr)
			rxs->rs_status |= ATH9K_RXERR_MIC;
	}

	if (rxsp->status11 & AR_KeyMiss)
		rxs->rs_status |= ATH9K_RXERR_KEYMISS;
	}

	return 0;
}
Loading