summaryrefslogtreecommitdiff
path: root/include/linux/platform_data
diff options
context:
space:
mode:
authorMichael Shych <michaelsh@nvidia.com>2022-08-10 20:15:50 +0300
committerGuenter Roeck <linux@roeck-us.net>2022-09-19 16:17:05 +0300
commit41929b72eb5dab26280dfc1e7c1523f0f4853dde (patch)
treed3c0442b8902136f7cf4af27b5b1eca38021863a /include/linux/platform_data
parent5b38279e1a3f10c8046761b9732dccbfed78d614 (diff)
downloadlinux-41929b72eb5dab26280dfc1e7c1523f0f4853dde.tar.xz
platform_data/emc2305: define platform data for EMC2305 driver
Introduce platform data structure for EM2305 driver to allow configuration device PWMs and thermal zones by passing required platform data to the driver. If no platform data is provided, the driver is supposed to work with default settings. Signed-off-by: Michael Shych <michaelsh@nvidia.com> Reviewed-by: Vadim Pasternak <vadimp@nvidia.com> Link: https://lore.kernel.org/r/20220810171552.56417-2-michaelsh@nvidia.com Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'include/linux/platform_data')
-rw-r--r--include/linux/platform_data/emc2305.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/include/linux/platform_data/emc2305.h b/include/linux/platform_data/emc2305.h
new file mode 100644
index 000000000000..54d672dd6f7d
--- /dev/null
+++ b/include/linux/platform_data/emc2305.h
@@ -0,0 +1,22 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+
+#ifndef __LINUX_PLATFORM_DATA_EMC2305__
+#define __LINUX_PLATFORM_DATA_EMC2305__
+
+#define EMC2305_PWM_MAX 5
+
+/**
+ * struct emc2305_platform_data - EMC2305 driver platform data
+ * @max_state: maximum cooling state of the cooling device;
+ * @pwm_num: number of active channels;
+ * @pwm_separate: separate PWM settings for every channel;
+ * @pwm_min: array of minimum PWM per channel;
+ */
+struct emc2305_platform_data {
+ u8 max_state;
+ u8 pwm_num;
+ bool pwm_separate;
+ u8 pwm_min[EMC2305_PWM_MAX];
+};
+
+#endif