All of lore.kernel.org
 help / color / mirror / Atom feed
From: Boris Brezillon <boris.brezillon@collabora.com>
To: Miquel Raynal <miquel.raynal@bootlin.com>
Cc: Mark Rutland <mark.rutland@arm.com>,
	devicetree@vger.kernel.org, Michal Simek <monstr@monstr.eu>,
	Vignesh Raghavendra <vigneshr@ti.com>,
	Tudor Ambarus <Tudor.Ambarus@microchip.com>,
	Richard Weinberger <richard@nod.at>,
	Rob Herring <robh+dt@kernel.org>,
	linux-mtd@lists.infradead.org,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	Naga Sureshkumar Relli <nagasure@xilinx.com>,
	Ivan Djelic <ivan.djelic@parrot.com>
Subject: Re: [PATCH v3 1/8] lib/bch: Rework a little bit the exported function names
Date: Thu, 7 May 2020 13:48:22 +0200	[thread overview]
Message-ID: <20200507134822.21c965b3@collabora.com> (raw)
In-Reply-To: <20200507110034.14736-2-miquel.raynal@bootlin.com>

On Thu,  7 May 2020 13:00:27 +0200
Miquel Raynal <miquel.raynal@bootlin.com> wrote:

> There are four exported functions, all suffixed by _bch, which is clearly not the norm. Before exporting more functions, let's rename them by prefixing them with bch_ instead.
> 

Oops. Missing line wrapping here :-). Also, you don't seem to export new
functions in this series, so maybe drop that part of the explanation.
Sounds good to me otherwise, so:

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>

