#50 Support for PIC EDS devices


Some newer PIC devices, such as the PIC24FJ256GB210 has a feature called Extended Data Space, that enabled usage of 96k RAM. This feature means, that the PSVPAG register has been replaced by two new registers; DSRPAG and DSWPAG. This also means, that the existing PIC port of FreeRTOS is not compatible with EDS PICs.

I have made some minor changes to the port which makes FreeRTOS run on EDS devices. The changes are basically to push/pop DSRPAG and DSWPAG instead of PSVPAG on context switches, as described here: http://sourceforge.net/projects/freertos/forums/forum/382005/topic/3939736 .

It would be very nice if someone with more kernel insight than me could verify that these changes will work under all circumstances, and maybe even update the PIC24 port to support EDS devices.


  • Damien Etienne
    Damien Etienne

    Having the same problem. Also the handling of the pointers cannot longer be done the same way, the __eds__ tag must be used to ensure pointers are being handled correctly which is not the case at this time and may lead to problems.

  • Some EDS support for PIC24 (rather than dsPIC) was added a couple of versions ago.

    • status: open --> closed
    • Group: --> Next Release (example)