- The files in the i386 directory have been moved to common x86 directories by FreeBSD:
- freebsd/sys/i386/include/machine/bus.h
- freebsd/sys/x86/include/machine/legacyvar.h
- freebsd/sys/x86/include/machine/specialreg.h
- Add header files in rtemsbsd directory to direct compiler to new files
- cpusets and SMP are currently not supported in libbsd for RTEMS
- Disable the ifc_cpus context variable and replace its usage,
essentially hard-coding for cpu 0
- callout_reset_on takes a cpu which is ignored by the subsequent call
to callout_reset_sbt_on in RTEMS.
- The macro is redefined to discard the cpu argument directly which
enables uses of it with cpu-dependent variables (disabled in
RETMS) without further changes, e.g. in iflib.c.
- Do not build a test if a dependency is not enabled.
- Perform a dependency check and generate an error if an enabled module
depends on a disabled module.
Closes#4077
- Provide support for separate user and kernel include paths in
libbsd.py.
- Update all added files with a suitable context to build them
with. Supported contexts are `kernel` and `user`.
- Kernel source use the kernel, CPU, and build header paths in
this order.
- User source use the user, kernel, CPU and build header paths
in this order. The FreeBSD /usr/include tree has some kernel
header files installed as well as user land header files. This
complicates the separation as some kernel header files are not
visible to user land code while other are. This is handled by
appending the kernel header paths to the user header paths so
user land code will include a user header with the same name as
a kernel header over the kernel header but will find a kernel
header if there is no matching user header file.
Closes#4067
At least the powerpc C++ compiler defines currently _GNU_SOURCE due to a GCC
configuration error. This leads to conflicting qsort_r() definitions.
As a workaround undefine _GNU_SOURCE for this C++ compatibility test file.
Update #4078.
Some targets support only flushing or invalidating complete cache lines.
In this cases misaligned buffers might lead to unexpected results. This
patch adds a flag that allows drivers to signal to the bus dma driver
that it is OK to round a buffer to the next full cache line. That's for
example necessary if a driver wants to send out 14 byte via a USB DMA.
Only the driver knows whether these 14 bytes are located in an otherwise
unused cache line aligned buffer.
There is a bug in the #ifdef regarding FDT so this file hasn't been
compiled. If that bug is solved, the driver doesn't work for some other
reason.
With the FDT-bug the driver hasn't been used by anyone. So just remove
it again.