Guys, I'll collect all the respective information and put it in a public wiki page.
Will let you know once that is done. The general idea is that the gsm modem firmware checks if the handshake lines currently permit sending another character to the phone. If the handshake permits it, the cpu must be alive and it proceeds sending data. if the RTS/CTS handshake does not permit sending of any further characters, the modem will assert a GPIO line (connected to an EINT capable input of the S3C24xx). The interrupt line will remain asserted until the S3C24xx has changed the RTS/CTS handhsake to allow the modem to send characters again. So to do this, the following conditions need to be fulfilled: 1) a firmware post may-16-2007 needs to be present in the gsm modem This is true for all phones bought during phase 1 in the online shop. However, I currently don't really know what firmware version was present in the GTA01Bv4 that we sent to phase 0. 2) the suspend code probably still needs to correctly configure the RTS/CTS lines (i.e. put them in GPIO mode, and set them to their desired "don't send any more characters" level) So in this case, any data from the GSM modem will wake up the cpu for processing of that data. The GSM modem has some internal buffer (I don't know how big right now) that should be sufficient for buffering the data until the CPU is alive. This also means that gsmd will eventually have to re-program the GSM modem to make sure only relevant unsolicited response codes are sent during suspend. You usually don't want a signal level change to cause a CPU wake up, only things like incoming message / call. As indicated, more details on the soon to be created public wiki page Cheers, -- - Harald Welte <[EMAIL PROTECTED]> http://openmoko.org/ ============================================================================ Software for the world's first truly open Free Software mobile phone
