[go: nahoru, domu]

1c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko/*
2c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko * Intel Low Power Subsystem PWM controller driver
3c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko *
4c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko * Copyright (C) 2014, Intel Corporation
5c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko *
6c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko * Derived from the original pwm-lpss.c
7c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko *
8c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko * This program is free software; you can redistribute it and/or modify
9c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko * it under the terms of the GNU General Public License version 2 as
10c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko * published by the Free Software Foundation.
11c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko */
12c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko
13c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko#ifndef __PWM_LPSS_H
14c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko#define __PWM_LPSS_H
15c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko
16c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko#include <linux/device.h>
17c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko#include <linux/pwm.h>
18c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko
19c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenkostruct pwm_lpss_chip;
20c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko
21c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenkostruct pwm_lpss_boardinfo {
22c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko	unsigned long clk_rate;
23c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko};
24c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko
25c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenkoextern const struct pwm_lpss_boardinfo pwm_lpss_byt_info;
26c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenkoextern const struct pwm_lpss_boardinfo pwm_lpss_bsw_info;
27c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko
28c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenkostruct pwm_lpss_chip *pwm_lpss_probe(struct device *dev, struct resource *r,
29c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko				     const struct pwm_lpss_boardinfo *info);
30c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenkoint pwm_lpss_remove(struct pwm_lpss_chip *lpwm);
31c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko
32c558e39e14c2372394f49e07fbe94e9708b615cbAndy Shevchenko#endif	/* __PWM_LPSS_H */
33