Re: [PATCH] of_net: add mtd-mac-address support to of_get_mac_address()

Maxime Ripard
2019-04-17T10:15:57Z

[-- Attachment #1: Type: text/plain, Size: 1834 bytes --]

On Wed, Apr 17, 2019 at 11:49:21AM +0200, Petr Štetiar wrote:
> Maxime Ripard <maxime.ripard@bootlin.com> [2019-04-17 10:06:14]:
>
> Hi Maxime,
>
> > On Tue, Apr 16, 2019 at 10:05:00PM +0200, Petr Štetiar wrote:
> > > From: John Crispin <john@phrozen.org>
> > >
> > > Many embedded devices have information such as MAC addresses stored
> > > inside MTD devices. This patch allows us to add a property inside a node
> > > describing a network interface. The new property points at a MTD
> > > partition with an offset where the MAC address can be found.
> > >
> > > This patch has originated in OpenWrt some time ago, so in order to
> > > consider usefulness of this patch, here are some real-world numbers
> > > which hopefully speak for themselves:
> > >
> > > * mtd-mac-address used 497 times in 357 device tree files
> > > * mtd-mac-address-increment used 74 times in 58 device tree files
> > > * mtd-mac-address-increment-byte used 1 time in 1 device tree file
> >
> > NVMEM is supported by of_net already and there's an MTD-to-nvmem
> > bridge already, so it doesn't look really necessary to create
> > additional properties that cover the same use case.
>
> if those use cases could be handled with NVMEM, then I'm all in. As I can't
> find any example in some device tree file in the kernel tree yet and the
> documentation isn't clear to me about this topic either, could you please help
> me and provide me with some NVMEM based example for the following simplified
> use case? Or what do I need to bend/patch in order to support this within
> NVME.

https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/nvmem/nvmem.txt
and

https://elixir.bootlin.com/linux/latest/source/net/ethernet/eth.c#L564

Should get you started

Maxime