summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* sunxi: move CONFIG_SPL_TEXT_BASE from *_defconfig to KconfigAndre Przywara2019-07-15147-146/+3
| | | | | | | | | | | | | | The choice of the SPL_TEXT_BASE is not really a decision that should be specified by each board's defconfig, as this setting is actually dictated by the SoC's memory map and the BootROM behaviour. To make this obvious and reduce the clutter in the defconfig files, let's specify the SoC constraints in the Kconfig stanza. This allows us to remove these lines from the defconfig files again. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
* Merge branch '2019-07-12-master-imports'Tom Rini2019-07-1470-353/+2196
|\ | | | | | | | | | | - First round of TI Davinci updates - Some OMAP3 DM updates - Other misc updates
| * test: Disable pci_ep test for nowTom Rini2019-07-131-0/+3
| | | | | | | | | | | | | | | | This test is currently broken so disable it for now. Cc: Ramon Fried <ramon.fried@gmail.com> Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com>
| * ARM: dts: logicpd som-lvs and torpedos: Shrink SPL DTBAdam Ford2019-07-134-29/+40
| | | | | | | | | | | | | | | | | | Since we have limited resources in SPL, it is the best interest to keep the SPL as small as possible and that includes the DTB. There are a few items in the device tree that can be removed, because these boards don't use them. Signed-off-by: Adam Ford <aford173@gmail.com>
| * regulator: Allow autosetting fixed regulatorsSven Schwermer2019-07-131-0/+3
| | | | | | | | | | | | | | | | | | | | Fixed regulators don't have a set_value method. Therefore, trying to set their value will always return -ENOSYS. Signed-off-by: Sven Schwermer <sven@svenschwermer.de> Cc: Jaehoon Chung <jh80.chung@samsung.com> Cc: Peng Fan <peng.fan@nxp.com> Reviewed-by: Simon Glass <sjg@chromium.org>
| * gpio: add gpio-hog supportHeiko Schocher2019-07-135-16/+268
| | | | | | | | | | | | | | | | | | | | | | | | | | add gpio-hog support. GPIO hogging is a mechanism providing automatic GPIO request and configuration as part of the gpio-controller's driver probe function. for more infos see: doc/device-tree-bindings/gpio/gpio.txt Signed-off-by: Heiko Schocher <hs@denx.de> Tested-by: Michal Simek <michal.simek@xilinx.com> (zcu102) Tested-by: Patrick Delaunay <patrick.delaunay@st.com>
| * ARM: dts: logicpd-som-lv: Resync with Kernel 5.1.9Adam Ford2019-07-132-6/+2
| | | | | | | | | | | | | | The MMC card-detect pin was incorrectly defined which was fixed. This patch resync's the dts and removes the u-boot specific fix. Signed-off-by: Adam Ford <aford173@gmail.com>
| * ARM: dts: da850: Resync with Linux 5.1.9Adam Ford2019-07-131-1/+1
| | | | | | | | | | | | | | The da850.dtsi file had some changes. This patch pulls in the changes from Kernel 5.1.9 Signed-off-by: Adam Ford <aford173@gmail.com>
| * ARM: davinci: da850: Manual pinmux only when PINCTRL not availableAdam Ford2019-07-131-2/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | With a recent update to the pinctrl-single driver and the fact that the da850evm has both DM and OF_CONTROL working in both SPL and U-Boot, some of the manual pinmuxing can be setup to only be activated when either the driver doesn't have DM for it, or when CONFIG_PINMUX isn't available (only during SPL). If the code ever shrinks enough to support PINCTRL in SPL, a lot of this can go away. This also remove some manual pinmuxing not needed by SPL to give SPL a little more breathing room. Signed-off-by: Adam Ford <aford173@gmail.com>
| * pinctrl: pinctrl-single: Add 'pinctrl-single, bits' supportAdam Ford2019-07-131-1/+64
| | | | | | | | | | | | | | | | | | The TI Davinci (da850/l138/am1808) use pinctrl-single,bits for pinmuxing peripherals. This patch allosw the pinctrl-single driver to parse the pinctrl-single,bits options and correctly setup devices. Signed-off-by: Adam Ford <aford173@gmail.com>
| * configs: Make USE_TINY_PRINTF depend on SPL||TPL and be defaultTom Rini2019-07-138-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The USE_TINY_PRINTF symbol only changes things within SPL and TPL builds, so make it depend on that support. Next, make it default as within these cases we should rarely have need of more advanced print formats outside of the debug context. To do this, in a few cases we need to correct our Kconfig dependencies as we had cases of non-SPL targets select'ing this symbol. Finally, in the case of a few boards we really do need the full printf functionality. Signed-off-by: Tom Rini <trini@konsulko.com>
| * power: regulator: Kconfig: Add SPL_DM_REGULATOR configs for ↵Keerthy2019-07-131-0/+26
| | | | | | | | | | | | | | | | | | | | palmas/lp873x/lp87565 Add SPL_DM_REGULATOR configs for palmas/lp873x/lp87565. These were missing and the Makefile already assumes them to be defined. Add the corresponding SPL config options. This enables the regulator support in SPL. Signed-off-by: Keerthy <j-keerthy@ti.com>
| * power: pmic: Kconfig: Add SPL_PMIC configs for palmas/lp873x/lp87565Keerthy2019-07-131-0/+21
| | | | | | | | | | | | | | | | Add SPL_PMIC configs for palmas/lp873x/lp87565. These were missing and the Makefile already assumes them to be defined. Add the corresponding SPL config options. This enables the pmics in SPL. Signed-off-by: Keerthy <j-keerthy@ti.com>
| * ARM: am335x: Add phyCORE AM335x R2 supportNiel Fourie2019-07-1315-1/+1260
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support for Phytech phyCORE AM335x R2 SOM (PCL060) on the Phytec phyBOARD-Wega AM335x. CPU : AM335X-GP rev 2.1 Model: Phytec AM335x phyBOARD-WEGA DRAM: 256 MiB NAND: 256 MiB MMC: OMAP SD/MMC: 0 eth0: ethernet@4a100000 Working: - Eth0 - i2C - MMC/SD - NAND - UART - USB (host) Device trees were taken from Linux mainline: commit 37624b58542f ("Linux 5.1-rc7") Signed-off-by: Niel Fourie <lusus@denx.de> Signed-off-by: Parthiban Nallathambi <pn@denx.de> Reviewed-by: Heiko Schocher <hs@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com> Tested-by: Marek Vasut <marex@denx.de>
| * ARM: legoev3: convert to driver modelDavid Lechner2019-07-136-27/+102
| | | | | | | | | | | | | | | | | | | | This converts LEGO MINDSTORMS EV3 to the driver model. MMC, SERIAL, SPI and SPI_FLASH are converted. The device tree contains only the minimal nodes required by U-Boot since the size of U-Boot is limited to 256K on this device. Signed-off-by: David Lechner <david@lechnology.com>
| * rtc: add Microcrystal RV-8803 driverMichael Walle2019-07-135-0/+180
| | | | | | | | Signed-off-by: Michael Walle <michael@walle.cc>
| * usb: musb-new: omap2430: Fix compilation warning with USB_MUSB_GADGETDerald D. Woods2019-07-131-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit addresses the following warning, when _NOT_ USB_MUSB_HOST: [...] CC drivers/usb/gadget/f_mass_storage.o CC drivers/usb/musb-new/omap2430.o CC drivers/usb/gadget/f_fastboot.o CC env/common.o CC env/env.o /src/etinker/software/u-boot-master/drivers/usb/musb-new/omap2430.c: In function ‘omap2430_musb_probe’: /src/etinker/software/u-boot-master/drivers/usb/musb-new/omap2430.c:239:6: warning: assignment to ‘int’ from ‘struct musb *’ makes integer from pointer without a cast [-Wint-conversion] ret = musb_register(&platdata->plat, ^ LD drivers/usb/host/built-in.o CC drivers/usb/gadget/f_sdp.o CC fs/ext4/ext4fs.o [...] Signed-off-by: Derald D. Woods <woods.technical@gmail.com>
| * ARM: omap3: evm: Enable DM_USB in defconfigDerald D. Woods2019-07-133-34/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This addresses the following warning message: ===================== WARNING ====================== This board does not use CONFIG_DM_USB. Please update the board to use CONFIG_DM_USB before the v2019.07 release. Failure to update by the deadline may result in board removal. See doc/driver-model/MIGRATION.txt for more info. ==================================================== As USB support for older OMAP3 SoC's improves, OMAP3 EVM can be readily adapted. There is some additional 'gpio-hog' support needed to fully setup USB in a similar manner to Linux. Signed-off-by: Derald D. Woods <woods.technical@gmail.com>
| * ARM: dts: omap3-evm: Sync dts(i) files from Linux 5.1.5Derald D. Woods2019-07-133-7/+18
| | | | | | | | Signed-off-by: Derald D. Woods <woods.technical@gmail.com>
| * rtc: ds1307: add support for m41t11Heiko Schocher2019-07-131-0/+14
| | | | | | | | | | | | | | | | | | | | add m41t11 support in ds1307 driver. changes: - add compatible string for m41t11 - check if RTC clock is running, if not enable the clock Signed-off-by: Heiko Schocher <hs@denx.de>
| * mmc: Register only the first MMC device on MMC_TINYEzequiel Garcia2019-07-131-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | When MMC_TINY is enabled, support for only one MMC device is provided. Boards that register more than one device, will just write over mmc_static keeping only the last one registered. This commit prevents this, keeping only the first MMC device created. A debug warning message is added, if nothing else, as a hint/documentation for developers. Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
| * spl: Move SPL_MMC_TINY option to appear under SPL menuEzequiel Garcia2019-07-132-15/+17
| | | | | | | | | | | | | | | | The SPL_MMC_TINY implements feature-reduced MMC support on SPL, and as such, it's more consistent and convenient to find it as part of the SPL configuration. Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
| * cmd: nvedit: Add sub-command 'env info'Leo Ruan2019-07-132-0/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add sub-command 'env info' to display environment information: - env_valid : is environment valid - env_ready : is environment imported into hash table - env_use_default : is default environment using This command can be optionally used for evaluation in scripts: [-d] : evaluate whether default environment is used [-p] : evaluate whether environment can be persisted The result of multiple evaluations will be combined with AND. Signed-off-by: Leo Ruan <tingquan.ruan@cn.bosch.com> Signed-off-by: Mark Jonas <mark.jonas@de.bosch.com> Reviewed-by: Simon Glass <sjg@chromium.org> [trini: Do not enable by default] Signed-off-by: Tom Rini <trini@konsulko.com>
| * drivers: core: use strcmp when find device by namePeng Fan2019-07-121-1/+1
| | | | | | | | | | | | | | | | | | | | `if (!strncmp(dev->name, name, strlen(name)))` might find out the wrong device, it might find out `dram_pll_ref_sel`, when name is `dram_pll`. So use strcmp to avoid such issue. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
| * test: dm: usb: use the real device namePeng Fan2019-07-121-1/+1
| | | | | | | | | | | | | | "keyb" is not the real device name, "keyb@3" is. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
| * test: dm: adc: use the real device namePeng Fan2019-07-121-8/+8
| | | | | | | | | | | | | | "adc" is not the real device name, "adc@0" is. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
| * pci: ensure enumeration of all devices in pci_initMarek Behún2019-07-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the uclass_first_device_check and uclass_next_device_check functions instead of uclass_first_device and uclass_next_device in pci_init. This ensures that all PCI devices are tried to be probed. Currently if a device fails to probe, the enumeration stops and the devices which come after the failed device are not probed. Signed-off-by: Marek Behún <marek.behun@nic.cz> Cc: Stefan Roese <sr@denx.de> Cc: Anton Schubert <anton.schubert@gmx.de> Cc: Dirk Eibach <dirk.eibach@gdsys.cc> Cc: Mario Six <mario.six@gdsys.cc> Cc: Chris Packham <chris.packham@alliedtelesis.co.nz> Cc: Phil Sutter <phil@nwl.cc> Cc: VlaoMao <vlaomao@gmail.com> Cc: Tom Rini <trini@konsulko.com> Reviewed-by: Stefan Roese <sr@denx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
| * board: pm9263: Convert to CONFIG_DM_USB and CONFIG_DM_VIDEOIlko Iliev2019-07-122-93/+3
| | | | | | | | | | Convert the board to support the USB and video driver model and remove the unnecessary code.
| * board: pm9261: Convert to CONFIG_DM_USB and CONFIG_DM_VIDEOIlko Iliev2019-07-122-105/+3
|/ | | | | Convert the board to support the USB and video driver model and remove the unnecessary code.
* Merge tag 'dm-pull-9jul19-take2' of ↵Tom Rini2019-07-1174-990/+1580
|\ | | | | | | | | | | | | | | | | https://gitlab.denx.de/u-boot/custodians/u-boot-dm - Sandbox improvements including .dts refactor - Minor tracing and PCI improvements - Various other minor fixes - Conversion of patman, dtoc and binman to support Python 3
| * trace: trace buffer may exceed 2GiBHeinrich Schuchardt2019-07-101-2/+2
| | | | | | | | | | | | | | | | Correct the debug output for the trace buffer size to accommodate trace buffers exceeding 2GiB. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
| * trace: do not limit trace buffer to 2GiBHeinrich Schuchardt2019-07-104-18/+16
| | | | | | | | | | | | | | | | There is no good reason to limit the trace buffer to 2GiB on a 64bit system. Adjust the types of the relevant parameters. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
| * drivers: pci: add API to issue FLR on a PCI function if supportedAlex Marginean2019-07-102-0/+38
| | | | | | | | | | | | | | | | Adds dm_pci_flr API that issues a Function Level reset on a PCI-e function, if FLR is supported. Signed-off-by: Alex Marginean <alexm.osslist@gmail.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
| * test: dm: Add a test for PCI Enhanced AllocationAlex Marginean2019-07-104-1/+171
| | | | | | | | | | | | | | | | | | | | | | This test is built on top of the existing swap_case driver. It adds EA capability structure support to swap_case and uses that to map BARs. BAR1 works as it used to, swapping upper/lower case. BARs 2,4 map to a couple of magic values. Signed-off-by: Alex Marginean <alexm.osslist@gmail.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com>
| * drivers: pci: add map_bar support for Enhanced AllocationAlex Marginean2019-07-102-0/+59
| | | | | | | | | | | | | | | | Makes dm_pci_map_bar API available for integrated PCI devices that support Enhanced Allocation instead of the original PCI BAR mechanism. Signed-off-by: Alex Marginean <alexm.osslist@gmail.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
| * pci: fixed dm_pci_map_bar commentAlex Marginean2019-07-101-3/+5
| | | | | | | | | | | | | | | | | | | | The comment now indicates that the input argument bar is a register offset, not a BAR index. It also mentions which BARs are supported for type 0/1 and that the function can return 0 on error. Signed-off-by: Alex Marginean <alexm.osslist@gmail.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
| * trace: make call depth limit customizableHeinrich Schuchardt2019-07-102-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | Up to now we had hard coded values for the call depth up to which trace records are created: 200 for early tracing, 15 thereafter. UEFI applications reach a call depth of 80 or above. Provide customizing settings for the call trace depth limit and the early call trace depth limit. Use the old values as defaults. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
| * trace: conserve gd registerHeinrich Schuchardt2019-07-101-0/+49
| | | | | | | | | | | | | | | | | | | | | | An UEFI application may change the value of the register that gd lives in. But some of our functions like get_ticks() access this register. So we have to set the gd register to the U-Boot value when entering a trace point and set it back to the application value when exiting the trace point. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
| * trace: undefined reference to `trace_early_init'Heinrich Schuchardt2019-07-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Compiling with TRACE but without TRACE_EARLY results in an error aarch64-linux-gnu-ld.bfd: common/built-in.o:(.rodata.init_sequence_f+0x10): undefined reference to `trace_early_init' trace_early_init() should not be called if CONFIG_TRACE_EARLY is not defined. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
| * dm: doc: add documentation for pre-reloc properties in SPL and TPLPatrick Delaunay2019-07-105-4/+32
| | | | | | | | | | | | | | | | | | | | | | Add documentation for the pre-reloc property in SPL and TPL device-tree: - u-boot,dm-pre-proper - u-boot,dm-pre-reloc - u-boot,dm-spl - u-boot,dm-tpl Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
| * fdt: Allow indicating a node is for U-Boot proper onlyPatrick Delaunay2019-07-102-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | This add missing parts for previous commit 06f94461a9f4 ("fdt: Allow indicating a node is for U-Boot proper only") At present it is not possible to specify that a node should be used before relocation (in U-Boot proper) without it also ending up in SPL and TPL device trees. Add a new "u-boot,dm-pre-proper" boolean property for this. Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
| * test: check u-boot properties in SPL device treePatrick Delaunay2019-07-102-0/+46
| | | | | | | | | | | | | | | | | | | | Add a test to check the management of the U-boot relocation properties for device tree SPL generation (fdtgrep result) and platdata: - 'dm-pre-proper' and 'dm-tpl' not included in SPL - 'dm-pre-reloc' and 'dm-spl' included in SPL Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
| * fdtdec: test: Fix memory leakThierry Reding2019-07-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Free the memory allocated to store the test FDT upon test completion to avoid leaking the memory. We don't bother cleaning up on test failure since the code is broken in that case and should be fixed, in which case the leak would also go away. Reported-by: Tom Rini <tom.rini@gmail.com> Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Thierry Reding <treding@nvidia.com> Reviewed-by: Simon Glass <sjg@chromium.org>
| * drivers: serial: lpuart: Enable Little Endian SupportVabhav Sharma2019-07-101-0/+4
| | | | | | | | | | | | | | | | | | | | By default LPUART driver with compatible string "fsl,ls1021a-lpuart" support big-endian mode.On NXP SoC like LS1028A LPUART IP is little-endian,Added support to Fetch LPUART IP Endianness from lpuart device-tree node. Signed-off-by: Vabhav Sharma <vabhav.sharma@nxp.com> Reviewed-by: Simon Glass <sjg@chromium.org>
| * spi: Avoid using malloc() in a critical functionSimon Glass2019-07-101-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | In general we should avoid calling malloc() and free() repeatedly in U-Boot lest we turn it into tianocore. In SPL this can make SPI flash unusable since free() is often a nop and allocation space is limited. In any case, these seems no need for malloc() since the number of bytes is very small, perhaps less than 8. Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: d13f5b254a (spi: Extend the core to ease integration of SPI memory controllers)
| * blk: Allow control of the block cache in TPLSimon Glass2019-07-101-0/+7
| | | | | | | | | | | | | | | | Generally block devices are not enabled in TPL, but in case they are, add a Kconfig option for the block cache. This allows the setting (default off) to be found with CONFIG_IS_ENABLED(). Signed-off-by: Simon Glass <sjg@chromium.org>
| * bootstage: Add support for TPL record countSimon Glass2019-07-101-0/+7
| | | | | | | | | | | | | | If bootstage is enabled in TPL it lacks a record count and so does not build. Fix this by adding a new Kconfig option. Signed-off-by: Simon Glass <sjg@chromium.org>
| * x86: Add a forward struct declaration in coreboot_tables.hSimon Glass2019-07-101-0/+2
| | | | | | | | | | | | | | | | This struct is not defined in this header file. Add a forward declaration so that it can be included in any context. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
| * sandbox: Add documentation on how to run valgrindSimon Glass2019-07-101-0/+14
| | | | | | | | | | | | | | U-Boot sandbox can run with valgrind to check memory allocations. Add documentation on how to do this. Signed-off-by: Simon Glass <sjg@chromium.org>
| * sandbox: Correct spi flash operationSimon Glass2019-07-102-2/+2
| | | | | | | | | | | | | | | | Since the SPI nor conversion, 'sf probe' does not work on sandbox. Fix this by using the expected compatible string in the flash node. Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: cd35365762 (mtd: sf_probe: remove spi-flash compatible)