illustris / FreeRTOS-RISCV

A port of FreeRTOS for the RISC-V ISA
75 stars 42 forks source link

Doesn't compile #6

Closed aesee closed 7 years ago

aesee commented 7 years ago

Hello,

I'm trying to compile FreeRTOS but unsuccessfully. I get an error:

../Source/portable/GCC/RISCV/port.c:225:31: error 'CONFIG_STRING_ADDR' undeclared (first use in this function) uint32_t addr = (uint32_t)CONFIG_STRING_ADDR;

Maybe I'm doing something wrong? I just ran make and that's it.

sherrbc1 commented 7 years ago

As far as I can tell, it appears to be a mechanism introduced on top of the original port here for detecting where certain peripherals are mapped. Unfortunately, its use is not documented. See my related issue over at https://github.com/illustris/FreeRTOS-RISCV/issues/5.

Keep in mind that this FreeRTOS port was written to conform for RISC-V privileged specification 1.9. You'll want to build using older tools to use this port without modification. A few things have changed with the latest version of the architecture and tools. See 1.10 Privilege Specification. I have a working port to 1.10 and plan to issue a merge request soon, though I suspect this page is dead.

illustris commented 7 years ago

Yes, @sherrbc1 is right. The configstring was a way to get the address of timers, IO and other devices in priv spec 1.9. This has changed with version 1.10. This repo has been inactive since I got busy with academic work. I intend to continue maintaining and updating this port starting from the second week of January. If you already have a working 1.10 port, please send a merge request.

mjsraman commented 7 years ago

@sherrbc1 I am working on freeRTOS port to RISCV. I am facing issue because of change in specifications. Can I have access to your patch to test it?

Thanks Shankar

sherrbc1 commented 7 years ago

See it here. The changes were minor.

https://github.com/illustris/FreeRTOS-RISCV/pull/7

mjsraman commented 7 years ago

Thanks, it works. Appreciate your help.