Thank you Manjunatha: I got it. I am now using pxa310 platform, and didn't find the WAITFOR_VSYNC ioctl. can you please give me some advices. what should the WAITFOR_VSYNC do in framebuffer?
best wishes Terry On 6月26日, 下午2时20分, halli manjunatha <[email protected]> wrote: > Hi, > while writing images to framebuffer we need to ensure that the previous > frame is written completely > this is not happening in case when you open the widgets like softkeypad. so > use of WAITFOR_VSYNC ioctl > will ensure the completion of previous frame. > > In case of normal operation the frame rate is low so you dont see the > effect, but in case of high frame rate you will see the flickers > > 2009/6/26 Terry Z <[email protected]> > > > > > > > > > Thank you Manjunatha > > > As you said, you may think that it's the framebuffer driver caused > > the flicker. but there is no flicker if I do not use the soft > > keyboard. > > can you explain how that hanppens? > > > best wishes > > Terry > > > On 6月26日, 下午12时14分, halli manjunatha <[email protected]> wrote: > > > Hi Terry, > > > You need to use the WAITFOR_VSYNC ioctl in the " > > > frameworks/base/libs/ui/EGLDisplaySurface.cpp " file following is the > > code > > > > if (ioctl (egl_native_window_t::fd, FBIOPAN_DISPLAY, &mInfo)) { > > > LOGE("ioctl FBIOPAN_DISPLAY failed\n"); > > > return 0; > > > } > > > > if (ioctl (egl_native_window_t::fd, FBIO_WAITFORVSYNC, 0)) { > > > LOGE("ioctl FBIO_WAITFORVSYNC failed\n"); > > > return 0; > > > } > > > > before doing this comment out the call to FBIOPUT_VSCREENINFO > > > > On Fri, Jun 26, 2009 at 7:23 AM, Terry Z<[email protected]> wrote: > > > > > When I first start th soft keyboard, I found a "ARMAssembler" from > > > > the logcat. > > > > > I/ARMAssembler( 47): generated > > > > scanline__00000077:03515104_00001A01_00000000 [ 46 ipp] (68 ins) at > > > > [0x2268f0:0x226a00] in 335693 ns > > > > I/InetAddress( 83): Unknown hostwww.google.com, throwing > > > > UnknownHostException > > > > E/ActivityThread( 83): Failed to find provider info for > > > > android.server.checkin > > > > E/GoogleHttpClient( 83): Error recording stats > > > > E/GoogleHttpClient( 83): java.lang.IllegalArgumentException: Unknown > > > > URL content://android.server.checkin/stats > > > > E/GoogleHttpClient( 83): at > > > > android.content.ContentResolver.insert(ContentResolver.java:473) > > > > E/GoogleHttpClient( 83): at > > > > com.google.android.net.GoogleHttpClient.executeWithoutRewriting > > > > (GoogleHttpClient.java:192) > > > > E/GoogleHttpClient( 83): at > > > > com.google.android.net.GoogleHttpClient.execute(GoogleHttpClient.java: > > > > 212) > > > > E/GoogleHttpClient( 83): at > > > > com.google.android.net.GoogleHttpClient.execute(GoogleHttpClient.java: > > > > 282) > > > > E/GoogleHttpClient( 83): at > > > > com.android.googlesearch.SuggestionProvider.query > > > > (SuggestionProvider.java:134) > > > > E/GoogleHttpClient( 83): at android.content.ContentProvider > > > > $Transport.query(ContentProvider.java:129) > > > > E/GoogleHttpClient( 83): at > > > > android.content.ContentResolver.query(ContentResolver.java:149) > > > > E/GoogleHttpClient( 83): at com.android.launcher.Search > > > > $SuggestionsAdapter.getSuggestions(Search.java:661) > > > > E/GoogleHttpClient( 83): at com.android.launcher.Search > > > > $SuggestionsAdapter.runQueryOnBackgroundThread(Search.java:602) > > > > E/GoogleHttpClient( 83): at > > > > android.widget.CursorFilter.performFiltering(CursorFilter.java:49) > > > > E/GoogleHttpClient( 83): at android.widget.Filter > > > > $RequestHandler.handleMessage(Filter.java:215) > > > > E/GoogleHttpClient( 83): at android.os.Handler.dispatchMessage > > > > (Handler.java:99) > > > > E/GoogleHttpClient( 83): at android.os.Looper.loop(Looper.java: > > > > 123) > > > > E/GoogleHttpClient( 83): at android.os.HandlerThread.run > > > > (HandlerThread.java:60) > > > > W/GoogleSearch.SuggestionProvider( 83): Error > > > > W/GoogleSearch.SuggestionProvider( 83): > > > > java.net.UnknownHostException: Host is unresolved:www.google.com:80 > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > java.net.Socket.connect(Socket.java:1002) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > org.apache.http.conn.scheme.PlainSocketFactory.connectSocket > > > > (PlainSocketFactory.java:117) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection > > > > (DefaultClientConnectionOperator.java:129) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > org.apache.http.impl.conn.AbstractPoolEntry.open > > > > (AbstractPoolEntry.java:164) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > org.apache.http.impl.conn.AbstractPooledConnAdapter.open > > > > (AbstractPooledConnAdapter.java:119) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > org.apache.http.impl.client.DefaultRequestDirector.execute > > > > (DefaultRequestDirector.java:348) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > org.apache.http.impl.client.AbstractHttpClient.execute > > > > (AbstractHttpClient.java:555) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > org.apache.http.impl.client.AbstractHttpClient.execute > > > > (AbstractHttpClient.java:487) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > android.net.http.AndroidHttpClient.execute(AndroidHttpClient.java:288) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > com.google.android.net.GoogleHttpClient.executeWithoutRewriting > > > > (GoogleHttpClient.java:173) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > com.google.android.net.GoogleHttpClient.execute(GoogleHttpClient.java: > > > > 212) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > com.google.android.net.GoogleHttpClient.execute(GoogleHttpClient.java: > > > > 282) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > com.android.googlesearch.SuggestionProvider.query > > > > (SuggestionProvider.java:134) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > android.content.ContentProvider$Transport.query(ContentProvider.java: > > > > 129) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > android.content.ContentResolver.query(ContentResolver.java:149) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > com.android.launcher.Search$SuggestionsAdapter.getSuggestions > > > > (Search.java:661) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > com.android.launcher.Search > > > > $SuggestionsAdapter.runQueryOnBackgroundThread(Search.java:602) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > android.widget.CursorFilter.performFiltering(CursorFilter.java:49) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > android.widget.Filter$RequestHandler.handleMessage(Filter.java:215) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > android.os.Handler.dispatchMessage(Handler.java:99) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > android.os.Looper.loop(Looper.java:123) > > > > W/GoogleSearch.SuggestionProvider( 83): at > > > > android.os.HandlerThread.run(HandlerThread.java:60) > > > > -- > > > Regards > > > Manjunatha H- 隐藏被引用文字 - > > > > - 显示引用的文字 - > > -- > Regards > Manjunatha H- 隐藏被引用文字 - > > - 显示引用的文字 - --~--~---------~--~----~------------~-------~--~----~ unsubscribe: [email protected] website: http://groups.google.com/group/android-porting -~----------~----~----~----~------~----~------~--~---
