[GSOC] : Reducing Publicly Installed .h Files
Joel Sherrill
joel.sherrill at OARcorp.com
Sun Apr 14 20:34:47 UTC 2013
Hi
I had an insight which makes it easy to answer the question
"What BSP specific .h files do the testsuites depend upon?"
We typically think of BSPs for real hardware with levels of
complexity. It is easy to forget that RTEMS has a number of
very simple BSPs for the simulators built into gdb.
Looking at gdbv850sim, m32rsim, m32csim, and h8sim, I can
pretty confidently state that this is the MINIMUM set of .h files
a BSP must install:
$(PROJECT_INCLUDE)/bsp.h
$(PROJECT_INCLUDE)/tm27.h
$(PROJECT_INCLUDE)/bspopts.h
$(PROJECT_INCLUDE)/bsp/bootcard.h
$(PROJECT_INCLUDE)/coverhd.h
And here are some notes on these:
$(PROJECT_INCLUDE)/bsp.h - Universally needed per current rules
$(PROJECT_INCLUDE)/tm27.h - Only used by tmtests/tm27
$(PROJECT_INCLUDE)/bspopts.h - Universally needed per current rules
$(PROJECT_INCLUDE)/bsp/bootcard.h - Needed for fatal error information
Rework possible since it has mix of what I would think is internal
to the
BSP and what would be part of its public interface.
$(PROJECT_INCLUDE)/coverhd.h - Used by tmtests.
We could discuss obsoleting this. I bet most recent BSPs use the
version
which default all values to 0.
Anything beyond that needs to be questioned using this as a starting point
for things which can be public:
+ Is it in support of an optional (but standard) API?
- PCI
- PIC IRQ
- ... more TBD but a known list ...
+ ... more questions TBD ...
If the answer isn't yes based on that growing list of questions, then we
should
push to make it private.
Every publicly installed .h file should be there for a known reason. :)
--
Joel Sherrill, Ph.D. Director of Research & Development
joel.sherrill at OARcorp.com On-Line Applications Research
Ask me about RTEMS: a free RTOS Huntsville AL 35805
Support Available (256) 722-9985
More information about the devel
mailing list