From aa9cd16cb535fc659a50c981dbd0d3591b74707a Mon Sep 17 00:00:00 2001 From: Veera Vegivada Date: Sat, 27 Feb 2021 13:36:34 +0530 Subject: [PATCH] leds: qcom-clk: Add support to set default trigger for LED Add property to configure the default trigger for the LED. This will allow clients to use trigger APIs to configure the brightness of the LED if needed. Change-Id: I1db0a5f2d697c6ac6f6ae1296e43ae55509f2298 Signed-off-by: Veera Vegivada --- drivers/leds/leds-qcom-clk.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/leds/leds-qcom-clk.c b/drivers/leds/leds-qcom-clk.c index 15f1dc5e4d84..56516f107f4b 100644 --- a/drivers/leds/leds-qcom-clk.c +++ b/drivers/leds/leds-qcom-clk.c @@ -20,6 +20,7 @@ struct led_qcom_clk_priv { struct pinctrl_state *gpio_active; struct pinctrl_state *gpio_sleep; const char *name; + const char *default_trigger; int duty_cycle, max_duty; bool clk_enabled; }; @@ -93,6 +94,9 @@ static int qcom_clk_led_parse_dt(struct device *dev, led->name = of_get_property(dev->of_node, "qcom,label", NULL) ? : dev->of_node->name; + led->default_trigger = of_get_property(dev->of_node, + "qcom,default-clk-trigger", NULL); + ret = of_property_read_u32(dev->of_node, "qcom,max_duty", &led->max_duty); if (ret) { @@ -155,6 +159,7 @@ static int led_qcom_clk_probe(struct platform_device *pdev) priv->cdev.brightness = LED_OFF; priv->cdev.max_brightness = priv->max_duty; priv->cdev.flags = LED_CORE_SUSPENDRESUME; + priv->cdev.default_trigger = priv->default_trigger; priv->cdev.brightness_set_blocking = qcom_clk_led_set; return devm_led_classdev_register(&pdev->dev, &priv->cdev);