MITHILESH MATTAPALLI created a merge request: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1224

Project:Branches: mithileshm/rtems:virtual-can-driver to rtems/rtos/rtems:main
Author:   MITHILESH MATTAPALLI



## Summary

This merge request ports the standalone CTU CAN FD virtual test applications 
into the native RTEMS `testsuites/sptests` directory and upgrades the virtual 
CAN driver to support hardware fault simulation.

**Key Changes:**

1. **Virtual Driver Upgrades (`can-virtual.c`):**
   - Implemented the `virtual_can_priv` structure to support hardware error 
injection.
   - Added custom IOCTL `RTEMS_CAN_IOC_VIRT_ABORT` to simulate TX hardware 
aborts and act as a garbage collector, freeing the slot safely under 
`rtems_mutex_lock`.
2. **Automated Stress Tests (`spcan03` & `spcan04`):**
   - `spcan03.c`: Migrated from `can_1w`. Tests 1-way concurrent TX stress and 
injects hardware aborts via IOCTL to validate virtual queue thread safety.
   - `spcan04.c`: Migrated from `can_2w`. Tests 2-way concurrent read/write and 
evaluates loopback filtering.
3. **Configuration & Filtering Adjustments:**
   - **Memory Footprint:** Removed YAML POSIX/architecture exclusions. Globally 
set `-DRTEMS_CAN_FIFO_SIZE=4` in `cppflags` to support minimal 
memory-constrained targets natively.
   - **RX Filters:** Modified `spcan04.c` to open two separate file descriptors 
(`fd1`, `fd2`) to ensure threads can natively read each other's looped-back 
frames, bypassing local delivery restrictions.

## Generative AI

<!--If you have used AI please use the "AI Contribution" template otherwise 
leave this blank see our fulls statement at 
https://www.rtems.org/generative-ai/-->

<!--Default settings, if it is a dropdown it will set after submission-->

-- 
View it on GitLab: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1224
You're receiving this email because of your account on gitlab.rtems.org.


_______________________________________________
bugs mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/bugs

Reply via email to