[PATCH 36/75] headers: backport mmc_sw_reset and mmc_hw_reset API changes

Hauke Mehrtens <[email protected]> Fri, 28 Jun 2024 01:47:22 +0200
Newsgroups org.kernel.vger.backports
Message-ID <[email protected]>
From: Felix Fietkau <[email protected]>

mmc_sw_reset() was added in kernel 4.18, do not add it to earlier
versions.

Signed-off-by: Felix Fietkau <[email protected]>
[Update the kernel version checks]
Signed-off-by: Hauke Mehrtens <[email protected]>
---
 backport/backport-include/linux/mmc/core.h | 26 ++++++++++++++++++++++
 1 file changed, 26 insertions(+)
 create mode 100644 backport/backport-include/linux/mmc/core.h

diff --git a/backport/backport-include/linux/mmc/core.h b/backport/backport-include/linux/mmc/core.h
new file mode 100644
index 00000000..83b7aced
--- /dev/null
+++ b/backport/backport-include/linux/mmc/core.h
@@ -0,0 +1,26 @@
+#ifndef __BACKPORT_LINUX_MMC_CORE_H
+#define __BACKPORT_LINUX_MMC_CORE_H
+
+#include_next <linux/mmc/card.h>
+#include_next <linux/mmc/core.h>
+#include <linux/version.h>
+
+#if LINUX_VERSION_IS_LESS(5,19,0)
+#if LINUX_VERSION_IS_GEQ(4,18,0)
+static inline int backport_mmc_sw_reset(struct mmc_card *card)
+{
+	return mmc_sw_reset(card->host);
+}
+#define mmc_sw_reset LINUX_BACKPORT(mmc_sw_reset)
+#endif /* >4.18 */
+#endif /* <5.19 */
+
+#if LINUX_VERSION_IS_LESS(5,18,0)
+static inline int backport_mmc_hw_reset(struct mmc_card *card)
+{
+	return mmc_hw_reset(card->host);
+}
+#define mmc_hw_reset LINUX_BACKPORT(mmc_hw_reset)
+#endif /* <5.18 */
+
+#endif
-- 
2.45.2