Forum Discussion

dim1's avatar
dim1
Icon for New Contributor rankNew Contributor
6 months ago
Solved

NIOS V with FreeRTOS

Hello,

With the latest QuartusPrime Standard 24.1, the problem described in this thread, from one year ago, still exists:

Nios-V-with-FreeRTOS

Briefly, when creating BSP that uses FreeRTOS, only the Altera JTAG UART and Intel NIOSV FreeRTOS drivers are found. None of the other Altera/Intel drivers are listed.

Is there a workaround for this problem?

Thank you,

d.

  • I can confirm this is still a problem in Q25.1. It seems it may be worse, in that fewer Altera drivers are picked up.

    Here's a work around we are using...

    1. Build the bsp for HAL in another directory. This will pull in all those drivers. Then just copy the <your bsp dir for hal>\drivers (inc and src directories) to your FreeRTOS bsp drivers directory. You could also just pick the missing Altera drivers from inc and src if you'd rather not see 'overwrite' messages for those that were already in FreeRTOS bsp.

    2. Edit your FreeRTOS bsp alt_sys_init.c file to add the missing drivers' init function calls and the storage reservation macros. Basically you are pulling the HAL bsp's alt_sys_init.c data.

    3. It seems the FreeRTOS system.h -is- getting correctly setup for those drivers even though they are not there. But if you find it is not (like base address or interrupt vector are wrong or missing) you can manually update system.h.

    If you'll rebuild the bsp a lot you can write a python script to do the patching.

10 Replies

  • Hi,

    I have reviewed the issue, let me first communicate with the relevant colleagues, I will get back to you as soon as I have a reply.

    Regards,

    Zheng

    • dim1's avatar
      dim1
      Icon for New Contributor rankNew Contributor

      Hello,

      Just to add - exact same problem exists in the latest Quartus Prime Pro.

      So both, Pro and Standard editions have this issue.

      Thank you,

      d.

  • I can confirm this is still a problem in Q25.1. It seems it may be worse, in that fewer Altera drivers are picked up.

    Here's a work around we are using...

    1. Build the bsp for HAL in another directory. This will pull in all those drivers. Then just copy the <your bsp dir for hal>\drivers (inc and src directories) to your FreeRTOS bsp drivers directory. You could also just pick the missing Altera drivers from inc and src if you'd rather not see 'overwrite' messages for those that were already in FreeRTOS bsp.

    2. Edit your FreeRTOS bsp alt_sys_init.c file to add the missing drivers' init function calls and the storage reservation macros. Basically you are pulling the HAL bsp's alt_sys_init.c data.

    3. It seems the FreeRTOS system.h -is- getting correctly setup for those drivers even though they are not there. But if you find it is not (like base address or interrupt vector are wrong or missing) you can manually update system.h.

    If you'll rebuild the bsp a lot you can write a python script to do the patching.

    • dim1's avatar
      dim1
      Icon for New Contributor rankNew Contributor

      Thank you for this information. I was wondering if copying the source code, manually, from the IP-s, would work. Now you confirmed it.

  • Hi All,

    I wanted to let you know that we plan to add support for other IPs in future versions of Quartus.

    Sue

  • Hi @XleraSolutions,


    Thanks for sharing your thoughts and workaround on this.

    Appreciate the actions.


    Hi @dim1,


    Greetings, just checking in to see if there is any further doubts in regards to this matter.

    Hope your doubts have been clarified.


    Best Wishes

    BB


  • Hi @XleraSolutions,


    Great! Good to know that your doubts has been clarified, with no further clarification on this thread, it will be transitioned to community support for further help on doubts in this thread.


    Please login to ‘ https://supporttickets.intel.com/s/?language=en_US’, view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you on your follow-up questions.

    Thank you for the questions and as always pleasure having you here.


    Best Wishes

    BB