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
