summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* spl: Introduce SPL_DM_GPIO Kconfig defineWIP/2019-10-11-master-importsLukasz Majewski2019-10-111-0/+6
| | | | | | | | This define indicates if DM_GPIO shall be supported in SPL. This allows proper operation of DM converted GPIO drivers in SPL, which use boards. Signed-off-by: Lukasz Majewski <lukma@denx.de>
* cmd: itest: add support for .q size specifierMarek Szyprowski2019-10-111-0/+12
| | | | | | | Add support for quad (64bits) memory access specifier. Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Acked-by: Lukasz Majewski <lukma@denx.de>
* fs: fat: get_contents() always returns -1 for errorsHeinrich Schuchardt2019-10-111-1/+1
| | | | | | If out of memory, return -1 and not -ENOMEM from get_contents(). Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
* fs: fat: treat invalid FAT clusters as errorsHeinrich Schuchardt2019-10-111-10/+20
| | | | | | | When hitting an invalid FAT cluster while reading a file always print an error message and return an error code. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
* sandbox: Remove sandbox_noblk buildTom Rini2019-10-113-191/+1
| | | | | | | | | | | | | | At this point, all drivers that do not use CONFIG_BLK are past their migration deadlines, so remove this config as it's no longer helpful and hinders enhancing block drivers. Cc: Simon Glass <sjg@chromium.org> Cc: Faiz Abbas <faiz_abbas@ti.com> Signed-off-by: Tom Rini <trini@konsulko.com> --- This is required for Faiz's series that adds UFS support to SCSI as that breaks the non-BLK case. This path seems the most reasonable at this point in time.
* spl: Introduce SPL_DM_SPI Kconfig defineLukasz Majewski2019-10-111-0/+7
| | | | | | | | | This define indicates if DM_SPI shall be supported in SPL. This allows proper operation of DM converted SPI drivers in SPL, which use #if !CONFIG_IS_ENABLED(DM_SPI) to also support not yet DM/DTS converted boards. Signed-off-by: Lukasz Majewski <lukma@denx.de>
* arm64: print instructions leading to exceptionHeinrich Schuchardt2019-10-111-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If an exception occurs in a loaded image and the relocation offset is unknown, it is helpful to know the instructions pointed to by the program counter. This patch adds the missing output. A possible output is: Code: 910c4021 aa1303e0 f9400662 d63f0040 (e7f7defb) The parentheses indicate the instruction causing the exception. The output can be disassembled using scripts/decodecode: echo 'Code: 90000360 9100b800 94002782 17ffff8f (e7f7defb)' | \ ARCH=arm64 scripts/decodecode Code: 90000360 9100b800 94002782 17ffff8f (e7f7defb) All code ======== 0: 90000360 adrp x0, 0x6c000 4: 9100b800 add x0, x0, #0x2e 8: 94002782 bl 0x9e10 c: 17ffff8f b 0xfffffffffffffe48 10:* e7f7defb .inst 0xe7f7defb ; undefined <-- trapping instruction Code starting with the faulting instruction =========================================== 0: e7f7defb .inst 0xe7f7defb ; undefined We already have implemented the same for armv7. For testing command 'exception undefined' can be used. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
* cmd: avoid decimal conversionT Karthik Reddy2019-10-111-12/+12
| | | | | | | This patch uses auto instead of decimal in simple_strtoul(). Signed-off-by: T Karthik Reddy <t.karthik.reddy@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
* ARM: asm/io.h: remove redundant #if !defined(readb) blockRasmus Villemoes2019-10-111-15/+0
| | | | | | | readb is unconditionally defined earlier in io.h, so there's no point checking whether it's undefined. Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
* ARM: asm/io.h: kill off confusing #ifdef __mem_pci blockRasmus Villemoes2019-10-111-41/+0
| | | | | | | | | | | | | No ARM board seems to define __mem_pci - and if it did, one would get tons of ./arch/arm/include/asm/io.h:307:0: warning: "readl" redefined warnings, because readl and friends are unconditionally defined earlier in io.h. Moreover, the redefinitions lack the memory barriers that the first definitions have. So I'm guessing this is practically dead code. Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
* spl: mmc: Add option to set eMMC HW boot partitionMans Rullgard2019-10-112-0/+10
| | | | | | | | | | | This change allows setting pre-defined eMMC boot partition for SPL eMMC booting. It is necessary in the case when one wants to boot (through falcon boot) from eMMC after loading SPL from other memory (like SPI-NOR). Signed-off-by: Mans Rullgard <mans@mansr.com> [lukma: Edit the commit message] Signed-off-by: Lukasz Majewski <lukma@denx.de> Acked-by: Andreas Dannenberg <dannenberg@ti.com>
* spl: mmc: Fix indentation in spl_mmc.c fileMans Rullgard2019-10-111-20/+20
| | | | | | | | This fixes a wrongly indented block of code. Signed-off-by: Mans Rullgard <mans@mansr.com> [lukma: Make the commit message more verbose] Signed-off-by: Lukasz Majewski <lukma@denx.de>
* regulator: fixed: Modify enable-active-high behaviorPatrice Chotard2019-10-111-1/+6
| | | | | | | | | | | | | | | Regulator should not be enabled at probe time if regulator-boot-on property is not in the dt node. "enable-active-high" property is only used to indicate the GPIO polarity. See kernel documentation : - Documentation/devicetree/bindings/regulator/fixed-regulator.yaml - Documentation/devicetree/bindings/regulator/gpio-regulator.yaml Signed-off-by: Christophe Kerello <christophe.kerello@st.com> Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
* ata: ahci: Don't forget to clear upper address regs.Oleksandr Rybalko2019-10-111-4/+7
| | | | | | | | | In 32bits mode upper bits need to be set to 0, otherwise controller will try to DMA into not existing memory and stops with error. Tested-by: Frank Wunderlich <frank-w@public-files.de> Signed-off-by: Frank Wunderlich <frank-w@public-files.de> Signed-off-by: Oleksandr Rybalko <ray@ddteam.net>
* ahci-pci: ASM1061 report wrong class, but support AHCI.Oleksandr Rybalko2019-10-111-0/+1
| | | | | | Tested-by: Frank Wunderlich <frank-w@public-files.de> Signed-off-by: Frank Wunderlich <frank-w@public-files.de> Signed-off-by: Oleksandr Rybalko <ray@ddteam.net>
* dt-bindings: phy: add a document for MediaTek tphyRyder Lee2019-10-111-0/+86
| | | | | | | | | This adds a document for tphy which supports physical layer functionality for a number of controllers on MediaTek SoCs, such as, USB2.0, USB3.0, PCIe, and SATA. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
* dt-bindings: pcie: add a document for MT7623 PCIe controllerRyder Lee2019-10-111-0/+122
| | | | | | | This adds a document for MT7623 PCIe controller. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
* arm: dts: split mtk-reset.h into per-chip headerRyder Lee2019-10-114-5/+39
| | | | | | | | This follows the linux header rules to avoid conflict bitfields. Tested-by: Frank Wunderlich <frank-w@public-files.de> Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
* arm: dts: add PCIe controller for MT7623 SoCRyder Lee2019-10-112-0/+157
| | | | | | | | This adds PCIe and its PHY nodes for MT7623. Tested-by: Frank Wunderlich <frank-w@public-files.de> Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
* phy: mediatek: add MediaTek T-PHY support for PCIeRyder Lee2019-10-113-0/+374
| | | | | | | | | | | | The driver provides PHY for USB2, USB3.0, PCIe and SATA, and now we just enable PCIe. As for the other functionalities will be added gradually in upcoming days. This is adapted from the Linux version. Tested-by: Frank Wunderlich <frank-w@public-files.de> Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
* pci: mediatek: add PCIe controller support for MT7623Ryder Lee2019-10-113-0/+288
| | | | | | | | | This adds PCIe controller support for MT7623. This is adapted from the Linux version. Tested-by: Frank Wunderlich <frank-w@public-files.de> Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
* spl: add a generic function board_init_fPhilippe Reynes2019-10-112-0/+27
| | | | | | | | | This commit add a generic function board_init_f that only initialize some device (for example serial). It avoid to define a board function only to launch the serial configuration. Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
* bcm968580xref: enable spi-nor supportPhilippe Reynes2019-10-111-0/+9
| | | | | | | | This commit enable the support of the spi-nor for the broadcom reference board bcm968580xref. Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> Reviewed-by: Kursad Oney <kursad.oney@broadcom.com>
* dt: bcm968580xref: add a spi-nor devicePhilippe Reynes2019-10-111-0/+12
| | | | | | | This commit add a spi-nor device in the bcm96850xref device tree. Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> Reviewed-by: Kursad Oney <kursad.oney@broadcom.com>
* dt: bcm6858: add hsspi controllerPhilippe Reynes2019-10-111-0/+25
| | | | | | | This commit add a hsspi controller in the bcm6858 device tree. Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> Reviewed-by: Kursad Oney <kursad.oney@broadcom.com>
* configs: Add hsspi/spi support to bcm963158.Kursad Oney2019-10-111-0/+7
| | | | | | | | This commit enable the support of the spi-nor for the broadcom reference board bcm963158. Signed-off-by: Kursad Oney <kursad.oney@broadcom.com> Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com>
* dt: bcm963158: add a spi-nor deviceKursad Oney2019-10-111-0/+12
| | | | | | | This change adds a spi nor flash device to the bcm963158 board. Signed-off-by: Kursad Oney <kursad.oney@broadcom.com> Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com>
* dt: bcm63158: Add hsspi controllerKursad Oney2019-10-111-0/+25
| | | | | | | This change adds the hsspi controller to the 63158 dtsi. Signed-off-by: Kursad Oney <kursad.oney@broadcom.com> Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com>
* spi: bcm63xx_hsspi: Continue init when using no reset and fixed-clock.Kursad Oney2019-10-111-10/+9
| | | | | | | | | | | | | | | The Broadcom ARM implementations do not yet have a clock framework so one can use a fixed clock as the root clock of the hsspi block. The fixed clock does not have an "enable" routine, since it's always enabled. So when we hit this issue, getting an ENOSYS return, do not bail but continue initialization. Similarly the block might already have been out of reset, say, when we are booting from a SPI device. So if the reset signal is not configured in the device tree, do not bail out and instead skip deasserting the reset. Signed-off-by: Kursad Oney <kursad.oney@broadcom.com> Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com>
* spi: bcm63xx_hsspi: switch to raw I/O functions.Kursad Oney2019-10-111-14/+14
| | | | | | | | | | | Make the driver compatible with both big and little endian SOCs. Replace big-endian calls with their raw equivalents, expect for writing the command to FIFO. That still has to be in big-endian format. Signed-off-by: Kursad Oney <kursad.oney@broadcom.com> Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
* waitbit: Add the generic wait_for_bit macros for 16 and 32 bits.Kursad Oney2019-10-111-0/+2
| | | | | | | | | | wait_for_bit_le32 and wait_for_bit_le16 use the raw I/O functions which would default to big-endian on BE systems. Create the generic equivalents to use the native endianness. Signed-off-by: Kursad Oney <kursad.oney@broadcom.com> Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
* spi: hsspi: allow to be used on bcm6858 and bcm63158Kursad Oney2019-10-111-1/+1
| | | | | | | | | This IP exists in both MIPS and ARM cores, so we also allow to use this driver on bcm6858 and bcm63158. Signed-off-by: Kursad Oney <kursad.oney@broadcom.com> Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
* Merge tag 'xilinx-for-v2020.01' of ↵WIP/09Oct2019Tom Rini2019-10-09134-429/+5369
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://gitlab.denx.de/u-boot/custodians/u-boot-microblaze Xilinx/FPGA changes for v2020.01 FPGA: - Enable fpga loading on Versal - Minor fix Microblaze: - Fix LMB configurations to support initrds - Some other cleanups Zynq: - Minor config/dt changes - Add distro boot support for usb1 and mmc1 - Remove Xilinx private boot commands and use only distro boot ZynqMP: - Kconfig cleanups, defconfig updates - Update some dt files - Add firmware driver for talking to PMUFW - Extend distro boot support for jtag - Add new IDs - Add system controller configurations - Convert code to talk firmware via mailbox or SMCs Versal: - Add board_late_init() - Add run time DT memory setup - Add DFU support - Extend distro boot support for jtag and dfu - Add clock driver - Tune mini configurations Xilinx: - Improve documentation (boot scripts, dt binding) - Enable run time initrd_high calculation - Define default SYS_PROMPT - Add zynq/zynqmp virtual defconfig Drivers: - Add Xilinx mailbox driver for talking to firmware - Clean zynq_gem for Versal - Move ZYNQ_HISPD_BROKEN to Kconfig - Wire genphy_init() in phy.c - Add Xilinx gii2rgmii bridge - Cleanup zynq_sdhci - dwc3 fix - zynq_gpio fix - axi_emac fix Others: - apalis-tk1 - clean config file
| * arm64: versal: remove debug uart for versal virtIbai Erkiaga2019-10-081-5/+0
| | | | | | | | | | | | | | Remove the debug uart configuration from versal virtual defconfig. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * ARM: zynq: Introduce virtual defconfigIbai Erkiaga2019-10-081-0/+79
| | | | | | | | | | | | | | | | Add virtual defconfig for Zynq architecture using of_board dtb. This defconfig should become generic config for all Zynq boards. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * arm64: zynqmp: Introduce virtual defconfigIbai Erkiaga2019-10-081-0/+108
| | | | | | | | | | | | | | | | Add virtual defconfig for ZynqMP architecture using of_board dtb. This defconfig should become generic config for all ZynqMP boards. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * arm64: xilinx: Enable generic of_board_dtbIbai Erkiaga2019-10-082-3/+4
| | | | | | | | | | | | | | | | | | Modify the configuration naming to be generic to xilinx rather than specific to Versal. The offset value is different for Zynq and ZynqMP to avoid overlapping with FSBL. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * arm64: versal: Move common board dtb searchIbai Erkiaga2019-10-085-19/+22
| | | | | | | | | | | | | | | | Move the exisiting function of getting board dtb from versal to a common Xilinx folder. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * arm64: zynqmp: Use mailbox driver for PMUFW config loadingMichal Simek2019-10-085-118/+25
| | | | | | | | | | | | | | | | With new mailbox driver PMUFW configuration object can be loaded via the same interface and there is no need to have pmu_ipc.c completely. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net>
| * firmware: zynqmp: Separate function for sending message via mailboxMichal Simek2019-10-082-11/+10
| | | | | | | | | | | | | | | | | | | | | | | | U-Boot running in EL3 can't use SMC that's why there is a need to talk to PMUFW directly via mailbox. The same logic is applied to all functions which need to talk to PMUFW that's why move this logic to separate function to avoid code duplication. Also SMC request ID can be composed from PM_SIP_SVC offset that's why ZYNQMP_SIP_SVC_GET_API_VERSION macro can be removed completely. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * arm64: zynqmp: probe firmware driverIbai Erkiaga2019-10-082-12/+9
| | | | | | | | | | | | | | | | | | Probe ZynqMP firmware driver on the board initialization phase and ensure that firmware is in place to continue execution. The probing is done on board_init so it can be used for both SPL and U-Boot proper. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * arm64: zynqmp: remove old fw version functionIbai Erkiaga2019-10-082-24/+0
| | | | | | | | | | | | | | Removes the old function to get the firmware version. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * arm64: zynqmp: use firmware driver to get versionIbai Erkiaga2019-10-082-3/+3
| | | | | | | | | | | | | | Use the new function from firmware version to get the firmware version. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * firmware: zynqmp: create firmware headerIbai Erkiaga2019-10-088-25/+44
| | | | | | | | | | | | | | | | | | New firmware header to place firmware specific macro and function declarations. The patch also moves the macros defining PM operations as well as some helper macros. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * firmware: zynqmp: get fw version with mailbox driverIbai Erkiaga2019-10-081-2/+74
| | | | | | | | | | | | | | | | | | Implements the function to get PMU Firmware version using the mailbox driver or smc call based on if running SPL or not. Additionally gets version as part of the ZynqMP Firmware driver probing Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * arm64: zynqmp: Cleanup PM SMC macro compositionMichal Simek2019-10-081-2/+11
| | | | | | | | | | | | | | | | Cleanup PM ID handling by using enum values. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * arm64: zynqmp: add firmware and mailbox node to DTIbai Erkiaga2019-10-081-5/+39
| | | | | | | | | | | | | | | | The following patch adds a mailbox node and firmware node to following the mainline DT. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * firmware: zynqmp: Add zynqmp-power supportIbai Erkiaga2019-10-082-0/+49
| | | | | | | | | | | | | | | | | | zynqmp-power driver for ZynqMP to handle the communication with the PMU firmware. Firmware driver just probes subnodes and power driver handles communication with PMU using the IPI mailbox driver. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * mailbox: zynqmp: ipi mailbox driverIbai Erkiaga2019-10-085-0/+147
| | | | | | | | | | | | | | | | | | ZynqMP mailbox driver implementing IPI communication with PMU. This would allow U-Boot SPL to communicate with PMUFW to request privileged operations. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * mailbox: allow subnode for mbox regsIbai Erkiaga2019-10-081-1/+10
| | | | | | | | | | | | | | | | | | The following patch allows the mailbox node in DT to host subnodes with mailbox definitions. If the client phandle to the mailbox is not the mailbox driver node, just checks parents as well. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>