[Gta04-owner] Linux 3.2-rc4 - now with wifi

NeilBrown neilb at suse.de
Tue Dec 6 02:20:03 CET 2011


On Mon, 5 Dec 2011 22:35:24 +0100 Klaus 'mrmoku' Kurzmann
<mok at mnet-online.de> wrote:

> On Tue, 06 Dec 2011, NeilBrown wrote:
> 
> > On Mon, 5 Dec 2011 17:20:45 +0100 Klaus 'mrmoku' Kurzmann
> > <mok at mnet-online.de> wrote:
> 
> > > Hello Neil,
> > > 
> > > On Sat, 03 Dec 2011, NeilBrown wrote:
> > > 
> > > 
> > > > hi all,
> > > 
> > > >  I've updated my mainline gta04 kernel tree to 3.2-rc4.
> > > >     git://neil.brown.name/gta04 merge
> > > 
> > > 
> > > > The main new functionality is wireless.  The details for enabling wireless
> > > > are slightly different than with the hw-validation kernel.
> > > 
> > > > 1/ the reset line is /sys/class/gpio/gta04:wlan:reset
> > > >     write 0 to reset, 1 to release the reset
> > > >    The "reset" line is active-low.
> > > 
> > > > 2/ After power-on and reset you need to trigger a card-detect signal.
> > > >    This requires making gpio/gta:wlan/cd go high, then low.  Card-detect
> > > >    is active-low too.
> > > 
> > > > so:
> > > 
> > > > VDD=3150000
> > > > # VDD=2800000
> > > > echo 1 > /sys/class/gpio/gta04:wlan:cd/value
> > > > echo "0" >/sys/class/gpio/gta04:wlan:reset/value # activate reset
> > > > echo "$VDD" >/sys/devices/platform/reg-virt-consumer.4/max_microvolts
> > > > echo "$VDD" >/sys/devices/platform/reg-virt-consumer.4/min_microvolts
> > > > echo "normal" >/sys/devices/platform/reg-virt-consumer.4/mode
> > > > echo "1" >/sys/class/gpio/gta04:wlan:reset/value # release reset
> > > > echo 0 > /sys/class/gpio/gta04:wlan:cd/value  # edge triggers interrupt.
> > > 
> > > > Each gpio directory has an 'active_low' setting.  I should probably find a
> > > > way to enable that...  Unless I end up hiding all of this inside an rfkill.
> > > 
> > > 
> > > > I added the code to enable power-off, but it doesn't work.
> > > > As soon as it tries to access the i2c device to send the power-down command to
> > > > the twl4030 it triggers an error.  It seems that something earlier in the
> > > > shutdown sequence disabled something that is needed for writing to I2C, but I
> > > > have no idea what.
> > > > I've sent an email to someone to ask for hints..
> > > 
> > > > I discovered that USB_OTG is disabled in the default config, because
> > > > USB_SUSPEND is disabled.  If I enable this (because they sound like good
> > > > things) the charging doesn't work any more.
> > > > I think the usb port goes to sleep and so stops charging.  I really need to
> > > > find a way for the charger to keep the usb port awake.
> > > 
> > > > Still to do:
> > > >  - power off
> > > >  - accelerometers
> > > >  - explore various bugs reported in dmesg:
> > > >  - Find out why 'suspend' doesn't suspend
> > > >  - Make sure suspend saves maximum power.
> > > >  - make sure can wake from suspend by:
> > > >     power button, rtc, accelerometer, GSM
> > > >  - tidy up LCD panel driver.
> > > >  - make charger keep usb awake, and enable USB_OTG
> > > >  - see if I can make an 'rfkill' device that will power-on wifi/BT for me.
> > > >  - Maybe an rfkill for 'gps' as well.
> > > >  - further explore the rtc alarm bug I found last week.
> > > >  - gyroscope, compass, barometer,  FM radio?
> > > >  - See if I can get it to charge from Openmoko charger.
> > > >  - get all the fixes upstream.
> > > 
> > > > My goal is to be using this as my regular phone by LCA-2012 !!
> > > 
> > > great :-)
> > > 
> > > I have one problem with rc4. Touchsreen stopped working:
> > > 
> > > root at om-gta04:~# cat /dev/input/event0 
> > > [  739.782196] omap_i2c omap_i2c.2: controller timed out
> > > [  739.813537] tsc2007 2-0048: i2c io error: -110
> 
> > 110 is ETIMEDOUT
> 
> > > 
> > > 
> > > any hint?
> 
> > Not really.  I don't have a real touch screen attached yet so I might have
> > trouble testing.  I'll have a look though.
> 
> > My guess is that it is related to runtime-power-management, but that is just
> > because the last two weird bugs were.
> 
> I enabled debug for the i2c and this is what I get when touching the
> screen:
> 
> [  119.375213] i2c i2c-2: master_xfer[0] W, addr=0x48, len=1
> [  119.380828] i2c i2c-2: master_xfer[1] R, addr=0x48, len=2
> [  119.386566] omap_i2c omap_i2c.2: addr: 0x0048, len: 1, flags: 0x0, stop: 0
> [  119.393798] omap_i2c omap_i2c.2: IRQ (ISR = 0x1010)
> [  119.398895] omap_i2c omap_i2c.2: IRQ (ISR = 0x1004)
> [  119.404022] omap_i2c omap_i2c.2: addr: 0x0048, len: 2, flags: 0x1, stop: 1
> [  119.411315] omap_i2c omap_i2c.2: IRQ (ISR = 0x1008)
> [  119.416381] omap_i2c omap_i2c.2: IRQ (ISR = 0x0108)
> [  119.421478] omap_i2c omap_i2c.2: IRQ (ISR = 0x0004)
> [  119.426605] i2c i2c-2: master_xfer[0] W, addr=0x48, len=1
> [  119.432281] i2c i2c-2: master_xfer[1] R, addr=0x48, len=2
> [  119.437927] omap_i2c omap_i2c.2: addr: 0x0048, len: 1, flags: 0x0, stop: 0
> [  119.445098] omap_i2c omap_i2c.2: IRQ (ISR = 0x0010)
> [  119.450195] omap_i2c omap_i2c.2: IRQ (ISR = 0x1004)
> [  119.455322] omap_i2c omap_i2c.2: addr: 0x0048, len: 2, flags: 0x1, stop: 1
> [  119.462615] omap_i2c omap_i2c.2: IRQ (ISR = 0x1008)
> [  119.467712] omap_i2c omap_i2c.2: IRQ (ISR = 0x0108)
> [  119.472778] omap_i2c omap_i2c.2: IRQ (ISR = 0x0004)
> [  119.477935] i2c i2c-2: master_xfer[0] W, addr=0x48, len=1
> [  119.483551] i2c i2c-2: master_xfer[1] R, addr=0x48, len=2
> [  119.489227] omap_i2c omap_i2c.2: addr: 0x0048, len: 1, flags: 0x0, stop: 0
> [  119.496429] omap_i2c omap_i2c.2: IRQ (ISR = 0x0010)
> [  119.501525] omap_i2c omap_i2c.2: IRQ (ISR = 0x1004)
> [  119.506622] omap_i2c omap_i2c.2: addr: 0x0048, len: 2, flags: 0x1, stop: 1
> [  119.513916] omap_i2c omap_i2c.2: IRQ (ISR = 0x1008)
> [  119.519012] omap_i2c omap_i2c.2: IRQ (ISR = 0x0108)
> [  119.524078] omap_i2c omap_i2c.2: IRQ (ISR = 0x0004)
> [  119.529235] i2c i2c-2: master_xfer[0] W, addr=0x48, len=1
> [  119.534881] i2c i2c-2: master_xfer[1] R, addr=0x48, len=2
> [  119.540527] omap_i2c omap_i2c.2: addr: 0x0048, len: 1, flags: 0x0, stop: 0
> [  119.547729] omap_i2c omap_i2c.2: IRQ (ISR = 0x0010)
> [  119.552856] omap_i2c omap_i2c.2: IRQ (ISR = 0x1004)
> [  119.557983] omap_i2c omap_i2c.2: addr: 0x0048, len: 2, flags: 0x1, stop: 1
> [  119.565277] omap_i2c omap_i2c.2: IRQ (ISR = 0x1008)
> [  119.570343] omap_i2c omap_i2c.2: IRQ (ISR = 0x0108)
> [  119.575439] omap_i2c omap_i2c.2: IRQ (ISR = 0x0004)
> [  119.580566] i2c i2c-2: master_xfer[0] W, addr=0x48, len=1
> [  119.586212] i2c i2c-2: master_xfer[1] R, addr=0x48, len=2
> [  119.591857] omap_i2c omap_i2c.2: addr: 0x0048, len: 1, flags: 0x0, stop: 0
> [  119.599029] omap_i2c omap_i2c.2: IRQ (ISR = 0x0010)
> [  119.604156] omap_i2c omap_i2c.2: IRQ (ISR = 0x1004)
> [  119.609252] omap_i2c omap_i2c.2: addr: 0x0048, len: 2, flags: 0x1, stop: 1
> [  119.616577] omap_i2c omap_i2c.2: IRQ (ISR = 0x1008)
> [  119.621673] omap_i2c omap_i2c.2: IRQ (ISR = 0x0108)
> [  119.626739] omap_i2c omap_i2c.2: IRQ (ISR = 0x0004)
> 
> no idea if that is of any help...

I don't see the:
[  739.782196] omap_i2c omap_i2c.2: controller timed out
[  739.813537] tsc2007 2-0048: i2c io error: -110


messages in here.  Do you always get them?  Can you get a trace that includes
them along with the other debugging info?

I suggest that you use 
   evtest /dev/input/event0
for testing.  It helps confirm you are looking at the right device, and the
output is at least vaguely readable.

Do you ever get any event output?  or is it always completely silent?

NeilBrown




> /me already regrets to not have attended Christoph's talk about i2c in
> the kernel :/
> 
> 
> > > 
> > > And another big thank you for the great work you're doing (being burned
> > > by the stuttering upstreaming works of Nokia for n900 we (SHR) really appreciate
> > > that)
> 
> > :-)
> > There is a reason we call it the bleeding edge - but when you bleed, at least
> > that proves you are alive!
> 
> yeah, bleeding is fine as long as there is effort to make it stop - just
> like in real life :-)
> 
> > NeilBrown
> 
> 

-------------- 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/20111206/2803a869/attachment.bin>


More information about the Gta04-owner mailing list