| 411cf32d | 26-Apr-2017 |
Andre Przywara <andre.przywara@arm.com> |
SPL: FIT: allow loading multiple images
So far we were not using the FIT image format to its full potential: The SPL FIT loader was just loading the first image from the /images node plus one of the
SPL: FIT: allow loading multiple images
So far we were not using the FIT image format to its full potential: The SPL FIT loader was just loading the first image from the /images node plus one of the listed DTBs. Now with the refactored loader code it's easy to load an arbitrary number of images in addition to the two mentioned above. As described in the FIT image source file format description, iterate over all images listed at the "loadables" property in the configuration node and load every image at its desired location. This allows to load any kind of images: - firmware images to execute before U-Boot proper (for instance ARM Trusted Firmware (ATF)) - firmware images for management processors (SCP, arisc, ...) - firmware images for devices like WiFi controllers - bit files for FPGAs - additional configuration data - kernels and/or ramdisks The actual usage of this feature would be platform and/or board specific.
Also update the FIT documentation to mention the new SPL feature and provide an example .its file to demonstrate its features.
Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Lokesh Vutla <lokeshvuta@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Heiko Stuebner <heiko@sntech.de> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Jagan Teki <jagan@openedev.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
show more ...
|
| 8baa3818 | 26-Apr-2017 |
Andre Przywara <andre.przywara@arm.com> |
SPL: FIT: factor out spl_load_fit_image()
At the moment we load two images from a FIT image: the actual U-Boot image and the .dtb file. Both times we have very similar code, that deals with alignmen
SPL: FIT: factor out spl_load_fit_image()
At the moment we load two images from a FIT image: the actual U-Boot image and the .dtb file. Both times we have very similar code, that deals with alignment requirements the media we load from imposes upon us. Factor out this code into a new function, which we just call twice.
Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Heiko Stuebner <heiko@sntech.de> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Jagan Teki <jagan@openedev.com>
show more ...
|
| 5c8c8fac | 26-Apr-2017 |
Andre Przywara <andre.przywara@arm.com> |
SPL: FIT: improve error handling
At the moment we ignore any errors due to missing FIT properties, instead go ahead and calculate our addresses with the -1 return value. Fix this and bail out if any
SPL: FIT: improve error handling
At the moment we ignore any errors due to missing FIT properties, instead go ahead and calculate our addresses with the -1 return value. Fix this and bail out if any of the mandatory properties are missing.
Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Heiko Stuebner <heiko@sntech.de> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Jagan Teki <jagan@openedev.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
show more ...
|
| 736806fb | 26-Apr-2017 |
Andre Przywara <andre.przywara@arm.com> |
SPL: FIT: rework U-Boot image loading
Currently the SPL FIT loader always looks only for the first image in the /images node a FIT tree, which it loads and later executes.
Generalize this by lookin
SPL: FIT: rework U-Boot image loading
Currently the SPL FIT loader always looks only for the first image in the /images node a FIT tree, which it loads and later executes.
Generalize this by looking for a "firmware" property in the matched configuration subnode, or, if that does not exist, for the first string in the "loadables" property. Then using the string in that property, load the image of that name from the /images node. This still loads only one image at the moment, but refactors the code to allow extending this in a following patch. To simplify later re-usage, we also generalize the spl_fit_select_index() function to not return the image location, but just the node offset.
Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Lokesh Vutla <lokeshvuta@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Heiko Stuebner <heiko@sntech.de> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Jagan Teki <jagan@openedev.com>
show more ...
|
| 4b9340ab | 26-Apr-2017 |
Andre Przywara <andre.przywara@arm.com> |
SPL: FIT: refactor FDT loading
Currently the SPL FIT loader uses the spl_fit_select_fdt() function to find the offset to the right DTB within the FIT image. For this it iterates over all subnodes of
SPL: FIT: refactor FDT loading
Currently the SPL FIT loader uses the spl_fit_select_fdt() function to find the offset to the right DTB within the FIT image. For this it iterates over all subnodes of the /configuration node in the FIT tree and compares all "description" strings therein using a board specific matching function. If that finds a match, it uses the string in the "fdt" property of that subnode to locate the matching subnode in the /images node, which points to the DTB data. Now this works very well, but is quite specific to cover this particular use case. To open up the door for a more generic usage, let's split this function into: 1) a function that just returns the node offset for the matching configuration node (spl_fit_find_config_node()) 2) a function that returns the image data any given property in a given configuration node points to, additionally using a given index into a possbile list of strings (spl_fit_select_index()) This allows us to replace the specific function above by asking for the image the _first string of the "fdt" property_ in the matching configuration subnode points to.
This patch introduces no functional changes, it just refactors the code to allow reusing it later.
(diff is overly clever here and produces a hard-to-read patch, so I recommend to throw a look at the result instead).
Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Lokesh Vutla <lokeshvuta@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Heiko Stuebner <heiko@sntech.de> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Jagan Teki <jagan@openedev.com>
show more ...
|
| 4125bbce | 16-May-2017 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-mmc
- Add #undef CONFIG_DM_MMC_OPS to omap3_logic in the SPL build case, to match other TI platforms in the same situation.
Signed-off-by: Tom Ri
Merge branch 'master' of git://git.denx.de/u-boot-mmc
- Add #undef CONFIG_DM_MMC_OPS to omap3_logic in the SPL build case, to match other TI platforms in the same situation.
Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
| d09ec7f8 | 16-May-2017 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-video |
| 10ba6b33 | 05-May-2017 |
Philipp Tomsich <philipp.tomsich@theobroma-systems.com> |
video: bmp: rename CONFIG_BMP_24BMP to CONFIG_BMP_24BPP
Due to a typo, the 24 bit-per-pixel configuration ends in 24BMP instead of 24BPP. This change renames it throughout the source tree for consis
video: bmp: rename CONFIG_BMP_24BMP to CONFIG_BMP_24BPP
Due to a typo, the 24 bit-per-pixel configuration ends in 24BMP instead of 24BPP. This change renames it throughout the source tree for consistency and to make moving these options into Kconfig easier and less error-prone.
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Hannes Schmelzer <hannes.schmelzer@br-automation.com>
show more ...
|
| 43c6bdd0 | 29-Apr-2017 |
Jernej Skrabec <jernej.skrabec@siol.net> |
edid: Add HDMI flag to timing info
Some DVI monitors don't show anything in HDMI mode since audio stream confuses them. To solve this situation, this commit adds HDMI flag in timing data and sets it
edid: Add HDMI flag to timing info
Some DVI monitors don't show anything in HDMI mode since audio stream confuses them. To solve this situation, this commit adds HDMI flag in timing data and sets it accordingly during edid parsing.
First existence of extension block is checked. If it exists and it is CEA861 extension, then data blocks are checked for presence of HDMI vendor specific data block. If it is present, HDMI flag is set.
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net> Reviewed-by: Simon Glass <sjg@chromium.org>
show more ...
|
| dc8cae4d | 29-Apr-2017 |
Jernej Skrabec <jernej.skrabec@siol.net> |
edid: Set timings flags according to edid
Timing flags are never set, so they may contain garbage. Since some drivers check them, video output may be broken on those drivers.
Initialize them to 0 a
edid: Set timings flags according to edid
Timing flags are never set, so they may contain garbage. Since some drivers check them, video output may be broken on those drivers.
Initialize them to 0 and check for few common flags.
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net> Reviewed-by: Simon Glass <sjg@chromium.org>
show more ...
|
| cb33bda4 | 15-May-2017 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-i2c |
| 8850c5d5 | 13-May-2017 |
Tom Rini <trini@konsulko.com> |
Kconfig: USB: Migrate CONFIG_USB_EHCI to CONFIG_USB_EHCI_HCD
In order to be able to migrate the various SoC EHCI CONFIG options we first need to finish the switch from CONFIG_USB_EHCI to CONFIG_USB_
Kconfig: USB: Migrate CONFIG_USB_EHCI to CONFIG_USB_EHCI_HCD
In order to be able to migrate the various SoC EHCI CONFIG options we first need to finish the switch from CONFIG_USB_EHCI to CONFIG_USB_EHCI_HCD.
Cc: Marek Vasut <marex@denx.de> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Marek Vasut <marex@denx.de>
show more ...
|
| 0ce45287 | 10-May-2017 |
Angelo Dureghello <angelo@sysam.it> |
board_f: skip timer_init() on Coldfire archs
Coldfire arch is not happy with timer_init since interrupt handlers are still not set at that stage, and the boot hangs silently.
Signed-off-by: Angelo
board_f: skip timer_init() on Coldfire archs
Coldfire arch is not happy with timer_init since interrupt handlers are still not set at that stage, and the boot hangs silently.
Signed-off-by: Angelo Dureghello <angelo@sysam.it>
show more ...
|
| bcc1726a | 05-May-2017 |
Kever Yang <kever.yang@rock-chips.com> |
spl: add support to booting with ATF
ATF(ARM Trusted Firmware) is used by ARM arch64 SoCs, find more infomation about ATF at: https://github.com/ARM-software/arm-trusted-firmware
SPL is considered
spl: add support to booting with ATF
ATF(ARM Trusted Firmware) is used by ARM arch64 SoCs, find more infomation about ATF at: https://github.com/ARM-software/arm-trusted-firmware
SPL is considered as BL2 in ATF terminology, it needs to load other parts of ATF binary like BL31, BL32, SCP-BL30, and BL33(U-Boot). And needs to prepare the parameter for BL31 which including entry and image information for all other images. Then the SPL handle PC to BL31 with the parameter, the BL31 will do the rest of work and at last get into U-Boot(BL33).
This patch needs work with patches from Andre for SPL support multi binary in FIT.
The entry point of bl31 and bl33 are still using hard code because we still can not get them from the FIT image information.
Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Heiko Stuebner <heiko@sntech.de> Acked-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
show more ...
|
| 792f0054 | 09-May-2017 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
mmc: descend into drivers/mmc only when CONFIG_MMC is enabled
This simplifies makefiles. Also, arrange the order of objects in drivers/mmc/Makefile so that the framework objects are listed before d
mmc: descend into drivers/mmc only when CONFIG_MMC is enabled
This simplifies makefiles. Also, arrange the order of objects in drivers/mmc/Makefile so that the framework objects are listed before drivers.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 4aa2ba3a | 09-May-2017 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
mmc: replace CONFIG_GENERIC_MMC with CONFIG_MMC
Now CONFIG_GENERIC_MMC and CONFIG_MMC match for all defconfig. We do not need two options for the same feature. Deprecate the former.
This commit wa
mmc: replace CONFIG_GENERIC_MMC with CONFIG_MMC
Now CONFIG_GENERIC_MMC and CONFIG_MMC match for all defconfig. We do not need two options for the same feature. Deprecate the former.
This commit was generated with the sed script 's/GENERIC_MMC/MMC/' and manual fixup of drivers/mmc/Kconfig.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
show more ...
|
| 213f27f3 | 13-May-2017 |
Simon Glass <sjg@chromium.org> |
Drop CONFIG_I2CFAST
This option is not used in U-Boot. Drop it.
Signed-off-by: Simon Glass <sjg@chromium.org> |
| 69153988 | 13-May-2017 |
Simon Glass <sjg@chromium.org> |
i2c: Finish dropping use of CONFIG_I2C_HARD
Drop use of this long-deprecated option.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> |
| 82b9dc63 | 09-May-2017 |
Tom Rini <trini@konsulko.com> |
common: Only build cli_readline.o for CMDLINE on non-SPL
With gcc-6 and later we may get a warning such as: .../common/cli_readline.c:20:21: warning: ‘tab_seq’ defined but not used [-Wunused-const-v
common: Only build cli_readline.o for CMDLINE on non-SPL
With gcc-6 and later we may get a warning such as: .../common/cli_readline.c:20:21: warning: ‘tab_seq’ defined but not used [-Wunused-const-variable=] static const char tab_seq[] = " "; /* used to expand TABs */ ^~~~~~~ .../common/cli_readline.c:19:19: warning: ‘erase_seq’ defined but not used [-Wunused-const-variable=] static const char erase_seq[] = "\b \b"; /* erase sequence */ ^~~~~~~~~
Because in SPL we're normally not doing interactive commands anyhow, so lets just not compile this at all in SPL. This also means that we need to correct the logic (and comment) about what the drivers/ddr/fsl/ and CONFIG_FSL_DDR_INTERACTIVE requires and this will be included in SPL there.
Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
| 902f5bcf | 08-May-2017 |
xypron.glpk@gmx.de <xypron.glpk@gmx.de> |
env: avoid possible NULL pointer access
env_attr_lookup call env_attr_walk with callback = regex_callback.
In env_attr_walk attributes = strchr(entry_cpy, ENV_ATTR_SEP) will return NULL if ENV_ATTR
env: avoid possible NULL pointer access
env_attr_lookup call env_attr_walk with callback = regex_callback.
In env_attr_walk attributes = strchr(entry_cpy, ENV_ATTR_SEP) will return NULL if ENV_ATTR_SEP is not found.
In the aftermath regex_callback may call strlen(attributes) with a NULL value which will lead to a failure.
The problem was indicated by scan-clam.
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
show more ...
|
| 9b57e252 | 08-May-2017 |
xypron.glpk@gmx.de <xypron.glpk@gmx.de> |
env: correct sign for error code
Error codes should be negative.
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> |
| 66928afb | 04-May-2017 |
B, Ravi <ravibabu@ti.com> |
common: dfu: ignore reset for spl-dfu
The SPL-DFU feature enable to load and execute u-boot from RAM over usb from PC using dfu-util. Hence dfu-reset should not be issued when dfu-util -R switch is
common: dfu: ignore reset for spl-dfu
The SPL-DFU feature enable to load and execute u-boot from RAM over usb from PC using dfu-util. Hence dfu-reset should not be issued when dfu-util -R switch is issued.
Signed-off-by: Ravi Babu <ravibabu@ti.com>
show more ...
|
| 1b19cbdb | 04-May-2017 |
B, Ravi <ravibabu@ti.com> |
spl: Kconfig: dfu: spl-dfu depends on SPL_RAM_SUPPORT
Since SPL_DFU_SUPPORT is depends on SPL_RAM_SUPPORT, hence select SPL_DFU_SUPPORT only when SPL_RAM_SUPPORT is chosen.
Signed-off-by: Ravi Babu
spl: Kconfig: dfu: spl-dfu depends on SPL_RAM_SUPPORT
Since SPL_DFU_SUPPORT is depends on SPL_RAM_SUPPORT, hence select SPL_DFU_SUPPORT only when SPL_RAM_SUPPORT is chosen.
Signed-off-by: Ravi Babu <ravibabu@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
show more ...
|
| 6e7585bb | 18-Apr-2017 |
B, Ravi <ravibabu@ti.com> |
boot: fdt: Perform arch_fixup_fdt() on the given device tree for falcon boot
In single stage bootmode or falcon boot mode, the SPL shall update the device tree that we load with the normal fixups do
boot: fdt: Perform arch_fixup_fdt() on the given device tree for falcon boot
In single stage bootmode or falcon boot mode, the SPL shall update the device tree that we load with the normal fixups done via arch_fixup_fdt(), when possible (ie we have enough information in this restricted environment to be able to do that still). This will include for example updating them memory nodes.
Signed-off-by: Ravi Babu <ravibabu@ti.com> [trini: Reword commit message]
show more ...
|
| 984a3c87 | 18-Apr-2017 |
B, Ravi <ravibabu@ti.com> |
spl: fdt: support for fdt fixup for falcon boot
Adding support for fdt fixup to update the memory node in device tree for falcon boot.
This is needed for single stage or falcon bootmode, to pass me
spl: fdt: support for fdt fixup for falcon boot
Adding support for fdt fixup to update the memory node in device tree for falcon boot.
This is needed for single stage or falcon bootmode, to pass memory configuration to kernel through DT memory node.
Signed-off-by: Ravi Babu <ravibabu@ti.com> Reviewed-by: Lukasz Majewski <lukma@denx.de>
show more ...
|