Hi Andrew,

On 8/8/19 6:32 AM, Andrew Lunn wrote:
>> Let me prepare patch v2 using device tree. I'm not sure if standard
>> "mac-address" fits this situation because all we need is an offset
>> (integer) and BMC MAC is calculated by adding the offset to NIC's
>> MAC address. Anyways, let me work out v2 patch we can discuss more
>> then.
> 
> Hi Tao
> 
> I don't know BMC terminology. By NICs MAC address, you are referring
> to the hosts MAC address? The MAC address the big CPU is using for its
> interface?  Where does this NIC get its MAC address from? If the BMCs
> bootloader has access to it, it can set the mac-address property in
> the device tree.

Sorry for the confusion and let me clarify more:

The NIC here refers to the Network controller which provide network 
connectivity for both BMC (via NC-SI) and Host (for example, via PCIe).

On Facebook Yamp BMC, BMC sends NCSI_OEM_GET_MAC command (as an ethernet 
packet) to the Network Controller while bringing up eth0, and the (Broadcom) 
Network Controller replies with the Base MAC Address reserved for the platform. 
As for Yamp, Base-MAC and Base-MAC+1 are used by Host (big CPU) and Base-MAC+2 
are assigned to BMC. In my opinion, Base MAC and MAC address assignments are 
controlled by Network Controller, which is transparent to both BMC and Host.

I'm not sure if I understand your suggestion correctly: do you mean we should 
move the logic (GET_MAC from Network Controller, adding offset and configuring 
BMC MAC) from kernel to boot loader?

Sam posted several ncsi patches for u-boot recently. Sam, do we support the 
work (implemented in this patch) in uboot? Or are we planning to do so?


Thanks,

Tao

Reply via email to