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

Commit 99673ee5 authored by Emmanuel Grumbach's avatar Emmanuel Grumbach Committed by Wey-Yi Guy
Browse files

iwlwifi: kill bus_get_hw_id



Get this information from the transport layer.

Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
parent 9ca85961
Loading
Loading
Loading
Loading
+0 −14
Original line number Diff line number Diff line
@@ -118,14 +118,6 @@
struct iwl_shared;
struct iwl_bus;

/**
 * struct iwl_bus_ops - bus specific operations
 * @get_hw_id: get hw_id in u32
 */
struct iwl_bus_ops {
	u32 (*get_hw_id)(struct iwl_bus *bus);
};

/**
 * struct iwl_bus - bus common data
 *
@@ -137,7 +129,6 @@ struct iwl_bus_ops {
 *	it allocates the shared data
 */
struct iwl_bus {
	const struct iwl_bus_ops *ops;
	struct iwl_shared *shrd;

	/* pointer to bus specific struct */
@@ -145,11 +136,6 @@ struct iwl_bus {
	char bus_specific[0] __attribute__((__aligned__(sizeof(void *))));
};

static inline u32 bus_get_hw_id(struct iwl_bus *bus)
{
	return bus->ops->get_hw_id(bus);
}

/*****************************************************
* Bus layer registration functions
******************************************************/
+1 −1
Original line number Diff line number Diff line
@@ -234,7 +234,7 @@ int iwlagn_mac_setup_register(struct iwl_priv *priv,
		priv->hw->wiphy->bands[IEEE80211_BAND_5GHZ] =
			&priv->bands[IEEE80211_BAND_5GHZ];

	hw->wiphy->hw_version = bus_get_hw_id(bus(priv));
	hw->wiphy->hw_version = trans(priv)->hw_id;

	iwl_leds_init(priv);

+4 −33
Original line number Diff line number Diff line
@@ -71,33 +71,6 @@
#include "iwl-csr.h"
#include "iwl-cfg.h"

/* PCI registers */
#define PCI_CFG_RETRY_TIMEOUT	0x041
#define PCI_CFG_LINK_CTRL_VAL_L0S_EN	0x01
#define PCI_CFG_LINK_CTRL_VAL_L1_EN	0x02

struct iwl_pci_bus {
	/* basic pci-network driver stuff */
	struct pci_dev *pci_dev;
};

#define IWL_BUS_GET_PCI_BUS(_iwl_bus) \
			((struct iwl_pci_bus *) ((_iwl_bus)->bus_specific))

#define IWL_BUS_GET_PCI_DEV(_iwl_bus) \
			((IWL_BUS_GET_PCI_BUS(_iwl_bus))->pci_dev)

static u32 iwl_pci_get_hw_id(struct iwl_bus *bus)
{
	struct pci_dev *pci_dev = IWL_BUS_GET_PCI_DEV(bus);

	return (pci_dev->device << 16) + pci_dev->subsystem_device;
}

static const struct iwl_bus_ops bus_ops_pci = {
	.get_hw_id = iwl_pci_get_hw_id,
};

#define IWL_PCI_DEVICE(dev, subdev, cfg) \
	.vendor = PCI_VENDOR_ID_INTEL,  .device = (dev), \
	.subvendor = PCI_ANY_ID, .subdevice = (subdev), \
@@ -283,14 +256,16 @@ static DEFINE_PCI_DEVICE_TABLE(iwl_hw_card_ids) = {
};
MODULE_DEVICE_TABLE(pci, iwl_hw_card_ids);

/* PCI registers */
#define PCI_CFG_RETRY_TIMEOUT	0x041

static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
{
	struct iwl_cfg *cfg = (struct iwl_cfg *)(ent->driver_data);
	struct iwl_bus *bus;
	struct iwl_pci_bus *pci_bus;
	int err;

	bus = kzalloc(sizeof(*bus) + sizeof(*pci_bus), GFP_KERNEL);
	bus = kzalloc(sizeof(*bus), GFP_KERNEL);
	if (!bus) {
		dev_printk(KERN_ERR, &pdev->dev,
			   "Couldn't allocate iwl_pci_bus");
@@ -306,13 +281,9 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
	}

	bus->shrd->bus = bus;
	pci_bus = IWL_BUS_GET_PCI_BUS(bus);
	pci_bus->pci_dev = pdev;

	pci_set_drvdata(pdev, bus);

	bus->ops = &bus_ops_pci;

#ifdef CONFIG_IWLWIFI_IDI
	trans(bus) = iwl_trans_idi_alloc(bus->shrd, pdev, ent);
	if (trans(bus) == NULL) {
+1 −1
Original line number Diff line number Diff line
@@ -536,7 +536,7 @@ static int iwl_testmode_driver(struct ieee80211_hw *hw, struct nlattr **tb)
		break;

	case IWL_TM_CMD_APP2DEV_GET_DEVICE_ID:
		devid = bus_get_hw_id(bus(priv));
		devid = trans(priv)->hw_id;
		IWL_INFO(priv, "hw version: 0x%x\n", devid);

		skb = cfg80211_testmode_alloc_reply_skb(hw->wiphy, 20);
+1 −0
Original line number Diff line number Diff line
@@ -2317,6 +2317,7 @@ struct iwl_trans *iwl_trans_pcie_alloc(struct iwl_shared *shrd,
	trans->dev = &pdev->dev;
	trans->irq = pdev->irq;
	trans_pcie->pci_dev = pdev;
	trans->hw_id = (pdev->device << 16) + pdev->subsystem_device;
	snprintf(trans->hw_id_str, sizeof(trans->hw_id_str),
		 "PCI ID: 0x%04X:0x%04X", pdev->device, pdev->subsystem_device);

Loading