Skip to content

Commit

Permalink
[Telink]: Lock App: Split credential data types to separate NVM arrays
Browse files Browse the repository at this point in the history
Lock App: Split credential data types to separate NVM arrays

Signed-off-by: Misha Tkachenko <misha.tkachenko@telink-semi.com>
  • Loading branch information
mishadesh committed Jan 10, 2024
1 parent 9c637ec commit f5e5c7b
Show file tree
Hide file tree
Showing 6 changed files with 212 additions and 109 deletions.
8 changes: 1 addition & 7 deletions examples/lock-app/telink/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,9 @@ mainmenu "Matter Telink Lock Example Application"
if BOARD_TLSR9528A_RETENTION || BOARD_TLSR9518ADK80D_RETENTION
config COMMON_LIBC_MALLOC_ARENA_SIZE
default 9216

config CHIP_TASK_STACK_SIZE
default 11264
endif

if BOARD_TLSR9528A || BOARD_TLSR9518ADK80D
config CHIP_TASK_STACK_SIZE
default 14336
endif


rsource "../../../config/telink/chip-module/Kconfig.defaults"
source "Kconfig.zephyr"
3 changes: 3 additions & 0 deletions examples/lock-app/telink/include/AppConfig.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,9 @@
#define APP_MAX_YEARDAY_SCHEDULE_PER_USER 10
#define APP_MAX_HOLYDAY_SCHEDULE_PER_USER 10

#define APP_MAX_CREDENTIALS_TOTAL 100
#define APP_MAX_SCHEDULES_TOTAL 100

#define APP_DEFAULT_USERS_COUNT 5
#define APP_DEFAULT_CREDENTIAL_COUNT 5
#define APP_DEFAULT_WEEKDAY_SCHEDULE_PER_USER_COUNT 5
Expand Down
6 changes: 3 additions & 3 deletions examples/lock-app/telink/include/LockManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,19 +30,19 @@

struct WeekDaysScheduleInfo
{
DlScheduleStatus status;
DlScheduleStatus status = DlScheduleStatus::kAvailable;
EmberAfPluginDoorLockWeekDaySchedule schedule;
};

struct YearDayScheduleInfo
{
DlScheduleStatus status;
DlScheduleStatus status = DlScheduleStatus::kAvailable;
EmberAfPluginDoorLockYearDaySchedule schedule;
};

struct HolidayScheduleInfo
{
DlScheduleStatus status;
DlScheduleStatus status = DlScheduleStatus::kAvailable;
EmberAfPluginDoorLockHolidaySchedule schedule;
};

Expand Down
14 changes: 10 additions & 4 deletions examples/lock-app/telink/include/LockSettingsStorage.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,18 @@ class LockSettingsStorage : ZephyrConfig
static const char * kConfigKey_LockUser[APP_MAX_USERS];
static const char * kConfigKey_LockUserName[APP_MAX_USERS];
static const char * kConfigKey_UserCredentials[APP_MAX_CREDENTIAL];
static const char * kConfigKey_WeekDaySchedules[APP_MAX_WEEKDAY_SCHEDULE_PER_USER];
static const char * kConfigKey_YearDaySchedules[APP_MAX_YEARDAY_SCHEDULE_PER_USER];
static const char * kConfigKey_WeekDaySchedules[APP_MAX_USERS][APP_MAX_WEEKDAY_SCHEDULE_PER_USER];
static const char * kConfigKey_YearDaySchedules[APP_MAX_USERS][APP_MAX_YEARDAY_SCHEDULE_PER_USER];
static const char * kConfigKey_HolidaySchedules[APP_MAX_HOLYDAY_SCHEDULE_PER_USER];

static const char * kConfigKey_Credential[kNumCredentialTypes];
static const char * kConfigKey_CredentialData[kNumCredentialTypes];

static const char * kConfigKey_Credential[APP_MAX_CREDENTIAL * APP_MAX_USERS];
static const char * kConfigKey_CredentialDataPin[APP_MAX_CREDENTIAL * APP_MAX_USERS];
static const char * kConfigKey_CredentialDataFace[APP_MAX_CREDENTIAL * APP_MAX_USERS];
static const char * kConfigKey_CredentialDataFingerprint[APP_MAX_CREDENTIAL * APP_MAX_USERS];
static const char * kConfigKey_CredentialDataFingerVein[APP_MAX_CREDENTIAL * APP_MAX_USERS];
static const char * kConfigKey_CredentialDataRfid[APP_MAX_CREDENTIAL * APP_MAX_USERS];

};
} // namespace Internal
} // namespace DeviceLayer
Expand Down
Loading

0 comments on commit f5e5c7b

Please sign in to comment.