From: Sam Ravnborg <sam@ravnborg.org>
To: "Noralf Trønnes" <noralf@tronnes.org>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org
Cc: Sam Ravnborg <sam@ravnborg.org>
Subject: [RFC PATCH v1 0/5] Add pardata bus + tinydrm driver
Date: Thu, 2 Aug 2018 21:39:09 +0200 [thread overview]
Message-ID: <20180802193909.GA11443@ravnborg.org> (raw)
This is an RFC - to get some responses on the overall design.
The code builds but has not yet been tested on any HW.
Before investing more time into this I would like some feedback
if this is the right way forward or a different design should
be pursued.
The problem to solve is that I have a propriatary ARM based board
with a display that is connected using a parallel bus.
The display is capable of showing graphics
so it is more advanced than what is found in auxdisplay/
I know there are others using a display connected
usign a parallel data bus, so this is not a unique problem
for my board alone. But I do not expect many users as
any modern design likely uses SPI or similar.
The old (proprietary) approach was to implement a char driver
and then let some 3rd party lib use the char driver to write to the
display.
The goal is to move to a more modern world where I expect
to have a simple Qt based program running that can
be used for a few simple things.
(I do not expect any high performance and do not need it).
Implementation:
A pardata bus is implemented.
It uses a platform_driver to hook into the DT.
When probed the pardatabus driver creates pardata devices
for all child nodes in the tree.
Within tinydrm the pardata support is used to implement
a driver for the display I have (Winstar wg160160).
A library module is used to implement the more basic
things allowing us to have a more simple driver,
and thus making it simpler to add new drivers.
The implmentation uses array support in gpiolib
to try to have some performance on screen updates.
TODO:
- Test on HW
- Add locking so there can be more than one user on the bus
- Improve pardata.rst documentation
- Add support for a sparkfun parallel data display
(To verify that the library is generic)
- I may add a class if I see the need
- Likewise I may add sysfs attributes if there is a need for it
Any comments appreciated!
Sam
Sam Ravnborg (5):
dt-bindings: add parallel data bus (pardata)
pardata: new bus for parallel data access
tinydrm: add support for parallel data displays
dt-bindings: add winstar,wg160160 display bindings
tinydrm: add winstar wg160160 driver
.../bindings/display/winstar,wg160160.txt | 53 +++
.../bindings/pardata/parallel-data-bus.txt | 60 +++
Documentation/driver-api/index.rst | 1 +
Documentation/driver-api/pardata.rst | 60 +++
MAINTAINERS | 14 +
drivers/Kconfig | 2 +
drivers/Makefile | 1 +
drivers/gpu/drm/tinydrm/Kconfig | 13 +
drivers/gpu/drm/tinydrm/Makefile | 2 +
drivers/gpu/drm/tinydrm/pardata-dbi.c | 417 +++++++++++++++++++++
drivers/gpu/drm/tinydrm/wg160160.c | 298 +++++++++++++++
drivers/pardata/Kconfig | 17 +
drivers/pardata/Makefile | 5 +
drivers/pardata/pardata.c | 282 ++++++++++++++
include/drm/tinydrm/pardata-dbi.h | 257 +++++++++++++
include/linux/pardata.h | 138 +++++++
16 files changed, 1620 insertions(+)
next reply other threads:[~2018-08-02 19:39 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-08-02 19:39 Sam Ravnborg [this message]
2018-08-02 19:45 ` [PATCH v1 1/5] dt-bindings: add parallel data bus (pardata) Sam Ravnborg
2018-08-02 19:45 ` [PATCH v1 2/5] pardata: new bus for parallel data access Sam Ravnborg
2018-08-07 16:40 ` Noralf Trønnes
2018-08-08 8:24 ` Sam Ravnborg
2018-08-08 16:22 ` Noralf Trønnes
2020-01-20 10:10 ` Geert Uytterhoeven
2020-01-20 18:48 ` Sam Ravnborg
2020-01-20 19:12 ` Geert Uytterhoeven
2020-01-20 19:23 ` Sam Ravnborg
2018-08-02 19:45 ` [PATCH v1 3/5] tinydrm: add support for parallel data displays Sam Ravnborg
2018-08-02 19:45 ` [PATCH v1 4/5] dt-bindings: add winstar,wg160160 display bindings Sam Ravnborg
2018-08-02 19:45 ` [PATCH v1 5/5] tinydrm: add winstar wg160160 driver Sam Ravnborg
2018-08-06 9:15 ` Dan Carpenter
2018-08-06 12:07 ` Sam Ravnborg
2018-08-07 17:35 ` Noralf Trønnes
2018-08-08 8:32 ` Sam Ravnborg
2018-08-08 16:31 ` Noralf Trønnes
2018-08-02 19:46 ` [RFC PATCH v1 0/5] Add pardata bus + tinydrm driver Miguel Ojeda
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180802193909.GA11443@ravnborg.org \
--to=sam@ravnborg.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=noralf@tronnes.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox