linux/drivers/phy/broadcom/phy-brcm-usb.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * phy-brcm-usb.c - Broadcom USB Phy Driver
 *
 * Copyright (C) 2015-2017 Broadcom
 */

#include <linux/clk.h>
#include <linux/delay.h>
#include <linux/err.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/phy/phy.h>
#include <linux/platform_device.h>
#include <linux/interrupt.h>
#include <linux/soc/brcmstb/brcmstb.h>
#include <dt-bindings/phy/phy.h>
#include <linux/mfd/syscon.h>
#include <linux/suspend.h>

#include "phy-brcm-usb-init.h"

static DEFINE_MUTEX(sysfs_lock);

enum brcm_usb_phy_id {};

struct value_to_name_map {};

struct match_chip_info {};

static const struct value_to_name_map brcm_dr_mode_to_name[] =;

static const struct value_to_name_map brcm_dual_mode_to_name[] =;

struct brcm_usb_phy {};

struct brcm_usb_phy_data {};

static s8 *node_reg_names[BRCM_REGS_MAX] =;

static int brcm_pm_notifier(struct notifier_block *notifier,
			    unsigned long pm_event,
			    void *unused)
{}

static irqreturn_t brcm_usb_phy_wake_isr(int irq, void *dev_id)
{}

static int brcm_usb_phy_init(struct phy *gphy)
{}

static int brcm_usb_phy_exit(struct phy *gphy)
{}

static const struct phy_ops brcm_usb_phy_ops =;

static struct phy *brcm_usb_phy_xlate(struct device *dev,
				      const struct of_phandle_args *args)
{}

static int name_to_value(const struct value_to_name_map *table, int count,
			 const char *name, int *value)
{}

static const char *value_to_name(const struct value_to_name_map *table, int count,
				 int value)
{}

static ssize_t dr_mode_show(struct device *dev,
			    struct device_attribute *attr,
			    char *buf)
{}
static DEVICE_ATTR_RO(dr_mode);

static ssize_t dual_select_store(struct device *dev,
				 struct device_attribute *attr,
				 const char *buf, size_t len)
{}

static ssize_t dual_select_show(struct device *dev,
				struct device_attribute *attr,
				char *buf)
{}
static DEVICE_ATTR_RW(dual_select);

static struct attribute *brcm_usb_phy_attrs[] =;

static const struct attribute_group brcm_usb_phy_group =;

static const struct match_chip_info chip_info_4908 =;

static const struct match_chip_info chip_info_7216 =;

static const struct match_chip_info chip_info_7211b0 =;

static const struct match_chip_info chip_info_7445 =;

static const struct of_device_id brcm_usb_dt_ids[] =;

static int brcm_usb_get_regs(struct platform_device *pdev,
			     enum brcmusb_reg_sel regs,
			     struct  brcm_usb_init_params *ini,
			     bool optional)
{}

static int brcm_usb_phy_dvr_init(struct platform_device *pdev,
				 struct brcm_usb_phy_data *priv,
				 struct device_node *dn)
{}

static int brcm_usb_phy_probe(struct platform_device *pdev)
{}

static void brcm_usb_phy_remove(struct platform_device *pdev)
{}

#ifdef CONFIG_PM_SLEEP
static int brcm_usb_phy_suspend(struct device *dev)
{}

static int brcm_usb_phy_resume(struct device *dev)
{}
#endif /* CONFIG_PM_SLEEP */

static const struct dev_pm_ops brcm_usb_phy_pm_ops =;

MODULE_DEVICE_TABLE(of, brcm_usb_dt_ids);

static struct platform_driver brcm_usb_driver =;

module_platform_driver();

MODULE_ALIAS();
MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();