This is the bug/patch tracker for Rockbox. Click here for more information.
Quick links: Bugs · Patches · Rockbox frontpage
FS#11807 - Major speed up of iPod nano 2G LCD
Attached to Project:
Rockbox
Opened by Andree Buschmann (Buschel) - Saturday, 11 December 2010, 14:12 GMT+2
Last edited by Andree Buschmann (Buschel) - Tuesday, 21 December 2010, 08:03 GMT+2
Opened by Andree Buschmann (Buschel) - Saturday, 11 December 2010, 14:12 GMT+2
Last edited by Andree Buschmann (Buschel) - Tuesday, 21 December 2010, 08:03 GMT+2
|
DetailsThis patch implements some changes to the iPod nano 2G LCD driver.
1) Do not poll FIFO full state, but for FIFO half full state. FIFO size is 16 bytes. So, when FIFO is not half full it is possible to write up 8 bytes (= 4 pixels) at once. This reduces the number of polls by far. 2) Force "width" to even in lcd_update_rect() to allow writing 2 pixels per loop. 3) Write 4 pixels per loop when (width==LCD_WIDTH). Speed up is ~50% for RGB and 25% for YUV. Edit: My nano has a LDS176 type LCD. |
This task depends upon
Closed by Andree Buschmann (Buschel)
Tuesday, 21 December 2010, 08:03 GMT+2
Reason for closing: Accepted
Additional comments about closing: All patches committed with up to r28868
Tuesday, 21 December 2010, 08:03 GMT+2
Reason for closing: Accepted
Additional comments about closing: All patches committed with up to r28868
------------
svn
------------
192 MHz
Main: 86.5 (1/1) 343.5 (1/4)
YUV : 64.0 (1/1) 254.5 (1/4)
48 MHz
Main: 36.3 (1/1) 144.5 (1/4)
YUV : 22.5 (1/1) 90.0 (1/4)
------------
patch v08
------------
192 MHz
Main: 129.5 (1/1) 516.0 (1/4) = 6,017,088 bytes/s (+50%)
YUV : 123.5 (1/1) 499.0 (1/4) = 2,869,152 pixel/s (+93%)
48 MHz
Main: 64.5 (1/1) 258.0 (1/4) = 2,996,928 bytes/s (+78%)
YUV : 41.7 (1/1) 168.0 (1/4) = 968,774 pixel/s (+85%)
------------
patch v08 (against r28800)
------------
192 MHz
Main: 258.0 (1/1) 1029.5 (1/4) = 11,987,712 bytes/s (+198%)
YUV : 125.5 (1/1) 504.0 (1/4) = 2,915,616 pixel/s (+ 96%)
48 MHz
Main: 129.0 (1/1) 514.0 (1/4) = 5,993,856 bytes/s (+252%)
YUV : 41.7 (1/1) 168.0 (1/4) = 968,774 pixel/s (+ 85%)