Am Sa 24. Januar 2009 schrieb Andy Green: > Somebody in the thread at some point said: > | Werner Almesberger <[email protected]> writes: > |> thanks for reporting this critter. Can you please test the patch > |> below ? > | > | I originally discovered this issue and can confirm that the patch > | works. Kernel sysfs driver is still not exactly correct though, as it > | sets 0x15 to 0x01 (reserved) instead of 0x07 (fixed 1). > > Maybe we can fix that and add a Reported-by: for Paul, otherwise it > looks like a good bugfix. > > Another issue though is that for determinism, really the kernel driver > should arguably assert all the needed state for the default at kernel > startup and not leave it to be inherited by the bootloader as we have > previously done. Really the defaults in hardware should be designed to > be sane already (ie, pull that line down not up) so the bootloader is > not involved. > > -Andy >
As I mentioned to Paul and Werner on IRC, bootloader *must* set PMU-GPIO2 to low [for security reasons (airplane) and keeping 100mA boot current limit]. Nevertheless kernel shouldn't rely on this, but instead should do again set to default low on boottime [by asserting *all* needed settings: 13h.1:1 GPIOCTL - gpio2dir = 0b ["output". PCF50633UM2.00.pdf,p.34, tbl.29] 15h.2:0 GPIO2CFG - gpio2sel = 000b ["fixed zero". p.34, tbl.31] 15h.3:3 GPIO2CFG - gpio2pol = 0b ["no inversion". ditto] Similarly when enabling GSM_ON power for calypso, sysfs driver should not rely on any prev settings, but instead write gpio2dir, gpio2sel, gpio2pol accordingly. Also to handle powerup in a sensible way, it seems to me sysfs driver should use he following sequence: [2009-01-24 09:05:17] <DocScrutinizer> apply power (via GSM_ON, U1705) and assert modem-reset (to be found on gta01 only?). Wait for reset to complete (mwait(xyz)). deassert modem-reset. wait again some 100ms. assert MODEM_ON pushbutton of calypso (this is literally a power puhbutton input). wait for time needed by calypso to sense this button pressed and power up (might well be some seconds). deassert button aka MODEM_ON [2009-01-24 09:05:51] <DocScrutinizer> PaulFertser: would you agree sysfs isn't exactly doing this right now? For power down via sysfs, it should be regarded there are two different ways with different semantics to shut down a GSM-MT: *soft* (= send "a...@poweroff", wait for modem to deregister with network, GSM_ON = low) *hard* (= set GSM_ON=low unconditionally and immediately) AFAIK Paul is working on this sysfs patch right now, so no need for Werner or Andy to duplicate this work right away :) cheers jOERG
signature.asc
Description: This is a digitally signed message part.
