linux/drivers/net/mdio/mdio-mux.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (C) 2011, 2012 Cavium, Inc.
 */

#include <linux/device.h>
#include <linux/mdio-mux.h>
#include <linux/module.h>
#include <linux/of_mdio.h>
#include <linux/phy.h>
#include <linux/platform_device.h>

#define DRV_DESCRIPTION

struct mdio_mux_child_bus;

struct mdio_mux_parent_bus {};

struct mdio_mux_child_bus {};

/*
 * The parent bus' lock is used to order access to the switch_fn.
 */
static int mdio_mux_read(struct mii_bus *bus, int phy_id, int regnum)
{}

static int mdio_mux_read_c45(struct mii_bus *bus, int phy_id, int dev_addr,
			     int regnum)
{}

/*
 * The parent bus' lock is used to order access to the switch_fn.
 */
static int mdio_mux_write(struct mii_bus *bus, int phy_id,
			  int regnum, u16 val)
{}

static int mdio_mux_write_c45(struct mii_bus *bus, int phy_id, int dev_addr,
			      int regnum, u16 val)
{}

static int parent_count;

static void mdio_mux_uninit_children(struct mdio_mux_parent_bus *pb)
{}

int mdio_mux_init(struct device *dev,
		  struct device_node *mux_node,
		  int (*switch_fn)(int cur, int desired, void *data),
		  void **mux_handle,
		  void *data,
		  struct mii_bus *mux_bus)
{}
EXPORT_SYMBOL_GPL();

void mdio_mux_uninit(void *mux_handle)
{}
EXPORT_SYMBOL_GPL();

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