From: Ivan Mikhaylov <fr0st61te@gmail.com>
To: 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, openbmc@lists.ozlabs.org,
Ivan Mikhaylov <fr0st61te@gmail.com>,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
Subject: [PATCH v2 4/5] net/ncsi: add shift MAC address property
Date: Tue, 9 May 2023 14:35:03 +0000 [thread overview]
Message-ID: <20230509143504.30382-5-fr0st61te@gmail.com> (raw)
In-Reply-To: <20230509143504.30382-1-fr0st61te@gmail.com>
Add the shift MAC address property for GMA command which provides which
shift should be used but keep old one values for backward compatability.
Signed-off-by: Ivan Mikhaylov <fr0st61te@gmail.com>
---
net/ncsi/ncsi-rsp.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/net/ncsi/ncsi-rsp.c b/net/ncsi/ncsi-rsp.c
index 069c2659074b..1f108db34d85 100644
--- a/net/ncsi/ncsi-rsp.c
+++ b/net/ncsi/ncsi-rsp.c
@@ -9,6 +9,8 @@
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
+#include <linux/platform_device.h>
+#include <linux/of.h>
#include <net/ncsi.h>
#include <net/net_namespace.h>
@@ -616,9 +618,12 @@ static int ncsi_rsp_handler_oem_gma(struct ncsi_request *nr, int mfr_id)
{
struct ncsi_dev_priv *ndp = nr->ndp;
struct net_device *ndev = ndp->ndev.dev;
+ struct platform_device *pdev;
struct ncsi_rsp_oem_pkt *rsp;
struct sockaddr saddr;
u32 mac_addr_off = 0;
+ s32 shift_mac_addr = 0;
+ u64 mac_addr;
int ret = 0;
/* Get the response header */
@@ -635,7 +640,17 @@ static int ncsi_rsp_handler_oem_gma(struct ncsi_request *nr, int mfr_id)
memcpy(saddr.sa_data, &rsp->data[mac_addr_off], ETH_ALEN);
if (mfr_id == NCSI_OEM_MFR_BCM_ID || mfr_id == NCSI_OEM_MFR_INTEL_ID)
- eth_addr_inc((u8 *)saddr.sa_data);
+ shift_mac_addr = 1;
+
+ pdev = to_platform_device(ndev->dev.parent);
+ if (pdev)
+ of_property_read_s32(pdev->dev.of_node,
+ "mac-address-increment", &shift_mac_addr);
+
+ /* Increase mac address by shift value for BMC's address */
+ mac_addr = ether_addr_to_u64((u8 *)saddr.sa_data);
+ mac_addr += shift_mac_addr;
+ u64_to_ether_addr(mac_addr, (u8 *)saddr.sa_data);
if (!is_valid_ether_addr((const u8 *)saddr.sa_data))
return -ENXIO;
--
2.40.1
WARNING: multiple messages have this Message-ID (diff)
From: Ivan Mikhaylov <fr0st61te@gmail.com>
To: 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,
Ivan Mikhaylov <fr0st61te@gmail.com>
Subject: [PATCH v2 4/5] net/ncsi: add shift MAC address property
Date: Tue, 9 May 2023 14:35:03 +0000 [thread overview]
Message-ID: <20230509143504.30382-5-fr0st61te@gmail.com> (raw)
In-Reply-To: <20230509143504.30382-1-fr0st61te@gmail.com>
Add the shift MAC address property for GMA command which provides which
shift should be used but keep old one values for backward compatability.
Signed-off-by: Ivan Mikhaylov <fr0st61te@gmail.com>
---
net/ncsi/ncsi-rsp.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/net/ncsi/ncsi-rsp.c b/net/ncsi/ncsi-rsp.c
index 069c2659074b..1f108db34d85 100644
--- a/net/ncsi/ncsi-rsp.c
+++ b/net/ncsi/ncsi-rsp.c
@@ -9,6 +9,8 @@
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
+#include <linux/platform_device.h>
+#include <linux/of.h>
#include <net/ncsi.h>
#include <net/net_namespace.h>
@@ -616,9 +618,12 @@ static int ncsi_rsp_handler_oem_gma(struct ncsi_request *nr, int mfr_id)
{
struct ncsi_dev_priv *ndp = nr->ndp;
struct net_device *ndev = ndp->ndev.dev;
+ struct platform_device *pdev;
struct ncsi_rsp_oem_pkt *rsp;
struct sockaddr saddr;
u32 mac_addr_off = 0;
+ s32 shift_mac_addr = 0;
+ u64 mac_addr;
int ret = 0;
/* Get the response header */
@@ -635,7 +640,17 @@ static int ncsi_rsp_handler_oem_gma(struct ncsi_request *nr, int mfr_id)
memcpy(saddr.sa_data, &rsp->data[mac_addr_off], ETH_ALEN);
if (mfr_id == NCSI_OEM_MFR_BCM_ID || mfr_id == NCSI_OEM_MFR_INTEL_ID)
- eth_addr_inc((u8 *)saddr.sa_data);
+ shift_mac_addr = 1;
+
+ pdev = to_platform_device(ndev->dev.parent);
+ if (pdev)
+ of_property_read_s32(pdev->dev.of_node,
+ "mac-address-increment", &shift_mac_addr);
+
+ /* Increase mac address by shift value for BMC's address */
+ mac_addr = ether_addr_to_u64((u8 *)saddr.sa_data);
+ mac_addr += shift_mac_addr;
+ u64_to_ether_addr(mac_addr, (u8 *)saddr.sa_data);
if (!is_valid_ether_addr((const u8 *)saddr.sa_data))
return -ENXIO;
--
2.40.1
next prev parent reply other threads:[~2023-05-16 3:07 UTC|newest]
Thread overview: 36+ 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:34 ` 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:35 ` Ivan Mikhaylov
2023-05-09 14:29 ` Simon Horman
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 ` Ivan Mikhaylov
2023-05-09 14:35 ` [PATCH v2 3/5] dt-bindings: net: add mac-address-increment option Ivan Mikhaylov
2023-05-09 14:35 ` Ivan Mikhaylov
2023-05-10 14:48 ` Krzysztof Kozlowski
2023-05-10 23:31 ` Ivan Mikhaylov
2023-05-10 23:31 ` Ivan Mikhaylov
2023-05-12 6:22 ` Krzysztof Kozlowski
2023-05-12 11:28 ` Ivan Mikhaylov
2023-05-12 11:28 ` Ivan Mikhaylov
2023-05-12 9:24 ` Krzysztof Kozlowski
2023-05-16 11:47 ` Ivan Mikhaylov
2023-05-16 11:47 ` Ivan Mikhaylov
2023-05-17 8:36 ` Krzysztof Kozlowski
2023-05-17 21:38 ` Ivan Mikhaylov
2023-05-17 21:38 ` Ivan Mikhaylov
2023-05-17 19:26 ` Krzysztof Kozlowski
2023-05-29 20:59 ` Paul Fertser
2023-05-29 20:59 ` Paul Fertser
2023-06-04 10:23 ` Krzysztof Kozlowski
2023-05-09 14:35 ` Ivan Mikhaylov [this message]
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: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-09 14:35 ` Ivan Mikhaylov
2023-05-10 14:50 ` Krzysztof Kozlowski
2023-05-11 0:15 ` Ivan Mikhaylov
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=20230509143504.30382-5-fr0st61te@gmail.com \
--to=fr0st61te@gmail.com \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.