Re: [PATCH 00/19] mtd: rawnand: API cleanup (2nd batch)

2018-09-19 Thread Miquel Raynal
Hi Boris,

Boris Brezillon  wrote on Mon, 17 Sep 2018
10:29:39 +0200:

> On Sat, 15 Sep 2018 19:54:40 +0200
> Miquel Raynal  wrote:
> 
> > Hi Boris,
> > 
> > Boris Brezillon  wrote on Fri,  7 Sep 2018
> > 00:38:32 +0200:
> >   
> > > Hello,
> > > 
> > > This is the 2nd batch of API cleanup patches. This time we move
> > > deprecated hooks/fields to the nand_legacy struct, and then move some
> > > of the code found in nand_base.c into separate source/header files.
> > > 
> > > With this new organization, new comers should more easily identify the
> > > bits they can use in their NAND controller drivers and those that are
> > > only meant for core code. It also shrink a bit nand_base.c which was
> > > over 6000 lines of code.
> > > 
> > > Note that existing coding style issues (reported by checkpatch) in arch
> > > or driver code are intentionally not fixed to keep the series focused
> > > on the API/core cleanup.
> > > 
> > > Regards,
> > > 
> > > Boris
> > > 
> > > Boris Brezillon (19):
> > >   mtd: rawnand: Leave chip->IO_ADDR_{R,W} to NULL when unused
> > >   mtd: rawnand: Create a legacy struct and move ->IO_ADDR_{R,W} there
> > >   mtd: rawnand: Deprecate ->{read,write}_{byte,buf}() hooks
> > >   mtd: rawnand: Deprecate ->cmd_ctrl() and ->cmdfunc()
> > >   mtd: rawnand: Deprecate ->dev_ready() and ->waitfunc()
> > >   mtd: rawnand: Deprecate ->block_{bad,markbad}() hooks
> > >   mtd: rawnand: Deprecate ->erase()
> > >   mtd: rawnand: Deprecate ->{set,get}_features() hooks
> > >   mtd: rawnand: Deprecate ->chip_delay
> > >   mtd: rawnand: Move function prototypes after struct declarations
> > >   mtd: rawnand: Get rid of nand_flash_dev forward declation
> > >   mtd: rawnand: Get rid of the duplicate nand_chip forward declaration
> > >   mtd: rawnand: Get rid of a few unused definitions
> > >   mtd: rawnand: Move platform_nand_xxx definitions out of rawnand.h
> > >   mtd: rawnand: Inline onfi_get_async_timing_mode()
> > >   mtd: rawnand: Keep all internal stuff private
> > >   mtd: rawnand: Move legacy code to nand_legacy.c
> > >   mtd: rawnand: Move ONFI code to nand_onfi.c
> > >   mtd: rawnand: Move JEDEC code to nand_jedec.c
> > > 
> > >  Documentation/driver-api/mtdnand.rst |   30 +-
> > >  arch/arm/mach-ep93xx/snappercl15.c   |8 +-
> > >  arch/arm/mach-ep93xx/ts72xx.c|9 +-
> > >  arch/arm/mach-imx/mach-qong.c|6 +-
> > >  arch/arm/mach-ixp4xx/ixdp425-setup.c |2 +-
> > >  arch/arm/mach-omap1/board-fsample.c  |3 +-
> > >  arch/arm/mach-omap1/board-h2.c   |3 +-
> > >  arch/arm/mach-omap1/board-h3.c   |2 +-
> > >  arch/arm/mach-omap1/board-nand.c |2 +-
> > >  arch/arm/mach-omap1/board-perseus2.c |3 +-
> > >  arch/arm/mach-orion5x/ts78xx-setup.c |9 +-
> > >  arch/arm/mach-pxa/balloon3.c |5 +-
> > >  arch/arm/mach-pxa/em-x270.c  |9 +-
> > >  arch/arm/mach-pxa/palmtx.c   |5 +-
> > >  arch/mips/alchemy/devboards/db1200.c |9 +-
> > >  arch/mips/alchemy/devboards/db1300.c |9 +-
> > >  arch/mips/alchemy/devboards/db1550.c |9 +-
> > >  arch/mips/netlogic/xlr/platform-flash.c  |3 +-
> > >  arch/mips/pnx833x/common/platform.c  |5 +-
> > >  arch/mips/rb532/devices.c|5 +-
> > >  arch/sh/boards/mach-migor/setup.c|8 +-
> > >  drivers/mtd/nand/raw/Makefile|4 +-
> > >  drivers/mtd/nand/raw/ams-delta.c |   22 +-
> > >  drivers/mtd/nand/raw/atmel/nand-controller.c |   22 +-
> > >  drivers/mtd/nand/raw/au1550nd.c  |   43 +-
> > >  drivers/mtd/nand/raw/bcm47xxnflash/ops_bcm4706.c |   22 +-
> > >  drivers/mtd/nand/raw/brcmnand/brcmnand.c |   15 +-
> > >  drivers/mtd/nand/raw/cafe_nand.c |   22 +-
> > >  drivers/mtd/nand/raw/cmx270_nand.c   |   28 +-
> > >  drivers/mtd/nand/raw/cs553x_nand.c   |   42 +-
> > >  drivers/mtd/nand/raw/davinci_nand.c  |   34 +-
> > >  drivers/mtd/nand/raw/denali.c|   23 +-
> > >  drivers/mtd/nand/raw/diskonchip.c|   50 +-
> > >  drivers/mtd/nand/raw/fsl_elbc_nand.c |   18 +-
> > >  drivers/mtd/nand/raw/fsl_ifc_nand.c  |   24 +-
> > >  drivers/mtd/nand/raw/fsl_upm.c   |   30 +-
> > >  drivers/mtd/nand/raw/fsmc_nand.c |1 -
> > >  drivers/mtd/nand/raw/gpio.c  |   16 +-
> > >  drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c   |   22 +-
> > >  drivers/mtd/nand/raw/hisi504_nand.c  |   18 +-
> > >  drivers/mtd/nand/raw/internals.h |  114 ++
> > >  drivers/mtd/nand/raw/jz4740_nand.c   |   14 +-
> > >  drivers/mtd/nand/raw/jz4780_nand.c

