Xilinx header files installed by BSP

Kinsey Moore kinsey.moore at oarcorp.com
Tue Mar 26 20:14:10 UTC 2024


On Mon, Mar 25, 2024 at 3:34 PM Bernd Moessner <berndmoessner80 at gmail.com>
wrote:

>
> On 25.03.2024 13:26, Sebastian Huber wrote:
> > Hello,
> >
> > the BSPs for the Xilinx Zynq/ZynqMP/Versal platforms use code from
> > Xilinx. They also install some header files from Xilinx in the
> > top-level include directory of the BSP, for example:
> >
> > sleep.h  xbasic_types.h  xil_assert.h  xil_cache.h xil_exception.h
> > xil_io.h  xil_mem.h  xil_printf.h  xil_smc.h xil_types.h
> > xparameters.h  xpseudo_asm_gcc.h  xpseudo_asm.h xreg_cortexa53.h
> > xstatus.h
> >
> > This can lead to conflicts if I would like to build software from
> >
> > https://github.com/Xilinx/embeddedsw
> >
> > because now some header files are duplicated and available through
> > different include paths. Why do we install these header files? I think
> > they should be only used internally to build the BSP provided drivers.
> > The RTEMS drivers should expose their interfaces not through the
> > Xilinx header files.
> >
> > Any objections to remove the installation of the Xilinx header files?
> >
> Dear Sebastian,
>
> Zynq 7000 is not using them. Rtems-lwip requires some of the headers. I
> provided a patch which added "objxilinxsupport.yml" to the Zynq 7000
> configurations. After a discussion on Discord my patch was rolled back
> (which I think was a good decision).
>
> Chris and Kinsey, please correct me if I misunderstood something, but as
> far as I understood it the headers will be removed from the kernel.
> Afaik, there are some drivers for the ZU require them. Thus, it will
> require some time / planning to overwork the drivers and move the
> required headers to rtems-lwip.
>
> Long story short, Chris and Kinsey should be able to give some more
> detailed information on the strategy and timeline.
>

The eventual goal is that the installed Xilinx headers will no longer be
installed to prevent conflicts as Sebastian suggested. Currently, use of
the QSPI/NOR and NAND drivers in RTEMS requires access to those headers in
the installed BSP. Those drivers need to be wrapped to remove dependency on
installed Xilinx headers. It's on my todo list to wrap these drivers
properly.

Kinsey
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20240326/578966aa/attachment-0001.htm>


More information about the devel mailing list