Re: [PATCH 2/4] gpu: host1x: Enable gather filter

From: Dmitry Osipenko
Date: Sun Aug 20 2017 - 12:59:54 EST


On 20.08.2017 19:44, Dmitry Osipenko wrote:
> On 20.08.2017 19:24, Dmitry Osipenko wrote:
>> On 18.08.2017 19:15, Mikko Perttunen wrote:
>>> The gather filter is a feature present on Tegra124 and newer where the
>>> hardware prevents GATHERed command buffers from executing commands
>>> normally reserved for the CDMA pushbuffer which is maintained by the
>>> kernel driver.
>>>
>>> This commit enables the gather filter on all supporting hardware.
>>>
>>> Signed-off-by: Mikko Perttunen <mperttunen@xxxxxxxxxx>
>>> ---
>>> drivers/gpu/host1x/hw/channel_hw.c | 22 ++++++++++++++++++++++
>>> drivers/gpu/host1x/hw/hw_host1x04_channel.h | 12 ++++++++++++
>>> drivers/gpu/host1x/hw/hw_host1x05_channel.h | 12 ++++++++++++
>>> 3 files changed, 46 insertions(+)
>>>
>>> diff --git a/drivers/gpu/host1x/hw/channel_hw.c b/drivers/gpu/host1x/hw/channel_hw.c
>>> index 0161da331702..5c0dc6bb51d1 100644
>>> --- a/drivers/gpu/host1x/hw/channel_hw.c
>>> +++ b/drivers/gpu/host1x/hw/channel_hw.c
>>> @@ -181,10 +181,32 @@ static int channel_submit(struct host1x_job *job)
>>> return err;
>>> }
>>>
>>> +static void enable_gather_filter(struct host1x *host,
>>> + struct host1x_channel *ch)
>>> +{
>>> +#if HOST1X_HW >= 6
>>> + u32 val;
>>> +
>>> + if (!host->hv_regs)
>>> + return;
>>
>> Is it really possible that gather filter could be not present on HW without
>> hypervisor? Maybe there is other way to enable it in that case?
>>
>> Is possible at all that hypervisor could be missed?
>
> BTW, this is also incoherent with the 'syncpoint protection' patch which doesn't
> check for hypervisor presence.
>

However, I noticed that check and it's wrongly placed ;) See comment to the
'syncpoint protection' patch.

--
Dmitry