I do not see a reason to have a special longer delay (100 ms) after
passing read GNSS data to userspace.

Just use the regular GNSS polling interval (20 ms).

Signed-off-by: Michal Schmidt <[email protected]>
---
 drivers/net/ethernet/intel/ice/ice_gnss.c | 5 ++---
 drivers/net/ethernet/intel/ice/ice_gnss.h | 1 -
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_gnss.c 
b/drivers/net/ethernet/intel/ice/ice_gnss.c
index 7922311d2545..83a2f0d4091e 100644
--- a/drivers/net/ethernet/intel/ice/ice_gnss.c
+++ b/drivers/net/ethernet/intel/ice/ice_gnss.c
@@ -85,7 +85,6 @@ static void ice_gnss_read(struct kthread_work *work)
 {
        struct gnss_serial *gnss = container_of(work, struct gnss_serial,
                                                read_work.work);
-       unsigned long delay = ICE_GNSS_POLL_DATA_DELAY_TIME;
        unsigned int i, bytes_read, data_len, count;
        struct ice_aqc_link_topo_addr link_topo;
        char buf[ICE_MAX_I2C_DATA_SIZE];
@@ -140,9 +139,9 @@ static void ice_gnss_read(struct kthread_work *work)
                                count, bytes_read);
        }
 
-       delay = ICE_GNSS_TIMER_DELAY_TIME;
 requeue:
-       kthread_queue_delayed_work(gnss->kworker, &gnss->read_work, delay);
+       kthread_queue_delayed_work(gnss->kworker, &gnss->read_work,
+                                  ICE_GNSS_POLL_DATA_DELAY_TIME);
        if (err)
                dev_dbg(ice_pf_to_dev(pf), "GNSS failed to read err=%d\n", err);
 }
diff --git a/drivers/net/ethernet/intel/ice/ice_gnss.h 
b/drivers/net/ethernet/intel/ice/ice_gnss.h
index e0e939f1b102..fa52727cd3d7 100644
--- a/drivers/net/ethernet/intel/ice/ice_gnss.h
+++ b/drivers/net/ethernet/intel/ice/ice_gnss.h
@@ -6,7 +6,6 @@
 
 #define ICE_E810T_GNSS_I2C_BUS         0x2
 #define ICE_GNSS_POLL_DATA_DELAY_TIME  (HZ / 50) /* poll every 20 ms */
-#define ICE_GNSS_TIMER_DELAY_TIME      (HZ / 10) /* 0.1 second per message */
 #define ICE_GNSS_TTY_WRITE_BUF         250
 /* ICE_MAX_I2C_DATA_SIZE is FIELD_MAX(ICE_AQC_I2C_DATA_SIZE_M).
  * However, FIELD_MAX() does not evaluate to an integer constant expression,
-- 
2.47.1

Reply via email to