# Generic Platform Port

Generic fallback implementation for platforms without a specific port.

## Purpose

This port provides minimal implementations that serve as a template or fallback
for platforms that don't have a dedicated port yet.

## Usage

**⚠️ WARNING**: This is a fallback implementation. For production use, you should:

1. **Create a platform-specific port** in `hw_port/<YourPlatform>/include/trax_hw_port.h`
2. **Or configure the macros** in `App/Config/trax_config.h`

## Required Customization

You MUST define the following in your hardware port or config:

### Critical Section Macros

```c
#define TRAX_ENTER_CRITICAL()  /* Your platform's critical section entry */
#define TRAX_EXIT_CRITICAL()   /* Your platform's critical section exit */
```

### Timestamp Source

```c
#define TRAX_GET_TIMESTAMP()   /* Read your hardware timer counter */
#define TRAX_TIMESTAMP_FREQ    /* Timer frequency in Hz */
```

### Optional

```c
#define TRAX_CPU_FREQ          /* CPU frequency in Hz (for optimizations) */
```

## Examples

See `hw_port/ARM_Cortex_M/` for a complete implementation example.

## Integration

1. Copy `hw_port/Generic/` to `hw_port/<YourPlatform>/`
2. Customize `trax_hw_port.h` for your platform
3. Add the platform's `include/` folder to your build system's include paths
