summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-11-29rtc: Allow child driversSimon Glass
Some RTC chips have child drivers, e.g. to provide access to their non-volatile RAM. Scan for these when binding. Signed-off-by: Simon Glass <sjg@chromium.org>
2018-11-29dm: sandbox: i2c: Use new emulator parent uclassSimon Glass
Update the device tree, sandbox i2c driver and tests to use the new emulation parent to hold emulators. Signed-off-by: Simon Glass <sjg@chromium.org>
2018-11-29dm: sandbox: i2c: Add a new 'emulation parent' uclassSimon Glass
Sandbox i2c works using emulation drivers which are currently children of the i2c device: rtc_0: rtc@43 { reg = <0x43>; compatible = "sandbox-rtc"; emul { compatible = "sandbox,i2c-rtc"; }; }; In this case the emulation device is attached to i2c bus on address 0x43 and provides the Real-Time-Clock (RTC) functionality. However this is not ideal, since every device on an I2C bus has a child device. This is only really the case for sandbox, but we want to avoid special-case code for sandbox. A better approach seems to be to add a separate node on the bus, an 'emulation parent'. This can be given a bogus address (such as 0xff) and hides all the emulators away. Then we can use a phandle to point from the device to the correct emualtor, and only on sandbox. The code to find an emulator does not interfere with normal i2c operation. Add a new UCLASS_I2C_EMUL_PARENT uclass which allows finding an emulator given a bus, and finding a bus given an emulator. This will be used in a follow-on patch. Signed-off-by: Simon Glass <sjg@chromium.org>
2018-11-29dm: core: Put UCLASS_SIMPLE_BUS in orderSimon Glass
This is currently at the top in the space for internal use. But this uclass is used outside driver model and test code. Move it into the correct alpha order. Signed-off-by: Simon Glass <sjg@chromium.org>
2018-11-29dm: core: Add a few more specific child-finding functionsSimon Glass
Add two functions which can find a child device by uclass or by name. The first is useful with Multi-Function-Devices (MFDs) to find one of a particular type. The second is useful when only the name is known. Signed-off-by: Simon Glass <sjg@chromium.org>
2018-11-29dm: core: Export uclass_find_device_by_phandle()Simon Glass
This function may be useful to code outside of the code driver-model implementation. Export it and add a test. Signed-off-by: Simon Glass <sjg@chromium.org>
2018-11-29test: Add a 'make qcheck' target for quicker testingSimon Glass
At present tests are quite slow to run, over a minute on my machine. This presents a considerable barrier to bisecting for failures. The slowest tests are the filesystem ones and the buildman --fetch-arch test. Add a new 'qcheck' target that skips these tests. This reduces test time down to about 40 second, still too long, but bearable. Signed-off-by: Simon Glass <sjg@chromium.org>
2018-11-29power: pmic: Correct debug/error outputSimon Glass
There is a newline missing from quite a few printf() strings in these pmic files. Fix them. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Lukasz Majewski <lukma@denx.de>
2018-11-29malloc_simple: Add logging of allocationsSimon Glass
It is sometimes useful to see what memory is being allocated early during boot. Add logging to support this, using a new LOGC_ALLOC category. Signed-off-by: Simon Glass <sjg@chromium.org>
2018-11-29arm64: zynqmp: Do not use any EXTRA_ENV_SETTINGSMichal Simek
No reason to save additional variables to environment for mini configurations. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-29arm64: zynqmp: Disable BOOTCOMMANDMichal Simek
There is no need to waste a space for setting up bootcommand which is passed via xilinx_zynqmp.h by including "config_distro_bootcmd.h" header. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-29arm64: zynqmp: Enable SPL for mini qspi configurationMichal Simek
Wire up mini_qspi SPL with zcu102 for testing purpose. Normally mini u-boot runs with FSBL/SPL for certain board. Enabling SPL and configuration from zcu102 helps with testing. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-29arm64: zynqmp: Disable autoboot feature for miniMichal Simek
There is no reason to have autoboot enabled because it should never start anything automatically. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-29arm: socfpga: fix SPL booting from fpga OnChip RAMSimon Goldschmidt
This patch prevents disabling the FPGA bridges when SPL or U-Boot is executed from FPGA onchip RAM. Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2018-11-29arm: socfpga: make socfpga_socrates_defconfig boot from QSPISimon Goldschmidt
This fixes the board's dts to supply SPL with QSPI info. The EBV Socrates board has DIP switches to boot from SD card or QSPI, so let's fix its defconfig to work for both cases. Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2018-11-29dts: arm: socfpga: merge gen5 devicetrees from linuxSimon Goldschmidt
Add -u-boot.dtsi files to keep the current U-Boot behaviour: - add u-boot,dm-pre-reloc where required - disable watchdog - set uart clock frequency - add gpio bank-name properties where appropriate: - make qspi work (add alias for spi0, fix compatible for flash) - enable usb (status okay, add alias for udc0) Adapt board dts files that are not in Linux to keep their old behaviour. Change licenses to SPDX. (Patman warnings/errors are in 1:1 copied files from Linux) Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2018-11-29spi: cadence_qspi: use "cdns,qspi-nor" as compatibleSimon Goldschmidt
Linux uses "cdns,qspi-nor" as compatible string for the cadence qspi driver, so change driver, docs and all device trees. Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2018-11-29gpio: dwapb_gpio: fix binding without bank-name propertySimon Goldschmidt
As a preparation for merging the socfpga gen5 devicetree files from Linux, this patch makes the dwapb gpio driver work correctly without the 'bank-name' property on the gpio-controller nodes. This property is not present in the Linux drivers and thus is not present in the Linux devicetrees. It is only used to access pins via bank name. This fallback is necessary since without it, the driver will return an error code which will lead to an error in U-Boot startup. The bank names will still be added to the default board device trees in follow-up patch, but other boards using this driver and not including the bank name should also work with the socfpga.dtsi without adding the bank-name property. Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2018-11-29arm: socfpga: make config structs constSimon Goldschmidt
There are two config structs left in wrap_sdram_config.c that can be made const. Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2018-11-29ARM: zynq: Disable net for cse nor/nandMichal Simek
There is no need to waste 6k if none needs it. zynq_cse_nand : all -6486 bss -20 data -136 rodata -606 text -5724 zynq_cse_nor : all -6486 bss -20 data -136 rodata -606 text -5724 Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-29ARM: zynq: Enable mtest command at least on one platformMichal Simek
mtest is being checked by test/py framework and this test should run at least on one platform that's why enabling mtest on zc702. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-29ARM: zynq: Wire SPL configuration for cse nor/nand targetsMichal Simek
These symlinks are here only for testing purpose where SPL is used for soc configuration. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-29arm64: zynqmp: Setup clock-output-names for si570 chipsMichal Simek
If there are more instances of si570 clock-output-names property should be used for differentiation of clock output. The patch is adding this optional properties for all zynqmp boards with si570 chip. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-29arm64: zynqmp: Disable ltc2952 poweroff chipMichal Simek
This chip is on the board but handling should be done via firmware not via Linux driver. Changing status property to keep it in the tree to describe it instead of removing this node completely. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-29arm64: zynqmp: Fix sdhci clock in emmc0 mini configurationMichal Simek
Add missing clocks property. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-29arm64: zynqmp: Wire spi-flash compatible string with flashesMichal Simek
Enable reading tx and rx buswidth from DT via spi-uclass. To get these from uclass spi-flash compatible string has to be added to flash node. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-29arm64: zynqmp: Define and enable qspi node for DC4 boardSiva Durga Prasad Paladugu
DC4 board has qspi on it hence define and enable qspi node for it. Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-11-28Merge branch '2018-11-28-master-imports'Tom Rini
- Add MediaTek support
2018-11-28MAINTAINERS: add an entry for MediaTekRyder Lee
This patch adds an entry for MediaTek. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28doc: README.mediatek: Add a simple README for MediaTekRyder Lee
Add a few notes on how to try out the MediaTek support so far. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Tested-by: Frank Wunderlich <frank-w@public-files.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28mmc: mtk-sd: add SD/MMC host controller driver for MT7623 SoCWeijie Gao
This patch adds MT7623 host controller driver for accessing SD/MMC. Cc: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Weijie Gao <weijie.gao@mediatek.com> Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Tested-by: Matthias Brugger <matthias.bgg@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28ram: MediaTek: add DDR3 driver for MT7629 SoCRyder Lee
This patch adds a DDR3 driver for MT7629 SoC. Signed-off-by: Wu Zou <wu.zou@mediatek.com> Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28serial: MediaTek: add high-speed uart driver for MediaTek SoCsRyder Lee
Many SoCs from MediaTek have a high-speed uart. This UART is compatible with the ns16550 in legacy mode. It has extra registers for high-speed mode which can reach a maximum baudrate at 921600. However this UART will no longer be compatible if it's in high-speed mode. Some BootROM of MediaTek's SoCs will change the UART into high-speed mode and the U-Boot must use this driver to initialize the UART. Signed-off-by: Weijie Gao <weijie.gao@mediatek.com> Tested-by: Ryder Lee <ryder.lee@mediatek.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28power domain: MediaTek: add power domain driver for MT7623 SoCRyder Lee
This adds power domain (scpsys) support for MT7623 SoC. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28power domain: MediaTek: add power domain driver for MT7629 SoCRyder Lee
This adds a power domain driver for the Mediatek SCPSYS unit. The System Control Processor System (SCPSYS) has several power management related tasks in the system. The tasks include thermal measurement, dynamic voltage frequency scaling (DVFS), interrupt filter and lowlevel sleep control. The System Power Manager (SPM) inside the SCPSYS is for the MTCMOS power domain control. For now this driver only adds power domain support. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28pinctrl: MediaTek: add pinctrl driver for MT7623 SoCRyder Lee
This patch adds pinctrl support for MT7623 SoC. And most of the structures are used to hold the hardware configuration for each pin. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Tested-by: Matthias Brugger <matthias.bgg@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28pinctrl: MediaTek: add pinctrl driver for MT7629 SoCRyder Lee
This patch adds pinctrl support for MT7629 SoC. The IO core found on the SoC has the registers for pinctrl, pinconf and gpio mixed up in the same register range. Hence the driver also implements the gpio functionality through UCLASS_GPIO. This also creates a common file as there might be other chips that use the same binding and driver, then being a little more abstract could help in the long run. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28watchdog: MediaTek: add watchdog driver for MediaTek SoCsRyder Lee
This patch adds a common driver for the Mediatek SoC integrated watchdog. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Tested-by: Matthias Brugger <matthias.bgg@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28timer: MediaTek: add timer driver for MediaTek SoCsRyder Lee
This patch adds clock source and clock event for the timer found on the Mediatek SoCs. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Tested-by: Matthias Brugger <matthias.bgg@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28clk: MediaTek: add clock driver for MT7623 SoC.Ryder Lee
This patch adds a driver for MT7623 clock blocks. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Tested-by: Matthias Brugger <matthias.bgg@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28clk: MediaTek: add clock driver for MT7629 SoC.Ryder Lee
This patch adds clock modules for MediaTek SoCs: - Shared part: a common driver which contains the general operations for plls, muxes, dividers and gates so that we can reuse it in future. - Specific SoC part: the group of structures used to hold the hardware configuration for each SoC. We take MT7629 as an example to demonstrate how to implement driver if any other MediaTek chips would like to use it. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28arm: MediaTek: add basic support for MT7623 boardsWeijie Gao
This adds a general board file based on MT7623 SoCs from MediaTek. As this u-boot is loaded by MTK proprietary preloader, there is no low level initializtion codes. Signed-off-by: Weijie Gao <weijie.gao@mediatek.com> Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Tested-by: Matthias Brugger <matthias.bgg@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28arm: MediaTek: add basic support for MT7629 boardsRyder Lee
This adds a general board file based on MT7629 SoCs from MediaTek. Apart from the generic parts (cpu) we add some low level init codes and initialize the early clocks. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Signed-off-by: Weijie Gao <weijie.gao@mediatek.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28arm: dts: MediaTek: add device tree for MT7623Ryder Lee
This adds device tree for MT7623 development board - Bananapi R2 Detailed hardware information for BPI-R2 which could be found on http://wiki.banana-pi.org/Banana_Pi_BPI-R2. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Tested-by: Matthias Brugger <matthias.bgg@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28arm: dts: MediaTek: add device tree for MT7629Ryder Lee
This patch adds MT7629 device tree and the includes it needs. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-28tools: MediaTek: add MTK boot header generation to mkimageRyder Lee
This patch adds support for MTK boot image generation. Signed-off-by: Weijie Gao <weijie.gao@mediatek.com> Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-11-27Merge branch 'master' of git://git.denx.de/u-boot-usbTom Rini
- Introduce CONFIG_SPL_DM_USB
2018-11-26Merge branch '2018-11-26-master-imports'Tom Rini
- chiliboard updates - misc TI platform updates
2018-11-26ARM: chiliboard: remove dead !CONFIG_DM_SERIAL codeMarcin Niestroj
DM_SERIAL is selected by TARGET_CHILIBOARD, so there is no reason to keep code that will not be built. Remove it. Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2018-11-26ARM: chiliboard: move towards driver model and device-tree bootMarcin Niestroj
This patch mostly enables DM drivers in board defconfig and all their dependencies. Additionally we remove ethernet platform data, as all details are in device-tree now. Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com> Reviewed-by: Tom Rini <trini@konsulko.com>