leds: trigger: netdev: add basic check for hw control support

Add basic check for hw control support. Check if the required API are
defined and check if the defined trigger supported in hw control for the
LED driver match netdev.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Christian Marangi 2023-05-29 18:32:36 +02:00 committed by David S. Miller
parent 4fd1b6d47a
commit 6352f25f9f

View File

@ -92,8 +92,22 @@ static void set_baseline_state(struct led_netdev_data *trigger_data)
}
}
static bool supports_hw_control(struct led_classdev *led_cdev)
{
if (!led_cdev->hw_control_get || !led_cdev->hw_control_set ||
!led_cdev->hw_control_is_supported)
return false;
return !strcmp(led_cdev->hw_control_trigger, led_cdev->trigger->name);
}
static bool can_hw_control(struct led_netdev_data *trigger_data)
{
struct led_classdev *led_cdev = trigger_data->led_cdev;
if (!supports_hw_control(led_cdev))
return false;
return false;
}