On 03/11/2024 17:03, Thomas Weißschuh wrote:
> Stop abusing the is_bin_visible() callback to calculate the attribute
> size. Instead use the new, dedicated bin_size() one.
>
> Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
> ---
Thanks for the patch,
LGTM.
Acked-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
--srini
> drivers/nvmem/core.c | 13 +++++++++++--
> 1 file changed, 11 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c
> index 33ffa2aa4c1152398ec66b8dd7b30384c5346a6e..63370c76394ee9b8d514da074779617cef67c311 100644
> --- a/drivers/nvmem/core.c
> +++ b/drivers/nvmem/core.c
> @@ -303,11 +303,19 @@ static umode_t nvmem_bin_attr_is_visible(struct kobject *kobj,
> struct device *dev = kobj_to_dev(kobj);
> struct nvmem_device *nvmem = to_nvmem_device(dev);
>
> - attr->size = nvmem->size;
> -
> return nvmem_bin_attr_get_umode(nvmem);
> }
>
> +static size_t nvmem_bin_attr_size(struct kobject *kobj,
> + const struct bin_attribute *attr,
> + int i)
> +{
> + struct device *dev = kobj_to_dev(kobj);
> + struct nvmem_device *nvmem = to_nvmem_device(dev);
> +
> + return nvmem->size;
> +}
> +
> static umode_t nvmem_attr_is_visible(struct kobject *kobj,
> struct attribute *attr, int i)
> {
> @@ -383,6 +391,7 @@ static const struct attribute_group nvmem_bin_group = {
> .bin_attrs = nvmem_bin_attributes,
> .attrs = nvmem_attrs,
> .is_bin_visible = nvmem_bin_attr_is_visible,
> + .bin_size = nvmem_bin_attr_size,
> .is_visible = nvmem_attr_is_visible,
> };
>
>