From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Ivan Mikhaylov <fr0st61te@gmail.com>,
Samuel Mendoza-Jonas <sam@mendozajonas.com>,
"David S . Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: netdev@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, openbmc@lists.ozlabs.org,
Paul Fertser <fercerpav@gmail.com>
Subject: Re: [PATCH v2 3/5] dt-bindings: net: add mac-address-increment option
Date: Fri, 12 May 2023 08:22:56 +0200 [thread overview]
Message-ID: <8de01e81-43dc-71af-f56f-4fba957b0b0b@linaro.org> (raw)
In-Reply-To: <fc3dae42f2dfdf046664d964bae560ff6bb32f69.camel@gmail.com>
On 11/05/2023 01:31, Ivan Mikhaylov wrote:
> On Wed, 2023-05-10 at 16:48 +0200, Krzysztof Kozlowski wrote:
>> On 09/05/2023 16:35, Ivan Mikhaylov wrote:
>>> Add the mac-address-increment option for specify MAC address taken
>>> by
>>> any other sources.
>>>
>>> Signed-off-by: Paul Fertser <fercerpav@gmail.com>
>>> Signed-off-by: Ivan Mikhaylov <fr0st61te@gmail.com>
>>> ---
>>> .../devicetree/bindings/net/ethernet-controller.yaml | 8
>>> ++++++++
>>> 1 file changed, 8 insertions(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/net/ethernet-
>>> controller.yaml b/Documentation/devicetree/bindings/net/ethernet-
>>> controller.yaml
>>> index 00be387984ac..6900098c5105 100644
>>> --- a/Documentation/devicetree/bindings/net/ethernet-
>>> controller.yaml
>>> +++ b/Documentation/devicetree/bindings/net/ethernet-
>>> controller.yaml
>>> @@ -34,6 +34,14 @@ properties:
>>> minItems: 6
>>> maxItems: 6
>>>
>>> + mac-address-increment:
>>> + $ref: /schemas/types.yaml#/definitions/int32
>>> + description:
>>> + Specifies the MAC address increment to be added to the MAC
>>> address.
>>> + Should be used in cases when there is a need to use MAC
>>> address
>>> + different from one obtained by any other level, like u-boot
>>> or the
>>> + NC-SI stack.
>>
>> We don't store MAC addresses in DT, but provide simple placeholder
>> for
>> firmware or bootloader. Why shall we store static "increment" part of
>> MAC address? Can't the firmware give you proper MAC address?
>>
>> Best regards,
>> Krzysztof
>>
>
> Krzysztof, maybe that's a point to make commit message with better
> explanation from my side. At current time there is at least two cases
> where I see it's possible to be used:
>
> 1. NC-SI
> 2. embedded
>
> At NC-SI level there is Get Mac Address command which provides to BMC
> mac address from the host which is same as host mac address, it happens
> at runtime and overrides old one.
>
> Also, this part was also to be discussed 2 years ago in this thread:
> https://lore.kernel.org/all/OF8E108F72.39D22E89-ON00258765.001E46EB-00258765.00251157@ibm.com/
Which was not sent to Rob though...
>
> Where Milton provided this information:
>
> DTMF spec DSP0222 NC-SI (network controller sideband interface)
> is a method to provide a BMC (Baseboard management controller) shared
> access to an external ethernet port for comunication to the management
> network in the outside world. The protocol describes ethernet packets
> that control selective bridging implemented in a host network
> controller
> to share its phy. Various NIC OEMs have added a query to find out the
> address the host is using, and some vendors have added code to query
> host
> nic and set the BMC mac to a fixed offset (current hard coded +1 from
> the host value). If this is compiled in the kernel, the NIC OEM is
> recognised and the BMC doesn't miss the NIC response the address is set
> once each time the NCSI stack reinitializes. This mechanism overrides
> any mac-address or local-mac-address or other assignment.
>
> DSP0222
> https://www.dmtf.org/documents/pmci/network-controller-sideband-interface-nc-si-specification-110
>
>
> In embedded case, sometimes you have different multiple ethernet
> interfaces which using one mac address which increments or decrements
> for particular interface, just for better explanation, there is patch
> with explanation which providing them such way of work:
> https://github.com/openwrt/openwrt/blob/master/target/linux/generic/pending-5.15/682-of_net-add-mac-address-increment-support.patch
>
> In their rep a lot of dts using such option.
None of these explain why this is property of the hardware. I understand
that this is something you want Linux to do, but DT is not for that
purpose. Do not encode system policies into DT and what above commit
says is a policy.
Best regards,
Krzysztof
next prev parent reply other threads:[~2023-05-12 6:23 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-09 14:34 [PATCH v2 0/5] Refactoring for GMA command Ivan Mikhaylov
2023-05-09 14:35 ` [PATCH v2 1/5] net/ncsi: make one oem_gma function for all mfr id Ivan Mikhaylov
2023-05-09 14:29 ` Simon Horman
2023-05-09 14:35 ` [PATCH v2 2/5] net/ncsi: change from ndo_set_mac_address to dev_set_mac_address Ivan Mikhaylov
2023-05-09 14:35 ` [PATCH v2 3/5] dt-bindings: net: add mac-address-increment option Ivan Mikhaylov
2023-05-10 14:48 ` Krzysztof Kozlowski
2023-05-10 23:31 ` Ivan Mikhaylov
2023-05-12 6:22 ` Krzysztof Kozlowski [this message]
2023-05-12 11:28 ` Ivan Mikhaylov
2023-05-12 9:24 ` Krzysztof Kozlowski
2023-05-16 11:47 ` Ivan Mikhaylov
2023-05-17 8:36 ` Krzysztof Kozlowski
2023-05-17 21:38 ` Ivan Mikhaylov
2023-05-17 19:26 ` Krzysztof Kozlowski
2023-05-29 20:59 ` Paul Fertser
2023-06-04 10:23 ` Krzysztof Kozlowski
2023-05-09 14:35 ` [PATCH v2 4/5] net/ncsi: add shift MAC address property Ivan Mikhaylov
2023-05-09 14:34 ` Simon Horman
2023-05-09 14:35 ` [PATCH v2 5/5] dt-bindings: net: ftgmac100: convert to yaml version from txt Ivan Mikhaylov
2023-05-10 14:50 ` Krzysztof Kozlowski
2023-05-11 0:15 ` Ivan Mikhaylov
2023-05-11 8:39 ` Krzysztof Kozlowski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8de01e81-43dc-71af-f56f-4fba957b0b0b@linaro.org \
--to=krzysztof.kozlowski@linaro.org \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.com \
--cc=fercerpav@gmail.com \
--cc=fr0st61te@gmail.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=openbmc@lists.ozlabs.org \
--cc=pabeni@redhat.com \
--cc=robh+dt@kernel.org \
--cc=sam@mendozajonas.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).