The /config node (Configuration Options)
----------------------------------------

A number of run-time configuration options are provided in the /config node
of the control device tree. You can access these using fdtdec_get_config_int(),
fdtdec_get_config_bool() and fdtdec_get_config_string().

Available options are:

silent-console
	If present and non-zero, the console is silenced by default on boot.

no-keyboard
	Tells U-Boot not to expect an attached keyboard with a VGA console

u-boot,efi-partition-entries-offset
	If present, this provides an offset (in bytes, from the start of a
	device) that should be skipped over before the partition entries.
	This is used by the EFI/GPT partition implementation when a device
	is formatted.

	This setting will override any values configured via Kconfig.
