Lines Matching full:feature
456 struct smu_feature *feature = &smu->smu_feature; in smu_cmn_feature_is_supported() local
466 WARN_ON(feature_id > feature->feature_num); in smu_cmn_feature_is_supported()
468 mutex_lock(&feature->mutex); in smu_cmn_feature_is_supported()
469 ret = test_bit(feature_id, feature->supported); in smu_cmn_feature_is_supported()
470 mutex_unlock(&feature->mutex); in smu_cmn_feature_is_supported()
478 struct smu_feature *feature = &smu->smu_feature; in smu_cmn_feature_is_enabled() local
492 WARN_ON(feature_id > feature->feature_num); in smu_cmn_feature_is_enabled()
494 mutex_lock(&feature->mutex); in smu_cmn_feature_is_enabled()
495 ret = test_bit(feature_id, feature->enabled); in smu_cmn_feature_is_enabled()
496 mutex_unlock(&feature->mutex); in smu_cmn_feature_is_enabled()
533 struct smu_feature *feature = &smu->smu_feature; in smu_cmn_get_enabled_mask() local
539 if (bitmap_empty(feature->enabled, feature->feature_num)) { in smu_cmn_get_enabled_mask()
551 bitmap_copy((unsigned long *)feature_mask, feature->enabled, in smu_cmn_get_enabled_mask()
552 feature->feature_num); in smu_cmn_get_enabled_mask()
564 struct smu_feature *feature = &smu->smu_feature; in smu_cmn_get_enabled_32_bits_mask() local
570 if (bitmap_empty(feature->enabled, feature->feature_num)) { in smu_cmn_get_enabled_32_bits_mask()
587 bitmap_copy((unsigned long *)feature_mask, feature->enabled, in smu_cmn_get_enabled_32_bits_mask()
588 feature->feature_num); in smu_cmn_get_enabled_32_bits_mask()
612 struct smu_feature *feature = &smu->smu_feature; in smu_cmn_feature_update_enable_state() local
643 mutex_lock(&feature->mutex); in smu_cmn_feature_update_enable_state()
645 bitmap_or(feature->enabled, feature->enabled, in smu_cmn_feature_update_enable_state()
648 bitmap_andnot(feature->enabled, feature->enabled, in smu_cmn_feature_update_enable_state()
650 mutex_unlock(&feature->mutex); in smu_cmn_feature_update_enable_state()
659 struct smu_feature *feature = &smu->smu_feature; in smu_cmn_feature_set_enabled() local
668 WARN_ON(feature_id > feature->feature_num); in smu_cmn_feature_set_enabled()
682 enum smu_feature_mask feature) in smu_get_feature_name() argument
684 if (feature < 0 || feature >= SMU_FEATURE_COUNT) in smu_get_feature_name()
685 return "unknown smu feature"; in smu_get_feature_name()
686 return __smu_feature_names[feature]; in smu_get_feature_name()
729 "No", "Feature", "Bit", "State"); in smu_cmn_get_pp_feature_mask()
794 * @mask: the dpm feature which should not be disabled
805 struct smu_feature *feature = &smu->smu_feature; in smu_cmn_disable_all_features_with_exception() local
820 mutex_lock(&feature->mutex); in smu_cmn_disable_all_features_with_exception()
821 bitmap_andnot(feature->enabled, feature->enabled, in smu_cmn_disable_all_features_with_exception()
823 mutex_unlock(&feature->mutex); in smu_cmn_disable_all_features_with_exception()