mirror of
https://github.com/openharmony/drivers_framework.git
synced 2026-08-27 02:42:28 -04:00
7bb1798788
Signed-off-by: yanghaizhou <yanghaizhou1@huawei.com>
100 lines
2.2 KiB
C
100 lines
2.2 KiB
C
/*
|
|
* Copyright (c) 2020-2021 Huawei Device Co., Ltd.
|
|
*
|
|
* HDF is dual licensed: you can use it either under the terms of
|
|
* the GPL, or the BSD license, at your option.
|
|
* See the LICENSE file in the root of this repository for complete details.
|
|
*/
|
|
|
|
/**
|
|
* @addtogroup MMC
|
|
* @{
|
|
*
|
|
* @brief Declares standard APIs of basic embedded multi media card (MMC) capabilities.
|
|
*
|
|
* You can use this module to access the MMC and enable the driver to operate an MMC-compliant device.
|
|
* @since 1.0
|
|
*/
|
|
|
|
/**
|
|
* @file mmc_if.h
|
|
*
|
|
* @brief Declares the standard MMC APIs.
|
|
*
|
|
* @since 1.0
|
|
*/
|
|
|
|
#ifndef MMC_IF_H
|
|
#define MMC_IF_H
|
|
|
|
#include "platform_if.h"
|
|
|
|
#ifdef __cplusplus
|
|
#if __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
#endif /* __cplusplus */
|
|
|
|
/**
|
|
* @brief Enumerates MMC I/O commands.
|
|
*
|
|
* @since 1.0
|
|
*/
|
|
enum MmcIoCmd {
|
|
MMC_CMD_DEV_PRESENT,
|
|
MMC_CMD_MAX,
|
|
EMMC_CMD_GET_CID,
|
|
EMMC_CMD_MAX,
|
|
SDIO_CMD_MAX,
|
|
};
|
|
|
|
/**
|
|
* @brief Opens an MMC controller with a specified number.
|
|
*
|
|
* Before using the MMC interface, you can obtain the device handle of the MMC controller
|
|
* by calling {@link MmcOpen}. This function is used in pair with {@link MmcClose}.
|
|
*
|
|
* @param number Indicates the mmc bus number.
|
|
*
|
|
* @return Returns the device handle {@link DevHandle} of the MMC controller if the operation is successful;
|
|
* returns <b>NULL</b> otherwise.
|
|
*
|
|
* @since 1.0
|
|
*/
|
|
DevHandle MmcOpen(int16_t number);
|
|
|
|
/**
|
|
* @brief Closes an MMC controller.
|
|
*
|
|
* After the MMC interface is used, you can close the MMC controller by calling {@link MmcClose}.
|
|
* This function is used in pair with {@link MmcOpen}.
|
|
*
|
|
* @param handle Indicates device handle of the MMC controller.
|
|
*
|
|
* @return Returns <b>0</b> if the operation is successful; returns a negative value if the operation fails.
|
|
*
|
|
* @since 1.0
|
|
*/
|
|
void MmcClose(DevHandle handle);
|
|
|
|
/**
|
|
* @brief Check if a controller has a device present.
|
|
*
|
|
* This function is used to check if a controller has a device plugged.
|
|
*
|
|
* @param handle Indicates the device handle of the MMC controller.
|
|
*
|
|
* @return Returns <b>true</b> if there is a device present; otherwise <b>false</b>.
|
|
*
|
|
* @since 1.0
|
|
*/
|
|
bool MmcDevPresent(DevHandle handle);
|
|
|
|
#ifdef __cplusplus
|
|
#if __cplusplus
|
|
}
|
|
#endif
|
|
#endif /* __cplusplus */
|
|
|
|
#endif /* MMC_IF_H */
|