linux/drivers/scsi/mvsas/mv_94xx.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Marvell 88SE94xx hardware specific
 *
 * Copyright 2007 Red Hat, Inc.
 * Copyright 2008 Marvell. <[email protected]>
 * Copyright 2009-2011 Marvell. <[email protected]>
*/

#include "mv_sas.h"
#include "mv_94xx.h"
#include "mv_chips.h"

static void mvs_94xx_detect_porttype(struct mvs_info *mvi, int i)
{}

static void set_phy_tuning(struct mvs_info *mvi, int phy_id,
			   struct phy_tuning phy_tuning)
{}

static void set_phy_ffe_tuning(struct mvs_info *mvi, int phy_id,
			       struct ffe_control ffe)
{}

/*Notice: this function must be called when phy is disabled*/
static void set_phy_rate(struct mvs_info *mvi, int phy_id, u8 rate)
{}

static void mvs_94xx_config_reg_from_hba(struct mvs_info *mvi, int phy_id)
{}

static void mvs_94xx_enable_xmt(struct mvs_info *mvi, int phy_id)
{}

static void mvs_94xx_phy_reset(struct mvs_info *mvi, u32 phy_id, int hard)
{}

static void mvs_94xx_phy_disable(struct mvs_info *mvi, u32 phy_id)
{}

static void mvs_94xx_phy_enable(struct mvs_info *mvi, u32 phy_id)
{}

static void mvs_94xx_sgpio_init(struct mvs_info *mvi)
{}

static int mvs_94xx_init(struct mvs_info *mvi)
{}

static int mvs_94xx_ioremap(struct mvs_info *mvi)
{}

static void mvs_94xx_iounmap(struct mvs_info *mvi)
{}

static void mvs_94xx_interrupt_enable(struct mvs_info *mvi)
{}

static void mvs_94xx_interrupt_disable(struct mvs_info *mvi)
{}

static u32 mvs_94xx_isr_status(struct mvs_info *mvi, int irq)
{}

static irqreturn_t mvs_94xx_isr(struct mvs_info *mvi, int irq, u32 stat)
{}

static void mvs_94xx_command_active(struct mvs_info *mvi, u32 slot_idx)
{}

static void
mvs_94xx_clear_srs_irq(struct mvs_info *mvi, u8 reg_set, u8 clear_all)
{}

static void mvs_94xx_issue_stop(struct mvs_info *mvi, enum mvs_port_type type,
				u32 tfs)
{}

static void mvs_94xx_non_spec_ncq_error(struct mvs_info *mvi)
{}

static void mvs_94xx_free_reg_set(struct mvs_info *mvi, u8 *tfs)
{}

static u8 mvs_94xx_assign_reg_set(struct mvs_info *mvi, u8 *tfs)
{}

static void mvs_94xx_make_prd(struct scatterlist *scatter, int nr, void *prd)
{}

static int mvs_94xx_oob_done(struct mvs_info *mvi, int i)
{}

static void mvs_94xx_get_dev_identify_frame(struct mvs_info *mvi, int port_id,
					struct sas_identify_frame *id)
{}

static void mvs_94xx_get_att_identify_frame(struct mvs_info *mvi, int port_id,
					struct sas_identify_frame *id)
{}

static u32 mvs_94xx_make_dev_info(struct sas_identify_frame *id)
{}

static u32 mvs_94xx_make_att_info(struct sas_identify_frame *id)
{}

static void mvs_94xx_fix_phy_info(struct mvs_info *mvi, int i,
				struct sas_identify_frame *id)
{}

static void mvs_94xx_phy_set_link_rate(struct mvs_info *mvi, u32 phy_id,
				       struct sas_phy_linkrates *rates)
{}

static void mvs_94xx_clear_active_cmds(struct mvs_info *mvi)
{}


static u32 mvs_94xx_spi_read_data(struct mvs_info *mvi)
{}

static void mvs_94xx_spi_write_data(struct mvs_info *mvi, u32 data)
{}


static int mvs_94xx_spi_buildcmd(struct mvs_info *mvi,
				 u32      *dwCmd,
				 u8       cmd,
				 u8       read,
				 u8       length,
				 u32      addr
				)
{}


static int mvs_94xx_spi_issuecmd(struct mvs_info *mvi, u32 cmd)
{}

static int mvs_94xx_spi_waitdataready(struct mvs_info *mvi, u32 timeout)
{}

static void mvs_94xx_fix_dma(struct mvs_info *mvi, u32 phy_mask,
			     int buf_len, int from, void *prd)
{}

static void mvs_94xx_tune_interrupt(struct mvs_info *mvi, u32 time)
{}

static int mvs_94xx_gpio_write(struct mvs_prv_info *mvs_prv,
			u8 reg_type, u8 reg_index,
			u8 reg_count, u8 *write_data)
{}

const struct mvs_dispatch mvs_94xx_dispatch =;