#include <linux/err.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/pm_domain.h>
#include <linux/scpi_protocol.h>
struct scpi_pm_domain { … };
enum scpi_power_domain_state { … };
#define to_scpi_pd(gpd) …
static int scpi_pd_power(struct scpi_pm_domain *pd, bool power_on)
{ … }
static int scpi_pd_power_on(struct generic_pm_domain *domain)
{ … }
static int scpi_pd_power_off(struct generic_pm_domain *domain)
{ … }
static int scpi_pm_domain_probe(struct platform_device *pdev)
{ … }
static const struct of_device_id scpi_power_domain_ids[] = …;
MODULE_DEVICE_TABLE(of, scpi_power_domain_ids);
static struct platform_driver scpi_power_domain_driver = …;
module_platform_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;