-
Notifications
You must be signed in to change notification settings - Fork 223
Porting picoTCP HW
PicoTCP can run on several different hardware architectures and can be integrated with virtu- ally any operating system or within a standalone application. It is possible to run PicoTCP on big-endian as well as little-endian CPU configurations. PicoTCP uses gcc-specific tags that may not be compatible with other compilers. The amount of resources needed may vary depending on the modules that are compiled-in. However, adapting to a specific hardware platform or for a particular use may require some integration effort.
ensure that the license of your Board Support Package (BSP) is compatible with the license of PicoTCP you are using before distributing any derivative works.
PicoTCP relies on a simple set of system-specific calls that must be implemented externally from the target. Briefly, the interface needed for the stack to run is composed by:
- A mechanism to allocate memory dynamically on the target (malloc/free)
- A stable, monotonic time source variable, in milliseconds, to update internal timers
For the memory allocation interface, two symbols have to be defined by the system:
-
void *pico_zalloc(uint32_t size)
- memory allocator that allocates an object of the givensize
and set its content to 0 -
void pico_free(void *ptr)
- memory deallocator
Questions or remarks? Please contact us!
[email protected] | picotcp.altran.be | Twitter | Facebook
Getting Started
- Setting up the environment
- Testing
- Configuring and compiling
- Running picoTCP on Linux - Deprecated (see setting up)
- Running picoTCP on Windows
Porting
- Build process explained
- Porting the build to another compiler or IDE
- Porting picoTCP to your favorite embedded target
- Porting picoTCP to your favorite Operating System
- Example device driver
Development