aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-03-09phy: Include NC-SI in phy setupSamuel Mendoza-Jonas
Add NC-SI to the usual phy handling. This makes two notable changes: - Somewhat similar to a fixed phy, phy_connect() will create an NC-SI phy if CONFIG_PHY_NCSI is defined. - An early return is added to phy_read() and phy_write() to handle a case like the NC-SI phy which does not define a bus. Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com> Reviewed-by: Joel Stanley <joel@jms.id.au> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
2020-03-09phy: Add support for the NC-SI protocolSamuel Mendoza-Jonas
This introduces support for the NC-SI protocol, modelled as a phy driver for other ethernet drivers to consume. NC-SI (Network Controller Sideband Interface) is a protocol to manage a sideband connection to a proper network interface, for example a BMC (Baseboard Management Controller) sharing the NIC of the host system. Probing and configuration occurs by communicating with the "remote" NIC via NC-SI control frames (Ethernet header 0x88f8). This implementation is roughly based on the upstream Linux implementation[0], with a reduced feature set and an emphasis on getting a link up as fast as possible rather than probing the full possible topology of the bus. The current phy model relies on the network being "up", sending NC-SI command frames via net_send_packet() and receiving them from the net_loop() loop (added in a following patch). The ncsi-pkt.h header[1] is copied from the Linux kernel for consistent field definitions. [0]: https://github.com/torvalds/linux/tree/master/net/ncsi [1]: https://github.com/torvalds/linux/blob/master/net/ncsi/ncsi-pkt.h Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com> Reviewed-by: Joel Stanley <joel@jms.id.au> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
2020-03-09Azure/Travis: Re-sync jobs and clarify exclusionsTom Rini
We keep both of these jobs in sync as much as possible even when the primary motivation is to keep Travis from exceeding the build time limit there. With that in mind: - Use "rk" not "rockchip" to get all Rockchip SoC platforms in one job, rather than just all Rockchip vendor platforms. - The NXP LX216* SoCs have their own job, exclude them from the AArch64 generic job. - SoCFPGA SoCs have their own job, exclude them from the AArch64 generic job. Signed-off-by: Tom Rini <trini@konsulko.com>
2020-03-09imx: imx8qm_rom7720: added missing USDHC Base address definesOliver Graute
Added missing USDHC Base address defines Signed-off-by: Oliver Graute <oliver.graute@kococonnector.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <festevam@gmail.com> Cc: Peng Fan <peng.fan@nxp.com> Cc: Simon Glass <sjg@chromium.org> Cc: Ye Li <ye.li@nxp.com> Cc: uboot-imx <uboot-imx@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2020-03-09ARM: dts: imx8mm-verdin: drop rgmii_rxc_dly/txc_dlyMax Krummenacher
The FEC in the i.MX8MM doesn't support this feature. So don't pretend one can use it. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> Acked-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-03-09ARM: dts: imx8mm-verdin: dm-spl for pinctrl_usdhc1 nodeIgor Opaniuk
Let pinctrl configuration for eMMC node (usdhc1) also be accessible in SPL. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-03-09serial_lpuart: make clock failure less verboseGiulio Benetti
Some device may enable CONFIG_CLK but not still support this clock in CC, so better use debug() in place of dev_warn() otherwise a lot of boards will throw useless dev_warn()s. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-03-09imx8mm/mn: Add missing root clock entry for ARM core clockFrieder Schrempf
The current implementation in arch/arm/mach-imx/cpu.c uses non-DM code to retrieve the core clock frequency. As the root clock is not listed we currently get: CPU: Freescale i.MX8MMQ rev1.0 at 0 MHz Fix this by adding the missing entry, which results in: CPU: Freescale i.MX8MMQ rev1.0 at 1200 MHz Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2020-03-09mx6cuboxi: don't disable fdt relocationBaruch Siach
fdt_high value of 0xffffffff disables fdt relocation on boot. We don't need that for Cubox-i/Hummingboard. Rely on generic code to find the optimal fdt location at boot time. Signed-off-by: Baruch Siach <baruch@tkos.co.il>
2020-03-09imx: Makefile: added missing ahab.oOliver Graute
added missing ahab.o in Makefile Signed-off-by: Oliver Graute <oliver.graute@kococonnector.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <festevam@gmail.com> Cc: Peng Fan <peng.fan@nxp.com> Cc: Simon Glass <sjg@chromium.org> Cc: Ye Li <ye.li@nxp.com> Cc: uboot-imx <uboot-imx@nxp.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2020-03-09mx6sxsabresd: Enable DM_PCIFabio Estevam
Enale DM_PCI support in order to avoid board removal from the project. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-03-09configs: imxrt1050-evk: enable D/I cacheGiulio Benetti
Soc supports cache so let's enable it. Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
2020-03-09imx: mx6ul_14x14_evk: configure for 24bpp displayAnatolij Gustschin
Before DM_VIDEO conversion this board used 24bpp display configuration, so use it again. Signed-off-by: Anatolij Gustschin <agust@denx.de> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2020-03-09ARM: dts: imx6sx-sdb: Sync with kernel 5.4.16Fabio Estevam
Sync the imx6sx-sdb dts files with kernel 5.4.16. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-03-09ARM: dts: imx6sx: Sync with kernel 5.4.16Fabio Estevam
Sync the imx6sx dts files with kernel 5.4.16. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-03-09imx8qxp_mek: Add myself as maintainerFabio Estevam
I would like to help co-maintaining this board. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-03-09mx7dsabresd: Add myself as maintainerFabio Estevam
I would like to help co-maintaining this board. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-03-09imx8qxp_mek: Fix the console command line stringFabio Estevam
Currently the expansion of the console variable leads to the following kernel command line: console=ttyLP0,${baudrate} earlycon root=/dev/mmcblk1p2 rootwait rw , which causes the console to not show characters after the LPUART driver is probed as the 'baudrate' variable is not properly translated. Fix it by splitting the console variable in two parts: one for the ttyLP0 part and the other one for the baudrate, which matches the way it is done on other i.MX targets. Tested by successfully booting a mainline kernel on a i.MX8QXP MEK board. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-03-09imx: remove woodburn boardStefano Babic
Board is not longer used, remove it. Signed-off-by: Stefano Babic <sbabic@denx.de>
2020-03-09imx6, aristainetos2c: add da9063 pmic setupHeiko Schocher
On the aristainetos2c boards the PMIC needs to be initialized, because the Ethernet PHY uses a different regulator that is not setup per hardware default. This does not influence the other versions as this regulator isn't used there at all. Signed-off-by: Heiko Schocher <hs@denx.de>
2020-03-09configs: j721e_evm: Add Support for eMMC bootFaiz Abbas
Enable configs to support eMMC boot. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
2020-03-09configs: am65x_evm: Add CONFIG_SUPPORT_EMMC_BOOTFaiz Abbas
With CONFIG_SUPPORT_EMMC_BOOT moved to Kconfig, move it to defconfig files. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
2020-03-09arm: dts: k3-j721e-r5-common-proc-board: Use unique names for dummy clocksFaiz Abbas
Update the dummy clock names to use unique identifiers. Otherwise the previous node just gets overwitten by the next one with the same name. This fixes eMMC boot not working on J721e-evm. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
2020-03-09arm: K3: sysfw-loader: Add a config_pm_pre_callback()Faiz Abbas
System firmware does not guarantee that clocks going out of the device will be stable during power management configuration. There are some DCRC errors when SPL tries to get the next stage during eMMC boot after sysfw pm configuration. Therefore add a config_pm_pre_callback() to switch off the eMMC clock before power management and restart it after it is done. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
2020-03-09spl: mmc: Fix spl_mmc_get_uboot_raw_sector() implementationFaiz Abbas
The call to spl_mmc_get_uboot_raw_sector() completely ignores and overwrites the raw_sect value passed from the caller of spl_mmc_load(). Fix this by passing raw_sect to the function and returning the same value in the default case. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
2020-03-09mmc: am654_sdhci: Implement workaround for card detectFaiz Abbas
The 4 bit MMC controllers have an internal debounce for the SDCD line with a debounce delay of 1 second. Therefore, after clocks to the IP are enabled, software has to wait for this time before it can power on the controller. Add a deferred_probe() callback which polls on sdcd for a maximum of 2 seconds before switching on power to the controller or (in the case of no card) returning a ENOMEDIUM. This pushes the 1 second wait time to when the card is actually needed rather than at every probe() making sure that users who don't insert an SD card in the slot don't have to wait such a long time. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
2020-03-09mmc: am654_sdhci: Update output tap delay writesFaiz Abbas
With the latest RIOT, there is a different otap delay value for each speed mode. Add a new binding with every supported speed mode. Also disable a given speed mode in the host caps if its corresponding otap-del-sel is not present. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
2020-03-09mmc: Merge SD_LEGACY and MMC_LEGACY bus modesFaiz Abbas
MMC_LEGACY & SD_LEGACY are not differentiated timings in the spec and don't have any meaningful differences. Therefore, get rid of all references to SD_LEGACY and use MMC_LEGACY to mean both of them. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
2020-03-09sdhci: Add sdhci_deferred_probe() APIFaiz Abbas
Add the sdhci_deferred_probe() function to register as the deferred_probe() callback to the mmc core. It will in turn call the deferred_probe() callback of the platform drivers as declared in the sdhci_ops. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
2020-03-09mmc: Add a deferred_probe() APIFaiz Abbas
Add a deferred_probe() API for platforms that want to do some configurations just before starting to enumerate the device. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
2020-03-09mmc: Add a saved_clock memberFaiz Abbas
Add a saved_clock member to struct mmc to store the previous clock speed in the clock needs to be stopped for some time. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
2020-03-09mmc: make <mmc.h> self-containedMasahiro Yamada
This header uses bd_t without including its definition. Change it to (struct bd_info), and add the forward declaration to specify it as a structure. Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2020-03-09board: presidio-asic: Add eMMC board supportAlex Nemirovsky
Add initial eMMC support for Cortina Access Presidio Engineering Board Signed-off-by: Alex Nemirovsky <alex.nemirovsky@cortina-access.com>
2020-03-09mmc: ca_dw_mmc: add DesignWare based DM support for CAxxxx SoCsArthur Li
Initial DesignWare based DM support for Cortina Access CAxxxx SoCs. Signed-off-by: Arthur Li <arthur.li@cortina-access.com> Signed-off-by: Alex Nemirovsky <alex.nemirovsky@cortina-access.com>
2020-03-06Makefile: fix processing of default environment fileSamuel Mescoff
Allow the default environment file to contain long lines split into multiples lines. Leading white spaces can be added for readability as well. Signed-off-by: Samuel Mescoff <samuel@mescoff.fr> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
2020-03-05Merge https://gitlab.denx.de/u-boot/custodians/u-boot-x86Tom Rini
- Revert "x86: use invd instead of wbinvd in real mode start code" - Convert toradex boards README to reST - serial: ns16550: Move PCI access from ofdata_to_platdata() to probe() - x86: apl: Use cpu_x86_get_count() for cpu_ops.get_count
2020-03-05x86: apl: Use cpu_x86_get_count() for cpu_ops.get_countWolfgang Wallner
Use cpu_x86_get_count() to read the number of cores. cpu_x86_get_count() reads the number of CPUs from the device tree. Using this function we can support multiple Apollo Lake variants, e.g.: E3940 (4 cores) and E3930 (2 cores). This was tested on the E3940 and E3930 Apollo Lake variants. Signed-off-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-03-05x86: cpu_x86: Make cpu_x86_get_count() non-staticWolfgang Wallner
The function cpu_x86_get_count() is also useful for other modules. Make it non-static and add a prototype + description. Signed-off-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-03-05doc: Chromebook Coral: Fix typo for "Top of CAR region"Wolfgang Wallner
The value for "Top of CAR region" should be fefc0000, not fefc000. This matches the Kconfig default values, as SYS_CAR_ADDR and SYS_CAR_SIZE are 0xfef00000 and 0xc0000 respectively. Signed-off-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-03-05x86: p2sb: Drop 'apl' prefixWolfgang Wallner
Drop the Apollo Lake prefix 'apl' from the functions, types and variables in the P2SB driver. The P2SB is not Apollo Lake specific, and as such it was moved in commit 2999846c1127 ("x86: Move P2SB from Apollo Lake to a more generic location") from the Apollo Lake folder to the intel_common folder. Signed-off-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-03-05serial: ns16550: Move PCI access from ofdata_to_platdata() to probe()Wolfgang Wallner
Currently the ofdata_to_platdata() method calls dev_read_addr_pci(), which potentially accesses the parent PCI bus. If this happens before the parent PCI bus is probed the resulting address will be wrong. This behavior was triggered by commit 82de42fa1468 ("dm: core: Allocate parent data separate from probing parent"). According to a comment in drivers/pci/pci-uclass.c [1] accessing the PCI parent bus in ofdata_to_platdata() is not allowed, and the access should be moved to the probe() function. Move the call to dev_read_addr_pci() and the related handling of the 'addr' value from the ofdata_to_platdata() to its own function, which is then called from the probe() method. While moving the code, the comment /* try Processor Local Bus device first */ was dropped. It was initially added with commit 3db886a5bf38 ("serial: ns16550: Support ns16550 compatible pci uart devices") and later made obsolete with commit 33c215af4b9d ("dm: pci: Add a function to read a PCI BAR"). [1] Comment in drivers/pci/pci-uclass.c: "A common cause of this problem is that this function is called in the ofdata_to_platdata() method of @dev. Accessing the PCI bus in that method is not allowed, since it has not yet been probed. To fix this, move that access to the probe() method of @dev instead." Fixes: 82de42fa1468 ("dm: core: Allocate parent data separate from probing parent") Signed-off-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> # Tested on Intel Galileo
2020-03-05Revert "x86: use invd instead of wbinvd in real mode start code"Andy Shevchenko
This reverts commit 0d67fac29f3187e67f4fd3ef15f73e91be2fad12. As real hardware testing (*) shows the above mentioned commit breaks U-Boot on it. Revert for the upcoming release. We may get more information in the future and optimize the code accordingly. (*) on Intel Edison board. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Bin Meng <bmeng.cn@gmail.com> [bmeng: fix a typo in the commit message] Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2020-03-05x86: remove dead code in intel_clk_get_rate()Heinrich Schuchardt
If all branches of a switch statement have a return instruction, all subsequent lines are unreachable. Identified with cppcheck. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-03-05toradex: MAINTAINERS: entries for new reST docsIgor Opaniuk
Add entries for the newly created documentation files in reST format. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-03-05doc: board: colibri-imx8x: convert readme to reSTIgor Opaniuk
Convert README to reStructuredText format. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com>
2020-03-05doc: board: apalis-imx8: convert readme to reSTIgor Opaniuk
Convert README to reStructuredText format. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com>
2020-03-05doc: board: verdin-imx8mm: convert readme to reSTIgor Opaniuk
Convert README to reStructuredText format. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> [bmeng: spell out U-Boot correctly] Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2020-03-05doc: board: toradex: add colibri_imx7.rstIgor Opaniuk
- add initial index for toradex boards reST documentation - add initial colibri_imx7.rst doc file which provides all needed information for obtaining a workable image ready for flashing for both eMMC/NAND versions of Colibri iMX7. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> [bmeng: make title underline the same length as the title itself] Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2020-03-05x86: Correct error return value in mrccache_get_region()Simon Glass
This function doesn't use uclass_find_first_device() correctly. Add a check that the device is found so we don't try to read properties from a NULL device. The fixes booting on minnoxmax. Fixes: 87f1084a630 ("x86: Adjust mrccache_get_region() to use livetree") Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-03-04Merge branch 'master' of git://git.denx.de/u-boot-shTom Rini
- Limit bootloader size to 1 MiB on R-Car Gen3