Jump to content

[maybe solved] Touchscreen does not react after flashing an new ROM


Guest Seb801

Recommended Posts

Guest leromarinvit

I finally figured out what the problem is (on my device, at least): for some reason, the touchscreen controller is in the wrong mode (bootloader mode, due to configuration CRC failure) when booting. A reset fixes it for me.

BUT: This is not an exact copy of what the ZTE kernel does, since I haven't been able to find their changes. It's possible that they actually configure something and my kernel doesn't work for everybody. So please test it and report whether or not it works for you!

Note: The initramfs is from Swedish Spring RLS4b and I haven't tried it with anything else. But if it does indeed fix the problem reliably, the same kernel changes will work for every custom ROM.

Download: http://www.multiupload.com/93YKJDK5ZI

Edit: new link, since the old one can't work on Gen2 phones

kernel_patch.zip

Edited by leromarinvit
Link to comment
Share on other sites

Guest ahac85

hi i just rooted today flashed froyo only to learn that my touchscreen stopped working, i flashed orange stock firmware unsigned version and then rebooted still nothing, left phone off and on charge for 30mins and then tryed booting and everything is working fine, then tried flashing again and again, screen is still working?? guess am lucky but it was kinda strange

ps. im using Swedish Spring RLS4b rom no other changes

Edited by ahac85
Link to comment
Share on other sites

Guest 3lackhawk
I finally figured out what the problem is (on my device, at least): for some reason, the touchscreen controller is in the wrong mode (bootloader mode, due to configuration CRC failure) when booting. A reset fixes it for me.

BUT: This is not an exact copy of what the ZTE kernel does, since I haven't been able to find their changes. It's possible that they actually configure something and my kernel doesn't work for everybody. So please test it and report whether or not it works for you!

Note: The initramfs is from Swedish Spring RLS4b and I haven't tried it with anything else. But if it does indeed fix the problem reliably, the same kernel changes will work for every custom ROM.

Download: http://www.multiupload.com/93YKJDK5ZI

Edit: new link, since the old one can't work on Gen2 phones

What a happy morning for me :) I tried your modified image on my blade and it's seems to be working :)

You are the Hero of the Blade users who can't use Froyo still now :)

Thank you so much to share this!!!!!

Link to comment
Share on other sites

Guest Pidgey

Hey!

I've got the same problem (touchscreen doesnt work after installing Swedish Froyo thing or Gingerbread...)

How do i install the kernel patch?

//edit: And what is the "Swedish Spring RLS..." you've uploaded? It's only 6MB, while the original Swedish Spring ROM is more than 80MB... ?

Edited by Pidgey
Link to comment
Share on other sites

Guest 3lackhawk
Hey!

I've got the same problem (touchscreen doesnt work after installing Swedish Froyo thing or Gingerbread...)

How do i install the kernel patch?

//edit: And what is the "Swedish Spring RLS..." you've uploaded? It's only 6MB, while the original Swedish Spring ROM is more than 80MB... ?

Because this is just an update for RLS4

Download the original RLS4 and then do the same when you install a custom rom and after that install the uploaded update for RLS4

Edited by 3lackhawk
Link to comment
Share on other sites

Guest Pidgey
Because this is just an update for RLS4

Download the original RLS4 and then do the same when you install a custom rom and after that install the uploaded update for RLS4

Ok, I've installed CyanoMod7 -> touchscreen doesnt work. If I try to install the 'kernel_patch', I get 'Installation aborted'

I'm going to try Swedish mod now :)

(P.S. I have Build B02)

//EDIT:

I have installed Swedish Spring AND the update leromarinvit has posted, and ............... it WORKS!!

Thanks a lot!! :) :P :)

Edited by Pidgey
Link to comment
Share on other sites

Guest leromarinvit
Ok, I've installed CyanoMod7 -> touchscreen doesnt work. If I try to install the 'kernel_patch', I get 'Installation aborted'

I'm going to try Swedish mod now :)

kernel_patch.zip isn't flashable, that's just the patch for the kernel source. 3lackhawk is correct, you have to install Swedish_Spring_RLS4b_B10_Test.zip as an update after the normal Swedish Spring install, since it contains just the kernel itself. I should have been clearer about that.

(P.S. I have Build B02)

Me too (Hofer/YESSS), so it should work.

Link to comment
Share on other sites

Guest Pidgey
kernel_patch.zip isn't flashable, that's just the patch for the kernel source. 3lackhawk is correct, you have to install Swedish_Spring_RLS4b_B10_Test.zip as an update after the normal Swedish Spring install, since it contains just the kernel itself. I should have been clearer about that.

Me too (Hofer/YESSS), so it should work.

Yeyeyeyye It worked!^^

