[Gta04-owner] 3.3 kernel for gta04.

NeilBrown neilb at suse.de
Mon Apr 9 11:39:39 CEST 2012


Hi,
 I finally got 3.3 working happily on my GTA04.  Partly there were new issues
to fix, partly I wanted to explore more deeply some of the issues that I have
previously hacked-around rather than fixed properly (there are still some more
of those though).

3.3 seems to work much the same as 3.2.  I would appreciate it if others could
test and confirm that it works for them.  Then we can encourage everyone to
upgrade while I look at 3.4 :-)

Code can be found at
    git://neil.brown.name/gta04 3.3-gta04
and
    git://github.com/neilbrown/linux.git gta04/3.3.y

Yes, I have changed the name of the github repository - I won't change it
again though.

The 3.2 kernel (slightly updated) can be found at the same places with
"3.3" replaced with "3.2".  Both have been updated to the latest -stable
kernel (3.2.14 and 3.3.1).

The only (intended) functionality changes are:

   twl4030_usb: export status of id pin via sysfs
from Andreas Kemnade

and GTA04 - make 3G wakeup a shared interrupt 
by me.

This allows sysfs to get interrupts from the 3G wakeup line so they can be
detected from user-space.  This means the following python script will print a
message each time the 3G module sends an interrupt.
I find that if I get an SMS while suspended I don't see the "+CMTI" notifier,
so I hook into this interrupt instead.

I've updated
http://projects.goldelico.com/p/gta04-kernel/page/Mainline-Status/

Any feedback always welcome,

NeilBrown




import gobject, sys

class SysfsWatcher:
    # watch for changes on a sysfs file and report them
    # We read the content, report that, wait for a change
    # and report again
    def __init__(self, path, action):
        self.path = path
        self.action = action
        self.fd = open(path, "r")
        self.watcher = gobject.io_add_watch(self.fd, gobject.IO_PRI, self.read)
        self.read()

    def read(self, *args):
        try:
            r = self.fd.read(4096)
        except IOerror:
            return True
        self.fd.seek(0)
        self.action(r)
        return True

def act(val):
    print "just read", val
    sys.stdout.flush()

x = SysfsWatcher("/sys/class/gpio/gpio176/value", act)
c = gobject.main_context_default()
while True:
    c.iteration()
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 828 bytes
Desc: not available
URL: <http://lists.goldelico.com/pipermail/gta04-owner/attachments/20120409/4fabadbc/attachment.bin>


More information about the Gta04-owner mailing list