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
_______________________________________________
ofono mailing list
[email protected]
https://lists.ofono.org/mailman/listinfo/ofono

Reply via email to