I have Swedish Spring now (Stable, I've rebooted 2 times and touchscreen keeps working^^)

Thanks a lot!^^

Link to comment
Share on other sites

Guest leromarinvit

I got a PM asking me how I did it, and thought I'd post it here in case other people are interested too:

The first clue was that whenever the touchscreen wasn't working, the X/Y range would be "unknown" in logcat. I tried manually setting it in the initialization routine, but that didn't work either: no matter what I wrote to these registers, they would always read back 0. So I tried to make sense of the Synaptics RMI4 documentation, and was quite annoyed that it doesn't contain a useful register map, only functional descriptions of the various registers.

As it turns out, that was actually quite helpful for getting me on the right track. Synaptics devices are logically organized in "functions", where each has an ID and its own register blocks. And there's a table which describes the available functions. Wanting to know the address ranges so I could poke around some more, I enumerated them - and saw that only the flash management function was active. From there on it was easy, I read up about this bootloader mode and how to reset the chip and tried it, and it worked. :)

Link to comment
Share on other sites

Guest 3lackhawk
I got a PM asking me how I did it, and thought I'd post it here in case other people are interested too:

The first clue was that whenever the touchscreen wasn't working, the X/Y range would be "unknown" in logcat. I tried manually setting it in the initialization routine, but that didn't work either: no matter what I wrote to these registers, they would always read back 0. So I tried to make sense of the Synaptics RMI4 documentation, and was quite annoyed that it doesn't contain a useful register map, only functional descriptions of the various registers.

As it turns out, that was actually quite helpful for getting me on the right track. Synaptics devices are logically organized in "functions", where each has an ID and its own register blocks. And there's a table which describes the available functions. Wanting to know the address ranges so I could poke around some more, I enumerated them - and saw that only the flash management function was active. From there on it was easy, I read up about this bootloader mode and how to reset the chip and tried it, and it worked. :)

You were in a very deep expert level :)

Thanks the explanation too !

Link to comment
Share on other sites

Guest RamanRB
I got a PM asking me how I did it, and thought I'd post it here in case other people are interested too:

The first clue was that whenever the touchscreen wasn't working, the X/Y range would be "unknown" in logcat. I tried manually setting it in the initialization routine, but that didn't work either: no matter what I wrote to these registers, they would always read back 0. So I tried to make sense of the Synaptics RMI4 documentation, and was quite annoyed that it doesn't contain a useful register map, only functional descriptions of the various registers.

As it turns out, that was actually quite helpful for getting me on the right track. Synaptics devices are logically organized in "functions", where each has an ID and its own register blocks. And there's a table which describes the available functions. Wanting to know the address ranges so I could poke around some more, I enumerated them - and saw that only the flash management function was active. From there on it was easy, I read up about this bootloader mode and how to reset the chip and tried it, and it worked. :)

Any chance to made same patch/update for CM 7.0.0?.. (it is 2.3.3 Android). Have you considered contributing to the community to include your patch in CM 7?

While I'm using Linux I not so confident (and in fact I'm just afraid if I brick the phone while preparing custom firmware! It is mine first Android phone I'm learning about) in patching Android kernel (on desktop/server it more easier as you backed up by rescue boot, etc.)

And, yeah, thank you for your hard work!

Link to comment
Share on other sites

Guest evgenyo
I got a PM asking me how I did it, and thought I'd post it here in case other people are interested too:

...

easy, I read up about this bootloader mode and how to reset the chip and tried it, and it worked. :)

leromarinvit, Thanks a lot in deed for the progress made towards the issue resolution. Would you please advise FOR NON PROFESSIONALS, how you findings can used to make a touchscreen working say with MODACO Froyo 12 or CM 7.0 Stable.

Or shall I simply wait a bit till you results are validated and then incorporated in ROMs up-issues?

Thanks

Link to comment
Share on other sites

Guest Shuttleu
Because this is just an update for RLS4

Download the original RLS4 and then do the same when you install a custom rom and after that install the uploaded update for RLS4

Can this be made for CM7?

If so, you are my life saver

Link to comment
Share on other sites

Guest imnpc2008
I finally figured out what the problem is (on my device, at least): for some reason, the touchscreen controller is in the wrong mode (bootloader mode, due to configuration CRC failure) when booting. A reset fixes it for me.

BUT: This is not an exact copy of what the ZTE kernel does, since I haven't been able to find their changes. It's possible that they actually configure something and my kernel doesn't work for everybody. So please test it and report whether or not it works for you!

Note: The initramfs is from Swedish Spring RLS4b and I haven't tried it with anything else. But if it does indeed fix the problem reliably, the same kernel changes will work for every custom ROM.

Download: http://www.multiupload.com/93YKJDK5ZI

Edit: new link, since the old one can't work on Gen2 phones

:) Thanks!

i have test , very good!

Link to comment
Share on other sites

Guest rayners
kernel_patch.zip isn't flashable, that's just the patch for the kernel source. 3lackhawk is correct, you have to install Swedish_Spring_RLS4b_B10_Test.zip as an update after the normal Swedish Spring install, since it contains just the kernel itself. I should have been clearer about that.

Me too (Hofer/YESSS), so it should work.

Magnificent work. I had 3 handsets all with non responsive touchscreens when flashed with anything other than original Orange UK B10 build ROM.

