s (Thomas Hellstrom)
- Add a GEM attached vtable
v3:
- Grammar (Sam Ravnborg)
- s/drm_gem_shmem_put_pages_unlocked/drm_gem_shmem_put_pages_locked/
(Sam Ravnborg)
- Add debug output in error path (Sam Ravnborg)
Signed-off-by: Noralf Trønnes
---
Documentation/gpu/drm-kms-helpers.rst | 12 +
dr
This move makes tinydrm useful for more drivers. tinydrm doesn't need
continuous memory, but at the time it was convenient to use the CMA
library. The spi core can do dma on is_vmalloc() addresses making this
possible.
Cc: David Lechner
Signed-off-by: Noralf Trønnes
Acked-by: David Lechner
re members because of possible alignment
issues - see: https://lkml.org/lkml/2017/11/21/384
#834: FILE: include/drm/drm_gem_shmem_helper.h:84:
+ bool pages_mark_dirty_on_put;
#841: FILE: include/drm/drm_gem_shmem_helper.h:91:
+ bool pages_mark_accessed_on_put;
Noralf Trønnes (5):
drm/dr
ing the fact that this the new default way of doing it
(Daniel Vetter)
Signed-off-by: Noralf Trønnes
Acked-by: Daniel Vetter
---
drivers/gpu/drm/drm_client.c | 12 ++--
drivers/gpu/drm/drm_gem.c| 109 ---
drivers/gpu/drm/drm_prime.c | 34 ++-
include/d
The majority of drivers use drm_gem_prime_export() and
drm_gem_prime_import() for these callbacks so let's make them the
default.
Signed-off-by: Noralf Trønnes
Acked-by: Daniel Vetter
---
Documentation/gpu/todo.rst | 7 +++
drivers/gpu/drm/drm_prime.c | 10 --
include/drm
Add a generic PRIME GEM mmap function.
Suggested-by: Daniel Vetter
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_prime.c | 37 +
include/drm/drm_prime.h | 1 +
2 files changed, 38 insertions(+)
diff --git a/drivers/gpu/drm/drm_prime.c b/drivers
Den 23.08.2018 09.37, skrev Daniel Vetter:
On Wed, Aug 22, 2018 at 11:21:11PM -0700, John Stultz wrote:
On Wed, Aug 22, 2018 at 10:51 PM, Daniel Vetter wrote:
On Thu, Aug 23, 2018 at 6:14 AM, John Stultz wrote:
On Mon, Aug 20, 2018 at 11:44 PM, John Stultz wrote:
Hey Noralf, all,
I've
Den 21.08.2018 17.41, skrev Daniel Vetter:
On Tue, Aug 21, 2018 at 04:59:46PM +0200, Noralf Trønnes wrote:
Den 21.08.2018 10.44, skrev Daniel Vetter:
On Mon, Aug 20, 2018 at 11:44:56PM -0700, John Stultz wrote:
On Tue, Jul 3, 2018 at 9:03 AM, Noralf Trønnes wrote:
This switches the CMA
Den 21.08.2018 10.44, skrev Daniel Vetter:
On Mon, Aug 20, 2018 at 11:44:56PM -0700, John Stultz wrote:
On Tue, Jul 3, 2018 at 9:03 AM, Noralf Trønnes wrote:
This switches the CMA helper drivers that use its fbdev emulation over
to the generic fbdev emulation. It's the first phase of using
Den 21.08.2018 08.44, skrev John Stultz:
On Tue, Jul 3, 2018 at 9:03 AM, Noralf Trønnes wrote:
This switches the CMA helper drivers that use its fbdev emulation over
to the generic fbdev emulation. It's the first phase of using generic
fbdev. A later phase will use DRM client callbacks
Den 03.07.2018 18.03, skrev Noralf Trønnes:
This patchset adds generic fbdev emulation for drivers that supports GEM
based dumb buffers which support .gem_prime_vmap and gem_prime_mmap. An
API is begun to support in-kernel clients in general.
I've squashed the client patches to ease review
drm_fb_cma_fbdev_init_with_funcs().
Cc: Laurent Pinchart
Signed-off-by: Noralf Trønnes
Acked-by: Daniel Vetter
---
drivers/gpu/drm/drm_fb_cma_helper.c | 360 +---
include/drm/drm_fb_cma_helper.h | 3 -
2 files changed, 42 insertions(+), 321 deletions(-)
diff
This adds a drm_fbdev_generic_setup() function that sets up generic
fbdev emulation with client callbacks for restore, hotplug and
unregister.
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
drivers/gpu/drm/drm_fb_helper.c | 117
include
Remove drm_fb_cma_fbdev_init_with_funcs(), its only user tinydrm has
moved to drm_fbdev_generic_setup().
Cc: Laurent Pinchart
Signed-off-by: Noralf Trønnes
Reviewed-by: David Lechner
---
drivers/gpu/drm/drm_fb_cma_helper.c | 21 -
include/drm/drm_fb_cma_helper.h | 3
This is the first step in getting generic fbdev emulation.
A drm_fb_helper_funcs.fb_probe function is added which uses the
DRM client API to get a framebuffer backed by a dumb buffer.
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
drivers/gpu/drm/drm_fb_helper.c | 199
Print the names of the internal clients currently attached.
Reviewed-by: Daniel Vetter
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_client.c | 28
drivers/gpu/drm/drm_debugfs.c | 7 +++
include/drm/drm_client.h | 3 +++
3 files changed, 38
Make full use of the generic fbdev client.
Cc: David Lechner
Signed-off-by: Noralf Trønnes
Reviewed-by: David Lechner
---
drivers/gpu/drm/tinydrm/core/tinydrm-core.c | 3 +--
drivers/gpu/drm/tinydrm/ili9225.c | 1 -
drivers/gpu/drm/tinydrm/ili9341.c | 1 -
drivers/gpu/drm
rst 3 patches to drm-misc-next
- Drop client reference counting and only allow the driver to release
clients.
Noralf Trønnes (8):
drm: Begin an API for in-kernel clients
drm/fb-helper: Add generic fbdev emulation .fb_probe function
drm/pl111: Set .gem_prime_vmap and .gem_prime_mmap
drm/
These are needed for pl111 to use the generic fbdev emulation.
Cc: Eric Anholt
Signed-off-by: Noralf Trønnes
Reviewed-by: Eric Anholt
---
drivers/gpu/drm/pl111/pl111_drv.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/pl111/pl111_drv.c
b/drivers/gpu/drm/pl111
if it wants to support the client API which it probably
will when we have a bootsplash client.
Suggested-by: Daniel Vetter
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
Documentation/gpu/drm-client.rst | 12 ++
Documentation/gpu/index.rst| 1 +
drivers/gpu/drm/Makefile
Den 03.07.2018 09.46, skrev Daniel Vetter:
On Mon, Jul 02, 2018 at 03:54:29PM +0200, Noralf Trønnes wrote:
Add client callbacks and hook them up.
Add a list of clients per drm_device.
Signed-off-by: Noralf Trønnes
btw for reviewing it'd be simpler if you merge the 2 patches that add
Make full use of the generic fbdev client.
Cc: David Lechner
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/tinydrm/core/tinydrm-core.c | 3 +--
drivers/gpu/drm/tinydrm/ili9225.c | 1 -
drivers/gpu/drm/tinydrm/ili9341.c | 1 -
drivers/gpu/drm/tinydrm/mi0283qt.c
This adds a drm_fbdev_generic_setup() function that sets up generic
fbdev emulation with client callbacks for restore, hotplug and
unregister.
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_fb_helper.c | 117
include/drm/drm_fb_helper.h | 7
drm_fb_cma_fbdev_init_with_funcs().
Cc: Laurent Pinchart
Signed-off-by: Noralf Trønnes
Acked-by: Daniel Vetter
---
drivers/gpu/drm/drm_fb_cma_helper.c | 360 +---
include/drm/drm_fb_cma_helper.h | 3 -
2 files changed, 42 insertions(+), 321 deletions(-)
diff
Print the names of the internal clients currently attached.
Reviewed-by: Daniel Vetter
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_client.c | 28
drivers/gpu/drm/drm_debugfs.c | 7 +++
include/drm/drm_client.h | 3 +++
3 files changed, 38
Remove drm_fb_cma_fbdev_init_with_funcs(), its only user tinydrm has
moved to drm_fbdev_generic_setup().
Cc: Laurent Pinchart
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_fb_cma_helper.c | 21 -
include/drm/drm_fb_cma_helper.h | 3 ---
2 files changed, 24
Add client callbacks and hook them up.
Add a list of clients per drm_device.
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_client.c| 92 -
drivers/gpu/drm/drm_drv.c | 7 +++
drivers/gpu/drm/drm_fb_cma_helper.c | 2 +-
drivers/gpu
:
- Applied first 3 patches to drm-misc-next
- Drop client reference counting and only allow the driver to release
clients.
Noralf Trønnes (9):
drm: Begin an API for in-kernel clients
drm/fb-helper: Add generic fbdev emulation .fb_probe function
drm/pl111: Set .gem_prime_vmap and .gem_prime_mmap
This is the first step in getting generic fbdev emulation.
A drm_fb_helper_funcs.fb_probe function is added which uses the
DRM client API to get a framebuffer backed by a dumb buffer.
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
drivers/gpu/drm/drm_fb_helper.c | 192
These are needed for pl111 to use the generic fbdev emulation.
Cc: Eric Anholt
Signed-off-by: Noralf Trønnes
Reviewed-by: Eric Anholt
---
drivers/gpu/drm/pl111/pl111_drv.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/pl111/pl111_drv.c
b/drivers/gpu/drm/pl111
if it wants to support the client API which it probably
will when we have a bootsplash client.
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
Documentation/gpu/drm-client.rst | 12 ++
Documentation/gpu/index.rst | 1 +
drivers/gpu/drm/Makefile | 2 +-
drivers/gpu/drm
Remove drm_fb_cma_fbdev_init_with_funcs(), its only user tinydrm has
moved to drm_fbdev_generic_setup().
Cc: Laurent Pinchart
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_fb_cma_helper.c | 21 -
include/drm/drm_fb_cma_helper.h | 3 ---
2 files changed, 24
Print the names of the internal clients currently attached.
Reviewed-by: Daniel Vetter
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_client.c | 28
drivers/gpu/drm/drm_debugfs.c | 7 +++
include/drm/drm_client.h | 3 +++
3 files changed, 38
Add client callbacks and hook them up.
Add a list of clients per drm_device.
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_client.c| 92 -
drivers/gpu/drm/drm_drv.c | 7 +++
drivers/gpu/drm/drm_fb_cma_helper.c | 2 +-
drivers/gpu
Make full use of the generic fbdev client.
Cc: David Lechner
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/tinydrm/core/tinydrm-core.c | 3 +--
drivers/gpu/drm/tinydrm/ili9225.c | 1 -
drivers/gpu/drm/tinydrm/mi0283qt.c | 1 -
drivers/gpu/drm/tinydrm/st7586.c
drm_fb_cma_fbdev_init_with_funcs().
Cc: Laurent Pinchart
Signed-off-by: Noralf Trønnes
Acked-by: Daniel Vetter
---
drivers/gpu/drm/drm_fb_cma_helper.c | 361 +---
include/drm/drm_fb_cma_helper.h | 3 -
2 files changed, 43 insertions(+), 321 deletions(-)
diff
This adds a drm_fbdev_generic_setup() function that sets up generic
fbdev emulation with client callbacks for restore, hotplug and
unregister.
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_fb_helper.c | 117
include/drm/drm_fb_helper.h | 7
if it wants to support the client API which it probably
will when we have a bootsplash client.
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
Documentation/gpu/drm-client.rst | 12 ++
Documentation/gpu/index.rst | 1 +
drivers/gpu/drm/Makefile | 2 +-
drivers/gpu/drm
This is the first step in getting generic fbdev emulation.
A drm_fb_helper_funcs.fb_probe function is added which uses the
DRM client API to get a framebuffer backed by a dumb buffer.
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
drivers/gpu/drm/drm_fb_helper.c | 192
the driver to remove a client.
Noralf.
Changes since version 2:
- Applied first 3 patches to drm-misc-next
- Drop client reference counting and only allow the driver to release
clients.
Noralf Trønnes (9):
drm: Begin an API for in-kernel clients
drm/fb-helper: Add generic fbdev emulation
These are needed for pl111 to use the generic fbdev emulation.
Cc: Eric Anholt
Signed-off-by: Noralf Trønnes
Reviewed-by: Eric Anholt
---
drivers/gpu/drm/pl111/pl111_drv.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/pl111/pl111_drv.c
b/drivers/gpu/drm/pl111
Den 21.06.2018 19.19, skrev Noralf Trønnes:
Den 21.06.2018 09.14, skrev Daniel Vetter:
On Wed, Jun 20, 2018 at 05:28:10PM +0200, Noralf Trønnes wrote:
Den 20.06.2018 15.52, skrev Noralf Trønnes:
Den 20.06.2018 11.34, skrev Daniel Vetter:
On Mon, Jun 18, 2018 at 04:17:27PM +0200, Noralf
Den 18.06.2018 16.17, skrev Noralf Trønnes:
This patchset adds generic fbdev emulation for drivers that supports GEM
based dumb buffers which support .gem_prime_vmap and gem_prime_mmap. An
API is begun to support in-kernel clients in general.
Notable changes since version 1:
- Rework client
Den 21.06.2018 09.14, skrev Daniel Vetter:
On Wed, Jun 20, 2018 at 05:28:10PM +0200, Noralf Trønnes wrote:
Den 20.06.2018 15.52, skrev Noralf Trønnes:
Den 20.06.2018 11.34, skrev Daniel Vetter:
On Mon, Jun 18, 2018 at 04:17:27PM +0200, Noralf Trønnes wrote:
This patchset adds generic fbdev
Den 20.06.2018 15.52, skrev Noralf Trønnes:
Den 20.06.2018 11.34, skrev Daniel Vetter:
On Mon, Jun 18, 2018 at 04:17:27PM +0200, Noralf Trønnes wrote:
This patchset adds generic fbdev emulation for drivers that supports
GEM
based dumb buffers which support .gem_prime_vmap and gem_prime_mmap
Den 20.06.2018 11.34, skrev Daniel Vetter:
On Mon, Jun 18, 2018 at 04:17:27PM +0200, Noralf Trønnes wrote:
This patchset adds generic fbdev emulation for drivers that supports GEM
based dumb buffers which support .gem_prime_vmap and gem_prime_mmap. An
API is begun to support in-kernel clients
Make full use of the generic fbdev client.
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/tinydrm/core/tinydrm-core.c | 3 +--
drivers/gpu/drm/tinydrm/ili9225.c | 1 -
drivers/gpu/drm/tinydrm/mi0283qt.c | 1 -
drivers/gpu/drm/tinydrm/st7586.c| 1 -
drivers/gpu
Remove drm_fb_cma_fbdev_init_with_funcs(), its only user tinydrm has
moved to drm_fbdev_generic_setup().
Cc: Laurent Pinchart
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_fb_cma_helper.c | 21 -
include/drm/drm_fb_cma_helper.h | 3 ---
2 files changed, 24
This adds a drm_fbdev_generic_setup() function that sets up generic
fbdev emulation with client callbacks for lastclose, hotplug and
remove/unregister.
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_fb_helper.c | 123 +++-
include/drm/drm_fb_helper.h
drm_fb_cma_fbdev_init_with_funcs().
Cc: Laurent Pinchart
Signed-off-by: Noralf Trønnes
Acked-by: Daniel Vetter
---
drivers/gpu/drm/drm_fb_cma_helper.c | 361 +---
include/drm/drm_fb_cma_helper.h | 3 -
2 files changed, 43 insertions(+), 321 deletions(-)
diff
These are needed for pl111 to use the generic fbdev emulation.
Cc: Eric Anholt
Signed-off-by: Noralf Trønnes
Reviewed-by: Eric Anholt
---
drivers/gpu/drm/pl111/pl111_drv.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/pl111/pl111_drv.c
b/drivers/gpu/drm/pl111
Print the names of the internal clients currently attached.
Signed-off-by: Noralf Trønnes
---
drivers/gpu/drm/drm_client.c | 28
drivers/gpu/drm/drm_debugfs.c | 7 +++
include/drm/drm_client.h | 2 ++
3 files changed, 37 insertions(+)
diff --git
Add client callbacks and hook them up.
Add a list of clients per drm_device.
Signed-off-by: Noralf Trønnes
---
Changes since version 1:
- Remove unused functions
- Change name drm_client_funcs.lastclose -> .restore
- Change name drm_client_funcs.remove -> .unregister
- Rework unregiste
if it wants to support the client API which it probably
will when we have a bootsplash client.
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
Changes since version 1:
- Make it possible to embed struct drm_client_dev and drop the private
pointer
- Use kref reference counting to control
nregister code
- tinydrm: Use drm_fbdev_generic_setup() and remove
drm_fb_cma_fbdev_init_with_funcs()
David Herrmann (1):
drm: provide management functions for drm_file
Noralf Trønnes (11):
drm/file: Don't set master on in-kernel clients
drm: Make ioctls available for in-kernel clients
d
Make ioctl wrappers for functions that will be used by the in-kernel API.
The following functions are touched:
- drm_mode_create_dumb_ioctl()
- drm_mode_destroy_dumb_ioctl()
- drm_mode_addfb()
- drm_mode_rmfb()
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
drivers/gpu/drm
(not that I
am aware of any such plans), and more importantly from in-kernel use where
no real file is available.
Signed-off-by: David Herrmann
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
drivers/gpu/drm/drm_file.c | 305 +++--
drivers
It only makes sense for userspace clients.
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
drivers/gpu/drm/drm_file.c | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/drm_file.c b/drivers/gpu/drm/drm_file.c
index d4588d33f91c
. This hack will be removed when
tinydrm moves to vmalloc buffers.
Signed-off-by: Noralf Trønnes
Reviewed-by: Daniel Vetter
---
Changes since version 1:
- Embed drm_client at the beginning of drm_fb_helper to avoid a fragile
transitional kfree hack in drm_client_release()
- Set owner
Den 24.05.2018 10.42, skrev Daniel Vetter:
On Wed, May 23, 2018 at 04:34:06PM +0200, Noralf Trønnes wrote:
This the beginning of an API for in-kernel clients.
First out is a way to get a framebuffer backed by a dumb buffer.
Only GEM drivers are supported.
The original idea of using
Den 24.05.2018 11.16, skrev Daniel Vetter:
On Wed, May 23, 2018 at 04:34:07PM +0200, Noralf Trønnes wrote:
This is the first step in getting generic fbdev emulation.
A drm_fb_helper_funcs.fb_probe function is added which uses the
DRM client API to get a framebuffer backed by a dumb buffer
drm_fb_cma_fbdev_init_with_funcs().
Cc: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_fb_cma_helper.c | 365 +---
include/drm/drm_fb_cma_helper.h | 3 -
2 files changed, 4
Add client callbacks and hook them up.
Add a list of clients per drm_device.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_client.c| 246 +++-
drivers/gpu/drm/drm_debugfs.c | 7 +
drivers/gpu/drm/drm
These are needed for pl111 to use the generic fbdev emulation.
Cc: Eric Anholt <e...@anholt.net>
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/pl111/pl111_drv.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/pl111/pl111_drv.c
b/dri
It only makes sense for userspace clients.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
Reviewed-by: Daniel Vetter <daniel.vet...@ffwll.ch>
---
drivers/gpu/drm/drm_file.c | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/
):
drm: provide management functions for drm_file
Noralf Trønnes (8):
drm/file: Don't set master on in-kernel clients
drm: Make ioctls available for in-kernel clients
drm: Begin an API for in-kernel clients
drm/fb-helper: Add generic fbdev emulation .fb_probe function
drm/pl111: Set
. This hack will be removed when
tinydrm moves to vmalloc buffers.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_fb_helper.c | 164
include/drm/drm_fb_helper.h | 26 +++
2 files changed, 190 insertions(+)
diff --git a/d
This adds a drm_fbdev_generic_setup() function that sets up generic
fbdev emulation with client callbacks for lastclose, hotplug and
remove/unregister.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_fb_helper.c | 123
i
if it wants to support the client API which it probably
will when we have a bootsplash client.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
Documentation/gpu/drm-client.rst | 12 ++
Documentation/gpu/index.rst | 1 +
drivers/gpu/drm/Makefile | 2 +-
drivers/gpu/drm/drm_cl
e fops implementations and APIs (not that I
am aware of any such plans), and more importantly from in-kernel use where
no real file is available.
Signed-off-by: David Herrmann <dh.herrm...@gmail.com>
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
Reviewed-by: Daniel Vetter <d
Make ioctl wrappers for functions that will be used by the in-kernel API.
The following functions are touched:
- drm_mode_create_dumb_ioctl()
- drm_mode_destroy_dumb_ioctl()
- drm_mode_addfb()
- drm_mode_rmfb()
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/g
Den 16.04.2018 10.21, skrev Daniel Vetter:
On Sat, Apr 14, 2018 at 01:52:53PM +0200, Noralf Trønnes wrote:
This patchset explores the possibility of having generic fbdev emulation
in DRM for drivers that supports dumb buffers which they can export. An
API is added to support in-kernel clients
Den 16.04.2018 10.46, skrev Daniel Vetter:
On Sat, Apr 14, 2018 at 01:53:14PM +0200, Noralf Trønnes wrote:
These helpers keep track of fbdev users and drm_driver.last_close will
only restore fbdev when actually in use. Additionally the display is
turned off when the last user is closing. fbcon
Den 16.04.2018 10.27, skrev Daniel Vetter:
On Sat, Apr 14, 2018 at 01:53:12PM +0200, Noralf Trønnes wrote:
The modesetting code is already present, this adds the rest of the API.
Mentioning the TODO in the commit message would be good. Helps readers
like me who have an attention span measured
This adds generic fbdev emulation for drivers that supports
dumb buffers which they can export.
All the driver has to do is call drm_fbdev_generic_setup().
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_fb_helper.c
(fb_ops.owner) instead of the driver module. Fix that by ensuring
that the driver module is pinned.
The functions are not added to the DRM_FB_HELPER_DEFAULT_OPS() macro,
because some of its users do set fb_open/release themselves.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drive
A hack to test the client API.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/Makefile | 1 +
drivers/gpu/drm/client/Kconfig | 5 +
drivers/gpu/drm/client/Makefile| 3 +
drivers/gpu/drm/client/drm_vtcon.c
A hack to test the client API.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/Kconfig | 2 +
drivers/gpu/drm/Makefile| 1 +
drivers/gpu/drm/client/Kconfig | 9 ++
drivers/gpu/drm/client/drm_bootsplash.c
Add a notifier that fires when a new DRM device is registered.
This can be used by the bootsplash client to connect to all devices.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_drv.c | 32
include/drm/drm_drv.h | 4
2
on out of intel_fbdev.c since it's not
fbdev specific anymore.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_fb_helper.c| 19 +--
drivers/gpu/drm/i915/i915_drv.c| 1 +
drivers/gpu/drm/i915/intel_drv.h | 11
drivers/gpu/drm/i915/intel_f
Avoid pinning the module when exporting a GEM object as a dmabuf. This
makes it possible to unload drivers that has in-kernel clients using it.
The client is removed on drm_dev_unregister() so no need to pin the driver.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/g
The stage is now set for a clean removal of drm_fb_helper_crtc.
struct drm_client_display is doing its job now.
Also remove the drm_fb_helper_funcs->initial_config which has been
superseded by drm_driver->initial_client_display.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
Move them over from drm_fb_helper since they are connector functions.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_connector.c| 94 ++
drivers/gpu/drm/drm_fb_helper.c| 75 ++
drivers/g
Add functions to deal with the registred connectors as an array:
- drm_connector_get_all()
- drm_connector_put_all()
And to get the enabled status of those connectors:
drm_connector_get_enabled_status()
This is prep work to remove struct drm_fb_helper_connector.
Signed-off-by: Noralf Trønnes
No need to maintain a list of registered connectors. Just use the
connector iterator.
TODO: Remove:
- drm_fb_helper_add_one_connector()
- drm_fb_helper_single_add_all_connectors()
- drm_fb_helper_remove_one_connector()
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/g
Call the function drm_client_find_display().
No functional change apart from making width/height arguments optional.
Some function name/signature changes and whitespace adjustments.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_client.c
the debug name.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_crtc_internal.h | 18 ++---
drivers/gpu/drm/drm_dumb_buffers.c | 33
drivers/gpu/drm/drm_framebuffer.c | 50 -
drivers/g
Give clients easy access to the display modes.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_client.c | 159 +--
include/drm/drm_client.h | 25 +++
2 files changed, 148 insertions(+), 36 deletions(-)
diff
Prepare for moving drm_fb_helper modesetting code to drm_client.
drm_client will be linked to drm.ko, so move
__drm_atomic_helper_disable_plane() and __drm_atomic_helper_set_config()
out of drm_kms_helper.ko.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_at
Prepare to move the modeset committing code to drm_client.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_fb_helper.c | 161
include/drm/drm_fb_helper.h | 8 ++
2 files changed, 89 insertions(+), 80 deletions(-)
This moves the committing part of the modesetting code to drm_client.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_client.c| 242
drivers/gpu/drm/drm_fb_helper.c | 216 +--
inclu
The modesetting code is already present, this adds the rest of the API.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_client.c | 573 +
drivers/gpu/drm/drm_debugfs.c | 7 +
drivers/gpu/drm/drm_drv.c
If there's a DRM master, return -EBUSY.
Block userspace from becoming master by taking the master lock while
the client is setting the mode.
Suggested-by: Daniel Vetter <daniel.vet...@ffwll.ch>
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_auth
This the beginning of an API for in-kernel clients.
First out is a display representation that will be used by drm_fb_helper
in order to move out its mode setting code.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/Makefile | 2 +-
drivers/gpu/drm/drm_cl
For each enabled crtc the functions sets dpms on all registered connectors.
Limit this to only doing it once and on the connectors actually in use.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_fb_helper.c | 11 +--
1 file changed, 5 insertions
Getting rotation info is cheap so we can do it on demand.
This is done in preparation for the removal of struct drm_fb_helper_crtc.
Cc: Hans de Goede <hdego...@redhat.com>
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_fb_he
lper_funcs->mode_set_base_atomic
- Documentation/dev-tools/kgdb.rst
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
---
drivers/gpu/drm/drm_fb_helper.c | 82 -
1 file changed, 82 deletions(-)
diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/dr
buggy patch: (Chris Wilson)
drm/prime: Clear drm_gem_object->dma_buf on release
- Defer buffer creation until fb_open.
David Herrmann (1):
drm: provide management functions for drm_file
Noralf Trønnes (24):
drm/file: Don't set master on in-kernel clients
drm/fb-helper: No need to ca
It only makes sense for userspace clients.
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
Reviewed-by: Daniel Vetter <daniel.vet...@ffwll.ch>
---
drivers/gpu/drm/drm_file.c | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/
e fops implementations and APIs (not that I
am aware of any such plans), and more importantly from in-kernel use where
no real file is available.
Signed-off-by: David Herrmann <dh.herrm...@gmail.com>
Signed-off-by: Noralf Trønnes <nor...@tronnes.org>
Reviewed-by: Daniel Vetter <d
301 - 400 of 563 matches
Mail list logo