Open Source Telephony
 help / color / mirror / Atom feed
From: Martin Chaplet <m.chaplet@kerlink.fr>
To: ofono@ofono.org
Subject: Re: Add Support for Sierra MC73xx
Date: Fri, 29 Apr 2016 17:38:08 +0200	[thread overview]
Message-ID: <57237FE0.2050701@kerlink.fr> (raw)
In-Reply-To: <57237A03.6000807@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 9637 bytes --]

Hi Denis,

Thanks for your quick reply !

On 29/04/2016 17:13, Denis Kenzior wrote:
> Hi Martin,
>
> On 04/29/2016 08:08 AM, Martin Chaplet wrote:
>> Hi everybody,
>>
>>
>> I'm trying to use MC7304 chip with ofono (yes, exactly like Dirk Meul
>> few months ago).
>>
>> It's a QMI-interfaced GSM.
>> I've used Bjørn Mork's patches and with a little hack in setup_sierra
>> (forcing qmi device name), the modem is "detected" and initialized.
>> ... But the "gprs" feature is not detected !
>>
>> I'm a newbie on ofono project ... Can anyone can explain me how the
>> features detection is done please ?
>>
>> FYI, Please find below ofono debug log :
>>
>>
>> ofonod[1110]: src/modem.c:ofono_modem_create() name: (null), type:
>> sierra
>> ofonod[1110]: plugins/udevng.c:setup_sierra()
>> /sys/devices/soc0/soc.0/2100000.aips-bus/2184000.usb/ci_hdrc.0/usb1/1-1
>> ofonod[1110]: plugins/udevng.c:setup_sierra() /dev/ttyUSB0 255/255/255
>> 00 (null)
>> ofonod[1110]: plugins/udevng.c:setup_sierra() /dev/ttyUSB1 255/0/0 02
>> (null)
>> ofonod[1110]: plugins/udevng.c:setup_sierra() /dev/ttyUSB2 255/0/0 03
>> (null)
>> ofonod[1110]: plugins/udevng.c:setup_sierra() wwan0 255/255/255 08
>> (null)
>> ofonod[1110]: plugins/udevng.c:setup_sierra() wwan1 255/255/255 0a
>> (null)
>> ofonod[1110]: plugins/udevng.c:setup_sierra() wwan2 255/255/255 0b
>> (null)
>
> If this is a QMI card, then setup_sierra isn't the right place for
> this detection.  It should likely be setup_gobi.

Yes, you're right. It came from Bjørn Mork's patches who did this patch :

https://lists.ofono.org/pipermail/ofono/2013-February/014239.html

The "gobi" driver is plugged "manually" by ofono_modem_set_driver function

This card is mainly QMI but also have Diag, NMEA and AT interfaces
(ttyUSB). I think that's why he did it in setup_sierra.


