
14th February 2012, 01:24 AM
|
Junior Member - OP
Thanks Meter 7
Posts: 3
Join Date: Dec 2010
|
Official Atmel Touchscreen Driver on GitHub
Hello XDA developers,
As you know, Atmel maXTouch touchscreen controllers are used in a large percentage of Android phones and tablets out there.
I wanted to let you know that the latest patches for the official Atmel maXTouch Linux driver are available on GitHub. This will allow you to get the latest up to date changes before they make it into the mainline kernel.
On GitHub, search for user "atmel-maxtouch"
Happy hacking
Best regards,
Sherif
Product Marketing Manager - Atmel
|
|
The Following 7 Users Say Thank You to sherifhanna For This Useful Post: [ Click to Expand ]
|
|
|
|

14th February 2012, 03:58 PM
|
Senior Member
Thanks Meter 314
Posts: 602
Join Date: Mar 2011
Location: kollam
|
thank u for ur valuable information, well can u pls post what are the latest changes and updates. that will help the devs much more.
I AM THE PROUD OWNER OF THE COOLEST ANDROID DEVICE ON EARTH... YAP.. U NAME IT.. THE HD2
PLEASE READ THIS B4 U ASK QUESTIONShttp://forum.xda-developers.com/showpost.php?p=18289016&postcount=1
HYPERDROID TEAM MEMBER...
|

15th February 2012, 10:23 PM
|
Junior Member - OP
Thanks Meter 7
Posts: 3
Join Date: Dec 2010
|
Hi showlyshah,
The latest updates include the following:
- Support for Atmel's mXT224E, mXT768E, and mXT540E chipsets
- Support for both protocol A and protocol B reporting
- Support for kernel 3.0 in addition to kernel 2.6.35
More details are available on GitHub in the release notes.
Regards,
Sherif
|

16th February 2012, 06:25 PM
|
Elite Recognized Developer
Thanks Meter 20793
Posts: 11,493
Join Date: Aug 2007
Location: Owego, NY
DONATE TO ME
|
Is https://github.com/atmel-maxtouch the correct URL?
Unfortunately, if it is, the drivers in this repository are structured completely differently from the ones included in many vendor source drops, and unfortunately this causes great negative impact on their usefulness.
See, for example:
https://github.com/Entropy512/linux_...ut/touchscreen - This includes the mxt224 drivers as implemented by Samsung on their device (Galaxy S II)
https://github.com/atmel-maxtouch/li...ut/touchscreen - mxt224_u1.c is completely missing, indicating that the driver here is incomplete or structured very differently from the one used by Samsung, making it very difficult to use. Also, the few files there that do pertain to Atmel MXT such as atmel_mxt_ts.c in there appear identical to the mainline Linux repo.
*so much sig updating needed*
My Github profile - Some Android stuff, some AVR stuff
An excellent post on "noobs vs. developers"
A few opinions on kernel development "good practices"
Note: I have chosen not to use XDA's "friends" feature - I will reject all incoming "friend" requests.
Code:
<MikeyMike01> Smali is a spawn of hell
<shoman94> ^^^ +!
Code:
<Entropy512> gotta be careful not to step on each other's work. :)
<Bumble-Bee> thats true
<jerdog> compeete for donations
|

16th February 2012, 06:36 PM
|
Senior Member
Thanks Meter 669
Posts: 552
Join Date: Jul 2006
Location: Kaluga/Moscow
|
Quote:
Originally Posted by Entropy512
Is https://github.com/atmel-maxtouch the correct URL?
Unfortunately, if it is, the drivers in this repository are structured completely differently from the ones included in many vendor source drops, and unfortunately this causes great negative impact on their usefulness.
|
But it's not Atmel who are to blame. Atmel are doing a great job working directly with upstream so that all the users of mainline linux can benefit. I have been using the drivers from the vanilla kernel for quite a while on both my tegra tablet (with chromium kernel) and galaxy s2, and they work just fine, supporting multitouch in xorg in ubuntu.
The problem is OEMs who do crap like hardcoding/hacking drivers instead of using platform data, use machine-specific hacks, custom interfaces and a lot of copy-paste. That's the essence of modern consumer electronics business - no one cares for quality, only about releasing early.
Sony Vaio SA3S9R, IBM ThinkPad R500, Samsung Galaxy S2 I9100 [ u-boot multiboot]
Me on github
Me on gitorious
GIT d- s a-- c++ UL P--- !J--- L++++ E--- W- N O? K? w--- o ?V PS+ PE Y+ PGP++ t+ ?5 X++ R* !tv b++ DI++ D++ G++ e* h+
BTC 14KZnQkZR2GLnme7pYGs68MQVJHWwHGt3B
|

