lkml.org 
[lkml]   [2012]   [Dec]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC v2 6/8] gpu: drm: tegra: Remove redundant host1x
    On 12/13/2012 11:09 PM, Terje Bergström wrote:
    > On 13.12.2012 19:58, Stephen Warren wrote:
    >> On 12/13/2012 01:57 AM, Thierry Reding wrote:
    >>> After some more discussion with Stephen on IRC we came to the
    >>> conclusion that the easiest might be to have tegra-drm call into
    >>> host1x with something like:
    >>>
    >>> void host1x_set_drm_device(struct host1x *host1x, struct device
    >>> *dev);
    >>
    >> If host1x is registering the dummy device that causes tegradrm to be
    >> instantiated, then presumably there's no need for the API above, since
    >> host1x will already have the struct device * for tegradrm, since it
    >> created it?
    >
    > I didn't add the dummy device in my latest patch set. I first set out to
    > add it, and moved the drm global data to be drvdata of that device. Then
    > I noticed that it doesn't actually help at all.
    >
    > The critical accesses to the global data are from probes of DC, HDMI,
    > etc.

    OK

    > They want to get the global data by getting drvdata of their parent.

    There's no reason that /has/ to be so; they can get any information from
    wherever it is, rather than trying to require it to be somewhere it isn't.

    > The dummy device is not their parent - host1x is. There's no
    > connection between the dummy and the real client devices.

    It's quite possible for the client devices to ask their actual parent
    (host1x) for the tegradrm struct device *, by calling a host1x API, and
    have host1x implement that API by returning the dummy/virtual device
    that it created. That should be just 1-2 lines of code to implement in
    host1x, plus maybe a couple more to correctly return -EPROBE_DEFERRED
    when appropriate.
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2012-12-14 18:43    [W:3.275 / U:0.500 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site