25 Jan, 2017

4 commits

  • 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 ...

    v2: Review from Gustavo.

    Cc: Jani Nikula
    Cc: Chris Wilson
    Reviewed-by: Gustavo Padovan
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170125062657.19270-6-daniel.vetter@ffwll.ch

    Daniel Vetter
     
  • 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: Jani Nikula
    Cc: Chris Wilson
    Reviewed-by: Gustavo Padovan
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170125062657.19270-5-daniel.vetter@ffwll.ch

    Daniel Vetter
     
  • 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 ...

    v2: Comments from Gustavo.

    Cc: Jani Nikula
    Cc: Chris Wilson
    Rewiewed-by: Gustavo Padovan
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170125062657.19270-2-daniel.vetter@ffwll.ch

    Daniel Vetter
     
  • struct drm_dp_mst_topology_mgr currently stores a pointer to struct dev.
    Changing this to instead hold a pointer to drm_device is more useful as it
    gives access to DRM structures. This also makes it consistent with other
    DRM structures like drm_crtc, drm_connector etc.

    Signed-off-by: Dhinakaran Pandiyan
    Reviewed-by: Dave Airlie
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/1485301777-3465-2-git-send-email-dhinakaran.pandiyan@intel.com

    Dhinakaran Pandiyan
     

24 Jan, 2017

5 commits

  • For the convenience of encapsulation the reservation object's ww_mutex
    was wrapped in pair of lock/unlock helpers.

    Signed-off-by: Chris Wilson
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170123095357.29514-1-chris@chris-wilson.co.uk

    Chris Wilson
     
  • Add missing includes to pull in definitions for drm_crtc,
    drm_plane and drm_encoder.

    Signed-off-by: Noralf Trønnes
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170122181117.8210-4-noralf@tronnes.org

    Noralf Trønnes
     
  • Add a CMA version of drm_fb_helper_set_suspend_unlocked().

    Cc: laurent.pinchart@ideasonboard.com
    Signed-off-by: Noralf Trønnes
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170122181117.8210-2-noralf@tronnes.org

    Noralf Trønnes
     
  • The prototypes were moved to a new header, but the function definitions
    were not updated to pull in the declarations.

    drivers/gpu/drm/drm_cache.c:79:1: warning: no previous prototype for ‘drm_clflush_pages’ [-Wmissing-prototypes]
    drivers/gpu/drm/drm_cache.c:120:1: warning: no previous prototype for ‘drm_clflush_sg’ [-Wmissing-prototypes]
    drivers/gpu/drm/drm_cache.c:152:1: warning: no previous prototype for ‘drm_clflush_virt_range’ [-Wmissing-prototypes]

    Fixes: f9a87bd7d5b6 ("drm: Move drm_clflush prototypes to drm_cache header file")
    Signed-off-by: Chris Wilson
    Cc: Gabriel Krisman Bertazi
    Cc: Alex Deucher
    Cc: Daniel Vetter
    Reviewed-by: Gabriel Krisman Bertazi
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170121181944.24672-1-chris@chris-wilson.co.uk

    Chris Wilson
     
  • The of_node member in struct drm_bridge is hidden when CONFIG_OF
    is disabled, causing a build error:

    drivers/gpu/drm/bridge/dw-hdmi.c: In function '__dw_hdmi_probe':
    drivers/gpu/drm/bridge/dw-hdmi.c:2063:14: error: 'struct drm_bridge' has no member named 'of_node'

    We could fix this either using a Kconfig dependency on CONFIG_OF
    or making the one line conditional. The latter gives us better
    compile test coverage, so this is what I'm doing here.

    Fixes: 69497eb9234e ("drm: bridge: dw-hdmi: Implement DRM bridge registration")
    Signed-off-by: Arnd Bergmann
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170123122312.3290934-1-arnd@arndb.de

    Arnd Bergmann
     

23 Jan, 2017

