All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arm: mvebu: Espressobin: Enable 'mtd' command and define SPI NOR partitions
@ 2021-07-16 10:34 Pali Rohár
  2021-07-18  5:05 ` [EXT] " Kostya Porotchkin
  2021-07-19  7:03 ` Stefan Roese
  0 siblings, 2 replies; 3+ messages in thread
From: Pali Rohár @ 2021-07-16 10:34 UTC (permalink / raw)
  To: Stefan Roese, Andre Heider, Gérald Kerma, Konstantin Porotchkin
  Cc: u-boot

U-Boot now supports parsing SPI NOR partitions from Device Tree. So enable
'mtd' command support for Espressobin board and define partition layout in
U-Boot Espressobin DTS file. Access to SPI NOR via 'sf' command is old
method and 'mtd' command is now preferred variant.

From include file remove '#define CONFIG_MTD_PARTITIONS' as this option is
now defined and enabled in defconfig file. This change is required to fix
compile error:

      CC      arch/arm/lib/asm-offsets.s
    In file included from include/config.h:4,
                     from include/common.h:16,
                     from lib/asm-offsets.c:14:
    include/configs/mvebu_armada-37xx.h:63: warning: "CONFIG_MTD_PARTITIONS" redefined
     #define CONFIG_MTD_PARTITIONS  /* required for UBI partition support */

    In file included from ././include/linux/kconfig.h:4,
                     from <command-line>:
    include/generated/autoconf.h:44: note: this is the location of the previous definition
     #define CONFIG_MTD_PARTITIONS 1

After enabling support for mtd command, output from 'mtd list' on
Espressobin board is:

    => mtd list
    List of MTD devices:
    * w25q32dw
      - device: spi-flash@0
      - parent: spi@10600
      - driver: jedec_spi_nor
      - path: /soc/internal-regs/spi@10600/spi-flash@0
      - type: NOR flash
      - block size: 0x1000 bytes
      - min I/O: 0x1 bytes
      - 0x000000000000-0x000000400000 : "w25q32dw"
              - 0x000000000000-0x0000003f0000 : "firmware"
              - 0x0000003f0000-0x000000400000 : "u-boot-env"
    =>

Signed-off-by: Pali Rohár <pali@kernel.org>
---
 arch/arm/dts/armada-3720-espressobin.dts    | 18 ++++++++++++++++++
 configs/mvebu_espressobin-88f3720_defconfig |  3 +++
 include/configs/mvebu_armada-37xx.h         |  5 -----
 3 files changed, 21 insertions(+), 5 deletions(-)

diff --git a/arch/arm/dts/armada-3720-espressobin.dts b/arch/arm/dts/armada-3720-espressobin.dts
index d86d8f0b63cf..cba6139be690 100644
--- a/arch/arm/dts/armada-3720-espressobin.dts
+++ b/arch/arm/dts/armada-3720-espressobin.dts
@@ -164,6 +164,24 @@
 		reg = <0>; /* Chip select 0 */
 		spi-max-frequency = <50000000>;
 		m25p,fast-read;
+
+#ifdef CONFIG_ENV_IS_IN_SPI_FLASH
+		partitions {
+			compatible = "fixed-partitions";
+			#address-cells = <1>;
+			#size-cells = <1>;
+
+			partition@firmware {
+				reg = <0 CONFIG_ENV_OFFSET>;
+				label = "firmware";
+			};
+
+			partition@u-boot-env {
+				reg = <CONFIG_ENV_OFFSET CONFIG_ENV_SIZE>;
+				label = "u-boot-env";
+			};
+		};
+#endif
 	};
 };
 
diff --git a/configs/mvebu_espressobin-88f3720_defconfig b/configs/mvebu_espressobin-88f3720_defconfig
index dc199cfe503b..78796115cd38 100644
--- a/configs/mvebu_espressobin-88f3720_defconfig
+++ b/configs/mvebu_espressobin-88f3720_defconfig
@@ -28,6 +28,7 @@ CONFIG_BOARD_LATE_INIT=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_I2C=y
 CONFIG_CMD_MMC=y
+CONFIG_CMD_MTD=y
 CONFIG_CMD_PCI=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_USB=y
@@ -54,6 +55,7 @@ CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_SDMA=y
 CONFIG_MMC_SDHCI_XENON=y
 CONFIG_MTD=y
+CONFIG_DM_MTD=y
 CONFIG_SF_DEFAULT_MODE=0
 CONFIG_SF_DEFAULT_SPEED=40000000
 CONFIG_SPI_FLASH_GIGADEVICE=y
@@ -62,6 +64,7 @@ CONFIG_SPI_FLASH_MACRONIX=y
 CONFIG_SPI_FLASH_SPANSION=y
 CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SPI_FLASH_WINBOND=y
