Skip to content

Commit 9a14d45

Browse files
author
LittleMouse
committed
[update] support ax650. add ax650 model.
1 parent 9167b6e commit 9a14d45

28 files changed

+769
-40
lines changed

ext_components/ax_msp/SConstruct

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,3 +55,60 @@ if 'CONFIG_AX_620E_MSP_ENABLED' in os.environ:
5555
'REGISTER':'static'
5656
})
5757

58+
if 'CONFIG_AX_650N_MSP_ENABLED' in os.environ:
59+
MSP_PATH = ''
60+
if 'CONFIG_MSP_V3_0_0_ENABLED' in os.environ:
61+
MSP_PATH = os.environ.get('EXT_MSP_PATH', check_wget_down("https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/linux/llm/m5stack_ax650n_msp.tar.gz", 'm5stack_ax650n_msp.tar.gz'))
62+
63+
SRCS=[]
64+
INCLUDE=[]
65+
PRIVATE_INCLUDE=[]
66+
REQUIREMENTS=[]
67+
STATIC_LIB=[]
68+
DYNAMIC_LIB=[]
69+
DEFINITIONS=[]
70+
DEFINITIONS_PRIVATE=['']
71+
LDFLAGS=[]
72+
LINK_SEARCH_PATH=[]
73+
74+
env["MSP_PATH"] = MSP_PATH
75+
# , os.path.join(MSP_PATH, 'sample/common')
76+
INCLUDE += [os.path.join(MSP_PATH, 'out/include'), os.path.join(MSP_PATH, 'sample'), os.path.join(MSP_PATH, 'sample/rtsp')]
77+
LINK_SEARCH_PATH += [os.path.join(MSP_PATH, 'out/lib')]
78+
REQUIREMENTS += ['dl', 'm', 'pthread']
79+
third_party = ['drm','faac','fdk-aac','ffmpeg','libsamplerate','mp4','opencv','opus','tinyalsa']
80+
for dirn in third_party:
81+
INCLUDE.append(os.path.join(MSP_PATH,'third-party',dirn,'include'))
82+
LINK_SEARCH_PATH.append(os.path.join(MSP_PATH,'third-party',dirn,'lib/arm64/glibc'))
83+
INCLUDE.append(os.path.join(MSP_PATH,'third-party/tinyalsa/include/tinyalsa'))
84+
INCLUDE.append(os.path.join(MSP_PATH,'third-party/live/out/include/liveMedia'))
85+
INCLUDE.append(os.path.join(MSP_PATH,'third-party/live/out/include/groupsock'))
86+
INCLUDE.append(os.path.join(MSP_PATH,'third-party/live/out/include/UsageEnvironment'))
87+
INCLUDE.append(os.path.join(MSP_PATH,'third-party/live/out/include/BasicUsageEnvironment'))
88+
INCLUDE.append(os.path.join(MSP_PATH,'component/isp_proton/sensor/platform/tcm'))
89+
LINK_SEARCH_PATH.append(os.path.join(MSP_PATH,'third-party/libsamplerate/lib'))
90+
INCLUDE.append(os.path.join(MSP_PATH,'third-party/openssl/include'))
91+
LINK_SEARCH_PATH.append(os.path.join(MSP_PATH,'third-party/openssl/arm64/glibc/lib'))
92+
LINK_SEARCH_PATH.append(os.path.join(MSP_PATH,'third-party/tinyalsa/lib'))
93+
LINK_SEARCH_PATH.append(os.path.join(MSP_PATH,'third-party/fdk-aac/lib'))
94+
LINK_SEARCH_PATH.append(os.path.join(MSP_PATH,'third-party/opus/lib'))
95+
LINK_SEARCH_PATH.append(os.path.join(MSP_PATH,'app/lib'))
96+
97+
if 'CONFIG_SAMPLE_COMMON_ENABLED' in os.environ:
98+
if 'CONFIG_MSP_V3_0_0_ENABLED' in os.environ:
99+
INCLUDE.append(os.path.join(MSP_PATH,'sample/common'))
100+
SRCS += AGlob(os.path.join(MSP_PATH,'sample/common/*.c*'))
101+
102+
env['COMPONENTS'].append({'target':os.path.basename(env['component_dir']),
103+
'SRCS':SRCS,
104+
'INCLUDE':INCLUDE,
105+
'PRIVATE_INCLUDE':PRIVATE_INCLUDE,
106+
'REQUIREMENTS':REQUIREMENTS,
107+
'STATIC_LIB':STATIC_LIB,
108+
'DYNAMIC_LIB':DYNAMIC_LIB,
109+
'DEFINITIONS':DEFINITIONS,
110+
'DEFINITIONS_PRIVATE':DEFINITIONS_PRIVATE,
111+
'LDFLAGS':LDFLAGS,
112+
'LINK_SEARCH_PATH':LINK_SEARCH_PATH,
113+
'REGISTER':'static'
114+
})

