The FPGA framework has a convention of using managed resource functions to allow parent drivers to manage the data structures allocated by the class drivers. They use an empty *_dev_release() function to satisfy the class driver. This is inconsistent with linux driver model. This is a complete re-do of the previous patch set entitled "fpga: Use standard class dev_release function". These changes populate the class dev_release callback functions while maintaining the current API. Additional changes are made to maintain consistency with the driver model. For more context on these changes, refer to this email thread: https://marc.info/?l=linux-fpga&m=162127412218557&w=2 Russ Weight (5): fpga: mgr: Use standard dev_release for class driver fpga: altera-pr-ip: Remove fpga_mgr_unregister() call fpga: stratix10-soc: Add missing fpga_mgr_free() call fpga: bridge: Use standard dev_release for class driver fpga: region: Use standard dev_release for class driver drivers/fpga/altera-pr-ip-core.c | 4 --- drivers/fpga/fpga-bridge.c | 48 +++++++++++++-------------- drivers/fpga/fpga-mgr.c | 57 +++++++++++++++----------------- drivers/fpga/fpga-region.c | 46 +++++++++++++------------- drivers/fpga/stratix10-soc.c | 1 + 5 files changed, 74 insertions(+), 82 deletions(-) -- 2.25.1