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

Commit 0e833d8c authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (40 commits)
  tg3: Fix tg3_skb_error_unmap()
  net: tracepoint of net_dev_xmit sees freed skb and causes panic
  drivers/net/can/flexcan.c: add missing clk_put
  net: dm9000: Get the chip in a known good state before enabling interrupts
  drivers/net/davinci_emac.c: add missing clk_put
  af-packet: Add flag to distinguish VID 0 from no-vlan.
  caif: Fix race when conditionally taking rtnl lock
  usbnet/cdc_ncm: add missing .reset_resume hook
  vlan: fix typo in vlan_dev_hard_start_xmit()
  net/ipv4: Check for mistakenly passed in non-IPv4 address
  iwl4965: correctly validate temperature value
  bluetooth l2cap: fix locking in l2cap_global_chan_by_psm
  ath9k: fix two more bugs in tx power
  cfg80211: don't drop p2p probe responses
  Revert "net: fix section mismatches"
  drivers/net/usb/catc.c: Fix potential deadlock in catc_ctrl_run()
  sctp: stop pending timers and purge queues when peer restart asoc
  drivers/net: ks8842 Fix crash on received packet when in PIO mode.
  ip_options_compile: properly handle unaligned pointer
  iwlagn: fix incorrect PCI subsystem id for 6150 devices
  ...
parents 4f1ba49e 7b29dc21
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -185,7 +185,7 @@ static int max_interrupt_work = 10;
static int nopnp;
#endif

