1 /* SPDX-License-Identifier: GPL-2.0 */ 2 // TI LMU Common Core 3 // Copyright (C) 2018 Texas Instruments Incorporated - https://www.ti.com/ 4 5 #ifndef _TI_LMU_COMMON_H_ 6 #define _TI_LMU_COMMON_H_ 7 8 #include <linux/delay.h> 9 #include <linux/device.h> 10 #include <linux/init.h> 11 #include <linux/leds.h> 12 #include <linux/module.h> 13 #include <linux/regmap.h> 14 #include <linux/slab.h> 15 #include <uapi/linux/uleds.h> 16 17 #define LMU_11BIT_LSB_MASK (BIT(0) | BIT(1) | BIT(2)) 18 #define LMU_11BIT_MSB_SHIFT 3 19 20 #define MAX_BRIGHTNESS_8BIT 255 21 #define MAX_BRIGHTNESS_11BIT 2047 22 23 struct ti_lmu_bank { 24 struct regmap *regmap; 25 26 int max_brightness; 27 28 u8 lsb_brightness_reg; 29 u8 msb_brightness_reg; 30 31 u8 runtime_ramp_reg; 32 u32 ramp_up_usec; 33 u32 ramp_down_usec; 34 }; 35 36 int ti_lmu_common_set_brightness(struct ti_lmu_bank *lmu_bank, int brightness); 37 38 int ti_lmu_common_set_ramp(struct ti_lmu_bank *lmu_bank); 39 40 int ti_lmu_common_get_ramp_params(struct device *dev, 41 struct fwnode_handle *child, 42 struct ti_lmu_bank *lmu_data); 43 44 int ti_lmu_common_get_brt_res(struct device *dev, struct fwnode_handle *child, 45 struct ti_lmu_bank *lmu_data); 46 47 #endif /* _TI_LMU_COMMON_H_ */ 48
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.