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

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

Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6

parents 257ddbda b473946a
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -2822,10 +2822,11 @@ L: netdev@vger.kernel.org
S:	Maintained
F:	drivers/net/ixp2000/

INTEL ETHERNET DRIVERS (e100/e1000/e1000e/igb/ixgb/ixgbe)
INTEL ETHERNET DRIVERS (e100/e1000/e1000e/igb/igbvf/ixgb/ixgbe)
M:	Jeff Kirsher <jeffrey.t.kirsher@intel.com>
M:	Jesse Brandeburg <jesse.brandeburg@intel.com>
M:	Bruce Allan <bruce.w.allan@intel.com>
M:	Alex Duyck <alexander.h.duyck@intel.com>
M:	PJ Waskiewicz <peter.p.waskiewicz.jr@intel.com>
M:	John Ronciak <john.ronciak@intel.com>
L:	e1000-devel@lists.sourceforge.net
@@ -2835,6 +2836,7 @@ F: drivers/net/e100.c
F:	drivers/net/e1000/
F:	drivers/net/e1000e/
F:	drivers/net/igb/
F:	drivers/net/igbvf/
F:	drivers/net/ixgb/
F:	drivers/net/ixgbe/

+5 −0
Original line number Diff line number Diff line
@@ -276,8 +276,13 @@ struct be_adapter {
	int link_speed;
	u8 port_type;
	u8 transceiver;
	u8 generation;		/* BladeEngine ASIC generation */
};

/* BladeEngine Generation numbers */
#define BE_GEN2 2
#define BE_GEN3 3

extern const struct ethtool_ops be_ethtool_ops;

#define drvr_stats(adapter)		(&adapter->stats.drvr_stats)
+1 −1
Original line number Diff line number Diff line
@@ -286,7 +286,7 @@ static void be_wrb_hdr_prepare(struct be_mcc_wrb *wrb, int payload_len,
				MCC_WRB_SGE_CNT_SHIFT;
	wrb->payload_length = payload_len;
	wrb->tag0 = opcode;
	be_dws_cpu_to_le(wrb, 20);
	be_dws_cpu_to_le(wrb, 8);
}

/* Don't touch the hdr after it's prepared */
+2 −1
Original line number Diff line number Diff line
@@ -165,7 +165,8 @@ struct be_cmd_req_hdr {
	u8 domain;		/* dword 0 */
	u32 timeout;		/* dword 1 */
	u32 request_length;	/* dword 2 */
	u32 rsvd;		/* dword 3 */
	u8 version;		/* dword 3 */
	u8 rsvd[3];		/* dword 3 */
};

#define RESP_HDR_INFO_OPCODE_SHIFT	0	/* bits 0 - 7 */
+23 −2
Original line number Diff line number Diff line
@@ -2051,6 +2051,7 @@ static void be_unmap_pci_bars(struct be_adapter *adapter)
static int be_map_pci_bars(struct be_adapter *adapter)
{
	u8 __iomem *addr;
	int pcicfg_reg;

	addr = ioremap_nocache(pci_resource_start(adapter->pdev, 2),
			pci_resource_len(adapter->pdev, 2));
@@ -2064,8 +2065,13 @@ static int be_map_pci_bars(struct be_adapter *adapter)
		goto pci_map_err;
	adapter->db = addr;

	addr = ioremap_nocache(pci_resource_start(adapter->pdev, 1),
			pci_resource_len(adapter->pdev, 1));
	if (adapter->generation == BE_GEN2)
		pcicfg_reg = 1;
	else
		pcicfg_reg = 0;

	addr = ioremap_nocache(pci_resource_start(adapter->pdev, pcicfg_reg),
			pci_resource_len(adapter->pdev, pcicfg_reg));
	if (addr == NULL)
		goto pci_map_err;
	adapter->pcicfg = addr;
@@ -2162,6 +2168,7 @@ static int be_stats_init(struct be_adapter *adapter)
	cmd->va = pci_alloc_consistent(adapter->pdev, cmd->size, &cmd->dma);
	if (cmd->va == NULL)
		return -1;
	memset(cmd->va, cmd->size, 0);
	return 0;
}

@@ -2240,6 +2247,20 @@ static int __devinit be_probe(struct pci_dev *pdev,
		goto rel_reg;
	}
	adapter = netdev_priv(netdev);

	switch (pdev->device) {
	case BE_DEVICE_ID1:
	case OC_DEVICE_ID1:
		adapter->generation = BE_GEN2;
		break;
	case BE_DEVICE_ID2:
	case OC_DEVICE_ID2:
		adapter->generation = BE_GEN3;
		break;
	default:
		adapter->generation = 0;
	}

	adapter->pdev = pdev;
	pci_set_drvdata(pdev, adapter);
	adapter->netdev = netdev;
Loading