Lines Matching refs:srcimp_mgr

672 			   struct srcimp_mgr *mgr)  in srcimp_rsc_init()
714 static int get_srcimp_rsc(struct srcimp_mgr *mgr, in get_srcimp_rsc()
765 static int put_srcimp_rsc(struct srcimp_mgr *mgr, struct srcimp *srcimp) in put_srcimp_rsc()
783 struct rsc_mgr *mgr = &((struct srcimp_mgr *)data)->mgr; in srcimp_map_op()
795 static int srcimp_imap_add(struct srcimp_mgr *mgr, struct imapper *entry) in srcimp_imap_add()
812 static int srcimp_imap_delete(struct srcimp_mgr *mgr, struct imapper *entry) in srcimp_imap_delete()
829 int srcimp_mgr_create(struct hw *hw, struct srcimp_mgr **rsrcimp_mgr) in srcimp_mgr_create()
832 struct srcimp_mgr *srcimp_mgr; in srcimp_mgr_create() local
836 srcimp_mgr = kzalloc(sizeof(*srcimp_mgr), GFP_KERNEL); in srcimp_mgr_create()
837 if (!srcimp_mgr) in srcimp_mgr_create()
840 err = rsc_mgr_init(&srcimp_mgr->mgr, SRCIMP, SRCIMP_RESOURCE_NUM, hw); in srcimp_mgr_create()
844 spin_lock_init(&srcimp_mgr->mgr_lock); in srcimp_mgr_create()
845 spin_lock_init(&srcimp_mgr->imap_lock); in srcimp_mgr_create()
846 INIT_LIST_HEAD(&srcimp_mgr->imappers); in srcimp_mgr_create()
853 list_add(&entry->list, &srcimp_mgr->imappers); in srcimp_mgr_create()
854 srcimp_mgr->init_imap = entry; in srcimp_mgr_create()
855 srcimp_mgr->init_imap_added = 1; in srcimp_mgr_create()
857 srcimp_mgr->get_srcimp = get_srcimp_rsc; in srcimp_mgr_create()
858 srcimp_mgr->put_srcimp = put_srcimp_rsc; in srcimp_mgr_create()
859 srcimp_mgr->imap_add = srcimp_imap_add; in srcimp_mgr_create()
860 srcimp_mgr->imap_delete = srcimp_imap_delete; in srcimp_mgr_create()
861 srcimp_mgr->card = hw->card; in srcimp_mgr_create()
863 *rsrcimp_mgr = srcimp_mgr; in srcimp_mgr_create()
868 rsc_mgr_uninit(&srcimp_mgr->mgr); in srcimp_mgr_create()
870 kfree(srcimp_mgr); in srcimp_mgr_create()
874 int srcimp_mgr_destroy(struct srcimp_mgr *srcimp_mgr) in srcimp_mgr_destroy() argument
879 spin_lock_irqsave(&srcimp_mgr->imap_lock, flags); in srcimp_mgr_destroy()
880 free_input_mapper_list(&srcimp_mgr->imappers); in srcimp_mgr_destroy()
881 spin_unlock_irqrestore(&srcimp_mgr->imap_lock, flags); in srcimp_mgr_destroy()
883 rsc_mgr_uninit(&srcimp_mgr->mgr); in srcimp_mgr_destroy()
884 kfree(srcimp_mgr); in srcimp_mgr_destroy()