forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-10-22 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5
kernel/drivers/mmc/core/mmc_ops.h
....@@ -1,18 +1,20 @@
1
+/* SPDX-License-Identifier: GPL-2.0-or-later */
12 /*
23 * linux/drivers/mmc/core/mmc_ops.h
34 *
45 * Copyright 2006-2007 Pierre Ossman
5
- *
6
- * This program is free software; you can redistribute it and/or modify
7
- * it under the terms of the GNU General Public License as published by
8
- * the Free Software Foundation; either version 2 of the License, or (at
9
- * your option) any later version.
106 */
117
128 #ifndef _MMC_MMC_OPS_H
139 #define _MMC_MMC_OPS_H
1410
1511 #include <linux/types.h>
12
+
13
+enum mmc_busy_cmd {
14
+ MMC_BUSY_CMD6,
15
+ MMC_BUSY_ERASE,
16
+ MMC_BUSY_HPI,
17
+};
1618
1719 struct mmc_host;
1820 struct mmc_card;
....@@ -30,21 +32,21 @@
3032 int mmc_spi_read_ocr(struct mmc_host *host, int highcap, u32 *ocrp);
3133 int mmc_spi_set_crc(struct mmc_host *host, int use_crc);
3234 int mmc_bus_test(struct mmc_card *card, u8 bus_width);
33
-int mmc_interrupt_hpi(struct mmc_card *card);
3435 int mmc_can_ext_csd(struct mmc_card *card);
3536 int mmc_get_ext_csd(struct mmc_card *card, u8 **new_ext_csd);
36
-int mmc_switch_status(struct mmc_card *card);
37
-int __mmc_switch_status(struct mmc_card *card, bool crc_err_fatal);
37
+int mmc_switch_status(struct mmc_card *card, bool crc_err_fatal);
38
+int mmc_poll_for_busy(struct mmc_card *card, unsigned int timeout_ms,
39
+ enum mmc_busy_cmd busy_cmd);
3840 int __mmc_switch(struct mmc_card *card, u8 set, u8 index, u8 value,
3941 unsigned int timeout_ms, unsigned char timing,
40
- bool use_busy_signal, bool send_status, bool retry_crc_err);
42
+ bool send_status, bool retry_crc_err);
4143 int mmc_switch(struct mmc_card *card, u8 set, u8 index, u8 value,
4244 unsigned int timeout_ms);
43
-int mmc_stop_bkops(struct mmc_card *card);
44
-void mmc_start_bkops(struct mmc_card *card, bool from_exception);
45
+void mmc_run_bkops(struct mmc_card *card);
4546 int mmc_flush_cache(struct mmc_card *card);
4647 int mmc_cmdq_enable(struct mmc_card *card);
4748 int mmc_cmdq_disable(struct mmc_card *card);
49
+int mmc_sanitize(struct mmc_card *card);
4850
4951 #endif
5052