Re: [PATCH 00/19] mtd: rawnand: API cleanup (2nd batch)

2018-09-17 Thread Boris Brezillon
On Sat, 15 Sep 2018 19:54:40 +0200
Miquel Raynal  wrote:

> Hi Boris,
> 
> Boris Brezillon  wrote on Fri,  7 Sep 2018
> 00:38:32 +0200:
> 
> > Hello,
> > 
> > This is the 2nd batch of API cleanup patches. This time we move
> > deprecated hooks/fields to the nand_legacy struct, and then move some
> > of the code found in nand_base.c into separate source/header files.
> > 
> > With this new organization, new comers should more easily identify the
> > bits they can use in their NAND controller drivers and those that are
> > only meant for core code. It also shrink a bit nand_base.c which was
> > over 6000 lines of code.
> > 
> > Note that existing coding style issues (reported by checkpatch) in arch
> > or driver code are intentionally not fixed to keep the series focused
> > on the API/core cleanup.
> > 
> > Regards,
> > 
> > Boris
> > 
> > Boris Brezillon (19):
> >   mtd: rawnand: Leave chip->IO_ADDR_{R,W} to NULL when unused
> >   mtd: rawnand: Create a legacy struct and move ->IO_ADDR_{R,W} there
> >   mtd: rawnand: Deprecate ->{read,write}_{byte,buf}() hooks
> >   mtd: rawnand: Deprecate ->cmd_ctrl() and ->cmdfunc()
> >   mtd: rawnand: Deprecate ->dev_ready() and ->waitfunc()
> >   mtd: rawnand: Deprecate ->block_{bad,markbad}() hooks
> >   mtd: rawnand: Deprecate ->erase()
> >   mtd: rawnand: Deprecate ->{set,get}_features() hooks
> >   mtd: rawnand: Deprecate ->chip_delay
> >   mtd: rawnand: Move function prototypes after struct declarations
> >   mtd: rawnand: Get rid of nand_flash_dev forward declation
> >   mtd: rawnand: Get rid of the duplicate nand_chip forward declaration
> >   mtd: rawnand: Get rid of a few unused definitions
> >   mtd: rawnand: Move platform_nand_xxx definitions out of rawnand.h
> >   mtd: rawnand: Inline onfi_get_async_timing_mode()
> >   mtd: rawnand: Keep all internal stuff private
> >   mtd: rawnand: Move legacy code to nand_legacy.c
> >   mtd: rawnand: Move ONFI code to nand_onfi.c
> >   mtd: rawnand: Move JEDEC code to nand_jedec.c
> > 
> >  Documentation/driver-api/mtdnand.rst |   30 +-
> >  arch/arm/mach-ep93xx/snappercl15.c   |8 +-
> >  arch/arm/mach-ep93xx/ts72xx.c|9 +-
> >  arch/arm/mach-imx/mach-qong.c|6 +-
> >  arch/arm/mach-ixp4xx/ixdp425-setup.c |2 +-
> >  arch/arm/mach-omap1/board-fsample.c  |3 +-
> >  arch/arm/mach-omap1/board-h2.c   |3 +-
> >  arch/arm/mach-omap1/board-h3.c   |2 +-
> >  arch/arm/mach-omap1/board-nand.c |2 +-
> >  arch/arm/mach-omap1/board-perseus2.c |3 +-
> >  arch/arm/mach-orion5x/ts78xx-setup.c |9 +-
> >  arch/arm/mach-pxa/balloon3.c |5 +-
> >  arch/arm/mach-pxa/em-x270.c  |9 +-
> >  arch/arm/mach-pxa/palmtx.c   |5 +-
> >  arch/mips/alchemy/devboards/db1200.c |9 +-
> >  arch/mips/alchemy/devboards/db1300.c |9 +-
> >  arch/mips/alchemy/devboards/db1550.c |9 +-
> >  arch/mips/netlogic/xlr/platform-flash.c  |3 +-
> >  arch/mips/pnx833x/common/platform.c  |5 +-
> >  arch/mips/rb532/devices.c|5 +-
> >  arch/sh/boards/mach-migor/setup.c|8 +-
> >  drivers/mtd/nand/raw/Makefile|4 +-
> >  drivers/mtd/nand/raw/ams-delta.c |   22 +-
> >  drivers/mtd/nand/raw/atmel/nand-controller.c |   22 +-
> >  drivers/mtd/nand/raw/au1550nd.c  |   43 +-
> >  drivers/mtd/nand/raw/bcm47xxnflash/ops_bcm4706.c |   22 +-
> >  drivers/mtd/nand/raw/brcmnand/brcmnand.c |   15 +-
> >  drivers/mtd/nand/raw/cafe_nand.c |   22 +-
> >  drivers/mtd/nand/raw/cmx270_nand.c   |   28 +-
> >  drivers/mtd/nand/raw/cs553x_nand.c   |   42 +-
> >  drivers/mtd/nand/raw/davinci_nand.c  |   34 +-
> >  drivers/mtd/nand/raw/denali.c|   23 +-
> >  drivers/mtd/nand/raw/diskonchip.c|   50 +-
> >  drivers/mtd/nand/raw/fsl_elbc_nand.c |   18 +-
> >  drivers/mtd/nand/raw/fsl_ifc_nand.c  |   24 +-
> >  drivers/mtd/nand/raw/fsl_upm.c   |   30 +-
> >  drivers/mtd/nand/raw/fsmc_nand.c |1 -
> >  drivers/mtd/nand/raw/gpio.c  |   16 +-
> >  drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c   |   22 +-
> >  drivers/mtd/nand/raw/hisi504_nand.c  |   18 +-
> >  drivers/mtd/nand/raw/internals.h |  114 ++
> >  drivers/mtd/nand/raw/jz4740_nand.c   |   14 +-
> >  drivers/mtd/nand/raw/jz4780_nand.c   |   10 +-
> >  drivers/mtd/nand/raw/lpc32xx_mlc.c   |   12 +-
> >  drivers/mtd/nand/raw/lpc32xx_slc.c   |   26 +-
> >  drivers/mtd/nand/raw/mpc5121_nfc.c   |   14 +-
> >  drivers/mtd/nand/raw/mtk_nand.c  

