diff mbox

[U-Boot,v6,16/21] spi: Remove dual flash options/flags

Message ID 1479268992-26811-17-git-send-email-jagan@openedev.com
State Superseded
Delegated to: Jagannadha Sutradharudu Teki
Headers show

Commit Message

Jagan Teki Nov. 16, 2016, 4:03 a.m. UTC
Dual flash code in spi are usually take the spi controller
to work with dual connected flash devices. Usually these
dual connection operation's are referred to flash controller
protocol rather with spi controller protocol, these are still
present in flash side for the usage of spi-nor controllers.

So, this patch remove the dual_flash options or flags in sf
which are triggered from spi controller side.

Cc: Bin Meng <bmeng.cn@gmail.com>
Cc: York Sun <york.sun@nxp.com>
Cc: Vignesh R <vigneshr@ti.com>
Cc: Mugunthan V N <mugunthanvnm@ti.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Signed-off-by: Jagan Teki <jagan@openedev.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Jagan Teki <jagan@openedev.com>
---
 drivers/mtd/spi/sf.c        | 4 ----
 drivers/mtd/spi/spi_flash.c | 1 -
 include/spi.h               | 6 ------
 3 files changed, 11 deletions(-)

Comments

Siva Durga Prasad Paladugu Nov. 16, 2016, 6:57 a.m. UTC | #1
Hi,

> -----Original Message-----
> From: Jagan Teki [mailto:jagan@openedev.com]
> Sent: Wednesday, November 16, 2016 9:33 AM
> To: u-boot@lists.denx.de
> Cc: Jagan Teki <jagan@openedev.com>; Bin Meng <bmeng.cn@gmail.com>;
> York Sun <york.sun@nxp.com>; Vignesh R <vigneshr@ti.com>; Mugunthan V
> N <mugunthanvnm@ti.com>; Michal Simek <michal.simek@xilinx.com>; Siva
> Durga Prasad Paladugu <sivadur@xilinx.com>
> Subject: [PATCH v6 16/21] spi: Remove dual flash options/flags
> 
> Dual flash code in spi are usually take the spi controller to work with dual
> connected flash devices. Usually these dual connection operation's are
> referred to flash controller protocol rather with spi controller protocol, these
> are still present in flash side for the usage of spi-nor controllers.
> 
> So, this patch remove the dual_flash options or flags in sf which are
> triggered from spi controller side.

How are you going to handle this? any followup patches on this?
This will break for some who are using dual flash till now. Isnt it?