+CONFIG_SPI_FLASH_MTD=y
 CONFIG_PHY_MARVELL=y
 CONFIG_PHY_GIGE=y
 CONFIG_E1000=y
diff --git a/include/configs/mvebu_armada-37xx.h b/include/configs/mvebu_armada-37xx.h
index a2bea2947dd1..c8c34d7d92dd 100644
--- a/include/configs/mvebu_armada-37xx.h
+++ b/include/configs/mvebu_armada-37xx.h
@@ -57,11 +57,6 @@
 #define CONFIG_I2C_MV
 #define CONFIG_SYS_I2C_SLAVE		0x0
 
-/*
- * SPI Flash configuration
- */
-#define CONFIG_MTD_PARTITIONS		/* required for UBI partition support */
-
 /*
  * Environment
  */
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* RE: [EXT] [PATCH] arm: mvebu: Espressobin: Enable 'mtd' command and define SPI NOR partitions
  2021-07-16 10:34 [PATCH] arm: mvebu: Espressobin: Enable 'mtd' command and define SPI NOR partitions Pali Rohár
@ 2021-07-18  5:05 ` Kostya Porotchkin
  2021-07-19  7:03 ` Stefan Roese
  1 sibling, 0 replies; 3+ messages in thread
From: Kostya Porotchkin @ 2021-07-18  5:05 UTC (permalink / raw)
  To: Pali Rohár, Stefan Roese, Andre Heider, Gérald Kerma; +Cc: u-boot

Hi, Pali,

> -----Original Message-----
> From: Pali Rohár <pali@kernel.org>
> Sent: Friday, July 16, 2021 13:35
> To: Stefan Roese <sr@denx.de>; Andre Heider <a.heider@gmail.com>; Gérald
> Kerma <gerald@gk2.net>; Kostya Porotchkin <kostap@marvell.com>
> Cc: u-boot@lists.denx.de
> Subject: [EXT] [PATCH] arm: mvebu: Espressobin: Enable 'mtd' command and
> define SPI NOR partitions
> 
> External Email
> 
> ----------------------------------------------------------------------
> U-Boot now supports parsing SPI NOR partitions from Device Tree. So enable
> 'mtd' command support for Espressobin board and define partition layout in U-
> Boot Espressobin DTS file. Access to SPI NOR via 'sf' command is old method
> and 'mtd' command is now preferred variant.
> 
> From include file remove '#define CONFIG_MTD_PARTITIONS' as this option is
> now defined and enabled in defconfig file. This change is required to fix compile
> error:
> 
>       CC      arch/arm/lib/asm-offsets.s
>     In file included from include/config.h:4,
>                      from include/common.h:16,
>                      from lib/asm-offsets.c:14:
>     include/configs/mvebu_armada-37xx.h:63: warning:
> "CONFIG_MTD_PARTITIONS" redefined
>      #define CONFIG_MTD_PARTITIONS  /* required for UBI partition support */
> 
>     In file included from ././include/linux/kconfig.h:4,
>                      from <command-line>:
>     include/generated/autoconf.h:44: note: this is the location of the previous
> definition
>      #define CONFIG_MTD_PARTITIONS 1
> 
> After enabling support for mtd command, output from 'mtd list' on Espressobin
> board is:
> 
>     => mtd list
>     List of MTD devices:
>     * w25q32dw
>       - device: spi-flash@0
>       - parent: spi@10600
>       - driver: jedec_spi_nor
>       - path: /soc/internal-regs/spi@10600/spi-flash@0
>       - type: NOR flash
>       - block size: 0x1000 bytes
>       - min I/O: 0x1 bytes
>       - 0x000000000000-0x000000400000 : "w25q32dw"
>               - 0x000000000000-0x0000003f0000 : "firmware"
>               - 0x0000003f0000-0x000000400000 : "u-boot-env"
>     =>
> 
> Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Konstantin Porotchkin <kostap@marvell.com>

