All of lore.kernel.org
 help / color / mirror / Atom feed
* Interface between LTE devices and Linux
@ 2018-02-08 17:10 jjDaNiMoTh
  2018-02-08 17:18 ` Greg KH
  2018-02-13 13:21 ` Jeffrey Walton
  0 siblings, 2 replies; 6+ messages in thread
From: jjDaNiMoTh @ 2018-02-08 17:10 UTC (permalink / raw)
  To: kernelnewbies

Hello everyone,

There is an example of LTE netdevice in the Linux source tree?

In particular, I would like to know if there is any device driver that
implements the layers required by the 3GPP standard. I imagine that it
should exist something since Android is communicating over LTE, but I can't
find any reference. What I fear more is that everything related to LTE is
inside the closed device firmware, and data is sent from the TC layer into
this black-box firmware through a sort of API. In this case, it would be
wonderful to know where, exactly, this API is used, to try to understand
what the firmware is doing.

Thank you!!

-- 
Stay open, be free.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20180208/ffc55b12/attachment.html>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Interface between LTE devices and Linux
  2018-02-08 17:10 Interface between LTE devices and Linux jjDaNiMoTh
@ 2018-02-08 17:18 ` Greg KH
  2018-02-13  7:59   ` Nuno Sá
  2018-02-13 13:21 ` Jeffrey Walton
  1 sibling, 1 reply; 6+ messages in thread
From: Greg KH @ 2018-02-08 17:18 UTC (permalink / raw)
  To: kernelnewbies

On Thu, Feb 08, 2018 at 06:10:59PM +0100, jjDaNiMoTh wrote:
> Hello everyone,
> 
> There is an example of LTE netdevice in the Linux source tree?
> 
> In particular, I would like to know if there is any device driver that
> implements the layers required by the 3GPP standard. I imagine that it
> should exist something since Android is communicating over LTE, but I can't
> find any reference.

That communication happens usually through a "dumb" serial-like
connection to the LTE modem.  All of the modem commands are handled in
userspace, the kernel doesn't care about anything relating to this at
all (and it really shouldn't).

> What I fear more is that everything related to LTE is inside the
> closed device firmware, and data is sent from the TC layer into this
> black-box firmware through a sort of API. In this case, it would be
> wonderful to know where, exactly, this API is used, to try to
> understand what the firmware is doing.

Look at the Android AOSP images for the location for most of this logic,
there should be a Telephony HAL somewhere in there that handles the
heavy-lifting of all of this logic.

Good luck!

greg k-h

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Interface between LTE devices and Linux
  2018-02-08 17:18 ` Greg KH
@ 2018-02-13  7:59   ` Nuno Sá
  0 siblings, 0 replies; 6+ messages in thread
From: Nuno Sá @ 2018-02-13  7:59 UTC (permalink / raw)
  To: kernelnewbies

On 02/08/2018 06:18 PM, Greg KH wrote:
> On Thu, Feb 08, 2018 at 06:10:59PM +0100, jjDaNiMoTh wrote:
>> Hello everyone,
>>
>> There is an example of LTE netdevice in the Linux source tree?
>>
>> In particular, I would like to know if there is any device driver that
>> implements the layers required by the 3GPP standard. I imagine that it
>> should exist something since Android is communicating over LTE, but I can't
>> find any reference.
> 
> That communication happens usually through a "dumb" serial-like
> connection to the LTE modem.  All of the modem commands are handled in
> userspace, the kernel doesn't care about anything relating to this at
> all (and it really shouldn't).
> 
>> What I fear more is that everything related to LTE is inside the
>> closed device firmware, and data is sent from the TC layer into this
>> black-box firmware through a sort of API. In this case, it would be
>> wonderful to know where, exactly, this API is used, to try to
>> understand what the firmware is doing.
> 
> Look at the Android AOSP images for the location for most of this logic,
> there should be a Telephony HAL somewhere in there that handles the
> heavy-lifting of all of this logic.
> 

As far as i know in AOSP you can look into hardware/ril for the modem
integration. There is a generic RIL daemon which interacts with a RIL
library which is vendor specific and is responsible to configure the
hardware. And that can be a problem because the vendor software most
likely is not open source but you may always give a look to the daemon
which is part of the

> Good luck!
> 
> greg k-h
> 
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Interface between LTE devices and Linux
  2018-02-08 17:10 Interface between LTE devices and Linux jjDaNiMoTh
  2018-02-08 17:18 ` Greg KH
