From dd5730716ee855215869265f337478627f6b84a7 Mon Sep 17 00:00:00 2001 From: "lishuang.xie" Date: Fri, 5 Jan 2024 13:56:04 +0800 Subject: [PATCH] update Feature Enhancement#1557 into dev_ck_v2.1 1. rfic/ucp_rfic_cfg.json add options 2. rfic/src/main.c update --- rfic/src/main.c | 70 +++++++++++++++++++++++++++++++++--------- rfic/ucp_rfic_cfg.json | 16 +++++++--- 2 files changed, 68 insertions(+), 18 deletions(-) diff --git a/rfic/src/main.c b/rfic/src/main.c index 8ec5466..27cceef 100644 --- a/rfic/src/main.c +++ b/rfic/src/main.c @@ -29,11 +29,19 @@ typedef struct ucp_rfic_cfg_info { uint64_t txLo; uint64_t rxLo; - uint64_t bw; - uint16_t signalType; + uint64_t auxLo; uint16_t initAtt; uint16_t initGain; - uint16_t padding; + uint32_t u32padding; + uint64_t sampleRate; + uint64_t bw; + uint16_t antNumb; + uint16_t enFdd; + uint16_t enOrx; + uint16_t en204C; + uint16_t enUcpLog; + uint16_t u16padding; + uint32_t u32padding2; }ucp_rfic_cfg_info_t; #if 1 @@ -57,18 +65,32 @@ ucp_rfic_cfg_info_t rfic_get_cfg_info() item = xzJSON_GetObjectItem(root, "common"); config = xzJSON_GetObjectItem(item, "txLo"); - st_rfic_cfg.txLo = config->valuedouble; + st_rfic_cfg.txLo = config->valuedouble; config = xzJSON_GetObjectItem(item, "rxLo"); - st_rfic_cfg.rxLo = config->valuedouble; - config = xzJSON_GetObjectItem(item, "bw"); - st_rfic_cfg.bw = config->valuedouble; - config = xzJSON_GetObjectItem(item, "signalType"); - st_rfic_cfg.signalType = config->valueint; + st_rfic_cfg.rxLo = config->valuedouble; + config = xzJSON_GetObjectItem(item, "auxLo"); + st_rfic_cfg.auxLo = config->valuedouble; config = xzJSON_GetObjectItem(item, "initAtt"); st_rfic_cfg.initAtt = config->valueint; config = xzJSON_GetObjectItem(item, "initGain"); st_rfic_cfg.initGain = config->valueint; + item = xzJSON_GetObjectItem(root, "para"); + config = xzJSON_GetObjectItem(item, "sampleRate"); + st_rfic_cfg.sampleRate = config->valuedouble; + config = xzJSON_GetObjectItem(item, "bw"); + st_rfic_cfg.bw = config->valuedouble; + config = xzJSON_GetObjectItem(item, "antNumb"); + st_rfic_cfg.antNumb = config->valueint; + config = xzJSON_GetObjectItem(item, "enFdd"); + st_rfic_cfg.enFdd = config->valueint; + config = xzJSON_GetObjectItem(item, "enOrx"); + st_rfic_cfg.enOrx = config->valueint; + config = xzJSON_GetObjectItem(item, "en204C"); + st_rfic_cfg.en204C = config->valueint; + config = xzJSON_GetObjectItem(item, "enUcpLog"); + st_rfic_cfg.enUcpLog = config->valueint; + xzJSON_Delete(root); return st_rfic_cfg; @@ -133,17 +155,37 @@ int32_t main(int32_t argc, char* argvp[]) #if 1 st_rfic_cfg_info = rfic_get_cfg_info(); - printf("para: txLo:%ld, rxLo:%ld, bw:%ld, st:%d, initAtt:%d, initGain:%d\r\n", + printf("common: txLo:%ld, rxLo:%ld, auxLo:%ld, initAtt:%d, initGain:%d\r\n", st_rfic_cfg_info.txLo, st_rfic_cfg_info.rxLo, - st_rfic_cfg_info.bw, - st_rfic_cfg_info.signalType, + st_rfic_cfg_info.auxLo, st_rfic_cfg_info.initAtt, st_rfic_cfg_info.initGain); + + printf("para: sampleRate:%ld, bw:%ld, antNumb:%d, enFdd:%d, enOrx:%d, en204C:%d, enUcpLog:%d\r\n", + st_rfic_cfg_info.sampleRate, + st_rfic_cfg_info.bw, + st_rfic_cfg_info.antNumb, + st_rfic_cfg_info.enFdd, + st_rfic_cfg_info.enOrx, + st_rfic_cfg_info.en204C, + st_rfic_cfg_info.enUcpLog); #endif /* call jesd init function */ - UCP_API_RFIC_CellInit(st_rfic_cfg_info.signalType, st_rfic_cfg_info.bw); - UCP_API_RFIC_CellSetup(st_rfic_cfg_info.txLo, st_rfic_cfg_info.rxLo, st_rfic_cfg_info.initAtt, st_rfic_cfg_info.initGain); + UCP_API_RFIC_CellInit(st_rfic_cfg_info.sampleRate, + st_rfic_cfg_info.bw, + st_rfic_cfg_info.antNumb, + st_rfic_cfg_info.enFdd, + st_rfic_cfg_info.enOrx, + st_rfic_cfg_info.en204C, + st_rfic_cfg_info.enUcpLog); + + UCP_API_RFIC_CellSetup(st_rfic_cfg_info.txLo, + st_rfic_cfg_info.rxLo, + st_rfic_cfg_info.initAtt, + st_rfic_cfg_info.initGain, + st_rfic_cfg_info.auxLo, + st_rfic_cfg_info.enOrx); //UCP_API_RFIC_CellSetup(2575770000u, 2575770000u, 0); /* post sem */ diff --git a/rfic/ucp_rfic_cfg.json b/rfic/ucp_rfic_cfg.json index f20d4c0..28c689e 100644 --- a/rfic/ucp_rfic_cfg.json +++ b/rfic/ucp_rfic_cfg.json @@ -1,10 +1,18 @@ { "common": { - "txLo": 2575770000, - "rxLo": 2575770000, - "bw": 100000000, - "signalType": 0, + "txLo": 2566890000, + "rxLo": 2566890000, + "auxLo": 0, "initAtt": 0, "initGain": 255 + }, + "para": { + "sampleRate": 122880000, + "bw": 100000000, + "antNumb": 4, + "enFdd": 0, + "enOrx": 0, + "en204C": 0, + "enUcpLog": 0 } }