SF_POWER
SF_POWER);
min = mul_u64_u32_shr(min, SF_POWER, hwmon->scl_shift_power);
max = mul_u64_u32_shr(max, SF_POWER, hwmon->scl_shift_power);
nval = DIV_ROUND_CLOSEST_ULL((u64)val << hwmon->scl_shift_power, SF_POWER);
SF_POWER);
SF_POWER, POWER_SETUP_I1_SHIFT);
uval = DIV_ROUND_CLOSEST_ULL(val << POWER_SETUP_I1_SHIFT, SF_POWER);
return xe_hwmon_power_curr_crit_read(hwmon, channel, val, SF_POWER);
return xe_hwmon_power_curr_crit_write(hwmon, channel, val, SF_POWER);
*value = mul_u32_u32(reg_val, SF_POWER) >> hwmon->scl_shift_power;
min = mul_u64_u32_shr(min, SF_POWER, hwmon->scl_shift_power);
max = mul_u64_u32_shr(max, SF_POWER, hwmon->scl_shift_power);
max_supp_power_limit = ((PWR_LIM_VAL) >> hwmon->scl_shift_power) * SF_POWER;
reg_val = DIV_ROUND_CLOSEST_ULL((u64)value << hwmon->scl_shift_power, SF_POWER);
*value = mul_u64_u32_shr(reg_val, SF_POWER, hwmon->scl_shift_power);