@ 2018-02-13 13:21 ` Jeffrey Walton
  2018-02-13 15:30   ` Bjørn Mork
  1 sibling, 1 reply; 6+ messages in thread
From: Jeffrey Walton @ 2018-02-13 13:21 UTC (permalink / raw)
  To: kernelnewbies

On Thu, Feb 8, 2018 at 12:10 PM, jjDaNiMoTh <jjdanimoth@gmail.com> wrote:
> Hello everyone,
>
> There is an example of LTE netdevice in the Linux source tree?
>
> In particular, I would like to know if there is any device driver that
> implements the layers required by the 3GPP standard. I imagine that it
> should exist something since Android is communicating over LTE, but I can't
> find any reference. What I fear more is that everything related to LTE is
> inside the closed device firmware, and data is sent from the TC layer into
> this black-box firmware through a sort of API. In this case, it would be
> wonderful to know where, exactly, this API is used, to try to understand
> what the firmware is doing.

In addition to GKH's answer, what I have seen...

Some Android code to talk to the radio is written in plain java, like
https://chromium.googlesource.com/android_tools/+/18728e9dd5dd66d4f5edf1b792e77e2b544a1cb0/sdk/sources/android-19/com/android/internal/telephony/CommandsInterface.java
.

The GNU Radio folks may have relevant information. I seem to recall
they work from userland and not the kernel, though.

Jeff

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Interface between LTE devices and Linux
  2018-02-13 13:21 ` Jeffrey Walton
@ 2018-02-13 15:30   ` Bjørn Mork
  2018-02-13 16:07     ` Jeffrey Walton
  0 siblings, 1 reply; 6+ messages in thread
From: Bjørn Mork @ 2018-02-13 15:30 UTC (permalink / raw)
  To: kernelnewbies

Jeffrey Walton <noloader@gmail.com> writes:

> In addition to GKH's answer, what I have seen...
>
> Some Android code to talk to the radio is written in plain java, like
> https://chromium.googlesource.com/android_tools/+/18728e9dd5dd66d4f5edf1b792e77e2b544a1cb0/sdk/sources/android-19/com/android/internal/telephony/CommandsInterface.java
 .

Well, that only talks to the RIL so it is pretty high up the stack.  If
you want the software that actually implement the 3GPP stuff, then you'd
either give Qualcomm your right arm and your first born or you look at
what the Osmocom guys are doing.

The RIL is closed source too, and it will only use some high level
protocol like QMI or AT commands to send requests to the modem firmware
anyway. You can skip both the java code and the closed source RIL and go
straight for oFono or ModeManager if you want stuff at that layer.  But
I understood the original request as wanting to see more detail at the
actual radio layer.  That's difficult.  But you might get some useful
info out of the debug interfaces.


Bj?rn

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Interface between LTE devices and Linux
  2018-02-13 15:30   ` Bjørn Mork
@ 2018-02-13 16:07     ` Jeffrey Walton
  0 siblings, 0 replies; 6+ messages in thread
From: Jeffrey Walton @ 2018-02-13 16:07 UTC (permalink / raw)
  To: kernelnewbies

On Tue, Feb 13, 2018 at 10:30 AM, Bj?rn Mork <bjorn@mork.no> wrote:
> Jeffrey Walton <noloader@gmail.com> writes:
>
>> In addition to GKH's answer, what I have seen...
>>
>> Some Android code to talk to the radio is written in plain java, like
>> https://chromium.googlesource.com/android_tools/+/18728e9dd5dd66d4f5edf1b792e77e2b544a1cb0/sdk/sources/android-19/com/android/internal/telephony/CommandsInterface.java
>  .
> Well, that only talks to the RIL so it is pretty high up the stack.  If
> you want the software that actually implement the 3GPP stuff, then you'd
> either give Qualcomm your right arm and your first born or you look at
> what the Osmocom guys are doing.

Oh, OK. I thought the AT commands were sent directly to the chip and
the chip parsed/decoded them. But I have to admit I've never gone
below the AT commands being sent to the radio.

Jeff

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2018-02-13 16:07 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-08 17:10 Interface between LTE devices and Linux jjDaNiMoTh
2018-02-08 17:18 ` Greg KH
2018-02-13  7:59   ` Nuno Sá
2018-02-13 13:21 ` Jeffrey Walton
2018-02-13 15:30   ` Bjørn Mork
2018-02-13 16:07     ` Jeffrey Walton

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.