pwm-lpss.h 1020 B

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