new file mode 100644
@@ -0,0 +1,38 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * Copyright (C) [2022-2025] Renesas Electronics Corporation and/or its affiliates.
+ */
+
+#ifndef RA6W_SDIO_H
+#define RA6W_SDIO_H
+
+#include <linux/mmc/sdio_func.h>
+
+#define RA6W_SDIO_VENDOR_ID_RENESAS 0x5245
+#define RA6W_SDIO_DEVICE_ID_RA6W 0x4154
+#define RA6W_SDIO_MAX_BLOCK_CNT 5
+#define RA6W_SDIO_BLOCK_SIZE 512
+#define RA6W_SDIO_HOST_GP_REG 0x24
+#define RA6W_SDIO_CHIP_GP_REG 0x28
+#define RA6W_SDIO_CODE_SUCCESS 0x00022000
+#define RA6W_SDIO_CODE_CRC_CHECKING 0xf0f0f0f0
+#define RA6W_SDIO_CODE_BOOT_NG 0x20000002
+#define RA6W_SDIO_ADDR_RESET 0xdeadffff
+#define RA6W_SDIO_ADDR_READ 0x0001
+#define RA6W_SDIO_ADDR_WRITE 0x0002
+#define RA6W_SDIO_ADDR_STATUS 0x0010
+
+#define RA6W_SDIO_FW_NAME "fmacfw_sdio.bin"
+
+#define RA6W_SDIO_GET_CNT(len, blk_size) (((u32)(len)) / (blk_size))
+#define RA6W_SDIO_GET_REMAIN(len, blk_size) (((u32)(len)) % (blk_size))
+
+#define RA6W_SDIO_ACK_CNT_MAX 10
+#define RA6W_SDIO_WAIT_SYNC_CNT_MAX 20
+#define RA6W_SDIO_CRC_CHECK_RETRY_MAX 20
+#define RA6W_SDIO_CRC_CHECK_SLEEP_MIN_US 10000
+#define RA6W_SDIO_CRC_CHECK_SLEEP_MAX_US 11000
+
+void ra6w_sdio_reprobe(struct sdio_func *func);
+
+#endif /* RA6W_SDIO_H */