[PATCH] drm/dp/mst: dump branch OUI in debugfs
Dave Airlie
airlied at gmail.com
Tue Jul 14 17:09:19 PDT 2015
On 14 July 2015 at 18:28, Thierry Reding <thierry.reding at gmail.com> wrote:
> On Tue, Jul 14, 2015 at 11:34:39AM +1000, Dave Airlie wrote:
>> From: Dave Airlie <airlied at redhat.com>
>>
>> It appears some MST docks are worse than other, but the only
>> way to know is to see the sw revisions in here, so dump
>> the branch OUI so we can look at the sw revision.
>>
>> Signed-off-by: Dave Airlie <airlied at redhat.com>
>> ---
>> drivers/gpu/drm/drm_dp_mst_topology.c | 5 +++++
>> 1 file changed, 5 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c
>> index 8a3bfcd..e17a639 100644
>> --- a/drivers/gpu/drm/drm_dp_mst_topology.c
>> +++ b/drivers/gpu/drm/drm_dp_mst_topology.c
>> @@ -2657,6 +2657,11 @@ void drm_dp_mst_dump_topology(struct seq_file *m,
>> seq_printf(m, "%02x ", buf[i]);
>> seq_printf(m, "\n");
>>
>> + ret = drm_dp_dpcd_read(mgr->aux, DP_BRANCH_OUI, buf, DP_RECEIVER_CAP_SIZE);
>
> According to the specification, the OUI is 24-bit, whereas the receiver
> capability field is 15 bytes (well, at least that is the value defined
> for DP_RECEIVER_CAP_SIZE)...
>
>> + seq_printf(m, "branch oui: ");
>> + for (i = 0; i < DP_RECEIVER_CAP_SIZE; i++)
>> + seq_printf(m, "%02x ", buf[i]);
>> + seq_printf(m, "\n");
>
> So this will really dump out more than just the OUI. Perhaps it'd be
> worth splitting that up further? 0x503 to 0x508 is an identification
> string and displaying it as string would presumably be more useful than
> the hexdump equivalent. Similarly 0x509 is a hardware revision and
> 0x50a/0x50b the firmware major/minor version, which might be more
> readable in an idiomatic format (X.Y).
>
Yes I wanted to dump a portion of OUI space for debugging. I don't
really care if humans want to parse it, it's debugfs after all.
Dave.
More information about the dri-devel
mailing list