Hi,

On 21-06-16 11:46, Hans de Goede wrote:
Hi,

On 21-06-16 01:54, Icenowy Zheng wrote:
The GSLX680_D86_FW can give out the right status with silead.ko.
(But how can the wrong firmware work in the same way as the correct one?!

The firmware file is not really firmware, I believe it contains configuration
data, info on which pins are mapped to which touchsreen sense lines and lookup
tables for how to convert raw readings to coordinates.

On 21-06-16 01:48, Icenowy Zheng wrote:
Another thing to mention:

The touch stability and the edge accuration seems to be large improved by using 
gslX680new driver under Android.

Chances are the only thing different is the config-data file (aka firmware),
try using the fw_extract tool to get the firmwares from the
gslX680new.ko and see which works best for you, according to the
script.bin you send it should be named something like "gsl1680_k70"

(Maybe the blob is worth REing?)

Any improvements you can come up with are certainly welcome.

I just found the source for the glx680x-new driver here:
http://dl.linux-sunxi.org/SDK/A23-v1.0/unpacked/A23/lichee/linux-3.4/drivers/input/touchscreen/gslx680new/

And indeed contains a bunch of filtering to get better coordinates,
if you can extract that into a nice clean patch which applies on
top of the new upstream driver, then that would be great.


Regards,

Hans






21.06.2016, 07:32, "Icenowy Zheng" <[email protected]>:
And now I am trying to extract the ko + script.bin on the downloadable firmware.
(The factory firmware is destroyed by me when testing nand on a33)

(but although you say the gsl firmware is wrong... the chip still works well 
with this firmware)

Here's the gslX680new.ko and script.bin(decompiled to fex) of the downloadable 
image

21.06.2016, 05:23, "Hans de Goede" <[email protected]>:
 Hi,

 On 19-06-16 17:57, [email protected] wrote:
  Hello Hans, Daniel, Robert:
  I have a Allwinner A33 Q8 Tablet with a GSL1680 in it. However, something in 
it is working strangely.
  (I tried to use silead.c on it)
  Here's some strange points:
    - After it is initialized, the status is not 0x5A5A5A5A.

 That means you're likely using the wrong firmware, can you provide the 
gslx680.ko file from your
 android, as well as script0.bin from /dev/block/nanda please ?

    - When more than one touch point is on the screen, the hardware touch point track id 
(in the driver's debugging output, "hw_id") is always zero.

 That is normal and is why the latest version uses in kernel software tracking.

 The latest version lives here:
 https://github.com/jwrdegoede/linux-sunxi/commits/sunxi-wip

    - The touch point is not very stable (some small number changes happens 
very often), and the touchscreen's edge is badly adjusted.

 Yes these are both known issues, I do not believe that this is any different 
under android, this is simply
 what you get with hardware which is as cheap as possible.

 Regards,

 Hans

--
You received this message because you are subscribed to the Google Groups 
"linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to