[PATCH 14/15] mtd: st_spi_fsm: Provide mask to obtain correct boot device pins
Lee Jones
lee.jones at linaro.org
Wed Mar 26 12:39:28 EDT 2014
From: Christophe Kerello <christophe.kerello at st.com>
This patch adds a mask to be able to get the right boot device selection.
For example:
for STiH415, value = SYSTEM_STATUS398[4:0]
for STiH416, value = SYSTEM_STATUS2598[4:0]
for STiH407, value = SYSTEM_STATUS5561[6:2]
Signed-off-by: Christophe Kerello <christophe.kerello at st.com>
Signed-off-by: Lee Jones <lee.jones at linaro.org>
---
drivers/mtd/devices/st_spi_fsm.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/mtd/devices/st_spi_fsm.c b/drivers/mtd/devices/st_spi_fsm.c
index 9e00173..3ab27c8 100644
--- a/drivers/mtd/devices/st_spi_fsm.c
+++ b/drivers/mtd/devices/st_spi_fsm.c
@@ -2159,6 +2159,7 @@ static void stfsm_fetch_platform_configs(struct platform_device *pdev)
struct regmap *regmap;
uint32_t boot_device_reg;
uint32_t boot_device_spi;
+ uint32_t boot_device_msk;
uint32_t boot_device; /* Value we read from *boot_device_reg */
int ret;
@@ -2183,10 +2184,17 @@ static void stfsm_fetch_platform_configs(struct platform_device *pdev)
if (ret)
goto boot_device_fail;
+ /* Mask to apply on boot_device_reg */
+ ret = of_property_read_u32(np, "st,boot-device-msk", &boot_device_msk);
+ if (ret)
+ goto boot_device_fail;
+
ret = regmap_read(regmap, boot_device_reg, &boot_device);
if (ret)
goto boot_device_fail;
+ boot_device &= boot_device_msk;
+
if (boot_device != boot_device_spi)
fsm->booted_from_spi = false;
--
1.8.3.2
More information about the linux-mtd
mailing list