Well done - one very happy member.

Link to comment
Share on other sites

Guest isambard
I finally figured out what the problem is (on my device, at least): for some reason, the touchscreen controller is in the wrong mode (bootloader mode, due to configuration CRC failure) when booting. A reset fixes it for me.

BUT: This is not an exact copy of what the ZTE kernel does, since I haven't been able to find their changes. It's possible that they actually configure something and my kernel doesn't work for everybody. So please test it and report whether or not it works for you!

Note: The initramfs is from Swedish Spring RLS4b and I haven't tried it with anything else. But if it does indeed fix the problem reliably, the same kernel changes will work for every custom ROM.

Download: http://www.multiupload.com/93YKJDK5ZI

Edit: new link, since the old one can't work on Gen2 phones

Great work! You're doing ZTE's job for them! :)

Link to comment
Share on other sites

Guest isambard
Any chance to made same patch/update for CM 7.0.0?.. (it is 2.3.3 Android). Have you considered contributing to the community to include your patch in CM 7?

While I'm using Linux I not so confident (and in fact I'm just afraid if I brick the phone while preparing custom firmware! It is mine first Android phone I'm learning about) in patching Android kernel (on desktop/server it more easier as you backed up by rescue boot, etc.)

And, yeah, thank you for your hard work!

you can submit the patch request to the bug tracker. i'm sure somebody would see it. i also flagged it to one of the devs via twitter.

Link to comment
Share on other sites

Guest tlaci
I finally figured out what the problem is (on my device, at least): for some reason, the touchscreen controller is in the wrong mode (bootloader mode, due to configuration CRC failure) when booting. A reset fixes it for me.

BUT: This is not an exact copy of what the ZTE kernel does, since I haven't been able to find their changes. It's possible that they actually configure something and my kernel doesn't work for everybody. So please test it and report whether or not it works for you!

Note: The initramfs is from Swedish Spring RLS4b and I haven't tried it with anything else. But if it does indeed fix the problem reliably, the same kernel changes will work for every custom ROM.

Download: http://www.multiupload.com/93YKJDK5ZI

Edit: new link, since the old one can't work on Gen2 phones

So, does the touchscreen work with official ZTE kernel without this patch?

Link to comment
Share on other sites

Guest leromarinvit

Wow, thanks for all the great feedback!

Any chance to made same patch/update for CM 7.0.0?.. (it is 2.3.3 Android). Have you considered contributing to the community to include your patch in CM 7?

I'm quite sure it will work. The patch is obviously there for anybody who wants to use it. However, I'm not yet 100% convinced that this is the best way to fix the problem: The controller reports a configuration CRC mismatch, and ideally, it should be possible to dump the configuration data from a good device and flash it once on each affected device, so that the reset isn't needed any longer. Seems nicer than the sledgehammer method of resetting it "and to hell with configuration". Of course, this would still be done automatically. It's also possible that it won't work - we don't really know what's wrong. Maybe the chip can't be reliably configured for some reason, maybe ZTE just didn't bother. I'd like to at least try the nicer method before actively pushing the patch to anybody.

I'll try to build & upload a CM7 kernel later today to fix the immediate pressing issue of not having any working kernel though.

leromarinvit, Thanks a lot in deed for the progress made towards the issue resolution. Would you please advise FOR NON PROFESSIONALS, how you findings can used to make a touchscreen working say with MODACO Froyo 12 or CM 7.0 Stable.

Or shall I simply wait a bit till you results are validated and then incorporated in ROMs up-issues?

Thanks

Well, in theory it's pretty easy: you take the kernel source tree for your ROM, apply the patch and compile it. However, from a quick glance at the MCR thread, I didn't find any reference to the kernel source, so I guess Paul would have to incorporate the patch. For CM7, see above - give me a few hours. If you want to compile it yourself, you need a Linux system and an ARM cross compiler. This looks like a decent guide.

So, does the touchscreen work with official ZTE kernel without this patch?

Yes it does, but their kernel must contain some sort of fix for this. I don't know what they do exactly, since I haven't found the changes in the binary. Maybe they reset it, maybe they also configure it somehow.

Link to comment
Share on other sites

Guest kozlovda
I finally figured out what the problem is (on my device, at least): for some reason, the touchscreen controller is in the wrong mode (bootloader mode, due to configuration CRC failure) when booting. A reset fixes it for me.

...

I do confirm that this has solved touchscreen issue for me as well! Great work! (and patience to read controller func spec :))

Looking forward for incorporation of the patch into other ZTE kernals (and ROMs)

Link to comment
Share on other sites

Guest tlaci

Yes it does, but their kernel must contain some sort of fix for this. I don't know what they do exactly, since I haven't found the changes in the binary. Maybe they reset it, maybe they also configure it somehow.

I'm a bit confused. I thought the ZTE kernel source (link) when I said official ZTE kernel. Why did try to find fixes in the binary instead of source?

Edited by tlaci
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.