Regards
Kosta
> ---
>  arch/arm/dts/armada-3720-espressobin.dts    | 18 ++++++++++++++++++
>  configs/mvebu_espressobin-88f3720_defconfig |  3 +++
>  include/configs/mvebu_armada-37xx.h         |  5 -----
>  3 files changed, 21 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/arm/dts/armada-3720-espressobin.dts
> b/arch/arm/dts/armada-3720-espressobin.dts
> index d86d8f0b63cf..cba6139be690 100644
> --- a/arch/arm/dts/armada-3720-espressobin.dts
> +++ b/arch/arm/dts/armada-3720-espressobin.dts
> @@ -164,6 +164,24 @@
>  		reg = <0>; /* Chip select 0 */
>  		spi-max-frequency = <50000000>;
>  		m25p,fast-read;
> +
> +#ifdef CONFIG_ENV_IS_IN_SPI_FLASH
> +		partitions {
> +			compatible = "fixed-partitions";
> +			#address-cells = <1>;
> +			#size-cells = <1>;
> +
> +			partition@firmware {
> +				reg = <0 CONFIG_ENV_OFFSET>;
> +				label = "firmware";
> +			};
> +
> +			partition@u-boot-env {
> +				reg = <CONFIG_ENV_OFFSET
> CONFIG_ENV_SIZE>;
> +				label = "u-boot-env";
> +			};
> +		};
> +#endif
>  	};
>  };
> 
> diff --git a/configs/mvebu_espressobin-88f3720_defconfig
> b/configs/mvebu_espressobin-88f3720_defconfig
> index dc199cfe503b..78796115cd38 100644
> --- a/configs/mvebu_espressobin-88f3720_defconfig
> +++ b/configs/mvebu_espressobin-88f3720_defconfig
> @@ -28,6 +28,7 @@ CONFIG_BOARD_LATE_INIT=y  CONFIG_CMD_GPIO=y
> CONFIG_CMD_I2C=y  CONFIG_CMD_MMC=y
> +CONFIG_CMD_MTD=y
>  CONFIG_CMD_PCI=y
>  CONFIG_CMD_SPI=y
>  CONFIG_CMD_USB=y
> @@ -54,6 +55,7 @@ CONFIG_MMC_SDHCI=y
>  CONFIG_MMC_SDHCI_SDMA=y
>  CONFIG_MMC_SDHCI_XENON=y
>  CONFIG_MTD=y
> +CONFIG_DM_MTD=y
>  CONFIG_SF_DEFAULT_MODE=0
>  CONFIG_SF_DEFAULT_SPEED=40000000
>  CONFIG_SPI_FLASH_GIGADEVICE=y
> @@ -62,6 +64,7 @@ CONFIG_SPI_FLASH_MACRONIX=y
> CONFIG_SPI_FLASH_SPANSION=y  CONFIG_SPI_FLASH_STMICRO=y
> CONFIG_SPI_FLASH_WINBOND=y
> +CONFIG_SPI_FLASH_MTD=y
>  CONFIG_PHY_MARVELL=y
>  CONFIG_PHY_GIGE=y
>  CONFIG_E1000=y
> diff --git a/include/configs/mvebu_armada-37xx.h
> b/include/configs/mvebu_armada-37xx.h
> index a2bea2947dd1..c8c34d7d92dd 100644
> --- a/include/configs/mvebu_armada-37xx.h
> +++ b/include/configs/mvebu_armada-37xx.h
> @@ -57,11 +57,6 @@
>  #define CONFIG_I2C_MV
>  #define CONFIG_SYS_I2C_SLAVE		0x0
> 
> -/*
> - * SPI Flash configuration
> - */
> -#define CONFIG_MTD_PARTITIONS		/* required for UBI partition
> support */
> -
>  /*
>   * Environment
>   */
> --
> 2.20.1


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] arm: mvebu: Espressobin: Enable 'mtd' command and define SPI NOR partitions
  2021-07-16 10:34 [PATCH] arm: mvebu: Espressobin: Enable 'mtd' command and define SPI NOR partitions Pali Rohár
  2021-07-18  5:05 ` [EXT] " Kostya Porotchkin
@ 2021-07-19  7:03 ` Stefan Roese
  1 sibling, 0 replies; 3+ messages in thread
From: Stefan Roese @ 2021-07-19  7:03 UTC (permalink / raw)
  To: Pali Rohár, Andre Heider, Gérald Kerma, Konstantin Porotchkin
  Cc: u-boot

On 16.07.21 12:34, Pali Rohár wrote:
> U-Boot now supports parsing SPI NOR partitions from Device Tree. So enable
> 'mtd' command support for Espressobin board and define partition layout in
> U-Boot Espressobin DTS file. Access to SPI NOR via 'sf' command is old
> method and 'mtd' command is now preferred variant.
> 
>  From include file remove '#define CONFIG_MTD_PARTITIONS' as this option is
> now defined and enabled in defconfig file. This change is required to fix
> compile error:
> 
>        CC      arch/arm/lib/asm-offsets.s
>      In file included from include/config.h:4,
>                       from include/common.h:16,
>                       from lib/asm-offsets.c:14:
>      include/configs/mvebu_armada-37xx.h:63: warning: "CONFIG_MTD_PARTITIONS" redefined
>       #define CONFIG_MTD_PARTITIONS  /* required for UBI partition support */
> 
>      In file included from ././include/linux/kconfig.h:4,
>                       from <command-line>:
>      include/generated/autoconf.h:44: note: this is the location of the previous definition
>       #define CONFIG_MTD_PARTITIONS 1
> 
> After enabling support for mtd command, output from 'mtd list' on
> Espressobin board is:
> 
>      => mtd list
>      List of MTD devices:
>      * w25q32dw
>        - device: spi-flash@0
>        - parent: spi@10600
>        - driver: jedec_spi_nor
>        - path: /soc/internal-regs/spi@10600/spi-flash@0
>        - type: NOR flash
>        - block size: 0x1000 bytes
>        - min I/O: 0x1 bytes
>        - 0x000000000000-0x000000400000 : "w25q32dw"
>                - 0x000000000000-0x0000003f0000 : "firmware"
>                - 0x0000003f0000-0x000000400000 : "u-boot-env"
>      =>
> 
> Signed-off-by: Pali Rohár <pali@kernel.org>

