On Fri, 4 Oct 2019 18:38:33 +0000 Paul Burton <paul.burton@xxxxxxxx> wrote: > Commit 7e534323c416 ("mtd: rawnand: Pass a nand_chip object to > chip->read_xxx() hooks") modified the prototype of the struct nand_chip > read_buf function pointer. In the au1550nd driver we have 2 > implementations of read_buf. The previously mentioned commit modified > the au_read_buf() implementation to match the function pointer, but not > au_read_buf16(). This results in a compiler warning for MIPS > db1xxx_defconfig builds: > > drivers/mtd/nand/raw/au1550nd.c:443:57: > warning: pointer type mismatch in conditional expression > > Fix this by updating the prototype of au_read_buf16() to take a struct > nand_chip pointer as its first argument, as is expected after commit > 7e534323c416 ("mtd: rawnand: Pass a nand_chip object to chip->read_xxx() > hooks"). > > Note that this shouldn't have caused any functional issues at runtime, > since the offset of the struct mtd_info within struct nand_chip is 0 > making mtd_to_nand() effectively a type-cast. > > Signed-off-by: Paul Burton <paul.burton@xxxxxxxx> > Fixes: 7e534323c416 ("mtd: rawnand: Pass a nand_chip object to chip->read_xxx() hooks") > Cc: Boris Brezillon <bbrezillon@xxxxxxxxxx> Reviewed-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxx> > Cc: Miquel Raynal <miquel.raynal@xxxxxxxxxxx> > Cc: David Woodhouse <dwmw2@xxxxxxxxxxxxx> > Cc: Brian Norris <computersforpeace@xxxxxxxxx> > Cc: Marek Vasut <marek.vasut@xxxxxxxxx> > Cc: Vignesh Raghavendra <vigneshr@xxxxxx> > Cc: linux-mtd@xxxxxxxxxxxxxxxxxxx > Cc: linux-mips@xxxxxxxxxxxxxxx > Cc: stable@xxxxxxxxxxxxxxx # v4.20+ > > --- > > drivers/mtd/nand/raw/au1550nd.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/mtd/nand/raw/au1550nd.c b/drivers/mtd/nand/raw/au1550nd.c > index 97a97a9ccc36..2bc818dea2a8 100644 > --- a/drivers/mtd/nand/raw/au1550nd.c > +++ b/drivers/mtd/nand/raw/au1550nd.c > @@ -140,10 +140,9 @@ static void au_write_buf16(struct nand_chip *this, const u_char *buf, int len) > * > * read function for 16bit buswidth > */ > -static void au_read_buf16(struct mtd_info *mtd, u_char *buf, int len) > +static void au_read_buf16(struct nand_chip *this, u_char *buf, int len) > { > int i; > - struct nand_chip *this = mtd_to_nand(mtd); > u16 *p = (u16 *) buf; > len >>= 1; > ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/