[Freedreno] [DPU PATCH] drm/mipi: Remove Qualcomm-specific dsi packet header format

Sean Paul seanpaul at chromium.org
Fri Feb 23 15:06:25 UTC 2018


On Thu, Feb 22, 2018 at 9:28 PM, Abhinav Kumar <abhinavk at quicinc.com> wrote:
> Looks good. Can you point us to the fix done in the dsi-staging driver.
>

All of the downstream changes are in the mtp-testing branch of the
dpu-staging tree. The on-list patches are in the for-next-staging, and
the patches which have been reviewed on list will go to the for-next
branch.

Sean


> Thanks
>
> Abhinav
>
> -----Original Message-----
> From: Rob Clark [mailto:robdclark at gmail.com]
> Sent: Thursday, February 22, 2018 11:49 AM
> To: Sean Paul <seanpaul at chromium.org>
> Cc: freedreno <freedreno at lists.freedesktop.org>; linux-arm-msm <linux-arm-msm at vger.kernel.org>; Kristian H. Kristensen <hoegsberg at chromium.org>; Jeykumar Sankaran <jsanka at codeaurora.org>; Abhinav Kumar <abhinavk at quicinc.com>
> Subject: Re: [DPU PATCH] drm/mipi: Remove Qualcomm-specific dsi packet header format
>
> On Thu, Feb 22, 2018 at 12:37 PM, Sean Paul <seanpaul at chromium.org> wrote:
>> msm/dsi already formats the packet header correctly, so this breaks
>> every driver except for the downstream dsi-staging driver (which I've
>> submitted a patch for).
>>
>> Signed-off-by: Sean Paul <seanpaul at chromium.org>
>
> Reviewed-by: Rob Clark <robdclark at gmail.com>
>
>> ---
>>  drivers/gpu/drm/drm_mipi_dsi.c | 10 +++++-----
>>  1 file changed, 5 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/drm_mipi_dsi.c
>> b/drivers/gpu/drm/drm_mipi_dsi.c index 688c8a82ba37..4b47226b90d4
>> 100644
>> --- a/drivers/gpu/drm/drm_mipi_dsi.c
>> +++ b/drivers/gpu/drm/drm_mipi_dsi.c
>> @@ -454,7 +454,7 @@ int mipi_dsi_create_packet(struct mipi_dsi_packet *packet,
>>                 return -EINVAL;
>>
>>         memset(packet, 0, sizeof(*packet));
>> -       packet->header[2] = ((msg->channel & 0x3) << 6) | (msg->type & 0x3f);
>> +       packet->header[0] = ((msg->channel & 0x3) << 6) | (msg->type &
>> + 0x3f);
>>
>>         /* TODO: compute ECC if hardware support is not available */
>>
>> @@ -466,16 +466,16 @@ int mipi_dsi_create_packet(struct mipi_dsi_packet *packet,
>>          * and 2.
>>          */
>>         if (mipi_dsi_packet_format_is_long(msg->type)) {
>> -               packet->header[0] = (msg->tx_len >> 0) & 0xff;
>> -               packet->header[1] = (msg->tx_len >> 8) & 0xff;
>> +               packet->header[1] = (msg->tx_len >> 0) & 0xff;
>> +               packet->header[2] = (msg->tx_len >> 8) & 0xff;
>>
>>                 packet->payload_length = msg->tx_len;
>>                 packet->payload = msg->tx_buf;
>>         } else {
>>                 const u8 *tx = msg->tx_buf;
>>
>> -               packet->header[0] = (msg->tx_len > 0) ? tx[0] : 0;
>> -               packet->header[1] = (msg->tx_len > 1) ? tx[1] : 0;
>> +               packet->header[1] = (msg->tx_len > 0) ? tx[0] : 0;
>> +               packet->header[2] = (msg->tx_len > 1) ? tx[1] : 0;
>>         }
>>
>>         packet->size = sizeof(packet->header) +
>> packet->payload_length;
>> --
>> 2.16.1.291.g4437f3f132-goog
>>


More information about the Freedreno mailing list