Reviewed-by: Stefan Roese <sr@denx.de>

Thanks,
Stefan

> ---
>   arch/arm/dts/armada-3720-espressobin.dts    | 18 ++++++++++++++++++
>   configs/mvebu_espressobin-88f3720_defconfig |  3 +++
>   include/configs/mvebu_armada-37xx.h         |  5 -----
>   3 files changed, 21 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/arm/dts/armada-3720-espressobin.dts b/arch/arm/dts/armada-3720-espressobin.dts
> index d86d8f0b63cf..cba6139be690 100644
> --- a/arch/arm/dts/armada-3720-espressobin.dts
> +++ b/arch/arm/dts/armada-3720-espressobin.dts
> @@ -164,6 +164,24 @@
>   		reg = <0>; /* Chip select 0 */
>   		spi-max-frequency = <50000000>;
>   		m25p,fast-read;
> +
> +#ifdef CONFIG_ENV_IS_IN_SPI_FLASH
> +		partitions {
> +			compatible = "fixed-partitions";
> +			#address-cells = <1>;
> +			#size-cells = <1>;
> +
> +			partition@firmware {
> +				reg = <0 CONFIG_ENV_OFFSET>;
> +				label = "firmware";
> +			};
> +
> +			partition@u-boot-env {
> +				reg = <CONFIG_ENV_OFFSET CONFIG_ENV_SIZE>;
> +				label = "u-boot-env";
> +			};
> +		};
> +#endif
>   	};
>   };
>   
> diff --git a/configs/mvebu_espressobin-88f3720_defconfig b/configs/mvebu_espressobin-88f3720_defconfig
> index dc199cfe503b..78796115cd38 100644
> --- a/configs/mvebu_espressobin-88f3720_defconfig
> +++ b/configs/mvebu_espressobin-88f3720_defconfig
> @@ -28,6 +28,7 @@ CONFIG_BOARD_LATE_INIT=y
>   CONFIG_CMD_GPIO=y
>   CONFIG_CMD_I2C=y
>   CONFIG_CMD_MMC=y
> +CONFIG_CMD_MTD=y
>   CONFIG_CMD_PCI=y
>   CONFIG_CMD_SPI=y
>   CONFIG_CMD_USB=y
> @@ -54,6 +55,7 @@ CONFIG_MMC_SDHCI=y
>   CONFIG_MMC_SDHCI_SDMA=y
>   CONFIG_MMC_SDHCI_XENON=y
>   CONFIG_MTD=y
> +CONFIG_DM_MTD=y
>   CONFIG_SF_DEFAULT_MODE=0
>   CONFIG_SF_DEFAULT_SPEED=40000000
>   CONFIG_SPI_FLASH_GIGADEVICE=y
> @@ -62,6 +64,7 @@ CONFIG_SPI_FLASH_MACRONIX=y
>   CONFIG_SPI_FLASH_SPANSION=y
>   CONFIG_SPI_FLASH_STMICRO=y
>   CONFIG_SPI_FLASH_WINBOND=y
> +CONFIG_SPI_FLASH_MTD=y
>   CONFIG_PHY_MARVELL=y
>   CONFIG_PHY_GIGE=y
>   CONFIG_E1000=y
> diff --git a/include/configs/mvebu_armada-37xx.h b/include/configs/mvebu_armada-37xx.h
> index a2bea2947dd1..c8c34d7d92dd 100644
> --- a/include/configs/mvebu_armada-37xx.h
> +++ b/include/configs/mvebu_armada-37xx.h
> @@ -57,11 +57,6 @@
>   #define CONFIG_I2C_MV
>   #define CONFIG_SYS_I2C_SLAVE		0x0
>   
> -/*
> - * SPI Flash configuration
> - */
> -#define CONFIG_MTD_PARTITIONS		/* required for UBI partition support */
> -
>   /*
>    * Environment
>    */
> 


Viele Grüße,
Stefan

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr@denx.de

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-07-19  7:03 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-16 10:34 [PATCH] arm: mvebu: Espressobin: Enable 'mtd' command and define SPI NOR partitions Pali Rohár
2021-07-18  5:05 ` [EXT] " Kostya Porotchkin
2021-07-19  7:03 ` Stefan Roese

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.