summaryrefslogtreecommitdiffstats
path: root/drivers/pwm/pwm-lpss-platform.c
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2017-01-28 16:10:43 +0100
committerThierry Reding <thierry.reding@gmail.com>2017-01-30 08:16:55 +0100
commit9900073cf5587662df9b7ef59f649ff100229d85 (patch)
tree2d2ff9a4157907f59a1a15ff2fbbc92601a539c2 /drivers/pwm/pwm-lpss-platform.c
parentpwm: lpss: Avoid reconfiguring while UPDATE bit is still enabled (diff)
downloadlinux-9900073cf5587662df9b7ef59f649ff100229d85.tar.xz
linux-9900073cf5587662df9b7ef59f649ff100229d85.zip
pwm: lpss: Do not export board infos for different PWM types
The PWM LPSS probe drivers just pass a pointer to the exported board info structures to pwm_lpss_probe() based on device PCI or ACPI ID. In order to remove the knowledge of specific devices from library part of the driver and reduce noise in exported namespace just duplicate the board info structures and stop exporting them. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
Diffstat (limited to 'drivers/pwm/pwm-lpss-platform.c')
-rw-r--r--drivers/pwm/pwm-lpss-platform.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/pwm/pwm-lpss-platform.c b/drivers/pwm/pwm-lpss-platform.c
index 54433fc6d1a4..b22b6fdadb9a 100644
--- a/drivers/pwm/pwm-lpss-platform.c
+++ b/drivers/pwm/pwm-lpss-platform.c
@@ -18,6 +18,27 @@
#include "pwm-lpss.h"
+/* BayTrail */
+static const struct pwm_lpss_boardinfo pwm_lpss_byt_info = {
+ .clk_rate = 25000000,
+ .npwm = 1,
+ .base_unit_bits = 16,
+};
+
+/* Braswell */
+static const struct pwm_lpss_boardinfo pwm_lpss_bsw_info = {
+ .clk_rate = 19200000,
+ .npwm = 1,
+ .base_unit_bits = 16,
+};
+
+/* Broxton */
+static const struct pwm_lpss_boardinfo pwm_lpss_bxt_info = {
+ .clk_rate = 19200000,
+ .npwm = 4,
+ .base_unit_bits = 22,
+};
+
static int pwm_lpss_probe_platform(struct platform_device *pdev)
{
const struct pwm_lpss_boardinfo *info;