On Wed, 21 Sep 2016 10:19:10 +0200 Ricardo Ribalda Delgado <[email protected]> wrote:
> Hi Boris > > On Wed, Sep 21, 2016 at 10:14 AM, Boris Brezillon > <[email protected]> wrote: > > Wait. If you really want to manipulate an loff_t variable, you can do > > > > offset = do_div(addr, nor->page_size); > > > > > > > that leads to: > > CC drivers/mtd/spi-nor/spi-nor.o > drivers/mtd/spi-nor/spi-nor.c: In function 'spi_nor_s3an_addr_convert': > drivers/mtd/spi-nor/spi-nor.c:359:11: warning: comparison of distinct > pointer types lacks a cast [enabled by default] > > > and if I do the casting > > offset = do_div((uint64_t)addr, nor->page_size); > > > drivers/mtd/spi-nor/spi-nor.c: In function 'spi_nor_s3an_addr_convert': > drivers/mtd/spi-nor/spi-nor.c:359:11: error: lvalue required as left > operand of assignment > drivers/mtd/spi-nor/spi-nor.c:359:11: error: lvalue required as left > operand of assignment > drivers/mtd/spi-nor/spi-nor.c:359:11: error: lvalue required as left > operand of assignment > drivers/mtd/spi-nor/spi-nor.c:359:11: error: lvalue required as unary > '&' operand > scr > > Unsinged long is more than enough for s3an. I think v7 is ok. Then, why did you change the spi_nor_s3an_addr_convert() prototype?

