linux/drivers/net/ethernet/stmicro/stmmac/dwmac-ingenic.c

// SPDX-License-Identifier: GPL-2.0
/*
 * dwmac-ingenic.c - Ingenic SoCs DWMAC specific glue layer
 *
 * Copyright (c) 2021 周琰杰 (Zhou Yanjie) <[email protected]>
 */

#include <linux/bitfield.h>
#include <linux/clk.h>
#include <linux/kernel.h>
#include <linux/mfd/syscon.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_net.h>
#include <linux/phy.h>
#include <linux/platform_device.h>
#include <linux/regmap.h>
#include <linux/slab.h>
#include <linux/stmmac.h>

#include "stmmac_platform.h"

#define MACPHYC_TXCLK_SEL_MASK
#define MACPHYC_TXCLK_SEL_OUTPUT
#define MACPHYC_TXCLK_SEL_INPUT
#define MACPHYC_MODE_SEL_MASK
#define MACPHYC_MODE_SEL_RMII
#define MACPHYC_TX_SEL_MASK
#define MACPHYC_TX_SEL_ORIGIN
#define MACPHYC_TX_SEL_DELAY
#define MACPHYC_TX_DELAY_MASK
#define MACPHYC_RX_SEL_MASK
#define MACPHYC_RX_SEL_ORIGIN
#define MACPHYC_RX_SEL_DELAY
#define MACPHYC_RX_DELAY_MASK
#define MACPHYC_SOFT_RST_MASK
#define MACPHYC_PHY_INFT_MASK
#define MACPHYC_PHY_INFT_RMII
#define MACPHYC_PHY_INFT_RGMII
#define MACPHYC_PHY_INFT_GMII
#define MACPHYC_PHY_INFT_MII

#define MACPHYC_TX_DELAY_PS_MAX
#define MACPHYC_TX_DELAY_PS_MIN

#define MACPHYC_RX_DELAY_PS_MAX
#define MACPHYC_RX_DELAY_PS_MIN

enum ingenic_mac_version {};

struct ingenic_mac {};

struct ingenic_soc_info {};

static int ingenic_mac_init(struct plat_stmmacenet_data *plat_dat)
{}

static int jz4775_mac_set_mode(struct plat_stmmacenet_data *plat_dat)
{}

static int x1000_mac_set_mode(struct plat_stmmacenet_data *plat_dat)
{}

static int x1600_mac_set_mode(struct plat_stmmacenet_data *plat_dat)
{}

static int x1830_mac_set_mode(struct plat_stmmacenet_data *plat_dat)
{}

static int x2000_mac_set_mode(struct plat_stmmacenet_data *plat_dat)
{}

static int ingenic_mac_probe(struct platform_device *pdev)
{}

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

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

static SIMPLE_DEV_PM_OPS(ingenic_mac_pm_ops, ingenic_mac_suspend, ingenic_mac_resume);

static struct ingenic_soc_info jz4775_soc_info =;

static struct ingenic_soc_info x1000_soc_info =;

static struct ingenic_soc_info x1600_soc_info =;

static struct ingenic_soc_info x1830_soc_info =;

static struct ingenic_soc_info x2000_soc_info =;

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

static struct platform_driver ingenic_mac_driver =;
module_platform_driver();

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