Hi Tung, thanks for your answer, You were right, i was using the msm7k gralloc and it was allocation the memory on GPU, i simply changed the name of /system/libs/hw/ gralloc.msm7k.so lib to force HAL to search for the gralloc.default.so, and now i can use any resolution.
Now i have another issue, the colors of the screen aren't right. I've been looking in ./libhardware/modules/gralloc/framebuffer.cpp, and i see i don't need to set colour information on VFB because it is set on "int mapFrameBufferLocked(struct private_module_t* module)" Something like: /* * Explicitly request 5/6/5 */ info.bits_per_pixel = 16; info.red.offset = 11; info.red.length = 5; info.green.offset = 5; info.green.length = 6; info.blue.offset = 0; info.blue.length = 5; info.transp.offset = 0; info.transp.length = 0; However using the VNC server (i'm guessing it isnt a VNC issue) the colors are wrong... I've attached a pic so you can see what's wrong... http://zeluispereira.no.sapo.pt/vfb.png I/gralloc ( 123): using (fd=25) I/gralloc ( 123): id = Virtual FB I/gralloc ( 123): xres = 1024 px I/gralloc ( 123): yres = 768 px I/gralloc ( 123): xres_virtual = 1024 px I/gralloc ( 123): yres_virtual = 1536 px I/gralloc ( 123): bpp = 16 I/gralloc ( 123): r = 0:5 I/gralloc ( 123): g = 5:6 I/gralloc ( 123): b = 11:5 I/gralloc ( 123): width = 163 mm (159.568100 dpi) I/gralloc ( 123): height = 122 mm (159.895081 dpi) I/gralloc ( 123): refresh rate = 25.43 Hz Thanks On 6 Set, 04:47, Tung Dang <tung...@gmail.com> wrote: > Hi onaips, > > I run your VNC server with VFB and the screen resolution is 800x520 is ok > Can u try with this resolution ? > > logcat: > > W/gralloc ( 1960): page flipping not supported (yres_virtual=520, > requested=1040) > I/gralloc ( 1960): using (fd=22) > I/gralloc ( 1960): id = Virtual FB > I/gralloc ( 1960): xres = 800 px > I/gralloc ( 1960): yres = 520 px > I/gralloc ( 1960): xres_virtual = 800 px > I/gralloc ( 1960): yres_virtual = 520 px > I/gralloc ( 1960): bpp = 16 > I/gralloc ( 1960): r = 11:5 > I/gralloc ( 1960): g = 5:6 > I/gralloc ( 1960): b = 0:5 > I/gralloc ( 1960): width = 127 mm (160.000000 dpi) > I/gralloc ( 1960): height = 83 mm (159.132523 dpi) > I/gralloc ( 1960): refresh rate = 27.20 Hz > > Btw, try to run kernel with a generic build of system.img , dont use the HAL > layer of msm > > Cheers. > Tung > > > > On Mon, Sep 6, 2010 at 4:56 AM, onaips <ona...@gmail.com> wrote: > > Hi, i compiled android kernel with virtual framebuffer support and > > msm_fb disabled, so i can access the framebuffer only using a > > framebuffer viewer (for example a VNC server). > > > However if i use a high resolution (800x600) gralloc returns me an Out > > of Memory error... > > If i use 320x480 its working fine. > > > Is there any constant limit i should raise? > > > Thanks > > José Pereira > > > (logcat) > > W/SurfaceFlinger( 124): mBuffers[0] is null (mWidth=480, mHeight=775) > > E/gralloc ( 124): gralloc failed err=Out of memory > > D/Sensors ( 124): sensors=00000000, real=00000000 > > W/ ( 124): alloc(480, 775, 1, 00000133, ...) failed -12 (Out > > of memory) > > D/ ( 124): Allocated buffers: > > D/ ( 124): 0xed4d8: 32.70 KiB | 91 x 92 | 1 | > > 0x00000133 > > D/ ( 124): 0x12e388: 750.00 KiB | 480 x 800 | 4 | > > 0x00000130 > > D/ ( 124): 0x2095f8: 931.25 KiB | 320 x 745 | 1 | > > 0x00000133 > > D/ ( 124): 0x214c58: 46.88 KiB | 480 x 25 | 1 | > > 0x00000133 > > D/ ( 124): 0x276868: 0.94 KiB | 12 x 20 | 1 | > > 0x00000133 > > D/ ( 124): 0x280800: 750.00 KiB | 480 x 800 | 4 | > > 0x00000133 > > D/ ( 124): 0x29b6e8: 1453.12 KiB | 480 x 775 | 1 | > > 0x00000133 > > D/ ( 124): 0x2a4a18: 931.25 KiB | 320 x 745 | 1 | > > 0x00000133 > > D/ ( 124): 0x2d5628: 28.44 KiB | 91 x 80 | 1 | > > 0x00000133 > > D/ ( 124): 0x2d7a30: 1453.12 KiB | 480 x 775 | 1 | > > 0x00000133 > > D/ ( 124): 0x2fdb28: 46.88 KiB | 480 x 25 | 1 | > > 0x00000133 > > D/ ( 124): 0x3032e0: 750.00 KiB | 480 x 800 | 4 | > > 0x00000133 > > D/ ( 124): 0x35fcd8: 750.00 KiB | 480 x 800 | 4 | > > 0x00000133 > > D/ ( 124): Total allocated: 7924.58 KB > > E/SurfaceFlinger( 124): Layer::requestBuffer(this=0xea950), index=0, > > w=480, h=775 failed (Out of memory) > > E/Surface ( 124): Surface (identity=2) requestBuffer(0, 00000033) > > returneda buffer with a null handle > > E/Surface ( 124): getBufferLocked(0, 00000033) failed (Out of memory) > > E/Surface ( 124): dequeueBuffer failed (Out of memory) > > E/ViewRoot( 124): OutOfResourcesException locking surface > > > --> > > unsubscribe:android-porting+unsubscr...@googlegroups.com<android-porting%2Bunsubscribe@ > > googlegroups.com> > > website:http://groups.google.com/group/android-porting -- unsubscribe: android-porting+unsubscr...@googlegroups.com website: http://groups.google.com/group/android-porting