From: Denis Kenzior <denkenz@gmail.com>
To: ofono@ofono.org
Subject: Re: Motorola motmdm support
Date: Sun, 30 Dec 2018 13:13:24 -0600 [thread overview]
Message-ID: <ea54fd64-d45f-7324-c5a9-6044ff34bb23@gmail.com> (raw)
In-Reply-To: <20181230181419.GE6707@atomide.com>
[-- Attachment #1: Type: text/plain, Size: 3311 bytes --]
Hi Tony,
>> It might make your job easier if the oFono driver itself invoked the
>> necessary magic to setup the multiplexer and handed off the devices as
>> needed. We used to have a driver like this, but not sure if it ever made it
>> upstream.
>
> Playing with ldattach and user space handling earlier this year did
> not work out good.. It needed app specific handling for the Motorola
> custom layer on top of ts 27.010, custom handling for all the devices
> such as GNSS and audio mixer, and did not work well with device
> specific power management. So let's not go back to that :)
You still need someone to send AT+CMUX, no? And you most likely need to
integrate power management into the telephony stack anyway. As I
mentioned, we had a driver like this that worked just fine. oFono ended
up using a user space MUX since most of the quality of life improvements
to n_gsm came in much later. If I was writing a new MUXed driver these
days, I'd seriously consider using GSMIOC_SETCONF and GSMIOC_ENABLE_NET.
How does the audio mixer handling work? Just some AT commands to setup
the mixing parameters, or something more involved?
Some other things to consider:
- oFono expects / is designed to expect exclusive access to all the tty
ports
- GNSS/GPS is intended to be handled via oFono LocationReporting API. I
would recommend integrating this as intended...
>
>>> One more question: I guess I'll need to implement this... Is there
>>> another example of driver doing AT commands but on multiple file
>>> descriptors? I could really use something to look at as a template..
>>
>> Any driver for a USB based device would be setup this way. Each AT port is
>> a separate file, e.g. ttyUSB1, ttyACM2, etc. The discovery is done via
>> udev. See plugins/mbm.c or plugins/ublox.c or plugins/telit.c, etc.
>>
>> Assuming you don't want to setup the multiplexer in oFono, then the only
>> tricky part is the port setup. udevng.c setup_serial_modem() assumes a
>> single port, so you might need to add some extra logic to setup the ports
>> via udev rules.
>
> We have network status data at /dev/motmdm1, outgoing SMS PDU device at
> /dev/motmdm3, incoming SMS PDU device at /dev/motmdm9 and so on for each
> ts 27.010 channel. At least incoming and outgoing SMS PDU devices could
> be considered as separate modems if that makes things easier?
No, that just makes things more difficult.
>
>> Alternatively, simply use a config file specific to your driver. See for
>> example how plugins/phonesim.c does this.
>>
>> Or, if it is an extremely platform specific driver, then just hardcode it.
>> E.g. like plugins/calypso.c, which only works for the Freerunner.
>
> Just adding one more thing to consider: Looks like the modem handling for
> SMS PDU's needs to be specific to the nework. First the network needs to
> be detected, and then the GSM or CDMA handlers need to be used for sending
> and receiving SMS. After that things should get standard.. Looks like
> ofono has parsing for the different type SMS PDUs in src/*sms*.c :)
>
There's no real functional CDMA support in oFono anyhow. Given that
most CDMA networks are about to be switched off, I don't know why you
would bother?
Regards,
-Denis
next parent reply other threads:[~2018-12-30 19:13 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20181230181419.GE6707@atomide.com>
2018-12-30 19:13 ` Denis Kenzior [this message]
[not found] <20190107152908.GD5544@atomide.com>
2019-01-07 17:41 ` Motorola motmdm support Pavel Machek
[not found] <20181231222329.GI6707@atomide.com>
2019-01-02 12:15 ` Pavel Machek
[not found] <20181230212253.GG6707@atomide.com>
2018-12-30 22:06 ` Denis Kenzior
2018-12-30 22:33 ` Pavel Machek
2018-12-31 21:54 ` Pavel Machek
[not found] <20181230202454.GF6707@atomide.com>
2018-12-30 20:46 ` Denis Kenzior
2018-12-29 9:49 Pavel Machek
2018-12-29 21:16 ` Denis Kenzior
2018-12-29 22:08 ` Pavel Machek
2018-12-30 0:14 ` Denis Kenzior
2018-12-30 22:39 ` Pavel Machek
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=ea54fd64-d45f-7324-c5a9-6044ff34bb23@gmail.com \
--to=denkenz@gmail.com \
--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