#include <linux/acpi.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <linux/errno.h>
#include <linux/i2c.h>
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/pci.h>
#include <linux/pm_runtime.h>
#include <linux/power_supply.h>
#include <linux/sched.h>
#include <linux/slab.h>
#include "i2c-designware-core.h"
#include "i2c-ccgx-ucsi.h"
#define DRIVER_NAME …
enum dw_pci_ctl_id_t { … };
struct dw_scl_sda_cfg { … };
struct dw_pci_controller { … };
static struct dw_scl_sda_cfg mrfld_config = …;
static struct dw_scl_sda_cfg byt_config = …;
static struct dw_scl_sda_cfg hsw_config = …;
static struct dw_scl_sda_cfg navi_amd_config = …;
static u32 mfld_get_clk_rate_khz(struct dw_i2c_dev *dev)
{ … }
static int mfld_setup(struct pci_dev *pdev, struct dw_pci_controller *c)
{ … }
static int mrfld_setup(struct pci_dev *pdev, struct dw_pci_controller *c)
{ … }
static u32 ehl_get_clk_rate_khz(struct dw_i2c_dev *dev)
{ … }
static u32 navi_amd_get_clk_rate_khz(struct dw_i2c_dev *dev)
{ … }
static int navi_amd_setup(struct pci_dev *pdev, struct dw_pci_controller *c)
{ … }
static struct dw_pci_controller dw_pci_controllers[] = …;
static int __maybe_unused i2c_dw_pci_runtime_suspend(struct device *dev)
{ … }
static int __maybe_unused i2c_dw_pci_suspend(struct device *dev)
{ … }
static int __maybe_unused i2c_dw_pci_runtime_resume(struct device *dev)
{ … }
static int __maybe_unused i2c_dw_pci_resume(struct device *dev)
{ … }
static const struct dev_pm_ops i2c_dw_pm_ops = …;
static const struct property_entry dgpu_properties[] = …;
static const struct software_node dgpu_node = …;
static int i2c_dw_pci_probe(struct pci_dev *pdev,
const struct pci_device_id *id)
{ … }
static void i2c_dw_pci_remove(struct pci_dev *pdev)
{ … }
static const struct pci_device_id i2_designware_pci_ids[] = …;
MODULE_DEVICE_TABLE(pci, i2_designware_pci_ids);
static struct pci_driver dw_i2c_driver = …;
module_pci_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;