From 657f82d557523e85c20a6d03eb9923b4abe58d51 Mon Sep 17 00:00:00 2001
From: Eugen Hristev <eugen.hristev@microchip.com>
Date: Fri, 2 Aug 2019 10:55:16 +0300
Subject: [dt-overlay-at91][PATCH] sama5d27_som1_ek: add overlay for high drive strength for
 SDMMC0

Some eMMC require high drive strength for the SDMMC0 lines in order to
operate.
To do this easy from U-boot, just use this overlay:

bootm <image address><overlays>#sdmmc0_hi

Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
---
 sama5d27_som1_ek.its                               | 19 ++++++++++++++++
 .../sama5d27_som1_ek_sdmmc0_drvstr_hi.dtso         | 25 ++++++++++++++++++++++
 2 files changed, 44 insertions(+)
 create mode 100644 sama5d27_som1_ek/sama5d27_som1_ek_sdmmc0_drvstr_hi.dtso

diff --git a/sama5d27_som1_ek.its b/sama5d27_som1_ek.its
index 50dfcd7..9b274b6 100644
--- a/sama5d27_som1_ek.its
+++ b/sama5d27_som1_ek.its
@@ -120,6 +120,20 @@
 			};
 		};
 
+		fdt_sdmmc0_hi {
+			description = "Device Tree blob sdmmc0 high drive strength overlay";
+			data = /incbin/("./sama5d27_som1_ek/sama5d27_som1_ek_sdmmc0_drvstr_hi.dtbo");
+			type = "flat_dt";
+			arch = "arm";
+			compression = "none";
+			load = <0x23180000>;
+			hash@1 {
+				algo = "crc32";
+			};
+			hash@2 {
+				algo = "sha1";
+			};
+		};
 	};
 
 	configurations {
@@ -159,5 +173,10 @@
 			description = "FDT overlay blob for ov5640 sensor";
 			fdt = "fdt_ov5640";
 		};
+
+		sdmmc0_hi {
+			description = "FDT overlay blob for sdmmc0 high drive strength";
+			fdt = "fdt_sdmmc0_hi";
+		};
 	};
 };
diff --git a/sama5d27_som1_ek/sama5d27_som1_ek_sdmmc0_drvstr_hi.dtso b/sama5d27_som1_ek/sama5d27_som1_ek_sdmmc0_drvstr_hi.dtso
new file mode 100644
index 0000000..cad8ffe
--- /dev/null
+++ b/sama5d27_som1_ek/sama5d27_som1_ek_sdmmc0_drvstr_hi.dtso
@@ -0,0 +1,25 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * sama5d27_som1_ek_sdmmc0_drvstr_hi.dtso - Device Tree file for SAMA5D27 SOM1 EK board
+ * overlay blob for PIO High Drive Strength for SDMMC0
+ *
+ * Copyright (C) 2019 Microchip Technology, Inc.
+ * Author: Eugen Hristev <eugen.hristev@microchip.com>
+ *
+ */
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include "dt-bindings/pinctrl/at91.h"
+#include "sama5d2-pinfunc.h"
+
+&pinctrl_sdmmc0_default {
+	cmd_data {
+		atmel,drive-strength = <ATMEL_PIO_DRVSTR_HI>;
+	};
+	ck_cd_vddsel {
+		atmel,drive-strength = <ATMEL_PIO_DRVSTR_HI>;
+	};
+};
+
-- 
2.7.4

