* to create clocks and regulators via the usual frameworks.
  *
  * Return:
- * * 1         - To continue the loop
- * * 0         - When all resources found are handled properly.
- * * -EINVAL   - If the resource is not a GPIO IO resource
- * * -ENODEV   - If the resource has no corresponding _DSM entry
- * * -Other    - Errors propagated from one of the sub-functions.
+ * * 1         - Continue the loop without adding a copy of the resource to
+ * *             the list passed to acpi_dev_get_resources()
+ * * 0         - Continue the loop after adding a copy of the resource to
+ * *             the list passed to acpi_dev_get_resources()
+ * * -errno    - Error, break loop
  */
 static int skl_int3472_handle_gpio_resources(struct acpi_resource *ares,
                                             void *data)
        if (ret < 0)
                return dev_err_probe(int3472->dev, ret, err_msg);
 
-       return ret;
+       /* Tell acpi_dev_get_resources() to not make a copy of the resource */
+       return 1;
 }
 
 static int skl_int3472_parse_crs(struct int3472_discrete_device *int3472)