summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-09-28drivers: Add OSD uclassMario Six5-0/+247
Some devices offer a text-based OSD (on-screen display) that can be programmatically controlled (i.e. text displayed on). Add a uclass to support such devices. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Mario Six <mario.six@gdsys.cc>
2018-09-28dm: video: support more escape sequencesHeinrich Schuchardt2-25/+78
The EFI subsystems needs to know the size of the terminal. If the environment variable stdout = serial,vidconsole this size cannot be read from the video console. So the EFI subsystem sends escape sequences to read the size. With this patch we get support for the following escape sequences: ESC "7" Save cursor position ESC "8" Restore cursor position Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2018-09-28dm: video: adjust struct vidconsole_priv descriptionHeinrich Schuchardt1-1/+1
The third component of struct vidconsole_priv is ycur. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2018-09-28MAINTAINERS: assign include/video*.hHeinrich Schuchardt1-0/+1
The include/video*.h files are part of the drivers in drivers/video. So it makes sense to assign them to the same maintainer. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-09-27Merge tag 'xilinx-for-v2018.11' of git://git.denx.de/u-boot-microblazeTom Rini20-63/+87
Xilinx changes for v2018.11 - Handle BOARD_LATE_INIT via Kconfig SPL: - Enable GZIP for all partitions types(not only for kernel) ZynqMP: - Rearrange pmufw version handling - Support newer PMUFW with improved fpga load sequence Zynq: - Cleanup config file - Simplify zybo config by enabling option via Kconfig net: - Fix gems max-speed property reading - Enable support for fixed-link phys
2018-09-27net: zynq_gem: Add support for fixed-link phyMichal Simek1-8/+9
Based on dt-specs fixed-link doesn't require phy-handle to be used. Fix driver to only read phy related setting when phy-handle is found. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
2018-09-26Merge tag 'signed-efi-next' of git://github.com/agraf/u-bootTom Rini81-1226/+8024
Patch queue for efi - 2018-09-26 A lot of goodness in this release. We're *very* close to running the UEFI Shell and SCT natively. The only missing piece are HII protocols. - FAT write support (needed for SCT) - improved FAT directory support (needed for SCT) - RTC support with QEMU -M virt - Sandbox support (run UEFI binaries in Linux - yay) - Proper UTF-16 support - EFI_UNICODE_COLLATION_PROTOCOL support (for UEFI Shell) - EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL support (for UEFI Shell) - Fix window size determination - Fix Tegra by explicitly unmapping RAM - Clean up handle entanglement - Lots of generic code cleanup [trini: Fixup merge conflict in include/configs/qemu-arm.h] Signed-off-by: Tom Rini <trini@konsulko.com>
2018-09-26sandbox: Fix set_working_fdt_addr usersAlexander Graf2-2/+2
When running sandbox with the new pointer sanitization we just recently introduced, we're running into a case with FIT images where we end up interpreting pointers as addresses. What happened is that most callers of set_working_fdt_addr() simply convert pointers into addresses without taking into account that they might be 2 separate address spaces. Fix the callers up to map their pointers into addresses. This makes sandbox tests pass for me again. Signed-off-by: Alexander Graf <agraf@suse.de>
2018-09-26arm: zynq: zybo: migrate CONFIG_DISPLAY to defconfigLuis Araneda2-2/+1
Only add CONFIG_DISPLAY to defconfig because CONFIG_I2C_EDID is automatically selected by CONFIG_DISPLAY Signed-off-by: Luis Araneda <luaraneda@gmail.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-09-26net: zynq_gem: Fix reading of max-speed propertySiva Durga Prasad Paladugu1-1/+2
max-speed property is part of phynode and it has to be read using ofnode_read_u32_default(). This fixes the issue of incorrect max-speed read from DT. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-09-26spl: fit: Enable GZIP compression also for no kernel partitionsMichal Simek1-4/+1
There is no reason to limit gzip usage only for OS_BOOT and kernel image type. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Tested-by: York Sun <york.sun@nxp.com>
2018-09-26fpga: zynqmp: Modify PL bitstream loading sequenceSiva Durga Prasad Paladugu2-10/+27
This patch modifies PL bitstream loading sequence as per latest Xilfpga which supports all variants of bitstream images generated from vivado and from bootgen. With this new change in Xilfpga, uboot doesn't need to validate and swap bitstream as it will be taken care inside Xilfpga. ZynqMP PL driver now checks for supporting PMUFW version before skipping the validation and swap sequence as there can be old PMUFW which doesn't supports this feature. In this case, driver uses old way of PL bitstream loading sequence. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-09-26arm64: zynqmp: Return pmufw version for zynqmp_pmufw_version()Siva Durga Prasad Paladugu3-16/+28
Modify the zynqmp_pmufw_version() routine to return PMUFW version so that it can be reused wherever required. Get PMUFW version from PMU only once at bootup and later just return stored value. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-09-26arm64: zynqmp: Move PM version related macros to .hSiva Durga Prasad Paladugu2-11/+11
This patch moves the PM version related macros to .h file so that they can be reused in other files. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-09-26arm: zynq: Remove useless comments from config fileMichal Simek1-8/+0
Moving options to Kconfig some comments are useless now. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-09-26arm64: zynqmp: Handle CONFIG_BOARD_LATE_INIT via KconfigMichal Simek11-5/+10
Disable BOARD_LATE_INIT via Kconfig. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2018-09-25config.mk: Remove duplicated -fno-strict-aliasingBin Meng3-3/+2
Now that we already disable the "strict-aliasing" globally, remove the duplicates in the nds32/riscv/x86 arch-specific Makefiles. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Rick Chen <rick@andestech.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-09-25Makefile: Use -fno-strict-aliasing globallyBin Meng1-1/+1
The -fstrict-aliasing option is implicitly enabled at levels -O2, -O3, -Os by GCC. This option allows the compiler to assume the strictest aliasing rules applicable to the language being compiled. For example, the practice of reading from a different union member than the one most recently written to (called "type-punning") is common. In this case, "type-punning" only works if the memory is accessed through the union type, but might not work by taking the address, casting the resulting pointer and dereferencing the result, which is an undefined behavior per the "strict aliasing rules". GCC's -Wstrict-aliasing (included in -Wall) option does not catch all cases, but does attempt to catch the more common pitfalls. So there are cases that GCC does not report but the codes are violating the "strict aliasing rules". Given lots of codes that may be written to rely on "type-punning", and Linux kernel disables it by -fno-strict-aliasing globally, since U-Boot currently does this on nds32/riscv/x86 builds only, extend this for all architecture builds. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-09-25serial: omap: Add support for AM654 uart controllerLokesh Vutla1-0/+1
AM654 uses a UART controller that is compatible (partially) with existing OMAP UART, Introduce a compatible for adding support for this controller. Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
2018-09-25configs: Drop CONFIG_SYS_SCSI_MAXDEVICETuomas Tynkkynen6-7/+1
This option has never been used for anything. Drop it. Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-09-25ata: Drop CONFIG_SYS_SCSI_MAX_* from boards using DM_SCSITuomas Tynkkynen4-18/+0
These options are not used or necessary when device model is being used for SCSI. Just drop them. Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-09-25ata: ahci: Don't cap AHCI port count under CONFIG_DM_SCSITuomas Tynkkynen1-0/+2
When using device model this sort of hardcoded limits aren't used or necessary. Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-09-25ata: ahci: Loop over the actual number of ports, not the maximumTuomas Tynkkynen1-1/+1
The loop in ahci_start_ports() is looping over the maximum number of SCSI devices in the system, which can be larger than the amount of ports a particular AHCI controller has. The extra looping isn't directly harmful because the link_port_map bitmap won't have the bit set for a nonexistent port, but it is wasteful. Replace the loop limit with the port count of the AHCI controller instead. Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-09-25xtensa: use asm-generic/atomic.hChris Packham1-43/+1
Make use of asm-generic/atomic.h. Signed-off-by: Chris Packham <judge.packham@gmail.com> Acked-by: Max Filippov <jcmvbkbc@gmail.com>
2018-09-25mips: use asm-generic/atomic.hChris Packham1-43/+1
Make use of asm-generic/atomic.h. Signed-off-by: Chris Packham <judge.packham@gmail.com>
2018-09-25ARM: use asm-generic/atomic.hChris Packham1-146/+1
Make use of asm-generic/atomic.h retaining the smp_mb_... definitions. Signed-off-by: Chris Packham <judge.packham@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2018-09-25Add include/asm-generic/atomic.hChris Packham1-0/+150
The arm, xtensa and mips version of atomic.h were already very similar (the mips one was a copy of xtensa). Combine these implementations together to produce a generic atomic.h that can be included by these architectures (and any others that need it in future). Signed-off-by: Chris Packham <judge.packham@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2018-09-25cmd: add conitrace commandHeinrich Schuchardt3-0/+58
The 'conitrace' command prints the codes received from the console input as hexadecimal numbers. This developer utility is useful for testing the handling of special keys by keyboard drivers. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2018-09-25mmc: omap_hsmmc: Fix pbias for omap3_logic to enable CD pinAdam Ford2-0/+5
The MMC card detect pin is connected to gpio127 on omap3_logic. When setting up the pbias register for MMC, let's also enable gpio_127 for the card detect. As part of the package deal, gpio_126 and gpio_129 are also enabled. Signed-off-by: Adam Ford <aford173@gmail.com>
2018-09-25dm: Update README.txt to clarify device tree usageTom Rini1-0/+9
In the section about Device Trees add a paragraph at the end that clarifies how we decide of a tree is valid or not. We say that all bindings must either be in the specification (link provided) or in our device-tree-bindings directory. We say that most of these come from the Linux Kernel and as such some design decisions are made for us already, but that in most cases we wish to retain compatibility. Cc: Simon Glass <sjg@chromium.org> Cc: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-09-25arm: spear: fix enabling of SSP2 clockQuentin Schulz1-1/+1
The SSP2 clock is at bit 6 in the register, so the value is 0x40 unlike the current 0x70 which enables the clock of UART2, SSP1 and SSP2. Signed-off-by: Quentin Schulz <quentin.schulz@bootlin.com> Acked-by: Stefan Roese <sr@denx.de>
2018-09-25arm: spear: enable SSP1, 2 and 3 clocks when SPI controller driver is builtQuentin Schulz2-0/+5
SPI controllers SSP1, 2 and 3 require to enable their respective clocks. Let's enable them only when the SPI controller driver is built. Signed-off-by: Quentin Schulz <quentin.schulz@bootlin.com>
2018-09-25spi: add support for ARM PL022 SPI controllerQuentin Schulz4-0/+375
This adds support for the ARM PL022 SPI controller for the standard variant (0x00041022) which has a 16bit wide and 8 locations deep TX/RX FIFO. A few parts were borrowed from the Linux kernel driver. Cc: Armando Visconti <armando.visconti@st.com> Cc: Vipin Kumar <vipin.kumar@st.com> Signed-off-by: Quentin Schulz <quentin.schulz@bootlin.com>
2018-09-25configs: am335x_evm: enable OF_BOARD_SETUPSekhar Nori1-0/+1
Enable CONFIG_OF_BOARD_SETUP as it is needed for Beaglebone black to overwrite the Ethernet phy address present in DT in case the phy latches on to a different address. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2018-09-25board: ti: am335x: add support to fixup phy addressSekhar Nori1-0/+78
On beaglebone black, it can so happen that PHY address is not latched correctly on reset and board boots with PHY responding to a different address than that programmed in device-tree. For example, see this report: https://groups.google.com/d/msg/beagleboard/9mctrG26Mc8/1FuI_i5KW10J Workaround this by fixing up device-tree passed to kernel by using the PHY address detected in hardware. Beaglebone itself uses only one ethernet port and its DT currently uses phy_id (obsoleted). But the function has been written to handle multiple ports and phy_id as well as phy-handle to make the function more generically useful. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2018-09-25drivers: net: cpsw: add support to update phy addressSekhar Nori2-0/+30
On some boards using TI CPSW, it may be possible that PHY address was not latched correctly, and the actual address that the phy responds on is different from that set in device-tree. For example, see this problem report on beaglebone black: https://groups.google.com/d/msg/beagleboard/9mctrG26Mc8/1FuI_i5KW10J Add support to check for this condition and use the detected phy address when its safe to do so. Also, add a public API that exposes the phy address of a given slave. This can be used to update device-tree that is passed to Linux kernel. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2018-09-25configs: sama5d27_som1_ek: Add defconfig for ENV/boot from uSDCodrin Ciubotariu2-2/+93
This adds a defconfig for sama5d27_som1_ek board to get environment from uSD. The defconfig is made from sama5d27_som1_ek_mmc_defconfig, with 'bootcmd' and 'bootargs' changed to kernel, device-tree and rootfs from uSD. The environment is expected to be found in uSD's FAT partition. Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
2018-09-25configs: sama5d27_som1_ek: Set CONFIG_BOOTARGS using KconfigCodrin Ciubotariu2-3/+2
CONFIG_BOOTARGS can be set using Kconfig, so we no longer need it in the config files. Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
2018-09-25configs: sama5d27_som1_ek: Remove unnecessary FAT_ENV_xxx macrosCodrin Ciubotariu1-3/+0
FAT_ENV_xxx options can now be set using Kconfig, so we no longer need them in the config files. Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
2018-09-25configs: sama5d2_xplained: Add defconfig for ENV/boot from eMMCCodrin Ciubotariu2-2/+90
This adds a defconfig for sama5d2_xplained board to get environment from eMMC. The defconfig is made from sama5d2_xplained_mmc_defconfig, with 'bootcmd' and 'bootargs' changed to kernel, device-tree and rootfs from eMMC. The environment is expected to be found in eMMC's FAT partition. Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
2018-09-25spl: Weed out CONFIG_SYS_TEXT_BASE usageMarek Vasut11-20/+30
The SPL loaders assume that the CONFIG_SYS_TEXT_BASE memory location is available and can be corrupted by loading ie. uImage or fitImage headers there. Sometimes it could be beneficial to load the headers elsewhere, ie. if CONFIG_SYS_TEXT_BASE is not yet writable while we still want to parse the image headers in some local onchip memory to ie. extract firmware from that image. Add the possibility to override the location where the headers get loaded by introducing new function, spl_get_load_buffer() which takes two arguments -- offset from the CONFIG_SYS_TEXT_BASE and size of the data that are to be loaded there -- and returns a valid buffer address or hangs the system. The default behavior is the same as before, add the offset to CONFIG_SYS_TEXT_BASE and return that address. User can override the weak spl_get_load_buffer() function though. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2018-09-25board: st: stm32mp1: Add usb gadget supportPatrice Chotard1-0/+168
Enable USB gadget support using DWC2 driver Populate board_usb_init() to initialize clocks, phy, reset and data needed for DWC2 IP. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
2018-09-25configs: stm32mp15: Enable USB relative flagsPatrice Chotard1-0/+16
Enable config USB relative flags in order to enable USB EHCI, DWC2 gadget, download and mass_storage support. Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
2018-09-25ARM: dts: stm32mp1: Add EHCI support for stm32mp157c-ev1 boardPatrice Chotard1-0/+7
Add DT nodes to enable EHCI support Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
2018-09-25ARM: dts: stm32mp1: Add usb gadget support for stm32mp157c-ev1 boardPatrice Chotard4-0/+55
Add DT nodes to enable DWC2 gadget support Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
2018-09-23efi_loader: refactor efi_setup_loaded_image()Heinrich Schuchardt5-100/+117
Create the handle of loaded images and the EFI_LOADED_IMAGE_PROTOCOL inside efi_setup_loaded_image(). Do not use local variables. Currently we expect the loaded image handle to point to the loaded image protocol. Additionally we have appended private fields to the protocol. With the patch the handle points to a loaded image object and the private fields are added here. This matches how we handle the net and the gop object. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-09-23arm: qemu-arm: enable RTC (PL031) by defaultAKASHI Takahiro1-0/+2
Virtual machine provided by qemu-arm has a ARM PL031 Real Time Clock device. With this patch, the driver is enabled by default. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-09-23rtc: pl031: convert the driver to driver modelAKASHI Takahiro3-50/+80
With this patch, PL031 driver is converted to driver-model-compliant driver. In addition, CONFIG_SYS_RTC_PL031_BASE is no longer valid. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-09-23efi_loader: Fix loaded_image handle passing from EL3Alexander Graf1-1/+1
When running in EL3 mode on AArch64, we have to first drop to EL2 to execute a UEFI payload. When dropping down, the arguments to the entry point have to stay identical to the ones for normal entry though. In commit ea54ad59286 ("efi_loader: pass handle of loaded image") we incorrectly changed that logic and had the el3 entry path diverge. Fix it up by syncing it back to what it's supposed to be. Fixes: ea54ad59286 ("efi_loader: pass handle of loaded image") Signed-off-by: Alexander Graf <agraf@suse.de> Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
2018-09-23efi_loader: Disable efi selftest on sandbox for nowAlexander Graf1-1/+1
The EFI selftest does not succeed on Sandbox yet. The network support seems to need some love to actually make our current tests succeed. So let's disable running the selftest on sandbox for now until "make tests" just works. Then we can have more amazing CI than ever. Signed-off-by: Alexander Graf <agraf@suse.de>