How topst-development/freertos-vcp works
This repository is a Telechips TCC70xx MCU board-support and sample-application codebase, with a separate firmware-updater application and bundled FreeRTOS/FreeRTOS+TCP runtime. The visible application workflow starts in cmain, initializes the system, and creates enabled demo tasks; the console exposes driver and demo functionality. Peripheral drivers provide the hardware-facing layer, while HSM management supports secure operations and firmware-update storage. The README is empty, and sampled excerpts are partial, so links for unsampled subsystems are omitted rather than inferred.
Main entry points: hsm_manager.c HSM manager · pdm.c PDM driver · main.c Application startup · can_drv.c CAN driver
Components 20
Sample applications
- Application startup
sources/app.sample/app.base/main.c - Demo console
sources/app.sample/app.console/console.c - CAN demo
sources/app.sample/app.can.demo/can_demo.c - Power demo
sources/app.sample/app.expwr.demo/power_app.c
Security and updates
- Firmware update
sources/app.sample/app.fw.update/fwupdate.c - HSM manager
sources/app.drivers/hsm/tcc70xx/hsm_manager.c
Device drivers
- Mailbox driver
sources/dev.drivers/mailbox/mbox.c - Serial flash
sources/dev.drivers/sfmc/tcc70xx/snor_mio.c - Embedded flash
sources/dev.drivers/eflash/tcc70xx/eflash.c - CAN driver
sources/dev.drivers/can/can_drv.c - CAN porting
sources/dev.drivers/can/tcc70xx/can_porting.c - CAN registers
sources/dev.drivers/can/tcc70xx/can_reg.h - PDM driver
sources/dev.drivers/pdm/pdm.c - GPIO driver
sources/dev.drivers/gpio/tcc70xx/gpio.c - PMIO interface
sources/dev.drivers/pmio/pmio.h - FMU interface
sources/dev.drivers/fmu/fmu.h
OS and networking
- FreeRTOS tasks
sources/os/freertos/FreeRTOS-Kernel/tasks.c - Task API
sources/os/freertos/FreeRTOS-Kernel/include/task.h - TCP/IP task
sources/os/freertos/FreeRTOS-Plus-TCP/FreeRTOS_TCP_IP.c - TCP internals
sources/os/freertos/FreeRTOS-Plus-TCP/include/FreeRTOS_IP_Private.h
Connections 14
- Application startup → Demo console: creates task
sources/app.sample/app.base/main.c - Application startup → Power demo: starts demo
sources/app.sample/app.base/main.c - Demo console → CAN demo: dispatches demo
sources/app.sample/app.console/console.c - HSM manager → Mailbox driver: sends commands
sources/app.drivers/hsm/tcc70xx/hsm_manager.c - HSM manager → Firmware update: uses update definitions
sources/app.drivers/hsm/tcc70xx/hsm_manager.c - HSM manager → Serial flash: selects storage
sources/app.drivers/hsm/tcc70xx/hsm_manager.c - HSM manager → Embedded flash: selects storage
sources/app.drivers/hsm/tcc70xx/hsm_manager.c - CAN driver → CAN porting: uses porting
sources/dev.drivers/can/can_drv.c - CAN driver → CAN registers: uses registers
sources/dev.drivers/can/can_drv.c - PDM driver → GPIO driver: uses GPIO
sources/dev.drivers/pdm/pdm.c - PDM driver → PMIO interface: uses PMIO
sources/dev.drivers/pdm/pdm.c - PDM driver → FMU interface: uses FMU
sources/dev.drivers/pdm/pdm.c - FreeRTOS tasks → Task API: implements API
sources/os/freertos/FreeRTOS-Kernel/tasks.c - TCP/IP task → TCP internals: uses internals
sources/os/freertos/FreeRTOS-Plus-TCP/FreeRTOS_TCP_IP.c