提交 c4f0e767 编写于 作者: E Eric Miao 提交者: Russell King

[NET] smc91x: add SMC91X_NOWAIT flag to platform data

And also favors the usage of SMC91X_NOWAIT over the hardcoded SMC_NOWAIT
by converting "nowait" (module parameter overridable) to platform flag.

There are several possibilities:

  1. platform data present - preferred and use as is
  2. platform data absent  - use "nowait", it can be:
       a. SMC_NOWAIT if defined
       b. default to 0 if SMC_NOWAIT isn't defined
       c. overriden by module parameter
Signed-off-by: NEric Miao <eric.miao@marvell.com>
Acked-by: NNicolas Pitre <nico@cam.org>
Acked-by: NJeff Garzik <jgarzik@pobox.com>
Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
上级 fa6d3be0
......@@ -308,7 +308,7 @@ static void smc_reset(struct net_device *dev)
* can't handle it then there will be no recovery except for
* a hard reset or power cycle
*/
if (nowait)
if (lp->cfg.flags & SMC91X_NOWAIT)
cfg |= CONFIG_NO_WAIT;
/*
......@@ -2160,6 +2160,7 @@ static int smc_drv_probe(struct platform_device *pdev)
lp->cfg.flags |= (SMC_CAN_USE_8BIT) ? SMC91X_USE_8BIT : 0;
lp->cfg.flags |= (SMC_CAN_USE_16BIT) ? SMC91X_USE_16BIT : 0;
lp->cfg.flags |= (SMC_CAN_USE_32BIT) ? SMC91X_USE_32BIT : 0;
lp->cfg.flags |= (nowait) ? SMC91X_NOWAIT : 0;
}
ndev->dma = (unsigned char)-1;
......
......@@ -5,6 +5,8 @@
#define SMC91X_USE_16BIT (1 << 1)
#define SMC91X_USE_32BIT (1 << 2)
#define SMC91X_NOWAIT (1 << 3)
struct smc91x_platdata {
unsigned long flags;
};
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册