Lines Matching refs:css

836 chsc_remove_cmg_attr(struct channel_subsystem *css)  in chsc_remove_cmg_attr()  argument
841 if (!css->chps[i]) in chsc_remove_cmg_attr()
843 chp_remove_cmg_attr(css->chps[i]); in chsc_remove_cmg_attr()
848 chsc_add_cmg_attr(struct channel_subsystem *css) in chsc_add_cmg_attr() argument
854 if (!css->chps[i]) in chsc_add_cmg_attr()
856 ret = chp_add_cmg_attr(css->chps[i]); in chsc_add_cmg_attr()
863 if (!css->chps[i]) in chsc_add_cmg_attr()
865 chp_remove_cmg_attr(css->chps[i]); in chsc_add_cmg_attr()
870 int __chsc_do_secm(struct channel_subsystem *css, int enable) in __chsc_do_secm() argument
902 secm_area->cub[i] = (__force dma64_t)virt_to_dma32(css->cub[i]); in __chsc_do_secm()
904 secm_area->ecub[i] = virt_to_dma64(css->ecub[i]); in __chsc_do_secm()
930 static int cub_alloc(struct channel_subsystem *css) in cub_alloc() argument
935 css->cub[i] = (void *)get_zeroed_page(GFP_KERNEL | GFP_DMA); in cub_alloc()
936 if (!css->cub[i]) in cub_alloc()
940 css->ecub[i] = (void *)get_zeroed_page(GFP_KERNEL); in cub_alloc()
941 if (!css->ecub[i]) in cub_alloc()
948 static void cub_free(struct channel_subsystem *css) in cub_free() argument
953 free_page((unsigned long)css->cub[i]); in cub_free()
954 css->cub[i] = NULL; in cub_free()
957 free_page((unsigned long)css->ecub[i]); in cub_free()
958 css->ecub[i] = NULL; in cub_free()
963 chsc_secm(struct channel_subsystem *css, int enable) in chsc_secm() argument
967 if (enable && !css->cm_enabled) { in chsc_secm()
968 ret = cub_alloc(css); in chsc_secm()
972 ret = __chsc_do_secm(css, enable); in chsc_secm()
974 css->cm_enabled = enable; in chsc_secm()
975 if (css->cm_enabled) { in chsc_secm()
976 ret = chsc_add_cmg_attr(css); in chsc_secm()
978 __chsc_do_secm(css, 0); in chsc_secm()
979 css->cm_enabled = 0; in chsc_secm()
982 chsc_remove_cmg_attr(css); in chsc_secm()
986 if (!css->cm_enabled) in chsc_secm()
987 cub_free(css); in chsc_secm()