linux/drivers/phy/qualcomm/phy-qcom-eusb2-repeater.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (c) 2023, Linaro Limited
 */

#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/regulator/consumer.h>
#include <linux/regmap.h>
#include <linux/of.h>
#include <linux/phy/phy.h>

/* eUSB2 status registers */
#define EUSB2_RPTR_STATUS
#define RPTR_OK

/* eUSB2 control registers */
#define EUSB2_EN_CTL1
#define EUSB2_RPTR_EN

#define EUSB2_FORCE_EN_5
#define F_CLK_19P2M_EN

#define EUSB2_FORCE_VAL_5
#define V_CLK_19P2M_EN

#define EUSB2_TUNE_USB2_CROSSOVER
#define EUSB2_TUNE_IUSB2
#define EUSB2_TUNE_RES_FSDIF
#define EUSB2_TUNE_HSDISC
#define EUSB2_TUNE_SQUELCH_U
#define EUSB2_TUNE_USB2_SLEW
#define EUSB2_TUNE_USB2_EQU
#define EUSB2_TUNE_USB2_PREEM
#define EUSB2_TUNE_USB2_HS_COMP_CUR
#define EUSB2_TUNE_EUSB_SLEW
#define EUSB2_TUNE_EUSB_EQU
#define EUSB2_TUNE_EUSB_HS_COMP_CUR

enum eusb2_reg_layout {};

struct eusb2_repeater_cfg {};

struct eusb2_repeater {};

static const char * const pm8550b_vreg_l[] =;

static const u32 pm8550b_init_tbl[NUM_TUNE_FIELDS] =;

static const u32 smb2360_init_tbl[NUM_TUNE_FIELDS] =;

static const struct eusb2_repeater_cfg pm8550b_eusb2_cfg =;

static const struct eusb2_repeater_cfg smb2360_eusb2_cfg =;

static int eusb2_repeater_init_vregs(struct eusb2_repeater *rptr)
{}

static int eusb2_repeater_init(struct phy *phy)
{}

static int eusb2_repeater_set_mode(struct phy *phy,
				   enum phy_mode mode, int submode)
{}

static int eusb2_repeater_exit(struct phy *phy)
{}

static const struct phy_ops eusb2_repeater_ops =;

static int eusb2_repeater_probe(struct platform_device *pdev)
{}

static void eusb2_repeater_remove(struct platform_device *pdev)
{}

static const struct of_device_id eusb2_repeater_of_match_table[] =;
MODULE_DEVICE_TABLE(of, eusb2_repeater_of_match_table);

static struct platform_driver eusb2_repeater_driver =;

module_platform_driver();

MODULE_DESCRIPTION();
MODULE_LICENSE();