xref: /openbmc/u-boot/Kconfig (revision 66afaef2)
151631259SMasahiro Yamada#
251631259SMasahiro Yamada# For a description of the syntax of this configuration file,
351631259SMasahiro Yamada# see Documentation/kbuild/kconfig-language.txt.
451631259SMasahiro Yamada#
551631259SMasahiro Yamadamainmenu "U-Boot $UBOOTVERSION Configuration"
651631259SMasahiro Yamada
751631259SMasahiro Yamadaconfig UBOOTVERSION
851631259SMasahiro Yamada	string
951631259SMasahiro Yamada	option env="UBOOTVERSION"
1051631259SMasahiro Yamada
1151631259SMasahiro Yamadaconfig KCONFIG_OBJDIR
1251631259SMasahiro Yamada	string
1351631259SMasahiro Yamada	option env="KCONFIG_OBJDIR"
1451631259SMasahiro Yamada
15*66afaef2SSimon Glass# Allow defaults in arch-specific code to override any given here
16*66afaef2SSimon Glasssource "arch/Kconfig"
17*66afaef2SSimon Glass
1851631259SMasahiro Yamadamenu "General setup"
1951631259SMasahiro Yamada
20e91c3c33SMasahiro Yamadaconfig LOCALVERSION
21e91c3c33SMasahiro Yamada	string "Local version - append to U-Boot release"
22e91c3c33SMasahiro Yamada	depends on !SPL_BUILD
23e91c3c33SMasahiro Yamada	help
24e91c3c33SMasahiro Yamada	  Append an extra string to the end of your U-Boot version.
25e91c3c33SMasahiro Yamada	  This will show up on your boot log, for example.
26e91c3c33SMasahiro Yamada	  The string you set here will be appended after the contents of
27e91c3c33SMasahiro Yamada	  any files with a filename matching localversion* in your
28e91c3c33SMasahiro Yamada	  object and source tree, in that order.  Your total string can
29e91c3c33SMasahiro Yamada	  be a maximum of 64 characters.
30e91c3c33SMasahiro Yamada
31e91c3c33SMasahiro Yamadaconfig LOCALVERSION_AUTO
32e91c3c33SMasahiro Yamada	bool "Automatically append version information to the version string"
33e91c3c33SMasahiro Yamada	depends on !SPL_BUILD
34e91c3c33SMasahiro Yamada	default y
35e91c3c33SMasahiro Yamada	help
36e91c3c33SMasahiro Yamada	  This will try to automatically determine if the current tree is a
37e91c3c33SMasahiro Yamada	  release tree by looking for git tags that belong to the current
38e91c3c33SMasahiro Yamada	  top of tree revision.
39e91c3c33SMasahiro Yamada
40e91c3c33SMasahiro Yamada	  A string of the format -gxxxxxxxx will be added to the localversion
41e91c3c33SMasahiro Yamada	  if a git-based tree is found.  The string generated by this will be
42e91c3c33SMasahiro Yamada	  appended after any matching localversion* files, and after the value
43e91c3c33SMasahiro Yamada	  set in CONFIG_LOCALVERSION.
44e91c3c33SMasahiro Yamada
45e91c3c33SMasahiro Yamada	  (The actual string used here is the first eight characters produced
46e91c3c33SMasahiro Yamada	  by running the command:
47e91c3c33SMasahiro Yamada
48e91c3c33SMasahiro Yamada	    $ git rev-parse --verify HEAD
49e91c3c33SMasahiro Yamada
50e91c3c33SMasahiro Yamada	  which is done within the script "scripts/setlocalversion".)
51e91c3c33SMasahiro Yamada
524a8ed8e2SMasahiro Yamadaconfig CC_OPTIMIZE_FOR_SIZE
534a8ed8e2SMasahiro Yamada	bool "Optimize for size"
544a8ed8e2SMasahiro Yamada	depends on !SPL_BUILD
554a8ed8e2SMasahiro Yamada	default y
564a8ed8e2SMasahiro Yamada	help
574a8ed8e2SMasahiro Yamada	  Enabling this option will pass "-Os" instead of "-O2" to gcc
584a8ed8e2SMasahiro Yamada	  resulting in a smaller U-Boot image.
594a8ed8e2SMasahiro Yamada
604a8ed8e2SMasahiro Yamada	  This option is enabled by default for U-Boot.
614a8ed8e2SMasahiro Yamada
62b724bd7dSSimon Glassconfig SYS_MALLOC_F
63b724bd7dSSimon Glass	bool "Enable malloc() pool before relocation"
64b724bd7dSSimon Glass	default 0x400
65b724bd7dSSimon Glass	help
66b724bd7dSSimon Glass	  Before relocation memory is very limited on many platforms. Still,
67b724bd7dSSimon Glass	  we can provide a small malloc() pool if needed. Driver model in
68b724bd7dSSimon Glass	  particular needs this to operate, so that it can allocate the
69b724bd7dSSimon Glass	  initial serial device and any others that are needed.
70b724bd7dSSimon Glass
71b724bd7dSSimon Glassconfig SYS_MALLOC_F_LEN
72b724bd7dSSimon Glass	hex "Size of malloc() pool before relocation"
73b724bd7dSSimon Glass	depends on SYS_MALLOC_F
74b724bd7dSSimon Glass	default 0x400
75b724bd7dSSimon Glass	help
76b724bd7dSSimon Glass	  Before relocation memory is very limited on many platforms. Still,
77b724bd7dSSimon Glass	  we can provide a small malloc() pool if needed. Driver model in
78b724bd7dSSimon Glass	  particular needs this to operate, so that it can allocate the
79b724bd7dSSimon Glass	  initial serial device and any others that are needed.
80b724bd7dSSimon Glass
811bf0979fSTom Rinimenuconfig EXPERT
821bf0979fSTom Rini        bool "Configure standard U-Boot features (expert users)"
831bf0979fSTom Rini        help
841bf0979fSTom Rini          This option allows certain base U-Boot options and settings
851bf0979fSTom Rini          to be disabled or tweaked. This is for specialized
861bf0979fSTom Rini          environments which can tolerate a "non-standard" U-Boot.
871bf0979fSTom Rini          Only use this if you really know what you are doing.
881bf0979fSTom Rini
8940ad4c4bSMasahiro Yamadaendmenu		# General setup
9040ad4c4bSMasahiro Yamada
91e91c3c33SMasahiro Yamadamenu "Boot images"
92e91c3c33SMasahiro Yamada
9351631259SMasahiro Yamadaconfig SPL_BUILD
9451631259SMasahiro Yamada	bool
9551631259SMasahiro Yamada	depends on $KCONFIG_OBJDIR="spl" || $KCONFIG_OBJDIR="tpl"
9651631259SMasahiro Yamada	default y
9751631259SMasahiro Yamada
9851631259SMasahiro Yamadaconfig TPL_BUILD
9951631259SMasahiro Yamada	bool
10051631259SMasahiro Yamada	depends on $KCONFIG_OBJDIR="tpl"
10151631259SMasahiro Yamada	default y
10251631259SMasahiro Yamada
10302627356SMasahiro Yamadaconfig SUPPORT_SPL
10402627356SMasahiro Yamada	bool
10502627356SMasahiro Yamada
106cf6bbe4cSMasahiro Yamadaconfig SUPPORT_TPL
107cf6bbe4cSMasahiro Yamada	bool
108cf6bbe4cSMasahiro Yamada
10951631259SMasahiro Yamadaconfig SPL
11051631259SMasahiro Yamada	bool
11102627356SMasahiro Yamada	depends on SUPPORT_SPL
11251631259SMasahiro Yamada	prompt "Enable SPL" if !SPL_BUILD
11351631259SMasahiro Yamada	default y if SPL_BUILD
11451631259SMasahiro Yamada	help
11551631259SMasahiro Yamada	  If you want to build SPL as well as the normal image, say Y.
11651631259SMasahiro Yamada
11751631259SMasahiro Yamadaconfig TPL
11851631259SMasahiro Yamada	bool
119cf6bbe4cSMasahiro Yamada	depends on SPL && SUPPORT_TPL
12051631259SMasahiro Yamada	prompt "Enable TPL" if !SPL_BUILD
12151631259SMasahiro Yamada	default y if TPL_BUILD
12251631259SMasahiro Yamada	default n
12351631259SMasahiro Yamada	help
12451631259SMasahiro Yamada	  If you want to build TPL as well as the normal image and SPL, say Y.
12551631259SMasahiro Yamada
126b6cf4439SMasahiro Yamadaconfig FIT
127b6cf4439SMasahiro Yamada	bool "Support Flattened Image Tree"
128b6cf4439SMasahiro Yamada	depends on !SPL_BUILD
129b6cf4439SMasahiro Yamada	help
130b6cf4439SMasahiro Yamada	  This option allows to boot the new uImage structrure,
131b6cf4439SMasahiro Yamada	  Flattened Image Tree.  FIT is formally a FDT, which can include
132b6cf4439SMasahiro Yamada	  images of various types (kernel, FDT blob, ramdisk, etc.)
133b6cf4439SMasahiro Yamada	  in a single blob.  To boot this new uImage structure,
134b6cf4439SMasahiro Yamada	  pass the the address of the blob to the "bootm" command.
135b6cf4439SMasahiro Yamada
136b6cf4439SMasahiro Yamadaconfig FIT_VERBOSE
137b6cf4439SMasahiro Yamada	bool "Display verbose messages on FIT boot"
138b6cf4439SMasahiro Yamada	depends on FIT
139b6cf4439SMasahiro Yamada
140b6cf4439SMasahiro Yamadaconfig FIT_SIGNATURE
141c4beb22fSRuchika Gupta	bool "Enable signature verification of FIT uImages"
142b6cf4439SMasahiro Yamada	depends on FIT
1439009798dSChris Kuethe	depends on DM
144c4beb22fSRuchika Gupta	select RSA
145b6cf4439SMasahiro Yamada	help
146b6cf4439SMasahiro Yamada	  This option enables signature verification of FIT uImages,
147b6cf4439SMasahiro Yamada	  using a hash signed and verified using RSA.
148b6cf4439SMasahiro Yamada	  See doc/uImage.FIT/signature.txt for more details.
149b6cf4439SMasahiro Yamada
15051631259SMasahiro Yamadaconfig SYS_EXTRA_OPTIONS
15151631259SMasahiro Yamada	string "Extra Options (DEPRECATED)"
15251631259SMasahiro Yamada	depends on !SPL_BUILD
15351631259SMasahiro Yamada	help
15451631259SMasahiro Yamada	  The old configuration infrastructure (= mkconfig + boards.cfg)
155ed36323fSMasahiro Yamada	  provided the extra options field. If you have something like
15651631259SMasahiro Yamada	  "HAS_BAR,BAZ=64", the optional options
15751631259SMasahiro Yamada	    #define CONFIG_HAS
15851631259SMasahiro Yamada	    #define CONFIG_BAZ	64
15951631259SMasahiro Yamada	  will be defined in include/config.h.
16051631259SMasahiro Yamada	  This option was prepared for the smooth migration from the old
16151631259SMasahiro Yamada	  configuration to Kconfig. Since this option will be removed sometime,
16251631259SMasahiro Yamada	  new boards should not use this option.
16351631259SMasahiro Yamada
1647f7563ceSMasahiro Yamadaconfig SYS_TEXT_BASE
165836d2cc2SAlexey Brodkin	depends on SPARC || ARC
1667f7563ceSMasahiro Yamada	hex "Text Base"
1677f7563ceSMasahiro Yamada	help
1687f7563ceSMasahiro Yamada	  TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
1697f7563ceSMasahiro Yamada
17033d88183SAlexey Brodkinconfig SYS_CLK_FREQ
17133d88183SAlexey Brodkin	depends on ARC
17233d88183SAlexey Brodkin	int "CPU clock frequency"
17333d88183SAlexey Brodkin	help
17433d88183SAlexey Brodkin	  TODO: Move CONFIG_SYS_CLK_FREQ for all the architecture
17533d88183SAlexey Brodkin
176e91c3c33SMasahiro Yamadaendmenu		# Boot images
17751631259SMasahiro Yamada
178ed36323fSMasahiro Yamadasource "common/Kconfig"
179ed36323fSMasahiro Yamada
180783e6a72SMasahiro Yamadasource "dts/Kconfig"
181783e6a72SMasahiro Yamada
182ed36323fSMasahiro Yamadasource "net/Kconfig"
183ed36323fSMasahiro Yamada
184ed36323fSMasahiro Yamadasource "drivers/Kconfig"
185ed36323fSMasahiro Yamada
186ed36323fSMasahiro Yamadasource "fs/Kconfig"
187ed36323fSMasahiro Yamada
188ed36323fSMasahiro Yamadasource "lib/Kconfig"
1891967982aSSimon Glass
1901967982aSSimon Glasssource "test/Kconfig"
191