#include <linux/io.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/phy/phy.h>
#include <linux/platform_device.h>
#include <linux/property.h>
#include <linux/reset.h>
#define USB_PHY_PLL …
#define USB_PHY_PLL_CONTROL …
#define USB_PHY_TX_CTRL0 …
#define USB_PHY_TX_CTRL1 …
#define USB_PHY_TX_CTRL2 …
#define USB_PHY_RX_CTRL …
#define USB_PHY_ANALOG …
#define CLK_REF_DIV(x) …
#define FEEDBACK_CLK_DIV(x) …
#define CLK_STABLE …
#define PLL_CTRL_PIN …
#define PLL_CTRL_REG …
#define PLL_ON …
#define PHASE_OFF_TOL_125 …
#define PHASE_OFF_TOL_250 …
#define KVC0_CALIB …
#define KVC0_REG_CTRL …
#define KVC0_HIGH …
#define KVC0_LOW …
#define CLK_BLK_EN …
#define EXT_HS_RCAL_EN …
#define EXT_FS_RCAL_EN …
#define IMPCAL_VTH_DIV(x) …
#define EXT_RS_RCAL_DIV(x) …
#define EXT_FS_RCAL_DIV(x) …
#define TX_VDD15_14 …
#define TX_VDD15_15 …
#define TX_VDD15_16 …
#define TX_VDD15_17 …
#define TX_VDD12_VDD …
#define TX_VDD12_11 …
#define TX_VDD12_12 …
#define TX_VDD12_13 …
#define LOW_VDD_EN …
#define TX_OUT_AMP(x) …
#define TX_CHAN_CTRL_REG(x) …
#define DRV_SLEWRATE(x) …
#define IMP_CAL_FS_HS_DLY_0 …
#define IMP_CAL_FS_HS_DLY_1 …
#define IMP_CAL_FS_HS_DLY_2 …
#define IMP_CAL_FS_HS_DLY_3 …
#define FS_DRV_EN_MASK(x) …
#define HS_DRV_EN_MASK(x) …
#define PHASE_FREEZE_DLY_2_CL …
#define PHASE_FREEZE_DLY_4_CL …
#define ACK_LENGTH_8_CL …
#define ACK_LENGTH_12_CL …
#define ACK_LENGTH_16_CL …
#define ACK_LENGTH_20_CL …
#define SQ_LENGTH_3 …
#define SQ_LENGTH_6 …
#define SQ_LENGTH_9 …
#define SQ_LENGTH_12 …
#define DISCON_THRESHOLD_260 …
#define DISCON_THRESHOLD_270 …
#define DISCON_THRESHOLD_280 …
#define DISCON_THRESHOLD_290 …
#define SQ_THRESHOLD(x) …
#define LPF_COEF(x) …
#define INTPL_CUR_10 …
#define INTPL_CUR_20 …
#define INTPL_CUR_30 …
#define INTPL_CUR_40 …
#define ANA_PWR_UP …
#define ANA_PWR_DOWN …
#define V2I_VCO_RATIO(x) …
#define R_ROTATE_90 …
#define R_ROTATE_0 …
#define MODE_TEST_EN …
#define ANA_TEST_DC_CTRL(x) …
static const u32 phy_berlin_pll_dividers[] = …;
struct phy_berlin_usb_priv { … };
static int phy_berlin_usb_power_on(struct phy *phy)
{ … }
static const struct phy_ops phy_berlin_usb_ops = …;
static const struct of_device_id phy_berlin_usb_of_match[] = …;
MODULE_DEVICE_TABLE(of, phy_berlin_usb_of_match);
static int phy_berlin_usb_probe(struct platform_device *pdev)
{ … }
static struct platform_driver phy_berlin_usb_driver = …;
module_platform_driver(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;