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);
 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,
 
  *      0:        Success.
  *      -ENOMEM:    Insufficient memory on GPP.
  *  Requires:
- *      nldr_init(void) called.
  *      Valid nldr_obj.
  *      node_props != NULL.
  *      nldr_nodeobj != NULL.
  *      0:        Success;
  *      -ENOMEM:    Insufficient memory for requested resources.
  *  Requires:
- *      nldr_init(void) called.
  *      nldr != NULL.
  *      hdev_obj != NULL.
  *     pattrs != NULL.
  *      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.
  *      nldr_node_obj:      Handle returned from nldr_allocate().
  *  Returns:
  *  Requires:
- *      nldr_init(void) called.
  *      Valid nldr_node_obj.
  *  Ensures:
  */
  *      0:        Success.
  *      -ESPIPE:    Address of function not found.
  *  Requires:
- *      nldr_init(void) called.
  *      Valid nldr_node_obj.
  *      addr != NULL;
  *      str_fxn != NULL;
                                         * 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.
  *                              is already in use.
  *      -EILSEQ:           Failure in dynamic loader library.
  *  Requires:
- *      nldr_init(void) called.
  *      Valid nldr_node_obj.
  *  Ensures:
  */
  *      0:        Success.
  *      -ENOMEM:    Insufficient memory on GPP.
  *  Requires:
- *      nldr_init(void) called.
  *      Valid nldr_node_obj.
  *  Ensures:
  */
        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;
 };
 
        /* 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? */
 };
 
 /*
        nldr_allocate,
        nldr_create,
        nldr_delete,
-       nldr_exit,
        nldr_get_fxn_addr,
-       nldr_init,
        nldr_load,
        nldr_unload,
 };
        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);
                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);
        }
 }