[U-Boot] Tegra-specific header file location

Stephen Warren swarren at wwwdotorg.org
Thu Mar 31 00:48:10 CEST 2016


Masahiro,

I'm about to work on some refactoring of the Tegra-specific header files 
in U-Boot to enable support for another Tegra variant. I'd like to 
confirm where you think header files should be located before doing that.

I believe you want Tegra-specific headers moved into 
arch/arm/mach-tegra/include. That would probably be a good location for 
headers currently in arch/arm/include/asm/arch-tegra/. Does that sound 
correct to you?

What about SoC-specific headers currently in 
arch/arm/include/asm/arch-tegraNNN/; should they move to 
arch/arm/mach-tegra/tegraNNN/include?

A number of those header files primarily contain driver-internal 
definitions such as HW register layouts. I'd like to propose moving this 
private information into the relevant drivers/ directories where the 
driver implementation already is. There is no need to place it in an 
include directory where any C file could include it. For example, 99% of 
arch/arm/include/asm/arch-tegra/tegra_mmc.h might move to 
drivers/mmc/tegra_mmc_{priv,internal}.h or even into 
drivers/mmc/tegra_mmc.c itself. The only thing that wouldn't move is the 
public prototype for pad_init_mmc(); a function the MMC driver calls and 
board code is expected to implement. I am considering making a single 
header that defines all those Tegra-specific function prototypes so we 
can reduce the number of header files too. What do you think about this.


More information about the U-Boot mailing list