[PATCH 1/6] dm9000: allow to specify that no srom is present
Sascha Hauer
s.hauer at pengutronix.de
Thu Aug 19 02:32:58 EDT 2010
Hi Jean-Christophe,
On Thu, Aug 19, 2010 at 04:48:25AM +0200, Jean-Christophe PLAGNIOL-VILLARD wrote:
> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj at jcrosoft.com>
> ---
> arch/arm/boards/scb9328/scb9328.c | 1 +
> drivers/net/dm9000.c | 6 ++++--
> include/dm9000.h | 1 +
> 3 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/boards/scb9328/scb9328.c b/arch/arm/boards/scb9328/scb9328.c
> index e781393..3c04996 100644
> --- a/arch/arm/boards/scb9328/scb9328.c
> +++ b/arch/arm/boards/scb9328/scb9328.c
> @@ -55,6 +55,7 @@ static struct dm9000_platform_data dm9000_data = {
> .iobase = 0x16000000,
> .iodata = 0x16000004,
> .buswidth = DM9000_WIDTH_16,
> + .srom = 1;
> };
>
> static struct device_d dm9000_dev = {
> diff --git a/drivers/net/dm9000.c b/drivers/net/dm9000.c
> index 2062c66..5f61ddc 100644
> --- a/drivers/net/dm9000.c
> +++ b/drivers/net/dm9000.c
> @@ -498,8 +498,10 @@ static int dm9000_probe(struct device_d *dev)
> edev->send = dm9000_eth_send;
> edev->recv = dm9000_eth_rx;
> edev->halt = dm9000_eth_halt;
> - edev->get_ethaddr = dm9000_get_ethaddr;
> - edev->set_ethaddr = dm9000_set_ethaddr;
> + if (pdata->srom) {
> + edev->get_ethaddr = dm9000_get_ethaddr;
> + edev->set_ethaddr = dm9000_set_ethaddr;
> + }
edev->set_ethaddr is not an optional call. Without it the driver won't
work.
Sascha
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the barebox
mailing list