5 commits

  • While the Kconfig entries of FIMD and DECON7 both select
    FB_MODE_HELPERS, the code doesn't use any of the functionality.

    Signed-off-by: Tobias Jakobi
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/1484928172-16784-1-git-send-email-tjakobi@math.uni-bielefeld.de

    Tobias Jakobi
     
  • After warning that the connector list is not empty on device
    unregistration (i.e. module unload) also print out which connectors are
    still hanging around to aide finding the leak.

    Signed-off-by: Chris Wilson
    Reviewed-by: Joonas Lahtinen
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170119090513.4154-1-chris@chris-wilson.co.uk

    Chris Wilson
     
  • The allocation for the bitmap may become very large, larger than
    MAX_ORDER, for large requests. We fail gracefully by falling back to
    trail-division, so disable the warning from kmalloc:

    521.961092] WARNING: CPU: 0 PID: 30637 at mm/page_alloc.c:3548 __alloc_pages_slowpath+0x237/0x9a0
    [ 521.961105] Modules linked in: i915(+) drm_kms_helper intel_gtt prime_numbers [last unloaded: drm_kms_helper]
    [ 521.961126] CPU: 0 PID: 30637 Comm: drv_selftest Tainted: G U W 4.10.0-rc3+ #321
    [ 521.961137] Hardware name: / , BIOS PYBSWCEL.86A.0027.2015.0507.1758 05/07/2015
    [ 521.961148] Call Trace:
    [ 521.961161] dump_stack+0x4d/0x6f
    [ 521.961172] __warn+0xc1/0xe0
    [ 521.961181] warn_slowpath_null+0x18/0x20
    [ 521.961189] __alloc_pages_slowpath+0x237/0x9a0
    [ 521.961200] ? sg_init_table+0x1a/0x40
    [ 521.961208] ? get_page_from_freelist+0x3fa/0x910
    [ 521.961275] ? i915_gem_object_get_sg+0x272/0x2b0 [i915]
    [ 521.961285] __alloc_pages_nodemask+0x1ea/0x220
    [ 521.961295] kmalloc_order+0x1c/0x50
    [ 521.961304] __kmalloc+0x115/0x170
    [ 521.961314] expand_to_next_prime+0x43/0x180 [prime_numbers]
    [ 521.961324] next_prime_number+0x47/0xc0 [prime_numbers]
    [ 521.961377] igt_vma_rotate+0x386/0x590 [i915]
    [ 521.961429] i915_subtests+0x37/0xc0 [i915]
    [ 521.961481] i915_vma_mock_selftests+0x3d/0x70 [i915]
    [ 521.961532] run_selftests+0x16e/0x1f0 [i915]
    [ 521.961541] ? 0xffffffffa02a4000
    [ 521.961592] i915_mock_selftests+0x29/0x40 [i915]
    [ 521.961638] i915_init+0xa/0x5e [i915]
    [ 521.961646] ? 0xffffffffa02a4000
    [ 521.961655] do_one_initcall+0x3e/0x160
    [ 521.961664] ? __vunmap+0x7c/0xc0
    [ 521.961672] ? vfree+0x29/0x70
    [ 521.961680] ? kmem_cache_alloc+0xcf/0x120
    [ 521.961690] do_init_module+0x55/0x1c4
    [ 521.961699] load_module+0x1f3f/0x25b0
    [ 521.961707] ? __symbol_put+0x40/0x40
    [ 521.961716] ? kernel_read_file+0x100/0x190
    [ 521.961725] SYSC_finit_module+0xbc/0xf0
    [ 521.961734] SyS_finit_module+0x9/0x10
    [ 521.961744] entry_SYSCALL_64_fastpath+0x17/0x98
    [ 521.961752] RIP: 0033:0x7f111aca4119
    [ 521.961760] RSP: 002b:00007ffd8be6cbe8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
    [ 521.961773] RAX: ffffffffffffffda RBX: 0000000000000006 RCX: 00007f111aca4119
    [ 521.961781] RDX: 0000000000000000 RSI: 000055dfc18bc8e0 RDI: 0000000000000006
    [ 521.961789] RBP: 00007ffd8be6bbe0 R08: 0000000000000000 R09: 0000000000000000
    [ 521.961796] R10: 0000000000000006 R11: 0000000000000246 R12: 0000000000000005
    [ 521.961805] R13: 000055dfc18bd3a0 R14: 00007ffd8be6bbc0 R15: 0000000000000005

    Signed-off-by: Chris Wilson
    Cc: Joonas Lahtinen
    Cc: Daniel Vetter
    Reviewed-by: Joonas Lahtinen
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170113235119.22528-1-chris@chris-wilson.co.uk

    Chris Wilson
     
  • PTR_ERR should access the value just tested by IS_ERR, otherwise
    the wrong error code will be returned.

    Fixes: d1667b86795a ("drm/hisilicon/hibmc: Add support for frame buffer")
    Signed-off-by: Wei Yongjun
    Reviewed-by: Gustavo Padovan
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170112151921.16538-1-weiyj.lk@gmail.com

    Wei Yongjun
     
  • Fixes the following sparse warning:

    drivers/gpu/drm/drm_atomic_helper.c:1360:6: warning:
    symbol 'release_crtc_commit' was not declared. Should it be static?

    Signed-off-by: Wei Yongjun
    Reviewed-by: Gustavo Padovan
    Signed-off-by: Daniel Vetter
    Link: http://patchwork.freedesktop.org/patch/msgid/20170112142157.14684-1-weiyj.lk@gmail.com

    Wei Yongjun
     

