summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-05-21mpc83xx: pcie: Read the clock from registersMario Six
The MPC83xx DM timer driver disables arch.pciexp*_clk, and uses clk_get_rate instead. But the legacy MPC83xx PCIe driver still uses arch.pciexp*_clk for the clock. Hence, read the PCIe clock from the registers in the legacy MPC83xx PCIe driver. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21mpc83xx: Kconfig: Migrate HRCW to KconfigMario Six
The HRCW (hardware reset configuration word) is a constant that must be hard-coded into the boot loader image. So, it must be available at compile time, and cannot be migrated to the DT mechanism, but has to be kept in Kconfig. Configuration of this crucial variable should still be somewhat comfortable. Hence, make its fields configurable in Kconfig, and assemble the final value from these. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21mpc83xx: Get rid of CONFIG_83XX_CLKINMario Six
MPC83xx uses CONFIG_83XX_CLKIN instead of CONFIG_SYS_CLK_FREQ to set the system clock. To migrate the architecture, we can replace CONFIG_83XX_CLKIN with CONFIG_SYS_CLK_FREQ. To do this * replace all occurrences of CONFIG_83XX_CLKIN with CONFIG_SYS_CLK_FREQ * set CONFIG_SYS_CLK_FREQ to the old value of CONFIG_83XX_CLKIN in all MPC83xx config files Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21mpc83xx: Replace CONFIG_83XX_CLKIN in calculationsMario Six
CONFIG_SYS_CLK_FREQ is the standard way to set the system clock frequency. On MPC83xx, CONFIG_83XX_CLKIN is used for this purpose. Hence, the obvious way is to replace CONFIG_83XX_CLKIN with CONFIG_SYS_CLK_FREQ. A few MPC83xx boards use the CONFIG_83XX_CLKIN variable for computing CONFIG_SYS_NS16550_CLK. This makes it harder to replace CONFIG_83XX_CLKIN. But the value of the multiplicator can be read from the SPMR register. Hence, replace the static calculations with a call to a new get_bus_freq function, as other architectures do. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21mpc83xx: Migrate legacy PCI options to KconfigMario Six
The MPC83xx include files contain some settings of the PCI subsystem. Migrate these to Kconfig until a proper DM PCI driver exists. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21MPC837XERDB: Remove CONFIG_MPC837XERDBMario Six
CONFIG_MPC837XERDB is unused, and TARGET_MPC837XERDB could replace it. Hence, get rid of CONFIG_MPC837XERDB. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21MPC837XEMDS: Remove CONFIG_MPC837XEMDSMario Six
CONFIG_MPC837XEMDS is unused, and TARGET_MPC837XEMDS could replace it. Hence, get rid of CONFIG_MPC837XEMDS. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21MPC8315ERDB: Remove CONFIG_MPC8315ERDBMario Six
CONFIG_MPC8315ERDB is unused, and TARGET_MPC8315ERDB could replace it. Hence, get rid of CONFIG_MPC8315ERDB. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21MPC8313ERDB: Remove CONFIG_MPC8313ERDBMario Six
CONFIG_MPC8313ERDB is unused, and TARGET_MPC8313ERDB_NAND/TARGET_MPC8313ERDB_NOR Kconfig could replace it. Hence, get rid of CONFIG_MPC8313ERDB. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21strider: Migrate to CONFIG_TARGET_STRIDERMario Six
Use the proper CONFIG_TARGET_STRIDER Kconfig option to replace the CONFIG_STRIDER ad-hoc config option. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21hrcon: Migrate to CONFIG_TARGET_HRCONMario Six
Use the proper CONFIG_TARGET_HRCON Kconfig option to replace the CONFIG_HRCON ad-hoc config option. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21MPC8349ITX: Migrate to CONFIG_TARGET_MPC8349ITXMario Six
Use the proper CONFIG_TARGET_MPC8349ITX Kconfig option to replace the CONFIG_MPC8349ITX ad-hoc config option. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21MPC832XEMDS: Migrate to CONFIG_TARGET_MPC832XEMDSMario Six
Use the proper CONFIG_TARGET_MPC832XEMDS Kconfig option to replace the CONFIG_MPC832XEMDS ad-hoc config option. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21ve8313: Merge BR/OR settingsMario Six
The ve8313 has the option of either configuring the eLBC (enhanced local system bus) such that * NOR flash is the first memory bank, and NAND flash is the second memory bank, or * NAND flash is the first memory bank, and NOR flash is the second memory bank, by using CONFIG_SYS_NOR_{BR,OR}_PRELIM and CONFIG_SYS_NAND_{BR,OR}_PRELIM for defining CONFIG_SYS_{BR,OR}{0,1}_PRELIM. After Kconfig migration, replacing some lines in the defconfig will have the same effect. Hence, we will not create distinct ve8313_{NOR,NAND} configs for such a small change. Instead, fix the current default (NOR first, NAND second), and unroll the CONFIG_SYS_NAND_{BR,OR}_PRELIM options. This will ease the Kconfig migration Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21mpc8315erdb: Merge BR/OR settingsMario Six
The mpc8315erdb has the option of either configuring the eLBC (enhanced local system bus) such that * NOR flash is the first memory bank, and NAND flash is the second memory bank, or * NAND flash is the first memory bank, and NOR flash is the second memory bank, by using CONFIG_SYS_NOR_{BR,OR}_PRELIM and CONFIG_SYS_NAND_{BR,OR}_PRELIM for defining CONFIG_SYS_{BR,OR}{0,1}_PRELIM. After Kconfig migration, replacing some lines in the defconfig will have the same effect. Hence, we will not create distinct ve8313_{NOR,NAND} configs for such a small change. Instead, fix the current default (NOR first, NAND second), and unroll the CONFIG_SYS_NAND_{BR,OR}_PRELIM options. This will ease the Kconfig migration. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-21mpc83xx: Make distinct MPC8349EMDS_SDRAM boardMario Six
The MPC8349EMDS config file contains config options to enable SDRAM support. To keep this ability after the Kconfig migration, create a new MPC8349EMDS_SDRAM board that enables the SDRAM support and remove the SDRAM support from the original board. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20Merge branch 'master' of git://git.denx.de/u-boot-sunxiTom Rini
- H6 WDT reset fix (Clément) - H6 SPL_TEXT_BASE fixes (Clément, Jonas) - NPI-M1+ emac enablment (Emmanuel)
2019-05-20sun8i: h3: NanoPi M1 Plus: Add emac configurationEmmanuel Vadot
NanoPi M1 plus have a 10/100/1000M ethernet with external phy. Phy power is controlled by PD6. Add the required configuration for it. Signed-off-by: Emmanuel Vadot <manu@freebsd.org> Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
2019-05-20sun50i: a64: teres_i: Fix broken SPL_TEXT_BASEJonas Smedegaard
SPL_TEXT_BASE was moved into Kconfig, which previously part of include/configs before this teres_i support gets merged. Fix it by explicitly define in defconfig like other boards does. Signed-off-by: Jonas Smedegaard <dr@jones.dk> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2019-05-20sun50i: h6: Fix Beelink GS1 board configClément Péron
SPL_TEXT_BASE has been moved to Kconfig with commit: f89d6133ee configs: move CONFIG_SPL_TEXT_BASE to Kconfig But Beelink GS1 config file has been introduced in the same time without this modification. Fix this by settings the CONFIG_SPL_TEXT_BASE Suggested-by: Jonas Smedegaard <dr@jones.dk> Signed-off-by: Clément Péron <peron.clem@gmail.com> Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
2019-05-20arm: sunxi: h6: fix reset using r_wdogClément Péron
Some H6 boards have a watchdog which didn't make the SoC reboot properly. Reason is still unknown but several people have test it. Chen-Yu Tsai : Pine H64 = H6 V200-AWIN H6448BA 7782 => OK OrangePi Lite 2 = H6 V200-AWIN H8068BA 61C2 => KO Martin Ayotte : Pine H64 = H8069BA 6892 => OK OrangePi 3 = HA047BA 69W2 => KO OrangePi One Plus = H7310BA 6842 => KO OrangePi Lite2 = H6448BA 6662 => KO Clément Péron: Beelink GS1 = H6 V200-AWIN H7309BA 6842 => KO After the series of result, Icenowy try to reach Allwinner about this issue but they seems not interested to investigate it. As we don't have the ARIS coproc to do power management and watchdogis the only solution to reset the board. So, Change from watchdog to R_watchdog to allow a reboot on all H6 boards. Signed-off-by: Clément Péron <peron.clem@gmail.com> Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
2019-05-20powerpc: Add LSDMR config valuesMario Six
The LSDMR_* macros are used to configure the system bus on MPC83xx. A few of the possible LSDMR_* macros were never defined in the respective include files. This renders the SDRAM support on the MPC8349EMDS unusable, because it uses these undefined macros. To make the SDRAM option work, introduce these macros into the proper config file. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20mpc83xx: Make distinct caddy2 configMario Six
vme8349.h contains two separate boards: The vme8349 itself, and the caddy2 board. The caddy2 board is chosen by setting certain config variables. Create a proper config file for the caddy2 board to make Kconfig migration easier. Furthermore, simplify the vme8349 and caddy2 configs by keeping only the options necessary for each board. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20vme8349: Migrate to CONFIG_TARGET_VME8349Mario Six
CONFIG_TARGET_VME8349 can replace CONFIG_VME8349. Hence, replace CONFIG_VME8349 with CONFIG_TARGET_VME8349, and remove CONFIG_VME8349. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20mpc83xx: Make distinct MPC8313ERDB targetsMario Six
MPC8313ERDB has the option of either enabling NOR or NAND boot in its config file (by commenting out certain #ifdefs). To keep this ability after migrating options to Kconfig, we introduce two MPC8313ERDB configs: one for NOR, and one for NAND. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20keymile: Make distinct kmeter1, and kmcoge5ne configsMario Six
The kmeter1, and kmcoge5ne boards also build from the same config file with #ifdef logic. Create a separate include config for each board with the #ifdef logic resolved as needed. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20keymile: Unroll km/km83xx-common.hMario Six
Simplify the keymile config files once more by unrolling the km/km83xx-common.h, and resolve the #ifdef logic as needed. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20keymile: Make distinct kmsupx5, tuge1, kmopti2, and kmtepr2 configsMario Six
The kmsupx5, tuge1, kmopti2, and kmtepr2 boards all build from the same include config file with lots of #ifdef logic. To ease Kconfig migration, create new config include files for these boards, and resolve the #ifdef logic as needed. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20keymile: Unroll includesMario Six
To further simplify config include files, unroll the km/km8309-common.h and km/km8321-common.h include files. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20keymile: Move config filesMario Six
We want to unroll several include files, while keeping include statements consistent. To make it easier to not break the include statements, move the include files to the main configs directory. All three include files moved will be unrolled, so they won't pollute the directory for long. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20keymile: Make distinct kmtegr1, kmvect1, suvd3 configsMario Six
The kmtegr1, kmvect1, and suvd3 boards all use the same config include file with lots of #ifdefs in it. The Kconfig migation will become easier if we get rid of these #ifdefs first. Hence, create distinct config include files for these boards, and unwind the #ifdef logic in these config files to only include the options necessary for each board. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20mpc83xx: Introduce ARCH_MPC837XMario Six
Replace CONFIG_MPC837x with a proper CONFIG_ARCH_MPC837X Kconfig option. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20mpc83xx: Introduce ARCH_MPC836*Mario Six
Replace CONFIG_MPC836* with proper CONFIG_ARCH_MPC836* Kconfig options. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20mpc83xx: Introduce ARCH_MPC834*Mario Six
Replace CONFIG_MPC834* with proper CONFIG_ARCH_MPC834* Kconfig options. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20mpc83xx: Introduce ARCH_MPC832*Mario Six
Replace CONFIG_MPC832* with proper CONFIG_ARCH_MPC832* Kconfig options. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20mpc83xx: Introduce ARCH_MPC831*Mario Six
Replace CONFIG_MPC833* with proper CONFIG_ARCH_MPC833* Kconfig options. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20mpc83xx: Introduce ARCH_MPC830*Mario Six
Replace CONFIG_MPC830* with proper CONFIG_ARCH_MPC830* Kconfig options. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2019-05-20Merge branch 'master' of git://git.denx.de/u-boot-i2cTom Rini
- Fix for mxc_i2c driver in DM mode, thanks to Trent!
2019-05-20Merge git://git.denx.de/u-boot-marvellTom Rini
- Fix SPL build on Armada XP (theadorable etc) (Stefan)
2019-05-20video: Factor out vidconsole_put_string()Marek Vasut
Pull the vidconsole_put_string() function from DM tests, make it available to e.g. boards that want to display information on the LCD on boot. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Anatolij Gustschin <agust@denx.de> Reviewed-by: Anatolij Gustschin <agust@denx.de>
2019-05-20video: ipuv3: Set max display bpp to 32Marek Vasut
The IPUv3 can handle 1920x1080x32bpp displays , set the max preallocated framebuffer BPP to 32 to cater for all eventualities. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Anatolij Gustschin <agust@denx.de>
2019-05-20imx: mx6sabresd: fix boot hang with videoPeng Fan
Meet the following boot hang. " U-Boot SPL 2019.04-00661-gdc80a012e4 (Apr 25 2019 - 10:31:57 +0800) Trying to boot from MMC1 U-Boot 2019.04-00661-gdc80a012e4 (Apr 25 2019 - 10:31:57 +0800) CPU: Freescale i.MX6Q rev1.5 996 MHz (running at 792 MHz) CPU: Automotive temperature grade (-40C to 125C)Reset cause: POR Model: Freescale i.MX6 Quad SABRE Smart Device Board Board: MX6-SabreSD I2C: ready DRAM: 1 GiB Video device 'ipu@2400000' cannot allocate frame buffer memory -ensure the device is set up before relocation Error binding driver 'ipuv3_video': -28 Video device 'ipu@2800000' cannot allocate frame buffer memory -ensure the device is set up before relocation Error binding driver 'ipuv3_video': -28 Some drivers failed to bind Error binding driver 'generic_simple_bus': -28 Some drivers failed to bind initcall sequence 4ffe4500 failed at call 1780dfb7 (err=-28) " 1. fdtdec_get_alias_seq will use "video" as base, however in alias node, we use ipux, so add new alias for U-Boot dts. 2. DM_VIDEO is enabled, however reserve_video is called before relocation, so to make DM_VIDEO work before relocation, need to set SYS_MALLOC_F_LEN 3. defconfig is updated with savedefconfig Note: I do not have a video panel to test, but with this patch, U-Boot boots up again, below log. " U-Boot SPL 2019.04-00662-g0b62453bff (Apr 25 2019 - 10:36:31 +0800) Trying to boot from MMC1 U-Boot 2019.04-00662-g0b62453bff (Apr 25 2019 - 10:36:31 +0800) CPU: Freescale i.MX6Q rev1.5 996 MHz (running at 792 MHz) CPU: Automotive temperature grade (-40C to 125C) at 34C Reset cause: POR Model: Freescale i.MX6 Quad SABRE Smart Device Board Board: MX6-SabreSD I2C: ready DRAM: 1 GiB PMIC: PFUZE100 ID=0x10 MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 3 Loading Environment from MMC... *** Warning - bad CRC, using default environment PCI: pcie phy link never came up In: serial Out: serial Err: serial Net: FEC [PRIME] Hit any key to stop autoboot: 0 " Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Anatolij Gustschin <agust@denx.de>
2019-05-20arm: imx: cx9020: remove unnecessary includesSteffen Dirkwinkel
There are several includes in mx53cx9020.c which are not required anymore. Acked-by: Patrick Bruenn <p.bruenn@beckhoff.com> Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
2019-05-20dm: arm: imx: cx9020: remove unused mmc functionsSteffen Dirkwinkel
These mmc functions were not used anymore since DM_MMC was introduced. Acked-by: Patrick Bruenn <p.bruenn@beckhoff.com> Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
2019-05-20dm: arm: imx: cx9020: migrate to dm_videoSteffen Dirkwinkel
Enable DM_VIDEO in config and don't overwrite console so it can be set from environment Acked-by: Patrick Bruenn <p.bruenn@beckhoff.com> Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
2019-05-20arm: imx: add ipu to imx53.dts and set dm-pre-relocSteffen Dirkwinkel
The ipu node in imx53 is needed for DM_VIDEO. We also need to set u-boot,dm-pre-reloc to initialize before relocation. Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
2019-05-20dm: arm: imx: video: add compatible for imx53-ipuSteffen Dirkwinkel
This code also works with imx53 ipus so we can enable it for them. Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
2019-05-20dm: arm: imx: cx9020: enable DM_GPIOSteffen Dirkwinkel
Switch to DM_GPIO and add gpio_request where necessary. This is needed for DM_VIDEO and fixes an issue with sd card detection which was introduced by the combination of these commits: commit 7a0425dd969c ("mmc: fsl_esdhc: make get_cd work well in dm_mmc_ops") commit 7e04b4c751a1 ("dm: arm: imx: migrate cx9020 to CONFIG_DM_MMC") Acked-by: Patrick Bruenn <p.bruenn@beckhoff.com> Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
2019-05-20splash: Load internal and external data from FITLeo Ruan
The FIT image could contain the splash data in 3 different structure: - The splash data is embedded in FIT image (internal) In this case, the property 'data' presents in FIT image header. And internal information 'start' and 'end' represent the location and size of splash data inside of FIT image. - The splash data is external with absolute position in FIT image This case is made by 'mkimage -p [pos]'. The splash data is stored at the absolute position. Instead the property 'data', the properties 'data-position' and 'data-size' are used to specify the location and size of the splash data. - the splash data is external with relative offset in FIT image This case is made by 'mkimage -E'. The splash data is placed after the FIT image header with 4 byte alignment. Instead the property 'data', the properties 'data-offset' and 'data-size' are used to specify the location and size of the splash data. Currently, the splash only support to load external data with relative offset from FIT image. This commit make it possible to load the splash data embedded in FIT image or the external data with absolute position This inspiration comes from Simon Glass <sjg@chromium.org>, see common/spl_fit.c 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> Reviewed-by: Stefano Babic <sbabic@denx.de>
2019-05-20splash: Use splashfile instead of location->nameLeo Ruan
The splash image could be loaded from different sources (e.g. sf, mmc) with different formats (e.g. raw, file-system). These sources are structured by a board dependent object 'splash_location'. To decide where is the splash image loaded, following environment variables are used to select the splash source and file: - 'splashsource' is used to select the splash source by setting its value to specified name of splash location. - 'splashfile' specify the name of splash image file But, when loads the splash image from FIT, the name of splash image within FIT is specified by splash location name. Due to the splash location name is already used for the splash source, its name may conflicts with the name of splash image. To solve the conflict, the environment variable 'splashfile' is used to specify the splash image in FIT, and keeps the splash location name for the splash source. 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> Reviewed-by: Stefano Babic <sbabic@denx.de> Reviewed-by: Tomas Melin <tomas.melin@vaisala.com>