关于lcd驱动的一个小疑点?

关于lcd驱动的一个小问题???
s3c_lcd = framebuffer_alloc(0, NULL);
/* RGB:565 */
s3c_lcd->var.red.offset = 11;//红色偏移值为11
s3c_lcd->var.red.length = 5;//红色位长为5
s3c_lcd->var.green.offset = 5;//绿色偏移值为
5 s3c_lcd->var.green.length = 6;//绿色位长为6
s3c_lcd->var.blue.offset = 0;//蓝色偏移值为0 
s3c_lcd->var.blue.length = 5;//蓝色位长为5

RGB的偏移值是怎么设置的??
s3c_lcd->var.red.offset = 11, s3c_lcd->var.green.offset = 5,s3c_lcd->var.blue.offset = 0
这几个值,是根据什么设置的???~~~必须要这么设置吗(固定这样设置的吗)?

谢谢!!

------解决方案--------------------
你用的是 RGB565 格式,R - 5,G - 6,B - 5
存放顺序,从高到低依次是 R->G->B

B.offset = 0
B.length = 5
G.offset = B.offset + B.length = 5
G.length = 6
R.offset = G.offset + G.length = 11
R.length = 5