Update the current driver adaptation and usage method, from fixed use of Hisilicon device driver to automatic registration of the driver according to the algorithm.
When the algorithm API layer uses the driver, it is no longer bound to the fixed device driver, but dynamically obtained and stored according to the algorithm query to use.
Update the driver and API layer of the zip and sec module, keep the function of the init interface unchanged, update the implementation of the init2 interface and match the dynamic loading function.
Changes v2 -> v3: - Add dynamic library file search function - Fix some memory handling issues
Changes v1 -> v2: - Fixed the compatibility method with the previous library file loading
liulongfang (5): uadk: Add driver dynamic loading function uadk: added ability to query supported algorithms uadk: improve the dynamic loading public framework uadk/zip: Adapt the zip module to the dynamic loading framework uadk/sec: adapt the sec module to the dynamic loading framework
Makefile.am | 4 +- drv/hisi_comp.c | 59 +++- drv/hisi_sec.c | 102 +++++-- include/drv/wd_aead_drv.h | 2 +- include/drv/wd_cipher_drv.h | 26 -- include/drv/wd_comp_drv.h | 27 -- include/drv/wd_digest_drv.h | 2 +- include/wd.h | 12 + include/wd_alg.h | 95 +++++++ include/wd_alg_common.h | 11 + include/wd_sched.h | 6 +- include/wd_util.h | 63 ++++- libwd.map | 8 + libwd_crypto.map | 3 + wd.c | 56 +++- wd_alg.c | 265 +++++++++++++++++ wd_cipher.c | 305 +++++++++++++++----- wd_comp.c | 293 ++++++++++--------- wd_sched.c | 105 ++++++- wd_util.c | 547 +++++++++++++++++++++++++++++++++++- 20 files changed, 1697 insertions(+), 294 deletions(-) create mode 100644 include/wd_alg.h create mode 100644 wd_alg.c