linux/drivers/rapidio/switches/idt_gen2.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * IDT CPS Gen.2 Serial RapidIO switch family support
 *
 * Copyright 2010 Integrated Device Technology, Inc.
 * Alexandre Bounine <[email protected]>
 */

#include <linux/stat.h>
#include <linux/module.h>
#include <linux/rio.h>
#include <linux/rio_drv.h>
#include <linux/rio_ids.h>
#include <linux/delay.h>

#include <asm/page.h>
#include "../rio.h"

#define LOCAL_RTE_CONF_DESTID_SEL
#define LOCAL_RTE_CONF_DESTID_SEL_PSEL

#define IDT_LT_ERR_REPORT_EN

#define IDT_PORT_ERR_REPORT_EN(n)
#define IDT_PORT_ERR_REPORT_EN_BC

#define IDT_PORT_ISERR_REPORT_EN(n)
#define IDT_PORT_ISERR_REPORT_EN_BC
#define IDT_PORT_INIT_TX_ACQUIRED

#define IDT_LANE_ERR_REPORT_EN(n)
#define IDT_LANE_ERR_REPORT_EN_BC

#define IDT_DEV_CTRL_1
#define IDT_DEV_CTRL_1_GENPW
#define IDT_DEV_CTRL_1_PRSTBEH

#define IDT_CFGBLK_ERR_CAPTURE_EN
#define IDT_CFGBLK_ERR_REPORT
#define IDT_CFGBLK_ERR_REPORT_GENPW

#define IDT_AUX_PORT_ERR_CAP_EN
#define IDT_AUX_ERR_REPORT_EN
#define IDT_AUX_PORT_ERR_LOG_I2C
#define IDT_AUX_PORT_ERR_LOG_JTAG

#define IDT_ISLTL_ADDRESS_CAP

#define IDT_RIO_DOMAIN
#define IDT_RIO_DOMAIN_MASK

#define IDT_PW_INFO_CSR

#define IDT_SOFT_RESET
#define IDT_SOFT_RESET_REQ

#define IDT_I2C_MCTRL
#define IDT_I2C_MCTRL_GENPW

#define IDT_JTAG_CTRL
#define IDT_JTAG_CTRL_GENPW

#define IDT_LANE_CTRL(n)
#define IDT_LANE_CTRL_BC
#define IDT_LANE_CTRL_GENPW
#define IDT_LANE_DFE_1_BC
#define IDT_LANE_DFE_2_BC

#define IDT_PORT_OPS(n)
#define IDT_PORT_OPS_GENPW
#define IDT_PORT_OPS_PL_ELOG
#define IDT_PORT_OPS_LL_ELOG
#define IDT_PORT_OPS_LT_ELOG
#define IDT_PORT_OPS_BC

#define IDT_PORT_ISERR_DET(n)

#define IDT_ERR_CAP
#define IDT_ERR_CAP_LOG_OVERWR

#define IDT_ERR_RD

#define IDT_DEFAULT_ROUTE
#define IDT_NO_ROUTE

static int
idtg2_route_add_entry(struct rio_mport *mport, u16 destid, u8 hopcount,
		       u16 table, u16 route_destid, u8 route_port)
{}

static int
idtg2_route_get_entry(struct rio_mport *mport, u16 destid, u8 hopcount,
		       u16 table, u16 route_destid, u8 *route_port)
{}

static int
idtg2_route_clr_table(struct rio_mport *mport, u16 destid, u8 hopcount,
		       u16 table)
{}


static int
idtg2_set_domain(struct rio_mport *mport, u16 destid, u8 hopcount,
		       u8 sw_domain)
{}

static int
idtg2_get_domain(struct rio_mport *mport, u16 destid, u8 hopcount,
		       u8 *sw_domain)
{}

static int
idtg2_em_init(struct rio_dev *rdev)
{}

static int
idtg2_em_handler(struct rio_dev *rdev, u8 portnum)
{}

static ssize_t
idtg2_show_errlog(struct device *dev, struct device_attribute *attr, char *buf)
{}

static DEVICE_ATTR(errlog, S_IRUGO, idtg2_show_errlog, NULL);

static int idtg2_sysfs(struct rio_dev *rdev, bool create)
{}

static struct rio_switch_ops idtg2_switch_ops =;

static int idtg2_probe(struct rio_dev *rdev, const struct rio_device_id *id)
{}

static void idtg2_remove(struct rio_dev *rdev)
{}

static const struct rio_device_id idtg2_id_table[] =;

static struct rio_driver idtg2_driver =;

static int __init idtg2_init(void)
{}

static void __exit idtg2_exit(void)
{}

device_initcall(idtg2_init);
module_exit(idtg2_exit);

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