summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-06-11dm: uclass: don't assign aliased seq numbersMichael Walle
If there are aliases for an uclass, set the base for the "dynamically" allocated numbers next to the highest alias. Please note, that this might lead to holes in the sequences, depending on the device tree. For example if there is only an alias "ethernet1", the next device seq number would be 2. In particular this fixes a problem with boards which are using ethernet aliases but also might have network add-in cards like the E1000. If the board is started with the add-in card and depending on the order of the drivers, the E1000 might occupy the first ethernet device and mess up all the hardware addresses, because the devices are now shifted by one. Also adapt the test cases to the new handling and add test cases checking the holes in the seq numbers. Signed-off-by: Michael Walle <michael@walle.cc> Reviewed-by: Alex Marginean <alexandru.marginean@nxp.com> Tested-by: Alex Marginean <alexandru.marginean@nxp.com> Acked-by: Vladimir Oltean <olteanv@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Michal Simek <michal.simek@xilinx.com> [on zcu102-revA]
2020-06-11dm: core: fix dev_read_alias_highest_id() without libfdtMichael Walle
If CONFIG_DM_DEV_READ_INLINE is set, dev_read_alias_highest_id() calls libfdt_get_highest_id(). But this function is only available if we have libfdt compiled in. If its not available return -1, which matches the return code for no alias found. This fixes the following error on omapl138_lcdk: arm-linux-gnueabi-ld.bfd: drivers/built-in.o: in function `dev_read_alias_highest_id': /home/mw/repo/u-boot/include/dm/read.h:986: undefined reference to `fdtdec_get_alias_highest_id' Signed-off-by: Michael Walle <michael@walle.cc> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-06-11usb: provide a device tree node to USB devicesMichael Walle
It is possible to specify a device tree node for an USB device. This is useful if you have a static USB setup and want to use aliases which point to these nodes, like on the Raspberry Pi. The nodes are matched against their hub port number, the compatible strings are not matched for now. Signed-off-by: Michael Walle <michael@walle.cc> Reviewed-by: Marek Vasut <marex@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-06-11log: check argument of 'log level' commandHeinrich Schuchardt
Check that the argument provided to the 'log level' command is in the range between zero and CONFIG_LOG_MAX_LEVEL. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-06-11log: clean up KconfigHeinrich Schuchardt
LOG_DEFAULT_LEVEL has been chosen as 6. Adjust the default of LOG_MAX_LEVEL to this value. Use ranges to clamp log levels to reasonable values. Group output options by main U-Boot, SPL, TPL, followed by other logging options. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-06-11doc: move README.log to HTML documentationHeinrich Schuchardt
Convert README.log to reStructuredText and add it to the generated HTML documentation. Assign doc/develop/logging.rst to the maintainer of LOGGING. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-06-11doc: log: correct option name CONFIG_LOG_MAX_LEVELPatrick Delaunay
Replace CONFIG_(SPL_)MAX_LOG_LEVEL by the correct name as defined in common/Kconfig: line 668:config LOG_MAX_LEVEL line 688:config SPL_LOG_MAX_LEVEL line 708:config TPL_LOG_MAX_LEVEL Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-06-11regmap: Check for out-of-range offsets before mapping themPratyush Yadav
In regmap_raw_{read,write}_range(), offsets are checked to make sure they aren't out of range. But this check happens _after_ the address is mapped from physical memory. Input should be sanity-checked before using it. Mapping the address before validating it leaves the door open to passing an invalid address to map_physmem(). So check for out of range offsets _before_ mapping them. This fixes a segmentation fault in sandbox when -1 is used as an offset to regmap_{read,write}(). Signed-off-by: Pratyush Yadav <p.yadav@ti.com>
2020-06-11libfdt: Remove superfluous NUL character from overlay symbolsMarcus Comstedt
The symbol path already ends with a NUL character (something which is actually checked by the code) and this NUL is included in rel_path_len, so there is no need to add a second one. This change fixes incorrect display in "fdt list /__symbols" after applying an overlay with symbols. Signed-off-by: Marcus Comstedt <marcus@mc.pp.se> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-06-11doc: driver-model: there is no UCLASS_SATAHeinrich Schuchardt
%s/UCLASS_SATA/UCLASS_AHCI/g Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-06-11fdtdec: Honor #address-cells and #size-cells in fdtdec_add_reserved_memory()Bin Meng
At present fdtdec_add_reserved_memory() calls fdtdec_get_addr_size() to get address and size for the subnodes of /reserved-memory node. We should honor #address-cells and #size-cells properties in the parent node. Signed-off-by: Bin Meng <bin.meng@windriver.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-06-11fdtdec: Fix the types of addr and size in fdtdec_add_reserved_memory()Bin Meng
fdtdec_get_addr_size() expects size is of type 'fdt_size_t', and return value is of type 'fdt_addr_t'. Adjust their types accordingly. Signed-off-by: Bin Meng <bin.meng@windriver.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-06-11buildman: Remove _of_#_ from results directory pathsOvidiu Panait
Currently, the following scenario will rebuild the first commit even though it is not really necessary - the commit sha or the position in the patchset did not change: $ git am <local-patch-0001> $ tools/buildman/buildman -P -E -W -b master mx6 <do some more development work> $ git am <local-patch-0002> $ tools/buildman/buildman -P -E -W -b master mx6 <- will rebuild the first commit as well, even though nothing has changed about it. This is due to the fact that previous results directories get removed when the number of commits change. By removing the _of_#_ part of the directory path, the commits will be rebuilt only if the commit sha or the position in the patchset changes. Also, update the testcase to reflect this change. Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
2020-06-11patman: Complain if a checkpatch line is not understoodSimon Glass
Rather than suffering in silence, output a warning if something about the checkpatch output cannot be understood. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-06-11patman: Support warnings in the patch subjectSimon Glass
Sometimes checkpatch outputs problems in the patch subject. Add support for parsing this output and reporting it correctly. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-06-11patman: Handle checkpatch output with notes and codeSimon Glass
If checkpatch is configured to output code we should ignore it. Similarly, notes should be ignored. Update the logic to handle these situations. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-06-11patman: Don't try to process checkpatch lines twiceSimon Glass
Once we have determined what the line refers to there is no point in processing it further. Update the logic to continue to the next line in these cases. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-06-11patman: Support emacs mode with checkpatchSimon Glass
If checkpatch is run in 'emacs' mode it shows the filename at the start of each line. Add support for this so that the warnings and errors are correctly detected. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-06-11patman: Fix 'warning' typoSimon Glass
If no warnings are detected due to checkpatch having unexpected options, patman currently shows an error: TypeError: unsupported operand type(s) for +=: 'int' and 'property' Fix this by initing the variable correctly. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-06-09Merge tag 'u-boot-imx-20200609' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx Fixes for 2020.07 ----------------- - mx53: mx53menlo Convert to DM_ETH, fix fail boot - imx8mp_evk: fix boot issue - MX6, display5: fix environment - drop warnings (watchdog) for i.MX8mm i.mx8mp - enable bootaux for i.MX8M Travis: https://travis-ci.org/github/sbabic/u-boot-imx/builds/695929999
2020-06-09Revert "imx: rom api: fix image offset computation"Stefano Babic
This reverts commit 1f63ee656698724bcdc4e711b4ccd267f6bf64ab. As reported by Ye Li on ML: 1. Removing the image_offset will break secondary (redundant) boot support for sd and emmc. 2. When booting from emmc boot partition, the image_offset is 0. But the flash.bin generated by mkimage with imximage-8mp-lpddr4.cfg is for sd. It expects to be burn at 32KB offset. The fit offset 0x60000 has already included the 32KB offset. So when you burn this flash.bin to emmc boot partition at offset 0, the fit offset should subtract the 32KB (0x60000 - 0x8000). Signed-off-by: Stefano Babic <sbabic@denx.de>
2020-06-08Prepare v2020.07-rc4Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2020-06-08cmd: Correct the 'md.q' commandSimon Glass
This displays incorrect data at present due to a missing header file in display_options. Fix it. Fixes: 09140113108 ("command: Remove the cmd_tbl_t typedef") Signed-off-by: Simon Glass <sjg@chromium.org>
2020-06-08Merge https://gitlab.denx.de/u-boot/custodians/u-boot-mpc85xxTom Rini
- DM_ETH support for P2041RDB, T1024RDB, P5040DS, P3041DS, P4080DS, bug fixes - Add TBI PHY access through MII - DDR: Rework errata workaround for A008109, A008378, 009942
2020-06-08Merge tag 'u-boot-rockchip-20200607' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-rockchip - revive rk3399 puma board to adapt mainline dts; - Fix rk3399-evb stdout path; - Enable PCIe for rk3399: Rockpro64, firefly, pinebookpro; - Add rk3328 Rock-pi-e board; - Enable SPI boot for rockpro64 and roc-pc-rk3399;
2020-06-08ARM: dts: imx: m53menlo: Convert to DM_ETHMarek Vasut
Convert the board to DM_ETH instead of legacy networking. This requires a minor addition to the DT to satisfy the requirement for specifying a PHY node. No functional change from board user perspective. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Fabio Estevam <festevam@gmail.com> Cc: NXP i.MX U-Boot Team <uboot-imx@nxp.com> Cc: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de>
2020-06-08ARM: imx: m53menlo: Do not fail boot on invalid splash screenMarek Vasut
None of these splash screen loading errors are so critical as to justify complete failure to boot, so just print error message as needed and return 0, the boot can very likely continue without the splash. Fix a couple of missing free(dst) instances as well. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Fabio Estevam <festevam@gmail.com> Cc: NXP i.MX U-Boot Team <uboot-imx@nxp.com> Cc: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de>
2020-06-08ARM: imx: ddr: Add missing PHY resetMarek Vasut
The iMX7D RM 9.2.4.9.3 Power removal flow Table 9-11. Re-enabling power explicitly says both the DDR controller and the PHY must be reset in the correct sequence. Currently the code only resets the controller. This leads to a misbehavior where the system brings the DRAM up after reboot, but the DRAM is unstable. Add the missing reset. The easiest way to trigger this is by triggering WDT without having the WDT assert WDOG_B signal, i.e. mw.w 0x30280000 0x25 . Signed-off-by: Marek Vasut <marex@denx.de> Cc: Fabio Estevam <festevam@gmail.com> Cc: NXP i.MX U-Boot Team <uboot-imx@nxp.com> Cc: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de>
2020-06-08power: pmic: Add SPL Kconfig entry for PFUZE100Marek Vasut
Add Kconfig entry for the PFUZE PMIC, SPL variant. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Jaehoon Chung <jh80.chung@samsung.com> Cc: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2020-06-08imx: imx8mp_evk: fix boot issuePeng Fan
The u-boot-spl.bin pad with ddr firmware conflicts with the CONFIG_MALLOC_F_ADDR area, the ddr firmware will be overwritten by malloc in SPL stage and cause ddr initialization not able to finish. So update the related addresses to fix the issue. Reported-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-06-08imx8mp_evk: spl: no need the code since spl framework could do thatPeng Fan
We no need invoke the code, since spl framework could help us do that. Signed-off-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-06-08imx8mp_evk: spl: use spl_early_initPeng Fan
Use spl_early_init to replace spl_init, spl_init will be invoked in board_init_r, we only need use spl_early_init to setup malloc and scan early dt. Signed-off-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-06-08imx8mp_evk: spl: drop timer_initPeng Fan
timer_init has been invoked in arch_cpu_init, no need to invoke it again in board code. Signed-off-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-06-08imx8mp_evk: spl: drop useless codePeng Fan
Drop useless getting ccm device, there is no need to explicted do this in board code, and we not enable SPL CLK currently. Signed-off-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-06-08imx: Update MTD partitions layout for display5 (i.MX6Q) boardLukasz Majewski
This change updates the MTD partition layout on SPI-NOR memory for display5 board. Signed-off-by: Lukasz Majewski <lukma@denx.de>
2020-06-08imx: rom api: fix image offset computationSébastien Szymanski
When not booting from FlexSPI, the offset computation is: offset = image_offset + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512 - 0x8000; When booting from SD card or eMMC user partition, image_offset is 0x8000. It is useless to add and remove 0x8000. When booting from other device, image_offset is 0 so this computation is wrong. Simplfy this computation to work on all booting devices. Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
2020-06-08verdin-imx8mm: Select the watchdog driverFabio Estevam
Currently watchdog driver is not selected, which causes system to reboot after staying 60s in the U-Boot prompt. Fix this problem by enabling CONFIG_WATCHDOG so that watchdog can be properly serviced. Signed-off-by: Fabio Estevam <festevam@gmail.com> Acked-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2020-06-08imx8mp_evk: Select the watchdog driverFabio Estevam
Currently watchdog driver is not selected, which causes system to reboot after staying 60s in the U-Boot prompt. Fix this problem by enabling CONFIG_WATCHDOG so that watchdog can be properly serviced. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-06-08imx8mm_beacon: Select the watchdog driverFabio Estevam
Currently watchdog driver is not selected, which causes system to reboot after staying 60s in the U-Boot prompt. Fix this problem by enabling CONFIG_WATCHDOG so that watchdog can be properly serviced. Signed-off-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Adam Ford <aford173@gmail.com>
2020-06-08imx8mn_ddr4_evk: Select the watchdog driverFabio Estevam
Currently watchdog driver is not selected, which causes system to reboot after staying 60s in the U-Boot prompt. Fix this problem by enabling CONFIG_WATCHDOG so that watchdog can be properly serviced. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-06-08imx8mm_evk: Select the watchdog driverFabio Estevam
Currently the watchdog driver is not selected, which causes the following warnings in both SPL and U-Boot proper: U-Boot SPL 2020.07-rc1-00387-g67887903af (May 07 2020 - 23:49:27 -0300) Normal Boot WDT: Started without servicing (60s timeout) Trying to boot from MMC1 U-Boot 2020.07-rc1-00387-g67887903af (May 07 2020 - 23:49:27 -0300) CPU: Freescale i.MX8MMQ rev1.0 at 1200 MHz Reset cause: POR Model: FSL i.MX8MM EVK board DRAM: 2 GiB WDT: Started without servicing (60s timeout) .... System reboots after staying 60s in the U-Boot prompt. Fix this problem by enabling CONFIG_WATCHDOG so that watchdog can be properly serviced. Suggested-by: Marek Vasut <marex@denx.de> Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-06-08imx8mp_evk: Add a README fileFabio Estevam
Add a README file explaining the U-Boot build and SD card flash procedures. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-06-08imx: move ATF to the back of the FIT to fix loading over yModemPatrick Wildt
With yModem the FIT Image is only supplied once, so we can only seek forward in the yModem supplied image and never backwards. With the recent changes to the SPL mechanism, including loading U-Boot first, FDT after, then the loadables, we must also reorder the FIT image script to make sure that the loadables are last in the FIT image. Signed-off-by: Patrick Wildt <patrick@blueri.se> Tested-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
2020-06-08imx: Kconfig: enable IMX_BOOTAUX for i.MX8MPeng Fan
i.MX8M could use imx bootaux to boot m4/m7 core, so let's add it to the dependency list. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2020-06-08ARM: dts: imxrt1050: indent lcdif node correctlyGiulio Benetti
Accidentally submitted a patch with indentation not correct, let's fix it by indenting wrong lines. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2020-06-07rockchip: enable PCIe and NVMe on Pinebook ProPatrick Wildt
Enable CONFIG_PCI and CONFIG_NVME and related configs for the Pinebook Pro. Signed-off-by: Patrick Wildt <patrick@blueri.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2020-06-07rockchip: puma: enable new usb config optionsHeiko Stuebner
With recently added changes we get support for usb3 including handling of the phys (type-c and inno-usb2), so enable the necessary config options on puma. Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com> Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2020-06-07rockchip: puma: drop special handling of usb host regulatorHeiko Stuebner
With the current usb stack in u-boot, all host ports on puma work flawlessly without any additional special handling, so drop that usb hub hacking from the puma board. Tested with mass-storage and usb-ethernet on both usb3 and usb2 ports. Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
2020-06-07rockchip: puma: remove separate fit generatorHeiko Stuebner
The introduction of the puma-specific generator was mainly a way to split the pmu firmware from the ATF binary and not having to distribute that 4GB (sparse) image that was created before moving to the bl31.elf as base. Looking at the publically available repository for that separate pmu firmware https://git.theobroma-systems.com/rk3399-cortex-m0.git/ there is also no activity for 3 years and apart from some build customizations no other changes were done. And even then, if changes need to be made, this can very well also happen in the atf context itself, so there is no real need to diverge from the established build procedure and we can just go back to using the main make_fit_atf.py script. Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com> Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2020-06-07rockchip: puma: reorganize devicetrees to actually work and match upstreamHeiko Stuebner
So far the puma dts files only just included the main puma dtsi without handling the actual baseboard and rk3399-puma.dtsi was very much detached from the variant in the mainline Linux kernel. Recent changes resulted in a strange situation with nonworking puma boards. Commit ab800e5a6f28 ("arm: dts: rockchip: puma: move U-Boot specific bits to u-boot.dtsi") moved the sdram include from rk3399-puma-ddrX.dts to new files rk3399-puma-ddrx-u-boot.dtsi which were never included anywhere though. Commit 167efc2c7a46 ("arm64: dts: rk3399: Sync v5.7-rc1 from Linux") replaced the rk3399-puma.dtsi nearly completely, but in the kernel it definitly depends on a baseboard dts to actually enable peripherals like sd-slot, uarts, etc. So to untagle this and bring the whole thing more in line with mainline Linux, bring the rk3399-puma-haikou.dts over as well, drop the separate DDR-option devicetrees and instead replace them with a puma Kconfig option to select and include the needed DDR variant. Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com> Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>