You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
165 lines
4.7 KiB
165 lines
4.7 KiB
From c197a8c38b4b4cd9d2fb973ffb04de19a5ae83e8 Mon Sep 17 00:00:00 2001
|
|
From: Igor Russkikh <irusskik@redhat.com>
|
|
Date: Fri, 6 Nov 2020 18:36:49 -0500
|
|
Subject: [PATCH 032/139] [netdrv] net: aquantia: disable ptp object build if
|
|
no config
|
|
|
|
Message-id: <1604687916-15087-33-git-send-email-irusskik@redhat.com>
|
|
Patchwork-id: 338457
|
|
Patchwork-instance: patchwork
|
|
O-Subject: [RHEL8.4 BZ 1857861 032/139] net: aquantia: disable ptp object build if no config
|
|
Bugzilla: 1857861
|
|
RH-Acked-by: David Arcari <darcari@redhat.com>
|
|
RH-Acked-by: John Linville <linville@redhat.com>
|
|
RH-Acked-by: Tony Camuso <tcamuso@redhat.com>
|
|
|
|
Bugzilla: http://bugzilla.redhat.com/1857861
|
|
|
|
commit 7873ee26b10bcb03553b6a26ec16b9a937a5b916
|
|
Author: Igor Russkikh <Igor.Russkikh@aquantia.com>
|
|
Date: Sat Oct 26 11:05:34 2019 +0000
|
|
|
|
net: aquantia: disable ptp object build if no config
|
|
|
|
We do disable aq_ptp module build using inline
|
|
stubs when CONFIG_PTP_1588_CLOCK is not declared.
|
|
|
|
This reduces module size and removes unnecessary code.
|
|
|
|
Reported-by: YueHaibing <yuehaibing@huawei.com>
|
|
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
|
|
Acked-by: Richard Cochran <richardcochran@gmail.com>
|
|
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
|
|
Signed-off-by: Igor Russkikh <irusskik@redhat.com>
|
|
|
|
Cc: David Arcari <darcari@redhat.com>
|
|
Cc: Igor Russkikh <irusskik@redhat.com>
|
|
Signed-off-by: Jan Stancek <jstancek@redhat.com>
|
|
---
|
|
drivers/net/ethernet/aquantia/atlantic/Makefile | 3 +-
|
|
drivers/net/ethernet/aquantia/atlantic/aq_ptp.h | 84 +++++++++++++++++++++++++
|
|
2 files changed, 86 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/drivers/net/ethernet/aquantia/atlantic/Makefile b/drivers/net/ethernet/aquantia/atlantic/Makefile
|
|
index 68c41141ede2..0020726db204 100644
|
|
--- a/drivers/net/ethernet/aquantia/atlantic/Makefile
|
|
+++ b/drivers/net/ethernet/aquantia/atlantic/Makefile
|
|
@@ -24,10 +24,11 @@ atlantic-objs := aq_main.o \
|
|
aq_ethtool.o \
|
|
aq_drvinfo.o \
|
|
aq_filters.o \
|
|
- aq_ptp.o \
|
|
aq_phy.o \
|
|
hw_atl/hw_atl_a0.o \
|
|
hw_atl/hw_atl_b0.o \
|
|
hw_atl/hw_atl_utils.o \
|
|
hw_atl/hw_atl_utils_fw2x.o \
|
|
hw_atl/hw_atl_llh.o
|
|
+
|
|
+atlantic-$(CONFIG_PTP_1588_CLOCK) += aq_ptp.o
|
|
\ No newline at end of file
|
|
diff --git a/drivers/net/ethernet/aquantia/atlantic/aq_ptp.h b/drivers/net/ethernet/aquantia/atlantic/aq_ptp.h
|
|
index 3de4682f7c06..bf503a40b6a4 100644
|
|
--- a/drivers/net/ethernet/aquantia/atlantic/aq_ptp.h
|
|
+++ b/drivers/net/ethernet/aquantia/atlantic/aq_ptp.h
|
|
@@ -11,6 +11,8 @@
|
|
#include <linux/net_tstamp.h>
|
|
#include <linux/version.h>
|
|
|
|
+#if IS_REACHABLE(CONFIG_PTP_1588_CLOCK)
|
|
+
|
|
/* Common functions */
|
|
int aq_ptp_init(struct aq_nic_s *aq_nic, unsigned int idx_vec);
|
|
|
|
@@ -54,4 +56,86 @@ struct ptp_clock *aq_ptp_get_ptp_clock(struct aq_ptp_s *aq_ptp);
|
|
|
|
int aq_ptp_link_change(struct aq_nic_s *aq_nic);
|
|
|
|
+#else
|
|
+
|
|
+static inline int aq_ptp_init(struct aq_nic_s *aq_nic, unsigned int idx_vec)
|
|
+{
|
|
+ return 0;
|
|
+}
|
|
+
|
|
+static inline void aq_ptp_unregister(struct aq_nic_s *aq_nic) {}
|
|
+
|
|
+static inline void aq_ptp_free(struct aq_nic_s *aq_nic)
|
|
+{
|
|
+}
|
|
+
|
|
+static inline int aq_ptp_irq_alloc(struct aq_nic_s *aq_nic)
|
|
+{
|
|
+ return 0;
|
|
+}
|
|
+
|
|
+static inline void aq_ptp_irq_free(struct aq_nic_s *aq_nic)
|
|
+{
|
|
+}
|
|
+
|
|
+static inline int aq_ptp_ring_alloc(struct aq_nic_s *aq_nic)
|
|
+{
|
|
+ return 0;
|
|
+}
|
|
+
|
|
+static inline void aq_ptp_ring_free(struct aq_nic_s *aq_nic) {}
|
|
+
|
|
+static inline int aq_ptp_ring_init(struct aq_nic_s *aq_nic)
|
|
+{
|
|
+ return 0;
|
|
+}
|
|
+
|
|
+static inline int aq_ptp_ring_start(struct aq_nic_s *aq_nic)
|
|
+{
|
|
+ return 0;
|
|
+}
|
|
+
|
|
+static inline void aq_ptp_ring_stop(struct aq_nic_s *aq_nic) {}
|
|
+static inline void aq_ptp_ring_deinit(struct aq_nic_s *aq_nic) {}
|
|
+static inline void aq_ptp_service_task(struct aq_nic_s *aq_nic) {}
|
|
+static inline void aq_ptp_tm_offset_set(struct aq_nic_s *aq_nic,
|
|
+ unsigned int mbps) {}
|
|
+static inline void aq_ptp_clock_init(struct aq_nic_s *aq_nic) {}
|
|
+static inline int aq_ptp_xmit(struct aq_nic_s *aq_nic, struct sk_buff *skb)
|
|
+{
|
|
+ return -EOPNOTSUPP;
|
|
+}
|
|
+
|
|
+static inline void aq_ptp_tx_hwtstamp(struct aq_nic_s *aq_nic, u64 timestamp) {}
|
|
+static inline void aq_ptp_hwtstamp_config_get(struct aq_ptp_s *aq_ptp,
|
|
+ struct hwtstamp_config *config) {}
|
|
+static inline int aq_ptp_hwtstamp_config_set(struct aq_ptp_s *aq_ptp,
|
|
+ struct hwtstamp_config *config)
|
|
+{
|
|
+ return 0;
|
|
+}
|
|
+
|
|
+static inline bool aq_ptp_ring(struct aq_nic_s *aq_nic, struct aq_ring_s *ring)
|
|
+{
|
|
+ return false;
|
|
+}
|
|
+
|
|
+static inline u16 aq_ptp_extract_ts(struct aq_nic_s *aq_nic,
|
|
+ struct sk_buff *skb, u8 *p,
|
|
+ unsigned int len)
|
|
+{
|
|
+ return 0;
|
|
+}
|
|
+
|
|
+static inline struct ptp_clock *aq_ptp_get_ptp_clock(struct aq_ptp_s *aq_ptp)
|
|
+{
|
|
+ return NULL;
|
|
+}
|
|
+
|
|
+static inline int aq_ptp_link_change(struct aq_nic_s *aq_nic)
|
|
+{
|
|
+ return 0;
|
|
+}
|
|
+#endif
|
|
+
|
|
#endif /* AQ_PTP_H */
|
|
--
|
|
2.13.6
|
|
|