[U-Boot] [PATCH 4/7] dfu: sf: Read default speed and mode values from DT

Patrick Delaunay
2018-12-10T10:52:43Z

In case of DT boot, don't read default speed and mode for SPI from
CONFIG_*, instead read from DT node.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
---

drivers/dfu/dfu_sf.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/dfu/dfu_sf.c b/drivers/dfu/dfu_sf.c
index 066e767..5e32f80 100644
--- a/drivers/dfu/dfu_sf.c
+++ b/drivers/dfu/dfu_sf.c
@@ -69,11 +69,17 @@ static struct spi_flash *parse_dev(char *devstr)
{
unsigned int bus;
unsigned int cs;
- unsigned int speed = CONFIG_SF_DEFAULT_SPEED;
- unsigned int mode = CONFIG_SF_DEFAULT_MODE;
+ /* In DM mode, defaults will be taken from DT */
+ unsigned int speed = 0;
+ unsigned int mode = 0;
char *s, *endp;
struct spi_flash *dev;

+#ifndef CONFIG_DM_SPI_FLASH
+ speed = CONFIG_SF_DEFAULT_SPEED;
+ mode = CONFIG_SF_DEFAULT_MODE;
+#endif
+
s = strsep(&devstr, ":");
if (!s || !*s || (bus = simple_strtoul(s, &endp, 0), *endp)) {
printf("Invalid SPI bus %s\n", s);
--
2.7.4