Re: Binding together tegradrm & nvhost

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 08/21/2012 12:35 AM, Terje Bergström wrote:
> On 21.08.2012 09:12, Mark Zhang wrote:
>> OK, thank you. In current version, all devices are created by
>> "of_platform_populate" in board init function. So if we still need to
>> define devices in dt, what's the benefit that we put these device
>> creation works into host1x's probe function? I don't see any difference
>> although create device in host1x probe() sounds more reasonable...
> 
> Until I have managed to integrate nvhost to tegradrm, the devices
> creation should be done as it is done now. With nvhost, we will need
> extra data per device, so we'll need to create the devices in nvhost.

I don't believe that has any impact on how the devices need to be created.

Both the following should be equally workable:

a)

* Each device gets instantiated as a platform device through simple
of_platform_populate.

* Each driver parses the device node for any information needed by a
host1x client. This parsing could be implemented via a helper function.

The driver can then register the device with host1x, passing in the
host1x-client-information parsed from DT.

b)

* host1x driver enumerates all the clients (sub-nodes) manually.

* As part of the enumeration, the host1x driver parses information from
the client nodes in order to create the device.

* Drivers for host1x devices get probed based on the devices created in
the previous step.

(a) sounds a heck of a lot simpler, because we don't end up creating a
new bus types etc., which in previous conversations you'd mentioned
ended up duplicating a lot of the logic already in the platform bus driver.
--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux