From: "Heiko Stübner" <heiko@sntech.de>
To: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: linux-fbdev@vger.kernel.org, linux-kernel@vger.kernel.org,
dri-devel@lists.freedesktop.org, linaro-dev@lists.linaro.org,
"Clark, Rob" <rob@ti.com>, Archit Taneja <archit@ti.com>,
Nishant Kamat <nskamat@ti.com>
Subject: Re: Proposal for a low-level Linux display framework
Date: Wed, 21 Sep 2011 13:26:33 +0000 [thread overview]
Message-ID: <201109211526.33687.heiko@sntech.de> (raw)
In-Reply-To: <1316088425.11294.78.camel@lappyti>
Hi,
Am Donnerstag, 15. September 2011, 14:07:05 schrieb Tomi Valkeinen:
> Now, I'm quite sure the above framework could work quite well with any
> OMAP like hardware, with unified memory (i.e. the video buffers are in
> SDRAM) and 3D chips and similar components are separate. But what I'm
> not sure is how desktop world's gfx cards change things. Most probably
> all the above components can be found from there also in some form, but
> are there some interdependencies between 3D/buffer management/something
> else and the video output side?
If I have read your proposal right, it could also help in better supporting
epaper-displays.
The current drivers each (re-)implement the deferredIo logic needed to drive
such systems (catching and combining updates to the framebuffer) and combine
this with the actual display driver which issues specific commands to the
display hardware. Also a board-specific driver is needed to implement the
actual transport to the display which seems be done via this i80 command
protocol over GPIOs or the LCD controllers of SoCs.
If one were to split this it could be realised like
---------------- --------------- -------------
| deferredIOFb | - | DisplayCtrl | - | Transport |
---------------- --------------- -------------
An interesting tidbit is that on the ereaders I'm working on the LCD
controller should be able to do some sort of pseudo DMA operation.
The normal way to transmit data to epaper displays is:
- issue update command with dimension of the regions to update
- read relevant pixeldata from fb and write it to the i80 in a loop
- issue stop-update command
On the S3C2416 it could go like:
- issue update command
- describe to the lcd controller the source memory region
- let the lcd controller transmit exactly one frame
- issue stop update command
So the transport would need to get the memory addresses of the region to
update from the framebuffer driver.
Also this system could possibly use some of the drawing routines from the
S3C2416 SoC.
Essentially needed would be a s3c-fb with deferredio-addon and the lcd
controller separated from it. I'm still not sure how this all could fit
together but I would guess separating framebuffer and display control would
help.
Heiko
prev parent reply other threads:[~2011-09-21 13:26 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-15 12:07 Proposal for a low-level Linux display framework Tomi Valkeinen
2011-09-15 14:59 ` Keith Packard
2011-09-15 15:29 ` Tomi Valkeinen
2011-09-15 15:50 ` Keith Packard
2011-09-15 17:05 ` Alan Cox
2011-09-17 21:36 ` Laurent Pinchart
2011-09-15 17:12 ` Florian Tobias Schandinat
2011-09-15 17:18 ` Alan Cox
2011-09-15 17:47 ` Florian Tobias Schandinat
2011-09-15 19:05 ` Alan Cox
2011-09-15 19:46 ` Florian Tobias Schandinat
2011-09-15 21:31 ` Alan Cox
2011-09-15 17:52 ` Alex Deucher
2011-09-15 17:56 ` Geert Uytterhoeven
2011-09-15 18:04 ` Alex Deucher
2011-09-15 18:39 ` Florian Tobias Schandinat
2011-09-15 18:58 ` Alan Cox
2011-09-15 19:18 ` Florian Tobias Schandinat
[not found] ` <4E724F93.1050203-Mmb7MZpHnFY@public.gmane.org>
2011-09-15 19:28 ` Alan Cox
2011-09-15 19:45 ` Alex Deucher
2011-09-17 14:44 ` Felipe Contreras
2011-09-17 15:16 ` Rob Clark
2011-09-17 16:11 ` Florian Tobias Schandinat
2011-09-17 16:47 ` Dave Airlie
2011-09-17 18:15 ` Florian Tobias Schandinat
2011-09-17 18:23 ` Dave Airlie
2011-09-17 19:06 ` Florian Tobias Schandinat
2011-09-17 19:25 ` Corbin Simpson
2011-09-17 21:25 ` Alex Deucher
2011-09-17 20:25 ` Alan Cox
2011-10-31 20:24 ` Jesse Barnes
2011-09-17 16:50 ` Rob Clark
2011-09-16 4:53 ` Keith Packard
2011-09-17 23:12 ` Laurent Pinchart
2011-09-18 16:14 ` Rob Clark
2011-09-18 21:55 ` Laurent Pinchart
[not found] ` <201109180112.15896.laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
2011-09-18 22:23 ` Alan Cox
2011-09-19 0:09 ` Rob Clark
2011-09-20 23:32 ` Laurent Pinchart
2011-09-15 18:12 ` Keith Packard
2011-09-15 17:21 ` Tomi Valkeinen
2011-09-15 18:32 ` Rob Clark
2011-09-16 0:55 ` Keith Packard
2011-09-16 6:38 ` Tomi Valkeinen
2011-09-16 14:17 ` Daniel Vetter
2011-09-16 16:53 ` Alan Cox
2011-09-19 6:33 ` Tomi Valkeinen
2011-09-19 6:53 ` Keith Packard
2011-09-19 7:29 ` Tomi Valkeinen
2011-09-20 8:29 ` Patrik Jakobsson
2011-09-20 15:55 ` Keith Packard
2011-09-20 21:20 ` Patrik Jakobsson
2011-09-21 6:01 ` Tomi Valkeinen
2011-09-21 18:07 ` Patrik Jakobsson
2011-09-15 15:03 ` Kyungmin Park
2011-09-21 13:26 ` Heiko Stübner [this message]
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=201109211526.33687.heiko@sntech.de \
--to=heiko@sntech.de \
--cc=archit@ti.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=linaro-dev@lists.linaro.org \
--cc=linux-fbdev@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nskamat@ti.com \
--cc=rob@ti.com \
--cc=tomi.valkeinen@ti.com \
/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;
as well as URLs for NNTP newsgroup(s).