eeprom: at24: use devm_nvmem_register()
authorBartosz Golaszewski <brgl@bgdev.pl>
Thu, 5 Apr 2018 07:49:20 +0000 (09:49 +0200)
committerBartosz Golaszewski <brgl@bgdev.pl>
Wed, 16 May 2018 12:42:46 +0000 (14:42 +0200)
We now have a managed variant of nvmem_register(). Use it
in at24_probe().

Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Reviewed-by: Peter Rosin <peda@axentia.se>
drivers/misc/eeprom/at24.c

index 33053b0..5072c6d 100644 (file)
@@ -685,7 +685,7 @@ static int at24_probe(struct i2c_client *client)
        nvmem_config.word_size = 1;
        nvmem_config.size = pdata.byte_len;
 
-       at24->nvmem = nvmem_register(&nvmem_config);
+       at24->nvmem = devm_nvmem_register(dev, &nvmem_config);
        if (IS_ERR(at24->nvmem)) {
                err = PTR_ERR(at24->nvmem);
                goto err_clients;
@@ -718,8 +718,6 @@ static int at24_remove(struct i2c_client *client)
 
        at24 = i2c_get_clientdata(client);
 
-       nvmem_unregister(at24->nvmem);
-
        for (i = 1; i < at24->num_addresses; i++)
                i2c_unregister_device(at24->client[i].client);