• 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/pmgr/

Lines Matching defs:psma

153 static void un_register_gppsm_seg(struct cmm_allocator *psma);
538 struct cmm_allocator *psma = NULL;
572 psma = kzalloc(sizeof(struct cmm_allocator), GFP_KERNEL);
573 if (psma != NULL) {
574 psma->hcmm_mgr = hcmm_mgr; /* ref to parent */
575 psma->shm_base = dw_gpp_base_pa; /* SM Base phys */
576 psma->ul_sm_size = ul_size; /* SM segment size in bytes */
577 psma->dw_vm_base = gpp_base_va;
578 psma->dw_dsp_phys_addr_offset = dsp_addr_offset;
579 psma->c_factor = c_factor;
580 psma->dw_dsp_base = dw_dsp_base;
581 psma->ul_dsp_size = ul_dsp_size;
582 if (psma->dw_vm_base == 0) {
589 psma->free_list_head = kzalloc(sizeof(struct lst_list),
591 if (psma->free_list_head == NULL) {
595 INIT_LIST_HEAD(&psma->free_list_head->head);
598 psma->in_use_list_head = kzalloc(sizeof(struct
600 if (psma->in_use_list_head == NULL) {
604 INIT_LIST_HEAD(&psma->in_use_list_head->head);
608 psma->dw_vm_base, ul_size);
611 lst_put_tail(psma->free_list_head,
622 cmm_mgr_obj->pa_gppsm_seg_tab[slot_seg] = psma;
625 if (status && psma) {
627 un_register_gppsm_seg(psma);
644 struct cmm_allocator *psma;
656 psma = cmm_mgr_obj->pa_gppsm_seg_tab[ul_id - 1];
657 if (psma != NULL) {
658 un_register_gppsm_seg(psma);
689 static void un_register_gppsm_seg(struct cmm_allocator *psma)
694 DBC_REQUIRE(psma != NULL);
695 if (psma->free_list_head != NULL) {
697 mnode_obj = (struct cmm_mnode *)lst_first(psma->free_list_head);
700 (struct cmm_mnode *)lst_next(psma->free_list_head,
703 lst_remove_elem(psma->free_list_head,
709 kfree(psma->free_list_head); /* delete freelist */
712 (struct cmm_mnode *)lst_first(psma->in_use_list_head);
715 (struct cmm_mnode *)lst_next(psma->in_use_list_head,
718 lst_remove_elem(psma->in_use_list_head,
724 kfree(psma->in_use_list_head); /* delete InUse list */
726 if ((void *)psma->dw_vm_base != NULL)
727 MEM_UNMAP_LINEAR_ADDRESS((void *)psma->dw_vm_base);
730 kfree(psma);