projects/llm_framework/main_audio/SConstruct

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ DEFINITIONS += ['-std=c++17']
2222
LDFLAGS+=['-Wl,-rpath=/opt/m5stack/lib', '-Wl,-rpath=/usr/local/m5stack/lib', '-Wl,-rpath=/usr/local/m5stack/lib/gcc-10.3', '-Wl,-rpath=/opt/lib', '-Wl,-rpath=/opt/usr/lib', '-Wl,-rpath=./']
2323
# INCLUDE += [ADir('../include'), ADir('../include/cppzmq'), ADir('../include/libzmq')]
2424
LINK_SEARCH_PATH += [ADir('../static_lib')]
25-
26-
REQUIREMENTS += ['ax_sys', 'ax_interpreter', 'ax_audio', 'ax_audio_3a', 'ax_fdk', 'ax_opus']
27-
REQUIREMENTS += ['tinyalsa', 'opus', 'samplerate', 'fdk-aac']
25+
REQUIREMENTS += ['ax_sys', 'ax_audio', 'ax_audio_3a', 'tinyalsa', 'fdk-aac', 'opus', 'samplerate']
26+
if 'CONFIG_AX_620E_MSP_ENABLED' in os.environ:
27+
REQUIREMENTS += ['ax_interpreter', 'ax_fdk', 'ax_opus']
2828

2929
STATIC_FILES += [AFile('audio.json'), AFile('audio_kit.json')]
3030
STATIC_FILES += Glob('mode_*.json')

