Hi Denis
This breaks the NetworkMonitor API since the signature for that particular
property is documented as a 'byte'. From what I recall this
value has a
range
of 0..63 ?
I was confused about the value of TimingAdvance. In the description of
RIL_LTE_SignalStrength_v8, the range of timingAdvance is 0 to 0x7FFFFFFE
and 0x7FFFFFFF is invalid.
But, you are correct. In the 3GPP 36.321 section 6.1.3.5, Ta value is from
0 to 63.
These should also be documented in doc/networkmonitor-api.txt.
Okay, I'll update and upload re-patch with description in
doc/networkmonitor-api.txt.
Best Regards,
JongSeok
2020년 7월 21일 (화) 오후 10:55, Denis Kenzior <denkenz(a)gmail.xn--com>-4f21ay07k 작성:
> Hi JongSeok,
> On 7/20/20 3:40 AM, JongSeok Won wrote:
> > ---
> > include/netmon.h | 3 +++
> > src/netmon.c | 24 +++++++++++++++++++++++-
> > 2 files changed, 26 insertions(+), 1 deletion(-)
>
> > diff --git a/include/netmon.h b/include/netmon.h
> > index a99d6ca9..53f9d393 100644
> > --- a/include/netmon.h
> > +++ b/include/netmon.h
> > @@ -72,6 +72,9 @@ enum ofono_netmon_info {
> > OFONO_NETMON_INFO_EARFCN, /* int */
> > OFONO_NETMON_INFO_EBAND, /* int */
> > OFONO_NETMON_INFO_CQI, /* int */
> > + OFONO_NETMON_INFO_PCI, /* int */
> > + OFONO_NETMON_INFO_TAC, /* int */
> > + OFONO_NETMON_INFO_SNR, /* int */
> > OFONO_NETMON_INFO_INVALID,
> > };
>
> > diff --git a/src/netmon.c b/src/netmon.c
> > index 9eacb3ca..320c8425 100644
> > --- a/src/netmon.c
> > +++ b/src/netmon.c
> > @@ -138,7 +138,7 @@ static void
> netmon_cell_info_dict_append(DBusMessageIter *dict,
> > intval = va_arg(*arglist, int);
>
> > CELL_INFO_DICT_APPEND(dict,
"TimingAdvance",
> > - intval, uint8_t, DBUS_TYPE_BYTE);
> > + intval, uint32_t,
> DBUS_TYPE_UINT32);
> This breaks the NetworkMonitor API since the signature for
that particular
property is documented as a 'byte'. From what I recall this
value has a
range
of 0..63 ?
> > break;
>
> > case OFONO_NETMON_INFO_PSC:
> > @@ -213,6 +213,28 @@ static void
> netmon_cell_info_dict_append(DBusMessageIter *dict,
> > intval, uint8_t, DBUS_TYPE_BYTE);
> > break;
>
> > + case OFONO_NETMON_INFO_PCI:
> > + intval = va_arg(*arglist, int);
> > +
> > + CELL_INFO_DICT_APPEND(dict, "PhysicalCellId",
> > + intval, uint16_t,
> DBUS_TYPE_UINT16);
> > + break;
> > +
> > + case OFONO_NETMON_INFO_TAC:
> > + intval = va_arg(*arglist, int);
> > +
> > + CELL_INFO_DICT_APPEND(dict, "TrackingAreaCode",
> > + intval, uint16_t,
> DBUS_TYPE_UINT16);
> > + break;
> > +
> > + case OFONO_NETMON_INFO_SNR:
> > + intval = va_arg(*arglist, int);
> > +
> > + ofono_dbus_dict_append(dict,
"SingalToNoiseRatio",
> > + DBUS_TYPE_INT32, &intval);
> > +
> > + break;
> > +
> > case OFONO_NETMON_INFO_INVALID:
> > break;
> > }
>
> These should also be documented
in doc/networkmonitor-api.txt.
> Regards,
> -Denis