From: Jakub Kicinski Date: Fri, 20 Nov 2020 05:41:08 +0000 (-0800) Subject: Merge branch 'devlink-move-common-flash_update-calls-to-core' X-Git-Tag: v5.15~2222^2~220 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ac75b09624ed679e239b75081923a6d33ae35876;p=platform%2Fkernel%2Flinux-starfive.git Merge branch 'devlink-move-common-flash_update-calls-to-core' Jacob Keller says: ==================== devlink: move common flash_update calls to core This series moves a couple common pieces done by all drivers of the ->flash_update interface into devlink.c flash update handler. Specifically, the core code will now request_firmware and devlink_flash_update_(begin|end)_notify. This cleanup is intended to simplify driver implementations so that they have less work to do and are less capable of doing the "wrong" thing. For request_firmware, this simplification is done as it is not expected that drivers would do anything else. It also standardizes all drivers so that they use the same interface (request_firmware, as opposed to request_firmware_direct), and allows reporting the netlink extended ack with the file name attribute. For status notification, this change prevents drivers from sending a status message without properly sending the status end notification. The current userspace implementation of devlink relies on this end notification to properly close the flash update channel. Without this, the flash update process may hang indefinitely. By moving the begin and end calls into the core code, it is no longer possible for a driver author to get this wrong. Changes since v3 * picked up acked-by and reviewed-by comments * fixed the ionic driver to leave the print statement in place For the original patch that moved request_firmware, see [1]. For the v2 see [2]. For further discussion of the issues with devlink flash status see [3]. For v3 see [4]. [1] https://lore.kernel.org/netdev/20201113000142.3563690-1-jacob.e.keller@intel.com/ [2] https://lore.kernel.org/netdev/20201113224559.3910864-1-jacob.e.keller@intel.com/ [3] https://lore.kernel.org/netdev/6352e9d3-02af-721e-3a54-ef99a666be29@intel.com/ [4] https://lore.kernel.org/netdev/20201117200820.854115-1-jacob.e.keller@intel.com/ ==================== Link: https://lore.kernel.org/r/20201118190636.1235045-1-jacob.e.keller@intel.com Signed-off-by: Jakub Kicinski --- ac75b09624ed679e239b75081923a6d33ae35876