projects/llm_framework/main_audio/src/main.cpp

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,13 @@ class llm_audio : public StackFlow {
6969

7070
void hw_cap()
7171
{
72+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
7273
ax_cap_start(cap_config.card, cap_config.device, cap_config.volume, cap_config.channel, cap_config.rate,
7374
cap_config.bit, llm_audio::on_cap_sample);
75+
#else
76+
alsa_cap_start(cap_config.card, cap_config.device, cap_config.volume, cap_config.channel, cap_config.rate,
77+
cap_config.bit, llm_audio::on_cap_sample);
78+
#endif
7479
}
7580

7681
void _play(const std::string &audio_data)
@@ -143,13 +148,17 @@ class llm_audio : public StackFlow {
143148
nlohmann::json error_body;
144149
std::string base_model_path;
145150
std::string base_model_config_path;
151+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
146152
std::list<std::string> config_file_paths;
147153
if (access("/sys/devices/platform/soc/4851000.i2c/i2c-1/1-0043", F_OK) == 0) {
148154
config_file_paths = get_config_file_paths(base_model_path, base_model_config_path, "audio_kit");
149155
} else {
150156
config_file_paths = get_config_file_paths(base_model_path, base_model_config_path, "audio");
151157
}
152-
158+
#else
159+
std::list<std::string> config_file_paths =
160+
get_config_file_paths(base_model_path, base_model_config_path, "audio");
161+
#endif
153162
try {
154163
config_body = nlohmann::json::parse(data);
155164
for (auto file_name : config_file_paths) {
@@ -201,6 +210,7 @@ class llm_audio : public StackFlow {
201210
CONFIG_AUTO_SET(file_body["play_param"], stVqeAttr.stAgcCfg.enAgcMode);
202211
CONFIG_AUTO_SET(file_body["play_param"], stVqeAttr.stAgcCfg.s16TargetLevel);
203212
CONFIG_AUTO_SET(file_body["play_param"], stVqeAttr.stAgcCfg.s16Gain);
213+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
204214
CONFIG_AUTO_SET(file_body["play_param"], stHpfAttr.bEnable);
205215
CONFIG_AUTO_SET(file_body["play_param"], stHpfAttr.s32GainDb);
206216
CONFIG_AUTO_SET(file_body["play_param"], stHpfAttr.s32Freq);
@@ -215,6 +225,7 @@ class llm_audio : public StackFlow {
215225
CONFIG_AUTO_SET(file_body["play_param"], stEqAttr.s32GainDb[3]);
216226
CONFIG_AUTO_SET(file_body["play_param"], stEqAttr.s32GainDb[4]);
217227
CONFIG_AUTO_SET(file_body["play_param"], stEqAttr.s32Samplerate);
228+
#endif
218229
CONFIG_AUTO_SET(file_body["play_param"], gResample);
219230
CONFIG_AUTO_SET(file_body["play_param"], enInSampleRate);
220231
CONFIG_AUTO_SET(file_body["play_param"], gInstant);
@@ -247,7 +258,17 @@ class llm_audio : public StackFlow {
247258
CONFIG_AUTO_SET(file_body["cap_param"], aistAttr.enBitwidth);
248259
CONFIG_AUTO_SET(file_body["cap_param"], aistAttr.enLinkMode);
249260
CONFIG_AUTO_SET(file_body["cap_param"], aistAttr.enSamplerate);
250-
CONFIG_AUTO_SET(file_body["cap_param"], aistAttr.enLayoutMode);
261+
// CONFIG_AUTO_SET(file_body["cap_param"], aistAttr.enLayoutMode);
262+
if (config_body.contains("aistAttr.enLayoutMode"))
263+
mode_config_.aistAttr.enLayoutMode = config_body["aistAttr.enLayoutMode"];
264+
else if (file_body["cap_param"].contains("aistAttr.enLayoutMode")) {
265+
mode_config_.aistAttr.enLayoutMode = file_body["cap_param"]["aistAttr.enLayoutMode"];
266+
if (access("/sys/devices/platform/soc/4851000.i2c/i2c-1/1-0043", F_OK) == 0) {
267+
if (mode_config_.aistAttr.enLayoutMode == AX_AI_REF_MIC) {
268+
mode_config_.aistAttr.enLayoutMode = AX_AI_MIC_REF;
269+
}
270+
}
271+
}
251272
CONFIG_AUTO_SET(file_body["cap_param"], aistAttr.U32Depth);
252273
CONFIG_AUTO_SET(file_body["cap_param"], aistAttr.u32PeriodSize);
253274
CONFIG_AUTO_SET(file_body["cap_param"], aistAttr.u32PeriodCount);
@@ -261,6 +282,7 @@ class llm_audio : public StackFlow {
261282
CONFIG_AUTO_SET(file_body["cap_param"], aistVqeAttr.stAgcCfg.s16TargetLevel);
262283
CONFIG_AUTO_SET(file_body["cap_param"], aistVqeAttr.stAgcCfg.s16Gain);
263284
CONFIG_AUTO_SET(file_body["cap_param"], aistVqeAttr.stAecCfg.enAecMode);
285+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
264286
CONFIG_AUTO_SET(file_body["cap_param"], stHpfAttr.bEnable);
265287
CONFIG_AUTO_SET(file_body["cap_param"], stHpfAttr.s32GainDb);
266288
CONFIG_AUTO_SET(file_body["cap_param"], stHpfAttr.s32Samplerate);
@@ -276,6 +298,7 @@ class llm_audio : public StackFlow {
276298
CONFIG_AUTO_SET(file_body["cap_param"], stEqAttr.s32GainDb[3]);
277299
CONFIG_AUTO_SET(file_body["cap_param"], stEqAttr.s32GainDb[4]);
278300
CONFIG_AUTO_SET(file_body["cap_param"], stEqAttr.s32Samplerate);
301+
#endif
279302
CONFIG_AUTO_SET(file_body["cap_param"], gResample);
280303
CONFIG_AUTO_SET(file_body["cap_param"], enOutSampleRate);
281304
CONFIG_AUTO_SET(file_body["cap_param"], gDbDetection);

projects/llm_framework/main_audio/src/sample_audio.c

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,7 @@ void ax_play(unsigned int card, unsigned int device, float Volume, int channel,
116116
goto AO_DEINIT;
117117
}
118118
}
119+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
119120
if (play_config.stHpfAttr.bEnable) {
120121
ret = AX_ACODEC_TxHpfSetAttr(card, &play_config.stHpfAttr);
121122
if (ret) {
@@ -152,10 +153,14 @@ void ax_play(unsigned int card, unsigned int device, float Volume, int channel,
152153
goto DIS_LPF;
153154
}
154155
}
156+
#endif
155157
ret = AX_AO_EnableDev(card, device);
156158
if (ret) {
157159
printf("AX_AO_EnableDev failed! ret = %x \n", ret);
160+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
158161
goto DIS_EQ;
162+
#endif
163+
goto DIS_AO_DEVICE;
159164
}
160165
if (play_config.gResample) {
161166
ret = AX_AO_EnableResample(card, device, play_config.enInSampleRate);
@@ -184,7 +189,11 @@ void ax_play(unsigned int card, unsigned int device, float Volume, int channel,
184189
AX_POOL_ReleaseBlock(stFrmInfo.u32BlkId);
185190
break;
186191
}
192+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
187193
ret = AX_AO_SendFrame(card, device, &stFrmInfo, NULL, 0.f, -1);
194+
#else
195+
ret = AX_AO_SendFrame(card, device, &stFrmInfo, -1);
196+
#endif
188197
if (ret != AX_SUCCESS) {
189198
AX_POOL_ReleaseBlock(stFrmInfo.u32BlkId);
190199
printf("AX_AO_SendFrame error, ret: %x\n", ret);
@@ -205,18 +214,23 @@ void ax_play(unsigned int card, unsigned int device, float Volume, int channel,
205214
while (1) {
206215
ret = AX_AO_QueryDevStat(card, device, &stStatus);
207216
if (stStatus.u32DevBusyNum == 0) {
217+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
208218
if (play_config.gInsertSilence) {
209219
break;
210220
} else {
211221
if (stStatus.longPcmBufDelay <= 0) {
212222
break;
213223
}
214224
}
225+
#else
226+
break;
227+
#endif
215228
}
216229
usleep(10 * 1000);
217230
}
218231
}
219232
printf("ao success.\n");
233+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
220234
DIS_EQ:
221235
if (play_config.stEqAttr.bEnable) {
222236
ret = AX_ACODEC_TxEqDisable(card);
@@ -238,7 +252,7 @@ void ax_play(unsigned int card, unsigned int device, float Volume, int channel,
238252
printf("AX_ACODEC_TxHpfDisable failed! ret= %x\n", ret);
239253
}
240254
}
241-
255+
#endif
242256
DIS_AO_DEVICE:
243257
ret = AX_AO_DisableDev(card, device);
244258
if (ret) {
@@ -329,7 +343,7 @@ void ax_cap_start(unsigned int card, unsigned int device, float Volume, int chan
329343
}
330344
outRate = rate;
331345
}
332-
346+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
333347
if (cap_config.stHpfAttr.bEnable) {
334348
ret = AX_ACODEC_RxHpfSetAttr(card, &cap_config.stHpfAttr);
335349
if (ret) {
@@ -366,11 +380,14 @@ void ax_cap_start(unsigned int card, unsigned int device, float Volume, int chan
366380
goto DIS_LPF;
367381
}
368382
}
369-
383+
#endif
370384
ret = AX_AI_EnableDev(card, device);
371385
if (ret) {
372386
printf("AX_AI_EnableDev failed! ret = %x \n", ret);
387+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
373388
goto DIS_EQ;
389+
#endif
390+
goto AI_DETACHPOOL;
374391
}
375392

376393
if (cap_config.gResample) {
@@ -415,7 +432,7 @@ void ax_cap_start(unsigned int card, unsigned int device, float Volume, int chan
415432
printf("AX_AI_DisableDev failed! ret= %x\n", ret);
416433
goto FREE_SYS;
417434
}
418-
435+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
419436
DIS_EQ:
420437
if (cap_config.stEqAttr.bEnable) {
421438
ret = AX_ACODEC_RxEqDisable(card);
@@ -437,7 +454,7 @@ void ax_cap_start(unsigned int card, unsigned int device, float Volume, int chan
437454
printf("AX_ACODEC_RxHpfDisable failed! ret= %x\n", ret);
438455
}
439456
}
440-
457+
#endif
441458
AI_DETACHPOOL:
442459
ret = AX_AI_DetachPool(card, device);
443460
if (AX_SUCCESS != ret) {

projects/llm_framework/main_audio/src/sample_audio.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,11 @@
77
#include "ax_ai_api.h"
88
#include "ax_ao_api.h"
99
#include "ax_global_type.h"
10+
#include <global_config.h>
11+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
1012
#include "ax_acodec_api.h"
1113
#include "ax_aac.h"
14+
#endif
1215

1316
typedef struct {
1417
unsigned int card;
@@ -26,9 +29,11 @@ typedef struct {
2629
AX_AP_DNVQE_ATTR_T stVqeAttr;
2730
AX_AP_UPTALKVQE_ATTR_T aistVqeAttr;
2831
};
32+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
2933
AX_ACODEC_FREQ_ATTR_T stHpfAttr;
3034
AX_ACODEC_FREQ_ATTR_T stLpfAttr;
3135
AX_ACODEC_EQ_ATTR_T stEqAttr;
36+
#endif
3237
int gResample;
3338
union {
3439
AX_AUDIO_SAMPLE_RATE_E enInSampleRate;

projects/llm_framework/main_camera/SConstruct

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,11 @@ SRCS += Glob(os.path.join(env["MSP_PATH"], 'sample/rtsp/*.c*') )
4141
# INCLUDE.append(ADir('ax_sample'))
4242
# SRCS += Glob('ax_sample/*.c*')
4343

44-
REQUIREMENTS += ['ax_sys', 'ax_interpreter']
45-
REQUIREMENTS += ['ax_engine', 'ax_interpreter', 'ax_sys', 'ax_vo']
46-
REQUIREMENTS += ['ax_ae', 'ax_skel', 'ax_venc', 'ax_mipi', 'ax_ives', 'ax_ivps', 'ax_proton', 'ax_audio', 'tinyalsa']
47-
REQUIREMENTS += ['ax_audio_3a','samplerate', 'ax_fdk', 'fdk-aac', 'ax_awb', 'ax_af', 'ax_nt_stream', 'ax_nt_ctrl']
48-
REQUIREMENTS += ['liveMedia', 'UsageEnvironment', 'groupsock', 'BasicUsageEnvironment']
44+
REQUIREMENTS += ['ax_sys', 'ax_interpreter', 'ax_engine']
45+
if 'CONFIG_AX_620E_MSP_ENABLED' in os.environ:
46+
REQUIREMENTS += ['ax_ae', 'ax_vo', 'ax_skel', 'ax_venc', 'ax_mipi', 'ax_ives', 'ax_ivps', 'ax_proton', 'ax_audio', 'tinyalsa']
47+
REQUIREMENTS += ['ax_audio_3a','samplerate', 'ax_fdk', 'fdk-aac', 'ax_awb', 'ax_af', 'ax_nt_stream', 'ax_nt_ctrl']
48+
REQUIREMENTS += ['liveMedia', 'UsageEnvironment', 'groupsock', 'BasicUsageEnvironment']
4949

5050
INCLUDE += [ADir('../include/opencv4')]
5151
static_file = []

projects/llm_framework/main_camera/src/axera_camera.c

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
* SPDX-License-Identifier: MIT
55
*/
66
#include "camera.h"
7-
#include "axera_camera.h"
87
#include <assert.h>
98
#include <errno.h>
109
#include <fcntl.h>
@@ -18,6 +17,9 @@
1817
#include <unistd.h>
1918
#include <dlfcn.h>
2019
#include <sys/prctl.h>
20+
#include <global_config.h>
21+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
22+
#include "axera_camera.h"
2123
#include "AXRtspWrapper.h"
2224
#include "ax_venc_api.h"
2325
#include "ax_global_type.h"
@@ -29,6 +31,9 @@
2931
#include "common_vin.h"
3032
#include "ax_sys_api.h"
3133
#include "ax_ivps_api.h"
34+
#endif
35+
36+
#if defined(CONFIG_AX_620E_MSP_ENABLED) || defined(CONFIG_AX_620Q_MSP_ENABLED)
3237

3338
#ifndef ALIGN_UP
3439
#define ALIGN_UP(x, a) ((((x) + ((a) - 1)) / a) * a)
@@ -115,8 +120,6 @@ AX_VIN_CHN_ATTR_T gSc850slChn0Attr = {
115120
.tFrameRateCtrl = {AX_INVALID_FRMRATE, AX_INVALID_FRMRATE},
116121
};
117122

118-
119-
120123
struct axera_camera_index_t {
121124
char name[48];
122125
SAMPLE_VIN_CASE_E index;
@@ -137,8 +140,6 @@ struct axera_camera_index_t {
137140
{"axera_single_os04a10_online", SYS_CASE_SINGLE_OS04A10_ONLINE},
138141
{"axera_single_sc850sl", SAMPLE_VIN_SINGLE_SC850SL}};
139142

140-
141-
142143
/* comm pool */
143144
COMMON_SYS_POOL_CFG_T gtSysCommPoolSingleDummySdr[] = {
144145
{2688, 1520, 2688, AX_FORMAT_BAYER_RAW_16BPP, 6}, /*vin raw16 use */
@@ -1611,9 +1612,9 @@ int axera_camera_open_from(camera_t *camera)
16111612
return -10;
16121613
}
16131614

1614-
axera_obj.VinParam.eSysMode = axera_config->VinParam.eSysMode; // COMMON_VIN_SENSOR;
1615-
axera_obj.VinParam.eHdrMode = axera_config->VinParam.eHdrMode; // AX_SNS_LINEAR_MODE;
1616-
axera_obj.VinParam.bAiispEnable = axera_config->VinParam.bAiispEnable; // AX_TRUE;
1615+
axera_obj.VinParam.eSysMode = axera_config->VinParam.eSysMode; // COMMON_VIN_SENSOR;
1616+
axera_obj.VinParam.eHdrMode = axera_config->VinParam.eHdrMode; // AX_SNS_LINEAR_MODE;
1617+
axera_obj.VinParam.bAiispEnable = axera_config->VinParam.bAiispEnable; // AX_TRUE;
16171618
// axera_obj.gCams.tChnAttr
16181619
__sample_case_config(&axera_obj.gCams, &axera_obj.VinParam, &axera_obj.tCommonArgs, &axera_obj.tPrivArgs);
16191620
COMMON_SYS_Init(&axera_obj.tCommonArgs);
@@ -1720,4 +1721,5 @@ int axera_camera_close(camera_t *camera)
17201721
SLOGI("camera closed");
17211722

17221723
return 0;
1723-
}
1724+
}
1725+
#endif

0 commit comments

Comments
 (0)