linux-fbdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* PXA270 framebuffer
@ 2007-06-07 11:22 Julien Lebot
  2007-06-07 13:52 ` Antonino A. Daplas
  0 siblings, 1 reply; 3+ messages in thread
From: Julien Lebot @ 2007-06-07 11:22 UTC (permalink / raw)
  To: linux-fbdev-devel

Hi,

I'm currently developping on the Gumstix verdex platform and I noticed that 
the PXA270 processor includes a support for smartpanel screen in its 
framebuffer.

I've already written a small "driver" which is just a prototype to test if 
the LCD panel was working but it's far from being something really useful. 
(display only a picture, call some hardware functions of the LCD (rotate 
...) and exit)
Also it's not using the PXA270 framebuffer at all, the communication 
protocol is handled in software which is pretty slow (about 1sec to display 
the picture).

Since the PXA270 uses the pxafb driver I wonder is there is any plan to add 
the support for smart panels.
I thought about modifying the driver so that parameters can be passed at 
boot time specifying if it is a smart-panel or a "regular" LCD along with 
other video parameters.
In the driver I understand that it is needed to set up the framebuffer 
registers, then enabling the framebuffer and passing the data/command 
through the DMA channel 6 using some kind of scheduling function.
Well so far all my attempts did not lead to something viable :D

I've also tried to write a framebuffer driver from vfb and fbskeleton for 
this kind of screen but I'm a real newbie at kernel programming, thus 
leading to nothing at the moment.
I've posted on the linux-kernel mailing list and got some useful answers 
about kernel programming and the framebuffer itself, though I think this 
mailing list is more appropriate.

Any idea / help would be really appreciated,
Julien.

_________________________________________________________________
MSN Messenger: appels gratuits de PC à PC ! 
http://www.msn.fr/newhotmail/Default.asp?Ath=f


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/

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

* Re: PXA270 framebuffer
  2007-06-07 11:22 PXA270 framebuffer Julien Lebot
@ 2007-06-07 13:52 ` Antonino A. Daplas
  2007-06-09  7:04   ` Julien Lebot
  0 siblings, 1 reply; 3+ messages in thread
From: Antonino A. Daplas @ 2007-06-07 13:52 UTC (permalink / raw)
  To: linux-fbdev-devel; +Cc: Julien Lebot

On Thu, 2007-06-07 at 15:22 +0400, Julien Lebot wrote:
> Hi,
> 
> I'm currently developping on the Gumstix verdex platform and I noticed that 
> the PXA270 processor includes a support for smartpanel screen in its 
> framebuffer.
> 
> I've already written a small "driver" which is just a prototype to test if 
> the LCD panel was working but it's far from being something really useful. 
> (display only a picture, call some hardware functions of the LCD (rotate 
> ...) and exit)
> Also it's not using the PXA270 framebuffer at all, the communication 
> protocol is handled in software which is pretty slow (about 1sec to display 
> the picture).
> 
> Since the PXA270 uses the pxafb driver I wonder is there is any plan to add 
> the support for smart panels.
> I thought about modifying the driver so that parameters can be passed at 
> boot time specifying if it is a smart-panel or a "regular" LCD along with 
> other video parameters.
> In the driver I understand that it is needed to set up the framebuffer 
> registers, then enabling the framebuffer and passing the data/command 
> through the DMA channel 6 using some kind of scheduling function.
> Well so far all my attempts did not lead to something viable :D
> 
> I've also tried to write a framebuffer driver from vfb and fbskeleton for 
> this kind of screen but I'm a real newbie at kernel programming, thus 
> leading to nothing at the moment.
> I've posted on the linux-kernel mailing list and got some useful answers 
> about kernel programming and the framebuffer itself, though I think this 
> mailing list is more appropriate.
> 
> Any idea / help would be really appreciated,

You may want to look at arcfb.c.  If you look at it's copyarea, fillrect
and imageblit functions, they use the generic drawing functions, then
immediately followed by an arcfb_lcd_update(). That's where the contents
of the framebuffer is transferred to the internal memory of the LCD. 

The same is done for arcfb_write().

(You may want to do this step first.)

The above method make the framebuffer console work. Writing to /dev/fb0
will also work (cat "file" > /dev/fb0). However, for applications that
uses mmap(), such as X, it will not work.  You have to do some VM magic
to make mmap() function for your driver. For this functionality, look at
hecubafb.c driver and fb_defio.c. hecubafb.c and fb_defio.c is new for
2.6.21.

(This is the second step to make your smart lcd fully functional.)

Tony
 


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/

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

* Re: PXA270 framebuffer
  2007-06-07 13:52 ` Antonino A. Daplas
@ 2007-06-09  7:04   ` Julien Lebot
  0 siblings, 0 replies; 3+ messages in thread
From: Julien Lebot @ 2007-06-09  7:04 UTC (permalink / raw)
  To: adaplas; +Cc: linux-fbdev-devel

Hello,
sorry for the delayed answer :)
I sent an email to the mailing list before, not sure if it worked since I 
did not get the mail back. Anyways please discard the previous one :)

>You may want to look at arcfb.c.  If you look at it's copyarea, fillrect
>and imageblit functions, they use the generic drawing functions, then
>immediately followed by an arcfb_lcd_update(). That's where the contents
>of the framebuffer is transferred to the internal memory of the LCD.
>
>The same is done for arcfb_write().
>
>(You may want to do this step first.)
>
>The above method make the framebuffer console work. Writing to /dev/fb0
>will also work (cat "file" > /dev/fb0).

This driver is interesting I understand a bit more the general steps I have 
to do.

>However, for applications that
>uses mmap(), such as X, it will not work.  You have to do some VM magic
>to make mmap() function for your driver. For this functionality, look at
>hecubafb.c driver and fb_defio.c. hecubafb.c and fb_defio.c is new for
>2.6.21.
>
>(This is the second step to make your smart lcd fully functional.)

Yes and also I would like to use the hardware framebuffer capability of 
driving my smart panel (no more bit-banging). Is there any examples / 
explanations of how I can do a DMA to the framebuffer channel 6 (the one I 
have to send the commands to) and set up properly the registers ?
The LDD stated that this is the easiest part to mess up, which I would like 
to avoid :p

>Tony

Thanks for your answers,
Julien

_________________________________________________________________
MSN Messenger : discutez en direct avec vos amis ! 
http://www.msn.fr/msger/default.asp


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/

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

end of thread, other threads:[~2007-06-09  7:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-06-07 11:22 PXA270 framebuffer Julien Lebot
2007-06-07 13:52 ` Antonino A. Daplas
2007-06-09  7:04   ` Julien Lebot

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).