#include <linux/bits.h>
#include <linux/clk.h>
#include <linux/err.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/mfd/syscon.h>
#include <linux/phy/phy.h>
#include <linux/platform_device.h>
#include <linux/regmap.h>
#define PCIE_KVCO_LEVEL_OFF …
#define PCIE_USB3_PHY_PLL_CTL_OFF …
#define PCIE_KVCO_TUNE_SIGNAL_OFF …
#define PCIE_USB3_PHY_ENABLE …
#define PHY_KVCO_FINE_TUNE_LEVEL …
#define PHY_KVCO_FINE_TUNE_SIGNALS …
#define USB_PDRSTN_SPLIT …
#define PCIE_PHY_MODE …
#define PCIE_PHY_MODE_MASK …
#define PCIE_USB3_BUS_WIDTH_MASK …
#define PCIE_USB3_BUS_WIDTH …
#define PCIE_USB3_RATE_MASK …
#define PCIE_USB3_RX_STANDBY_MASK …
#define PCIE_USB3_PHY_ENABLE …
struct jh7110_pcie_phy { … };
static int phy_usb3_mode_set(struct jh7110_pcie_phy *data)
{ … }
static void phy_pcie_mode_set(struct jh7110_pcie_phy *data)
{ … }
static void phy_kvco_gain_set(struct jh7110_pcie_phy *phy)
{ … }
static int jh7110_pcie_phy_set_mode(struct phy *_phy,
enum phy_mode mode, int submode)
{ … }
static const struct phy_ops jh7110_pcie_phy_ops = …;
static int jh7110_pcie_phy_probe(struct platform_device *pdev)
{ … }
static const struct of_device_id jh7110_pcie_phy_of_match[] = …;
MODULE_DEVICE_TABLE(of, jh7110_pcie_phy_of_match);
static struct platform_driver jh7110_pcie_phy_driver = …;
module_platform_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;