* dynamically loaded object files.
*
*/
-int cod_create(OUT struct cod_manager **mgr, char *str_dummy_file,
+int cod_create(OUT struct cod_manager **mgr, char *str_zl_file,
IN OPTIONAL CONST struct cod_attrs *attrs)
{
struct cod_manager *mgr_new;
* Purpose:
* Delete a code manager object.
*/
-void cod_delete(struct cod_manager *hmgr)
+void cod_delete(struct cod_manager *cod_mgr_obj)
{
DBC_REQUIRE(refs > 0);
- DBC_REQUIRE(IS_VALID(hmgr));
+ DBC_REQUIRE(IS_VALID(cod_mgr_obj));
- if (hmgr->base_lib) {
- if (hmgr->loaded)
- hmgr->fxns.unload_fxn(hmgr->base_lib, &hmgr->attrs);
+ if (cod_mgr_obj->base_lib) {
+ if (cod_mgr_obj->loaded)
+ cod_mgr_obj->fxns.unload_fxn(cod_mgr_obj->base_lib,
+ &cod_mgr_obj->attrs);
- hmgr->fxns.close_fxn(hmgr->base_lib);
+ cod_mgr_obj->fxns.close_fxn(cod_mgr_obj->base_lib);
}
- if (hmgr->target) {
- hmgr->fxns.delete_fxn(hmgr->target);
- hmgr->fxns.exit_fxn();
+ if (cod_mgr_obj->target) {
+ cod_mgr_obj->fxns.delete_fxn(cod_mgr_obj->target);
+ cod_mgr_obj->fxns.exit_fxn();
}
- hmgr->ul_magic = ~MAGIC;
- kfree(hmgr);
+ cod_mgr_obj->ul_magic = ~MAGIC;
+ kfree(cod_mgr_obj);
}
/*
* C symbol.
*
*/
-int cod_get_sym_value(struct cod_manager *hmgr, char *str_sym,
+int cod_get_sym_value(struct cod_manager *cod_mgr_obj, char *str_sym,
u32 *pul_value)
{
struct dbll_sym_val *dbll_sym;
DBC_REQUIRE(refs > 0);
- DBC_REQUIRE(IS_VALID(hmgr));
+ DBC_REQUIRE(IS_VALID(cod_mgr_obj));
DBC_REQUIRE(str_sym != NULL);
DBC_REQUIRE(pul_value != NULL);
- dev_dbg(bridge, "%s: hmgr: %p str_sym: %s pul_value: %p\n",
- __func__, hmgr, str_sym, pul_value);
- if (hmgr->base_lib) {
- if (!hmgr->fxns.
- get_addr_fxn(hmgr->base_lib, str_sym, &dbll_sym)) {
- if (!hmgr->fxns.
- get_c_addr_fxn(hmgr->base_lib, str_sym, &dbll_sym))
+ dev_dbg(bridge, "%s: cod_mgr_obj: %p str_sym: %s pul_value: %p\n",
+ __func__, cod_mgr_obj, str_sym, pul_value);
+ if (cod_mgr_obj->base_lib) {
+ if (!cod_mgr_obj->fxns.
+ get_addr_fxn(cod_mgr_obj->base_lib, str_sym, &dbll_sym)) {
+ if (!cod_mgr_obj->fxns.
+ get_c_addr_fxn(cod_mgr_obj->base_lib, str_sym,
+ &dbll_sym))
return -ESPIPE;
}
} else {
* recalculated to reflect this. In this way, we can support NULL
* terminating args arrays, if num_argc is very large.
*/
-int cod_load_base(struct cod_manager *hmgr, u32 num_argc, char *args[],
+int cod_load_base(struct cod_manager *cod_mgr_obj, u32 num_argc, char *args[],
cod_writefxn pfn_write, void *arb, char *envp[])
{
dbll_flags flags;
u32 i;
DBC_REQUIRE(refs > 0);
- DBC_REQUIRE(IS_VALID(hmgr));
+ DBC_REQUIRE(IS_VALID(cod_mgr_obj));
DBC_REQUIRE(num_argc > 0);
DBC_REQUIRE(args != NULL);
DBC_REQUIRE(args[0] != NULL);
DBC_REQUIRE(pfn_write != NULL);
- DBC_REQUIRE(hmgr->base_lib != NULL);
+ DBC_REQUIRE(cod_mgr_obj->base_lib != NULL);
/*
* Make sure every argv[] stated in argc has a value, or change argc to
}
/* set the write function for this operation */
- hmgr->fxns.get_attrs_fxn(hmgr->target, &save_attrs);
+ cod_mgr_obj->fxns.get_attrs_fxn(cod_mgr_obj->target, &save_attrs);
new_attrs = save_attrs;
new_attrs.write = (dbll_write_fxn) pfn_write;
/* Load the image */
flags = DBLL_CODE | DBLL_DATA | DBLL_SYMB;
- status = hmgr->fxns.load_fxn(hmgr->base_lib, flags, &new_attrs,
- &hmgr->ul_entry);
+ status = cod_mgr_obj->fxns.load_fxn(cod_mgr_obj->base_lib, flags,
+ &new_attrs,
+ &cod_mgr_obj->ul_entry);
if (DSP_FAILED(status))
- hmgr->fxns.close_fxn(hmgr->base_lib);
+ cod_mgr_obj->fxns.close_fxn(cod_mgr_obj->base_lib);
if (DSP_SUCCEEDED(status))
- hmgr->loaded = true;
+ cod_mgr_obj->loaded = true;
else
- hmgr->base_lib = NULL;
+ cod_mgr_obj->base_lib = NULL;
return status;
}