From: Denis Kenzior <denkenz-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
Cc: mpartap-hi6Y0CQ0nG0@public.gmane.org,
merlijn-tF0PIh4TN3odnm+yROfE0A@public.gmane.org,
sre-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
nekit1000-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
ofono-bdc2hr5oBkPYtjvyW6yDsg@public.gmane.org,
linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.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-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
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 prev parent reply other threads:[~2018-12-30 19:13 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-29 9:49 Motorola motmdm support Pavel Machek
2018-12-29 21:16 ` Denis Kenzior
[not found] ` <e959006f-5f8d-8d25-b9d2-dbbcb6a5b073-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-12-29 22:08 ` Pavel Machek
2018-12-30 0:14 ` Denis Kenzior
[not found] ` <20181230181419.GE6707@atomide.com>
[not found] ` <20181230181419.GE6707-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2018-12-30 19:13 ` Denis Kenzior [this message]
[not found] ` <20181230202454.GF6707@atomide.com>
[not found] ` <20181230202454.GF6707-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2018-12-30 20:46 ` Denis Kenzior
[not found] ` <20181230212253.GG6707@atomide.com>
[not found] ` <20181230212253.GG6707-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2018-12-30 22:06 ` Denis Kenzior
[not found] ` <5950f965-effa-25ca-3533-de1b95923aa5-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2018-12-30 22:33 ` Pavel Machek
2018-12-31 21:54 ` Pavel Machek
[not found] ` <20181231222329.GI6707@atomide.com>
[not found] ` <20181231222329.GI6707-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2019-01-02 12:15 ` Pavel Machek
[not found] ` <20190107152908.GD5544@atomide.com>
[not found] ` <20190107152908.GD5544-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2019-01-07 17:41 ` Pavel Machek
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-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
--cc=linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=merlijn-tF0PIh4TN3odnm+yROfE0A@public.gmane.org \
--cc=mpartap-hi6Y0CQ0nG0@public.gmane.org \
--cc=nekit1000-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=ofono-bdc2hr5oBkPYtjvyW6yDsg@public.gmane.org \
--cc=sre-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.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