mirror of
https://github.com/torvalds/linux.git
synced 2024-12-23 03:11:46 +00:00
090e78d0d8
Move the board info structures from the glue drivers to the common library and hence deduplicate configuration data. For the Intel Braswell case the ACPI version should be used. Because switch to ACPI/PCI is done in BIOS while quite likely the rest of AML code is the same, meaning similar issue might be observed. There is no bug report due to no PCI enabled device in the wild, Andy thinks, and only reference boards can be tested, so nobody really cares about Intel Braswell PCI case. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
45 lines
1.1 KiB
C
45 lines
1.1 KiB
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* Intel Low Power Subsystem PWM controller driver
|
|
*
|
|
* Copyright (C) 2014, Intel Corporation
|
|
*
|
|
* Derived from the original pwm-lpss.c
|
|
*/
|
|
|
|
#ifndef __PWM_LPSS_H
|
|
#define __PWM_LPSS_H
|
|
|
|
#include <linux/device.h>
|
|
#include <linux/pwm.h>
|
|
|
|
#define MAX_PWMS 4
|
|
|
|
struct pwm_lpss_chip {
|
|
struct pwm_chip chip;
|
|
void __iomem *regs;
|
|
const struct pwm_lpss_boardinfo *info;
|
|
};
|
|
|
|
struct pwm_lpss_boardinfo {
|
|
unsigned long clk_rate;
|
|
unsigned int npwm;
|
|
unsigned long base_unit_bits;
|
|
bool bypass;
|
|
/*
|
|
* On some devices the _PS0/_PS3 AML code of the GPU (GFX0) device
|
|
* messes with the PWM0 controllers state,
|
|
*/
|
|
bool other_devices_aml_touches_pwm_regs;
|
|
};
|
|
|
|
extern const struct pwm_lpss_boardinfo pwm_lpss_byt_info;
|
|
extern const struct pwm_lpss_boardinfo pwm_lpss_bsw_info;
|
|
extern const struct pwm_lpss_boardinfo pwm_lpss_bxt_info;
|
|
extern const struct pwm_lpss_boardinfo pwm_lpss_tng_info;
|
|
|
|
struct pwm_lpss_chip *pwm_lpss_probe(struct device *dev, struct resource *r,
|
|
const struct pwm_lpss_boardinfo *info);
|
|
|
|
#endif /* __PWM_LPSS_H */
|