1、Porting Zephyr OS to a SoC(Cortex-R5)M Tamseel ShamsAssociate Staff EngineerSamsung Semiconductor India ResearchAgenda About Zephyr OS Porting Components Hardware Support Implementation Debugging Tips Key tools and build commands Timers UART Driver Things for FutureAbout Zephyr OS Zephyr is a small
2、real-time operating system(RTOS)for connected,resource-constrained and embedded devices Zephyr OS is based on small scale kernel to support simple embedded system It is a mini kernel which provides similar features like Linux kernel.Like memory management,multi threading,scheduler,interrupt handling
3、 Supports wide verity of CPU architectures Provides build system(west)which makes easy to compile multiple kernel modules along with user applications Provides SDK which has tool chains for different architectures at one placeFig.1:Zephyr System ArchitectureImage Reference:https:/ this session will
4、discuss about key folder changes and adding new project to Zephyr Adding a new SoC Adding a new Board Adding new Drivers Adding Device TrePorting ComponentsImage Reference:https:/docs.zephyrproject.org/3.1.0/hardware/porting/board_porting.htmlFig.2:Zephyr Configuration HierarchyHardware Support Impl
5、ementationFig.3 Architecture:arm CPU core:CORTEX_R5 SoC family:_(e.g.samsung_xyz)SoC Series:CR5 SoC:CR5 Drivers:Serial,Timer,Interrupt,etc.Board:Samsung BoardHardware Configuration Hierarchy:Architecture-arc,arm,nios2,posix,riscv32,x86,xtensa,etc.CPU Core-Implements early boot sequence,interrupt and
6、 exception handling,thread context switching,thread creation and termination,CPU idling/power management,fault management,linker scripts and toolchains.E.g.ARCV2,CORTEX_M0PLUS,CORTEX_R5,etc.SoC Family-Represents a single SoC type that can have more than one variations in terms of peripherals and fea