From 6778948f9de86c3cfaf36725a7c87dcff9ba247f Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Mon, 11 Dec 2023 08:20:59 +0000
Subject: [PATCH] kernel_5.10 no rt

---
 kernel/drivers/soc/rockchip/sdmmc_vendor_storage.c |   29 +++++------------------------
 1 files changed, 5 insertions(+), 24 deletions(-)

diff --git a/kernel/drivers/soc/rockchip/sdmmc_vendor_storage.c b/kernel/drivers/soc/rockchip/sdmmc_vendor_storage.c
index d8681b9..ea1d941 100644
--- a/kernel/drivers/soc/rockchip/sdmmc_vendor_storage.c
+++ b/kernel/drivers/soc/rockchip/sdmmc_vendor_storage.c
@@ -49,12 +49,7 @@
 
 static int emmc_vendor_ops(u8 *buffer, u32 addr, u32 n_sec, int write)
 {
-	u32 i, ret = 0;
-
-	for (i = 0; i < n_sec; i++)
-		ret = rk_emmc_transfer(buffer + i * 512, addr + i, 512, write);
-
-	return ret;
+	return rk_emmc_transfer(buffer, addr, n_sec << 9, write);
 }
 
 static int emmc_vendor_storage_init(void)
@@ -210,34 +205,20 @@
 #ifdef CONFIG_ROCKCHIP_VENDOR_STORAGE_UPDATE_LOADER
 static int id_blk_read_data(u32 index, u32 n_sec, u8 *buf)
 {
-	u32 i;
-	u32 ret = 0;
-
 	if (index + n_sec >= 1024 * 5)
 		return 0;
 	index = index + EMMC_IDB_PART_OFFSET;
-	for (i = 0; i < n_sec; i++) {
-		ret = rk_emmc_transfer(buf + i * 512, index + i, 512, 0);
-		if (ret)
-			return ret;
-	}
-	return ret;
+
+	return rk_emmc_transfer(buf, index, n_sec << 9, 0);
 }
 
 static int id_blk_write_data(u32 index, u32 n_sec, u8 *buf)
 {
-	u32 i;
-	u32 ret = 0;
-
 	if (index + n_sec >= 1024 * 5)
 		return 0;
 	index = index + EMMC_IDB_PART_OFFSET;
-	for (i = 0; i < n_sec; i++) {
-		ret = rk_emmc_transfer(buf + i * 512, index + i, 512, 1);
-		if (ret)
-			return ret;
-	}
-	return ret;
+
+	return rk_emmc_transfer(buf, index, n_sec << 9, 1);
 }
 
 static int emmc_write_idblock(u32 size, u8 *buf, u32 *id_blk_tbl)

--
Gitblit v1.6.2