Age | Commit message (Collapse) | Author | Files | Lines |
|
Drivers shouldn't clobber the passed in addfb ioctl parameters.
i915 was doing just that. To prevent it from happening again,
pass the struct around as const, starting all the way from
internal_framebuffer_create().
Signed-off-by: Ville Syrjälä <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
|
|
drm_vblank_count() returns the software counter. We should not pretend
it's the hw counter since we use the hw counter to figuere out what the
software counter value should be. So instead provide a new function
drm_vblank_no_hw_counter() for drivers that don't have a real hw
counter. The new function simply returns 0, which is about the only
thing it can do.
Cc: Vincent Abriou <[email protected]>
Cc: Thierry Reding <[email protected]>
Signed-off-by: Ville Syrjälä <[email protected]>
Reviewed-by: Vincent Abriou <[email protected]>
[danvet: s/int pipe/unsigned int pipe/ to follow Thierry's interface
change.]
Signed-off-by: Daniel Vetter <[email protected]>
|
|
This continues the pattern started in commit cc1ef118fc09 ("drm/irq:
Make pipe unsigned and name consistent"). This is applied to the public
APIs and driver callbacks, so pretty much all drivers need to be updated
to match the new prototypes.
Cc: Christian König <[email protected]>
Cc: Alex Deucher <[email protected]>
Cc: Russell King <[email protected]>
Cc: Inki Dae <[email protected]>
Cc: Jianwei Wang <[email protected]>
Cc: Alison Wang <[email protected]>
Cc: Patrik Jakobsson <[email protected]>
Cc: Daniel Vetter <[email protected]>
Cc: Jani Nikula <[email protected]>
Cc: Philipp Zabel <[email protected]>
Cc: David Airlie <[email protected]>
Cc: Rob Clark <[email protected]>
Cc: Ben Skeggs <[email protected]>
Cc: Tomi Valkeinen <[email protected]>
Cc: Laurent Pinchart <[email protected]>
Cc: Mark Yao <[email protected]>
Cc: Benjamin Gaignard <[email protected]>
Cc: Vincent Abriou <[email protected]>
Cc: Thomas Hellstrom <[email protected]>
Signed-off-by: Thierry Reding <[email protected]>
Reviewed-by: Ville Syrjälä <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
|
|
Avoid magic numbers and use the introduced defines.
Cc: Ville Syrjälä <[email protected]>
Signed-off-by: Joonas Lahtinen <[email protected]>
Reviewed-by: Ville Syrjälä <[email protected]>
Signed-off-by: Daniel Vetter <[email protected]>
|
|
This removes the need to separately track fb changes i915.
That will be done as a separate commit, however.
Changes since v1:
- Add dri-devel to cc.
- Fix a check in intel's prepare and cleanup fb to take rotation
into account.
Changes since v2:
- Split out i915 changes to a separate commit.
Cc: [email protected]
Signed-off-by: Maarten Lankhorst <[email protected]>
Reviewed-by: Daniel Stone <[email protected]>
[danvet: Squash in msm fixup from Maarten.]
Signed-off-by: Daniel Vetter <[email protected]>
|
|
Linux 4.2-rc8
Backmerge required for Intel so they can fix their -next tree up properly.
|
|
Describe capabilities of the HLCDC IP found on sama5d4 SoCs and add a
new entry to the atmel_hlcdc_of_match table.
Signed-off-by: Boris Brezillon <[email protected]>
|
|
Describe capabilities of the HLCDC IP found on at91sam9n12 SoC and add a
new entry to the atmel_hlcdc_of_match table.
Signed-off-by: Boris Brezillon <[email protected]>
|
|
Describe capabilities of the HLCDC IP found on at91sam9x5 SoCs and add a
new entry to the atmel_hlcdc_of_match table.
Signed-off-by: Boris Brezillon <[email protected]>
|
|
The HLCDC IP supports RGB565 and RGB444 output formats.
Signed-off-by: Boris Brezillon <[email protected]>
|
|
The atmel-hlcdc driver already supports atomic operations, add the
missing DRM_ATOMIC flag to expose the atomic features to userspace.
Signed-off-by: Boris Brezillon <[email protected]>
|
|
Signed-off-by: Boris Brezillon <[email protected]>
|
|
If PM is enabled but PM_SLEEP is disabled, the suspend/resume functions
are still unused and produce a compiler warning.
Signed-off-by: Thierry Reding <[email protected]>
Signed-off-by: Boris Brezillon <[email protected]>
Cc: <[email protected]> # 4.1+
|
|
Linux 4.2-rc7
Backmerge master for i915 fixes
|
|
In intel it's useful to keep track of some state changes with old
crtc state vs new state, for example to disable initial planes or
when a modeset's prevented during fastboot.
Cc: [email protected]
Signed-off-by: Maarten Lankhorst <[email protected]>
Reviewed-by: Ander Conselvan de Oliveira <[email protected]>
[danvet: squash in fixup for exynos provided by Maarten.]
Signed-off-by: Daniel Vetter <[email protected]>
|
|
drm_vblank_on() now warns on nested use or if vblank is not properly
initialized. This patch fixes Atmel HLCDC vblank initial state.
Signed-off-by: Boris Brezillon <[email protected]>
Reported-by: Sylvain Rochet <[email protected]>
|
|
Unfortunately we used the enabled flag in struct drm_crtc instead of the
enabled flag in struct atmel_hlcdc_crtc. This obviously leads to
discrepancies on crtc enable state.
This patch fixes the issue by using the struct atmel_hlcdc_crtc enabled
flag in PM support.
Signed-off-by: Sylvain Rochet <[email protected]>
Signed-off-by: Boris Brezillon <[email protected]>
|
|
Linux 4.0-rc3 backmerge to fix two i915 conflicts, and get
some mainline bug fixes needed for my testing box
Conflicts:
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/intel_display.c
|
|
Use cases like rotation require these hooks to have some context so they
know how to prepare and cleanup the frame buffer correctly.
For i915 specifically, object backing pages need to be mapped differently
for different rotation modes and the driver needs to know which mapping to
instantiate and which to tear down when transitioning between them.
v2: Made passed in states const. (Daniel Vetter)
[airlied: add mdp5 and atmel fixups]
Signed-off-by: Tvrtko Ursulin <[email protected]>
Cc: Daniel Vetter <[email protected]>
Cc: [email protected]
Reviewed-by: Rob Clark <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
|
|
Remove this configuration bit in crtc driver as the rising edge clock is widely
used.
Signed-off-by: Boris Brezillon <[email protected]>
Signed-off-by: Nicolas Ferre <[email protected]>
|
|
Remove a useless pm_runtime_put_sync leading to unbalanced
usage_count.
Signed-off-by: Boris Brezillon <[email protected]>
Reported-by: Sylvain Rochet <[email protected]>
|
|
The A2Q (Add To Queue) and UPDATE bits are left in their previous state
when resetting the layer.
This lead to weird behavior when enabling the plane again: the framebuffer
previously queued is dequeued and we end up with access to an old memory
region.
Reset those bits when resetting the channel.
Signed-off-by: Boris Brezillon <[email protected]>
|
|
suspend/resume
Some LCD panels have back-powering issue when un-powered, allows users
to use an alternate pinctrl "sleep" in order to clamp outputs to a
wanted state at suspend.
Signed-off-by: Sylvain Rochet <[email protected]>
Signed-off-by: Boris Brezillon <[email protected]>
|
|
On suspend: switch off CRTC if not already suspended with runtime PM
On resume: switch on CRTC if we were not already suspended from runtime
PM while suspending.
Signed-off-by: Sylvain Rochet <[email protected]>
Reviewed-by: Andrzej Hajda <[email protected]>
Signed-off-by: Boris Brezillon <[email protected]>
|
|
The HLCDC IP provides a way to discard a specific area on the primary
plane (in case at least one of the overlay is activated and alpha
blending is disabled).
Doing this will reduce the amount of data to transfer from the main
memory to the Display Controller, and thus alleviate the load on the
memory bus (since this link is quite limited on such hardware,
this kind of optimization is really important).
Signed-off-by: Boris Brezillon <[email protected]>
Acked-by: Daniel Vetter <[email protected]>
|
|
Convert the HLCDC driver to atomic mode-setting.
Signed-off-by: Boris Brezillon <[email protected]>
Tested-by: Sylvain Rochet <[email protected]>
Acked-by: Daniel Vetter <[email protected]>
|
|
The atmel-hlcdc driver selects DRM_GEM_CMA_HELPER which makes use of
symbols only available when HAVE_DMA_ATTRS is selected.
Add a dependency on the ARM architecture which select this option.
Signed-off-by: Boris Brezillon <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
|
|
The Atmel HLCDC (HLCD Controller) IP available on some Atmel SoCs (i.e.
at91sam9n12, at91sam9x5 family or sama5d3 family) provides a display
controller device.
This display controller supports at least one primary plane and might
provide several overlays and an hardware cursor depending on the IP
version.
At the moment, this driver only implements an RGB connector to interface
with LCD panels, but support for other kind of external devices might be
added later.
Signed-off-by: Boris Brezillon <[email protected]>
Reviewed-by: Rob Clark <[email protected]>
Tested-by: Anthony Harivel <[email protected]>
Tested-by: Ludovic Desroches <[email protected]>
Acked-by: Nicolas Ferre <[email protected]>
|