16th February 2012, 08:15 PM
(Last edited by njd27; 16th February 2012 at 08:29 PM.)
|
Junior Member
Thanks Meter 0
Posts: 1
Join Date: Mar 2011
|
Quote:
Originally Posted by Entropy512
Unfortunately, if it is, the drivers in this repository are structured completely differently from the ones included in many vendor source drops, and unfortunately this causes great negative impact on their usefulness.
See, for example:
linux_kernel_sgh-i777/tree/master/drivers/input/touchscreen - This includes the mxt224 drivers as implemented by Samsung on their device (Galaxy S II)
atmel-maxtouch/linux/tree/master/drivers/input/touchscreen - mxt224_u1.c is completely missing, indicating that the driver here is incomplete or structured very differently from the one used by Samsung, making it very difficult to use. Also, the few files there that do pertain to Atmel MXT such as atmel_mxt_ts.c in there appear identical to the mainline Linux repo.
|
I think you're looking at the unchanged mainline branch: the driver releases are as tags.
The advantage of these drivers is that they are generic for all chips in the maxtouch series. mxt224_u1.c is just a renamed atmel_mxt_ts.c, it contains lots of mxt224 specific configuration and it's unlikely that it will go upstream.
You will also find some user-space tools for extracting config files in a format the kernel driver can load, on the same github account.
|

16th February 2012, 09:03 PM
|
Elite Recognized Developer
Thanks Meter 20793
Posts: 11,493
Join Date: Aug 2007
Location: Owego, NY
DONATE TO ME
|
Missed the tags, thanks for the additional info!
I'll look into maybe playing with this when ICS time rolls around. It's getting late in the game to do a major driver rework on the Gingerbread kernel I maintain.
*so much sig updating needed*
My Github profile - Some Android stuff, some AVR stuff
An excellent post on "noobs vs. developers"
A few opinions on kernel development "good practices"
Note: I have chosen not to use XDA's "friends" feature - I will reject all incoming "friend" requests.
Code:
<MikeyMike01> Smali is a spawn of hell
<shoman94> ^^^ +!
Code:
<Entropy512> gotta be careful not to step on each other's work. :)
<Bumble-Bee> thats true
<jerdog> compeete for donations
|

16th April 2012, 08:37 PM
|
Junior Member
Thanks Meter 1
Posts: 5
Join Date: Aug 2011
|
Quote:
Originally Posted by sherifhanna
Hi showlyshah,
The latest updates include the following:
- Support for Atmel's mXT224E, mXT768E, and mXT540E chipsets
- Support for both protocol A and protocol B reporting
- Support for kernel 3.0 in addition to kernel 2.6.35
More details are available on GitHub in the release notes.
Regards,
Sherif
|
Hi Sherif,
I found the project in Github, but am not able to find the the release notes. Does this driver support the Atmel mXT336S at this time?
Thank you
|

24th April 2012, 10:28 PM
|
Junior Member - OP
Thanks Meter 7
Posts: 3
Join Date: Dec 2010
|
Hi omaha64,
Support for mXT336S is in progress.
Regards,
Sherif
|

14th May 2012, 04:46 AM
|
Member
Thanks Meter 24
Posts: 61
Join Date: Dec 2011
|
Question,
I am trying to back-port the 2.6.35.7 driver to 2.6.32. I have mostly succeeded, but probe() fails because of missing platform_data. Digging through the driver code, I found the platform data structure in include/linux/i2c/atmel_mxt_ts.h:
Code:
struct mxt_platform_data {
unsigned long irqflags;
u8(*read_chg) (void);
};
So I assume that in my board file (where my i2c_board_info arrays live) I would want to create a static instance of the above struct and store a pointer to it in the .platform_data member of the i2c_board_info struct, right? But what is the preferred initialization, and what is read_chg supposed to actually do? What's the consequences of just setting it to NULL? (I know it won't crash because the driver checks it before calling it)
|
| Thread Tools |
Search this Thread |
|
|
|
| Display Modes |
Linear Mode
|
|
|
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
Go to top of page...
|
|
|
|