[RFC] drm platform multi-device support

Dave Airlie airlied at gmail.com
Tue Apr 5 18:21:48 PDT 2011


On Tue, Apr 5, 2011 at 1:08 PM, Rob Clark <robdclark at gmail.com> wrote:
> On Mon, Apr 4, 2011 at 7:30 PM, Dave Airlie <airlied at gmail.com> wrote:
>> On Wed, Mar 30, 2011 at 2:44 AM, Rob Clark <rob at ti.com> wrote:
>>> From: Rob Clark <robdclark at gmail.com>
>>>
>>> Include the minor device id in the bus-id to give userspace a way to open
>>> the correct "cardN" when there are multiple device instances.
>>> ---
>>> It may seem a bit strange to have multiple platform device instances, but
>>> we have a use-case for this.  And this relatively simple patch does the
>>> trick.
>>
>> I'm finding it hard to like this since I feel it might limit certain
>> thing in the future, by baking
>> this into the ABI.
>>
>> We have plans for multiple device nodes per device, but they don't
>> involve abusing the bus id like this.
>>
>> Surely you'd just have another platform device with another unique
>> name for this, I'd be more willing
>> to accept some sort of unique id stored in the platformdev or drm that
>> isn't the device node.
>
> What about:
>
>                len = snprintf(master->unique, master->unique_len,
>                        "platform:%s:%02d", dev->platformdev->name, dev->platformdev->id);
>
> (ie. using the id field from struct platform_device)..
>
> Perhaps this is more analogous to using pci bus # / slot / func?

Yup that seems a lot saner and more acceptable.

Dave.


More information about the dri-devel mailing list