[PULL v2] mtd: nand: changes for 4.12
Boris Brezillon
boris.brezillon at free-electrons.com
Mon Apr 24 23:51:56 PDT 2017
On Mon, 24 Apr 2017 18:21:16 -0700
Brian Norris <computersforpeace at gmail.com> wrote:
> On Sat, Apr 15, 2017 at 09:20:58AM +0200, Boris Brezillon wrote:
> > Hi Brian,
> >
> > No changes from my v1 except the fix in the new Atmel NAND controller
> > driver (bug reported by Alexandre).
> >
> > As you can see, the PR is pretty big compared to 4.11, and it's mainly
> > due to the Denali driver rework/cleanup (which I'd like to thank
> > Masahiro for), the addition of the per-vendor initialization
> > infrastructure and the complete rewrite of the Atmel driver.
> >
> > The rest of the commits are just simple fixes/improvements to existing
> > drivers or to the core.
> >
> > Let me know if you see any problem.
>
> I've gotten partway through your PR, and fortunately Linus blessed me
> with another week too :)
>
> Can you run some of your new stuff through sparse, and maybe coccinelle
> (I think 'make coccicheck' would suffice).
When I run
make coccicheck MODE=patch M=drivers/mtd/nand/ V=1
it fails.
I'm using spatch 1.0.4 (the one packaged by debian/ubuntu).
> I see a lot of complaints,
> some just from migrated/refactored code, but some new. Feel free to fix
> any of these on top, of course. I'll continue to review the current PR.
>
> A starter diff is appended, though it has been only compile tested.
Looks good to me. Thanks for the fixes, I'll squash the changes in the
initial commit.
I'll wait a bit before sending a new PR so that you can finish your
review.
Regards,
Boris
>
> Signed-off-by: Brian Norris <computersforpeace at gmail.com>
> ---
> drivers/mtd/nand/atmel/nand-controller.c | 5 ++---
> drivers/mtd/nand/atmel/pmecc.c | 8 ++++----
> 2 files changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/mtd/nand/atmel/nand-controller.c b/drivers/mtd/nand/atmel/nand-controller.c
> index d5be88f258fc..3b2446896147 100644
> --- a/drivers/mtd/nand/atmel/nand-controller.c
> +++ b/drivers/mtd/nand/atmel/nand-controller.c
> @@ -1744,7 +1744,6 @@ atmel_hsmc_nand_controller_legacy_init(struct atmel_hsmc_nand_controller *nc)
> .reg_bits = 32,
> .val_bits = 32,
> .reg_stride = 4,
> - .val_bits = 32,
> };
>
> struct device *dev = nc->base.dev;
> @@ -1979,7 +1978,7 @@ static int atmel_hsmc_nand_controller_probe(struct platform_device *pdev,
> return ret;
> }
>
> -const struct atmel_nand_controller_ops atmel_hsmc_nc_ops = {
> +static const struct atmel_nand_controller_ops atmel_hsmc_nc_ops = {
> .probe = atmel_hsmc_nand_controller_probe,
> .remove = atmel_hsmc_nand_controller_remove,
> .ecc_init = atmel_hsmc_nand_ecc_init,
> @@ -2038,7 +2037,7 @@ atmel_smc_nand_controller_remove(struct atmel_nand_controller *nc)
> return 0;
> }
>
> -const struct atmel_nand_controller_ops atmel_smc_nc_ops = {
> +static const struct atmel_nand_controller_ops atmel_smc_nc_ops = {
> .probe = atmel_smc_nand_controller_probe,
> .remove = atmel_smc_nand_controller_remove,
> .ecc_init = atmel_nand_ecc_init,
> diff --git a/drivers/mtd/nand/atmel/pmecc.c b/drivers/mtd/nand/atmel/pmecc.c
> index 1528aa4713a3..55a8ee5306ea 100644
> --- a/drivers/mtd/nand/atmel/pmecc.c
> +++ b/drivers/mtd/nand/atmel/pmecc.c
> @@ -371,7 +371,7 @@ atmel_pmecc_create_user(struct atmel_pmecc *pmecc,
>
> user->pmecc = pmecc;
>
> - user->partial_syn = (u16 *)PTR_ALIGN(user + 1, sizeof(u16));
> + user->partial_syn = (s16 *)PTR_ALIGN(user + 1, sizeof(u16));
> user->si = user->partial_syn + ((2 * req->ecc.strength) + 1);
> user->lmu = user->si + ((2 * req->ecc.strength) + 1);
> user->smu = user->lmu + (req->ecc.strength + 1);
> @@ -896,20 +896,20 @@ static struct atmel_pmecc *atmel_pmecc_get_by_node(struct device *userdev,
>
> static const int atmel_pmecc_strengths[] = { 2, 4, 8, 12, 24, 32 };
>
> -struct atmel_pmecc_caps at91sam9g45_caps = {
> +static struct atmel_pmecc_caps at91sam9g45_caps = {
> .strengths = atmel_pmecc_strengths,
> .nstrengths = 5,
> .el_offset = 0x8c,
> };
>
> -struct atmel_pmecc_caps sama5d4_caps = {
> +static struct atmel_pmecc_caps sama5d4_caps = {
> .strengths = atmel_pmecc_strengths,
> .nstrengths = 5,
> .el_offset = 0x8c,
> .correct_erased_chunks = true,
> };
>
> -struct atmel_pmecc_caps sama5d2_caps = {
> +static struct atmel_pmecc_caps sama5d2_caps = {
> .strengths = atmel_pmecc_strengths,
> .nstrengths = 6,
> .el_offset = 0xac,
More information about the linux-mtd
mailing list