From 0d8657dd3056063fb115946b10157477b5c70451 Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Mon, 20 Nov 2023 09:09:45 +0000
Subject: [PATCH] enable lvds 1280x800
---
kernel/drivers/mmc/core/mmc.c | 27 +++++++++++++++------------
1 files changed, 15 insertions(+), 12 deletions(-)
diff --git a/kernel/drivers/mmc/core/mmc.c b/kernel/drivers/mmc/core/mmc.c
index 1315805..0d96658 100644
--- a/kernel/drivers/mmc/core/mmc.c
+++ b/kernel/drivers/mmc/core/mmc.c
@@ -70,7 +70,7 @@
/*
* Given the decoded CSD structure, decode the raw CID to our CID structure.
*/
-#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
static int mmc_decode_cid(struct mmc_card *card)
{
u32 *resp = card->raw_cid;
@@ -666,7 +666,7 @@
return err;
}
-#ifdef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifdef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
static void *mmc_tb_map_ecsd(phys_addr_t start, size_t len)
{
int i;
@@ -696,7 +696,7 @@
{
u8 *ext_csd;
int err;
-#ifdef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifdef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
void *ecsd = NULL;
bool valid_ecsd = false;
bool valid_reserved = false;
@@ -707,7 +707,7 @@
if (!mmc_can_ext_csd(card))
return 0;
-#ifdef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifdef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
mem = of_parse_phandle(dev->of_node, "memory-region-ecsd", 0);
if (mem) {
err = of_address_to_resource(mem, 0, ®);
@@ -758,11 +758,11 @@
return err;
}
-#ifdef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifdef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
decode:
#endif
err = mmc_decode_ext_csd(card, ext_csd);
-#ifdef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifdef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
if (!valid_ecsd)
kfree(ext_csd);
else
@@ -777,7 +777,7 @@
return err;
}
-#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
static int mmc_compare_ext_csds(struct mmc_card *card, unsigned bus_width)
{
u8 *bw_ext_csd;
@@ -1117,7 +1117,7 @@
* compare ext_csd previously read in 1 bit mode
* against ext_csd at new bus width
*/
-#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
if (!(host->caps & MMC_CAP_BUS_WIDTH_TEST))
err = mmc_compare_ext_csds(card, bus_width);
else
@@ -1495,6 +1495,9 @@
if (host->ops->hs400_enhanced_strobe)
host->ops->hs400_enhanced_strobe(host, &host->ios);
+ /* some emmc device need a delay before read status */
+ usleep_range(100, 200);
+
err = mmc_switch_status(card);
if (err)
goto out_err;
@@ -1653,7 +1656,7 @@
* respond.
* mmc_go_idle is needed for eMMC that are asleep
*/
-#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
mmc_go_idle(host);
#endif
@@ -1698,7 +1701,7 @@
card->ocr = ocr;
card->type = MMC_TYPE_MMC;
card->rca = 1;
-#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
memcpy(card->raw_cid, cid, sizeof(card->raw_cid));
#endif
}
@@ -1731,7 +1734,7 @@
err = mmc_decode_csd(card);
if (err)
goto free_card;
-#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
err = mmc_decode_cid(card);
if (err)
goto free_card;
@@ -1866,7 +1869,7 @@
/*
* Enable HPI feature (if supported)
*/
-#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT
+#ifndef CONFIG_ROCKCHIP_THUNDER_BOOT_MMC
if (card->ext_csd.hpi) {
err = mmc_switch(card, EXT_CSD_CMD_SET_NORMAL,
EXT_CSD_HPI_MGMT, 1,
--
Gitblit v1.6.2