All of lore.kernel.org
 help / color / mirror / Atom feed
From: Artem Bityutskiy <dedekind1@gmail.com>
To: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Cc: David Woodhouse <dwmw2@infradead.org>,
	linux-mtd@lists.infradead.org, Jamie Iles <jamie@jamieiles.com>
Subject: Re: [PATCH 01/44] mtd: add new API for handling MTD registration
Date: Wed, 08 Jun 2011 11:55:40 +0300	[thread overview]
Message-ID: <1307523340.31223.28.camel@localhost> (raw)
In-Reply-To: <1307461738-16811-1-git-send-email-dbaryshkov@gmail.com>

I agree we need a good comment, but I find this one difficult to follow.

On Tue, 2011-06-07 at 19:48 +0400, Dmitry Eremin-Solenikov wrote:
>  /**
> + * mtd_device_parse_register - register an MTD device.

Not just register, it also contains parsing functionality.

> + *
> + * @mtd: the MTD device to register
> + * @part_probe_types: the list of MTD partition probes to try

Please, name it 'types' to be consistent with 'parse_mtd_partitions()'.
Also, you do not say that this can be %NULL. With my patch, you can
refer the reader like "see 'parse_mtd_partitions()' for more
information'.

> + * @origin: start address of MTD device. =0 unless you are sure you need this.

Try to avoid using dots. Also, constants should be prefixed with %,
i.e., use %0.

> + * @defparts: default partition information to register. Only valid if
> + *		defnr_parts > 0

Ditto about a dot, prefix variables with @, i.e., in this case:
@defnr_parts > %0.

Also about naming: why "default"? What is default there? This is more
like "alternative, or fall-back" - you first try to detect partition
specified in @part_probe_types, if if you fail - you use "alternative"
partitions.

Please, rename it.

> + * @defnr_parts: the number of partitions in defparts.  If zero then the full
> + *		MTD device is registered if no partition info is found

Ditto.

> + *
> + * Extract partition info and register MTD device (partitions or a whole device)
> + * It calls parse_mtd_partitions(), checks the result. If there were no
> + * partitions found, it uses default info specified (via defparts/defnr_parts)
> + * and then registers either partitions, or (if no partitions were
> + * found/specified) the whow MTD.
> + */

Sorry, I find this unreadable.

I suggest something like this.

This function aggregates MTD partitions parsing (done by
'parse_mtd_partitions()') and MTD device and partitions registering. It
basically follows the most common pattern found in many MTD drivers:

o It first tries to probe partitions on MTD device @mtd using parsers
  specified in @types (if @types is %NULL, then the default list of
  parsers is used, see 'parse_mtd_partitions()' for more information).
o If this succeeds, this function registers the found partitions, as
  well as the whole MTD device @mtd.
o If no partitions were found this function just registers the MTD
  device @mtd and exits.

Returns zero in case of success and a negative error code in case of
failure.

Would you please amend the patch and re-send?

-- 
Best Regards,
Artem Bityutskiy (Артём Битюцкий)

  reply	other threads:[~2011-06-08  9:00 UTC|newest]

Thread overview: 70+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-07 13:35 [PATCH 00/44] Cleanup of parse/register scenario Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 01/44] mtd: add new API for handling MTD registration Dmitry Eremin-Solenikov
2011-06-07 13:44   ` Jamie Iles
2011-06-07 14:33     ` Dmitry Eremin-Solenikov
2011-06-08  8:37       ` Artem Bityutskiy
2011-06-08  8:57         ` Dmitry Eremin-Solenikov
2011-06-08  8:57           ` Artem Bityutskiy
2011-06-07 15:48     ` Dmitry Eremin-Solenikov
2011-06-08  8:55       ` Artem Bityutskiy [this message]
2011-06-08 10:19       ` Jamie Iles
2011-06-08 12:22         ` Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 02/44] mtd: lart.c: use mtd_device_parse_register Dmitry Eremin-Solenikov
2011-06-08  8:59   ` Artem Bityutskiy
2011-06-07 13:36 ` [PATCH 03/44] mtd: mtd_dataflash.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 04/44] mtd: sst25l.c: " Dmitry Eremin-Solenikov
2011-06-08  9:00   ` Artem Bityutskiy
2011-06-07 13:36 ` [PATCH 05/44] mtd: bfin-async-flash.c: " Dmitry Eremin-Solenikov
2011-06-08  9:01   ` Artem Bityutskiy
2011-06-08  9:02     ` Artem Bityutskiy
2011-06-08 14:06       ` Dmitry Eremin-Solenikov
2011-06-08 14:12         ` Artem Bityutskiy
2011-06-08 14:22           ` Dmitry Eremin-Solenikov
2011-06-08 14:24             ` Artem Bityutskiy
2011-06-08 14:31               ` Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 06/44] mtd: dc21285.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 07/44] mtd: gpio-addr-flash.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 08/44] mtd: h720x-flash.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 09/44] mtd: impa7.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 10/44] mtd: intel_vr_nor.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 11/44] mtd: ixp2000.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 12/44] mtd: ixp4xx.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 13/44] mtd: lantiq-flash.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 14/44] mtd: latch-addr-flash.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 15/44] mtd: physmap.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 16/44] mtd: plat-ram.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 17/44] mtd: pxa2xx-flash.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 18/44] mtd: rbtx4939-flash.c: " Dmitry Eremin-Solenikov
2011-06-08 13:50   ` Atsushi Nemoto
2011-06-08 14:07     ` Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 19/44] mtd: sa1100-flash.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 20/44] mtd: solutionengine.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 21/44] mtd: wr_sbc82xx_flash.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 22/44] mtd: atmel_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 23/44] mtd: bcm_umi_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 24/44] mtd: cafe_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 25/44] mtd: cmx270_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 26/44] mtd: cs553x_nand.c: " Dmitry Eremin-Solenikov
2011-06-08  9:19   ` Artem Bityutskiy
2011-06-08 14:05     ` Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 27/44] mtd: davinci_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 28/44] mtd: edb7312.c: " Dmitry Eremin-Solenikov
2011-06-08  9:20   ` Artem Bityutskiy
2011-06-08 14:04     ` Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 29/44] mtd: fsmc_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 30/44] mtd: h1910.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 31/44] mtd: jz4740_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 32/44] mtd: mxc_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 33/44] mtd: omap2.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 34/44] mtd: orion_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 35/44] mtd: plat_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 36/44] mtd: ppchameleonevb.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 37/44] mtd: pxa3xx_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 38/44] mtd: s3c2410.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 39/44] mtd: sharpsl.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 40/44] mtd: tmio_nand.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 41/44] mtd: txx9ndfmc.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 42/44] mtd: onenand/generic.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 43/44] mtd: onenand/omap2.c: " Dmitry Eremin-Solenikov
2011-06-07 13:36 ` [PATCH 44/44] mtd: onenand/samsung.c: " Dmitry Eremin-Solenikov
2011-06-08  9:26 ` [PATCH 00/44] Cleanup of parse/register scenario Artem Bityutskiy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1307523340.31223.28.camel@localhost \
    --to=dedekind1@gmail.com \
    --cc=dbaryshkov@gmail.com \
    --cc=dwmw2@infradead.org \
    --cc=jamie@jamieiles.com \
    --cc=linux-mtd@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.