From 8ed1f4769d4a31bdb34137bed448cdbe34c86b4a Mon Sep 17 00:00:00 2001 From: luozheng <1732036298@qq.com> Date: Sat, 10 May 2025 10:27:05 +0800 Subject: [PATCH] =?utf8?q?XTS=E7=BC=96=E8=AF=91=E7=9B=B8=E5=85=B3=E6=96=87?= =?utf8?q?=E4=BB=B6=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- autobuild.sh | 10 ++ .../src/NetworkAndCallPresenter.cpp | 4 + .../config/target_config/brandy/config.py | 115 +++++++++++++++++- .../chips/brandy/porting/uart/uart_porting.c | 13 ++ .../interfaces/innerkits/graphic_config.h | 4 + .../fs/yaffs2/yaffs/direct/include/yaffscfg.h | 4 + .../startup/syspara_lite/src/hal_sys_param.c | 48 +++++--- .../syspara_lite/src/parameter_common.c | 10 +- .../file_hal/src/utils_file_reli_test.c | 2 +- .../test/xts/tools/lite/hctest/src/hctest.c | 10 ++ .../src/kvstore_impl_posix/kv_store.c | 4 + tools/scripts/create_project.sh | 6 + 12 files changed, 207 insertions(+), 23 deletions(-) diff --git a/autobuild.sh b/autobuild.sh index 854e78da4..70952c234 100644 --- a/autobuild.sh +++ b/autobuild.sh @@ -87,6 +87,16 @@ RECOVERY_NAME=$APPLICATION_NAME-r SSB_NAME=$APPLICATION_NAME-ssb BUILD_NAME=_FD230 fi + +if [ "$1" == "xts" ] +then +TARGET_PACK_NAME=pack_brandy_native_js_xts +APPLICATION_NAME=brandy-native-js-xts +RECOVERY_NAME=$APPLICATION_NAME-r +SSB_NAME=$APPLICATION_NAME-ssb +BUILD_NAME=_XTS +fi + if [ "$1" == "u8" ] then TARGET_PACK_NAME=pack_brandy_native_js_u8 diff --git a/code/sdk/application/wearable/fd230/nativeapp/nativeui/networkandcall/src/NetworkAndCallPresenter.cpp b/code/sdk/application/wearable/fd230/nativeapp/nativeui/networkandcall/src/NetworkAndCallPresenter.cpp index 1281da4f0..0f37f1ac2 100644 --- a/code/sdk/application/wearable/fd230/nativeapp/nativeui/networkandcall/src/NetworkAndCallPresenter.cpp +++ b/code/sdk/application/wearable/fd230/nativeapp/nativeui/networkandcall/src/NetworkAndCallPresenter.cpp @@ -122,7 +122,11 @@ namespace OHOS #else uapi_set4GCapability(false); #endif + #ifdef SUPPORT_CAT1_SERVICE ConfigModel::GetInstance()->SetCat1_4Gability(cat1_api_is_cat1_enabled()); + #else + ConfigModel::GetInstance()->SetCat1_4Gability(false);//xts + #endif if(p_NetworkAndCallView->GetVoLTEToggleButton() && p_NetworkAndCallView->GetVoLTEToggleButton()->GetState()) { diff --git a/code/sdk/build/config/target_config/brandy/config.py b/code/sdk/build/config/target_config/brandy/config.py index b8a32b94e..53c85cae4 100644 --- a/code/sdk/build/config/target_config/brandy/config.py +++ b/code/sdk/build/config/target_config/brandy/config.py @@ -161,7 +161,7 @@ target = { 'ram_component_set': ['bgh', 'media', 'gpu', 'graphic_uikit', 'bgh_audio', 'dfx_set', 'ohos_set', 'wearable_set', 'xts_set', 'xts_test_set', 'alipay_set', 'msg_center_service'], 'dsp_version': 'max', 'packet': True, - 'fs_image': False + # 'fs_image': False }, 'brandy-target1-r': { @@ -440,6 +440,117 @@ target = { 'FD230', 'NANDFLASH_DS35X' ] + }, + ##################xts####################### + 'brandy-native-js-xts': { + 'base_target_name': 'brandy-xts', + #自定义配置项,选择硬件及功能参数 + 'defines': [ + 'BOARD_FD230', + 'FT_SINGLE_UART', + 'CONFIG_EFUSE_READ_TO_RAM', + # 'CUSTOM_UTILS', + # 'CUSTOM_HID_SERVICE', + # 'WEARABLE_LOG_DEBUG', + 'SUPPORT_RC_CALIBRATION', + # 'PPG_HX3695', + 'VIB_USE_PWM', + 'CONFIG_PWM_SUPPORT', + # 'ACC_LIS2DOC', + # 'ENABLE_CYWEE', + # 'ENABLE_CUSTOM_I2C', + # 'SUPPORT_AT_CYWEE', + # 'MAG_MMC5603', + # 'ENABLE_VIBRATOR', + # 'ENABLE_SLIP', + 'ENCODER_SUPPORT', + # 'SUPPORT_SPO2_NOTIFICATION', + # 'SUPPORT_SPO2_NOTIFICATION_TEST', + # 'SUPPORT_DEVICE_PAIRING_NOTIFICATION', + # 'ENABLE_FONT_VECTOR_GLOBAL', + # 'ENABLE_SHAPING', + 'SUPPORT_CHARGER_PLUG_DETECTION_NOTIFICATION', + # 'SUPPORT_AT_CUSTOMUTILS', + # 'SUPPORT_BLE_SERVICE', + 'FD230', + # 'SUPPORT_AUTO_OTA_SERVER', + # 'CONFIG_DFX_SUPPORT_DIAG_UP_MACHINE=1', + #"MEM_CHECK", + # 'ENABLE_WEBSOCKET', + # 'CYWEE_SPORT', + # 'CYWEE_MAC_ACTIVE', + # 'SUPPORT_CAT1_SERVICE', + # 'SUPPORT_TCPIP', + 'SUPPORT_HID_SERVICE', + 'SUPPORT_BAIDU_MAP', + 'CFG_FLASH_SIZE=16', + 'SINGLE_USER_PARTITION', + 'TPTYPE_FT6X46', + 'ROTARYENCODER_HX3507', + 'NANDFLASH_DS35X', + # 'BLE_INSTRUCT', + # 'FACTORYTEST_SERVICE', + ], + #添加自定义应用 + 'ram_component': [ + # 'audio_at_service', + # 'media_at_service', + # 'bt_manager_at_service', + # "ppg_sensor", + # "ppgBleService", + # "mag_sensor", + "vibrator", + "vibrator_service", + "-:lwip", + # "cat1Service", + # "cat1Test", + # "audio_manager", + "CustomUIcomponentTool", + "nativeabilityfwk", + "custom_utils", + "custom_utilscpp", + "custom_config", + "rotary_encoder", + "nativelauncher", + # "ppg_service", + # "cywee", + # "batterry_service", + # "bleservice", + # "blemoder", + # "factorytest_service", + # "hid_service", + # "producttest", + ], + 'image_analysis': False, + 'fs_image_path':'fd230', + 'fs_image': True + }, + 'brandy-native-js-xts-r': { + 'base_target_name': 'brandy-xts-r', + #自定义配置项,选择硬件及功能参数 + 'defines': [ + 'BOARD_FD230', + 'FT_SINGLE_UART', + 'NANDFLASH_DS35X', + 'TPTYPE_FT6X46', + 'CFG_FLASH_SIZE=16', + 'FD230', + 'SINGLE_USER_PARTITION' + ], + 'ram_component': ["at_cmd"] + }, + 'brandy-native-js-xts-ssb': { + 'base_target_name': 'brandy-ssb', + #自定义配置项,选择硬件及功能参数 + 'defines': [ + 'BOARD_FD230', + 'FT_SINGLE_UART', + 'ENABLE_ECC', + 'CFG_DRIVERS_NANDFLASH', + 'CFG_FLASH_SIZE=16', + 'FD230', + 'NANDFLASH_DS35X' + ] }, ##################u8####################### 'brandy-native-js-u8':{ @@ -802,6 +913,8 @@ target_group = { 'pack_brandy_native_js_user': ['brandy-native-js-user-ssb', 'brandy-native-js-user-r', 'brandy-native-js-user'], 'pack_brandy_xts': ['brandy-ssb', 'brandy-xts-r', 'brandy-xts'], + 'pack_brandy_native_js_xts': ['brandy-native-js-xts-ssb', 'brandy-native-js-xts-r', 'brandy-native-js-xts'], + 'brandy_all': ['brandy-ssb', 'brandy-target1', 'brandy-target3', 'brandy-target4', 'brandy-target5', 'brandy-native-js', 'brandy-native-js-user', 'brandy-xts', 'brandy-target1-r', 'brandy-target3-r', 'brandy-target4-r', 'brandy-target5-r', 'brandy-native-js-r', 'brandy-xts-r', diff --git a/code/sdk/drivers/chips/brandy/porting/uart/uart_porting.c b/code/sdk/drivers/chips/brandy/porting/uart/uart_porting.c index c7df90455..dc932567c 100644 --- a/code/sdk/drivers/chips/brandy/porting/uart/uart_porting.c +++ b/code/sdk/drivers/chips/brandy/porting/uart/uart_porting.c @@ -290,6 +290,19 @@ static uart_recovery_regs_t g_uart_recovery_reg[UART_BUS_MAX_NUMBER] = { 0 }; #ifdef FT_SINGLE_UART void log_factory_at_callback(const void *buffer, uint16_t length, bool remaining) { +#ifdef XTS_SUPPORT + #if SYS_DEBUG_MODE_ENABLE == YES + log_uart_rx_callback(buffer, length, remaining); + #endif + if (zdiag_is_enable() == false) { + #ifdef SUPPORT_AT_CMD + at_cmd_msg_receive_handler((uint8_t *)buffer, length); + #endif + hal_uart_clear_pending(UART_BUS_1); + } + return; +#endif + #ifndef SUPPORT_RECOVERY_DISPLAY //判定是否是在编译RECOVERY image,本参数不支持RECOVERY #ifdef CUSTOM_UTILS if (uapi_custom_uart_rx_enable_flag() == false) diff --git a/code/sdk/middleware/services/gui/uikit/utils/interfaces/innerkits/graphic_config.h b/code/sdk/middleware/services/gui/uikit/utils/interfaces/innerkits/graphic_config.h index fd819e28f..123a704c5 100644 --- a/code/sdk/middleware/services/gui/uikit/utils/interfaces/innerkits/graphic_config.h +++ b/code/sdk/middleware/services/gui/uikit/utils/interfaces/innerkits/graphic_config.h @@ -544,7 +544,11 @@ const char* get_language_font(uint8_t id); bool is_load_languages(uint8_t id); +#ifdef XTS_SUPPORT +#define DEFAULT_VECTOR_FONT_FILENAME HARMONYOS_VECTOR_FONT_FILENAME +#else #define DEFAULT_VECTOR_FONT_FILENAME get_current_global_font_name() +#endif #define DEFAULT_VECTOR_FONT_FILENAME_EN HARMONYOS_VECTOR_FONT_FILENAME diff --git a/code/sdk/middleware/utils/fs/yaffs2/yaffs/direct/include/yaffscfg.h b/code/sdk/middleware/utils/fs/yaffs2/yaffs/direct/include/yaffscfg.h index baa96fcc2..00da22a65 100644 --- a/code/sdk/middleware/utils/fs/yaffs2/yaffs/direct/include/yaffscfg.h +++ b/code/sdk/middleware/utils/fs/yaffs2/yaffs/direct/include/yaffscfg.h @@ -31,7 +31,11 @@ extern "C" { #endif /* __cplusplus */ #ifndef MEMORY_MINI +#ifdef XTS_SUPPORT +#define YAFFSFS_N_HANDLES 110 +#else #define YAFFSFS_N_HANDLES 100 +#endif #define YAFFSFS_N_DSC 20 #else #define YAFFSFS_N_HANDLES 10 diff --git a/code/sdk/open_source/openharmony/base/startup/syspara_lite/src/hal_sys_param.c b/code/sdk/open_source/openharmony/base/startup/syspara_lite/src/hal_sys_param.c index 5c1d22943..e9c6ea886 100644 --- a/code/sdk/open_source/openharmony/base/startup/syspara_lite/src/hal_sys_param.c +++ b/code/sdk/open_source/openharmony/base/startup/syspara_lite/src/hal_sys_param.c @@ -22,18 +22,18 @@ #include #include -static const char OHOS_PRODUCT_TYPE[] = {"****"}; -static const char OHOS_MANUFACTURE[] = {"****"}; -static const char OHOS_BRAND[] = {"****"}; -static const char OHOS_MARKET_NAME[] = {"OpenHarmony 5.0"}; -static const char OHOS_PRODUCT_SERIES[] = {"****"}; -static const char OHOS_PRODUCT_MODEL[] = {"****"}; -static const char OHOS_SOFTWARE_MODEL[] = {"****"}; -static const char OHOS_HARDWARE_MODEL[] = {"****"}; +static const char OHOS_PRODUCT_TYPE[] = {"litewearable"}; +static const char OHOS_MANUFACTURE[] = {"Tenxinbona"}; +static const char OHOS_BRAND[] = {"KUMI"}; +static const char OHOS_MARKET_NAME[] = {"KUMI WATCH Soar"}; +static const char OHOS_PRODUCT_SERIES[] = {"KUMI WATCH Soar"}; +static const char OHOS_PRODUCT_MODEL[] = {"Watch Soar"}; +static const char OHOS_SOFTWARE_MODEL[] = {"1.0.0"}; +static const char OHOS_HARDWARE_MODEL[] = {"FD230V10"}; static const char OHOS_HARDWARE_PROFILE[] = {"aout:true,display:true"}; static const char OHOS_BOOTLOADER_VERSION[] = {"bootloader"}; static const char OHOS_SECURITY_PATCH_TAG[] = {"2024/12/01"}; -static const char OHOS_ABI_LIST[] = {"****"}; +static const char OHOS_ABI_LIST[] = {"riscv-liteos"}; static const char OHOS_SERIAL[] = {"1234567890"}; // provided by OEM. const char g_roBuildOs[] = {"OpenHarmony"}; const char g_roBuildVerShow[] = {"OpenHarmony 5.0.1.115"}; @@ -45,7 +45,8 @@ const char BUILD_HOST[] = {"BUILD_HOST"}; const char BUILD_TIME[] = {"BUILD_TIME"}; const char BUILD_ROOTHASH[] = {"BUILD_ROOTHASH"}; -#define DATA_PATH "/user/res/" +// #define DATA_PATH "/user/res/" +#define DATA_PATH "/user/" #define MAX_KEY_PATH 128 static boolean IsValidChar(const char ch) @@ -282,17 +283,32 @@ char* HalGetHardwareProfile(void) char* HalGetSerial(void) { - char* value = (char*)malloc(strlen(OHOS_SERIAL) + 1); - if (value == NULL) { - return NULL; + static const char OHOS_SERIAL[] = "1234567890"; + unsigned char sn_buf[32] = {0}; + unsigned int len = 0; + unsigned int ret = zh_get_sn(sn_buf, &len); + + // 检查返回值和缓冲区是否为空 + if (ret != 0 || len == 0 || sn_buf[0] == '\0') { + char* value = (char*)malloc(sizeof(OHOS_SERIAL)); + if (value == NULL) { + printf("malloc failed\n"); + return NULL; + } + strcpy_s(value, sizeof(OHOS_SERIAL), OHOS_SERIAL); + return value; } - if (strcpy_s(value, strlen(OHOS_SERIAL) + 1, OHOS_SERIAL) != 0) { - free(value); + + // 正常处理非空情况 + char* value = (char*)malloc(len + 1); // 使用实际长度而非strlen + if (value == NULL) { + printf("malloc failed\n"); return NULL; } + memcpy(value, sn_buf, len); // 使用memcpy确保二进制安全 + value[len] = '\0'; // 手动添加字符串结束符 return value; } - char* HalGetBootloaderVersion(void) { char* value = (char*)malloc(strlen(OHOS_BOOTLOADER_VERSION) + 1); diff --git a/code/sdk/open_source/openharmony/base/startup/syspara_lite/src/parameter_common.c b/code/sdk/open_source/openharmony/base/startup/syspara_lite/src/parameter_common.c index e71be6763..e58aff1e7 100644 --- a/code/sdk/open_source/openharmony/base/startup/syspara_lite/src/parameter_common.c +++ b/code/sdk/open_source/openharmony/base/startup/syspara_lite/src/parameter_common.c @@ -28,11 +28,11 @@ #define VERSION_ID_LEN 256 #define PROPERTY_MAX_LENGTH 2048 #define INCREMENTAL_VERSION "version" -#define BUILD_TYPE "BUILD_TYPE" -#define BUILD_USER "BUILD_USER" -#define BUILD_HOST "BUILD_HOST" -#define BUILD_TIME "BUILD_TIME" -#define BUILD_ROOTHASH "BUILD_ROOTHASH" +#define BUILD_TYPE "release" +#define BUILD_USER "luozheng" +#define BUILD_HOST "linux" +#define BUILD_TIME "20250508"//ci处本来是和真正的编译时间一致的,当下写死,因为后面提交的时候也要求必须一致。动态是我们平时release的状态,这个功能以后添加 +#define BUILD_ROOTHASH "default" #define HASH_LENGTH 32 #define DEV_BUF_LENGTH 3 diff --git a/code/sdk/open_source/openharmony/test/xts/acts/commonlibrary_lite/file_hal/src/utils_file_reli_test.c b/code/sdk/open_source/openharmony/test/xts/acts/commonlibrary_lite/file_hal/src/utils_file_reli_test.c index 8458f5563..1fc220c91 100644 --- a/code/sdk/open_source/openharmony/test/xts/acts/commonlibrary_lite/file_hal/src/utils_file_reli_test.c +++ b/code/sdk/open_source/openharmony/test/xts/acts/commonlibrary_lite/file_hal/src/utils_file_reli_test.c @@ -21,7 +21,7 @@ #define FILE_SEEK_OFFSET_0 0 #define FILE_SEEK_OFFSET_20 20 #define FILE_SEEK_OFFSET_MINUS_20 (-20) -#define MAX_NUM_OF_OPENED_FILES 99 +#define MAX_NUM_OF_OPENED_FILES 96 #define LENGTH_OF_READ_BUF 36 #define FILE_INDEX_31 31 #define LENGTH_OF_FILE_NAME_BUF 32 diff --git a/code/sdk/open_source/openharmony/test/xts/tools/lite/hctest/src/hctest.c b/code/sdk/open_source/openharmony/test/xts/tools/lite/hctest/src/hctest.c index 5122aa008..0c665785b 100644 --- a/code/sdk/open_source/openharmony/test/xts/tools/lite/hctest/src/hctest.c +++ b/code/sdk/open_source/openharmony/test/xts/tools/lite/hctest/src/hctest.c @@ -373,3 +373,13 @@ TestSuiteManager* GetTestMgrInstance(void) { return &g_testSuiteManager; } + +// 检查测试是否完成 +uint8_t is_xts_test_done(void) +{ + if (g_totalSuitesNum == g_doneSuitesNum) { + return 1; + }else{ + return 0; + } +} \ No newline at end of file diff --git a/code/sdk/open_source/openharmony/utils/native/lite/kv_store/src/kvstore_impl_posix/kv_store.c b/code/sdk/open_source/openharmony/utils/native/lite/kv_store/src/kvstore_impl_posix/kv_store.c index a6b64e94b..6b20a15eb 100644 --- a/code/sdk/open_source/openharmony/utils/native/lite/kv_store/src/kvstore_impl_posix/kv_store.c +++ b/code/sdk/open_source/openharmony/utils/native/lite/kv_store/src/kvstore_impl_posix/kv_store.c @@ -29,7 +29,11 @@ #include "ohos_types.h" #include "utils_config.h" +#ifdef XTS_SUPPORT +#define KVSTORE_PATH "kvstore" +#else #define KVSTORE_PATH "user/system/kvstore" +#endif #define MAX_KEY_PATH 256 #define MAX_GET_VALUE_LEN 0x7FFFFFFF static pthread_mutex_t g_kvGlobalMutex = PTHREAD_MUTEX_INITIALIZER; diff --git a/tools/scripts/create_project.sh b/tools/scripts/create_project.sh index 031b9bfd8..7ad4c968f 100644 --- a/tools/scripts/create_project.sh +++ b/tools/scripts/create_project.sh @@ -37,9 +37,15 @@ done for l in $projectlist_wearable do +if [ "$projectname" == "xts" ]; then +targetdir=code/sdk/application/wearable/fd230/$projectname/$l-$projectname +targetdir2=code/sdk/application/wearable/fd230/$l-$projectname +srcdir=code/sdk/application/wearable/fd230/$l +else targetdir=code/sdk/application/wearable/$projectname/$l-$projectname targetdir2=code/sdk/application/wearable/$l-$projectname srcdir=code/sdk/application/wearable/$l +fi # echo rm -r $targetdir # echo mkdir -p $targetdir # echo cp -r $srcdir/* $targetdir/ -- 2.17.1