Searched refs:ftrp (Results 1 – 2 of 2) sorted by relevance
/kernel/linux/linux-5.10/arch/arm64/include/asm/ |
D | cpufeature.h | 543 static inline u64 arm64_ftr_mask(const struct arm64_ftr_bits *ftrp) in arm64_ftr_mask() argument 545 return (u64)GENMASK(ftrp->shift + ftrp->width - 1, ftrp->shift); in arm64_ftr_mask() 567 static inline s64 arm64_ftr_value(const struct arm64_ftr_bits *ftrp, u64 val) in arm64_ftr_value() argument 569 return (s64)cpuid_feature_extract_field_width(val, ftrp->shift, ftrp->width, ftrp->sign); in arm64_ftr_value()
|
/kernel/linux/linux-5.10/arch/arm64/kernel/ |
D | cpufeature.c | 677 static u64 arm64_ftr_set_value(const struct arm64_ftr_bits *ftrp, s64 reg, in arm64_ftr_set_value() argument 680 u64 mask = arm64_ftr_mask(ftrp); in arm64_ftr_set_value() 683 reg |= (ftr_val << ftrp->shift) & mask; in arm64_ftr_set_value() 687 static s64 arm64_ftr_safe_value(const struct arm64_ftr_bits *ftrp, s64 new, in arm64_ftr_safe_value() argument 692 switch (ftrp->type) { in arm64_ftr_safe_value() 694 ret = ftrp->safe_val; in arm64_ftr_safe_value() 776 const struct arm64_ftr_bits *ftrp; in init_cpu_ftr_reg() local 782 for (ftrp = reg->ftr_bits; ftrp->width; ftrp++) { in init_cpu_ftr_reg() 783 u64 ftr_mask = arm64_ftr_mask(ftrp); in init_cpu_ftr_reg() 784 s64 ftr_new = arm64_ftr_value(ftrp, new); in init_cpu_ftr_reg() [all …]
|