static int el3_common_init(struct net_device *dev);
static int __devinit el3_common_init(struct net_device *dev);
static void el3_common_remove(struct net_device *dev);
static ushort id_read_eeprom(int index);
static ushort read_eeprom(int ioaddr, int index);
@@ -395,7 +395,7 @@ static struct isa_driver el3_isa_driver = {
static int isa_registered;

#ifdef CONFIG_PNP
static const struct pnp_device_id el3_pnp_ids[] __devinitconst = {
static struct pnp_device_id el3_pnp_ids[] = {
	{ .id = "TCM5090" }, /* 3Com Etherlink III (TP) */
	{ .id = "TCM5091" }, /* 3Com Etherlink III */
	{ .id = "TCM5094" }, /* 3Com Etherlink III (combo) */
@@ -478,7 +478,7 @@ static int pnp_registered;
#endif /* CONFIG_PNP */

#ifdef CONFIG_EISA
static const struct eisa_device_id el3_eisa_ids[] __devinitconst = {
static struct eisa_device_id el3_eisa_ids[] = {
		{ "TCM5090" },
		{ "TCM5091" },
		{ "TCM5092" },
@@ -508,7 +508,7 @@ static int eisa_registered;
#ifdef CONFIG_MCA
static int el3_mca_probe(struct device *dev);

static const short el3_mca_adapter_ids[] __devinitconst = {
static short el3_mca_adapter_ids[] __initdata = {
		0x627c,
		0x627d,
		0x62db,
@@ -517,7 +517,7 @@ static const short el3_mca_adapter_ids[] __devinitconst = {
		0x0000
};

static const char *const el3_mca_adapter_names[] __devinitconst = {
static char *el3_mca_adapter_names[] __initdata = {
		"3Com 3c529 EtherLink III (10base2)",
		"3Com 3c529 EtherLink III (10baseT)",
		"3Com 3c529 EtherLink III (test mode)",
@@ -601,7 +601,7 @@ static void el3_common_remove (struct net_device *dev)
}

#ifdef CONFIG_MCA
static int __devinit el3_mca_probe(struct device *device)
static int __init el3_mca_probe(struct device *device)
{
	/* Based on Erik Nygren's (nygren@mit.edu) 3c529 patch,
	 * heavily modified by Chris Beauregard
@@ -671,7 +671,7 @@ static int __devinit el3_mca_probe(struct device *device)
#endif /* CONFIG_MCA */

#ifdef CONFIG_EISA
static int __devinit el3_eisa_probe (struct device *device)
static int __init el3_eisa_probe (struct device *device)
{
	short i;
	int ioaddr, irq, if_port;
+2 −2
Original line number Diff line number Diff line
@@ -901,14 +901,14 @@ static const struct dev_pm_ops vortex_pm_ops = {
#endif /* !CONFIG_PM */

#ifdef CONFIG_EISA
static const struct eisa_device_id vortex_eisa_ids[] __devinitconst = {
static struct eisa_device_id vortex_eisa_ids[] = {
	{ "TCM5920", CH_3C592 },
	{ "TCM5970", CH_3C597 },
	{ "" }
};
MODULE_DEVICE_TABLE(eisa, vortex_eisa_ids);

static int __devinit vortex_eisa_probe(struct device *device)
static int __init vortex_eisa_probe(struct device *device)
{
	void __iomem *ioaddr;
	struct eisa_device *edev;
+2 −3
Original line number Diff line number Diff line
@@ -923,7 +923,7 @@ static int __devinit flexcan_probe(struct platform_device *pdev)
	mem_size = resource_size(mem);
	if (!request_mem_region(mem->start, mem_size, pdev->name)) {
		err = -EBUSY;
		goto failed_req;
		goto failed_get;
	}

	base = ioremap(mem->start, mem_size);
@@ -977,9 +977,8 @@ static int __devinit flexcan_probe(struct platform_device *pdev)
	iounmap(base);
 failed_map:
	release_mem_region(mem->start, mem_size);
 failed_req:
	clk_put(clk);
 failed_get:
	clk_put(clk);
 failed_clock:
	return err;
}
+6 −4
Original line number Diff line number Diff line
@@ -1781,8 +1781,8 @@ static int __devinit davinci_emac_probe(struct platform_device *pdev)
	ndev = alloc_etherdev(sizeof(struct emac_priv));
	if (!ndev) {
		dev_err(&pdev->dev, "error allocating net_device\n");
		clk_put(emac_clk);
		return -ENOMEM;
		rc = -ENOMEM;
		goto free_clk;
	}

	platform_set_drvdata(pdev, ndev);
@@ -1796,7 +1796,8 @@ static int __devinit davinci_emac_probe(struct platform_device *pdev)
	pdata = pdev->dev.platform_data;
	if (!pdata) {
		dev_err(&pdev->dev, "no platform data\n");
		return -ENODEV;
		rc = -ENODEV;
		goto probe_quit;
	}

	/* MAC addr and PHY mask , RMII enable info from platform_data */
@@ -1929,8 +1930,9 @@ static int __devinit davinci_emac_probe(struct platform_device *pdev)
	iounmap(priv->remap_addr);

probe_quit:
	clk_put(emac_clk);
	free_netdev(ndev);
free_clk:
	clk_put(emac_clk);
	return rc;
}

+17 −18
Original line number Diff line number Diff line
@@ -331,18 +331,18 @@ static struct {
                         "DE422",\
                         ""}

static const char* const depca_signature[] __devinitconst = DEPCA_SIGNATURE;
static char* __initdata depca_signature[] = DEPCA_SIGNATURE;

enum depca_type {
	DEPCA, de100, de101, de200, de201, de202, de210, de212, de422, unknown
};

static const char depca_string[] = "depca";
static char depca_string[] = "depca";

static int depca_device_remove (struct device *device);

#ifdef CONFIG_EISA
static const struct eisa_device_id depca_eisa_ids[] __devinitconst = {
static struct eisa_device_id depca_eisa_ids[] = {
	{ "DEC4220", de422 },
	{ "" }
};
@@ -367,19 +367,19 @@ static struct eisa_driver depca_eisa_driver = {
#define DE210_ID 0x628d
#define DE212_ID 0x6def

static const short depca_mca_adapter_ids[] __devinitconst = {
static short depca_mca_adapter_ids[] = {
	DE210_ID,
	DE212_ID,
	0x0000
};

static const char *depca_mca_adapter_name[] = {
static char *depca_mca_adapter_name[] = {
	"DEC EtherWORKS MC Adapter (DE210)",
	"DEC EtherWORKS MC Adapter (DE212)",
	NULL
};

static const enum depca_type depca_mca_adapter_type[] = {
static enum depca_type depca_mca_adapter_type[] = {
	de210,
	de212,
	0
@@ -541,9 +541,10 @@ static void SetMulticastFilter(struct net_device *dev);
static int load_packet(struct net_device *dev, struct sk_buff *skb);
static void depca_dbg_open(struct net_device *dev);

static const u_char de1xx_irq[] __devinitconst = { 2, 3, 4, 5, 7, 9, 0 };
static const u_char de2xx_irq[] __devinitconst = { 5, 9, 10, 11, 15, 0 };
static const u_char de422_irq[] __devinitconst = { 5, 9, 10, 11, 0 };
static u_char de1xx_irq[] __initdata = { 2, 3, 4, 5, 7, 9, 0 };
static u_char de2xx_irq[] __initdata = { 5, 9, 10, 11, 15, 0 };
static u_char de422_irq[] __initdata = { 5, 9, 10, 11, 0 };
static u_char *depca_irq;

static int irq;
static int io;
@@ -579,7 +580,7 @@ static const struct net_device_ops depca_netdev_ops = {
	.ndo_validate_addr	= eth_validate_addr,
};

static int __devinit depca_hw_init (struct net_device *dev, struct device *device)
static int __init depca_hw_init (struct net_device *dev, struct device *device)
{
	struct depca_private *lp;
	int i, j, offset, netRAM, mem_len, status = 0;
@@ -747,7 +748,6 @@ static int __devinit depca_hw_init (struct net_device *dev, struct device *devic
	if (dev->irq < 2) {
		unsigned char irqnum;
		unsigned long irq_mask, delay;
		const u_char *depca_irq;

		irq_mask = probe_irq_on();

@@ -770,7 +770,6 @@ static int __devinit depca_hw_init (struct net_device *dev, struct device *devic
			break;

		default:
			depca_irq = NULL;
			break;	/* Not reached */
		}

@@ -1303,7 +1302,7 @@ static void SetMulticastFilter(struct net_device *dev)
	}
}

static int __devinit depca_common_init (u_long ioaddr, struct net_device **devp)
static int __init depca_common_init (u_long ioaddr, struct net_device **devp)
{
	int status = 0;

@@ -1334,7 +1333,7 @@ static int __devinit depca_common_init (u_long ioaddr, struct net_device **devp)
/*
** Microchannel bus I/O device probe
*/
static int __devinit depca_mca_probe(struct device *device)
static int __init depca_mca_probe(struct device *device)
{
	unsigned char pos[2];
	unsigned char where;
@@ -1458,7 +1457,7 @@ static int __devinit depca_mca_probe(struct device *device)
** ISA bus I/O device probe
*/

static void __devinit depca_platform_probe (void)
static void __init depca_platform_probe (void)
{
	int i;
	struct platform_device *pldev;
@@ -1498,7 +1497,7 @@ static void __devinit depca_platform_probe (void)
	}
}

static enum depca_type __devinit depca_shmem_probe (ulong *mem_start)
static enum depca_type __init depca_shmem_probe (ulong *mem_start)
{
	u_long mem_base[] = DEPCA_RAM_BASE_ADDRESSES;
	enum depca_type adapter = unknown;
@@ -1559,7 +1558,7 @@ static int __devinit depca_isa_probe (struct platform_device *device)
*/

#ifdef CONFIG_EISA
static int __devinit depca_eisa_probe (struct device *device)
static int __init depca_eisa_probe (struct device *device)
{
	enum depca_type adapter = unknown;
	struct eisa_device *edev;
@@ -1630,7 +1629,7 @@ static int __devexit depca_device_remove (struct device *device)
** and Boot (readb) ROM. This will also give us a clue to the network RAM
** base address.
*/
static int __devinit DepcaSignature(char *name, u_long base_addr)
static int __init DepcaSignature(char *name, u_long base_addr)
{
	u_int i, j, k;
	void __iomem *ptr;
Loading