Commit 61095cd7 authored by Parthiban Veerasooran's avatar Parthiban Veerasooran Committed by Chris Friedt
Browse files

drivers: ethernet: phy: microchip_t1s: always reschedule phy_monitor_work



Previously, phy_monitor_work_handler() would return early without
rescheduling the delayed work if the callback (cb) was not set,
causing the periodic monitoring to stop. This change ensures that
k_work_reschedule() is always called, even when cb is NULL, so
monitoring of the PHY state continues.

This prevents the monitor from being inadvertently stopped and
ensures consistent behavior regardless of callback registration.

This issue was observed during testing with the evb-lan8670-rmii
(an external LAN8670 PHY) connected to the SAME54 Curiosity Ultra
platform.

Signed-off-by: default avatarParthiban Veerasooran <parthiban.veerasooran@microchip.com>
parent 893eea6c
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -254,6 +254,7 @@ static void phy_monitor_work_handler(struct k_work *work)
	const struct device *dev = data->dev;

	if (!data->cb) {
		k_work_reschedule(&data->phy_monitor_work, K_MSEC(CONFIG_PHY_MONITOR_PERIOD));
		return;
	}