linux/include/linux/mmc/card.h

/* SPDX-License-Identifier: GPL-2.0-only */
/*
 *  linux/include/linux/mmc/card.h
 *
 *  Card driver specific definitions.
 */
#ifndef LINUX_MMC_CARD_H
#define LINUX_MMC_CARD_H

#include <linux/device.h>
#include <linux/mod_devicetable.h>

struct mmc_cid {};

struct mmc_csd {};

struct mmc_ext_csd {};

struct sd_scr {};

struct sd_ssr {};

struct sd_switch_caps {};

struct sd_ext_reg {};

struct sdio_cccr {};

struct sdio_cis {};

struct mmc_host;
struct sdio_func;
struct sdio_func_tuple;
struct mmc_queue_req;

#define SDIO_MAX_FUNCS

/* The number of MMC physical partitions.  These consist of:
 * boot partitions (2), general purpose partitions (4) and
 * RPMB partition (1) in MMC v4.4.
 */
#define MMC_NUM_BOOT_PARTITION
#define MMC_NUM_GP_PARTITION
#define MMC_NUM_PHY_PARTITION
#define MAX_MMC_PART_NAME_LEN

/*
 * MMC Physical partitions
 */
struct mmc_part {};

/*
 * MMC device
 */
struct mmc_card {};

static inline bool mmc_large_sector(struct mmc_card *card)
{}

static inline int mmc_card_enable_async_irq(struct mmc_card *card)
{}

bool mmc_card_is_blockaddr(struct mmc_card *card);

#define mmc_card_mmc(c)
#define mmc_card_sd(c)
#define mmc_card_sdio(c)
#define mmc_card_sd_combo(c)

#endif /* LINUX_MMC_CARD_H */