[U-Boot] [PATCH 6/6] mx6q: mx6qsabrelite: Provide defaults for placing environment in serial flash

Eric Nelson
2012-01-20T13:43:27Z

On 01/19/2012 08:27 PM, Jason Hui wrote:
> On Wed, Jan 18, 2012 at 6:09 AM, Eric Nelson
> <eric.nelson@boundarydevices.com> wrote:
>> Signed-off-by: Eric Nelson<eric.nelson@boundarydevices.com>
>> ---
>> include/configs/mx6qsabrelite.h | 12 +++++++++++-
>> 1 files changed, 11 insertions(+), 1 deletions(-)
>>
>> diff --git a/include/configs/mx6qsabrelite.h b/include/configs/mx6qsabrelite.h
>> index 44b028a..160894c 100644
>> --- a/include/configs/mx6qsabrelite.h
>> +++ b/include/configs/mx6qsabrelite.h
>> @@ -174,10 +174,20 @@
>> /* FLASH and environment organization */
>> #define CONFIG_SYS_NO_FLASH
>>
>> -#define CONFIG_ENV_OFFSET (6 * 64 * 1024)
>> #define CONFIG_ENV_SIZE (8 * 1024)
>> +
>> #define CONFIG_ENV_IS_IN_MMC
>> +/* #define CONFIG_ENV_IS_IN_SPI_FLASH */
>
> From the commit log, it says the default is in serial flash, but
> apparently in the code the env is default to MMC, which mismatch.
> please fix it.
>

You're asking that I change the comment not the default, right?

>> +
>> +#if defined(CONFIG_ENV_IS_IN_MMC)
>> +#define CONFIG_ENV_OFFSET (6 * 64 * 1024)
>> #define CONFIG_SYS_MMC_ENV_DEV 0
>> +#elif defined(CONFIG_ENV_IS_IN_SPI_FLASH)
>> +#define CONFIG_ENV_OFFSET (768 * 1024)
>> +#define CONFIG_ENV_SECT_SIZE (8 * 1024)
>> +#define CONFIG_ENV_SPI_CS 0x5300
>
> I'm wondering how the CONFIG_ENV_SPI_CS could be 0x5300? Vague?
>

Please review the updated patch below and see whether the
expanded commit message fixes things.

Regards,

Eric
commit 0443433bf80c5203a8ce67fb4faaf4032e398e1d
Author: Eric Nelson <eric.nelson@boundarydevices.com>
Date: Tue Jan 17 14:11:54 2012 -0700

mx6q: mx6qsabrelite: Provide macros for environment in serial flash

The default settings store the persistent environment on SD card
and not serial flash (SPI NOR).

To use SPI NOR to save the environment instead of SD card, edit
include/configs/mx6qsabrelite.h and

- undefine CONFIG_ENV_IS_IN_MMC
- define CONFIG_ENV_IS_IN_SPI_FLASH

Note that the mxc_spi driver (drivers/spi/mxc_spi.c) uses the
Chip-Select variable (CONFIG_ENV_SPI_CS) to allow the use of
a GPIO if the chip-select is greater than 3. The low 8-bits
set the chip select number and bits 8-15 set the GPIO number.

The GPIO used on Sabre Lite is GP3:19 == 83.

Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>

diff --git a/include/configs/mx6qsabrelite.h b/include/configs/mx6qsabrelite.h
index e34f108..024a94c 100644
--- a/include/configs/mx6qsabrelite.h
+++ b/include/configs/mx6qsabrelite.h
@@ -174,10 +174,20 @@
/* FLASH and environment organization */
#define CONFIG_SYS_NO_FLASH

-#define CONFIG_ENV_OFFSET (6 * 64 * 1024)
#define CONFIG_ENV_SIZE (8 * 1024)
+
#define CONFIG_ENV_IS_IN_MMC
+/* #define CONFIG_ENV_IS_IN_SPI_FLASH */
+
+#if defined(CONFIG_ENV_IS_IN_MMC)
+#define CONFIG_ENV_OFFSET (6 * 64 * 1024)
#define CONFIG_SYS_MMC_ENV_DEV 0
+#elif defined(CONFIG_ENV_IS_IN_SPI_FLASH)
+#define CONFIG_ENV_OFFSET (768 * 1024)
+#define CONFIG_ENV_SECT_SIZE (8 * 1024)
+#define CONFIG_ENV_SPI_CS (0|(83<<8))
+#define CONFIG_ENV_SPI_MODE SPI_MODE_0
+#endif

#define CONFIG_OF_LIBFDT