[PATCH] drm/amdgpu: Add "harvest" to IP discovery sysfs
Luben Tuikov
luben.tuikov at amd.com
Tue Feb 15 14:39:29 UTC 2022
On 2022-02-15 09:37, Christian König wrote:
>
>
> Am 15.02.22 um 15:33 schrieb Luben Tuikov:
>> On 2022-02-15 09:25, Christian König wrote:
>>> Am 15.02.22 um 00:21 schrieb Luben Tuikov:
>>>> Add the "harvest" field to the IP attributes in
>>>> the IP discovery sysfs visualization, as this
>>>> field is present in the binary data.
>>>>
>>>> Cc: Alex Deucher <Alexander.Deucher at amd.com>
>>>> Signed-off-by: Luben Tuikov <luben.tuikov at amd.com>
>>>> ---
>>>> drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c | 8 ++++++++
>>>> 1 file changed, 8 insertions(+)
>>>>
>>>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
>>>> index c8dbdb78988ce0..0496d369504641 100644
>>>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
>>>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
>>>> @@ -393,6 +393,7 @@ struct ip_hw_instance {
>>>> int hw_id;
>>>> u8 num_instance;
>>>> u8 major, minor, revision;
>>>> + u8 harvest;
>>> Should we maybe use bool here instead?
>>>
>>> Apart from that looks good to me.
>> Thanks Christian.
>>
>> I don't mind using bool here.
>>
>> I saw the field in the binary data is 4 bits and represented that.
>>
>> Is the field actually bool in the IP binary data?
>
> I'm not sure either.
>
> I would have expected it to be a single bit flag in the binary, but
> 4bits sounds like it serves some more purpose.
>
> Probably best to stick to u8 for now in this case.
Okay. Can I get a R-B then?
Regards,
Luben
>
> Regards,
> Christian.
>
>> I can change the patch and resubmit.
>>
>> Regards,
>> Luben
>>
>>> Regards,
>>> Christian.
>>>
>>>>
>>>> int num_base_addresses;
>>>> u32 base_addr[];
>>>> @@ -440,6 +441,11 @@ static ssize_t revision_show(struct ip_hw_instance *ip_hw_instance, char *buf)
>>>> return sysfs_emit(buf, "%d\n", ip_hw_instance->revision);
>>>> }
>>>>
>>>> +static ssize_t harvest_show(struct ip_hw_instance *ip_hw_instance, char *buf)
>>>> +{
>>>> + return sysfs_emit(buf, "0x%01X\n", ip_hw_instance->harvest);
>>>> +}
>>>> +
>>>> static ssize_t num_base_addresses_show(struct ip_hw_instance *ip_hw_instance, char *buf)
>>>> {
>>>> return sysfs_emit(buf, "%d\n", ip_hw_instance->num_base_addresses);
>>>> @@ -471,6 +477,7 @@ static struct ip_hw_instance_attr ip_hw_attr[] = {
>>>> __ATTR_RO(major),
>>>> __ATTR_RO(minor),
>>>> __ATTR_RO(revision),
>>>> + __ATTR_RO(harvest),
>>>> __ATTR_RO(num_base_addresses),
>>>> __ATTR_RO(base_addr),
>>>> };
>>>> @@ -708,6 +715,7 @@ static int amdgpu_discovery_sysfs_ips(struct amdgpu_device *adev,
>>>> ip_hw_instance->major = ip->major;
>>>> ip_hw_instance->minor = ip->minor;
>>>> ip_hw_instance->revision = ip->revision;
>>>> + ip_hw_instance->harvest = ip->harvest;
>>>> ip_hw_instance->num_base_addresses = ip->num_base_address;
>>>>
>>>> for (kk = 0; kk < ip_hw_instance->num_base_addresses; kk++)
>>>>
>>>> base-commit: d8604f1d237a145db48bae4ea60b85a5875df307
>> Regards,
>
Regards,
--
Luben
More information about the amd-gfx
mailing list