> This is a mechanical change:
>     init_bch -> bch_init
>     free_bch -> bch_free
>     encode_bch -> bch_encode
>     decode_bch -> bch_decode
> 
> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
> Cc: Ivan Djelic <ivan.djelic@parrot.com>
> ---
>  drivers/mtd/devices/docg3.c     | 10 +++---
>  drivers/mtd/nand/raw/nand_bch.c | 10 +++---
>  include/linux/bch.h             |  8 ++---
>  lib/bch.c                       | 64 ++++++++++++++++-----------------
>  4 files changed, 46 insertions(+), 46 deletions(-)
> 
> diff --git a/drivers/mtd/devices/docg3.c b/drivers/mtd/devices/docg3.c
> index eb0f4600efd1..799df8d03357 100644
> --- a/drivers/mtd/devices/docg3.c
> +++ b/drivers/mtd/devices/docg3.c
> @@ -647,7 +647,7 @@ static int doc_ecc_bch_fix_data(struct docg3 *docg3, void *buf, u8 *hwecc)
>  
>  	for (i = 0; i < DOC_ECC_BCH_SIZE; i++)
>  		ecc[i] = bitrev8(hwecc[i]);
> -	numerrs = decode_bch(docg3->cascade->bch, NULL,
> +	numerrs = bch_decode(docg3->cascade->bch, NULL,
>  			     DOC_ECC_BCH_COVERED_BYTES,
>  			     NULL, ecc, NULL, errorpos);
>  	BUG_ON(numerrs == -EINVAL);
> @@ -1984,8 +1984,8 @@ static int __init docg3_probe(struct platform_device *pdev)
>  		return ret;
>  	cascade->base = base;
>  	mutex_init(&cascade->lock);
> -	cascade->bch = init_bch(DOC_ECC_BCH_M, DOC_ECC_BCH_T,
> -			     DOC_ECC_BCH_PRIMPOLY);
> +	cascade->bch = bch_init(DOC_ECC_BCH_M, DOC_ECC_BCH_T,
> +				DOC_ECC_BCH_PRIMPOLY);
>  	if (!cascade->bch)
>  		return ret;
>  
> @@ -2021,7 +2021,7 @@ static int __init docg3_probe(struct platform_device *pdev)
>  	ret = -ENODEV;
>  	dev_info(dev, "No supported DiskOnChip found\n");
>  err_probe:
> -	free_bch(cascade->bch);
> +	bch_free(cascade->bch);
>  	for (floor = 0; floor < DOC_MAX_NBFLOORS; floor++)
>  		if (cascade->floors[floor])
>  			doc_release_device(cascade->floors[floor]);
> @@ -2045,7 +2045,7 @@ static int docg3_release(struct platform_device *pdev)
>  		if (cascade->floors[floor])
>  			doc_release_device(cascade->floors[floor]);
>  
> -	free_bch(docg3->cascade->bch);
> +	bch_free(docg3->cascade->bch);
>  	return 0;
>  }
>  
> diff --git a/drivers/mtd/nand/raw/nand_bch.c b/drivers/mtd/nand/raw/nand_bch.c
> index 17527310c3a1..d95fcc7358e9 100644
> --- a/drivers/mtd/nand/raw/nand_bch.c
> +++ b/drivers/mtd/nand/raw/nand_bch.c
> @@ -41,7 +41,7 @@ int nand_bch_calculate_ecc(struct nand_chip *chip, const unsigned char *buf,
>  	unsigned int i;
>  
>  	memset(code, 0, chip->ecc.bytes);
> -	encode_bch(nbc->bch, buf, chip->ecc.size, code);
> +	bch_encode(nbc->bch, buf, chip->ecc.size, code);
>  
>  	/* apply mask so that an erased page is a valid codeword */
>  	for (i = 0; i < chip->ecc.bytes; i++)
> @@ -67,7 +67,7 @@ int nand_bch_correct_data(struct nand_chip *chip, unsigned char *buf,
>  	unsigned int *errloc = nbc->errloc;
>  	int i, count;
>  
> -	count = decode_bch(nbc->bch, NULL, chip->ecc.size, read_ecc, calc_ecc,
> +	count = bch_decode(nbc->bch, NULL, chip->ecc.size, read_ecc, calc_ecc,
>  			   NULL, errloc);
>  	if (count > 0) {
>  		for (i = 0; i < count; i++) {
> @@ -130,7 +130,7 @@ struct nand_bch_control *nand_bch_init(struct mtd_info *mtd)
>  	if (!nbc)
>  		goto fail;
>  
> -	nbc->bch = init_bch(m, t, 0);
> +	nbc->bch = bch_init(m, t, 0);
>  	if (!nbc->bch)
>  		goto fail;
>  
> @@ -182,7 +182,7 @@ struct nand_bch_control *nand_bch_init(struct mtd_info *mtd)
>  		goto fail;
>  
>  	memset(erased_page, 0xff, eccsize);
> -	encode_bch(nbc->bch, erased_page, eccsize, nbc->eccmask);
> +	bch_encode(nbc->bch, erased_page, eccsize, nbc->eccmask);
>  	kfree(erased_page);
>  
>  	for (i = 0; i < eccbytes; i++)
> @@ -205,7 +205,7 @@ EXPORT_SYMBOL(nand_bch_init);
>  void nand_bch_free(struct nand_bch_control *nbc)
>  {
>  	if (nbc) {
> -		free_bch(nbc->bch);
> +		bch_free(nbc->bch);
>  		kfree(nbc->errloc);
>  		kfree(nbc->eccmask);
>  		kfree(nbc);
> diff --git a/include/linux/bch.h b/include/linux/bch.h
> index aa765af85c38..9c35e7cd5890 100644
> --- a/include/linux/bch.h
> +++ b/include/linux/bch.h
> @@ -53,14 +53,14 @@ struct bch_control {
>  	struct gf_poly *poly_2t[4];
>  };
>  
> -struct bch_control *init_bch(int m, int t, unsigned int prim_poly);
> +struct bch_control *bch_init(int m, int t, unsigned int prim_poly);
>  
> -void free_bch(struct bch_control *bch);
> +void bch_free(struct bch_control *bch);
>  
> -void encode_bch(struct bch_control *bch, const uint8_t *data,
> +void bch_encode(struct bch_control *bch, const uint8_t *data,
>  		unsigned int len, uint8_t *ecc);
>  
> -int decode_bch(struct bch_control *bch, const uint8_t *data, unsigned int len,
> +int bch_decode(struct bch_control *bch, const uint8_t *data, unsigned int len,
>  	       const uint8_t *recv_ecc, const uint8_t *calc_ecc,
>  	       const unsigned int *syn, unsigned int *errloc);
>  
> diff --git a/lib/bch.c b/lib/bch.c
> index 052d3fb753a0..1091841ac716 100644
> --- a/lib/bch.c
> +++ b/lib/bch.c
> @@ -23,15 +23,15 @@
>   * This library provides runtime configurable encoding/decoding of binary
>   * Bose-Chaudhuri-Hocquenghem (BCH) codes.
>   *
> - * Call init_bch to get a pointer to a newly allocated bch_control structure for
> + * Call bch_init to get a pointer to a newly allocated bch_control structure for
>   * the given m (Galois field order), t (error correction capability) and
>   * (optional) primitive polynomial parameters.
>   *
> - * Call encode_bch to compute and store ecc parity bytes to a given buffer.
> - * Call decode_bch to detect and locate errors in received data.
> + * Call bch_encode to compute and store ecc parity bytes to a given buffer.
> + * Call bch_decode to detect and locate errors in received data.
>   *
>   * On systems supporting hw BCH features, intermediate results may be provided
> - * to decode_bch in order to skip certain steps. See decode_bch() documentation
> + * to bch_decode in order to skip certain steps. See bch_decode() documentation
>   * for details.
>   *
>   * Option CONFIG_BCH_CONST_PARAMS can be used to force fixed values of
> @@ -115,9 +115,9 @@ struct gf_poly_deg1 {
>  };
>  
>  /*
> - * same as encode_bch(), but process input data one byte at a time
> + * same as bch_encode(), but process input data one byte at a time
>   */
> -static void encode_bch_unaligned(struct bch_control *bch,
> +static void bch_encode_unaligned(struct bch_control *bch,
>  				 const unsigned char *data, unsigned int len,
>  				 uint32_t *ecc)
>  {
> @@ -174,7 +174,7 @@ static void store_ecc8(struct bch_control *bch, uint8_t *dst,
>  }
>  
>  /**
> - * encode_bch - calculate BCH ecc parity of data
> + * bch_encode - calculate BCH ecc parity of data
>   * @bch:   BCH control structure
>   * @data:  data to encode
>   * @len:   data length in bytes
> @@ -187,7 +187,7 @@ static void store_ecc8(struct bch_control *bch, uint8_t *dst,
>   * The exact number of computed ecc parity bits is given by member @ecc_bits of
>   * @bch; it may be less than m*t for large values of t.
>   */
> -void encode_bch(struct bch_control *bch, const uint8_t *data,
> +void bch_encode(struct bch_control *bch, const uint8_t *data,
>  		unsigned int len, uint8_t *ecc)
>  {
>  	const unsigned int l = BCH_ECC_WORDS(bch)-1;
> @@ -215,7 +215,7 @@ void encode_bch(struct bch_control *bch, const uint8_t *data,
>  	m = ((unsigned long)data) & 3;
>  	if (m) {
>  		mlen = (len < (4-m)) ? len : 4-m;
> -		encode_bch_unaligned(bch, data, mlen, bch->ecc_buf);
> +		bch_encode_unaligned(bch, data, mlen, bch->ecc_buf);
>  		data += mlen;
>  		len  -= mlen;
>  	}
> @@ -255,13 +255,13 @@ void encode_bch(struct bch_control *bch, const uint8_t *data,
>  
>  	/* process last unaligned bytes */
>  	if (len)
> -		encode_bch_unaligned(bch, data, len, bch->ecc_buf);
> +		bch_encode_unaligned(bch, data, len, bch->ecc_buf);
>  
>  	/* store ecc parity bytes into original parity buffer */
>  	if (ecc)
>  		store_ecc8(bch, ecc, bch->ecc_buf);
>  }
> -EXPORT_SYMBOL_GPL(encode_bch);
> +EXPORT_SYMBOL_GPL(bch_encode);
>  
>  static inline int modulo(struct bch_control *bch, unsigned int v)
>  {
> @@ -952,7 +952,7 @@ static int chien_search(struct bch_control *bch, unsigned int len,
>  #endif /* USE_CHIEN_SEARCH */
>  
>  /**
> - * decode_bch - decode received codeword and find bit error locations
> + * bch_decode - decode received codeword and find bit error locations
>   * @bch:      BCH control structure
>   * @data:     received data, ignored if @calc_ecc is provided
>   * @len:      data length in bytes, must always be provided
> @@ -966,22 +966,22 @@ static int chien_search(struct bch_control *bch, unsigned int len,
>   *  invalid parameters were provided
>   *
>   * Depending on the available hw BCH support and the need to compute @calc_ecc
> - * separately (using encode_bch()), this function should be called with one of
> + * separately (using bch_encode()), this function should be called with one of
>   * the following parameter configurations -
>   *
>   * by providing @data and @recv_ecc only:
> - *   decode_bch(@bch, @data, @len, @recv_ecc, NULL, NULL, @errloc)
> + *   bch_decode(@bch, @data, @len, @recv_ecc, NULL, NULL, @errloc)
>   *
>   * by providing @recv_ecc and @calc_ecc:
> - *   decode_bch(@bch, NULL, @len, @recv_ecc, @calc_ecc, NULL, @errloc)
> + *   bch_decode(@bch, NULL, @len, @recv_ecc, @calc_ecc, NULL, @errloc)
>   *
>   * by providing ecc = recv_ecc XOR calc_ecc:
> - *   decode_bch(@bch, NULL, @len, NULL, ecc, NULL, @errloc)
> + *   bch_decode(@bch, NULL, @len, NULL, ecc, NULL, @errloc)
>   *
>   * by providing syndrome results @syn:
> - *   decode_bch(@bch, NULL, @len, NULL, NULL, @syn, @errloc)
> + *   bch_decode(@bch, NULL, @len, NULL, NULL, @syn, @errloc)
>   *
> - * Once decode_bch() has successfully returned with a positive value, error
> + * Once bch_decode() has successfully returned with a positive value, error
>   * locations returned in array @errloc should be interpreted as follows -
>   *
>   * if (errloc[n] >= 8*len), then n-th error is located in ecc (no need for
> @@ -993,7 +993,7 @@ static int chien_search(struct bch_control *bch, unsigned int len,
>   * Note that this function does not perform any data correction by itself, it
>   * merely indicates error locations.
>   */
> -int decode_bch(struct bch_control *bch, const uint8_t *data, unsigned int len,
> +int bch_decode(struct bch_control *bch, const uint8_t *data, unsigned int len,
>  	       const uint8_t *recv_ecc, const uint8_t *calc_ecc,
>  	       const unsigned int *syn, unsigned int *errloc)
>  {
> @@ -1012,7 +1012,7 @@ int decode_bch(struct bch_control *bch, const uint8_t *data, unsigned int len,
>  			/* compute received data ecc into an internal buffer */
>  			if (!data || !recv_ecc)
>  				return -EINVAL;
> -			encode_bch(bch, data, len, NULL);
> +			bch_encode(bch, data, len, NULL);
>  		} else {
>  			/* load provided calculated ecc */
>  			load_ecc8(bch, bch->ecc_buf, calc_ecc);
> @@ -1053,7 +1053,7 @@ int decode_bch(struct bch_control *bch, const uint8_t *data, unsigned int len,
>  	}
>  	return (err >= 0) ? err : -EBADMSG;
>  }
> -EXPORT_SYMBOL_GPL(decode_bch);
> +EXPORT_SYMBOL_GPL(bch_decode);
>  
>  /*
>   * generate Galois field lookup tables
> @@ -1236,7 +1236,7 @@ static uint32_t *compute_generator_polynomial(struct bch_control *bch)
>  }
>  
>  /**
> - * init_bch - initialize a BCH encoder/decoder
> + * bch_init - initialize a BCH encoder/decoder
>   * @m:          Galois field order, should be in the range 5-15
>   * @t:          maximum error correction capability, in bits
>   * @prim_poly:  user-provided primitive polynomial (or 0 to use default)
> @@ -1246,17 +1246,17 @@ static uint32_t *compute_generator_polynomial(struct bch_control *bch)
>   *
>   * This initialization can take some time, as lookup tables are built for fast
>   * encoding/decoding; make sure not to call this function from a time critical
> - * path. Usually, init_bch() should be called on module/driver init and
> - * free_bch() should be called to release memory on exit.
> + * path. Usually, bch_init() should be called on module/driver init and
> + * bch_free() should be called to release memory on exit.
>   *
>   * You may provide your own primitive polynomial of degree @m in argument
> - * @prim_poly, or let init_bch() use its default polynomial.
> + * @prim_poly, or let bch_init() use its default polynomial.
>   *
> - * Once init_bch() has successfully returned a pointer to a newly allocated
> + * Once bch_init() has successfully returned a pointer to a newly allocated
>   * BCH control structure, ecc length in bytes is given by member @ecc_bytes of
>   * the structure.
>   */
> -struct bch_control *init_bch(int m, int t, unsigned int prim_poly)
> +struct bch_control *bch_init(int m, int t, unsigned int prim_poly)
>  {
>  	int err = 0;
>  	unsigned int i, words;
> @@ -1347,16 +1347,16 @@ struct bch_control *init_bch(int m, int t, unsigned int prim_poly)
>  	return bch;
>  
>  fail:
> -	free_bch(bch);
> +	bch_free(bch);
>  	return NULL;
>  }
> -EXPORT_SYMBOL_GPL(init_bch);
> +EXPORT_SYMBOL_GPL(bch_init);
>  
>  /**
> - *  free_bch - free the BCH control structure
> + *  bch_free - free the BCH control structure
>   *  @bch:    BCH control structure to release
>   */
> -void free_bch(struct bch_control *bch)
> +void bch_free(struct bch_control *bch)
>  {
>  	unsigned int i;
>  
> @@ -1377,7 +1377,7 @@ void free_bch(struct bch_control *bch)
>  		kfree(bch);
>  	}
>  }
> -EXPORT_SYMBOL_GPL(free_bch);
> +EXPORT_SYMBOL_GPL(bch_free);
>  
>  MODULE_LICENSE("GPL");
>  MODULE_AUTHOR("Ivan Djelic <ivan.djelic@parrot.com>");


______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

WARNING: multiple messages have this Message-ID (diff)
From: Boris Brezillon <boris.brezillon@collabora.com>
To: Miquel Raynal <miquel.raynal@bootlin.com>
Cc: Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>, <devicetree@vger.kernel.org>,
	Richard Weinberger <richard@nod.at>,
	Vignesh Raghavendra <vigneshr@ti.com>,
	Tudor Ambarus <Tudor.Ambarus@microchip.com>,
	<linux-mtd@lists.infradead.org>,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	Michal Simek <monstr@monstr.eu>,
	Naga Sureshkumar Relli <nagasure@xilinx.com>,
	Ivan Djelic <ivan.djelic@parrot.com>
Subject: Re: [PATCH v3 1/8] lib/bch: Rework a little bit the exported function names
Date: Thu, 7 May 2020 13:48:22 +0200	[thread overview]
Message-ID: <20200507134822.21c965b3@collabora.com> (raw)
In-Reply-To: <20200507110034.14736-2-miquel.raynal@bootlin.com>

On Thu,  7 May 2020 13:00:27 +0200
Miquel Raynal <miquel.raynal@bootlin.com> wrote:

> There are four exported functions, all suffixed by _bch, which is clearly not the norm. Before exporting more functions, let's rename them by prefixing them with bch_ instead.
> 

Oops. Missing line wrapping here :-). Also, you don't seem to export new
functions in this series, so maybe drop that part of the explanation.
Sounds good to me otherwise, so:

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>

> This is a mechanical change:
>     init_bch -> bch_init
>     free_bch -> bch_free
>     encode_bch -> bch_encode
>     decode_bch -> bch_decode
> 
> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
> Cc: Ivan Djelic <ivan.djelic@parrot.com>
> ---
>  drivers/mtd/devices/docg3.c     | 10 +++---
>  drivers/mtd/nand/raw/nand_bch.c | 10 +++---
>  include/linux/bch.h             |  8 ++---
>  lib/bch.c                       | 64 ++++++++++++++++-----------------
>  4 files changed, 46 insertions(+), 46 deletions(-)
> 
> diff --git a/drivers/mtd/devices/docg3.c b/drivers/mtd/devices/docg3.c
> index eb0f4600efd1..799df8d03357 100644
> --- a/drivers/mtd/devices/docg3.c
> +++ b/drivers/mtd/devices/docg3.c
> @@ -647,7 +647,7 @@ static int doc_ecc_bch_fix_data(struct docg3 *docg3, void *buf, u8 *hwecc)
>  
>  	for (i = 0; i < DOC_ECC_BCH_SIZE; i++)
>  		ecc[i] = bitrev8(hwecc[i]);
> -	numerrs = decode_bch(docg3->cascade->bch, NULL,
> +	numerrs = bch_decode(docg3->cascade->bch, NULL,
>  			     DOC_ECC_BCH_COVERED_BYTES,
>  			     NULL, ecc, NULL, errorpos);
>  	BUG_ON(numerrs == -EINVAL);
> @@ -1984,8 +1984,8 @@ static int __init docg3_probe(struct platform_device *pdev)
>  		return ret;
>  	cascade->base = base;
>  	mutex_init(&cascade->lock);
> -	cascade->bch = init_bch(DOC_ECC_BCH_M, DOC_ECC_BCH_T,
> -			     DOC_ECC_BCH_PRIMPOLY);
> +	cascade->bch = bch_init(DOC_ECC_BCH_M, DOC_ECC_BCH_T,
> +				DOC_ECC_BCH_PRIMPOLY);
>  	if (!cascade->bch)
>  		return ret;
>  
> @@ -2021,7 +2021,7 @@ static int __init docg3_probe(struct platform_device *pdev)
>  	ret = -ENODEV;
>  	dev_info(dev, "No supported DiskOnChip found\n");
>  err_probe:
> -	free_bch(cascade->bch);
> +	bch_free(cascade->bch);
>  	for (floor = 0; floor < DOC_MAX_NBFLOORS; floor++)
>  		if (cascade->floors[floor])
>  			doc_release_device(cascade->floors[floor]);
> @@ -2045,7 +2045,7 @@ static int docg3_release(struct platform_device *pdev)
>  		if (cascade->floors[floor])
>  			doc_release_device(cascade->floors[floor]);
>  
> -	free_bch(docg3->cascade->bch);
> +	bch_free(docg3->cascade->bch);
>  	return 0;
>  }
>  
> diff --git a/drivers/mtd/nand/raw/nand_bch.c b/drivers/mtd/nand/raw/nand_bch.c
> index 17527310c3a1..d95fcc7358e9 100644
> --- a/drivers/mtd/nand/raw/nand_bch.c
> +++ b/drivers/mtd/nand/raw/nand_bch.c
> @@ -41,7 +41,7 @@ int nand_bch_calculate_ecc(struct nand_chip *chip, const unsigned char *buf,
>  	unsigned int i;
>  
>  	memset(code, 0, chip->ecc.bytes);
> -	encode_bch(nbc->bch, buf, chip->ecc.size, code);
> +	bch_encode(nbc->bch, buf, chip->ecc.size, code);
>  
>  	/* apply mask so that an erased page is a valid codeword */
>  	for (i = 0; i < chip->ecc.bytes; i++)
> @@ -67,7 +67,7 @@ int nand_bch_correct_data(struct nand_chip *chip, unsigned char *buf,
>  	unsigned int *errloc = nbc->errloc;
>  	int i, count;
>  
> -	count = decode_bch(nbc->bch, NULL, chip->ecc.size, read_ecc, calc_ecc,
> +	count = bch_decode(nbc->bch, NULL, chip->ecc.size, read_ecc, calc_ecc,
>  			   NULL, errloc);
>  	if (count > 0) {
>  		for (i = 0; i < count; i++) {
> @@ -130,7 +130,7 @@ struct nand_bch_control *nand_bch_init(struct mtd_info *mtd)
>  	if (!nbc)
>  		goto fail;
>  
> -	nbc->bch = init_bch(m, t, 0);
> +	nbc->bch = bch_init(m, t, 0);
>  	if (!nbc->bch)
>  		goto fail;
>  
> @@ -182,7 +182,7 @@ struct nand_bch_control *nand_bch_init(struct mtd_info *mtd)
>  		goto fail;
>  
>  	memset(erased_page, 0xff, eccsize);
> -	encode_bch(nbc->bch, erased_page, eccsize, nbc->eccmask);
> +	bch_encode(nbc->bch, erased_page, eccsize, nbc->eccmask);
>  	kfree(erased_page);
>  
>  	for (i = 0; i < eccbytes; i++)
> @@ -205,7 +205,7 @@ EXPORT_SYMBOL(nand_bch_init);
>  void nand_bch_free(struct nand_bch_control *nbc)
>  {
>  	if (nbc) {
> -		free_bch(nbc->bch);
> +		bch_free(nbc->bch);
>  		kfree(nbc->errloc);
>  		kfree(nbc->eccmask);
>  		kfree(nbc);
> diff --git a/include/linux/bch.h b/include/linux/bch.h
> index aa765af85c38..9c35e7cd5890 100644
> --- a/include/linux/bch.h
> +++ b/include/linux/bch.h
> @@ -53,14 +53,14 @@ struct bch_control {
>  	struct gf_poly *poly_2t[4];
>  };
>  
> -struct bch_control *init_bch(int m, int t, unsigned int prim_poly);
> +struct bch_control *bch_init(int m, int t, unsigned int prim_poly);
>  
> -void free_bch(struct bch_control *bch);
> +void bch_free(struct bch_control *bch);
>  
> -void encode_bch(struct bch_control *bch, const uint8_t *data,
> +void bch_encode(struct bch_control *bch, const uint8_t *data,
>  		unsigned int len, uint8_t *ecc);
>  
> -int decode_bch(struct bch_control *bch, const uint8_t *data, unsigned int len,
> +int bch_decode(struct bch_control *bch, const uint8_t *data, unsigned int len,
>  	       const uint8_t *recv_ecc, const uint8_t *calc_ecc,
>  	       const unsigned int *syn, unsigned int *errloc);
>  
> diff --git a/lib/bch.c b/lib/bch.c
> index 052d3fb753a0..1091841ac716 100644
> --- a/lib/bch.c
> +++ b/lib/bch.c
> @@ -23,15 +23,15 @@
>   * This library provides runtime configurable encoding/decoding of binary
>   * Bose-Chaudhuri-Hocquenghem (BCH) codes.
>   *
> - * Call init_bch to get a pointer to a newly allocated bch_control structure for
> + * Call bch_init to get a pointer to a newly allocated bch_control structure for
>   * the given m (Galois field order), t (error correction capability) and
>   * (optional) primitive polynomial parameters.
>   *
> - * Call encode_bch to compute and store ecc parity bytes to a given buffer.
> - * Call decode_bch to detect and locate errors in received data.
> + * Call bch_encode to compute and store ecc parity bytes to a given buffer.
> + * Call bch_decode to detect and locate errors in received data.
>   *
>   * On systems supporting hw BCH features, intermediate results may be provided
> - * to decode_bch in order to skip certain steps. See decode_bch() documentation
> + * to bch_decode in order to skip certain steps. See bch_decode() documentation
>   * for details.
>   *
>   * Option CONFIG_BCH_CONST_PARAMS can be used to force fixed values of
> @@ -115,9 +115,9 @@ struct gf_poly_deg1 {
>  };
>  
>  /*
> - * same as encode_bch(), but process input data one byte at a time
> + * same as bch_encode(), but process input data one byte at a time
>   */
> -static void encode_bch_unaligned(struct bch_control *bch,
> +static void bch_encode_unaligned(struct bch_control *bch,
>  				 const unsigned char *data, unsigned int len,
>  				 uint32_t *ecc)
>  {
> @@ -174,7 +174,7 @@ static void store_ecc8(struct bch_control *bch, uint8_t *dst,
>  }
>  
>  /**
> - * encode_bch - calculate BCH ecc parity of data
> + * bch_encode - calculate BCH ecc parity of data
>   * @bch:   BCH control structure
>   * @data:  data to encode
>   * @len:   data length in bytes
> @@ -187,7 +187,7 @@ static void store_ecc8(struct bch_control *bch, uint8_t *dst,
>   * The exact number of computed ecc parity bits is given by member @ecc_bits of
>   * @bch; it may be less than m*t for large values of t.
>   */
> -void encode_bch(struct bch_control *bch, const uint8_t *data,
> +void bch_encode(struct bch_control *bch, const uint8_t *data,
>  		unsigned int len, uint8_t *ecc)
>  {
>  	const unsigned int l = BCH_ECC_WORDS(bch)-1;
> @@ -215,7 +215,7 @@ void encode_bch(struct bch_control *bch, const uint8_t *data,
>  	m = ((unsigned long)data) & 3;
>  	if (m) {
>  		mlen = (len < (4-m)) ? len : 4-m;
> -		encode_bch_unaligned(bch, data, mlen, bch->ecc_buf);
> +		bch_encode_unaligned(bch, data, mlen, bch->ecc_buf);
>  		data += mlen;
>  		len  -= mlen;
>  	}
> @@ -255,13 +255,13 @@ void encode_bch(struct bch_control *bch, const uint8_t *data,
>  
>  	/* process last unaligned bytes */
>  	if (len)
> -		encode_bch_unaligned(bch, data, len, bch->ecc_buf);
> +		bch_encode_unaligned(bch, data, len, bch->ecc_buf);
>  
>  	/* store ecc parity bytes into original parity buffer */
>  	if (ecc)
>  		store_ecc8(bch, ecc, bch->ecc_buf);
>  }
> -EXPORT_SYMBOL_GPL(encode_bch);
> +EXPORT_SYMBOL_GPL(bch_encode);
>  
>  static inline int modulo(struct bch_control *bch, unsigned int v)
>  {
> @@ -952,7 +952,7 @@ static int chien_search(struct bch_control *bch, unsigned int len,
>  #endif /* USE_CHIEN_SEARCH */
>  
>  /**
> - * decode_bch - decode received codeword and find bit error locations
> + * bch_decode - decode received codeword and find bit error locations
>   * @bch:      BCH control structure
>   * @data:     received data, ignored if @calc_ecc is provided
>   * @len:      data length in bytes, must always be provided
> @@ -966,22 +966,22 @@ static int chien_search(struct bch_control *bch, unsigned int len,
>   *  invalid parameters were provided
>   *
>   * Depending on the available hw BCH support and the need to compute @calc_ecc
> - * separately (using encode_bch()), this function should be called with one of
> + * separately (using bch_encode()), this function should be called with one of
>   * the following parameter configurations -
>   *
>   * by providing @data and @recv_ecc only:
> - *   decode_bch(@bch, @data, @len, @recv_ecc, NULL, NULL, @errloc)
> + *   bch_decode(@bch, @data, @len, @recv_ecc, NULL, NULL, @errloc)
>   *
>   * by providing @recv_ecc and @calc_ecc:
> - *   decode_bch(@bch, NULL, @len, @recv_ecc, @calc_ecc, NULL, @errloc)
> + *   bch_decode(@bch, NULL, @len, @recv_ecc, @calc_ecc, NULL, @errloc)
>   *
>   * by providing ecc = recv_ecc XOR calc_ecc:
> - *   decode_bch(@bch, NULL, @len, NULL, ecc, NULL, @errloc)
> + *   bch_decode(@bch, NULL, @len, NULL, ecc, NULL, @errloc)
>   *
>   * by providing syndrome results @syn:
> - *   decode_bch(@bch, NULL, @len, NULL, NULL, @syn, @errloc)
> + *   bch_decode(@bch, NULL, @len, NULL, NULL, @syn, @errloc)
>   *
> - * Once decode_bch() has successfully returned with a positive value, error
> + * Once bch_decode() has successfully returned with a positive value, error
>   * locations returned in array @errloc should be interpreted as follows -
>   *
>   * if (errloc[n] >= 8*len), then n-th error is located in ecc (no need for
> @@ -993,7 +993,7 @@ static int chien_search(struct bch_control *bch, unsigned int len,
>   * Note that this function does not perform any data correction by itself, it
>   * merely indicates error locations.
>   */
> -int decode_bch(struct bch_control *bch, const uint8_t *data, unsigned int len,
> +int bch_decode(struct bch_control *bch, const uint8_t *data, unsigned int len,
>  	       const uint8_t *recv_ecc, const uint8_t *calc_ecc,
>  	       const unsigned int *syn, unsigned int *errloc)
>  {
> @@ -1012,7 +1012,7 @@ int decode_bch(struct bch_control *bch, const uint8_t *data, unsigned int len,
>  			/* compute received data ecc into an internal buffer */
>  			if (!data || !recv_ecc)
>  				return -EINVAL;
> -			encode_bch(bch, data, len, NULL);
> +			bch_encode(bch, data, len, NULL);
>  		} else {
>  			/* load provided calculated ecc */
>  			load_ecc8(bch, bch->ecc_buf, calc_ecc);
> @@ -1053,7 +1053,7 @@ int decode_bch(struct bch_control *bch, const uint8_t *data, unsigned int len,
>  	}
>  	return (err >= 0) ? err : -EBADMSG;
>  }
> -EXPORT_SYMBOL_GPL(decode_bch);
> +EXPORT_SYMBOL_GPL(bch_decode);
>  
>  /*
>   * generate Galois field lookup tables
> @@ -1236,7 +1236,7 @@ static uint32_t *compute_generator_polynomial(struct bch_control *bch)
>  }
>  
>  /**
> - * init_bch - initialize a BCH encoder/decoder
> + * bch_init - initialize a BCH encoder/decoder
>   * @m:          Galois field order, should be in the range 5-15
>   * @t:          maximum error correction capability, in bits
>   * @prim_poly:  user-provided primitive polynomial (or 0 to use default)
> @@ -1246,17 +1246,17 @@ static uint32_t *compute_generator_polynomial(struct bch_control *bch)
>   *
>   * This initialization can take some time, as lookup tables are built for fast
>   * encoding/decoding; make sure not to call this function from a time critical
> - * path. Usually, init_bch() should be called on module/driver init and
> - * free_bch() should be called to release memory on exit.
> + * path. Usually, bch_init() should be called on module/driver init and
> + * bch_free() should be called to release memory on exit.
>   *
>   * You may provide your own primitive polynomial of degree @m in argument
> - * @prim_poly, or let init_bch() use its default polynomial.
> + * @prim_poly, or let bch_init() use its default polynomial.
>   *
> - * Once init_bch() has successfully returned a pointer to a newly allocated
> + * Once bch_init() has successfully returned a pointer to a newly allocated
>   * BCH control structure, ecc length in bytes is given by member @ecc_bytes of
>   * the structure.
>   */
> -struct bch_control *init_bch(int m, int t, unsigned int prim_poly)
> +struct bch_control *bch_init(int m, int t, unsigned int prim_poly)
>  {
>  	int err = 0;
>  	unsigned int i, words;
> @@ -1347,16 +1347,16 @@ struct bch_control *init_bch(int m, int t, unsigned int prim_poly)
>  	return bch;
>  
>  fail:
> -	free_bch(bch);
> +	bch_free(bch);
>  	return NULL;
>  }
> -EXPORT_SYMBOL_GPL(init_bch);
> +EXPORT_SYMBOL_GPL(bch_init);
>  
>  /**
> - *  free_bch - free the BCH control structure
> + *  bch_free - free the BCH control structure
>   *  @bch:    BCH control structure to release
>   */
> -void free_bch(struct bch_control *bch)
> +void bch_free(struct bch_control *bch)
>  {
>  	unsigned int i;
>  
> @@ -1377,7 +1377,7 @@ void free_bch(struct bch_control *bch)
>  		kfree(bch);
>  	}
>  }
> -EXPORT_SYMBOL_GPL(free_bch);
> +EXPORT_SYMBOL_GPL(bch_free);
>  
>  MODULE_LICENSE("GPL");
>  MODULE_AUTHOR("Ivan Djelic <ivan.djelic@parrot.com>");


  reply	other threads:[~2020-05-07 11:48 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-07 11:00 [PATCH v3 0/8] New Arasan NAND controller driver Miquel Raynal
2020-05-07 11:00 ` Miquel Raynal
2020-05-07 11:00 ` [PATCH v3 1/8] lib/bch: Rework a little bit the exported function names Miquel Raynal
2020-05-07 11:00   ` Miquel Raynal
2020-05-07 11:48   ` Boris Brezillon [this message]
2020-05-07 11:48     ` Boris Brezillon
2020-05-07 14:11     ` Miquel Raynal
2020-05-07 14:11       ` Miquel Raynal
2020-05-07 11:00 ` [PATCH v3 2/8] lib/bch: Allow easy bit swapping Miquel Raynal
2020-05-07 11:00   ` Miquel Raynal
2020-05-07 11:43   ` Boris Brezillon
2020-05-07 11:43     ` Boris Brezillon
2020-05-07 14:09     ` Miquel Raynal
2020-05-07 14:09       ` Miquel Raynal
2020-05-07 11:00 ` [PATCH v3 3/8] mtd: rawnand: Ensure the number of bitflips is consistent Miquel Raynal
2020-05-07 11:00   ` Miquel Raynal
2020-05-07 11:00 ` [PATCH v3 4/8] mtd: rawnand: Add nand_extract_bits() Miquel Raynal
2020-05-07 11:00   ` Miquel Raynal
2020-05-07 11:49   ` Boris Brezillon
2020-05-07 11:49     ` Boris Brezillon
2020-05-07 14:12     ` Miquel Raynal
2020-05-07 14:12       ` Miquel Raynal
2020-05-08 17:20       ` Miquel Raynal
2020-05-08 17:20         ` Miquel Raynal
2020-05-07 11:00 ` [PATCH v3 5/8] MAINTAINERS: Add Arasan NAND controller and bindings Miquel Raynal
2020-05-07 11:00   ` Miquel Raynal
2020-05-07 11:50   ` Boris Brezillon
2020-05-07 11:50     ` Boris Brezillon
2020-05-07 11:00 ` [PATCH v3 6/8] dt-bindings: mtd: Document ARASAN NAND bindings Miquel Raynal
2020-05-07 11:00   ` Miquel Raynal
2020-05-07 11:00 ` [PATCH v3 7/8] mtd: rawnand: arasan: Add new Arasan NAND controller Miquel Raynal
2020-05-07 11:00   ` Miquel Raynal
2020-05-07 12:11   ` Boris Brezillon
2020-05-07 12:11     ` Boris Brezillon
2020-05-07 15:13     ` Miquel Raynal
2020-05-07 15:13       ` Miquel Raynal
2020-05-07 15:24       ` Boris Brezillon
2020-05-07 15:24         ` Boris Brezillon
2020-05-07 15:53         ` Miquel Raynal
2020-05-07 15:53           ` Miquel Raynal
2020-05-07 16:12           ` Boris Brezillon
2020-05-07 16:12             ` Boris Brezillon
2020-05-07 12:51   ` Boris Brezillon
2020-05-07 12:51     ` Boris Brezillon
2020-05-07 15:45     ` Miquel Raynal
2020-05-07 15:45       ` Miquel Raynal
2020-05-07 16:11       ` Boris Brezillon
2020-05-07 16:11         ` Boris Brezillon
2020-05-07 16:19         ` Miquel Raynal
2020-05-07 16:19           ` Miquel Raynal
2020-05-07 19:13     ` Miquel Raynal
2020-05-07 19:13       ` Miquel Raynal
2020-05-07 11:00 ` [PATCH v3 8/8] mtd: rawnand: arasan: Support the hardware BCH ECC engine Miquel Raynal
2020-05-07 11:00   ` Miquel Raynal
2020-05-07 12:03   ` Boris Brezillon
2020-05-07 12:03     ` Boris Brezillon
2020-05-07 15:09     ` Miquel Raynal
2020-05-07 15:09       ` Miquel Raynal

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=20200507134822.21c965b3@collabora.com \
    --to=boris.brezillon@collabora.com \
    --cc=Tudor.Ambarus@microchip.com \
    --cc=devicetree@vger.kernel.org \
    --cc=ivan.djelic@parrot.com \
    --cc=linux-mtd@lists.infradead.org \
    --cc=mark.rutland@arm.com \
    --cc=miquel.raynal@bootlin.com \
    --cc=monstr@monstr.eu \
    --cc=nagasure@xilinx.com \
    --cc=richard@nod.at \
    --cc=robh+dt@kernel.org \
    --cc=thomas.petazzoni@bootlin.com \
    --cc=vigneshr@ti.com \
    /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.