Regards,
Siva
> 
> Cc: Bin Meng <bmeng.cn@gmail.com>
> Cc: York Sun <york.sun@nxp.com>
> Cc: Vignesh R <vigneshr@ti.com>
> Cc: Mugunthan V N <mugunthanvnm@ti.com>
> Cc: Michal Simek <michal.simek@xilinx.com>
> Cc: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
> Signed-off-by: Jagan Teki <jagan@openedev.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> Reviewed-by: Jagan Teki <jagan@openedev.com>
> ---
>  drivers/mtd/spi/sf.c        | 4 ----
>  drivers/mtd/spi/spi_flash.c | 1 -
>  include/spi.h               | 6 ------
>  3 files changed, 11 deletions(-)
> 
> diff --git a/drivers/mtd/spi/sf.c b/drivers/mtd/spi/sf.c index
> 664e860..d5e175c 100644
> --- a/drivers/mtd/spi/sf.c
> +++ b/drivers/mtd/spi/sf.c
> @@ -18,10 +18,6 @@ static int spi_flash_read_write(struct spi_slave *spi,
>  	unsigned long flags = SPI_XFER_BEGIN;
>  	int ret;
> 
> -#ifdef CONFIG_SF_DUAL_FLASH
> -	if (spi->flags & SPI_XFER_U_PAGE)
> -		flags |= SPI_XFER_U_PAGE;
> -#endif
>  	if (data_len == 0)
>  		flags |= SPI_XFER_END;
> 
> diff --git a/drivers/mtd/spi/spi_flash.c b/drivers/mtd/spi/spi_flash.c index
> cfecd53..d3a9975 100644
> --- a/drivers/mtd/spi/spi_flash.c
> +++ b/drivers/mtd/spi/spi_flash.c
> @@ -1016,7 +1016,6 @@ int spi_flash_scan(struct spi_flash *flash)
> 
>  	flash->name = info->name;
>  	flash->memory_map = spi->memory_map;
> -	flash->dual_flash = spi->option;
> 
>  	if (info->flags & SST_WR)
>  		flash->flags |= SNOR_F_SST_WR;
> diff --git a/include/spi.h b/include/spi.h index 4c17983..deb65ef 100644
> --- a/include/spi.h
> +++ b/include/spi.h
> @@ -30,10 +30,6 @@
>  #define SPI_RX_DUAL	BIT(12)			/* receive with 2 wires */
>  #define SPI_RX_QUAD	BIT(13)			/* receive with 4 wires */
> 
> -/* SPI bus connection options - see enum spi_dual_flash */
> -#define SPI_CONN_DUAL_SHARED		(1 << 0)
> -#define SPI_CONN_DUAL_SEPARATED	(1 << 1)
> -
>  /* Header byte that marks the start of the message */
>  #define SPI_PREAMBLE_END_BYTE	0xec
> 
> @@ -93,7 +89,6 @@ struct dm_spi_slave_platdata {
>   * @max_write_size:	If non-zero, the maximum number of bytes which can
>   *			be written at once, excluding command bytes.
>   * @memory_map:		Address of read-only SPI flash access.
> - * @option:		Varies SPI bus options - separate, shared bus.
>   * @flags:		Indication of SPI flags.
>   */
>  struct spi_slave {
> @@ -117,7 +112,6 @@ struct spi_slave {
>  #define SPI_XFER_ONCE		(SPI_XFER_BEGIN | SPI_XFER_END)
>  #define SPI_XFER_MMAP		BIT(2)	/* Memory Mapped start */
>  #define SPI_XFER_MMAP_END	BIT(3)	/* Memory Mapped End */
> -#define SPI_XFER_U_PAGE		BIT(4)
>  };
> 
>  /**
> --
> 1.9.1
Jagan Teki Nov. 16, 2016, 1:52 p.m. UTC | #2
On Wed, Nov 16, 2016 at 12:27 PM, Siva Durga Prasad Paladugu
<siva.durga.paladugu@xilinx.com> wrote:
> Hi,
>
>> -----Original Message-----
>> From: Jagan Teki [mailto:jagan@openedev.com]
>> Sent: Wednesday, November 16, 2016 9:33 AM
>> To: u-boot@lists.denx.de
>> Cc: Jagan Teki <jagan@openedev.com>; Bin Meng <bmeng.cn@gmail.com>;
>> York Sun <york.sun@nxp.com>; Vignesh R <vigneshr@ti.com>; Mugunthan V
>> N <mugunthanvnm@ti.com>; Michal Simek <michal.simek@xilinx.com>; Siva
>> Durga Prasad Paladugu <sivadur@xilinx.com>
>> Subject: [PATCH v6 16/21] spi: Remove dual flash options/flags
>>
>> Dual flash code in spi are usually take the spi controller to work with dual
>> connected flash devices. Usually these dual connection operation's are
>> referred to flash controller protocol rather with spi controller protocol, these
>> are still present in flash side for the usage of spi-nor controllers.
>>
>> So, this patch remove the dual_flash options or flags in sf which are
>> triggered from spi controller side.
>
> How are you going to handle this? any followup patches on this?
> This will break for some who are using dual flash till now. Isnt it?

Yes, but I've been mentioned many times about this as we need to
re-write the driver on mtd side since many flash futures are dealt
with spi area, which is bad and inconvenient to add new futures. and
also there is no driver using this dual flash so far, SoI am going
with this patch either way.

thanks!
Siva Durga Prasad Paladugu Nov. 17, 2016, 6:23 a.m. UTC | #3
Hi,

> -----Original Message-----
> From: Jagan Teki [mailto:jagan@openedev.com]
> Sent: Wednesday, November 16, 2016 7:23 PM
> To: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
> Cc: u-boot@lists.denx.de; Michal Simek <michal.simek@xilinx.com>
> Subject: Re: [U-Boot] [PATCH v6 16/21] spi: Remove dual flash options/flags
> 
> On Wed, Nov 16, 2016 at 12:27 PM, Siva Durga Prasad Paladugu
> <siva.durga.paladugu@xilinx.com> wrote:
> > Hi,
> >
> >> -----Original Message-----
> >> From: Jagan Teki [mailto:jagan@openedev.com]
> >> Sent: Wednesday, November 16, 2016 9:33 AM
> >> To: u-boot@lists.denx.de
> >> Cc: Jagan Teki <jagan@openedev.com>; Bin Meng
> <bmeng.cn@gmail.com>;
> >> York Sun <york.sun@nxp.com>; Vignesh R <vigneshr@ti.com>;
> Mugunthan V
> >> N <mugunthanvnm@ti.com>; Michal Simek <michal.simek@xilinx.com>;
> Siva
> >> Durga Prasad Paladugu <sivadur@xilinx.com>
> >> Subject: [PATCH v6 16/21] spi: Remove dual flash options/flags
> >>
> >> Dual flash code in spi are usually take the spi controller to work
> >> with dual connected flash devices. Usually these dual connection
> >> operation's are referred to flash controller protocol rather with spi
> >> controller protocol, these are still present in flash side for the usage of
> spi-nor controllers.
> >>
> >> So, this patch remove the dual_flash options or flags in sf which are
> >> triggered from spi controller side.
> >
> > How are you going to handle this? any followup patches on this?
> > This will break for some who are using dual flash till now. Isnt it?
> 
> Yes, but I've been mentioned many times about this as we need to re-write
> the driver on mtd side since many flash futures are dealt with spi area,
> which is bad and inconvenient to add new futures. and also there is no
> driver using this dual flash so far, SoI am going with this patch either way.
If I get it correctly, you would like to move all the spi flash related drivers to
drivers/mtd/spi ? If yes, then how do you handle a driver which supports both flash
and other devices as well.

Regards,
Siva
> 
> thanks!
> --
> Jagan Teki
> Free Software Engineer | www.openedev.com U-Boot, Linux | Upstream
> Maintainer Hyderabad, India.
Jagan Teki Nov. 17, 2016, 6:28 a.m. UTC | #4
On Thu, Nov 17, 2016 at 11:53 AM, Siva Durga Prasad Paladugu
<siva.durga.paladugu@xilinx.com> wrote:
> Hi,
>
>> -----Original Message-----
>> From: Jagan Teki [mailto:jagan@openedev.com]
>> Sent: Wednesday, November 16, 2016 7:23 PM
>> To: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
>> Cc: u-boot@lists.denx.de; Michal Simek <michal.simek@xilinx.com>
>> Subject: Re: [U-Boot] [PATCH v6 16/21] spi: Remove dual flash options/flags
>>
>> On Wed, Nov 16, 2016 at 12:27 PM, Siva Durga Prasad Paladugu
>> <siva.durga.paladugu@xilinx.com> wrote:
>> > Hi,
>> >
>> >> -----Original Message-----
>> >> From: Jagan Teki [mailto:jagan@openedev.com]
>> >> Sent: Wednesday, November 16, 2016 9:33 AM
>> >> To: u-boot@lists.denx.de
>> >> Cc: Jagan Teki <jagan@openedev.com>; Bin Meng
>> <bmeng.cn@gmail.com>;
>> >> York Sun <york.sun@nxp.com>; Vignesh R <vigneshr@ti.com>;
>> Mugunthan V
>> >> N <mugunthanvnm@ti.com>; Michal Simek <michal.simek@xilinx.com>;
>> Siva
>> >> Durga Prasad Paladugu <sivadur@xilinx.com>
>> >> Subject: [PATCH v6 16/21] spi: Remove dual flash options/flags
>> >>
>> >> Dual flash code in spi are usually take the spi controller to work
>> >> with dual connected flash devices. Usually these dual connection
>> >> operation's are referred to flash controller protocol rather with spi
>> >> controller protocol, these are still present in flash side for the usage of
>> spi-nor controllers.
>> >>
>> >> So, this patch remove the dual_flash options or flags in sf which are
>> >> triggered from spi controller side.
>> >
>> > How are you going to handle this? any followup patches on this?
>> > This will break for some who are using dual flash till now. Isnt it?
>>
>> Yes, but I've been mentioned many times about this as we need to re-write
>> the driver on mtd side since many flash futures are dealt with spi area,
>> which is bad and inconvenient to add new futures. and also there is no
>> driver using this dual flash so far, SoI am going with this patch either way.
> If I get it correctly, you would like to move all the spi flash related drivers to
> drivers/mtd/spi ? If yes, then how do you handle a driver which supports both flash
> and other devices as well.

Sorry, look like the old story begin again, take a look at this [1]

[1] http://git.denx.de/?p=u-boot-spi.git;a=commitdiff;h=cfd285e4c5727d406fdd62b9befb1b528edd49fb

thanks!
diff mbox

Patch

diff --git a/drivers/mtd/spi/sf.c b/drivers/mtd/spi/sf.c
index 664e860..d5e175c 100644
--- a/drivers/mtd/spi/sf.c
+++ b/drivers/mtd/spi/sf.c
@@ -18,10 +18,6 @@  static int spi_flash_read_write(struct spi_slave *spi,
 	unsigned long flags = SPI_XFER_BEGIN;
 	int ret;
 
-#ifdef CONFIG_SF_DUAL_FLASH
-	if (spi->flags & SPI_XFER_U_PAGE)
-		flags |= SPI_XFER_U_PAGE;
-#endif
 	if (data_len == 0)
 		flags |= SPI_XFER_END;
 
diff --git a/drivers/mtd/spi/spi_flash.c b/drivers/mtd/spi/spi_flash.c
index cfecd53..d3a9975 100644
--- a/drivers/mtd/spi/spi_flash.c
+++ b/drivers/mtd/spi/spi_flash.c
@@ -1016,7 +1016,6 @@  int spi_flash_scan(struct spi_flash *flash)
 
 	flash->name = info->name;
 	flash->memory_map = spi->memory_map;
-	flash->dual_flash = spi->option;
 
 	if (info->flags & SST_WR)
 		flash->flags |= SNOR_F_SST_WR;
diff --git a/include/spi.h b/include/spi.h
index 4c17983..deb65ef 100644
--- a/include/spi.h
+++ b/include/spi.h
@@ -30,10 +30,6 @@ 
 #define SPI_RX_DUAL	BIT(12)			/* receive with 2 wires */
 #define SPI_RX_QUAD	BIT(13)			/* receive with 4 wires */
 
-/* SPI bus connection options - see enum spi_dual_flash */
-#define SPI_CONN_DUAL_SHARED		(1 << 0)
-#define SPI_CONN_DUAL_SEPARATED	(1 << 1)
-
 /* Header byte that marks the start of the message */
 #define SPI_PREAMBLE_END_BYTE	0xec
 
@@ -93,7 +89,6 @@  struct dm_spi_slave_platdata {
  * @max_write_size:	If non-zero, the maximum number of bytes which can
  *			be written at once, excluding command bytes.
  * @memory_map:		Address of read-only SPI flash access.
- * @option:		Varies SPI bus options - separate, shared bus.
  * @flags:		Indication of SPI flags.
  */
 struct spi_slave {
@@ -117,7 +112,6 @@  struct spi_slave {
 #define SPI_XFER_ONCE		(SPI_XFER_BEGIN | SPI_XFER_END)
 #define SPI_XFER_MMAP		BIT(2)	/* Memory Mapped start */
 #define SPI_XFER_MMAP_END	BIT(3)	/* Memory Mapped End */
-#define SPI_XFER_U_PAGE		BIT(4)
 };
 
 /**