Re: [PATCH 00/19] mtd: rawnand: API cleanup (2nd batch)

2018-09-15 Thread Miquel Raynal
Hi Boris,

Boris Brezillon  wrote on Fri,  7 Sep 2018
00:38:32 +0200:

> Hello,
> 
> This is the 2nd batch of API cleanup patches. This time we move
> deprecated hooks/fields to the nand_legacy struct, and then move some
> of the code found in nand_base.c into separate source/header files.
> 
> With this new organization, new comers should more easily identify the
> bits they can use in their NAND controller drivers and those that are
> only meant for core code. It also shrink a bit nand_base.c which was
> over 6000 lines of code.
> 
> Note that existing coding style issues (reported by checkpatch) in arch
> or driver code are intentionally not fixed to keep the series focused
> on the API/core cleanup.
> 
> Regards,
> 
> Boris
> 
> Boris Brezillon (19):
>   mtd: rawnand: Leave chip->IO_ADDR_{R,W} to NULL when unused
>   mtd: rawnand: Create a legacy struct and move ->IO_ADDR_{R,W} there
>   mtd: rawnand: Deprecate ->{read,write}_{byte,buf}() hooks
>   mtd: rawnand: Deprecate ->cmd_ctrl() and ->cmdfunc()
>   mtd: rawnand: Deprecate ->dev_ready() and ->waitfunc()
>   mtd: rawnand: Deprecate ->block_{bad,markbad}() hooks
>   mtd: rawnand: Deprecate ->erase()
>   mtd: rawnand: Deprecate ->{set,get}_features() hooks
>   mtd: rawnand: Deprecate ->chip_delay
>   mtd: rawnand: Move function prototypes after struct declarations
>   mtd: rawnand: Get rid of nand_flash_dev forward declation
>   mtd: rawnand: Get rid of the duplicate nand_chip forward declaration
>   mtd: rawnand: Get rid of a few unused definitions
>   mtd: rawnand: Move platform_nand_xxx definitions out of rawnand.h
>   mtd: rawnand: Inline onfi_get_async_timing_mode()
>   mtd: rawnand: Keep all internal stuff private
>   mtd: rawnand: Move legacy code to nand_legacy.c
>   mtd: rawnand: Move ONFI code to nand_onfi.c
>   mtd: rawnand: Move JEDEC code to nand_jedec.c
> 
>  Documentation/driver-api/mtdnand.rst |   30 +-
>  arch/arm/mach-ep93xx/snappercl15.c   |8 +-
>  arch/arm/mach-ep93xx/ts72xx.c|9 +-
>  arch/arm/mach-imx/mach-qong.c|6 +-
>  arch/arm/mach-ixp4xx/ixdp425-setup.c |2 +-
>  arch/arm/mach-omap1/board-fsample.c  |3 +-
>  arch/arm/mach-omap1/board-h2.c   |3 +-
>  arch/arm/mach-omap1/board-h3.c   |2 +-
>  arch/arm/mach-omap1/board-nand.c |2 +-
>  arch/arm/mach-omap1/board-perseus2.c |3 +-
>  arch/arm/mach-orion5x/ts78xx-setup.c |9 +-
>  arch/arm/mach-pxa/balloon3.c |5 +-
>  arch/arm/mach-pxa/em-x270.c  |9 +-
>  arch/arm/mach-pxa/palmtx.c   |5 +-
>  arch/mips/alchemy/devboards/db1200.c |9 +-
>  arch/mips/alchemy/devboards/db1300.c |9 +-
>  arch/mips/alchemy/devboards/db1550.c |9 +-
>  arch/mips/netlogic/xlr/platform-flash.c  |3 +-
>  arch/mips/pnx833x/common/platform.c  |5 +-
>  arch/mips/rb532/devices.c|5 +-
>  arch/sh/boards/mach-migor/setup.c|8 +-
>  drivers/mtd/nand/raw/Makefile|4 +-
>  drivers/mtd/nand/raw/ams-delta.c |   22 +-
>  drivers/mtd/nand/raw/atmel/nand-controller.c |   22 +-
>  drivers/mtd/nand/raw/au1550nd.c  |   43 +-
>  drivers/mtd/nand/raw/bcm47xxnflash/ops_bcm4706.c |   22 +-
>  drivers/mtd/nand/raw/brcmnand/brcmnand.c |   15 +-
>  drivers/mtd/nand/raw/cafe_nand.c |   22 +-
>  drivers/mtd/nand/raw/cmx270_nand.c   |   28 +-
>  drivers/mtd/nand/raw/cs553x_nand.c   |   42 +-
>  drivers/mtd/nand/raw/davinci_nand.c  |   34 +-
>  drivers/mtd/nand/raw/denali.c|   23 +-
>  drivers/mtd/nand/raw/diskonchip.c|   50 +-
>  drivers/mtd/nand/raw/fsl_elbc_nand.c |   18 +-
>  drivers/mtd/nand/raw/fsl_ifc_nand.c  |   24 +-
>  drivers/mtd/nand/raw/fsl_upm.c   |   30 +-
>  drivers/mtd/nand/raw/fsmc_nand.c |1 -
>  drivers/mtd/nand/raw/gpio.c  |   16 +-
>  drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c   |   22 +-
>  drivers/mtd/nand/raw/hisi504_nand.c  |   18 +-
>  drivers/mtd/nand/raw/internals.h |  114 ++
>  drivers/mtd/nand/raw/jz4740_nand.c   |   14 +-
>  drivers/mtd/nand/raw/jz4780_nand.c   |   10 +-
>  drivers/mtd/nand/raw/lpc32xx_mlc.c   |   12 +-
>  drivers/mtd/nand/raw/lpc32xx_slc.c   |   26 +-
>  drivers/mtd/nand/raw/mpc5121_nfc.c   |   14 +-
>  drivers/mtd/nand/raw/mtk_nand.c  |   12 +-
>  drivers/mtd/nand/raw/mxc_nand.c  |   20 +-
>  drivers/mtd/nand/raw/nand_amd.c  |2 +-
>  drivers/mtd/nand/raw/nand_base.c | 1260 
> +++---
>  

