Hi Jacopo,

On Wednesday, January 25, 2017, Jacopo Mondi wrote:
> +
> +     return 0;
> +
> +free_map:
> +     devm_kfree(rz_pinctrl->dev, *map);
> +free_fngrps:
> +     devm_kfree(rz_pinctrl->dev, fngrps);
> +free_pins:
> +     devm_kfree(rz_pinctrl->dev, mux_modes);
> +     devm_kfree(rz_pinctrl->dev, grpins);
> +     return ret;
> +}

Since one of the benefits of using devm_kzalloc is that if
the probe fails and returns an error, all the memory associated with
that device will automatically get freed, you 'might' not
need this code to free memory.

I say might because I'm not sure if returning an error here will
kill the driver or not. But, might be interesting to look into.


> +#define RZ_PIN_NAME(bank, pin)                                               
> \
> +     PIN_##bank##_##pin
> +
> +#define RZ_PIN_DESC(b, p)                                            \
> +     { .number = RZ_PIN_NAME(b, p),                                  \
> +       .name = __stringify(RZ_PIN_NAME(b, p)),                       \

The hardware manual uses the names "P1_0" for ports, so it might
be better to match that format for consistency.


Chris

Reply via email to