Hi Simon, Il 17/11/2017 20:13, Simon Budig ha scritto: > [Trimming down the CC list a bit...] Thanks > Hi all. >> On Fri, 2017-11-17 at 18:16 +0100, Luca Ceresoli wrote: >> What about all the other registers? The datasheet lists a few dozen, >> not only 0x80. Are they implemented in the panel you are working on? >> >>> The point is that datasheet seems to be official by Focaltech, >>> like if they deliver that IC with a standard FW inside. >>> I can't find a way to safely probe if it's a standard FW or from >>> EDT M09 >>> or M06. >> >> Since everything is based on the programmed firmware, and there's no >> "standard" way to detect firmware version, every firmware detection >> is >> bound to be a hack. But there's no better way I'm afraid. Thus device >> tree seems the only reliable way... >> >> However, did you check registers FIRMID, FT5201ID (CTPM Vendor ID) >> and ID_G_LIB_VERSION_H/L? According to their name they might hold >> interesting info. > When I tried to read them from a solomon/goldentek display/touch I did > get unreliable data, i.e. I got different values when I had a power > cycle inbetween the startups. > Basically the firwmare did not implement these registers on the i2c > registers and I believe I got whatever happened to sit in the RAM at > that point. And that was the point where I gave up on trying to > determine the vendor and product, unless I knew where to look for it > (mainly the EDT family of touches). > And that dubiousness extended to the other registers. At some point I > had arbitrary register access via sysfs, but I did not actually bother > to determine if they had any effect or provided useful values. > Trying to communicate with representatives from Solomon Goldentek (in > this case) proved to be incredibly frustrating, because they did not > even understand what I was asking for. You don't get a datasheet > describing the actual firmware in the chip, it always is the same > focaltec datasheet that seems to consist of a lot of wishful thinking. > Sometimes you get a linux driver that might even implement a firmware > update method, but the quality of the code typically is not that great. > Fortunately the "Generic" method implemented in the patch I referred to > earlier seems to work reasonably well for the Displays I have at hand. > You can configure the max. resolution via devicetree and that gets you > 95% of the way. > I would not mind additional properties in the devicetree for certain > quirks of specific devices (but encoding the vendor of the touch seems > beyond the point to me). What seems clear to me is that datasheet I’ve pointed out is the basic firmware by focaltech. And it’s compatible with M09 style. But... > As for frequent recalibration I am not so > sure, but then I've not yet seen a touch device where this has to be > done. We’ve experienced this in every product we have done and we sell. At this time there are 3k pcs out with recalibration on 3 different machines, that otherwise did not work properly. I mean touch behind 4mm of glass or plexiglass. At this point, since I need all the other registers only because of that, I would proceed on writing a different driver specific for focaltech standard firmware as their official datasheet states. Something like ft-ft5x.c, without making edt-ft5x.c more complicated, in fact what I suggest is specific to focaltech standard firmware only and is not applicable to edt or other specific firmware. What do you think? Regards > (for the records: the "M12" series from EDT is based on a different IC, > but their firmware implements a M09-style protocol with a few > additions, mainly to identify the panel.) > Bye, > Simon -- Giulio Benetti R&D Manager & Advanced Research MICRONOVA SRL Sede: Via A. Niedda 3 - 35010 Vigonza (PD) Tel. 049/8931563 - Fax 049/8931346 Cod.Fiscale - P.IVA 02663420285 Capitale Sociale € 26.000 i.v. Iscritta al Reg. Imprese di Padova N. 02663420285 Numero R.E.A. 258642 -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html