20 Jan, 2017

2 commits

  • This avoids using the deprecated drm_put_dev() and unload() hook
    interfaces in the qxl driver.

    Signed-off-by: Gabriel Krisman Bertazi
    Cc: Dave Airlie
    Cc: Daniel Vetter
    Cc: Gustavo Padovan
    Signed-off-by: Gustavo Padovan
    Link: http://patchwork.freedesktop.org/patch/msgid/20170119134806.8926-2-krisman@collabora.co.uk

    Gabriel Krisman Bertazi
     
  • This avoids using the deprecated drm_get_pci_dev() and load() hook
    interfaces in the qxl driver.

    The only tricky part is to ensure TTM debugfs initialization happens
    after the debugfs root node is created, which is done by moving that
    code into the debufs_init() hook.

    Tested on qemu with igt and running a WM on top of X.

    Changes since v1:
    - Drop verification for primary minor in qxl_debugsfs_init.
    Changes since V2:
    - Put new header together with other debugfs headers.

    Signed-off-by: Gabriel Krisman Bertazi
    Cc: Dave Airlie
    Cc: Daniel Vetter
    Cc: Gustavo Padovan
    Signed-off-by: Gustavo Padovan
    Link: http://patchwork.freedesktop.org/patch/msgid/20170119134806.8926-1-krisman@collabora.co.uk

    Gabriel Krisman Bertazi
     

19 Jan, 2017

6 commits

  • I've found that by just turning the chip on and off via the
    POWER_DOWN register, I end up getting i2c_transfer errors on
    HiKey.

    Investigating further, it turns out that some of the register
    state in hardware is getting lost, as the device registers are
    reset when the chip is powered down.

    Thus this patch simply re-writes the i2c address to the
    ADV7511_REG_EDID_I2C_ADDR register to ensure its properly set
    before we try to read the EDID data.

    Cc: David Airlie
    Cc: Archit Taneja
    Cc: Wolfram Sang
    Cc: Lars-Peter Clausen
    Cc: Laurent Pinchart
    Cc: dri-devel@lists.freedesktop.org
    Reviewed-by: Laurent Pinchart
    Tested-by: Laurent Pinchart
    Signed-off-by: John Stultz
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/1484614372-15342-7-git-send-email-john.stultz@linaro.org

    John Stultz
     
  • Thus this patch changes the EDID probing logic so that we
    re-use the __adv7511_power_on/off() calls instead of duplciating
    logic.

    This does change behavior slightly as it adds the HPD signal
    pulse to the EDID probe path, but Archit has had a patch to
    add HPD signal pulse to the EDID probe path before, so this
    should address the cases where that helped. Another difference
    is that regcache_mark_dirty() is also called in the power off
    path once EDID is probed.

    Cc: David Airlie
    Cc: Archit Taneja
    Cc: Wolfram Sang
    Cc: Lars-Peter Clausen
    Cc: Laurent Pinchart
    Cc: dri-devel@lists.freedesktop.org
    Reviewed-by: Laurent Pinchart
    Tested-by: Laurent Pinchart
    Signed-off-by: John Stultz
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/1484614372-15342-6-git-send-email-john.stultz@linaro.org

    John Stultz
     
  • In chasing down issues with EDID probing, I found some
    duplicated but incomplete logic used to power the chip on and
    off.

    This patch refactors the adv7511_power_on/off functions, so
    they can be used for internal needs.

    Cc: David Airlie
    Cc: Archit Taneja
    Cc: Wolfram Sang
    Cc: Lars-Peter Clausen
    Cc: Laurent Pinchart
    Cc: dri-devel@lists.freedesktop.org
    Signed-off-by: John Stultz
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/1484614372-15342-5-git-send-email-john.stultz@linaro.org

    John Stultz
     
  • On some adv7511 implementations, we can get some spurious
    disconnect signals which can cause monitor probing to fail.

    This patch enables HPD (hot plug detect) interrupt support
    which allows the monitor to be properly re-initialized when
    the spurious disconnect signal goes away.

    This also enables proper hotplug support.

    Cc: David Airlie
    Cc: Archit Taneja
    Cc: Wolfram Sang
    Cc: Lars-Peter Clausen
    Cc: Laurent Pinchart
    Cc: dri-devel@lists.freedesktop.org
    Acked-by: Laurent Pinchart
    Tested-by: Laurent Pinchart
    Originally-by: Archit Taneja
    [jstultz: Added proper commit message]
    Signed-off-by: John Stultz
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/1484614372-15342-4-git-send-email-john.stultz@linaro.org

    Archit Taneja
     
  • In chasing down a previous issue with EDID probing from calling
    drm_helper_hpd_irq_event() from irq context, Laurent noticed
    that the DRM documentation suggests that
    drm_kms_helper_hotplug_event() should be used instead.

    Thus this patch replaces drm_helper_hpd_irq_event() with
    drm_kms_helper_hotplug_event(), which requires we update the
    connector.status entry and only call _hotplug_event() when the
    status changes.

    Cc: David Airlie
    Cc: Archit Taneja
    Cc: Wolfram Sang
    Cc: Lars-Peter Clausen
    Cc: Laurent Pinchart
    Cc: dri-devel@lists.freedesktop.org
    Reviewed-by: Laurent Pinchart
    Tested-by: Laurent Pinchart
    Signed-off-by: John Stultz
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/1484614372-15342-3-git-send-email-john.stultz@linaro.org

    John Stultz
     
  • I was recently seeing issues with EDID probing, where
    the logic to wait for the EDID read bit to be set by the
    IRQ wasn't happening and the code would time out and fail.

    Digging deeper, I found this was due to the fact that
    IRQs were disabled as we were running in IRQ context from
    the HPD signal.

    Thus this patch changes the logic to handle the HPD signal
    via a work_struct so we can be out of irq context.

    With this patch, the EDID probing on hotplug does not time
    out.

    Cc: David Airlie
    Cc: Archit Taneja
    Cc: Wolfram Sang
    Cc: Lars-Peter Clausen
    Cc: Laurent Pinchart
    Cc: dri-devel@lists.freedesktop.org
    Reviewed-by: Laurent Pinchart
    Tested-by: Laurent Pinchart
    Signed-off-by: John Stultz
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/1484614372-15342-2-git-send-email-john.stultz@linaro.org

    John Stultz
     

