[PATCH] drm/xe/hwmon: Fix xe_hwmon_pcode_write_i1 param from u32 to u16
Nilawar, Badal
badal.nilawar at intel.com
Mon Aug 26 08:11:52 UTC 2024
On 26-08-2024 12:38, Poosa, Karthik wrote:
> Didn't find failures from HWMON tests from CI results.
Could you please check this failure
https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-137054v1/shard-bmg-4/igt@intel_hwmon@hwmon-write.html
Regards,
Badal
>
> You can review this patch now.
>
> On 09-08-2024 09:37, Poosa, Karthik wrote:
>> Ignore this revision of patch. Raised this to get igt results.
>>
>> On 08-08-2024 22:57, Karthik Poosa wrote:
>>> WRITE_I1 sub command of pcode takes param of u16 compared to u32 for
>>> READ_I1, so corrected it. Without this pcode shall return illegal
>>> sub command errors.
>>>
>>> Signed-off-by: Karthik Poosa <karthik.poosa at intel.com>
>>> Fixes: 92d44a422d0d ("drm/xe/hwmon: Expose card reactive critical
>>> power")
>>> ---
>>> drivers/gpu/drm/xe/xe_hwmon.c | 8 ++++----
>>> 1 file changed, 4 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/xe/xe_hwmon.c
>>> b/drivers/gpu/drm/xe/xe_hwmon.c
>>> index 832ea81faeee..617c8bdb8f28 100644
>>> --- a/drivers/gpu/drm/xe/xe_hwmon.c
>>> +++ b/drivers/gpu/drm/xe/xe_hwmon.c
>>> @@ -446,11 +446,11 @@ static int xe_hwmon_pcode_read_i1(struct xe_gt
>>> *gt, u32 *uval)
>>> uval, NULL);
>>> }
>>> -static int xe_hwmon_pcode_write_i1(struct xe_gt *gt, u32 uval)
>>> +static int xe_hwmon_pcode_write_i1(struct xe_gt *gt, u16 uval)
>>> {
>>> return xe_pcode_write(gt, PCODE_MBOX(PCODE_POWER_SETUP,
>>> POWER_SETUP_SUBCOMMAND_WRITE_I1, 0),
>>> - uval);
>>> + (u32)(uval & POWER_SETUP_I1_DATA_MASK));
>>> }
>>> static int xe_hwmon_power_curr_crit_read(struct xe_hwmon *hwmon,
>>> int channel,
>>> @@ -476,11 +476,11 @@ static int
>>> xe_hwmon_power_curr_crit_write(struct xe_hwmon *hwmon, int channel,
>>> long value, u32 scale_factor)
>>> {
>>> int ret;
>>> - u32 uval;
>>> + u16 uval;
>>> mutex_lock(&hwmon->hwmon_lock);
>>> - uval = DIV_ROUND_CLOSEST_ULL(value << POWER_SETUP_I1_SHIFT,
>>> scale_factor);
>>> + uval = DIV_ROUND_CLOSEST((u16)value << POWER_SETUP_I1_SHIFT,
>>> scale_factor);
>>> ret = xe_hwmon_pcode_write_i1(hwmon->gt, uval);
>>> mutex_unlock(&hwmon->hwmon_lock);
More information about the Intel-xe
mailing list