diff options
Diffstat (limited to 'drivers/fpga/dfl.c')
-rw-r--r-- | drivers/fpga/dfl.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/fpga/dfl.c b/drivers/fpga/dfl.c index a9b521bccb06..2c09e502e721 100644 --- a/drivers/fpga/dfl.c +++ b/drivers/fpga/dfl.c | |||
@@ -899,7 +899,7 @@ dfl_fpga_feature_devs_enumerate(struct dfl_fpga_enum_info *info) | |||
899 | if (!cdev) | 899 | if (!cdev) |
900 | return ERR_PTR(-ENOMEM); | 900 | return ERR_PTR(-ENOMEM); |
901 | 901 | ||
902 | cdev->region = fpga_region_create(info->dev, NULL, NULL); | 902 | cdev->region = devm_fpga_region_create(info->dev, NULL, NULL); |
903 | if (!cdev->region) { | 903 | if (!cdev->region) { |
904 | ret = -ENOMEM; | 904 | ret = -ENOMEM; |
905 | goto free_cdev_exit; | 905 | goto free_cdev_exit; |
@@ -911,7 +911,7 @@ dfl_fpga_feature_devs_enumerate(struct dfl_fpga_enum_info *info) | |||
911 | 911 | ||
912 | ret = fpga_region_register(cdev->region); | 912 | ret = fpga_region_register(cdev->region); |
913 | if (ret) | 913 | if (ret) |
914 | goto free_region_exit; | 914 | goto free_cdev_exit; |
915 | 915 | ||
916 | /* create and init build info for enumeration */ | 916 | /* create and init build info for enumeration */ |
917 | binfo = devm_kzalloc(info->dev, sizeof(*binfo), GFP_KERNEL); | 917 | binfo = devm_kzalloc(info->dev, sizeof(*binfo), GFP_KERNEL); |
@@ -942,8 +942,6 @@ dfl_fpga_feature_devs_enumerate(struct dfl_fpga_enum_info *info) | |||
942 | 942 | ||
943 | unregister_region_exit: | 943 | unregister_region_exit: |
944 | fpga_region_unregister(cdev->region); | 944 | fpga_region_unregister(cdev->region); |
945 | free_region_exit: | ||
946 | fpga_region_free(cdev->region); | ||
947 | free_cdev_exit: | 945 | free_cdev_exit: |
948 | devm_kfree(info->dev, cdev); | 946 | devm_kfree(info->dev, cdev); |
949 | return ERR_PTR(ret); | 947 | return ERR_PTR(ret); |