• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6/drivers/staging/tidspbridge/rmgr/

Lines Matching defs:nldr_obj

218 	struct nldr_object *nldr_obj;	/* Dynamic loader handle */
277 static int add_ovly_sect(struct nldr_object *nldr_obj,
283 static void free_sects(struct nldr_object *nldr_obj,
312 int nldr_allocate(struct nldr_object *nldr_obj, void *priv_ref,
323 DBC_REQUIRE(nldr_obj);
335 nldr_node_obj->nldr_obj = nldr_obj;
393 nldr_node_obj->root.lib = nldr_obj->base_lib;
420 struct nldr_object *nldr_obj = NULL;
440 nldr_obj = kzalloc(sizeof(struct nldr_object), GFP_KERNEL);
441 if (nldr_obj) {
442 nldr_obj->hdev_obj = hdev_obj;
446 status = cod_get_loader(cod_mgr, &nldr_obj->dbll);
448 status = cod_get_base_lib(cod_mgr, &nldr_obj->base_lib);
457 nldr_obj->us_dsp_mau_size = pattrs->us_dsp_mau_size;
458 nldr_obj->us_dsp_word_size = pattrs->us_dsp_word_size;
459 nldr_obj->ldr_fxns = ldr_fxns;
460 if (!(nldr_obj->ldr_fxns.init_fxn()))
468 status = dcd_create_manager(NULL, &nldr_obj->hdcd_mgr);
473 nldr_obj->ldr_fxns.get_sect_fxn(nldr_obj->base_lib,
478 kzalloc(ul_len * nldr_obj->us_dsp_mau_size,
493 nldr_obj->ldr_fxns.read_sect_fxn(nldr_obj->base_lib,
507 nldr_obj->seg_table =
509 if (rmm_segs == NULL || nldr_obj->seg_table == NULL) {
512 nldr_obj->dload_segs = dload_segs;
519 nldr_obj->seg_table[i] =
530 status = rmm_create(&nldr_obj->rmm, rmm_segs, dload_segs);
534 nldr_obj->ldr_fxns.get_attrs_fxn(nldr_obj->dbll, &save_attrs);
539 new_attrs.sym_handle = nldr_obj;
541 nldr_obj->ovly_fxn = pattrs->pfn_ovly;
542 nldr_obj->write_fxn = pattrs->pfn_write;
543 nldr_obj->ldr_attrs = new_attrs;
557 dcd_get_objects(nldr_obj->hdcd_mgr, sz_zl_file,
558 add_ovly_node, (void *)nldr_obj);
560 if (!status && nldr_obj->ovly_nodes > 0) {
562 nldr_obj->ovly_table =
564 nldr_obj->ovly_nodes, GFP_KERNEL);
566 nldr_obj->ovly_nid = 0;
567 status = dcd_get_objects(nldr_obj->hdcd_mgr, sz_zl_file,
569 (void *)nldr_obj);
573 if (!status && nldr_obj->ovly_nodes > 0) {
576 save_attrs.log_write_handle = nldr_obj;
578 status = nldr_obj->ldr_fxns.load_fxn(nldr_obj->base_lib, flags,
582 *nldr = (struct nldr_object *)nldr_obj;
584 if (nldr_obj)
585 nldr_delete((struct nldr_object *)nldr_obj);
596 void nldr_delete(struct nldr_object *nldr_obj)
602 DBC_REQUIRE(nldr_obj);
604 nldr_obj->ldr_fxns.exit_fxn();
605 if (nldr_obj->rmm)
606 rmm_delete(nldr_obj->rmm);
608 kfree(nldr_obj->seg_table);
610 if (nldr_obj->hdcd_mgr)
611 dcd_destroy_manager(nldr_obj->hdcd_mgr);
614 if (nldr_obj->ovly_table) {
615 for (i = 0; i < nldr_obj->ovly_nodes; i++) {
617 nldr_obj->ovly_table[i].create_sects_list;
624 nldr_obj->ovly_table[i].delete_sects_list;
631 nldr_obj->ovly_table[i].execute_sects_list;
637 ovly_section = nldr_obj->ovly_table[i].other_sects_list;
644 kfree(nldr_obj->ovly_table);
646 kfree(nldr_obj);
672 struct nldr_object *nldr_obj;
682 nldr_obj = nldr_node_obj->nldr_obj;
704 nldr_obj->ldr_fxns.get_c_addr_fxn(root.lib, str_fxn, &dbll_sym);
707 nldr_obj->ldr_fxns.get_addr_fxn(root.lib, str_fxn,
714 nldr_obj->ldr_fxns.get_addr_fxn(root.dep_libs_tree
719 nldr_obj->ldr_fxns.
733 nldr_obj->ldr_fxns.
738 nldr_obj->ldr_fxns.
765 struct nldr_object *nldr_obj = nldr;
769 *rmm_mgr = nldr_obj->rmm;
803 struct nldr_object *nldr_obj;
810 nldr_obj = nldr_node_obj->nldr_obj;
925 struct nldr_object *nldr_obj = (struct nldr_object *)handle;
933 for (i = 0; i < nldr_obj->ovly_nodes; i++) {
934 node_name = nldr_obj->ovly_table[i].node_name;
941 if (!(i < nldr_obj->ovly_nodes))
952 add_ovly_sect(nldr_obj,
953 &nldr_obj->
957 nldr_obj->ovly_table[i].create_sects++;
961 add_ovly_sect(nldr_obj,
962 &nldr_obj->
966 nldr_obj->ovly_table[i].delete_sects++;
970 add_ovly_sect(nldr_obj,
971 &nldr_obj->
975 nldr_obj->ovly_table[i].execute_sects++;
980 add_ovly_sect(nldr_obj,
981 &nldr_obj->
985 nldr_obj->ovly_table[i].other_sects++;
1000 struct nldr_object *nldr_obj = (struct nldr_object *)handle;
1011 dcd_get_object_def(nldr_obj->hdcd_mgr, uuid_obj, obj_type,
1018 if (nldr_obj->ovly_table == NULL) {
1019 nldr_obj->ovly_nodes++;
1022 nldr_obj->ovly_table[nldr_obj->ovly_nid].uuid =
1034 nldr_obj->ovly_table[nldr_obj->ovly_nid].
1036 nldr_obj->ovly_nid++;
1056 static int add_ovly_sect(struct nldr_object *nldr_obj,
1121 static void free_sects(struct nldr_object *nldr_obj,
1133 rmm_free(nldr_obj->rmm, 0, ovly_section->sect_run_addr,
1149 struct nldr_object *nldr_obj = (struct nldr_object *)handle;
1157 status = nldr_obj->ldr_fxns.get_addr_fxn(nldr_obj->base_lib,
1161 nldr_obj->ldr_fxns.get_c_addr_fxn(nldr_obj->base_lib,
1170 status = nldr_obj->ldr_fxns.get_addr_fxn(root->lib, sym_name,
1174 nldr_obj->ldr_fxns.get_c_addr_fxn(root->lib,
1186 nldr_obj->ldr_fxns.get_addr_fxn(root->
1192 nldr_obj->ldr_fxns.
1208 nldr_obj->ldr_fxns.
1212 status = nldr_obj->ldr_fxns.get_c_addr_fxn
1237 struct nldr_object *nldr_obj = nldr_node_obj->nldr_obj;
1267 dcd_get_library_name(nldr_node_obj->nldr_obj->
1274 dcd_get_library_name(nldr_node_obj->nldr_obj->
1283 nldr_obj->ldr_fxns.open_fxn(nldr_obj->dbll, psz_file_name,
1295 nldr_obj->ldr_fxns.close_fxn(root->lib);
1315 dcd_get_num_dep_libs(nldr_node_obj->nldr_obj->hdcd_mgr,
1348 nldr_obj->hdcd_mgr, &uuid,
1407 new_attrs = nldr_obj->ldr_attrs;
1414 nldr_obj->ldr_fxns.load_fxn(root->lib, flags, &new_attrs,
1435 nldr_obj->ldr_fxns.close_fxn(root->lib);
1457 struct nldr_object *nldr_obj = nldr_node_obj->nldr_obj;
1471 for (i = 0; i < nldr_obj->ovly_nodes; i++) {
1473 (&nldr_node_obj->uuid, &nldr_obj->ovly_table[i].uuid)) {
1475 po_node = &(nldr_obj->ovly_table[i]);
1480 DBC_ASSERT(i < nldr_obj->ovly_nodes);
1521 status = rmm_alloc(nldr_obj->rmm, 0, ovly_section->size, 0,
1539 rmm_alloc(nldr_obj->rmm, 0,
1558 (*nldr_obj->ovly_fxn) (nldr_node_obj->
1579 (*nldr_obj->ovly_fxn) (nldr_node_obj->
1596 free_sects(nldr_obj, phase_sects, alloc_num);
1597 free_sects(nldr_obj, other_sects_list, other_alloc);
1619 struct nldr_object *nldr_obj;
1632 nldr_obj = hnode->nldr_obj;
1633 rmm = nldr_obj->rmm;
1636 (size + nldr_obj->us_dsp_word_size -
1637 1) / nldr_obj->us_dsp_word_size;
1680 DBC_ASSERT(segid < nldr_obj->dload_segs);
1696 for (i = 0; i < nldr_obj->dload_segs; i++) {
1697 if ((nldr_obj->seg_table[i] & mem_sect_type) !=
1715 for (i = 0; i < nldr_obj->dload_segs; i++) {
1717 if ((nldr_obj->seg_table[i] & mem_sect_type) !=
1737 struct nldr_object *nldr_obj = (struct nldr_object *)ref;
1742 DBC_REQUIRE(nldr_obj);
1744 rmm = nldr_obj->rmm;
1748 (size + nldr_obj->us_dsp_word_size -
1749 1) / nldr_obj->us_dsp_word_size;
1764 struct nldr_object *nldr_obj = nldr_node_obj->nldr_obj;
1775 new_attrs = nldr_obj->ldr_attrs;
1776 new_attrs.rmm_handle = nldr_obj->rmm;
1783 nldr_obj->ldr_fxns.unload_fxn(root->lib, &new_attrs);
1784 nldr_obj->ldr_fxns.close_fxn(root->lib);
1798 struct nldr_object *nldr_obj = nldr_node_obj->nldr_obj;
1809 for (i = 0; i < nldr_obj->ovly_nodes; i++) {
1811 (&nldr_node_obj->uuid, &nldr_obj->ovly_table[i].uuid)) {
1813 po_node = &(nldr_obj->ovly_table[i]);
1818 DBC_ASSERT(i < nldr_obj->ovly_nodes);
1859 free_sects(nldr_obj, phase_sects, alloc_num);
1862 free_sects(nldr_obj, other_sects_list, other_alloc);