27 Jul, 2017

1 commit

  • This will let drivers reduce the error cleanup they need, in
    particular the "is_panel_bridge" flag.

    v2: Slight cleanup of remove function by Andrzej

    Signed-off-by: Eric Anholt
    Reviewed-by: Andrzej Hajda
    Reviewed-by: Philippe Cornu
    Tested-by: Philippe Cornu
    Link: https://patchwork.freedesktop.org/patch/msgid/20170718210510.12229-2-eric@anholt.net

    Eric Anholt
     

05 Jun, 2017

1 commit

  • Many DRM drivers have common code to make a stub connector
    implementation that wraps a drm_panel. By wrapping the panel in a DRM
    bridge, all of the connector code (including calls during encoder
    enable/disable) goes away.

    v2: Fix build with CONFIG_DRM=m, drop "dev" argument that should just
    be the panel's dev, move kerneldoc up a level and document
    _remove().
    v3: Fix another breakage with CONFIG_DRM=m, fix breakage with
    CONFIG_OF=n, move protos under CONFIG_DRM_PANEL_BRIDGE, wrap a
    line.

    Signed-off-by: Eric Anholt
    Acked-by: Daniel Vetter (v1)
    Reviewed-by: Boris Brezillon (v2)
    Acked-by: Archit Taneja (v2)
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170602202514.11900-1-eric@anholt.net

    Eric Anholt
     

30 May, 2017

1 commit

  • Introduce a new helper function which calls mode_valid() callback
    for all bridges in an encoder chain.

    Signed-off-by: Jose Abreu
    Reviewed-by: Daniel Vetter
    Cc: Carlos Palminha
    Cc: Ville Syrjälä
    Cc: Dave Airlie
    Cc: Andrzej Hajda
    Cc: Archit Taneja
    Cc: Laurent Pinchart
    Reviewed-by: Archit Taneja
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/36bd5e054496ad3c9c71f1ffe204f28533f55f1e.1495720737.git.joabreu@synopsys.com

    Jose Abreu
     

23 May, 2017

2 commits

  • Laurent started a massive discussion on IRC about this. Let's try to
    document common usage a bit better.

    v2: Cross-links+typos.

    Cc: Laurent Pinchart
    Cc: Ville Syrjälä
    Cc: Jose Abreu
    Reviewed-by: Jose Abreu
    Reviewed-by: Andrzej Hajda
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170515091136.26307-1-daniel.vetter@ffwll.ch

    Daniel Vetter
     
  • This adds a new callback to crtc, encoder and bridge helper functions
    called mode_valid(). This callback shall be implemented if the
    corresponding component has some sort of restriction in the modes
    that can be displayed. A NULL callback implicates that the component
    can display all the modes.

    We also change the documentation so that the new and old callbacks
    are correctly documented.

    Only the callbacks were implemented to simplify review process,
    following patches will make use of them.

    Changes in v2 from Daniel:
    - Update the warning about how modes aren't filtered in atomic_check -
    the heleprs help out a lot more now.
    - Consistenly roll out that warning, crtc/encoder's atomic_check
    missed it.
    - Sprinkle more links all over the place, so it's easier to see where
    this stuff is used and how the differen hooks are related.
    - Note that ->mode_valid is optional everywhere.
    - Explain why the connector's mode_valid is special and does _not_ get
    called in atomic_check.

    v3: Document what can and cannot be checked in mode_valid a bit better
    (Andrjez). Answer: Only allowed to look at the mode, nothing else.

    Cc: Laurent Pinchart
    Signed-off-by: Jose Abreu
    Cc: Jose Abreu
    Cc: Carlos Palminha
    Cc: Alexey Brodkin
    Cc: Ville Syrjälä
    Cc: Daniel Vetter
    Cc: Dave Airlie
    Cc: Andrzej Hajda
    Cc: Archit Taneja
    Signed-off-by: Daniel Vetter (v2)
    Reviewed-by: Jose Abreu (v2)
    Reviewed-by: Andrzej Hajda
    Link: http://patchwork.freedesktop.org/patch/msgid/20170515093347.31098-1-daniel.vetter@ffwll.ch

    Jose Abreu
     

02 Jan, 2017

1 commit

  • I just learned that &struct_name.member_name works and looks pretty
    even. It doesn't (yet) link to the member directly though, which would
    be really good for big structures or vfunc tables (where the
    per-member kerneldoc tends to be long).

    Also some minor drive-by polish where it makes sense, I read a lot
    of docs ...

    Cc: Archit Taneja
    Cc: Jani Nikula
    Cc: Chris Wilson
    Reviewed-by: Archit Taneja
    [danvet: Remove spurious hunk that Archit spotted.]
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/1483044517-5770-13-git-send-email-daniel.vetter@ffwll.ch

    Daniel Vetter
     

30 Dec, 2016

1 commit

  • sed -e 's/\( \* .*\)struct &\([_a-z]*\)/\1\&struct \2/' -i

    Originally I wasnt a friend of this style because I thought a
    line-break between the "&struct" and "foo" part would break it. But a
    quick test shows that " * &struct \n * foo\n" works pefectly well with
    current kernel-doc. So time to mass-apply these changes!

    Cc: Jani Nikula
    Cc: Chris Wilson
    Reviewed-by: David Herrmann
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/1483044517-5770-6-git-send-email-daniel.vetter@ffwll.ch

    Daniel Vetter
     

18 Dec, 2016

2 commits

  • Most drivers that use bridges forgot to detach them at cleanup time.
    Instead of fixing them one by one, detach the bridge in the core
    drm_encoder_cleanup() function.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Daniel Vetter
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/1481709550-29226-5-git-send-email-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     
  • Instead of linking encoders and bridges in every driver (and getting it
    wrong half of the time, as many drivers forget to set the drm_bridge
    encoder pointer), do so in core code. The drm_bridge_attach() function
    needs the encoder and optional previous bridge to perform that task,
    update all the callers.

    Signed-off-by: Laurent Pinchart
    Acked-by: Stefan Agner # For DCU
    Acked-by: Boris Brezillon # For atmel-hlcdc
    Acked-by: Vincent Abriou # For STI
    Acked-by: Maxime Ripard # For sun4i
    Acked-by: Xinliang Liu # For hisilicon
    Acked-by: Jyri Sarha # For tilcdc
    Reviewed-by: Daniel Vetter
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/1481709550-29226-4-git-send-email-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     

19 Sep, 2016

1 commit

  • We don't want to burry the bridge structures kerneldoc in drm_crtc.h.

    Cc: Archit Taneja
    Reviewed-by: Archit Taneja
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20160831160913.12991-3-daniel.vetter@ffwll.ch

    Daniel Vetter