1 /*
2  * Copyright 2023 Daniel DeGrasse <daniel@degrasse.com>
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 
7 #ifndef ZEPHYR_INCLUDE_DRIVERS_LED_IS31FL3733_H_
8 #define ZEPHYR_INCLUDE_DRIVERS_LED_IS31FL3733_H_
9 
10 /**
11  * @brief Blanks IS31FL3733 LED display.
12  *
13  * When blank_en is set, the LED display will be disabled. This can be used for
14  * flicker-free display updates, or power saving.
15  *
16  * @param dev: LED device structure
17  * @param blank_en: should blanking be enabled
18  * @return 0 on success, or negative value on error.
19  */
20 int is31fl3733_blank(const struct device *dev, bool blank_en);
21 
22 /**
23  * @brief Sets led current limit
24  *
25  * Sets the current limit for the LED driver. This is a separate value
26  * from per-led brightness, and applies to all LEDs.
27  * This value sets the output current limit according
28  * to the following formula: (840/R_ISET) * (limit/256)
29  * See table 14 of the datasheet for additional details.
30  * @param dev: LED device structure
31  * @param limit: current limit to apply
32  * @return 0 on success, or negative value on error.
33  */
34 int is31fl3733_current_limit(const struct device *dev, uint8_t limit);
35 
36 #endif /* ZEPHYR_INCLUDE_DRIVERS_LED_IS31FL3733_H_ */
37