[PATCH v2 1/6] mtd: spi-nor: change return value of read/write

Marek Vasut marex at denx.de
Tue Aug 4 09:42:03 PDT 2015


On Tuesday, August 04, 2015 at 08:42:51 AM, Michal Suchanek wrote:
> On 3 August 2015 at 23:46, Marek Vasut <marex at denx.de> wrote:
> > On Monday, August 03, 2015 at 08:39:01 PM, Michal Suchanek wrote:
> >> Change the return value of spi-nor device read and write methods to
> >> allow returning amount of data transferred and errors as
> >> read(2)/write(2) does.
> >> 
> >> Signed-off-by: Michal Suchanek <hramrach at gmail.com>
> >> ---
> >> 
> >>  include/linux/mtd/spi-nor.h | 4 ++--
> >>  1 file changed, 2 insertions(+), 2 deletions(-)
> >> 
> >> diff --git a/include/linux/mtd/spi-nor.h b/include/linux/mtd/spi-nor.h
> >> index e540952..7d782cb 100644
> >> --- a/include/linux/mtd/spi-nor.h
> >> +++ b/include/linux/mtd/spi-nor.h
> >> @@ -185,9 +185,9 @@ struct spi_nor {
> >> 
> >>       int (*write_reg)(struct spi_nor *nor, u8 opcode, u8 *buf, int len,
> >>       
> >>                       int write_enable);
> >> 
> >> -     int (*read)(struct spi_nor *nor, loff_t from,
> >> +     ssize_t (*read)(struct spi_nor *nor, loff_t from,
> >> 
> >>                       size_t len, size_t *retlen, u_char *read_buf);
> >> 
> >> -     void (*write)(struct spi_nor *nor, loff_t to,
> >> +     ssize_t (*write)(struct spi_nor *nor, loff_t to,
> >> 
> >>                       size_t len, size_t *retlen, const u_char
> >>                       *write_buf);
> >>       
> >>       int (*erase)(struct spi_nor *nor, loff_t offs);
> > 
> > You realize that if someone does bisect and has only this patch applied,
> > the compiler will complain loudly about mismatching data types, right ?
> > :)
> 
> Yes, the compiler prints a warning. However, only the return value
> which is not used changes so it should not cause any real problem.

Are you certain that ssize_t is equal to int , always , everywhere ? :-)
Note that it is possible to do such conversion even without introducing
compiler warnings along the way -- just do the data type conversion first
and the other changes in subsequent patches. It will be clear that one
patch does one thing then.

> The
> data type in the fsl-quadspi and m25p80 drivers is matched in the
> following two patches.
> 
> Thanks
> 
> Michal

Best regards,
Marek Vasut



More information about the linux-mtd mailing list