god,nobody reply?

Thanks
--Weber
On 4月4日, 下午11时21分, Weber <qvbs...@gmail.com> wrote:
> I found a strange thing:
> if I do not change the owner of /sys/android_power/
> acquire_partial_wake_lock ,to radio system ,then
> the libhardware.so complain that permission denied,and the touch
> screen can respond at top bar.
>
> but ,if the owner of acquire_partial_wake_lock are changed to  radio
> system ,the complaints disappeared,however,the touch screen don't
> respond anymore.
>
> and if the permission is ok, in hardware/libhardware/power/power.c.
> 1.the acquire_wake_lock() function can return true
> 2.the acquire_partial_wake_lock can be opened and written a word
> "wake" in function set_screen_state()
> so I conducted a mix test by hack the /power/power.c to found who
> makes the ts don't respond. and found that:
> only the  the condition that acquire_wake_lock() function can NOT
> return true and the acquire_partial_wake_lock can NOT be written ,the
> ts can respond.
>
> I am very confused of these things ,anyone tell me what happened and
> how to do?
>  Thanks
> -Weber
>
> On 3月22日, 下午9时28分, Weber <qvbs...@gmail.com> wrote:
>
> > when i add some LOG in EventHub.cpp,I found that:when open
> > acquire_partial_wake_lock ,it return permission denied
> > I/power   (  679): *** set_screen_state 1
> > I/power   (  679): go_to_sleep  now=44106449000 g_error=Permission
> > denied
> > so I changed the mod in init.rc
> > chmod  0666 /sys/android_power/acquire_partial_wake_lock
> > this time it can be open but the ts has no response now ,it has top
> > bar slide before the mod being changed
>
> > and my new logcat  is  attached,here are some of it
> > 604 I/SurfaceFlinger(  659): Client API: OpenGL ES
> >  605 I/EGLDisplaySurface(  659): using (fd=21)
> >  606 I/EGLDisplaySurface(  659): id           = s3cfb
> >  607 I/EGLDisplaySurface(  659): xres         = 240 px
> >  608 I/EGLDisplaySurface(  659): yres         = 320 px
> >  609 I/EGLDisplaySurface(  659): xres_virtual = 240 px
> >  610 I/EGLDisplaySurface(  659): yres_virtual = 640 px
> >  611 I/EGLDisplaySurface(  659): bpp          = 16
> >  612 I/EGLDisplaySurface(  659): r            = 11:5
> >  613 I/EGLDisplaySurface(  659): g            =  5:6
> >  614 I/EGLDisplaySurface(  659): b            =  0:5
> >  615 I/EGLDisplaySurface(  659): width        = 240 mm (25.400000 dpi)
> >  616 I/EGLDisplaySurface(  659): height       = 320 mm (25.400000 dpi)
> >  617 I/EGLDisplaySurface(  659): refresh rate = 2.21 Hz
> >  878 I/power   (  659): acquire_wake_lock lock=1 id='KeyEvents'
> >  879 I/power   (  659): Weber@ partial_wake_lock,fd='39'
> >  880 E/EventHub(  659): could not get driver version for /dev/input/
> > ts0, Invalid argument
> >  881 I/EventHub(  659): Weber@,could not get idstring for /dev/input/
> > event1, No such file or directory
> >  882 I/EventHub(  659): add device 1: /dev/input/event1
> >  883 I/EventHub(  659):   bus:      0013
> >  884 I/EventHub(  659):   vendor    dead
> >  885 I/EventHub(  659):   product   beef
> >  886 I/EventHub(  659):   version   0101
> >  887 I/EventHub(  659):   name:     "S3C-TouchScreen"
> >  888 I/EventHub(  659):   location: "input(ts)"
> >  889 I/EventHub(  659):   id:       ""
> >  890 I/EventHub(  659):   version:  1.0.0
>
> > 961 I/EventHub(  659): New device: path=/dev/input/event1 name=S3C-
> > TouchScreen id=0x10000 (of 0x1) index=1 fd=     47 classes=0x2
> > 1044 I/EventHub(  659): New device: path=/dev/input/event0 name=s3c-
> > keypad id=0x10001 (of 0x2) index=2 fd=50 cl     asses=0x1
> > 1046 I/EventHub(  659): Reporting device opened: id=0x10001, name=/dev/
> > input/event0
> > 1047 I/KeyInputQueue(  659): Device added: id=0x0, name=s3c-keypad,
> > classes=1
> > 1048 I/power   (  659): acquire_wake_lock lock=1
> > id='PowerManagerService'
> > 1049 I/power   (  659): Weber@ partial_wake_lock,fd='39'
> > 1050 I/EventHub(  659): Reporting device opened: id=0x10000, name=/dev/
> > input/event1
> > 1051 I/KeyInputQueue(  659): Device added: id=0x10000, name=null,
> > classes=2
> > 1052 I/KeyInputQueue(  659):   X: min=0 max=240 flat=0 fuzz=0
> > 1053 I/KeyInputQueue(  659):   Y: min=0 max=320 flat=0 fuzz=0
> > 1054 I/KeyInputQueue(  659):   Pressure: min=0 max=1 flat=0 fuzz=0
> > 1055 I/KeyInputQueue(  659):   Size: unknown values
>
> > 4465 I/ActivityManager(  659): Process android.process.acore (pid 744)
> > has died.
> > 4466 I/WindowManager(  659): WIN DEATH: Window{435785e0
> > com.android.launcher/com.android.launcher.Launcher}
>
> > thank you all
>
> > --Weber
>
> > On Mar 12, 11:32 am, Weber <qvbs...@gmail.com> wrote:
>
> > > Hi,guys
> > > Following Achim's advice (Thank you ,Achim  ),I added some LOGI in
> > > EventHub.cpp,and the output of logcat is as follows:
> > > E/EventHub(  679): could not get driver version for /dev/input/ts0,
> > > Invalid argument
> > > I/EventHub(  679): New device: path=/dev/input/event1 name=S3C
> > > TouchScreen id=0x10000 (of 0x1) index=1 fd=40 classes=0x4
> > > E/EventHub(  679): could not get driver version for /dev/input/mouse0,
> > > Not a typewriter
> > > E/EventHub(  679): could not get driver version for /dev/input/mice,
> > > Not a typewriter
> > > I/EventHub(  679): New device: path=/dev/input/event0 name=s3c-keypad
> > > id=0x10001 (of 0x2) index=2 fd=43 classes=0x3
> > > I/EventHub(  679): New keyboard: publicID=65537 device->id=65537
> > > devname='s3c-keypad' propName='hw.keyboards.65537.devname' keylayout='/
> > > system/usr/keylayout/qwerty.kl'
> > > I/KeyInputQueue(  679): Device added: id=0x0, name=s3c-keypad,
> > > classes=3
> > > I/power   (  679): acquire_wake_lock lock=1 id='PowerManagerService'
> > > I/KeyInputQueue(  679): Device added: id=0x10000, name=null, classes=4
> > > I/KeyInputQueue(  679):   X: min=0 max=240 flat=0 fuzz=0
> > > I/KeyInputQueue(  679):   Y: min=0 max=320 flat=0 fuzz=0
> > > I/KeyInputQueue(  679):   Pressure: min=0 max=1 flat=0 fuzz=0
> > > I/KeyInputQueue(  679):   Size: unknown values
> > > I/power   (  679): release_wake_lock id='KeyEvents'
> > > I/power   (  679): *** set_screen_state 1
> > > I/power   (  679): go_to_sleep  now=44104839000 g_error=Permission
> > > denied
> > > I/power   (  679): *** set_screen_state 1
> > > I/power   (  679): go_to_sleep  now=44106449000 g_error=Permission
> > > denied
> > > I/power   (  679): release_wake_lock id='PowerManagerService'
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/EventHub(  679): qiu@ In EventHub, poll 3, returned 1
> > > I/KeyInputQueue(  679): Device added: id=0x0, name=s3c-keypad,
> > > classes=3
> > > I/power   (  679): acquire_wake_lock lock=1 id='PowerManagerService'
> > > I/KeyInputQueue(  679): Device added: id=0x10000, name=null, classes=4
> > > I/KeyInputQueue(  679):   X: min=0 max=240 flat=0 fuzz=0
> > > I/KeyInputQueue(  679):   Y: min=0 max=320 flat=0 fuzz=0
> > > I/KeyInputQueue(  679):   Pressure: min=0 max=1 flat=0 fuzz=0
> > > I/KeyInputQueue(  679):   Size: unknown values
>
> > > so what could i do to solve it ?
> > > Thanks,
> > > --weber
> > > On Mar 3, 4:56 pm, Weber <qvbs...@gmail.com> wrote:
>
> > > > Thank you,Achim
> > > > Could you be more specific?
> > > > I can get the info(such as posted above) with getevent tool,does this
> > > > means that poll can get the ts?
>
> > > > On Mar 1, 10:18 pm, AchimNohl <achim.n...@coware.com> wrote:
>
> > > > > Hi,
>
> > > > > have you tried to debug EventHub::getEvent in frameworks/bas/libs/ui/
> > > > > EventHub.cpp? I once had problems with my touchscreen after waking up
> > > > > from suspend as the device was destroyed and got a new file
> > > > > descriptor. I finally ended up in debugging this method. It does a
> > > > > "poll" system call to wait for data on the touchscreen device. You may
> > > > > want to add some LOGS here to see if it get passed poll when you hit
> > > > > the ts and see the printk info from the kernel.
>
> > > > > Regards,
> > > > > Achim- 隐藏被引用文字 -
>
> > - 显示引用的文字 -

-- 
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-porting

To unsubscribe, reply using "remove me" as the subject.

Reply via email to