mirror of
https://github.com/breeze303/nss-packages.git
synced 2025-12-16 16:57:29 +00:00
Add NSS-DP from QSDK11.4. NSS-DP is the ethernet driver kernel module. It can be used in standalone mode or with NSS offloading. It includes patches to it in order to work under kernel 5.10. Made for and tested only for IPQ807x. Signed-off-by: Robert Marko <robimarko@gmail.com>
49 lines
1.8 KiB
Diff
49 lines
1.8 KiB
Diff
From cef7873a2d77df13ee702d902ed4e06b2248904b Mon Sep 17 00:00:00 2001
|
|
Message-Id: <cef7873a2d77df13ee702d902ed4e06b2248904b.1620066716.git.baruch@tkos.co.il>
|
|
In-Reply-To: <40979666b4371012405715ffa61ab5760fcdc6b3.1620066716.git.baruch@tkos.co.il>
|
|
References: <40979666b4371012405715ffa61ab5760fcdc6b3.1620066716.git.baruch@tkos.co.il>
|
|
From: Baruch Siach <baruch@tkos.co.il>
|
|
Date: Mon, 3 May 2021 20:17:22 +0300
|
|
Subject: [PATCH 2/3] nss_dp_main: make phy mode code compatible with newer
|
|
kernels
|
|
|
|
---
|
|
include/nss_dp_dev.h | 4 ++--
|
|
nss_dp_main.c | 4 ++++
|
|
2 files changed, 6 insertions(+), 2 deletions(-)
|
|
|
|
--- a/include/nss_dp_dev.h
|
|
+++ b/include/nss_dp_dev.h
|
|
@@ -25,7 +25,7 @@
|
|
#include <linux/netdevice.h>
|
|
#include <linux/platform_device.h>
|
|
#include <linux/if_vlan.h>
|
|
-#include <linux/switch.h>
|
|
+#include <linux/phy.h>
|
|
|
|
#include "nss_dp_api_if.h"
|
|
#include "nss_dp_hal_if.h"
|
|
@@ -46,7 +46,7 @@ struct nss_dp_dev {
|
|
/* Phy related stuff */
|
|
struct phy_device *phydev; /* Phy device */
|
|
struct mii_bus *miibus; /* MII bus */
|
|
- uint32_t phy_mii_type; /* RGMII/SGMII/QSGMII */
|
|
+ phy_interface_t phy_mii_type; /* RGMII/SGMII/QSGMII */
|
|
uint32_t phy_mdio_addr; /* Mdio address */
|
|
bool link_poll; /* Link polling enable? */
|
|
uint32_t forced_speed; /* Forced speed? */
|
|
--- a/nss_dp_main.c
|
|
+++ b/nss_dp_main.c
|
|
@@ -463,7 +463,11 @@ static int32_t nss_dp_of_get_pdata(struc
|
|
hal_pdata->netdev = netdev;
|
|
hal_pdata->macid = dp_priv->macid;
|
|
|
|
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 5, 0))
|
|
dp_priv->phy_mii_type = of_get_phy_mode(np);
|
|
+#else
|
|
+ of_get_phy_mode(np, &dp_priv->phy_mii_type);
|
|
+#endif
|
|
dp_priv->link_poll = of_property_read_bool(np, "qcom,link-poll");
|
|
if (of_property_read_u32(np, "qcom,phy-mdio-addr",
|
|
&dp_priv->phy_mdio_addr) && dp_priv->link_poll) {
|