Re: [PATCH v3 net] i40e: Look up MAC address in Open Firmware or IDPROM

From: Sowmini Varadhan
Date: Fri Oct 30 2015 - 14:36:52 EST


On (10/30/15 18:28), Nelson, Shannon wrote:
>
> Going along with this being the equivalent of the ixgbe patch, I'd
> prefer the new code to be in i40e_main.c, rather than in i40e_common.c.
> In the design of our drivers, the common file is essentially a device
> specific layer, and the OS and platform related stuff should stay in
> i40e_main.c. That would also take care of one of the include file nits
> that Andy mentioned.

ok, and that was my initial instinct as well, except that I noticed
that the existing i40e code tries interesting variations from the
typical intel driver model by calling i40e_get_mac_addr() which lives in
(for reasons not obvious to me) i40e_common.c

So I assumed there must be some other deeper wisdom at work here.

> At the risk of flying my Device Tree ignorance for all to see, I have
> a couple questions on how this is used.
>
> Since the mac address is specific to the individual device, how does it
> get into the device tree? I thought the device tree was compiled ahead
> of time for the platform it is used on. Is this a generic DT pattern
> just in case some platform actually has the mac-address? Or does the
> device mac-address get saved into the DT on the first time through this
> path so it can be found next time?
>
> If the Device Tree has a different mac address than the HW, when
> does the kernel tell the HW to use a different mac address? Does the
> DT management eventually call the ndo_set_mac_address call so the HW
> knows to use a different mac address?

yes, and here I was hoping for some feedback from the intel folks as
well. Commit c762dff24c06 sets hw->mac.perm_addr. I dont know
if there is some similar i40e state that needs to be set.

Please share insights.

--Sowmini

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/