linux/drivers/misc/cardreader/rts5227.c

// SPDX-License-Identifier: GPL-2.0-or-later
/* Driver for Realtek PCI-Express card reader
 *
 * Copyright(c) 2009-2013 Realtek Semiconductor Corp. All rights reserved.
 *
 * Author:
 *   Wei WANG <[email protected]>
 *   Roger Tseng <[email protected]>
 */

#include <linux/module.h>
#include <linux/delay.h>
#include <linux/rtsx_pci.h>

#include "rtsx_pcr.h"

static u8 rts5227_get_ic_version(struct rtsx_pcr *pcr)
{}

static void rts5227_fill_driving(struct rtsx_pcr *pcr, u8 voltage)
{}

static void rts5227_fetch_vendor_settings(struct rtsx_pcr *pcr)
{}

static void rts5227_init_from_cfg(struct rtsx_pcr *pcr)
{}

static int rts5227_extra_init_hw(struct rtsx_pcr *pcr)
{}

static int rts5227_optimize_phy(struct rtsx_pcr *pcr)
{}

static int rts5227_turn_on_led(struct rtsx_pcr *pcr)
{}

static int rts5227_turn_off_led(struct rtsx_pcr *pcr)
{}

static int rts5227_enable_auto_blink(struct rtsx_pcr *pcr)
{}

static int rts5227_disable_auto_blink(struct rtsx_pcr *pcr)
{}

static int rts5227_card_power_on(struct rtsx_pcr *pcr, int card)
{}

static int rts5227_card_power_off(struct rtsx_pcr *pcr, int card)
{}

static int rts5227_switch_output_voltage(struct rtsx_pcr *pcr, u8 voltage)
{}

static const struct pcr_ops rts5227_pcr_ops =;

/* SD Pull Control Enable:
 *     SD_DAT[3:0] ==> pull up
 *     SD_CD       ==> pull up
 *     SD_WP       ==> pull up
 *     SD_CMD      ==> pull up
 *     SD_CLK      ==> pull down
 */
static const u32 rts5227_sd_pull_ctl_enable_tbl[] =;

/* SD Pull Control Disable:
 *     SD_DAT[3:0] ==> pull down
 *     SD_CD       ==> pull up
 *     SD_WP       ==> pull down
 *     SD_CMD      ==> pull down
 *     SD_CLK      ==> pull down
 */
static const u32 rts5227_sd_pull_ctl_disable_tbl[] =;

/* MS Pull Control Enable:
 *     MS CD       ==> pull up
 *     others      ==> pull down
 */
static const u32 rts5227_ms_pull_ctl_enable_tbl[] =;

/* MS Pull Control Disable:
 *     MS CD       ==> pull up
 *     others      ==> pull down
 */
static const u32 rts5227_ms_pull_ctl_disable_tbl[] =;

void rts5227_init_params(struct rtsx_pcr *pcr)
{}

static int rts522a_optimize_phy(struct rtsx_pcr *pcr)
{}

static int rts522a_extra_init_hw(struct rtsx_pcr *pcr)
{}

static int rts522a_switch_output_voltage(struct rtsx_pcr *pcr, u8 voltage)
{}

static void rts522a_force_power_down(struct rtsx_pcr *pcr, u8 pm_state, bool runtime)
{}


static void rts522a_set_l1off_cfg_sub_d0(struct rtsx_pcr *pcr, int active)
{}

/* rts522a operations mainly derived from rts5227, except phy/hw init setting.
 */
static const struct pcr_ops rts522a_pcr_ops =;

void rts522a_init_params(struct rtsx_pcr *pcr)
{}