Many manufacturers apply licenses to the header files they publish for their products. These files usually consist of a long list of #defines which are a correlation between the names and adjacent numbers in the datasheets.
If I want to produce a driver or other software solution which is free of these license restrictions, will using the same names in my header file be valid? Am I allowed to copy the #defines straight out of the license file? Does it matter whether I type it out by hand from the datasheet or programmatically access the .pdf file or other data structure containing this information? (the datasheet isn't covered by the license.)
I'll assume that I need to leave licensed macros, functions, comments, and all other information outside of the #defines behind, but do I need to do more, like use a common prefix for these names (which I might do anyways to avoid namespace conflicts) or come up with my own acronyms/abbreviations? Do I have to reverse-engineer the registers without looking at the datasheet? Or is it completely impossible to produce a copyleft header file?