Skip to content

Commit

Permalink
[NRC7292 HM] v1.3.4 rev12
Browse files Browse the repository at this point in the history
- enhancement: only the BD file of version 0 is valid for the target board of flash version 65535
- bugfix: 1M center LO frequency mode triggers self_config failure on JP country code
- bugfix: fail to keep duty cycle for downlink traffic
  • Loading branch information
Aaron J. Lee committed Oct 28, 2022
1 parent 31733ee commit 1cf0c3e
Show file tree
Hide file tree
Showing 40 changed files with 64 additions and 54 deletions.
3 changes: 2 additions & 1 deletion README.md
Expand Up @@ -2,6 +2,7 @@

## Notice
### Release roadmap
- v1.3.4_rev12 (2022.10.28)
- v1.3.4_rev11 (2022.10.14)
- v1.3.4_rev10 (2022.10.05)
- v1.3.4_rev09 (2022.09.29)
Expand All @@ -20,7 +21,7 @@
- v1.3.0 (2020.05.30)

### Latest release
- [NRC7292_SW_PKG_v1.3.4_rev11](https://github.com/newracom/nrc7292_sw_pkg/releases/tag/v1.3.4_rev11)
- [NRC7292_SW_PKG_v1.3.4_rev12](https://github.com/newracom/nrc7292_sw_pkg/releases/tag/v1.3.4_rev12)

### Release package contents
- host: NRC7292 software package for global regulatory domains
Expand Down
Binary file not shown.
2 changes: 1 addition & 1 deletion package/host/VERSION-SDK.txt
@@ -1,4 +1,4 @@
VERSION_MAJOR 1
VERSION_MINOR 3
VERSION_REVISION 4
rev11
rev12
2 changes: 1 addition & 1 deletion package/host/evk/binary/VERSION-SDK.txt
@@ -1,4 +1,4 @@
VERSION_MAJOR 1
VERSION_MINOR 3
VERSION_REVISION 4
rev11
rev12
Binary file modified package/host/evk/binary/nrc.ko
Binary file not shown.
Binary file modified package/host/evk/binary/nrc7292_cspi.bin
Binary file not shown.
2 changes: 1 addition & 1 deletion package/host/evk/sw_pkg/nrc_pkg/VERSION-SDK.txt
@@ -1,4 +1,4 @@
VERSION_MAJOR 1
VERSION_MINOR 3
VERSION_REVISION 4
rev11
rev12
Binary file modified package/host/evk/sw_pkg/nrc_pkg/sw/driver/nrc.ko
Binary file not shown.
Binary file modified package/host/evk/sw_pkg/nrc_pkg/sw/firmware/nrc7292_cspi.bin
Binary file not shown.
3 changes: 2 additions & 1 deletion package/host/src/nrc/Makefile
Expand Up @@ -33,7 +33,8 @@ ccflags-y := \
-DDEBUG \
-DBUILD_UMAC_DRIVER \
-DCONFIG_NRC_HIF_CSPI \
-DENABLE_DYNAMIC_PS
-DENABLE_DYNAMIC_PS \
-DCONFIG_MAC80211_MESH
#-DENABLE_HW_RESET
#-DCONFIG_NRC_HIF_SDIO
#-DCONFIG_NRC_HIF_DEBUG \
Expand Down
10 changes: 5 additions & 5 deletions package/host/src/nrc/nrc-bd.c
Expand Up @@ -672,9 +672,9 @@ struct wim_bd_param * nrc_read_bd_tx_pwr(struct nrc *nw, uint8_t *country_code)
//find target version from board data file and compare it with one getting from serial flash
target_version = nw->fwinfo.hw_version;

// if a value of h/w version is invalid, then set it to 0xFFFF
if(target_version > 0x7FF && target_version != 0xFFFF)
target_version = 0xFFFF;
// if a value of h/w version is invalid, then set it to 0
if(target_version > 0x7FF)
target_version = 0;

for(i = 0; i < bd->num_data_groups; i++)
{
Expand All @@ -689,7 +689,7 @@ struct wim_bd_param * nrc_read_bd_tx_pwr(struct nrc *nw, uint8_t *country_code)
(bd->data[7 + len + 4*i]<<8));

// Add a condition if target version is initial value(65535)
if((target_version == bd_sel->hw_version) || (target_version == 0xFFFF)) {
if(target_version == bd_sel->hw_version) {
nrc_dbg(NRC_DBG_STATE, "target version is matched(%u : %u)",
target_version, bd_sel->hw_version);

Expand Down Expand Up @@ -771,7 +771,7 @@ int nrc_check_bd(void)
#if KERNEL_VERSION(5, 10, 0) <= NRC_TARGET_KERNEL_VERSION
rc = vfs_getattr(&filp->f_path, stat, STATX_SIZE, AT_STATX_SYNC_AS_STAT);
if(rc != 0){
printk("vfs_getattr Error");
nrc_common_dbg("vfs_getattr Error");
}
length = (size_t)stat->size;
#else
Expand Down
6 changes: 4 additions & 2 deletions package/host/src/nrc/nrc-debug.h
Expand Up @@ -30,11 +30,13 @@ enum NRC_DEBUG_MASK {
NRC_DBG_PS = 6,
NRC_DBG_STATS = 7,
NRC_DBG_STATE = 8,
NRC_DBG_BD = 9,
NRC_DBG_COMMON = 10,
};
#define NRC_DBG_MASK_ANY (0xFFFFFFFF)

#define DEFAULT_NRC_DBG_MASK_ALL (NRC_DBG_MASK_ANY)
#define DEFAULT_NRC_DBG_MASK (BIT(NRC_DBG_PS) | BIT(NRC_DBG_STATE))
#define DEFAULT_NRC_DBG_MASK (BIT(NRC_DBG_PS) | BIT(NRC_DBG_STATE) | BIT(NRC_DBG_COMMON))

#define NRC_DBG_PRINT_FRAME 0 /* print trx frames for debug */

Expand Down Expand Up @@ -78,5 +80,5 @@ void nrc_exit_debugfs(void);
#define nrc_mac_dbg(fmt, ...) nrc_dbg(NRC_DBG_MAC, fmt, ##__VA_ARGS__)
#define nrc_ps_dbg(fmt, ...) nrc_dbg(NRC_DBG_PS, fmt, ##__VA_ARGS__)
#define nrc_stats_dbg(fmt, ...) nrc_dbg(NRC_DBG_STATS, fmt, ##__VA_ARGS__)

#define nrc_common_dbg(fmt, ...) nrc_dbg(NRC_DBG_COMMON, fmt, ##__VA_ARGS__)
#endif
12 changes: 6 additions & 6 deletions package/host/src/nrc/nrc-mac80211.c
Expand Up @@ -1571,11 +1571,11 @@ void nrc_mac_bss_info_changed(struct ieee80211_hw *hw,
if (changed & BSS_CHANGED_TXPOWER) {
int txpower = info->txpower;
uint16_t txpower_type = info->txpower_type;
nrc_mac_dbg("%s(changed:%s[PW=%d TYPE=%s])", __func__,
nrc_common_dbg("%s(changed:%s[PW=%d TYPE=%s])", __func__,
"BSS_CHANGED_TXPOWER", txpower,
txpower_type == TXPWR_LIMIT ? "limit" : txpower_type ? "fixed" : "auto");
#ifdef CONFIG_SUPPORT_IW_TXPWR
#ifdef CONFIG_SUPPORT_BD
#if 0 //def CONFIG_SUPPORT_BD
/**
* cli_app cannot be used on openWRT system. so use "iw phy nrc80211 set txpower"
* But, txpower could be limited smaller than expected by user in this cse
Expand All @@ -1584,12 +1584,12 @@ void nrc_mac_bss_info_changed(struct ieee80211_hw *hw,
* Then, the actual txpower will be assigned as the value in bd file finally.
*/
if (txpower_type < TXPWR_FIXED && txpower < 24) {
nrc_mac_dbg("%s max txpower was changed (%d -> 30)",__func__, txpower);
nrc_common_dbg("%s max txpower was changed (%d -> 30)",__func__, txpower);
txpower = 24;
}
#endif /* CONFIG_SUPPORT_BD */
if (txpower < 1 || txpower > 30) {
nrc_mac_dbg("%s invalid txpowr (%d)", __func__, txpower);
nrc_common_dbg("%s invalid txpowr (%d)", __func__, txpower);
} else {
u32 p = txpower_type;
p = (p << 16) | txpower;
Expand Down Expand Up @@ -2983,10 +2983,10 @@ int nrc_reg_notifier(struct wiphy *wiphy,
}

if(bd_param) {
nrc_dbg(NRC_DBG_MAC,"type %04X length %04X checksum %04X target_ver %04X",
nrc_dbg(NRC_DBG_BD,"type %04X length %04X checksum %04X target_ver %04X",
bd_param->type, bd_param->length, bd_param->checksum, bd_param->hw_version);
for(i=0; i < bd_param->length - 4;) {
nrc_dbg(NRC_DBG_MAC,"%02d %02d %02d %02d %02d %02d %02d %02d %02d %02d %02d %02d",
nrc_dbg(NRC_DBG_BD,"%02d %02d %02d %02d %02d %02d %02d %02d %02d %02d %02d %02d",
(bd_param->value[i]), (bd_param->value[i+1]), (bd_param->value[i+2]),
(bd_param->value[i+3]), (bd_param->value[i+4]), (bd_param->value[i+5]),
(bd_param->value[i+6]), (bd_param->value[i+7]), (bd_param->value[i+8]),
Expand Down
Binary file not shown.
2 changes: 1 addition & 1 deletion package/host_kr_mic/VERSION-SDK.txt
@@ -1,4 +1,4 @@
VERSION_MAJOR 1
VERSION_MINOR 3
VERSION_REVISION 4
rev11 - KR MIC
rev12 - KR MIC
2 changes: 1 addition & 1 deletion package/host_kr_mic/evk/binary/VERSION-SDK.txt
@@ -1,4 +1,4 @@
VERSION_MAJOR 1
VERSION_MINOR 3
VERSION_REVISION 4
rev11 - KR MIC
rev12 - KR MIC
Binary file modified package/host_kr_mic/evk/binary/nrc.ko
Binary file not shown.
Binary file modified package/host_kr_mic/evk/binary/nrc7292_cspi.bin
Binary file not shown.
2 changes: 1 addition & 1 deletion package/host_kr_mic/evk/sw_pkg/nrc_pkg/VERSION-SDK.txt
@@ -1,4 +1,4 @@
VERSION_MAJOR 1
VERSION_MINOR 3
VERSION_REVISION 4
rev11 - KR MIC
rev12 - KR MIC
Binary file modified package/host_kr_mic/evk/sw_pkg/nrc_pkg/sw/driver/nrc.ko
Binary file not shown.
Binary file not shown.
2 changes: 1 addition & 1 deletion package/host_kr_mic/src/cli_app/Makefile
Expand Up @@ -27,7 +27,7 @@ lib$(TARGET).so: $(LIB_SRCS)
@$(CC) -shared -o $@ $(LIB_OBJS)
@$(RM) *.o

$(TARGET): $(EXE_SRCS)
$(TARGET): $(EXE_SRCS) lib$(TARGET).a
@echo "$@"
@$(CC) $^ -o $@ $(CFLAGS) $(LFLAGS)

Expand Down
3 changes: 2 additions & 1 deletion package/host_kr_mic/src/nrc/Makefile
Expand Up @@ -33,7 +33,8 @@ ccflags-y := \
-DDEBUG \
-DBUILD_UMAC_DRIVER \
-DCONFIG_NRC_HIF_CSPI \
-DENABLE_DYNAMIC_PS
-DENABLE_DYNAMIC_PS \
-DCONFIG_MAC80211_MESH
#-DENABLE_HW_RESET
#-DCONFIG_NRC_HIF_SDIO
#-DCONFIG_NRC_HIF_DEBUG \
Expand Down
10 changes: 5 additions & 5 deletions package/host_kr_mic/src/nrc/nrc-bd.c
Expand Up @@ -672,9 +672,9 @@ struct wim_bd_param * nrc_read_bd_tx_pwr(struct nrc *nw, uint8_t *country_code)
//find target version from board data file and compare it with one getting from serial flash
target_version = nw->fwinfo.hw_version;

// if a value of h/w version is invalid, then set it to 0xFFFF
if(target_version > 0x7FF && target_version != 0xFFFF)
target_version = 0xFFFF;
// if a value of h/w version is invalid, then set it to 0
if(target_version > 0x7FF)
target_version = 0;

for(i = 0; i < bd->num_data_groups; i++)
{
Expand All @@ -689,7 +689,7 @@ struct wim_bd_param * nrc_read_bd_tx_pwr(struct nrc *nw, uint8_t *country_code)
(bd->data[7 + len + 4*i]<<8));

// Add a condition if target version is initial value(65535)
if((target_version == bd_sel->hw_version) || (target_version == 0xFFFF)) {
if(target_version == bd_sel->hw_version) {
nrc_dbg(NRC_DBG_STATE, "target version is matched(%u : %u)",
target_version, bd_sel->hw_version);

Expand Down Expand Up @@ -771,7 +771,7 @@ int nrc_check_bd(void)
#if KERNEL_VERSION(5, 10, 0) <= NRC_TARGET_KERNEL_VERSION
rc = vfs_getattr(&filp->f_path, stat, STATX_SIZE, AT_STATX_SYNC_AS_STAT);
if(rc != 0){
printk("vfs_getattr Error");
nrc_common_dbg("vfs_getattr Error");
}
length = (size_t)stat->size;
#else
Expand Down
6 changes: 4 additions & 2 deletions package/host_kr_mic/src/nrc/nrc-debug.h
Expand Up @@ -30,11 +30,13 @@ enum NRC_DEBUG_MASK {
NRC_DBG_PS = 6,
NRC_DBG_STATS = 7,
NRC_DBG_STATE = 8,
NRC_DBG_BD = 9,
NRC_DBG_COMMON = 10,
};
#define NRC_DBG_MASK_ANY (0xFFFFFFFF)

#define DEFAULT_NRC_DBG_MASK_ALL (NRC_DBG_MASK_ANY)
#define DEFAULT_NRC_DBG_MASK (BIT(NRC_DBG_PS) | BIT(NRC_DBG_STATE))
#define DEFAULT_NRC_DBG_MASK (BIT(NRC_DBG_PS) | BIT(NRC_DBG_STATE) | BIT(NRC_DBG_COMMON))

#define NRC_DBG_PRINT_FRAME 0 /* print trx frames for debug */

Expand Down Expand Up @@ -78,5 +80,5 @@ void nrc_exit_debugfs(void);
#define nrc_mac_dbg(fmt, ...) nrc_dbg(NRC_DBG_MAC, fmt, ##__VA_ARGS__)
#define nrc_ps_dbg(fmt, ...) nrc_dbg(NRC_DBG_PS, fmt, ##__VA_ARGS__)
#define nrc_stats_dbg(fmt, ...) nrc_dbg(NRC_DBG_STATS, fmt, ##__VA_ARGS__)

#define nrc_common_dbg(fmt, ...) nrc_dbg(NRC_DBG_COMMON, fmt, ##__VA_ARGS__)
#endif
12 changes: 6 additions & 6 deletions package/host_kr_mic/src/nrc/nrc-mac80211.c
Expand Up @@ -1571,11 +1571,11 @@ void nrc_mac_bss_info_changed(struct ieee80211_hw *hw,
if (changed & BSS_CHANGED_TXPOWER) {
int txpower = info->txpower;
uint16_t txpower_type = info->txpower_type;
nrc_mac_dbg("%s(changed:%s[PW=%d TYPE=%s])", __func__,
nrc_common_dbg("%s(changed:%s[PW=%d TYPE=%s])", __func__,
"BSS_CHANGED_TXPOWER", txpower,
txpower_type == TXPWR_LIMIT ? "limit" : txpower_type ? "fixed" : "auto");
#ifdef CONFIG_SUPPORT_IW_TXPWR
#ifdef CONFIG_SUPPORT_BD
#if 0 //def CONFIG_SUPPORT_BD
/**
* cli_app cannot be used on openWRT system. so use "iw phy nrc80211 set txpower"
* But, txpower could be limited smaller than expected by user in this cse
Expand All @@ -1584,12 +1584,12 @@ void nrc_mac_bss_info_changed(struct ieee80211_hw *hw,
* Then, the actual txpower will be assigned as the value in bd file finally.
*/
if (txpower_type < TXPWR_FIXED && txpower < 24) {
nrc_mac_dbg("%s max txpower was changed (%d -> 30)",__func__, txpower);
nrc_common_dbg("%s max txpower was changed (%d -> 30)",__func__, txpower);
txpower = 24;
}
#endif /* CONFIG_SUPPORT_BD */
if (txpower < 1 || txpower > 30) {
nrc_mac_dbg("%s invalid txpowr (%d)", __func__, txpower);
nrc_common_dbg("%s invalid txpowr (%d)", __func__, txpower);
} else {
u32 p = txpower_type;
p = (p << 16) | txpower;
Expand Down Expand Up @@ -2983,10 +2983,10 @@ int nrc_reg_notifier(struct wiphy *wiphy,
}

if(bd_param) {
nrc_dbg(NRC_DBG_MAC,"type %04X length %04X checksum %04X target_ver %04X",
nrc_dbg(NRC_DBG_BD,"type %04X length %04X checksum %04X target_ver %04X",
bd_param->type, bd_param->length, bd_param->checksum, bd_param->hw_version);
for(i=0; i < bd_param->length - 4;) {
nrc_dbg(NRC_DBG_MAC,"%02d %02d %02d %02d %02d %02d %02d %02d %02d %02d %02d %02d",
nrc_dbg(NRC_DBG_BD,"%02d %02d %02d %02d %02d %02d %02d %02d %02d %02d %02d %02d",
(bd_param->value[i]), (bd_param->value[i+1]), (bd_param->value[i+2]),
(bd_param->value[i+3]), (bd_param->value[i+4]), (bd_param->value[i+5]),
(bd_param->value[i+6]), (bd_param->value[i+7]), (bd_param->value[i+8]),
Expand Down
Binary file not shown.
2 changes: 1 addition & 1 deletion package/host_kr_usn/VERSION-SDK.txt
@@ -1,4 +1,4 @@
VERSION_MAJOR 1
VERSION_MINOR 3
VERSION_REVISION 4
rev11 - KR USN
rev12 - KR USN
2 changes: 1 addition & 1 deletion package/host_kr_usn/evk/binary/VERSION-SDK.txt
@@ -1,4 +1,4 @@
VERSION_MAJOR 1
VERSION_MINOR 3
VERSION_REVISION 4
rev11 - KR USN
rev12 - KR USN
Binary file modified package/host_kr_usn/evk/binary/nrc.ko
Binary file not shown.
Binary file modified package/host_kr_usn/evk/binary/nrc7292_cspi.bin
Binary file not shown.
2 changes: 1 addition & 1 deletion package/host_kr_usn/evk/sw_pkg/nrc_pkg/VERSION-SDK.txt
@@ -1,4 +1,4 @@
VERSION_MAJOR 1
VERSION_MINOR 3
VERSION_REVISION 4
rev11 - KR USN
rev12 - KR USN
Binary file modified package/host_kr_usn/evk/sw_pkg/nrc_pkg/sw/driver/nrc.ko
Binary file not shown.
Binary file modified package/host_kr_usn/evk/sw_pkg/nrc_pkg/sw/firmware/nrc7292_cspi.bin
Binary file not shown.
2 changes: 1 addition & 1 deletion package/host_kr_usn/src/cli_app/Makefile
Expand Up @@ -27,7 +27,7 @@ lib$(TARGET).so: $(LIB_SRCS)
@$(CC) -shared -o $@ $(LIB_OBJS)
@$(RM) *.o

$(TARGET): $(EXE_SRCS)
$(TARGET): $(EXE_SRCS) lib$(TARGET).a
@echo "$@"
@$(CC) $^ -o $@ $(CFLAGS) $(LFLAGS)

Expand Down
3 changes: 2 additions & 1 deletion package/host_kr_usn/src/nrc/Makefile
Expand Up @@ -33,7 +33,8 @@ ccflags-y := \
-DDEBUG \
-DBUILD_UMAC_DRIVER \
-DCONFIG_NRC_HIF_CSPI \
-DENABLE_DYNAMIC_PS
-DENABLE_DYNAMIC_PS \
-DCONFIG_MAC80211_MESH
#-DENABLE_HW_RESET
#-DCONFIG_NRC_HIF_SDIO
#-DCONFIG_NRC_HIF_DEBUG \
Expand Down
10 changes: 5 additions & 5 deletions package/host_kr_usn/src/nrc/nrc-bd.c
Expand Up @@ -672,9 +672,9 @@ struct wim_bd_param * nrc_read_bd_tx_pwr(struct nrc *nw, uint8_t *country_code)
//find target version from board data file and compare it with one getting from serial flash
target_version = nw->fwinfo.hw_version;

// if a value of h/w version is invalid, then set it to 0xFFFF
if(target_version > 0x7FF && target_version != 0xFFFF)
target_version = 0xFFFF;
// if a value of h/w version is invalid, then set it to 0
if(target_version > 0x7FF)
target_version = 0;

for(i = 0; i < bd->num_data_groups; i++)
{
Expand All @@ -689,7 +689,7 @@ struct wim_bd_param * nrc_read_bd_tx_pwr(struct nrc *nw, uint8_t *country_code)
(bd->data[7 + len + 4*i]<<8));

// Add a condition if target version is initial value(65535)
if((target_version == bd_sel->hw_version) || (target_version == 0xFFFF)) {
if(target_version == bd_sel->hw_version) {
nrc_dbg(NRC_DBG_STATE, "target version is matched(%u : %u)",
target_version, bd_sel->hw_version);

Expand Down Expand Up @@ -771,7 +771,7 @@ int nrc_check_bd(void)
#if KERNEL_VERSION(5, 10, 0) <= NRC_TARGET_KERNEL_VERSION
rc = vfs_getattr(&filp->f_path, stat, STATX_SIZE, AT_STATX_SYNC_AS_STAT);
if(rc != 0){
printk("vfs_getattr Error");
nrc_common_dbg("vfs_getattr Error");
}
length = (size_t)stat->size;
#else
Expand Down
6 changes: 4 additions & 2 deletions package/host_kr_usn/src/nrc/nrc-debug.h
Expand Up @@ -30,11 +30,13 @@ enum NRC_DEBUG_MASK {
NRC_DBG_PS = 6,
NRC_DBG_STATS = 7,
NRC_DBG_STATE = 8,
NRC_DBG_BD = 9,
NRC_DBG_COMMON = 10,
};
#define NRC_DBG_MASK_ANY (0xFFFFFFFF)

#define DEFAULT_NRC_DBG_MASK_ALL (NRC_DBG_MASK_ANY)
#define DEFAULT_NRC_DBG_MASK (BIT(NRC_DBG_PS) | BIT(NRC_DBG_STATE))
#define DEFAULT_NRC_DBG_MASK (BIT(NRC_DBG_PS) | BIT(NRC_DBG_STATE) | BIT(NRC_DBG_COMMON))

#define NRC_DBG_PRINT_FRAME 0 /* print trx frames for debug */

Expand Down Expand Up @@ -78,5 +80,5 @@ void nrc_exit_debugfs(void);
#define nrc_mac_dbg(fmt, ...) nrc_dbg(NRC_DBG_MAC, fmt, ##__VA_ARGS__)
#define nrc_ps_dbg(fmt, ...) nrc_dbg(NRC_DBG_PS, fmt, ##__VA_ARGS__)
#define nrc_stats_dbg(fmt, ...) nrc_dbg(NRC_DBG_STATS, fmt, ##__VA_ARGS__)

#define nrc_common_dbg(fmt, ...) nrc_dbg(NRC_DBG_COMMON, fmt, ##__VA_ARGS__)
#endif

0 comments on commit 1cf0c3e

Please sign in to comment.