Fix dev_info
Change-Id: If0239f3821c5ff984a35c43cb528f09eafcbf3e5
diff --git a/mbtk/mbtk_utils/device_info.c b/mbtk/mbtk_utils/device_info.c
index 73bc0d1..d107020 100755
--- a/mbtk/mbtk_utils/device_info.c
+++ b/mbtk/mbtk_utils/device_info.c
@@ -1,5 +1,6 @@
#include <string.h>
#include "mbtk_type.h"
+#include "mbtk_utils.h"
#ifdef MBTK_DEV_INFO_VERSION_2
#include "mbtk_device_v2.h"
@@ -23,6 +24,66 @@
}
}
+static char* net_support_str_get(uint32 net_support)
+{
+ static char net_str[100] = {0};
+
+ if(net_support & MBTK_NET_SUPPORT_2G) { // GSM
+ if(strlen(net_str) > 0) {
+ strcat(net_str, "/2G");
+ } else {
+ strcat(net_str, "2G");
+ }
+ }
+
+ if(net_support & MBTK_NET_SUPPORT_3G) { // WCDMA
+ if(strlen(net_str) > 0) {
+ strcat(net_str, "/3G");
+ } else {
+ strcat(net_str, "3G");
+ }
+ }
+
+ if(net_support & MBTK_NET_SUPPORT_4G) { // LTE
+ if(strlen(net_str) > 0) {
+ strcat(net_str, "/4G");
+ } else {
+ strcat(net_str, "4G");
+ }
+ }
+
+ if(net_support & MBTK_NET_SUPPORT_5G) { // NR
+ if(strlen(net_str) > 0) {
+ strcat(net_str, "/5G");
+ } else {
+ strcat(net_str, "5G");
+ }
+ }
+ return net_str;
+}
+
+static char* band_str_get(uint32 band, int index)
+{
+ int band_list[33] = {0};
+ int ret = mbtk_band_2_list(band, index, band_list);
+ if(ret > 0) {
+ static char buff[150] = {0};
+ memset(buff, 0, sizeof(buff));
+ int i = 0;
+ while(i < ret) {
+ if(strlen(buff) > 0) {
+ sprintf(buff + strlen(buff), "/b%d", band_list[i]);
+ } else {
+ sprintf(buff + strlen(buff), "b%d", band_list[i]);
+ }
+ i++;
+ }
+ return buff;
+ } else {
+ return "NON";
+ }
+}
+
int main(int argc, char *argv[])
{
mbtk_device_info_basic_t info_basic;
@@ -56,13 +117,18 @@
return -1;
}
+ printf("net_pref:%d\n", info_modem.net_pref);
+ printf("net_support:%s\n", net_support_str_get(info_modem.net_support));
printf("Band:%s\n", band_2_str(info_modem.band_area));
- printf("Band GSM:0x%08x\n", info_modem.band_gsm);
- printf("Band WCDMA:0x%08x\n", info_modem.band_wcdma);
- printf("Band TDLTE:0x%08x\n", info_modem.band_tdlte);
- printf("Band FDDLTE:0x%08x\n", info_modem.band_fddlte);
- printf("Band EXT_LTE:0x%08x\n", info_modem.band_lte_ext);
-
+ printf("Band GSM:0x%08x(%s)\n", info_modem.band_gsm, band_str_get(info_modem.band_gsm, 0));
+ printf("Band WCDMA:0x%08x(%s)\n", info_modem.band_wcdma, band_str_get(info_modem.band_wcdma, 0));
+ printf("Band TDLTE:0x%08x(%s)\n", info_modem.band_tdlte, band_str_get(info_modem.band_tdlte, 1));
+ printf("Band FDDLTE:0x%08x(%s)\n", info_modem.band_fddlte, band_str_get(info_modem.band_fddlte, 0));
+ printf("Band EXT_LTE:0x%08x(%s)\n", info_modem.band_lte_ext, band_str_get(info_modem.band_lte_ext, 0));
+ printf("Band NR_3:0x%08x(%s)\n", info_modem.band_nr_3, band_str_get(info_modem.band_nr_3, 3));
+ printf("Band NR_2:0x%08x(%s)\n", info_modem.band_nr_2, band_str_get(info_modem.band_nr_2, 2));
+ printf("Band NR_1:0x%08x(%s)\n", info_modem.band_nr_1, band_str_get(info_modem.band_nr_1, 1));
+ printf("Band NR_0:0x%08x(%s)\n", info_modem.band_nr_0, band_str_get(info_modem.band_nr_0, 0));
return 0;
}