diff mbox

[U-Boot,1/4] arm: lager: Add support QSPI device and enable boot from SPI flash

Message ID 1388021668-13361-1-git-send-email-nobuhiro.iwamatsu.yj@renesas.com
State Superseded
Delegated to: Nobuhiro Iwamatsu
Headers show

Commit Message

Nobuhiro Iwamatsu Dec. 26, 2013, 1:34 a.m. UTC
This supports SH-QSPI device on lager board, and enable booting from
SPI flash.

Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
---
 include/configs/lager.h | 32 +++++++++++++++++++++++++++++---
 1 file changed, 29 insertions(+), 3 deletions(-)

Comments

Jagan Teki Dec. 29, 2013, 9:36 a.m. UTC | #1
On Thu, Dec 26, 2013 at 7:04 AM, Nobuhiro Iwamatsu
<nobuhiro.iwamatsu.yj@renesas.com> wrote:
> This supports SH-QSPI device on lager board, and enable booting from
> SPI flash.
>
> Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
> Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
> ---
>  include/configs/lager.h | 32 +++++++++++++++++++++++++++++---
>  1 file changed, 29 insertions(+), 3 deletions(-)
>
> diff --git a/include/configs/lager.h b/include/configs/lager.h
> index 8932825..097ace3 100644
> --- a/include/configs/lager.h
> +++ b/include/configs/lager.h
> @@ -34,7 +34,13 @@
>  #define CONFIG_CMD_DHCP
>  #define CONFIG_CMD_NFS
>  #define CONFIG_CMD_BOOTZ
> +
> +#if defined(CONFIG_SYS_USE_BOOT_NORFLASH)
>  #define        CONFIG_CMD_FLASH
> +#else
> +#define CONFIG_CMD_SF
> +#define CONFIG_CMD_SPI
> +#endif
>
>  #define        CONFIG_CMDLINE_TAG
>  #define        CONFIG_SETUP_MEMORY_TAGS
> @@ -104,6 +110,7 @@
>  #define CONFIG_SYS_GBL_DATA_SIZE       (256)
>  #define CONFIG_SYS_BOOTMAPSZ           (8 * 1024 * 1024)
>
> +#if defined(CONFIG_SYS_USE_BOOT_NORFLASH)
>  /* USE NOR FLASH */
>  #define CONFIG_SYS_TEXT_BASE   0x00000000
>  #define CONFIG_SYS_FLASH_CFI
> @@ -124,13 +131,32 @@
>
>  /* ENV setting */
>  #define CONFIG_ENV_IS_IN_FLASH
> -#define CONFIG_ENV_OVERWRITE   1
> -#define CONFIG_ENV_SECT_SIZE   (256 * 1024)
>  #define CONFIG_ENV_ADDR                (CONFIG_SYS_FLASH_BASE + \
>                                  CONFIG_SYS_MONITOR_LEN)
> +#define CONFIG_ENV_SIZE_REDUND (CONFIG_SYS_MONITOR_LEN)
> +
> +#else /* CONFIG_SYS_USE_BOOT_NORFLASH */
> +
> +/* USE SPI */
> +#define CONFIG_SYS_TEXT_BASE   0xE8080000
I think this macro is not part of SPI better to move away from SPI macro's area.

> +#define CONFIG_SPI
> +#define CONFIG_SPI_FLASH_BAR
> +#define CONFIG_SH_QSPI
> +#define CONFIG_SPI_FLASH
> +#define CONFIG_SPI_FLASH_SPANSION
> +#define CONFIG_SYS_NO_FLASH
> +#define CONFIG_SH_QSPI_BASE    0xE6B10000
Can you define this in driver itself? i guess this base is required
only in driver.

> +
> +/* ENV setting */
> +#define CONFIG_ENV_IS_IN_SPI_FLASH
> +#define CONFIG_ENV_ADDR                0xC0000
> +#endif
> +
> +/* Common ENV setting */
> +#define CONFIG_ENV_OVERWRITE
> +#define CONFIG_ENV_SECT_SIZE   (256 * 1024)
>  #define CONFIG_ENV_OFFSET      (CONFIG_ENV_ADDR)
>  #define CONFIG_ENV_SIZE                (CONFIG_ENV_SECT_SIZE)
> -#define CONFIG_ENV_SIZE_REDUND (CONFIG_SYS_MONITOR_LEN)
>
>  /* SH Ether */
Nobuhiro Iwamatsu Dec. 31, 2013, 12:56 p.m. UTC | #2
Hi,

Thnaks for your comment.

