forked from Minki/linux
staging: tidspbridge: remove nldr_init() and nldr_exit()
The dynamic loader was called by node.c with an interface. This interface was also modified to avoid the use of nldr_init() and nldr_exit(). There is not functional changes. Signed-off-by: Víctor Manuel Jáquez Leal <vjaquez@igalia.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
81e8b88a14
commit
4d3bfdda15
@ -36,7 +36,6 @@ extern int nldr_create(struct nldr_object **nldr,
|
||||
const struct nldr_attrs *pattrs);
|
||||
|
||||
extern void nldr_delete(struct nldr_object *nldr_obj);
|
||||
extern void nldr_exit(void);
|
||||
|
||||
extern int nldr_get_fxn_addr(struct nldr_nodeobject *nldr_node_obj,
|
||||
char *str_fxn, u32 * addr);
|
||||
@ -44,7 +43,6 @@ extern int nldr_get_fxn_addr(struct nldr_nodeobject *nldr_node_obj,
|
||||
extern int nldr_get_rmm_manager(struct nldr_object *nldr,
|
||||
struct rmm_target_obj **rmm_mgr);
|
||||
|
||||
extern bool nldr_init(void);
|
||||
extern int nldr_load(struct nldr_nodeobject *nldr_node_obj,
|
||||
enum nldr_phase phase);
|
||||
extern int nldr_unload(struct nldr_nodeobject *nldr_node_obj,
|
||||
|
@ -119,7 +119,6 @@ enum nldr_phase {
|
||||
* 0: Success.
|
||||
* -ENOMEM: Insufficient memory on GPP.
|
||||
* Requires:
|
||||
* nldr_init(void) called.
|
||||
* Valid nldr_obj.
|
||||
* node_props != NULL.
|
||||
* nldr_nodeobj != NULL.
|
||||
@ -148,7 +147,6 @@ typedef int(*nldr_allocatefxn) (struct nldr_object *nldr_obj,
|
||||
* 0: Success;
|
||||
* -ENOMEM: Insufficient memory for requested resources.
|
||||
* Requires:
|
||||
* nldr_init(void) called.
|
||||
* nldr != NULL.
|
||||
* hdev_obj != NULL.
|
||||
* pattrs != NULL.
|
||||
@ -168,27 +166,12 @@ typedef int(*nldr_createfxn) (struct nldr_object **nldr,
|
||||
* nldr_obj: Node manager object.
|
||||
* Returns:
|
||||
* Requires:
|
||||
* nldr_init(void) called.
|
||||
* Valid nldr_obj.
|
||||
* Ensures:
|
||||
* nldr_obj invalid
|
||||
*/
|
||||
typedef void (*nldr_deletefxn) (struct nldr_object *nldr_obj);
|
||||
|
||||
/*
|
||||
* ======== nldr_exit ========
|
||||
* Discontinue usage of NLDR module.
|
||||
*
|
||||
* Parameters:
|
||||
* Returns:
|
||||
* Requires:
|
||||
* nldr_init(void) successfully called before.
|
||||
* Ensures:
|
||||
* Any resources acquired in nldr_init(void) will be freed when last NLDR
|
||||
* client calls nldr_exit(void).
|
||||
*/
|
||||
typedef void (*nldr_exitfxn) (void);
|
||||
|
||||
/*
|
||||
* ======== NLDR_Free ========
|
||||
* Free resources allocated in nldr_allocate.
|
||||
@ -197,7 +180,6 @@ typedef void (*nldr_exitfxn) (void);
|
||||
* nldr_node_obj: Handle returned from nldr_allocate().
|
||||
* Returns:
|
||||
* Requires:
|
||||
* nldr_init(void) called.
|
||||
* Valid nldr_node_obj.
|
||||
* Ensures:
|
||||
*/
|
||||
@ -216,7 +198,6 @@ typedef void (*nldr_freefxn) (struct nldr_nodeobject *nldr_node_obj);
|
||||
* 0: Success.
|
||||
* -ESPIPE: Address of function not found.
|
||||
* Requires:
|
||||
* nldr_init(void) called.
|
||||
* Valid nldr_node_obj.
|
||||
* addr != NULL;
|
||||
* str_fxn != NULL;
|
||||
@ -226,17 +207,6 @@ typedef int(*nldr_getfxnaddrfxn) (struct nldr_nodeobject
|
||||
* nldr_node_obj,
|
||||
char *str_fxn, u32 * addr);
|
||||
|
||||
/*
|
||||
* ======== nldr_init ========
|
||||
* Initialize the NLDR module.
|
||||
*
|
||||
* Parameters:
|
||||
* Returns:
|
||||
* TRUE if initialization succeeded, FALSE otherwise.
|
||||
* Ensures:
|
||||
*/
|
||||
typedef bool(*nldr_initfxn) (void);
|
||||
|
||||
/*
|
||||
* ======== nldr_load ========
|
||||
* Load create, delete, or execute phase function of a node on the DSP.
|
||||
@ -251,7 +221,6 @@ typedef bool(*nldr_initfxn) (void);
|
||||
* is already in use.
|
||||
* -EILSEQ: Failure in dynamic loader library.
|
||||
* Requires:
|
||||
* nldr_init(void) called.
|
||||
* Valid nldr_node_obj.
|
||||
* Ensures:
|
||||
*/
|
||||
@ -269,7 +238,6 @@ typedef int(*nldr_loadfxn) (struct nldr_nodeobject *nldr_node_obj,
|
||||
* 0: Success.
|
||||
* -ENOMEM: Insufficient memory on GPP.
|
||||
* Requires:
|
||||
* nldr_init(void) called.
|
||||
* Valid nldr_node_obj.
|
||||
* Ensures:
|
||||
*/
|
||||
@ -283,9 +251,7 @@ struct node_ldr_fxns {
|
||||
nldr_allocatefxn allocate;
|
||||
nldr_createfxn create;
|
||||
nldr_deletefxn delete;
|
||||
nldr_exitfxn exit;
|
||||
nldr_getfxnaddrfxn get_fxn_addr;
|
||||
nldr_initfxn init;
|
||||
nldr_loadfxn load;
|
||||
nldr_unloadfxn unload;
|
||||
};
|
||||
|
@ -619,15 +619,6 @@ void nldr_delete(struct nldr_object *nldr_obj)
|
||||
kfree(nldr_obj);
|
||||
}
|
||||
|
||||
/*
|
||||
* ======== nldr_exit ========
|
||||
* Discontinue usage of NLDR module.
|
||||
*/
|
||||
void nldr_exit(void)
|
||||
{
|
||||
/* do nothing */
|
||||
}
|
||||
|
||||
/*
|
||||
* ======== nldr_get_fxn_addr ========
|
||||
*/
|
||||
@ -735,16 +726,6 @@ int nldr_get_rmm_manager(struct nldr_object *nldr,
|
||||
return status;
|
||||
}
|
||||
|
||||
/*
|
||||
* ======== nldr_init ========
|
||||
* Initialize the NLDR module.
|
||||
*/
|
||||
bool nldr_init(void)
|
||||
{
|
||||
/* do nothing */
|
||||
return true;
|
||||
}
|
||||
|
||||
/*
|
||||
* ======== nldr_load ========
|
||||
*/
|
||||
|
@ -159,7 +159,6 @@ struct node_mgr {
|
||||
/* Loader properties */
|
||||
struct nldr_object *nldr_obj; /* Handle to loader */
|
||||
struct node_ldr_fxns nldr_fxns; /* Handle to loader functions */
|
||||
bool loader_init; /* Loader Init function succeeded? */
|
||||
};
|
||||
|
||||
/*
|
||||
@ -266,9 +265,7 @@ static struct node_ldr_fxns nldr_fxns = {
|
||||
nldr_allocate,
|
||||
nldr_create,
|
||||
nldr_delete,
|
||||
nldr_exit,
|
||||
nldr_get_fxn_addr,
|
||||
nldr_init,
|
||||
nldr_load,
|
||||
nldr_unload,
|
||||
};
|
||||
@ -1337,7 +1334,6 @@ int node_create_mgr(struct node_mgr **node_man,
|
||||
nldr_attrs_obj.write = mem_write;
|
||||
nldr_attrs_obj.dsp_word_size = node_mgr_obj->dsp_word_size;
|
||||
nldr_attrs_obj.dsp_mau_size = node_mgr_obj->dsp_mau_size;
|
||||
node_mgr_obj->loader_init = node_mgr_obj->nldr_fxns.init();
|
||||
status = node_mgr_obj->nldr_fxns.create(&node_mgr_obj->nldr_obj,
|
||||
hdev_obj,
|
||||
&nldr_attrs_obj);
|
||||
@ -2507,9 +2503,6 @@ static void delete_node_mgr(struct node_mgr *hnode_mgr)
|
||||
if (hnode_mgr->nldr_obj)
|
||||
hnode_mgr->nldr_fxns.delete(hnode_mgr->nldr_obj);
|
||||
|
||||
if (hnode_mgr->loader_init)
|
||||
hnode_mgr->nldr_fxns.exit();
|
||||
|
||||
kfree(hnode_mgr);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user