Thread (16 messages) flat view 16 messages, 3 authors, 2015-11-04

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

From: Sowmini Varadhan <hidden>
Date: 2015-10-30 18:36:49
Also in: intel-wired-lan, lkml

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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help