18 Jan, 2017

18 commits

  • Use drm_crtc_from_index() to find drm_crtc for given index, so that we
    do not need to maintain a pointer array in struct vc4_dev.

    Signed-off-by: Shawn Guo
    Cc: Eric Anholt
    Signed-off-by: Sean Paul
    Link: http://patchwork.freedesktop.org/patch/msgid/1483961145-18453-7-git-send-email-shawnguo@kernel.org

    Shawn Guo
     
  • Function tegra_crtc_from_pipe() does the exactly same thing as what
    crtc helper drm_crtc_from_index() provides. Use the helper to save
    some code.

    Signed-off-by: Shawn Guo
    Cc: Thierry Reding
    Signed-off-by: Sean Paul
    Link: http://patchwork.freedesktop.org/patch/msgid/1483961145-18453-6-git-send-email-shawnguo@kernel.org

    Shawn Guo
     
  • Use drm_crtc_from_index() to find drm_crtc for given index.

    Signed-off-by: Shawn Guo
    Cc: Ben Skeggs
    Signed-off-by: Sean Paul
    Link: http://patchwork.freedesktop.org/patch/msgid/1483961145-18453-5-git-send-email-shawnguo@kernel.org

    Shawn Guo
     
  • Use drm_crtc_from_index() to find drm_crtc for given index, so that we
    do not need to maintain a pointer array in struct mtk_drm_private.

    Signed-off-by: Shawn Guo
    Cc: CK Hu
    Signed-off-by: Sean Paul
    Link: http://patchwork.freedesktop.org/patch/msgid/1483961145-18453-4-git-send-email-shawnguo@kernel.org

    Shawn Guo
     
  • Use drm_crtc_from_index() to find drm_crtc for given index, so that we
    do not need to maintain a pointer array in struct kirin_drm_private.

    Reviewed-by: Xinliang Liu
    Signed-off-by: Shawn Guo
    Signed-off-by: Sean Paul
    Link: http://patchwork.freedesktop.org/patch/msgid/1483961145-18453-3-git-send-email-shawnguo@kernel.org

    Shawn Guo
     
  • Use drm_crtc_from_index() to find drm_crtc for given index, so that we
    do not need to maintain a pointer array in struct exynos_drm_private.

    Signed-off-by: Shawn Guo
    Cc: Inki Dae
    Signed-off-by: Sean Paul
    Link: http://patchwork.freedesktop.org/patch/msgid/1483961145-18453-2-git-send-email-shawnguo@kernel.org

    Shawn Guo
     
  • Make it clear that the core bridge/dw_hdmi.txt document isn't a device
    tree binding by itself but is meant to be referenced by platform device
    tree bindings, and update the Rockchip and Freescale DWC HDMI TX
    bindings to reference it.

    Signed-off-by: Laurent Pinchart
    Acked-by: Rob Herring
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-21-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     
  • According to the PHY IP core vendor, the SVSRET signal must be asserted
    before resetting the PHY. Tests on RK3288 and R-Car Gen3 showed no
    regression, the change should thus be safe.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Jose Abreu
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-20-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     
  • The PHY reset signal is controlled by bit PHYRSTZ in the MC_PHYRSTZ
    register. The signal is active low on Gen1 PHYs and active high on Gen2
    PHYs. The driver toggles the signal high then low, which is correct for
    all currently supported platforms, but the register values macros are
    incorrectly named. Replace them with a single macro named after the bit,
    and add a comment to the source code to explain the behaviour.

    The driver's behaviour isn't changed by this rename, the code will still
    need to be fixed to support Gen1 PHYs.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Jose Abreu
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-19-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     
  • Replace the hardcoded register address numerical values with macros to
    clarify the code.

    This change has been tested by comparing the assembly code before and
    after the change.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Jose Abreu
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-18-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     
  • Detect the PHY type and use it to handle the PHY type-specific SVSRET
    signal.

    Signed-off-by: Laurent Pinchart
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-17-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     
  • Use the device version queried at runtime instead of the device type
    provided through platform data to handle the overflow workaround. This
    will make support of other SoCs integrating the same HDMI TX controller
    version easier.

    Among the supported platforms only i.MX6DL and i.MX6Q have been
    identified as needing the workaround. Disabling it on Rockchip RK3288
    (which integrates a v2.00a controller) didn't produce any error or
    artifact.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Jose Abreu
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-16-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     
  • Bit 0 in CONFIG1_ID tells whether the IP core uses an AHB slave
    interface for control. The correct way to identify AHB audio DMA support
    is through bit 1 in CONFIG3_ID.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Jose Abreu
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-15-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     
  • The DWC HDMI TX can be recognized by the two product identification
    registers. If the registers don't read as expect the IP will be very
    different than what the driver has been designed for, or will be
    misconfigured in a way that makes it non-operational (invalid memory
    address, incorrect clocks, ...). We should reject this situation with an
    error.

    While this isn't critical for proper operation with supported IPs at the
    moment, the driver will soon gain automatic device-specific handling
    based on runtime device identification. This change makes it easier to
    implement that without having to default to a random guess in case the
    device can't be identified.

    While at it print a readable version number in the device identification
    message instead of raw register values.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Jose Abreu
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-14-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     
  • The bit is documented in a Rockchip BSP as

    #define m_SVSRET_SIG (1 << 5) /* depend on PHY_MHL_COMB0=1 */

    This is confirmed by a Renesas platform, which uses a 2.0 DWC HDMI TX as
    the RK3288. Rename the bit accordingly.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Jose Abreu
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-13-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     
  • The current code hard codes the call of hdmi_phy_configure() to be 8bpp
    and provides extraneous error checking to verify that this hardcoded
    value is correct. Simplify the implementation by removing the argument.

    Signed-off-by: Kieran Bingham
    Signed-off-by: Laurent Pinchart
    Reviewed-by: Jose Abreu
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-12-laurent.pinchart+renesas@ideasonboard.com

    Kieran Bingham
     
  • As an option for drivers not based on the component framework, register
    the bridge with the DRM core with the DRM bridge API. Existing drivers
    based on dw_hdmi_bind() and dw_hdmi_unbind() are not affected as those
    functions are preserved with their current behaviour.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Jose Abreu
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-11-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart
     
  • The DRM device is not guaranteed by the bridge API to be available
    before the attach callback. The driver performs properly at the moment
    as it doesn't use the drm_bridge_add() registration method. As this will
    be changed later, move connector creation to attach time to ensure
    compatibility with the API.

    Signed-off-by: Laurent Pinchart
    Reviewed-by: Jose Abreu
    Signed-off-by: Archit Taneja
    Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-10-laurent.pinchart+renesas@ideasonboard.com

    Laurent Pinchart