[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130206192134.4bbb4bbb@milhouse>
Date: Wed, 6 Feb 2013 19:21:34 +0100
From: Michael Büsch <m@...s.ch>
To: Hauke Mehrtens <hauke@...ke-m.de>
Cc: davem@...emloft.net, mcarlson@...adcom.com, mchan@...adcom.com,
nsujir@...adcom.com, netdev@...r.kernel.org
Subject: Re: [PATCH v2 1/4] ssb: get mac address from sprom struct for gige
driver
On Wed, 6 Feb 2013 18:14:11 +0100
Hauke Mehrtens <hauke@...ke-m.de> wrote:
> The mac address is already stored in the sprom structure by the
> platform code of the SoC this Ethernet core is found on, it just has to
> be fetched from this structure instead of accessing the nvram here.
> This patch also adds a return value to indicate if a mac address could
> be fetched from the sprom structure.
>
> Signed-off-by: Hauke Mehrtens <hauke@...ke-m.de>
Acked-by: Michael Buesch <m@...s.ch>
> ---
>
> This patch could cause merge problems with the mips tree. This version,
> removing the usage of nvram_getenv and nvram_parse_macaddr, should be
> used.
>
> include/linux/ssb/ssb_driver_gige.h | 19 +++++++------------
> 1 file changed, 7 insertions(+), 12 deletions(-)
>
> diff --git a/include/linux/ssb/ssb_driver_gige.h b/include/linux/ssb/ssb_driver_gige.h
> index 6b05dcd..912af3c 100644
> --- a/include/linux/ssb/ssb_driver_gige.h
> +++ b/include/linux/ssb/ssb_driver_gige.h
> @@ -97,21 +97,16 @@ static inline bool ssb_gige_must_flush_posted_writes(struct pci_dev *pdev)
> return 0;
> }
>
> -#ifdef CONFIG_BCM47XX
> -#include <asm/mach-bcm47xx/nvram.h>
> /* Get the device MAC address */
> -static inline void ssb_gige_get_macaddr(struct pci_dev *pdev, u8 *macaddr)
> -{
> - char buf[20];
> - if (nvram_getenv("et0macaddr", buf, sizeof(buf)) < 0)
> - return;
> - nvram_parse_macaddr(buf, macaddr);
> -}
> -#else
> -static inline void ssb_gige_get_macaddr(struct pci_dev *pdev, u8 *macaddr)
> +static inline int ssb_gige_get_macaddr(struct pci_dev *pdev, u8 *macaddr)
> {
> + struct ssb_gige *dev = pdev_to_ssb_gige(pdev);
> + if (!dev)
> + return -ENODEV;
> +
> + memcpy(macaddr, dev->dev->bus->sprom.et0mac, 6);
> + return 0;
> }
> -#endif
>
> extern int ssb_gige_pcibios_plat_dev_init(struct ssb_device *sdev,
> struct pci_dev *pdev);
--
Greetings, Michael.
PGP: 908D8B0E
Download attachment "signature.asc" of type "application/pgp-signature" (837 bytes)
Powered by blists - more mailing lists