On Thu, 26 Jul 2018 18:22:10 +0200 Stefan Agner <stefan at agner.ch> wrote: > > +/** > > + * struct nand_controller_ops - Controller operations > > + * > > + * @attach_chip: Callback that will be called between nand_detect() and > > + * nand_scan_tail() during nand_scan() (optional). > > + * @detach_chip: Callback that will be called from nand_cleanup() or if > > + * nand_scan_tail() fails (optional). > > This documentation reads not very helpful to me. > > It would be useful if it is written more from the driver developers > perspective, e.g. what those callbacks ideally are supposed to do... > Indeed. How about: @attach_chip: this method is called between after the NAND detection phase to let controller driver tweak/customize the configuration based on the NAND properties (page size, OOB size, ECC requirements, ...). Typically used to chose the appropriate ECC config and allocate associated resources. This hook is optional. @detach_chip: free all resources allocated/claimed in nand_controller_ops->detach_chip(). This hook is optional.