136
edits
Changes
no edit summary
To implement frame buffer, a portion of main SDRAM is used. This area is allocated at runtime by linux frame buffer driver. Even if LCD is 18 bpp, each pixel is represented by 32-bit word in memory.In fact each pixel is in RGB666 format, so for each colour only the six most significant bits of the frame buffer RGB888 are used to drive the display. Here is the pinout assignment to drive the LCD:{| class="wikitable" | | align="center" style="background:#f0f0f0;"|'''LCD Signal'''| align="center" style="background:#f0f0f0;"|'''BORA SOM Signal'''|-| BackLight||IO_L15P_T2_DQS_13|-| LVDS_CLK_P||IO_L22P_T3_13|-| LVDS_CLK_N||IO_L22N_T3_13|-| LVDS_D0_P||IO_L21P_T3_DQS_13|-| LVDS_D0_N||IO_L21N_T3_DQS_13|-| LVDS_D1_P||IO_L19P_T3_13|-| LVDS_D1_N||IO_L19N_T3_VREF_13|-| LVDS_D2_P||IO_L18P_T2_13|-| LVDS_D2_N||IO_L18N_T2_13|-|}
The Vivado design can be downloaded from the following URL:
During kernel bootstrap, the following messages are printed out on console, indicating framebuffer driver has been loaded succesfully:
Once the kernel has completed boot, frame buffer can be accessed from user space applications via <code>/dev/fb0</code> device file (for more details please refer to https://www.kernel.org/doc/Documentation/fb/framebuffer.txt).