>
>> ofonod[1110]: src/modem.c:ofono_modem_set_driver() type: gobi
>> ofonod[1110]: plugins/udevng.c:setup_sierra() modem=/dev/ttyUSB2
>> app=(null) net=wwan0 diag=/dev/ttyUSB0 qmi=/dev/cdc-wdm1
>> ofonod[1110]: src/modem.c:set_modem_property() modem 0x20d4d28 property
>> Device
>> ofonod[1110]: src/modem.c:set_modem_property() modem 0x20d4d28 property
>> Modem
>> ofonod[1110]: src/modem.c:set_modem_property() modem 0x20d4d28
>> property App
>> ofonod[1110]: src/modem.c:set_modem_property() modem 0x20d4d28
>> property Diag
>> ofonod[1110]: src/modem.c:set_modem_property() modem 0x20d4d28 property
>> NetworkInterface
>> ofonod[1110]: src/modem.c:ofono_modem_register() 0x20d4d28
>> ofonod[1110]: plugins/gobi.c:gobi_probe() 0x20d4d28
>> ofonod[1110]: src/modem.c:emit_modem_added() 0x20d4d28
>> ofonod[1110]: src/modem.c:call_modemwatches() 0x20d4d28 added:1
>> ofonod[1110]: plugins/smart-messaging.c:modem_watch() modem: 0x20d4d28,
>> added: 1
>> ofonod[1110]: plugins/push-notification.c:modem_watch() modem:
>> 0x20d4d28, added: 1
>> ofonod[1110]: plugins/gobi.c:gobi_enable() 0x20d4d28
>> ofonod[1110]: src/modem.c:get_modem_property() modem 0x20d4d28 property
>> Device
>> ofonod[1110]: plugins/gobi.c:discover_cb()
>> ofonod[1110]: plugins/gobi.c:discover_cb() WDS 1.36
>> ofonod[1110]: plugins/gobi.c:discover_cb() DMS 1.14
>> ofonod[1110]: plugins/gobi.c:discover_cb() NAS 1.25
>> ofonod[1110]: plugins/gobi.c:discover_cb() QOS 1.3
>> ofonod[1110]: plugins/gobi.c:discover_cb() WMS 1.10
>> ofonod[1110]: plugins/gobi.c:discover_cb() PDS 1.0
>> ofonod[1110]: plugins/gobi.c:discover_cb() AUTH 1.2
>> ofonod[1110]: plugins/gobi.c:discover_cb() AT 1.2
>> ofonod[1110]: plugins/gobi.c:discover_cb() VOICE 2.1
>> ofonod[1110]: plugins/gobi.c:discover_cb() CAT 2.16
>> ofonod[1110]: plugins/gobi.c:discover_cb() UIM 1.25
>> ofonod[1110]: plugins/gobi.c:discover_cb() PBM 1.4
>> ofonod[1110]: plugins/gobi.c:discover_cb() SAR 1.0
>> ofonod[1110]: plugins/gobi.c:discover_cb() (null) 1.0
>> ofonod[1110]: plugins/gobi.c:discover_cb() TS 1.0
>> ofonod[1110]: plugins/gobi.c:discover_cb() TMS 1.0
>> ofonod[1110]: plugins/gobi.c:discover_cb() (null) 1.10
>> ofonod[1110]: plugins/gobi.c:discover_cb() (null) 1.0
>> ofonod[1110]: plugins/gobi.c:discover_cb() (null) 1.0
>> ofonod[1110]: plugins/gobi.c:discover_cb() (null) 1.0
>> ofonod[1110]: plugins/gobi.c:discover_cb() (null) 1.0
>> ofonod[1110]: plugins/gobi.c:discover_cb() (null) 1.0
>> ofonod[1110]: plugins/gobi.c:discover_cb() (null) 1.0
>> ofonod[1110]: plugins/gobi.c:create_dms_cb()
>> ofonod[1110]: plugins/gobi.c:get_caps_cb()
>> ofonod[1110]: plugins/gobi.c:get_caps_cb() service capabilities 4
>> ofonod[1110]: plugins/gobi.c:get_caps_cb() sim supported 2
>> ofonod[1110]: plugins/gobi.c:get_caps_cb() radio = 4
>> ofonod[1110]: plugins/gobi.c:get_caps_cb() radio = 5
>> ofonod[1110]: plugins/gobi.c:get_caps_cb() radio = 8
>> ofonod[1110]: plugins/gobi.c:get_oper_mode_cb()
>> ofonod[1110]: src/modem.c:modem_change_state() old state: 0, new
>> state: 1
>> ofonod[1110]: plugins/gobi.c:gobi_pre_sim() 0x20d4d28
>> ofonod[1110]: drivers/qmimodem/devinfo.c:qmi_devinfo_probe()
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_sim_probe()
>> ofonod[1110]: drivers/qmimodem/voicecall.c:qmi_voicecall_probe()
>> ofonod[1110]:
>> drivers/qmimodem/location-reporting.c:qmi_location_reporting_probe()
>> ofonod[1110]: drivers/qmimodem/devinfo.c:create_dms_cb()
>> ofonod[1110]: drivers/qmimodem/devinfo.c:qmi_query_manufacturer()
>> ofonod[1110]: drivers/qmimodem/voicecall.c:create_voice_cb()
>> ofonod[1110]: drivers/qmimodem/sim.c:create_uim_cb()
>> ofonod[1110]: drivers/qmimodem/location-reporting.c:create_pds_cb()
>> ofonod[1110]: drivers/qmimodem/devinfo.c:string_cb()
>> ofonod[1110]: drivers/qmimodem/devinfo.c:qmi_query_model()
>> ofonod[1110]: drivers/qmimodem/sim.c:event_registration_cb()
>> ofonod[1110]: drivers/qmimodem/sim.c:event_registration_cb() event mask
>> 0x0003
>> ofonod[1110]: drivers/qmimodem/location-reporting.c:set_event_cb()
>> ofonod[1110]: drivers/qmimodem/devinfo.c:string_cb()
>> ofonod[1110]: drivers/qmimodem/devinfo.c:qmi_query_revision()
>> ofonod[1110]: drivers/qmimodem/sim.c:get_card_status_cb()
>> ofonod[1110]: src/sim.c:ofono_sim_add_state_watch() 0x20d9aa0
>> ofonod[1110]: src/sim.c:ofono_sim_add_state_watch() 0x20d9aa0
>> ofonod[1110]: src/sim.c:ofono_sim_add_state_watch() 0x20d9aa0
>> ofonod[1110]: drivers/qmimodem/sim.c:get_card_status_cb()
>> ofono_sim_register OK
>> ofonod[1110]: drivers/qmimodem/sim.c:get_card_status_cb() exit func
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_attributes() file id
>> 0x6fb7 path len 0
>> ofonod[1110]: drivers/qmimodem/devinfo.c:string_cb()
>> ofonod[1110]: drivers/qmimodem/devinfo.c:qmi_query_serial()
>> ofonod[1110]: drivers/qmimodem/sim.c:get_file_attributes_cb()
>> ofonod[1110]: src/voicecall.c:ecc_g2_read_cb() 0
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_attributes() file id
>> 0x6fb7 path len 0
>> ofonod[1110]: drivers/qmimodem/devinfo.c:get_ids_cb()
>> ofonod[1110]: drivers/qmimodem/sim.c:get_file_attributes_cb()
>> ofonod[1110]: src/voicecall.c:ecc_g3_read_cb() 0
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_attributes() file id
>> 0x2fe2 path len 0
>> ofonod[1110]: drivers/qmimodem/sim.c:get_file_attributes_cb()
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_transparent() file id
>> 0x2fe2 path len 0
>> ofonod[1110]: drivers/qmimodem/sim.c:read_generic_cb()
>> ofonod[1110]: src/simfs.c:sim_fs_op_read_block_cb() bufoff: 0, dataoff:
>> 0, tocopy: 10
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_attributes() file id
>> 0x6f05 path len 0
>> ofonod[1110]: drivers/qmimodem/sim.c:get_file_attributes_cb()
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_attributes() file id
>> 0x2f05 path len 0
>> ofonod[1110]: drivers/qmimodem/sim.c:get_file_attributes_cb()
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_transparent() file id
>> 0x2f05 path len 0
>> ofonod[1110]: drivers/qmimodem/sim.c:read_generic_cb()
>> ofonod[1110]: src/simfs.c:sim_fs_op_read_block_cb() bufoff: 0, dataoff:
>> 0, tocopy: 10
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_query_passwd_state() passwd
>> state 0
>> ofonod[1110]: src/sim.c:sim_pin_query_cb() sim->pin_type: 0, pin_type: 0
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_query_pin_retries() passwd
>> state 0
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_attributes() file id
>> 0x6fae path len 0
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_attributes() file id
>> 0x6fad path len 0
>> ofonod[1110]: drivers/qmimodem/sim.c:get_file_attributes_cb()
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_attributes() file id
>> 0x6f16 path len 0
>> ofonod[1110]: drivers/qmimodem/sim.c:get_file_attributes_cb()
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_attributes() file id
>> 0x6f38 path len 0
>> ofonod[1110]: drivers/qmimodem/sim.c:get_file_attributes_cb()
>> ofonod[1110]: drivers/qmimodem/sim.c:qmi_read_transparent() file id
>> 0x6f07 path len 0
>> ofonod[1110]: drivers/qmimodem/sim.c:read_generic_cb()
>> ofonod[1110]: Unable to read IMSI, emergency calls only
>
> Your modem doesn't seem to want to read anything from the SIM.  So
> that is why your gprs isn't showing up.
>
> Do you have a SIM in there or a PIN set?


OK, so I understand that Data feature is detected by scanning SIM
capabilities + chip capabilities (UMTS, LTE, ...)
Am I right ?

My SIM doesn't have PIN and I can use Standard QMI tools (libqmi) to
bring up a connection.
I will so investigate around SIM QMI requests / replies.

> Regards,
> -Denis
>
Thanks for your help,
Regards,

Martin

[-- Attachment #2: attachment.html --]
[-- Type: text/html, Size: 13566 bytes --]

  reply	other threads:[~2016-04-29 15:38 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-29 13:08 Add Support for Sierra MC73xx Martin Chaplet
2016-04-29 15:13 ` Denis Kenzior
2016-04-29 15:38   ` Martin Chaplet [this message]
2016-04-29 15:44     ` Denis Kenzior
2016-04-29 15:53       ` Martin Chaplet
2016-04-29 16:01         ` Denis Kenzior
2016-04-29 16:46           ` Martin Chaplet
2016-04-29 17:15             ` Martin Chaplet

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=57237FE0.2050701@kerlink.fr \
    --to=m.chaplet@kerlink.fr \
    --cc=ofono@ofono.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox