v01d commented on pull request #1778:
URL: https://github.com/apache/incubator-nuttx/pull/1778#issuecomment-692150618


   > > One thing I noticed is it seems that each pixel was being written 
individually which is super slow compared to writing a "rectangle" which could 
be DMA. I did not dig into this yet.
   > 
   > No, the NX LCD interface outputs runs: A horizontal extent of pixels. This 
has been discussion that this limits performance for painting large regions 
that are not bounded by the line length. But this is not a performance 
limitation for drawing rectangles that are inherently bounded in the window.
   
   I understand you are using nxgraphics with LCD interface right? As I 
mentioned in the past this really limited performance when wanting to transfer 
various lines in one go. I have in my TODO list to add support for putrun() to 
accept npixels > rowsize for such displays but I never got to do it. Anyway, as 
Greg says, this will not improve NX since putrun() is used once per line 
obviously.
   I used LVGL via a character driver which exposed the LCD interface and this 
allowed me to send putrun() for many rows.
   Contributing this to mainline is also in my backlog since I have to go back 
to test with another board to do so. If you're interested in trying it, it is 
here: https://gitlab.com/nuttx_projects/lcd_dev 
   Note that it uses a non-standard putrows() since this was my solution to the 
aforementioned problem, but as we discussed previously, extending putrun() 
would be easier.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to