Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Telink] W91 RAM usage optimization #37536

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/chef.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -109,9 +109,9 @@ jobs:
uses: ./.github/actions/checkout-submodules-and-bootstrap
with:
platform: telink
# - name: Update Zephyr to specific revision (for developers purpose)
# shell: bash
# run: scripts/run_in_build_env.sh "python3 scripts/tools/telink/update_zephyr.py fdccaba1ebc147908e9cca653e6c6743def3332b"
- name: Update Zephyr to specific revision (for developers purpose)
shell: bash
run: scripts/run_in_build_env.sh "python3 scripts/tools/telink/update_zephyr.py 95023c1389441b2fce8c2000c8e7577e25ba59b6"
- name: CI Examples Telink
shell: bash
run: |
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/examples-telink.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,8 @@ jobs:
with:
gh-context: ${{ toJson(github) }}

# - name: Update Zephyr to specific revision (for developers purpose)
# run: scripts/run_in_build_env.sh "python3 scripts/tools/telink/update_zephyr.py fdccaba1ebc147908e9cca653e6c6743def3332b"
- name: Update Zephyr to specific revision (for developers purpose)
run: scripts/run_in_build_env.sh "python3 scripts/tools/telink/update_zephyr.py 95023c1389441b2fce8c2000c8e7577e25ba59b6"

- name: Build example Telink (B92 retention) Air Quality Sensor App
# Run test for master and s07641069 PRs
Expand Down
2 changes: 1 addition & 1 deletion config/telink/chip-module/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,7 @@ config CHIP_ENABLE_POWER_ON_FACTORY_RESET

config CHIP_TASK_STACK_SIZE
int
default 6192 if SOC_RISCV_TELINK_TL321X
default 6192 if SOC_RISCV_TELINK_TL321X || SOC_RISCV_TELINK_W91
default 5352 if PM
default 8192

Expand Down
25 changes: 16 additions & 9 deletions config/telink/chip-module/Kconfig.defaults
Original file line number Diff line number Diff line change
Expand Up @@ -68,22 +68,23 @@ config INIT_STACKS
default y

config IDLE_STACK_SIZE
default 512 if PM || SOC_RISCV_TELINK_TL321X
default 512 if PM || SOC_RISCV_TELINK_TL321X || SOC_RISCV_TELINK_W91


config ISR_STACK_SIZE
default 576 if PM
default 528 if SOC_RISCV_TELINK_TL321X
default 528 if SOC_RISCV_TELINK_TL321X || SOC_RISCV_TELINK_W91

config SYSTEM_WORKQUEUE_STACK_SIZE
default 616 if PM
default 616 if PM || SOC_RISCV_TELINK_W91

config HEAP_MEM_POOL_SIZE
default 256

config COMMON_LIBC_MALLOC_ARENA_SIZE
default 20716 if SOC_RISCV_TELINK_TL321X || SOC_SERIES_RISCV_TELINK_B9X_RETENTION
default 16384 if SOC_RISCV_TELINK_TL721X
default 29696 if SOC_RISCV_TELINK_W91
default 12288

config NET_IPV6_MLD
Expand All @@ -96,19 +97,19 @@ config NET_IF_MCAST_IPV6_ADDR_COUNT

# Network buffers
config NET_PKT_RX_COUNT
default 4 if PM || SOC_RISCV_TELINK_TL321X
default 4 if PM || SOC_RISCV_TELINK_TL321X || SOC_RISCV_TELINK_W91
default 8

config NET_PKT_TX_COUNT
default 4 if PM || SOC_RISCV_TELINK_TL321X
default 4 if PM || SOC_RISCV_TELINK_TL321X || SOC_RISCV_TELINK_W91
default 8

config NET_BUF_RX_COUNT
default 12 if PM || SOC_RISCV_TELINK_TL321X
default 12 if PM || SOC_RISCV_TELINK_TL321X || SOC_RISCV_TELINK_W91
default 32

config NET_BUF_TX_COUNT
default 12 if PM || SOC_RISCV_TELINK_TL321X
default 12 if PM || SOC_RISCV_TELINK_TL321X || SOC_RISCV_TELINK_W91
default 32

config GPIO
Expand Down Expand Up @@ -159,11 +160,11 @@ config BT_GATT_CACHING

config BT_RX_STACK_SIZE
default 1352 if BT_B9X || BT_TLX
default 2048 if BT_W91
default 896 if BT_W91

config BT_HCI_TX_STACK_SIZE
default 640 if BT_B9X || BT_TLX
default 2048 if BT_W91
default 896 if BT_W91

config BT_DEVICE_NAME_GATT_WRITABLE
default n
Expand Down Expand Up @@ -406,6 +407,12 @@ config CHIP_WIFI_CONNECTION_RECOVERY_JITTER
config NET_MGMT_EVENT_STACK_SIZE
default 1128

config TELINK_W91_WIFI_EVENT_THREAD_STACK_SIZE
default 1136

config IPC_SERVICE_ICMSG_WORK_QUEUE_STACK_SIZE
default 544

endif # CHIP_WIFI

config CHIP_ENABLE_PAIRING_AUTOSTART
Expand Down
5 changes: 3 additions & 2 deletions src/platform/telink/SystemPlatformConfig.h
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,8 @@ struct ChipDeviceEvent;
#define CHIP_SYSTEM_CONFIG_PLATFORM_PROVIDES_TIME 1
#endif // CHIP_SYSTEM_CONFIG_USE_POSIX_TIME_FUNCTS

#if defined(CONFIG_SOC_RISCV_TELINK_TL321X) || defined(CONFIG_SOC_SERIES_RISCV_TELINK_B9X_RETENTION)
#if defined(CONFIG_SOC_RISCV_TELINK_TL321X) || defined(CONFIG_SOC_SERIES_RISCV_TELINK_B9X_RETENTION) || \
defined(CONFIG_SOC_RISCV_TELINK_W91)
#define CHIP_SYSTEM_PACKETBUFFER_FROM_CHIP_HEAP 1
#define CHIP_SYSTEM_PACKETBUFFER_FROM_CHIP_POOL 0
#define CHIP_SYSTEM_CONFIG_POOL_USE_HEAP 1
Expand All @@ -55,7 +56,7 @@ struct ChipDeviceEvent;
#define CHIP_SYSTEM_CONFIG_USE_SOCKETS 1

// Reduce packet buffer pool size (default 15) to reduce ram consumption
#if defined CONFIG_PM || defined CONFIG_SOC_RISCV_TELINK_TL321X
#if defined CONFIG_PM || defined CONFIG_SOC_RISCV_TELINK_TL321X || defined CONFIG_SOC_RISCV_TELINK_W91
#define CHIP_SYSTEM_CONFIG_PACKETBUFFER_POOL_SIZE 0
#else
#define CHIP_SYSTEM_CONFIG_PACKETBUFFER_POOL_SIZE 8
Expand Down
Loading