summaryrefslogtreecommitdiff
path: root/src/mainboard/google/trogdor/mainboard.c
diff options
context:
space:
mode:
authorShaik Sajida Bhanu <sbhanu@codeaurora.org>2021-08-30 12:09:46 +0530
committerJulius Werner <jwerner@chromium.org>2021-09-16 17:16:14 +0000
commit7bf3d0cbd8c36504795be940acdab9b78c5afa31 (patch)
tree24457a16adcc2ab29c0d5c4917c498b7c69d370b /src/mainboard/google/trogdor/mainboard.c
parente3cf008d88447b8a9ee3c08f755dcee4ada80a77 (diff)
mainboard/google: Update the TLMM registers for sdhc
Update the TLMM register values for eMMC and SD card on Trogdor, Herobrine and Mistral boards. BUG=b:196936525 TEST=Validated on qualcomm sc7280 and sc7180 development board and checked basic boot up. Signed-off-by: Shaik Sajida Bhanu <sbhanu@codeaurora.org> Change-Id: Iccdb7757027c6de424a82e4374bad802501ac83c Reviewed-on: https://review.coreboot.org/c/coreboot/+/57450 Reviewed-by: Shelley Chen <shchen@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/mainboard/google/trogdor/mainboard.c')
-rw-r--r--src/mainboard/google/trogdor/mainboard.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/mainboard/google/trogdor/mainboard.c b/src/mainboard/google/trogdor/mainboard.c
index 41bef2b3e7..982c1c1dae 100644
--- a/src/mainboard/google/trogdor/mainboard.c
+++ b/src/mainboard/google/trogdor/mainboard.c
@@ -6,6 +6,7 @@
#include <delay.h>
#include <device/device.h>
#include <device/i2c_simple.h>
+#include <device/mmio.h>
#include <mipi/panel.h>
#include <drivers/ti/sn65dsi86bridge/sn65dsi86bridge.h>
#include <edid.h>
@@ -19,6 +20,7 @@
#include <types.h>
#include "board.h"
+#include <soc/addressmap.h>
#define BRIDGE_BUS 0x2
#define BRIDGE_CHIP 0x2d
@@ -202,6 +204,14 @@ static void display_startup(void)
}
}
+static void configure_sdhci(void)
+{
+ /* Program eMMC drive strength to 16/16/16 mA */
+ write32((void *)SDC1_TLMM_CFG_ADDR, 0x9FFF);
+ /* Program SD card drive strength to 16/10/10 mA */
+ write32((void *)SDC2_TLMM_CFG_ADDR, 0x1FE4);
+}
+
static void mainboard_init(struct device *dev)
{
/* Take FPMCU out of reset. Power was already applied
@@ -213,6 +223,7 @@ static void mainboard_init(struct device *dev)
qi2s_configure_gpios();
load_qup_fw();
display_startup();
+ configure_sdhci();
}
static void mainboard_enable(struct device *dev)