All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/7] drm: Add support for tiny LCD displays
@ 2017-01-31 16:03 ` Noralf Trønnes
  0 siblings, 0 replies; 87+ messages in thread
From: Noralf Trønnes @ 2017-01-31 16:03 UTC (permalink / raw)
  To: dri-devel, devicetree
  Cc: robh, thomas.petazzoni, linux-kernel, Noralf Trønnes

drm: Add support for tiny LCD displays

This is an attempt at providing a DRM version of drivers/staging/fbtft.

The tinydrm library provides a very simplified view of DRM in particular
for tiny displays that has onboard video memory and is connected through
a slow bus like SPI/I2C.

The main change this time is adding 'rotation' as a common display
Device Tree property.


Noralf.

Changes since version 2:
- Remove fbdev after drm unregister, not before.
- Added Documentation/devicetree/bindings/display/display.txt

Changes since version 1:
- Add tinydrm.rst
- Set tdev->fbdev_cma=NULL on unregister (lastclose is called after that).
- Remove some DRM_DEBUG*()
- Write-combined memory has uncached reads, so speed up by copying/buffering
  one pixel line before conversion.

Changes since RFC v2:
- Rebased on new core helpers
- Don't use drm_panel
- Flush when the framebuffer is changed on the plane
- Add devm_tinydrm_init()
- Fix PRIME support, set vaddr
- Use atomic helpers in suspend/resume
- Add a tinydrm_connector with one display mode
- Set mode_config.preferred_depth and use it for fbdev
- Subclass tinydrm_device in drivers instead of bloating the structure
- The PiTFT display uses a MI0283QT panel, write driver for that instead.
- Drop homegrown lcdreg module, it ended up as a collection of special
  cases.
- Add more documentation

Changes since RFC v1:
- Add fb_deferred_io support to drm_fb_helper and drm_fb_cma_helper,
  and use drm_fb_cma_helper instead.
- Move display pipeline code to drm_simple_kms_helper.
- Don't use (struct drm_driver *)->load().
- Make tinydrm more like a library, exporting the internals.
- Move the struct drm_driver definition from the tinydrm module to the
  driver using a helper macro: TINYDRM_DRM_DRIVER.
- Remove dirtyfb() async code.
- Added support for partial display updates.


Noralf Trønnes (7):
  drm: Add DRM support for tiny LCD displays
  drm/tinydrm: Add helper functions
  drm/tinydrm: Add MIPI DBI support
  of: Add vendor prefix for Multi-Inno
  dt-bindings: display: Add common rotation property
  dt-bindings: Add Multi-Inno MI0283QT binding
  drm/tinydrm: Add support for Multi-Inno MI0283QT display

 .../devicetree/bindings/display/display.txt        |    4 +
 .../bindings/display/multi-inno,mi0283qt.txt       |   27 +
 .../devicetree/bindings/vendor-prefixes.txt        |    1 +
 Documentation/gpu/index.rst                        |    1 +
 Documentation/gpu/tinydrm.rst                      |   42 +
 MAINTAINERS                                        |    6 +
 drivers/gpu/drm/Kconfig                            |    2 +
 drivers/gpu/drm/Makefile                           |    1 +
 drivers/gpu/drm/tinydrm/Kconfig                    |   19 +
 drivers/gpu/drm/tinydrm/Makefile                   |    7 +
 drivers/gpu/drm/tinydrm/core/Makefile              |    3 +
 drivers/gpu/drm/tinydrm/core/tinydrm-core.c        |  377 ++++++++
 drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c     |  462 +++++++++
 drivers/gpu/drm/tinydrm/core/tinydrm-pipe.c        |  234 +++++
 drivers/gpu/drm/tinydrm/mi0283qt.c                 |  279 ++++++
 drivers/gpu/drm/tinydrm/mipi-dbi.c                 | 1005 ++++++++++++++++++++
 include/drm/tinydrm/ili9341.h                      |   54 ++
 include/drm/tinydrm/mipi-dbi.h                     |  107 +++
 include/drm/tinydrm/tinydrm-helpers.h              |  100 ++
 include/drm/tinydrm/tinydrm.h                      |  115 +++
 20 files changed, 2846 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/display.txt
 create mode 100644 Documentation/devicetree/bindings/display/multi-inno,mi0283qt.txt
 create mode 100644 Documentation/gpu/tinydrm.rst
 create mode 100644 drivers/gpu/drm/tinydrm/Kconfig
 create mode 100644 drivers/gpu/drm/tinydrm/Makefile
 create mode 100644 drivers/gpu/drm/tinydrm/core/Makefile
 create mode 100644 drivers/gpu/drm/tinydrm/core/tinydrm-core.c
 create mode 100644 drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c
 create mode 100644 drivers/gpu/drm/tinydrm/core/tinydrm-pipe.c
 create mode 100644 drivers/gpu/drm/tinydrm/mi0283qt.c
 create mode 100644 drivers/gpu/drm/tinydrm/mipi-dbi.c
 create mode 100644 include/drm/tinydrm/ili9341.h
 create mode 100644 include/drm/tinydrm/mipi-dbi.h
 create mode 100644 include/drm/tinydrm/tinydrm-helpers.h
 create mode 100644 include/drm/tinydrm/tinydrm.h

--
2.10.2

^ permalink raw reply	[flat|nested] 87+ messages in thread

end of thread, other threads:[~2017-02-07 13:24 UTC | newest]

Thread overview: 87+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-31 16:03 [PATCH v3 0/7] drm: Add support for tiny LCD displays Noralf Trønnes
2017-01-31 16:03 ` Noralf Trønnes
2017-01-31 16:03 ` [PATCH v3 1/7] drm: Add DRM " Noralf Trønnes
2017-01-31 16:03   ` Noralf Trønnes
2017-01-31 16:23   ` Daniel Vetter
2017-01-31 18:01     ` Noralf Trønnes
2017-01-31 18:01       ` Noralf Trønnes
2017-01-31 20:10       ` Daniel Vetter
2017-01-31 20:10         ` Daniel Vetter
2017-02-06  9:17   ` Thierry Reding
2017-02-06  9:17     ` Thierry Reding
2017-02-06 19:23     ` Noralf Trønnes
2017-02-06 19:23       ` Noralf Trønnes
2017-02-07  6:58       ` Daniel Vetter
2017-02-07  6:58         ` Daniel Vetter
2017-02-07 11:48         ` Thierry Reding
2017-02-07 11:48           ` Thierry Reding
2017-02-06 10:12   ` Jani Nikula
2017-02-06 10:12     ` Jani Nikula
2017-01-31 16:03 ` [PATCH v3 2/7] drm/tinydrm: Add helper functions Noralf Trønnes
2017-01-31 16:03   ` Noralf Trønnes
2017-02-06  8:56   ` Thierry Reding
2017-02-06  8:56     ` Thierry Reding
2017-02-06  9:09     ` Daniel Vetter
2017-02-06  9:09       ` Daniel Vetter
2017-02-06  9:35       ` Thierry Reding
2017-02-06  9:35         ` Thierry Reding
2017-02-06 10:07         ` Daniel Vetter
2017-02-06 11:08           ` Thierry Reding
2017-02-06 11:08             ` Thierry Reding
2017-02-06 15:53             ` Daniel Vetter
2017-02-06 15:53               ` Daniel Vetter
2017-02-06 22:11               ` Noralf Trønnes
2017-02-06 22:11                 ` Noralf Trønnes
2017-02-07 11:38                 ` Thierry Reding
2017-02-07 11:38                   ` Thierry Reding
2017-02-06 22:28               ` Dave Airlie
2017-02-06 22:28                 ` Dave Airlie
2017-02-07  7:00                 ` Daniel Vetter
2017-02-07  7:00                   ` Daniel Vetter
2017-02-07 11:11                 ` Thierry Reding
2017-02-07 11:11                   ` Thierry Reding
2017-02-07 11:21                   ` Daniel Vetter
2017-02-07 11:21                     ` Daniel Vetter
2017-02-07 11:44                     ` Thierry Reding
2017-02-07 11:44                       ` Thierry Reding
2017-02-07 13:23                       ` Daniel Vetter
2017-02-07 13:23                         ` Daniel Vetter
2017-02-06 22:55             ` Rob Herring
2017-02-06 22:55               ` Rob Herring
2017-02-07  7:08               ` Daniel Vetter
2017-02-07  7:08                 ` Daniel Vetter
2017-02-06 10:10   ` Jani Nikula
2017-01-31 16:03 ` [PATCH v3 3/7] drm/tinydrm: Add MIPI DBI support Noralf Trønnes
2017-01-31 16:03   ` Noralf Trønnes
2017-02-06  8:48   ` Thierry Reding
2017-02-06  8:48     ` Thierry Reding
2017-02-06 11:30     ` Jani Nikula
2017-02-06 11:30       ` Jani Nikula
2017-02-06 11:53       ` Thierry Reding
2017-02-06 11:53         ` Thierry Reding
2017-02-06 12:34         ` Andrzej Hajda
2017-02-06 12:34           ` Andrzej Hajda
2017-02-06 15:45           ` Noralf Trønnes
2017-02-06 15:45             ` Noralf Trønnes
2017-02-06 11:25   ` Jani Nikula
2017-02-06 11:25     ` Jani Nikula
2017-01-31 16:03 ` [PATCH v3 4/7] of: Add vendor prefix for Multi-Inno Noralf Trønnes
2017-01-31 16:03   ` Noralf Trønnes
2017-01-31 16:03 ` [PATCH v3 5/7] dt-bindings: display: Add common rotation property Noralf Trønnes
2017-01-31 16:03   ` Noralf Trønnes
2017-02-01 17:41   ` Rob Herring
2017-02-01 17:41     ` Rob Herring
2017-02-03 12:16     ` Noralf Trønnes
2017-02-03 12:16       ` Noralf Trønnes
2017-02-06  7:10       ` Thierry Reding
2017-02-06  7:10         ` Thierry Reding
2017-01-31 16:03 ` [PATCH v3 6/7] dt-bindings: Add Multi-Inno MI0283QT binding Noralf Trønnes
2017-01-31 16:03   ` Noralf Trønnes
2017-02-01 17:42   ` Rob Herring
2017-02-01 17:42     ` Rob Herring
2017-01-31 16:03 ` [PATCH v3 7/7] drm/tinydrm: Add support for Multi-Inno MI0283QT display Noralf Trønnes
2017-01-31 16:03   ` Noralf Trønnes
2017-02-06  8:25   ` Thierry Reding
2017-02-06  8:25     ` Thierry Reding
2017-02-07 12:00 ` [PATCH v3 0/7] drm: Add support for tiny LCD displays Thierry Reding
2017-02-07 12:00   ` Thierry Reding

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.