- } else if (strcmp(key, KEY_LLS_CU_MAC) == 0) {
- sscanf(value, "%02x:%02x:%02x:%02x:%02x:%02x", (uint32_t*)&config->lls_cu_addr.addr_bytes[0],
- (uint32_t*)&config->lls_cu_addr.addr_bytes[1],
- (uint32_t*)&config->lls_cu_addr.addr_bytes[2],
- (uint32_t*)&config->lls_cu_addr.addr_bytes[3],
- (uint32_t*)&config->lls_cu_addr.addr_bytes[4],
- (uint32_t*)&config->lls_cu_addr.addr_bytes[5]);
-
- printf("lls-CU MAC address: %02X:%02X:%02X:%02X:%02X:%02X\n",
- config->lls_cu_addr.addr_bytes[0],
- config->lls_cu_addr.addr_bytes[1],
- config->lls_cu_addr.addr_bytes[2],
- config->lls_cu_addr.addr_bytes[3],
- config->lls_cu_addr.addr_bytes[4],
- config->lls_cu_addr.addr_bytes[5]);
-
- } else if (strcmp(key, KEY_RU_MAC) == 0) {
- sscanf(value, "%02x:%02x:%02x:%02x:%02x:%02x", (uint32_t*)&config->ru_addr.addr_bytes[0],
- (uint32_t*)&config->ru_addr.addr_bytes[1],
- (uint32_t*)&config->ru_addr.addr_bytes[2],
- (uint32_t*)&config->ru_addr.addr_bytes[3],
- (uint32_t*)&config->ru_addr.addr_bytes[4],
- (uint32_t*)&config->ru_addr.addr_bytes[5]);
-
- printf("RU MAC address: %02X:%02X:%02X:%02X:%02X:%02X\n",
- config->ru_addr.addr_bytes[0],
- config->ru_addr.addr_bytes[1],
- config->ru_addr.addr_bytes[2],
- config->ru_addr.addr_bytes[3],
- config->ru_addr.addr_bytes[4],
- config->ru_addr.addr_bytes[5]);
- } else if (strcmp(key, KEY_FILE_AxC0) == 0) {
- strncpy(&config->ant_file[0][0], value, strlen(value));
- printf("ant0: %s\n",config->ant_file[0]);
- } else if (strcmp(key, KEY_FILE_AxC1) == 0) {
- strncpy(&config->ant_file[1][0], value, strlen(value));
- printf("ant1: %s\n",config->ant_file[1]);
- } else if (strcmp(key, KEY_FILE_AxC2) == 0) {
- strncpy(&config->ant_file[2][0], value, strlen(value));
- printf("ant2: %s\n",config->ant_file[2]);
- } else if (strcmp(key, KEY_FILE_AxC3) == 0) {
- strncpy(&config->ant_file[3][0], value, strlen(value));
- printf("ant3: %s\n",config->ant_file[3]);
- } else if (strcmp(key, KEY_FILE_AxC4) == 0) {
- strncpy(&config->ant_file[4][0], value, strlen(value));
- printf("ant4: %s\n",config->ant_file[4]);
- } else if (strcmp(key, KEY_FILE_AxC5) == 0) {
- strncpy(&config->ant_file[5][0], value, strlen(value));
- printf("ant5: %s\n",config->ant_file[5]);
- } else if (strcmp(key, KEY_FILE_AxC6) == 0) {
- strncpy(&config->ant_file[6][0], value, strlen(value));
- printf("ant6: %s\n",config->ant_file[6]);
- } else if (strcmp(key, KEY_FILE_AxC7) == 0) {
- strncpy(&config->ant_file[7][0], value, strlen(value));
- printf("ant7: %s\n",config->ant_file[7]);
- } else if (strcmp(key, KEY_FILE_AxC8) == 0) {
- strncpy(&config->ant_file[8][0], value, strlen(value));
- printf("ant8: %s\n",config->ant_file[8]);
- } else if (strcmp(key, KEY_FILE_AxC9) == 0) {
- strncpy(&config->ant_file[9][0], value, strlen(value));
- printf("ant9: %s\n",config->ant_file[9]);
- } else if (strcmp(key, KEY_FILE_AxC10) == 0) {
- strncpy(&config->ant_file[10][0], value, strlen(value));
- printf("ant10: %s\n",config->ant_file[10]);
- } else if (strcmp(key, KEY_FILE_AxC11) == 0) {
- strncpy(&config->ant_file[11][0], value, strlen(value));
- printf("ant11: %s\n",config->ant_file[11]);
- } else if (strcmp(key, KEY_FILE_AxC12) == 0) {
- strncpy(&config->ant_file[12][0], value, strlen(value));
- printf("ant12: %s\n",config->ant_file[12]);
- } else if (strcmp(key, KEY_FILE_AxC13) == 0) {
- strncpy(&config->ant_file[13][0], value, strlen(value));
- printf("ant13: %s\n",config->ant_file[13]);
- } else if (strcmp(key, KEY_FILE_AxC14) == 0) {
- strncpy(&config->ant_file[14][0], value, strlen(value));
- printf("ant14: %s\n",config->ant_file[14]);
- } else if (strcmp(key, KEY_FILE_AxC15) == 0) {
- strncpy(&config->ant_file[15][0], value, strlen(value));
- printf("ant15: %s\n",config->ant_file[15]);
+ } else if (strcmp(key, KEY_COMPRESSION) == 0) {
+ config->compression = atoi(value);
+ } else if (strcmp(key, KEY_COMP_TYPE) == 0) {
+ config->CompHdrType = atoi(value);
+ } else if (strcmp(key, KEY_MTU_SIZE) == 0) {
+ config->mtu = atoi(value);
+ printf("mtu %d\n", config->mtu);
+ } else if (strcmp(key, KEY_IO_SLEEP) == 0) {
+ config->io_sleep = atoi(value);
+ printf("io_sleep %d \n", config->io_sleep);
+ } else if (strcmp(key, KEY_IO_CORE) == 0) {
+ config->io_core = atoi(value);
+ printf("io_core %d [core id]\n", config->io_core);
+ } else if (strcmp(key, KEY_IO_WORKER) == 0) {
+ config->io_worker = strtoll(value, NULL, 0);
+ printf("io_worker 0x%lx [mask]\n", config->io_worker);
+ } else if (strcmp(key, KEY_SYSTEM_CORE) == 0) {
+ config->system_core = atoi(value);
+ printf("system core %d [core id]\n", config->system_core);
+ } else if (strcmp(key, KEY_IOVA_MODE) == 0) {
+ config->iova_mode = atoi(value);
+ printf("iova_mode %d\n", config->iova_mode);
+ } else if (strcmp(key, KEY_INSTANCE_ID) == 0) {
+ config->instance_id = atoi(value);
+ printf("instance_id %d\n", config->instance_id);
+ } else if (strncmp(key, KEY_DU_MAC, strlen(KEY_DU_MAC)) == 0) {
+ unsigned int vf_num = 0;
+ sscanf(key,"duMac%02u",&vf_num);
+ if (vf_num >= XRAN_VF_MAX) {
+ printf("duMac%d exceeds max antenna supported\n",vf_num);
+ } else {
+ printf("duMac%d: %s\n",vf_num, value);
+ sscanf(value, "%02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx", (uint8_t*)&config->o_du_addr[vf_num].addr_bytes[0],
+ (uint8_t*)&config->o_du_addr[vf_num].addr_bytes[1],
+ (uint8_t*)&config->o_du_addr[vf_num].addr_bytes[2],
+ (uint8_t*)&config->o_du_addr[vf_num].addr_bytes[3],
+ (uint8_t*)&config->o_du_addr[vf_num].addr_bytes[4],
+ (uint8_t*)&config->o_du_addr[vf_num].addr_bytes[5]);
+
+ printf("[vf %d]O-DU MAC address: %02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx\n",
+ vf_num,
+ config->o_du_addr[vf_num].addr_bytes[0],
+ config->o_du_addr[vf_num].addr_bytes[1],
+ config->o_du_addr[vf_num].addr_bytes[2],
+ config->o_du_addr[vf_num].addr_bytes[3],
+ config->o_du_addr[vf_num].addr_bytes[4],
+ config->o_du_addr[vf_num].addr_bytes[5]);
+ }
+ } else if (strncmp(key, KEY_RU_MAC, strlen(KEY_RU_MAC)) == 0) {
+ unsigned int vf_num = 0;
+ sscanf(key,"ruMac%02u",&vf_num);
+ if (vf_num >= XRAN_VF_MAX) {
+ printf("ruMac%d exceeds max antenna supported\n",vf_num);
+ } else {
+ printf("ruMac%d: %s\n",vf_num, value);
+
+ sscanf(value, "%02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx", (uint8_t*)&config->o_ru_addr[vf_num].addr_bytes[0],
+ (uint8_t*)&config->o_ru_addr[vf_num].addr_bytes[1],
+ (uint8_t*)&config->o_ru_addr[vf_num].addr_bytes[2],
+ (uint8_t*)&config->o_ru_addr[vf_num].addr_bytes[3],
+ (uint8_t*)&config->o_ru_addr[vf_num].addr_bytes[4],
+ (uint8_t*)&config->o_ru_addr[vf_num].addr_bytes[5]);
+
+ printf("[vf %d]RU MAC address: %02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx\n",
+ vf_num,
+ config->o_ru_addr[vf_num].addr_bytes[0],
+ config->o_ru_addr[vf_num].addr_bytes[1],
+ config->o_ru_addr[vf_num].addr_bytes[2],
+ config->o_ru_addr[vf_num].addr_bytes[3],
+ config->o_ru_addr[vf_num].addr_bytes[4],
+ config->o_ru_addr[vf_num].addr_bytes[5]);
+ }
+ } else if (strcmp(key, KEY_FILE_NUMSLOTS) == 0) {
+ config->numSlots = atoi(value);
+ printf("numSlots: %d\n",config->numSlots);
+ }else if (strncmp(key, KEY_FILE_AxC, strlen(KEY_FILE_AxC)) == 0) {
+ unsigned int ant_num = 0;
+ sscanf(key,"antC%02u",&ant_num);
+ if (ant_num >= MAX_ANT_CARRIER_SUPPORTED) {
+ printf("antC%d exceeds max antenna supported\n",ant_num);
+ } else {
+ strncpy(&config->ant_file[ant_num][0], value, strlen(value));
+ printf("antC%d: %s\n",ant_num, config->ant_file[ant_num]);
+ }
+ } else if (strncmp(key, KEY_FILE_DLBFWUE, strlen(KEY_FILE_DLBFWUE)) == 0) {
+ unsigned int ue_num = 0;
+ sscanf(key,"DlBfwUe%02u",&ue_num);
+ if (ue_num >= MAX_ANT_CARRIER_SUPPORTED) {
+ printf("DlBfwUe%d exceeds max streams supported\n",ue_num);
+ } else {
+ strncpy(&config->dl_bfw_file[ue_num][0], value, strlen(value));
+ printf("DlBfwUe%d: %s\n",ue_num, config->dl_bfw_file[ue_num]);
+ }
+ }else if (strncmp(key, KEY_FILE_ULBFWUE, strlen(KEY_FILE_ULBFWUE)) == 0) {
+ unsigned int ue_num = 0;
+ sscanf(key,"UlBfwUe%02u",&ue_num);
+ if (ue_num >= MAX_ANT_CARRIER_SUPPORTED) {
+ printf("UlBfwUe%d exceeds max streams supported\n",ue_num);
+ } else {
+ strncpy(&config->ul_bfw_file[ue_num][0], value, strlen(value));
+ printf("UlBfwUe%d: %s\n",ue_num, config->ul_bfw_file[ue_num]);
+ }
+ }else if (strncmp(key, KEY_FILE_ULSRS, strlen(KEY_FILE_ULSRS)) == 0) {
+ unsigned int srs_ant = 0;
+ sscanf(key,"antSrsC%02u",&srs_ant);
+ if (srs_ant >= MAX_ANT_CARRIER_SUPPORTED_CAT_B) {
+ printf("antSrsC%d exceeds max ant elemnets supported [%d]\n", srs_ant, MAX_ANT_CARRIER_SUPPORTED_CAT_B);
+ } else {
+ strncpy(&config->ul_srs_file[srs_ant][0], value, strlen(value));
+ printf("antSrsC%d: %s\n",srs_ant, config->ul_srs_file[srs_ant]);
+ }