diff mbox series

gpu: host1x: Remove redundant of_dma_configure() call

Message ID ce9767cab33346772f76735933dd7896e346b477.1536770777.git.robin.murphy@arm.com (mailing list archive)
State New, archived
Headers show
Series gpu: host1x: Remove redundant of_dma_configure() call | expand

Commit Message

Robin Murphy Sept. 12, 2018, 4:47 p.m. UTC
Now that the Host1x bus_type implements a .dma_configure callback,
subdevices should automatically get configured for DMA as their drivers
bind, so there's no need to also force it at device creation time.

CC: Thierry Reding <thierry.reding@gmail.com>
CC: Mikko Perttunen <cyndis@kapsi.fi>
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
---

I *believe* my reasoning is correct here, but please shout if it's not.

 drivers/gpu/host1x/bus.c | 2 --
 1 file changed, 2 deletions(-)

Comments

Thierry Reding Sept. 26, 2018, 2:10 p.m. UTC | #1
On Wed, Sep 12, 2018 at 05:47:54PM +0100, Robin Murphy wrote:
> Now that the Host1x bus_type implements a .dma_configure callback,
> subdevices should automatically get configured for DMA as their drivers
> bind, so there's no need to also force it at device creation time.
> 
> CC: Thierry Reding <thierry.reding@gmail.com>
> CC: Mikko Perttunen <cyndis@kapsi.fi>
> Signed-off-by: Robin Murphy <robin.murphy@arm.com>
> ---
> 
> I *believe* my reasoning is correct here, but please shout if it's not.
> 
>  drivers/gpu/host1x/bus.c | 2 --
>  1 file changed, 2 deletions(-)

Applied, thanks.

Thierry
Thierry Reding Sept. 26, 2018, 2:13 p.m. UTC | #2
On Wed, Sep 26, 2018 at 04:10:54PM +0200, Thierry Reding wrote:
> On Wed, Sep 12, 2018 at 05:47:54PM +0100, Robin Murphy wrote:
> > Now that the Host1x bus_type implements a .dma_configure callback,
> > subdevices should automatically get configured for DMA as their drivers
> > bind, so there's no need to also force it at device creation time.
> > 
> > CC: Thierry Reding <thierry.reding@gmail.com>
> > CC: Mikko Perttunen <cyndis@kapsi.fi>
> > Signed-off-by: Robin Murphy <robin.murphy@arm.com>
> > ---
> > 
> > I *believe* my reasoning is correct here, but please shout if it's not.
> > 
> >  drivers/gpu/host1x/bus.c | 2 --
> >  1 file changed, 2 deletions(-)
> 
> Applied, thanks.

Actually I was a little too quick on the trigger there. I don't think we
can remove this here because the of_dma_configure() in this call
configures the logical "compound" child device, whereas the
.dma_configure callback configures the physical device.

Thierry
Robin Murphy Sept. 26, 2018, 2:29 p.m. UTC | #3
On 26/09/18 15:13, Thierry Reding wrote:
> On Wed, Sep 26, 2018 at 04:10:54PM +0200, Thierry Reding wrote:
>> On Wed, Sep 12, 2018 at 05:47:54PM +0100, Robin Murphy wrote:
>>> Now that the Host1x bus_type implements a .dma_configure callback,
>>> subdevices should automatically get configured for DMA as their drivers
>>> bind, so there's no need to also force it at device creation time.
>>>
>>> CC: Thierry Reding <thierry.reding@gmail.com>
>>> CC: Mikko Perttunen <cyndis@kapsi.fi>
>>> Signed-off-by: Robin Murphy <robin.murphy@arm.com>
>>> ---
>>>
>>> I *believe* my reasoning is correct here, but please shout if it's not.
>>>
>>>   drivers/gpu/host1x/bus.c | 2 --
>>>   1 file changed, 2 deletions(-)
>>
>> Applied, thanks.
> 
> Actually I was a little too quick on the trigger there. I don't think we
> can remove this here because the of_dma_configure() in this call
> configures the logical "compound" child device, whereas the
> .dma_configure callback configures the physical device.

Right, that's what I couldn't quite get my head around - I have the 
impression that the logical devices belong to host1x_bus_type and the 
physical ones to platform_bus_type, and thus each should be covered by 
the respective .dma_configure implementations, but I always end up 
getting lost and confused in Host1x, and having no hardware to hand to 
run easy tests on doesn't help much either.

What I'm really trying to do here is minimise the potential impact of a 
possible future patch mucking with of_dma_configure()'s interface, so 
it's not the end of the world if this call ends up staying, it just 
means I might be after one more ack at some point ;)

Thanks,
Robin.
diff mbox series

Patch

diff --git a/drivers/gpu/host1x/bus.c b/drivers/gpu/host1x/bus.c
index 815bdb42e3f0..24f60e34cdf1 100644
--- a/drivers/gpu/host1x/bus.c
+++ b/drivers/gpu/host1x/bus.c
@@ -421,8 +421,6 @@  static int host1x_device_add(struct host1x *host1x,
 	device->dev.bus = &host1x_bus_type;
 	device->dev.parent = host1x->dev;
 
-	of_dma_configure(&device->dev, host1x->dev->of_node, true);
-
 	err = host1x_device_parse_dt(device, driver);
 	if (err < 0) {
 		kfree(device);