[PATCH 00/19] mtd: rawnand: API cleanup (2nd batch)

2018-09-06 Thread Boris Brezillon
Hello,

This is the 2nd batch of API cleanup patches. This time we move
deprecated hooks/fields to the nand_legacy struct, and then move some
of the code found in nand_base.c into separate source/header files.

With this new organization, new comers should more easily identify the
bits they can use in their NAND controller drivers and those that are
only meant for core code. It also shrink a bit nand_base.c which was
over 6000 lines of code.

Note that existing coding style issues (reported by checkpatch) in arch
or driver code are intentionally not fixed to keep the series focused
on the API/core cleanup.

Regards,

Boris

Boris Brezillon (19):
  mtd: rawnand: Leave chip->IO_ADDR_{R,W} to NULL when unused
  mtd: rawnand: Create a legacy struct and move ->IO_ADDR_{R,W} there
  mtd: rawnand: Deprecate ->{read,write}_{byte,buf}() hooks
  mtd: rawnand: Deprecate ->cmd_ctrl() and ->cmdfunc()
  mtd: rawnand: Deprecate ->dev_ready() and ->waitfunc()
  mtd: rawnand: Deprecate ->block_{bad,markbad}() hooks
  mtd: rawnand: Deprecate ->erase()
  mtd: rawnand: Deprecate ->{set,get}_features() hooks
  mtd: rawnand: Deprecate ->chip_delay
  mtd: rawnand: Move function prototypes after struct declarations
  mtd: rawnand: Get rid of nand_flash_dev forward declation
  mtd: rawnand: Get rid of the duplicate nand_chip forward declaration
  mtd: rawnand: Get rid of a few unused definitions
  mtd: rawnand: Move platform_nand_xxx definitions out of rawnand.h
  mtd: rawnand: Inline onfi_get_async_timing_mode()
  mtd: rawnand: Keep all internal stuff private
  mtd: rawnand: Move legacy code to nand_legacy.c
  mtd: rawnand: Move ONFI code to nand_onfi.c
  mtd: rawnand: Move JEDEC code to nand_jedec.c

 Documentation/driver-api/mtdnand.rst |   30 +-
 arch/arm/mach-ep93xx/snappercl15.c   |8 +-
 arch/arm/mach-ep93xx/ts72xx.c|9 +-
 arch/arm/mach-imx/mach-qong.c|6 +-
 arch/arm/mach-ixp4xx/ixdp425-setup.c |2 +-
 arch/arm/mach-omap1/board-fsample.c  |3 +-
 arch/arm/mach-omap1/board-h2.c   |3 +-
 arch/arm/mach-omap1/board-h3.c   |2 +-
 arch/arm/mach-omap1/board-nand.c |2 +-
 arch/arm/mach-omap1/board-perseus2.c |3 +-
 arch/arm/mach-orion5x/ts78xx-setup.c |9 +-
 arch/arm/mach-pxa/balloon3.c |5 +-
 arch/arm/mach-pxa/em-x270.c  |9 +-
 arch/arm/mach-pxa/palmtx.c   |5 +-
 arch/mips/alchemy/devboards/db1200.c |9 +-
 arch/mips/alchemy/devboards/db1300.c |9 +-
 arch/mips/alchemy/devboards/db1550.c |9 +-
 arch/mips/netlogic/xlr/platform-flash.c  |3 +-
 arch/mips/pnx833x/common/platform.c  |5 +-
 arch/mips/rb532/devices.c|5 +-
 arch/sh/boards/mach-migor/setup.c|8 +-
 drivers/mtd/nand/raw/Makefile|4 +-
 drivers/mtd/nand/raw/ams-delta.c |   22 +-
 drivers/mtd/nand/raw/atmel/nand-controller.c |   22 +-
 drivers/mtd/nand/raw/au1550nd.c  |   43 +-
 drivers/mtd/nand/raw/bcm47xxnflash/ops_bcm4706.c |   22 +-
 drivers/mtd/nand/raw/brcmnand/brcmnand.c |   15 +-
 drivers/mtd/nand/raw/cafe_nand.c |   22 +-
 drivers/mtd/nand/raw/cmx270_nand.c   |   28 +-
 drivers/mtd/nand/raw/cs553x_nand.c   |   42 +-
 drivers/mtd/nand/raw/davinci_nand.c  |   34 +-
 drivers/mtd/nand/raw/denali.c|   23 +-
 drivers/mtd/nand/raw/diskonchip.c|   50 +-
 drivers/mtd/nand/raw/fsl_elbc_nand.c |   18 +-
 drivers/mtd/nand/raw/fsl_ifc_nand.c  |   24 +-
 drivers/mtd/nand/raw/fsl_upm.c   |   30 +-
 drivers/mtd/nand/raw/fsmc_nand.c |1 -
 drivers/mtd/nand/raw/gpio.c  |   16 +-
 drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c   |   22 +-
 drivers/mtd/nand/raw/hisi504_nand.c  |   18 +-
 drivers/mtd/nand/raw/internals.h |  114 ++
 drivers/mtd/nand/raw/jz4740_nand.c   |   14 +-
 drivers/mtd/nand/raw/jz4780_nand.c   |   10 +-
 drivers/mtd/nand/raw/lpc32xx_mlc.c   |   12 +-
 drivers/mtd/nand/raw/lpc32xx_slc.c   |   26 +-
 drivers/mtd/nand/raw/mpc5121_nfc.c   |   14 +-
 drivers/mtd/nand/raw/mtk_nand.c  |   12 +-
 drivers/mtd/nand/raw/mxc_nand.c  |   20 +-
 drivers/mtd/nand/raw/nand_amd.c  |2 +-
 drivers/mtd/nand/raw/nand_base.c | 1260 +++---
 drivers/mtd/nand/raw/nand_bbt.c  |5 +-
 drivers/mtd/nand/raw/nand_hynix.c|9 +-
 drivers/mtd/nand/raw/nand_ids.c  |4 +-
 drivers/mtd/nand/raw/nand_jedec.c|  113 ++