aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-01-16MSCC: Add device tree for Jaguar2-48 boardHoratiu Vultur
Add device tree based on evaluation board pcb111. Signed-off-by: Horatiu Vultur <horatiu.vultur@microchip.com>
2019-01-16MSCC: Add device tree for Jaguar2 boardHoratiu Vultur
Add device tree based on evaluation board pcb110. Signed-off-by: Horatiu Vultur <horatiu.vultur@microchip.com>
2019-01-16MSCC: Add support for Jaguar2 SOC familyHoratiu Vultur
As the Ocelot and Luton SoCs, this family of SoCs are found in Microsemi Switches solution. Signed-off-by: Horatiu Vultur <horatiu.vultur@microchip.com>
2019-01-16pinctrl: mscc: Add gpio and pinctrl for Jaguar2 SOC familyHoratiu Vultur
The Jaguar2 SOC family has 63 gpio pins therefore I extended mscc-common to support new numbe of pins and remove any platform dependency from mscc-common. Signed-off-by: Horatiu Vultur <horatiu.vultur@microchip.com>
2019-01-16mips: gpio: mscc: Obsoleted gpio-mscc-bitbang-spi.cLars Povlsen
With the new mscc_bb_spi.c driver, there is no longer use for the gpio-mscc-bitbang-spi.c driver. Signed-off-by: Lars Povlsen <lars.povlsen@microchip.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2019-01-16mips: mscc: DT: Update luton device tree to use fast SPI driverLars Povlsen
Thes patch change the luton base device tree to use the newly added SPI bitbang driver. It also updates the "mscc_luton_defconfig" to use the new driver. Signed-off-by: Lars Povlsen <lars.povlsen@microchip.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2019-01-16mips: spi: mscc: Add fast bitbang SPI driverLars Povlsen
This patch add a new SPI driver for MSCC SOCs that does not sport the designware SPI hardware controller. Performance gain: 7.664 seconds vs. 17.633 for 1 Mbyte write. Signed-off-by: Lars Povlsen <lars.povlsen@microchip.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2019-01-16mmc: jz_mmc: Compile-out write support if disabledEzequiel Garcia
Do not build write support, unless it's enabled. In the SPL case, this change will typically remove precious bytes (as write support is most often not needed in SPL). This is important on this platform, where the maximum SPL size is 14 KiB. With gcc v7.3, this change saves 144 bytes producing: size spl/u-boot-spl text data bss dec hex filename 9240 752 712 10704 29d0 spl/u-boot-spl To make the code easier to compile-out and more readable, a pair of read_data/write_data helpers are created. Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2019-01-16mmc: Use proper IS_ENABLED macro to check block supportEzequiel Garcia
Use CONFIG_IS_ENABLED(BLK) instead of CONFIG_BLK, in order to fix the following build issues when CONFIG_SPL_MMC_WRITE is selected: drivers/mmc/mmc_write.c:69:7: error: conflicting types for 'mmc_berase' ulong mmc_berase(struct udevice *dev, lbaint_t start, lbaint_t blkcnt) ^~~~~~~~~~ In file included from drivers/mmc/mmc_write.c:15:0: drivers/mmc/mmc_private.h:39:7: note: previous declaration of 'mmc_berase' was here ulong mmc_berase(struct blk_desc *block_dev, lbaint_t start, lbaint_t blkcnt); ^~~~~~~~~~ drivers/mmc/mmc_write.c:187:7: error: conflicting types for 'mmc_bwrite' ulong mmc_bwrite(struct udevice *dev, lbaint_t start, lbaint_t blkcnt, ^~~~~~~~~~ In file included from drivers/mmc/mmc_write.c:15:0: drivers/mmc/mmc_private.h:37:7: note: previous declaration of 'mmc_bwrite' was here ulong mmc_bwrite(struct blk_desc *block_dev, lbaint_t start, lbaint_t blkcnt, ^~~~~~~~~~ Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2019-01-16net: bcm6368: fix restart flow issuesÁlvaro Fernández Rojas
Correctly enable/disable bcm6368-net controller to avoid flow issues. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2019-01-16MIPS: jz47xx: remove custom u-boot-spl.ldsDaniel Schwierzeck
There is no real difference between the generic variant and the custom variant except that the generic variant is more optimised. This also saves 24 Bytes in the SPL binary. Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Tested-by: Ezequiel Garcia <ezequiel@collabora.com>
2019-01-16MIPS: optimize and fix ELF sectionsDaniel Schwierzeck
Discard ABI related sections which are not required for debugging. Rearrange debug sections similar to Linux. Remove the remaining explicitely specified sections in the unused part because those sections are not created anymore or because the linker puts them by default at the end of the ELF binary. Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Tested-by: Ezequiel Garcia <ezequiel@collabora.com>
2019-01-16mips: ocelot: Enable use of serial gpio for LEDLars Povlsen
This enables the use of the MSCC serial GPIO driver to control the LEDs on the MSCC VCoreIII 'ocelot' pcb123 and pcb120. Signed-off-by: Lars Povlsen <lars.povlsen@microchip.com>
2019-01-16mips: ocelot: DT: Enable use of serial gpioLars Povlsen
This enables the use of the MSCC serial GPIO driver on the MSCC VCoreIII 'ocelot' SOC, and add gpio-leds nodes to the pcb123 and pcb120 DT. Signed-off-by: Lars Povlsen <lars.povlsen@microsemi.com>
2019-01-16mips: luton: Enable use of serial gpio for LEDLars Povlsen
This enables the use of the MSCC serial GPIO driver to control the LEDs on the MSCC VCoreIII 'luton' SoC. Signed-off-by: Lars Povlsen <lars.povlsen@microchip.com>
2019-01-16mips: luton: DT: Enable use of serial gpioLars Povlsen
This enables the use of the MSCC serial GPIO driver, and add gpio-leds nodes to the 'luton' pcb090 and pcb091 DT. Signed-off-by: Lars Povlsen <lars.povlsen@microsemi.com>
2019-01-16mips: mscc_sgpio: Add DT bindings documentationLars Povlsen
This add device tree binding documentation for the MSCC serial GPIO driver. Signed-off-by: Lars Povlsen <lars.povlsen@microsemi.com> Acked-by: Linus Walleij <linus.walleij@linaro.org>
2019-01-16mips: mscc_sgpio: Add the MSCC serial GPIO device (SIO)Lars Povlsen
This add support for the the MSCC serial GPIO driver in MSCC VCoreIII-based SOCs. By using a serial interface, the SIO controller significantly extends the number of available GPIOs with a minimum number of additional pins on the device. The primary purpose of the SIO controller is to connect control signals from SFP modules and to act as an LED controller. This adds the base driver. Signed-off-by: Lars Povlsen <lars.povlsen@microchip.com>
2019-01-16mips: mscc: luton+ocelot: Remove board config options, do probingLars Povlsen
As we are moving to multi-dtb and board detection, remove static board config options, and introduce board probing instead. Luton: This add single-binary support for the two MSCC luton-based reference boards - pcb090 and pcb091. The SoC chip ID is used to determine the board type. Ocelot: This add single-binary support for the two MSCC ocelot-based reference boards - pcb120 and pcb123. The PHY ids on specific ports are used to determine the board type. Signed-off-by: Lars Povlsen <lars.povlsen@microchip.com>
2019-01-16mips: luton: DT: Add pcb090Lars Povlsen
This prepares individual device trees for MSCC luton-based reference boards - pcb090 and pcb091. Note: Even though the devices trees are quite common, they will differ significantly in coming patches. Signed-off-by: Lars Povlsen <lars.povlsen@microchip.com>
2019-01-16mips: mscc: Add generic GPIO control utility functionLars Povlsen
The GPIO control function can be used for controlling alternate functions associated with a GPIO. Signed-off-by: Lars Povlsen <lars.povlsen@microchip.com>
2019-01-16mips: mscc: Add generic PHY MIIM utility functionsLars Povlsen
The PHY MIIM utility functions can/will be used for board detection purposes. Signed-off-by: Lars Povlsen <lars.povlsen@microchip.com>
2019-01-14Prepare v2019.01Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-01-14mmc: fsl_esdhc: Avoid infinite loop in esdhc_send_cmd_common()Fabio Estevam
The following hang is observed on a Hummingboard 2 MicroSOM i2eX iMX6D - rev 1.3 with no eMMC populated on board: U-Boot SPL 2018.11+gf6206f8587 (Nov 16 2018 - 00:56:34 +0000) Trying to boot from MMC1 U-Boot 2018.11+gf6206f8587 (Nov 16 2018 - 00:56:34 +0000) CPU: Freescale i.MX6D rev1.5 996 MHz (running at 792 MHz) CPU: Extended Commercial temperature grade (-20C to 105C) at 33C Reset cause: POR Board: MX6 HummingBoard2 DRAM: 1 GiB MMC: FSL_SDHC: 0, FSL_SDHC: 1 Loading Environment from MMC... *** Warning - bad CRC, using default environment No panel detected: default to HDMI Display: HDMI (1024x768) In: serial Out: serial Err: serial ---> hangs which is caused by the following infinite loop inside esdhc_send_cmd_common() while (!(esdhc_read32(&regs->irqstat) & flags)) ; Instead of looping forever, provide an exit path so that a timeout error can be propagated in the case irqstat does not report any interrupts, which may happen when no eMMC is populated on board. Reported-by: Ricardo Salveti <rsalveti@rsalveti.net> Signed-off-by: Fabio Estevam <festevam@gmail.com> Tested-by: Peter Robinson <pbrobinson@gmail.com> Tested-by: Ricardo Salveti <rsalveti@rsalveti.net>
2019-01-14imx8mq_evk_defconfig: Move file system options to KconfigFabio Estevam
Chris Spencer reports that when enabling ext4 read support without also enabling write support the following error is seen: fs/fs.c:198:12: error: 'ext4_write_file' undeclared here (not in a function); did you mean 'ext4_read_file'? .write = ext4_write_file, ^~~~~~~~~~~~~~~ Fix this problem by moving these options to Kconfig. Reported-by: Chris Spencer <spencercw@gmail.com> Acked-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Fabio Estevam <festevam@gmail.com>
2019-01-14poplar: save environment at a different offsetAlex Elder
Change CONFIG_ENV_OFFSET for Poplar to be 1MB further into the eMMC than before. This puts it immediately prior to the space we are reserving offset 0x200000-0x400000 for UEFI to save its persistent data. Define CONFIG_ENV_SIZE as a product of env_mmc_nblks and the sector size, like CONFIG_ENV_OFFSET is. Signed-off-by: Alex Elder <elder@linaro.org> Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2019-01-11Merge branch 'master' of git://git.denx.de/u-boot-socfpgaTom Rini
2019-01-11Merge branch 'master' of git://git.denx.de/u-boot-usbTom Rini
2019-01-11Revert "fs: fat: assign rootdir sector when accessing root directory"Tom Rini
This particular commit is causing a regression on stih410-b2260 and other platforms when reading from FAT16. Noting that I had rebased the original fix from Thomas onto then-current master, there is also question from Akashi-san if the change is still needed after other FAT fixes that have gone in. This reverts commit a68b0e11ea774492713a65d9fd5bb525fcaefff3. Reported-by: Patrice Chotard <patrice.chotard@st.com> Cc: AKASHI Takahiro <takahiro.akashi@linaro.org> Cc: Thomas RIENOESSL <thomas.rienoessl@bachmann.info> Signed-off-by: Tom Rini <trini@konsulko.com>
2019-01-11Revert "dm: pinctrl: Prevent (re-)configuring pins when already done before ↵Lukasz Majewski
relocation" This reverts commit a7f4b4b344396590845e6552c82829ef68ef9f89. As reported by Alex Kiernan the above optimization introduces a regression in the below use case where: 1. Device has defined 'u-boot,dm-spl' property (@ eMMC DTS node) 2. The device downloads its MLO/SPL via UART (not eMMC - the eMMC pinmux pins are NOT probed/configured in MLO/SPL). 3. The loaded via UART MLO/SPL wants to load Linux from eMMC. In this case the DM core and pinctrl uclass checks 'u-boot,dm-spl' and don't configure pins (as it thinks that those were initialized in MLO/SPL). As we are very close to release - please revert this commit. Reported-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2019-01-11ARM: dts: socfpga: Add missing SDMMC resetTien Fong Chee
The SDMMC reset is missing from DT, so the reset manager cannot unreset the SDMMC. Add the missing DT reset entry. Signed-off-by: Tien Fong Chee <tien.fong.chee@intel.com>
2019-01-10dm: usb: gadget: Fix boot breakage on sunxi platformsJean-Jacques Hiblot
Fixes commit 013116243950 ("dm: usb: create a new UCLASS ID for USB gadget devices") The UCLASS_DRIVER for id UCLASS_USB_GADGET_GENERIC needs to be declared even for platforms that do not enable DM_USB_GADGET. Otherwise the driver for their usb peripheral controller fails to bind. Reported-by: Priit Laes <plaes@plaes.org> Reported-by: Jagan Teki <jagan@amarulasolutions.com> Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Tested-by: Priit Laes <plaes@plaes.org> Acked-by: Jagan Teki <jagan@openedev.com>
2019-01-10usb: Make compiling gadget support optionalJean-Jacques Hiblot
There is no need to compile and include this code if it is not used. CONFIG_USB_GADGET can be used for the purpose. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-01-10Kconfig: rename CONFIG_SPL_USB_GADGET_SUPPORT as CONFIG_SPL_USB_GADGETJean-Jacques Hiblot
The SPL option for USB gadget should be named after the option for u-boot (CONFIG_USB_GADGET) Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-01-10ARM: dts: define USB aliases for all omap5 platformsJean-Jacques Hiblot
This allows us to properly map the USB controller indexes Tested on dra76 evm, am572 evm Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-01-10dm: usb: udc: Use SEQ_ALIAS to index the USB gadget portsJean-Jacques Hiblot
dfu, fastbot and other usb gadget commands take the USB port index as a parameter. Currently this index is assigned in the order of the driver bindings. Changing this behavior using the SEQ_ALIAS feature. This option assign to the device a SEQ number based on its alias (if it exists) To use it we must set the DM_UC_FLAG_SEQ_ALIAS flag and follow the existing naming convention: use "usb" for the name of the gadget UCLASS_DRIVER (same as for the UCLASS_USB). If no alias is provided, then the index falls back to the order in which the bindings took place. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reported-by: Sam Protsenko <semen.protsenko@linaro.org> Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org> Tested-by: Sam Protsenko <semen.protsenko@linaro.org>
2019-01-10Merge branch 'master' of git://git.denx.de/u-boot-sunxiTom Rini
2019-01-10Merge tag 'u-boot-imx-20190110' of git://git.denx.de/u-boot-imxTom Rini
Fixes for 2019.01
2019-01-10mmc: sunxi: Fix mmc clocks for DM_MMCJagan Teki
Existing clock configure code has been followed based on the legacy MMC dt node definitions and it cannot work with recent dts(i) sync from Linux. So, add clock configure code for Allwinner platforms which support DM_MMC and eventually this will drop once CLK support is in Mainline. Fixes: 3c92cca3cda0 ("ARM: dts: sun4i: Update A10 dts(i) files from Linux-v4.18-rc3") Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> Tested-by: Priit Laes <plaes@plaes.org> # Gemei G9 A10 Tablet Tested-by: Marek Kraus <gamelasterv2@gmail.com> # A10-OLinuXino-Lime
2019-01-09Merge branch '2019-01-08-master-imports'Tom Rini
- stm32f7 GPIO fixes - SATA env fixes - More DM migration deadline warnings - Regression fix for non-DM MMC drivers - dma_alloc_coherent size fix on ARM.
2019-01-09imx8m: clock: Fix oscillator valuesFabio Estevam
OSC_27M_CLK should return 27MHz and OSC_32K_CLK should return 32768Hz to reflect the reality. This also keeps the values in sync with the Linux clock tree. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2019-01-09tools: imx8image: set dcd_skip to truePeng Fan
To B0[+] chips, dcd_skip needs to be true. For A0 chip, it needs to be false, however A0 chip is no longer being supported anymore. Considering we are moving code from imx-mkimage to uboot mkimage, to make sure we not introduce some surprise, we still keep dcd_skip code there. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-01-09imx8: cpu: correct infoPeng Fan
The CPU banner printed is as following: CPU: CPU: Freescale i.MX8QXP RevB A35 at 147228 MHz 1. Drop the CPU: 2. Change vendor from Freescale to NXP Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-01-09misc: imx8: scu: use platdata instead of priv dataPeng Fan
priv data has not been allocated when doing bind, so it is wrong to use dev_get_priv in bind call back. Let's switch to use platdata in the driver to fix the issue. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2019-01-09misc: imx: scu: avoid write null pointerPeng Fan
When boot_dev is true, fill boot device. However the original logic is when boot_dev is false, fill boot device, this will trigger data abort. Also fix sc_misc_get_control when using pointer val. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-01-09clk: imx8: fix build warningPeng Fan
When build clk driver in spl, met the warning: " drivers/clk/imx/clk-imx8.c:21:25: warning: ‘imx8_clk_names’ defined but not used [-Wunused-variable] static struct imx8_clks imx8_clk_names[] = { ^~~~~~~~~~~~~~ " Fix with wrapping the array with CONFIG_CMD_CLK. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-01-09MAINTAINERS: update NXP i.MX mail list addressPeng Fan
Update NXP i.MX mail list address Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2019-01-09board: tbs2910: Remove FIT support in defconfig to reduce u-boot sizeSoeren Moch
The current defconfig build generates a u-boot.imx file that is too large for the available space on a eMMC/SD card. Installing this file overwrites the u-boot environment. So disable the unused FIT support to reduce the size of the u-boot binary. Signed-off-by: Soeren Moch <smoch@web.de>
2019-01-09board: tbs2910: Add u-boot.imx size limit checkSoeren Moch
Check the size of the generated u-boot.imx file. Report an error if it would be too big and overwrite the u-boot environment. Signed-off-by: Soeren Moch <smoch@web.de>
2019-01-09imx: Add Makefile dependency for mkimage_fit_atf.shChris Spencer
The mkimage_fit_atf.sh SPL FIT generator script requires u-boot-nodtb.bin, but this was not enforced by the Makefile. This could cause the generator script to be executed before u-boot-nodtb.bin has been created. Signed-off-by: Chris Spencer <christopher.spencer@sea.co.uk> Cc: NXP i.MX U-Boot Team <uboot-imx@nxp.com>