2013/12/29 Jagan Teki <jagannadh.teki@gmail.com>:
> On Thu, Dec 26, 2013 at 7:04 AM, Nobuhiro Iwamatsu
> <nobuhiro.iwamatsu.yj@renesas.com> wrote:
>> This supports SH-QSPI device on lager board, and enable booting from
>> SPI flash.
>>
>> Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
>> Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
>> ---
>>  include/configs/lager.h | 32 +++++++++++++++++++++++++++++---
>>  1 file changed, 29 insertions(+), 3 deletions(-)
>>
>> diff --git a/include/configs/lager.h b/include/configs/lager.h
>> index 8932825..097ace3 100644
>> --- a/include/configs/lager.h
>> +++ b/include/configs/lager.h
>> @@ -34,7 +34,13 @@
>>  #define CONFIG_CMD_DHCP
>>  #define CONFIG_CMD_NFS
>>  #define CONFIG_CMD_BOOTZ
>> +
>> +#if defined(CONFIG_SYS_USE_BOOT_NORFLASH)
>>  #define        CONFIG_CMD_FLASH
>> +#else
>> +#define CONFIG_CMD_SF
>> +#define CONFIG_CMD_SPI
>> +#endif
>>
>>  #define        CONFIG_CMDLINE_TAG
>>  #define        CONFIG_SETUP_MEMORY_TAGS
>> @@ -104,6 +110,7 @@
>>  #define CONFIG_SYS_GBL_DATA_SIZE       (256)
>>  #define CONFIG_SYS_BOOTMAPSZ           (8 * 1024 * 1024)
>>
>> +#if defined(CONFIG_SYS_USE_BOOT_NORFLASH)
>>  /* USE NOR FLASH */
>>  #define CONFIG_SYS_TEXT_BASE   0x00000000
>>  #define CONFIG_SYS_FLASH_CFI
>> @@ -124,13 +131,32 @@
>>
>>  /* ENV setting */
>>  #define CONFIG_ENV_IS_IN_FLASH
>> -#define CONFIG_ENV_OVERWRITE   1
>> -#define CONFIG_ENV_SECT_SIZE   (256 * 1024)
>>  #define CONFIG_ENV_ADDR                (CONFIG_SYS_FLASH_BASE + \
>>                                  CONFIG_SYS_MONITOR_LEN)
>> +#define CONFIG_ENV_SIZE_REDUND (CONFIG_SYS_MONITOR_LEN)
>> +
>> +#else /* CONFIG_SYS_USE_BOOT_NORFLASH */
>> +
>> +/* USE SPI */
>> +#define CONFIG_SYS_TEXT_BASE   0xE8080000
> I think this macro is not part of SPI better to move away from SPI macro's area.

OK, I will move to first CONFIG_SYS_USE_BOOT_NORFLASH.

>
>> +#define CONFIG_SPI
>> +#define CONFIG_SPI_FLASH_BAR
>> +#define CONFIG_SH_QSPI
>> +#define CONFIG_SPI_FLASH
>> +#define CONFIG_SPI_FLASH_SPANSION
>> +#define CONFIG_SYS_NO_FLASH
>> +#define CONFIG_SH_QSPI_BASE    0xE6B10000
> Can you define this in driver itself? i guess this base is required
> only in driver.

You are right. I remove this line and move as a definition of the CPU.

>
> --
> Thanks,
> Jagan.

Best regards,
  Nobuhiro
diff mbox

Patch

diff --git a/include/configs/lager.h b/include/configs/lager.h
index 8932825..097ace3 100644
--- a/include/configs/lager.h
+++ b/include/configs/lager.h
@@ -34,7 +34,13 @@ 
 #define CONFIG_CMD_DHCP
 #define CONFIG_CMD_NFS
 #define CONFIG_CMD_BOOTZ
+
+#if defined(CONFIG_SYS_USE_BOOT_NORFLASH)
 #define	CONFIG_CMD_FLASH
+#else
+#define CONFIG_CMD_SF
+#define CONFIG_CMD_SPI
+#endif
 
 #define	CONFIG_CMDLINE_TAG
 #define	CONFIG_SETUP_MEMORY_TAGS
@@ -104,6 +110,7 @@ 
 #define CONFIG_SYS_GBL_DATA_SIZE	(256)
 #define CONFIG_SYS_BOOTMAPSZ		(8 * 1024 * 1024)
 
+#if defined(CONFIG_SYS_USE_BOOT_NORFLASH)
 /* USE NOR FLASH */
 #define CONFIG_SYS_TEXT_BASE	0x00000000
 #define CONFIG_SYS_FLASH_CFI
@@ -124,13 +131,32 @@ 
 
 /* ENV setting */
 #define CONFIG_ENV_IS_IN_FLASH
-#define CONFIG_ENV_OVERWRITE	1
-#define CONFIG_ENV_SECT_SIZE	(256 * 1024)
 #define CONFIG_ENV_ADDR		(CONFIG_SYS_FLASH_BASE + \
 				 CONFIG_SYS_MONITOR_LEN)
+#define CONFIG_ENV_SIZE_REDUND	(CONFIG_SYS_MONITOR_LEN)
+
+#else /* CONFIG_SYS_USE_BOOT_NORFLASH */
+
+/* USE SPI */
+#define CONFIG_SYS_TEXT_BASE	0xE8080000
+#define CONFIG_SPI
+#define CONFIG_SPI_FLASH_BAR
+#define CONFIG_SH_QSPI
+#define CONFIG_SPI_FLASH
+#define CONFIG_SPI_FLASH_SPANSION
+#define CONFIG_SYS_NO_FLASH
+#define CONFIG_SH_QSPI_BASE	0xE6B10000
+
+/* ENV setting */
+#define CONFIG_ENV_IS_IN_SPI_FLASH
+#define CONFIG_ENV_ADDR		0xC0000
+#endif
+
+/* Common ENV setting */
+#define CONFIG_ENV_OVERWRITE
+#define CONFIG_ENV_SECT_SIZE	(256 * 1024)
 #define CONFIG_ENV_OFFSET	(CONFIG_ENV_ADDR)
 #define CONFIG_ENV_SIZE		(CONFIG_ENV_SECT_SIZE)
-#define CONFIG_ENV_SIZE_REDUND	(CONFIG_SYS_MONITOR_LEN)
 
 /* SH Ether */
 #define	CONFIG_NET_MULTI