19 Mar, 2018
1 commit
-
Porting the cadence USB3 (CDNS3) driver from kernel to u-boot. We only support
the gadget (device mode), while the host mode is not supported. Users remains
to use xhci-imx8 driver for host mode.Some changes in the CDNS3 driver porting:
1. Add match_ep call back to usb_gadget_ops. The CDNS3 gadget driver replies
on this operation to bind the usb_ep/usb_ss_ep with the endpoint descriptor
when function layer uses usb_ep_autoconfig to add endpoint descriptors to gadget.
So that CDNS3 driver can know the EP information and configure the EP once the
set configuration request is received.2. U-boot does not have CMA, so it won't allocate uncached memory. Need to flush
TRB and its DMA buffer before prime to usb controller and after complete transfer.3. In core.c, we add functions to hook with u-boot. It needs uplayer like
to pass the register base address of each part of the USB controller.4. Force the CDNS3 gadget max speed to HS. The SuperSpeed is not supported by u-boot,
so disable it in gadget driver. A configuration USB_CDNS3_GADGET_FORCE_HIGHSPEED is
selected.5. Added gadget_is_cdns3 checking to provide bcdUSB value in device descriptor.
6. Moved some new fields in usb_ep structure to usb_ss_ep, since u-boot does not have them.
7. Remove host part codes as it is not supported by this driver.
Signed-off-by: Ye Li
Acked-by: Peter Chen
03 Nov, 2017
3 commits
-
Some platforms require more complex U-Boot images than we can easily
generate via the mkimage command line, for instance to load additional
image files.
Introduce a CONFIG_SPL_FIT_SOURCE and CONFIG_SPL_FIT_GENERATOR symbol,
which can either hold an .its source file describing the image layout,
or, in the second case, a generator tool (script) to create such
a source file. This script gets passed the list of device tree files
from the CONFIG_OF_LIST variable.
A platform or board can define either of those in their defconfig file
to allow an easy building of such an image.Signed-off-by: Andre Przywara
Reviewed-by: Jagan Teki
(cherry picked from commit 1a12fdc461421b5a385ab5d7926e5425d429d48e) -
Have changed to use imx-mkimage to package images, move the ARM trusted
firmware bl31 image out of u-boot to imx-mkimage.Signed-off-by: Ye Li
-
Bind ATF with u-boot-nodtb.bin together.
Since now ATF's entry is 0x40001000, so when
generating u-boot.img, we use 0x40001000
as the load and entry address.Signed-off-by: Peng Fan
14 Mar, 2017
1 commit
-
Signed-off-by: Tom Rini
10 Mar, 2017
1 commit
-
DTC 1.4.2 or later checks DT unit-address without reg property and
vice-versa, and generates lots of warnings. Fixing DT files will
take for a while. Until then, let's turn off the check unless
building with W=*.Introduce a new helper dtc-option to check if the option is supported
in order to suppress warnings on older versions.Signed-off-by: Masahiro Yamada
Reviewed-by: Simon Glass
Tested-by: Bin Meng
28 Feb, 2017
1 commit
-
Signed-off-by: Tom Rini
14 Feb, 2017
1 commit
-
Signed-off-by: Tom Rini
09 Feb, 2017
3 commits
-
Use the kbuild style log.
Prior to this commit:
./scripts/check-config.sh u-boot.cfg \
./scripts/config_whitelist.txt . 1>&2With this commit:
CFGCHK u-boot.cfg
Signed-off-by: Masahiro Yamada
Reviewed-by: Simon Glass -
The previous commit ("add a new command to show .config contents")
improves the basic infrastructure of "embed a compressed file into
the U-Boot image, and print it by a command". The same pattern for
the "license" command.This commit reworks the command to improve the following:
[1] Improve log style
Kbuild style log
GZIP cmd/license_data.gz
CHK cmd/license_data_gz.h
UPD cmd/license_data_gz.h
CHK cmd/license_data_size.h
UPD cmd/license_data_size.hinstead of the bare Make log:
cat ./Licenses/gpl-2.0.txt | gzip -9 -c | \
tools/bin2header license_gzip > ./include/license.h[2] Collect related code into the "cmd" directory
Prior to this commit, the license.h was created by tools/Makefile,
placed under the "include" directory, included from cmd/license.c,
and deleted by the top-level Makefile. It is not a good idea to
scatter related code.[3] Drop the fixed-malloc size LICENSE_MAX
Just allocate the minimum required size of buffer because we know
the size of the original gpl-2.0.txt.[4] Fix more issues
Terminate the buffer with zero to prevent puts() from over-running.
Add "static" to do_license.Signed-off-by: Masahiro Yamada
Reviewed-by: Simon Glass -
This feature is inspired by /proc/config.gz of Linux. In Linux,
if CONFIG_IKCONFIG is enabled, the ".config" file contents are
embedded in the kernel image. If CONFIG_IKCONFIG_PROC is also
enabled, the ".config" contents are exposed to /proc/config.gz.
Users can do "zcat /proc/config.gz" to check which config options
are enabled on the running kernel image.The idea is almost the same here; if CONFIG_CMD_CONFIG is enabled,
the ".config" contents are compressed and saved in the U-Boot image,
then printed by the new command "config".The usage is quite simple. Enable CONFIG_CMD_CONFIG, then run
> config
from the command line interface. The ".config" contents will be
printed on the console.This feature increases the U-Boot image size by about 4KB (this is
mostly due to the gzip-compressed .config file). By default, it is
enabled only for Sandbox because we do not care about the memory
footprint on it. Of course, this feature is architecture agnostic,
so you can enable it on any board if the image size increase is
acceptable for you.Signed-off-by: Masahiro Yamada
Reviewed-by: Simon Glass
06 Feb, 2017
1 commit
-
Use this new option to control the location of 16-bit init. This will allow
us to place this in SPL if needed.Signed-off-by: Simon Glass
Reviewed-by: Bin Meng
01 Feb, 2017
1 commit
-
The patch implements secure booting for the mvebu architecture.
This includes:
- The addition of secure headers and all needed signatures and keys in
mkimage
- Commands capable of writing the board's efuses to both write the
needed cryptographic data and enable the secure booting mechanism
- The creation of convenience text files containing the necessary
commands to write the efusesThe KAK and CSK keys are expected to reside in the files kwb_kak.key and
kwb_csk.key (OpenSSL 2048 bit private keys) in the top-level directory.Signed-off-by: Reinhard Pfau
Signed-off-by: Mario Six
Reviewed-by: Stefan Roese
Reviewed-by: Simon Glass
Signed-off-by: Stefan Roese
31 Jan, 2017
1 commit
-
Signed-off-by: Tom Rini
10 Jan, 2017
1 commit
-
Signed-off-by: Tom Rini
03 Jan, 2017
3 commits
-
Signed-off-by: Tom Rini
-
To being able to sign created binaries, we need to know the HAB Blocks
for that image. Especially for the imximage type the HAB Blocks are
only available during creation of the image. We want to preserve the
information until we get to sign the files.
In the verbose case we still get them printed out instead of writing
to log files.Cc: sbabic@denx.de
v2-Changes:
- No usage of MKIMAGEOUTPUT_$(@F) macro.
- Predefine default value /dev/null in every involved Makefile.Signed-off-by: Sven Ebenfeld
Reviewed-by: George McCollister
Tested-by: George McCollister -
When we want to use Secure Boot with HAB from SPL over U-Boot.img,
we need to append the IVT to the image and leave space for the CSF.
Images generated as firmware_ivt can directly be signed using the
Freescale code signing tool. For creation of a CSF, mkimage outputs
the correct HAB Blocks for the image.
The changes to the usual firmware image class are quite small,
that is why I implemented that directly into the default_image.Cc: sbabic@denx.de
v2-Changes: None
Signed-off-by: Sven Ebenfeld
Reviewed-by: George McCollister
Tested-by: George McCollister
20 Dec, 2016
5 commits
-
Signed-off-by: Tom Rini
-
Change x86 boards to use binman to produce the ROM. This involves adding the
image definition to the device tree and using it in the Makefile. The
existing ifdtool features are no-longer needed.Note that the u-boot.dtsi file is common and is used for all x86 boards which
use microcode. A separate emulation-u-boot-dtsi is used for the others.Signed-off-by: Simon Glass
Reviewed-by: Bin Meng
Tested-by: Bin Meng -
Move sunxi boards to use binman. This involves adding the image definition
to the device tree and using it in the Makefile.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini -
Add a standard command definition for binman so that it can be used in
makefiles.Signed-off-by: Simon Glass
Reviewed-by: Bin Meng
Tested-by: Bin Meng
06 Dec, 2016
1 commit
-
Signed-off-by: Tom Rini
03 Dec, 2016
1 commit
-
A common requirement when converting CONFIG options to Kconfig is to check
that the effective configuration has not changed due to the conversion. Add
a target which creates this configuration (in the form of u-boot.cfg) but
does not build U-Boot. This speeds up the checking.Signed-off-by: Simon Glass
15 Nov, 2016
3 commits
-
These files now need to be in a standard place so that they can be located
by generic Makefile rules. Move them to the 'lib' directory.Signed-off-by: Simon Glass
Signed-off-by: Alexander Graf -
When building an EFI app we need three things:
- start-up code
- relocation code
- link scriptThese are all different for each architecture. We also need special
compiler flags in some cases.Add top-level Makefile variables for these along with documentation.
Signed-off-by: Simon Glass
Signed-off-by: Alexander Graf -
Signed-off-by: Tom Rini
01 Nov, 2016
1 commit
-
Signed-off-by: Tom Rini
30 Oct, 2016
1 commit
-
CONFIG_SUNXI -> CONFIG_ARCH_SUNXI
and removed CONFIG_SUNIX from config_whitelist.txtCc: Simon Glass
Cc: Ian Campbell
Cc: Hans de Goede
Signed-off-by: Jagan Teki
Reviewed-by: Hans de Goede
Signed-off-by: Hans de Goede
18 Oct, 2016
1 commit
-
Signed-off-by: Tom Rini
08 Oct, 2016
1 commit
07 Oct, 2016
2 commits
-
Our build system still parses ad-hoc CONFIG options in header files
and generates include/autoconf.mk so that Makefiles can reference
them. This gimmick was introduced in the pre-Kconfig days and will
be kept until Kconfig migration is completed.The include/autoconf.mk is generated like follows:
[1] Preprocess include/common.h with -DDO_DEPS_ONLY and
retrieve macros into include/autoconf.mk.tmp
[2] Reformat include/autoconf.mk.dep into include/autoconf.mk
with tools/scripts/define2mk.sed script
[3] Remove include/autoconf.mk.tmpHere, include/autoconf.mk.tmp is similar to u-boot.cfg, which is
also generated by preprocessing include/config.h with -DDO_DEPS_ONLY.
In other words, there is much overlap among include/autoconf.mk and
u-boot.cfg build rules.So, the idea is to split the build rule of include/autoconf.mk
into two stages. The first preprocesses headers into u-boot.cfg.
The second parses the u-boot.cfg into include/autoconf.mk. The
build rules of u-boot.cfg in Makefile and spl/Makefile will be gone.Signed-off-by: Masahiro Yamada
Reviewed-by: Simon Glass -
I am going to move the build rule of u-boot.cfg. Before that,
no_new_adhoc_configs_check must be tweaked to not depend on it.The ad-hoc option check can be done at the end of build, along
with other checks.Signed-off-by: Masahiro Yamada
Reviewed-by: Simon Glass
06 Oct, 2016
1 commit
-
This format can be flashed directly at address 0 of
the NAND FLASH, as it contains all necessary headers.Signed-off-by: Albert ARIBAUD (3ADEV)
03 Oct, 2016
1 commit
-
Signed-off-by: Tom Rini
27 Sep, 2016
1 commit
-
trini: Drop local memset() from
examples/standalone/mem_to_mem_idma2intr.cSigned-off-by: Tom Rini
22 Sep, 2016
2 commits
-
Prior to the previous patch, a freshly created .u-boot.cfg.cmd may not
correctly represent all dependencies for u-boot.cfg. The previous change
only solved this issue for fresh builds; when performing an incremental
build, the deficient .u-boot.cfg.cmd is already present, so u-boot.cfg
is not rebuilt, and hence .u-boot.cfg.cmd is not rebuilt with the correct
content.Solve this by explicitly detecting when the dependency file .u-boot.cfg.d
has not been integrated into .u-boot.cfg.cmd, and force u-boot.cfg to be
rebuilt in this case by deleting it first. This is possible since
if_changed_dep will always delete .u-boot.cfg.d when it executes
successfully, so its presence means either that the previous build was
made by a source tree that contained a Makefile that didn't include the
previous patch, or that the build failed part way through executing
if_changed_dep for u-boot.cfg. Forcing a rebuild of u-boot.cfg is required
in the former case, and will cause no additional work in the latter case,
since the file would be rebuilt anyway for the same reason it was being
rebuilt by the previous build.Signed-off-by: Stephen Warren
-
cmd_cpp_cfg generates a dependency output, but because it's invoked using
if_changed rather than if_changed_dep, that dependency file is ignored.
This results in Kbuild not knowing about which files u-boot.cfg depends
on, so it may not be rebuilt when required.A practical result of this is that u-boot.cfg may continue to reference
CONFIG_ options that no longer exist in the source tree, and this can
cause the adhoc config options check to fail.This change modifies Makefile to use if_changed_dep, which in turn causes
all dependencies to be known to the next make invocation.Signed-off-by: Stephen Warren
17 Sep, 2016
1 commit
-
New CONFIG options should be added via Kconfig. To help prevent new ad-hoc
CONFIGs from being added, give a build error when these are detected.Signed-off-by: Simon Glass
Acked-by: Stephen Warren
Tested-by: Stephen Warren