Bug 11921 - Release header files for cellular modem and for libisi
: Release header files for cellular modem and for libisi
Status: UNCONFIRMED
Product: Licensing Change Requests
General
: unspecified
: N900 Maemo
: Unspecified enhancement with 1 vote (vote)
: ---
Assigned To: unassigned
: licensing-requests
:
:
:
:
  Show dependency tree
 
Reported: 2011-02-11 16:27 UTC by Jonathan Wilson
Modified: 2011-02-15 17:59 UTC (History)
0 users (show)

See Also:


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description Jonathan Wilson (reporter) 2011-02-11 16:27:41 UTC
Which component(s) or source packages is the licensing change request about?
cmt-firmware-rx51 and libisi
Which area is the component in (if you know)? (See the openness progress
reports at
http://mer-project.blogspot.com/2010/02/mapping-openness-of-maemo-50-pr11-and.html)
Telephony/Cellular modem interface
What is the current licensing of the component?
proprietary
What licensing would you like it to be and why? Examples can be:
I want the header files used to talk to the cellular modem on the N900. Header
files exist at www.wirelessmodemapi.com but I want the ones specifically for
the N900.
There used to exist packages called cellmo-headers and cellmo-icpr82-headers
but those are gone now.
I am interested in the whole cell modem but specifically the GPS/LCS stuff (as
well as anything else required to talk to the GPS chip on the N900)
License can be any license that allows linking into your own code (and using
with MeeGo)
I would also like to see the header files required to talk to the libisi
library released as this would make it easier for people writing code that
needs to talk to the cellular modem.

Which project(s) would benefit from this licensing change request?
GPS on MeeGo would benefit by being able to use a GPSD backend for GPS instead
of needing to use a bunch of ported-over Maemo libraries that pull in a lot of
baggage.
Other projects wanting to talk to the cellular modem would also benefit from
having a set of verified header files guaranteed to match exactly to the N900
cellular modem.
Comment 1 Jonathan Wilson (reporter) 2011-02-11 17:27:42 UTC
btw I can confirm that the GPS/LCS information in the docs on
www.wirelessmodemapi.com is definatly not a match for the N900 (based on my
examinations of liblas)

Also, if there is GPS or cellular modem related information that can't be
disclosed for whatever reasons (3rd party NDAs, risk of causing problems,
whatever) then its OK to omit that information and just provide the rest of the
information.
Comment 2 Andre Klapper maemo.org 2011-02-11 17:35:48 UTC
(Also see http://talk.maemo.org/showpost.php?p=784443&postcount=32 )
Comment 3 Jonathan Wilson (reporter) 2011-02-15 17:56:40 UTC
Some further spelunking with Google turned up a "Nokia QT Maemo SDK" that
contains a set of cellular modem header files. However, its clear that not all
of those header files match the N900 cell modem, nor is it clear whether we can
use either the headers in the QT SDK or the header files from
www.wirelesmodemapi.com in our own code (on Maemo, on MeeGo, on FreeSmartPhone
or otherwise).

Querying the cell modem and asking for the versions of the different servers
gets this information
 <[PN_CALL (1) v007.020]: OK, id = 0xF0>
 <[PN_SMS (2) v004.001]: OK, id = 0xF0>
 <[PN_SS (6) v009.002]: OK, id = 0xF0>
 <[PN_SIM_AUTH (8) v009.004]: OK, id = 0xF0>
 <[PN_SIM (9) v-01.-01]: OK, id = 0xF0>
 <[PN_NETWORK (10) v014.002]: OK, id = 0xF0>
 <[PN_MTC (21) v018.000]: OK, id = 0x0>
 <[PN_CSD (22) v009.012]: OK, id = 0xF0>
 <[PN_ENERGY (23) v008.026]: OK, id = 0xF0>
 <[PN_TIME (25) v016.006]: OK, id = 0xF0>
 <[PN_PHONE_INFO (27) v008.005]: OK, id = 0xF0>
 <[PN_PERMAMENT_DATA (35) v005.001]: OK, id = 0xF0>
 <[PN_GPDS (49) v017.026]: OK, id = 0xF0>
 <[PN_GSS (50) v007.000]: OK, id = 0xF0>
 <[PN_SELFTEST (53) v027.004]: OK, id = 0xF0>
 <[PN_MON (56) v025.011]: OK, id = 0xF0>
 <[PN_GSM_CS_PH (60) v001.001]: OK, id = 0xF0>
 <[PN_NVD (67) v001.017]: OK, id = 0xF0>
 <[PN_APDU (72) v-01.-01]: OK, id = 0xF0>
 <[PN_SIMLOCK (83) v002.000]: OK, id = 0xF0>
 <[PN_LOCATION (84) v036.002]: OK, id = 0xF0>
 <[PN_ATK (90) v005.002]: OK, id = 0xF0>
 <[PN_ADL (111) v003.005]: OK, id = 0xF0>
 <[PN_HARDCORE (175) v000.004]: OK, id = 0xF0>
 <[PN_WRAN (180) v001.012]: OK, id = 0xF0>
 <[PN_PREFIX (224) v-01.-01]: OK, id = 0xF0>
 <[PN_DSP_CORE (230) v008.006]: OK, id = 0xF0>
 <[PN_DSP_COMMON_TEST (236) v000.124]: OK, id = 0xF0>
 <[PN_WCDMA_DSP_CS (237) v-01.-01]: OK, id = 0xF0>
 <[PN_WCDMA_DSP_TEST (238) v002.002]: OK, id = 0xF0>
 <[PN_GSM_DSP_TEST (241) v007.003]: OK, id = 0xF0>
 <[PN_DSP_AUDIO (243) v025.000]: OK, id = 0xF0>

Analysis shows that the following servers seem to match the headers in the
Nokia QT SDK (i.e. the version the cell modem claims matches the one that the
header in the QT SDK claims to support)
PN_SIM_AUTH
PN_NETWORK
PN_MTC
PN_ENERGY
PN_TIME
PN_PHONE_INFO
PN_PERMAMENT_DATA
PN_GSS
PN_SELFTEST
PN_MON
PN_NVD
PN_SIMLOCK
PN_LOCATION

The docs from www.wirelessmodemapi.com claim to support the correct versions
for these servers if you set the correct values for CSD_ISI_VERSION_blah and
etc
PN_CSD
PN_SMS
PN_SS

The following servers report versions that are not in any header file I have or
can find:
PN_CALL
PN_SIM
PN_GPDS
PN_GSM_CS_PH
PN_APDU
PN_ATK
PN_ADL
PN_HARDCORE
PN_WRAN
PN_PREFIX
PN_DSP_CORE
PN_DSP_COMMON_TEST
PN_WCDMA_DSP_CS
PN_WCDMA_DSP_TEST
PN_GSM_DSP_TEST
PN_DSP_AUDIO

What is needed at a minimum is permission to use and redistribute the headers
from the Nokia QT SDK and from www.wirelessmodemapi.com (and the information
contained therein). Ideally what is desired is for a release of headers
(preferably with documentation like the headers on www.wirelessmodemapi.com)
that exactly match the N900 cell modem firmware.
Comment 4 Jonathan Wilson (reporter) 2011-02-15 17:59:54 UTC
FYI, I can confirm that the pn_sms_isi.h file in the Nokia QT SDK does NOT
match the N900 cell modem (the srv_sms_wm_isi.h file from
www.wirelessmodemapi.com does match if you set SMS_ISI_VERSION_Z to 4 and
SMS_ISI_VERSION_Y to 1)]