1. 03 Jun, 2016 8 commits
    • Oded Gabbay's avatar
      drm/amdkfd: print once about mem_banks truncation · 0fbbbf8b
      Oded Gabbay authored
      This print can really spam the kernel log in case we are truncating
      mem_banks, so just print this info once. It should also not be classified
      as warning.
      Signed-off-by: default avatarOded Gabbay <oded.gabbay@gmail.com>
      0fbbbf8b
    • Oded Gabbay's avatar
      drm/amdkfd: destroy dbgmgr in notifier release · bc4755a4
      Oded Gabbay authored
      amdkfd need to destroy the debug manager in case amdkfd's notifier
      function is called before the unbind function, because in that case,
      the unbind function will exit without destroying debug manager.
      Signed-off-by: default avatarOded Gabbay <oded.gabbay@gmail.com>
      CC: Stable <stable@vger.kernel.org>
      bc4755a4
    • Oded Gabbay's avatar
      drm/amdkfd: unbind only existing processes · 121b78e6
      Oded Gabbay authored
      When unbinding a process from a device (initiated by amd_iommu_v2), the
      driver needs to make sure that process still exists in the process table.
      There is a possibility that amdkfd's own notifier handler -
      kfd_process_notifier_release() - was called before the unbind function
      and it already removed the process from the process table.
      
      v2:
      Because there can be only one process with the specified pasid, and
      because *p can't be NULL inside the hash_for_each_rcu macro, it is more
      reasonable to just put the whole code inside the if statement that
      compares the pasid value. That way, when we exit hash_for_each_rcu, we
      simply exit the function as well.
      Signed-off-by: default avatarOded Gabbay <oded.gabbay@gmail.com>
      CC: Stable <stable@vger.kernel.org>
      121b78e6
    • Dave Airlie's avatar
      drm/omap: fix unused variable warning. · ab3ab684
      Dave Airlie authored
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      ab3ab684
    • Dave Airlie's avatar
      Merge tag 'omapdrm-4.7-fixes' of... · f1777aaf
      Dave Airlie authored
      Merge tag 'omapdrm-4.7-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux into drm-fixes
      
      omapdrm fixes for 4.7
      
      * multiple compile break fixes for missing includes, bad kconfig dependencies.
      * remove regulator API misuse causing deprecation warnings
      * OMAP5 HDMI fixes for DDC and AVI infoframe
      * OMAP4 HDMI fix for CEC
      
      * tag 'omapdrm-4.7-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
        drm/omap: include gpio/consumer.h where needed
        drm/omap: include linux/seq_file.h where needed
        Revert "drm/omap: no need to select OMAP2_DSS"
        drm/omap: Remove regulator API abuse
        OMAPDSS: HDMI5: Change DDC timings
        OMAPDSS: HDMI5: Fix AVI infoframe
        drm/omap: fix OMAP4 hdmi_core_powerdown_disable()
        drm/omap: Fix missing includes
        drm/omapdrm: include pinctrl/consumer.h where needed
      f1777aaf
    • Dave Airlie's avatar
      Merge tag 'imx-drm-next-2016-06-01' of git://git.pengutronix.de/git/pza/linux into drm-fixes · b1602452
      Dave Airlie authored
      imx-drm updates
      
      - add support for reading LVDS panel EDID over DDC
      - enable UYVY/VYUY support
      - add support for pixel clock polarity configuration
      - honor the native-mode DT property for LVDS
      - various fixes and cleanups
      
      * tag 'imx-drm-next-2016-06-01' of git://git.pengutronix.de/git/pza/linux:
        drm/imx: plane: Don't set plane->crtc in ipu_plane_update()
        drm/imx: ipuv3-plane: Constify ipu_plane_funcs
        drm/imx: imx-ldb: honor 'native-mode' property when selecting video mode from DT
        drm/imx: parallel-display: remove dead code
        drm/imx: use bus_flags for pixel clock polarity
        drm/imx: ipuv3-plane: enable UYVY and VYUY formats
        drm/imx: parallel-display: use of_graph_get_endpoint_by_regs helper
        drm/imx: imx-ldb: use of_graph_get_endpoint_by_regs helper
        dt-bindings: imx: ldb: Add ddc-i2c-bus property
        drm/imx: imx-ldb: Add DDC support
      b1602452
    • Dave Airlie's avatar
      Merge tag 'drm-atmel-hlcdc-fixes/for-4.7-rc2' of github.com:bbrezillon/linux-at91 into drm-fixes · 35962eae
      Dave Airlie authored
      Two trivial bugfixes for the atmel-hlcdc driver.
      
      The first one is making use of __drm_atomic_helper_crtc_destroy_state()
      instead of duplicating its logic in atmel_hlcdc_crtc_reset() and
      risking memory leaks if other objects are added to the common CRTC
      state.
      
      The second one is fixing a possible NULL pointer dereference.
      
      * tag 'drm-atmel-hlcdc-fixes/for-4.7-rc2' of github.com:bbrezillon/linux-at91:
        drm: atmel-hlcdc: fix a NULL check
        drm: atmel-hlcdc: fix atmel_hlcdc_crtc_reset() implementation
      35962eae
    • Dave Airlie's avatar
      Merge branch 'for-upstream/hdlcd' of git://linux-arm.org/linux-ld into drm-fixes · 6572c8c6
      Dave Airlie authored
      "I have accumulated some cleanup patches for HDLCD, partly triggered by
      Daniel Vetter's work on non-blocking atomic operations, that I would like
      to integrate into v4.7. My first patch is important for the newly enabled
      hibernate option for AArch64 on Juno, the others are fixing behaviour in
      HDLCD and adding a debugfs entry to help track the underlying framebuffer
      usage. I'm also taking one of Daniel's patches from his non-blocking series
      to help with the integration of his patches later."
      
      * 'for-upstream/hdlcd' of git://linux-arm.org/linux-ld:
        drm: hdlcd: Add information about the underlying framebuffers in debugfs
        drm: hdlcd: Cleanup the atomic plane operations
        drm/hdlcd: Fix up crtc_state->event handling
        drm: hdlcd: Revamp runtime power management
      6572c8c6
  2. 02 Jun, 2016 4 commits
    • Liviu Dudau's avatar
      drm: hdlcd: Add information about the underlying framebuffers in debugfs · f6c68b4b
      Liviu Dudau authored
      drm_fb_cma code has a nice helper function to display in the debugfs
      information about the underlying framebuffers used by HDLCD:
      
      $ cat /sys/kernel/debug/dri/0/fb
      fb: 1920x1200@XR24
         0: offset=0 pitch=7680, obj:  0 ( 2) 001011ba 0x00000000fc300000 ffffff800a27c000 9338880
      fb: 1920x1200@XR24
         0: offset=0 pitch=7680, obj:  0 ( 2) 001008ca 0x00000000fba00000 ffffff8009987000 9338880
      fb: 1920x1200@XR24
         0: offset=0 pitch=7680, obj:  0 ( 1) 00100000 0x00000000fb100000 ffffff8008fdc000 9216000
      
      Add the entry in HDLCD's debugfs node.
      Signed-off-by: default avatarLiviu Dudau <Liviu.Dudau@arm.com>
      f6c68b4b
    • Liviu Dudau's avatar
      drm: hdlcd: Cleanup the atomic plane operations · 96ebb1f3
      Liviu Dudau authored
      Harden the plane_check() code to drop attempts at scaling because
      that is not supported. Make hdlcd_plane_atomic_update() set the pitch
      and line length registers that correctly reflect the plane's values.
      And make hdlcd_crtc_mode_set_nofb() a helper function for
      hdlcd_crtc_enable() rather than an exposed hook.
      
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: default avatarLiviu Dudau <Liviu.Dudau@arm.com>
      96ebb1f3
    • Daniel Vetter's avatar
      drm/hdlcd: Fix up crtc_state->event handling · 38c8c22c
      Daniel Vetter authored
      event_list just reimplemented what drm_crtc_arm_vblank_event does. And
      we also need to send out drm events when shutting down a pipe.
      
      With this it's possible to use the new nonblocking commit support in
      the helpers.
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      Acked-by: default avatarLiviu Dudau <Liviu.Dudau@arm.com>
      38c8c22c
    • Liviu Dudau's avatar
      drm: hdlcd: Revamp runtime power management · a95acec1
      Liviu Dudau authored
      Because the HDLCD driver acts as a component master it can end
      up enabling the runtime PM functionality before the encoders
      are initialised. This can cause crashes if the component slave
      never probes (missing module) or if the PM operations kick in
      before the probe finishes.
      
      Move the enabling of the runtime PM after the component master
      has finished collecting the slave components and use the DRM
      atomic helpers to suspend and resume the device.
      Tested-by: default avatarRobin Murphy <Robin.Murphy@arm.com>
      Signed-off-by: default avatarLiviu Dudau <Liviu.Dudau@arm.com>
      a95acec1
  3. 01 Jun, 2016 11 commits
  4. 31 May, 2016 9 commits
    • Arnd Bergmann's avatar
      drm/omap: include gpio/consumer.h where needed · d0196c8d
      Arnd Bergmann authored
      A lot of the display drivers for OMAP use the gpio descriptor functions
      that are only available in linux/gpio.h if GPIOLIB is enabled and
      otherwise produce a build error:
      
      drivers/gpu/drm/omapdrm/displays/encoder-opa362.c: In function 'opa362_enable':
      drivers/gpu/drm/omapdrm/displays/encoder-opa362.c:101:3: error: implicit declaration of function 'gpiod_set_value_cansleep' [-Werror=implicit-function-declaration]
      drivers/gpu/drm/omapdrm/displays/panel-dpi.c: In function 'panel_dpi_probe_pdata':
      drivers/gpu/drm/omapdrm/displays/panel-dpi.c:189:23: error: implicit declaration of function 'gpio_to_desc' [-Werror=implicit-function-declaration]
      drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c: In function 'sharp_ls_enable':
      drivers/gpu/drm/omapdrm/displays/panel-sharp-ls037v7dw01.c:120:3: error: implicit declaration of function 'gpiod_set_value_cansleep' [-Werror=implicit-function-declaration]
      
      This replaces the existing linux/gpio.h with linux/gpio/consumer.h
      where needed. In case of panel-lgphilips-lb035q02.c however, we
      also have to include linux/gpio.h to get the definition of gpio_is_valid
      and gpio_set_value_cansleep that are used for the non-DT case.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      [tomi.valkeinen@ti.com: resolved conflicts]
      Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      d0196c8d
    • Arnd Bergmann's avatar
      drm/omap: include linux/seq_file.h where needed · 2d802453
      Arnd Bergmann authored
      The omapdrm driver relies on this header to be included
      implicitly, but this does not always work, and I get
      this error in randconfig builds:
      
      gpu/drm/omapdrm/dss/hdmi_phy.c: In function 'hdmi_phy_dump':
      gpu/drm/omapdrm/dss/hdmi_phy.c:34:2: error: implicit declaration of function 'seq_printf' [-Werror=implicit-function-declaration]
      gpu/drm/omapdrm/dss/hdmi_wp.c: In function 'hdmi_wp_dump':
      gpu/drm/omapdrm/dss/hdmi_wp.c:26:2: error: implicit declaration of function 'seq_printf' [-Werror=implicit-function-declaration]
      gpu/drm/omapdrm/dss/hdmi_pll.c: In function 'hdmi_pll_dump':
      gpu/drm/omapdrm/dss/hdmi_pll.c:30:2: error: implicit declaration of function 'seq_printf' [-Werror=implicit-function-declaration]
      
      This adds the #include statements in all files that have
      a seq_printf statement.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      2d802453
    • Peter Ujfalusi's avatar
      Revert "drm/omap: no need to select OMAP2_DSS" · 62cb0751
      Peter Ujfalusi authored
      This reverts commit 1c278e5e.
      
      If DRM_OMAP does not select OMAP2_DSS it is possible to build a kernel with
      DRM_OMAP only and not selecting OMAP2_DSS. Since omapdrm depends on
      OMAP2_DSS this will result on broken kernel build.
      Signed-off-by: default avatarPeter Ujfalusi <peter.ujfalusi@ti.com>
      Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      62cb0751
    • Peter Ujfalusi's avatar
      drm/omap: Remove regulator API abuse · 973999aa
      Peter Ujfalusi authored
      regulator_can_change_voltage() is deprecated and it's use is not necessary
      as commit:
      6a0028b3 regulator: Deprecate regulator_can_change_voltage()
      describers it clearly.
      
      Also, regulator_set_voltage() is misused in the driver, as it is
      supposed to be used only in cases where the regulator voltage needs to
      be changed dynamically at runtime. In DSS's case, we always want a fixed
      voltage, set in the .dts files.
      Signed-off-by: default avatarPeter Ujfalusi <peter.ujfalusi@ti.com>
      Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      973999aa
    • Jim Lodes's avatar
      OMAPDSS: HDMI5: Change DDC timings · 4bafcbc7
      Jim Lodes authored
      The DDC scl high and low times were set to the minimum values
      from the i2c specification, but the i2c specification takes into
      account the rise time and fall time to calculate the frequency.
      To pass HDMI certification DDC can not exceed 100kHz therefore in
      a system where the rise times and fall times are negligible the high
      and low times for scl need to be 10us.
      Signed-off-by: default avatarJim Lodes <jim.lodes@garmin.com>
      Signed-off-by: default avatarJ.D. Schroeder <jay.schroeder@garmin.com>
      Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      4bafcbc7
    • Jim Lodes's avatar
      OMAPDSS: HDMI5: Fix AVI infoframe · 08f707ac
      Jim Lodes authored
      The AVI infoframe R0-R3 in the 2nd data byte represents the
      Active Format Aspect Ratio. It is four bits long not two bits.
      This fixes that mask used to extract the bits before writing the
      bits to the hardware registers.
      Signed-off-by: default avatarJim Lodes <jim.lodes@garmin.com>
      Signed-off-by: default avatarJ.D. Schroeder <jay.schroeder@garmin.com>
      Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      08f707ac
    • Tomi Valkeinen's avatar
      drm/omap: fix OMAP4 hdmi_core_powerdown_disable() · 91cd220a
      Tomi Valkeinen authored
      hdmi_core_powerdown_disable() is supposed to disable HDMI core's
      power-down mode. However, the function sets the power-down bit to 0,
      which means "enable power-down".
      
      This hasn't caused any issues as the PD seems to affect only interrupts
      from HDMI core, and none of those interrupts are used at the moment. CEC
      functionality requires core interrupts, and the PD mode needs to be
      fixed.
      
      This patch fixes hdmi_core_powerdown_disable() to actually disable the
      PD mode.
      Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      Reported-by: default avatarHans Verkuil <hverkuil@xs4all.nl>
      91cd220a
    • Tomi Valkeinen's avatar
      drm/omap: Fix missing includes · d9e32ecd
      Tomi Valkeinen authored
      With certain kernel config options many omapdrm files fail to compile
      due to missing include of linux/gpio/consumer.h and linux/of.h.
      
      This patch adds those includes.
      Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      Reported-by: default avatarDan Murphy <dmurphy@ti.com>
      Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      d9e32ecd
    • Arnd Bergmann's avatar
      drm/omapdrm: include pinctrl/consumer.h where needed · 2639d6b9
      Arnd Bergmann authored
      In some configurations, we can build the OMAP dss driver without
      implictly including the pinctrl consumer definitions, causing
      a build error:
      
      gpu/drm/omapdrm/dss/dss.c: In function 'dss_runtime_suspend':
      gpu/drm/omapdrm/dss/dss.c:1268:2: error: implicit declaration of function 'pinctrl_pm_select_sleep_state' [-Werror=implicit-function-declaration]
      
      This adds an explicit #include.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      2639d6b9
  5. 30 May, 2016 8 commits