summaryrefslogtreecommitdiff
path: root/drivers
Commit message (Collapse)AuthorAgeFilesLines
* spi: Kconfig: Mark LPC32XX_SSP as DEPRECATEDJagan Teki2019-06-131-0/+1
| | | | | | | | | | | | | Mark LPC32XX_SSP as DEPRECATED, this so the resulting build shows warning for deprecated configuration enabled and associated code will remove in v2019.07 release. Cc: Albert ARIBAUD <albert.aribaud@3adev.fr> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> Acked-by: Vladimir Zapolskiy <vz@mleia.com> Acked-by: Sylvain Lemieux <slemieux@tycoint.com> [trini: Switch to DEPRECATED] Signed-off-by: Tom Rini <trini@konsulko.com>
* spi: Kconfig: Mark SOFT_SPI as DEPRECATEDJagan Teki2019-06-131-0/+1
| | | | | | | | | | | Mark SOFT_SPI as DEPRECATED, this so the resulting build shows warning for deprecated configuration enabled and associated code will remove in v2019.07 release. Cc: Vasily Khoruzhick <anarsoul@gmail.com> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> [trini: Switch to DEPRECATED] Signed-off-by: Tom Rini <trini@konsulko.com>
* spi: Kconfig: Mark SH_SPI as DEPRECATEDJagan Teki2019-06-131-0/+1
| | | | | | | | | | | Mark SH_SPI as DEPRECATED, this so the resulting build shows warning for a deprecated configuration enabled and associated code will remove in v2019.07 release. Acked-by: Marek Vasut <marex@denx.de> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> [trini: Switch to DEPRECATED] Signed-off-by: Tom Rini <trini@konsulko.com>
* spi: Kconfig: Mark MXS_SPI has DEPRECATEDJagan Teki2019-06-131-0/+1
| | | | | | | | | | | | | Mark MXS_SPI as DEPRECATED, this so the resulting build shows warning for broken configuration enabled and associated code will remove in v2019.07 release. Cc: Marek Vasut <marex@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Michael Trimarchi <michael@amarulasolutions.com> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> [trini: Switch to DEPRECATED] Signed-off-by: Tom Rini <trini@konsulko.com>
* Merge branch 'master' of git://git.denx.de/u-boot-spiTom Rini2019-06-102-96/+193
|\ | | | | | | | | | | - mpc8xxx spi driver fixes (Mario) - mpc8xxx spi dm conversion (Mario, Jagan) - SPI DM Migration update (Jagan)
| * spi: mpc8xxx: Convert to DMJagan Teki2019-06-102-42/+112
| | | | | | | | | | | | | | | | Support DM in the MPC8xxx SPI driver, and remove the legacy SPI interface. Signed-off-by: Mario Six <mario.six@gdsys.cc> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Use get_timerMario Six2019-06-101-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The comment before the transmission loop in conjunction with the definition of SPI_TIMEOUT as 1000 implies that the loop is supposed to have a timeout value of 1000 ms. But since there is no mdelay(1) or similar in the loop body, the loop just runs 1000 times, without regard for the time elapsed. To correct this, use the standard get_timer functionality to properly time out the loop after 1000 ms. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Fix if checkMario Six2019-06-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Decreasing the bit length and increasing the write data pointer should be done when there are more than 32 bit of data, not 16 bit. This did not produce incorrect behavior, because the only time where the two checks produce different outcomes is the case of 16 < bitlen < 32, and in this case the subsequent transmission is the last one regardless, hence the additional bit length decrease and write data pointer increase has no effect anyway. Still, the correct check is the check for "bitlen > 32", so correct this behavior. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Re-order transfer setupMario Six2019-06-101-5/+5
| | | | | | | | | | | | | | | | | | | | | | Minize the time the adapter is disabled (via SPI_MODE_EN clearing/setting) to just the character length setting, and only set up the temporary data writing variable right before we need it, so there is a more clear distinction between setting up the SPI adapter, and setting up the data to be written. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Document LEN setting betterMario Six2019-06-101-11/+5
| | | | | | | | | | | | | | | | | | | | Instead of having a table right before the code implementing the length setting for documentation, have inline comments for the if branches actually implementing the length setting described table's entries (which is readable thanks to the set_char_len function). Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Rename variableMario Six2019-06-101-4/+4
| | | | | | | | | | | | | | | | | | The variable "char_size" holds the number of bits to be transferred in the current loop iteration. A better name would be "xfer_bitlen", which we rename this variable to. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Make code more readableMario Six2019-06-101-8/+19
| | | | | | | | | | | | | | | | | | | | | | | | Introduce the to_prescale_mod and set_char_len inline functions to make the code more readable. Note that the added "if (bitlen > 16)" check does not change the semantics of the current code, and hence only preserves the current error (this will be fixed in a later patch in the series). Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Reduce scope of loop variablesMario Six2019-06-101-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | The transmission loop starts with setting some variables, which are only used inside the loop. Reduce the scope to the loop to make the declaration and initialization of these variables coincide. In the case of char_size this also always initializes the variable immediately with the final value actually used in the loop (instead of the placeholder value 32). Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Simplify logic a bitMario Six2019-06-101-10/+13
| | | | | | | | | | | | | | | | | | We do nothing in the loop if the "not empty" event was not detected. To simplify the logic, check if this is the case, and skip the execution of the loop early to reduce the nesting level and flag checking. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Get rid of is_readMario Six2019-06-101-5/+7
| | | | | | | | | | | | | | | | | | Get rid of the is_read variable, and just keep the state of the "not empty" and "not full" events in two boolean variables within the loop body. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Simplify ifMario Six2019-06-101-7/+5
| | | | | | | | | | | | | | | | Instead of having a nested if block, just have two branches within the overarching if block to eliminate one nesting level. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Use IO accessorsMario Six2019-06-101-19/+19
| | | | | | | | | | | | | | | | | | | | Accesses to the register map are currently done by directly reading and writing the structure. Switch to the appropriate IO accessors instead. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Replace defines with enumsMario Six2019-06-101-7/+19
| | | | | | | | | | | | | | | | Replace pre-processor defines with proper enums, and use the BIT macro where applicable. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Fix function names in stringsMario Six2019-06-101-4/+5
| | | | | | | | | | | | | | | | Replace the function name with a "%s" format string and the __func__ variable in debug statements (as proposed by checkpatch). Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Fix space after castMario Six2019-06-101-3/+3
| | | | | | | | | | | | | | Fix all "superfluous space after case" style errors. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Rename camel-case variablesMario Six2019-06-101-11/+11
| | | | | | | | | | | | | | | | | | | | There are three variables that have camel-case names, which is not the preferred naming style. Give those variables more compliant names instead. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Fix commentsMario Six2019-06-101-8/+14
| | | | | | | | | | | | | | | | | | There are some comments on the same line as the code they document. Put comments above the code lines they document, so the line length is not unnecessarily increased. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
| * spi: mpc8xxx: Use short type namesMario Six2019-06-101-7/+5
| | | | | | | | | | | | | | | | The function signatures in the driver are quite long as is. Use short type names (uint etc.) to make them more readable. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Jagan Teki <jagan@amarulasolutions.com>
* | video: meson: hdmi-supply regulator should be optionalMaxime Jourdan2019-06-051-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | Some boards don't have such a regulator, and don't need one to enable HDMI display. Make it optional, fixing hdmi display for those boards. Also surround the regulator code with a config check on DM_REGULATOR. Reported-by: Mohammad Rasim <mohammad.rasim96@gmail.com> Signed-off-by: Maxime Jourdan <mjourdan@baylibre.com> Reviewed-by: Neil Armstrong <narmstrong@baylibre.com> Tested-by: Mohammad Rasim <mohammad.rasim96@gmail.com>
* | video: mxsfb: add DM_VIDEO supportIgor Opaniuk2019-06-041-9/+136
| | | | | | | | | | | | | | | | Extend the driver to build with DM_VIDEO enabled. DTS files must additionally include 'u-boot,dm-pre-reloc' property in soc and child nodes to enable driver binding to mxsfb device. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
* | video: mxsfb: refactor video_hw_init()Igor Opaniuk2019-06-041-27/+41
| | | | | | | | | | | | | | | | | | | | | | | | Refactor video_hw_init() function, and introduce an independent function for the common procedure of initialization. Currently video_hw_init() is only in charge of parsing configuration from env("videomode") and filling struct GraphicPanel, and new mxs_probe_common() does hw specific initialization (invocation of mxs_lcd_init() etc.) Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
* | video: mxsfb: reorder includesIgor Opaniuk2019-06-041-4/+3
| | | | | | | | | | | | | | Follow alphabetical order of includes, which simplifies detecting duplicate includes etc. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
* | video: mxsfb: change mxs_lcd_init signatureIgor Opaniuk2019-06-041-5/+4
| | | | | | | | | | | | | | | | Provide directly framebuffer address instead of pointer to GraphicDevice struct, which will let to re-use this function in DM_VIDEO configurations. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
* | Merge tag 'efi-2019-07-rc4' of git://git.denx.de/u-boot-efiTom Rini2019-06-021-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull request for UEFI sub-system for v2019.07-rc4 Corrections for boottime services for protocols and for the SetTime() service are provided. Error messages for the 'setenv -e' and 'bootefi bootmgr' commands are added.
| * | rtc: export rtc_month_days()Heinrich Schuchardt2019-05-311-1/+1
| | | | | | | | | | | | | | | | | | Export function rtc_month_days() for reuse in the UEFI subsystem. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
* | | dm: net: macb: Implement link speed change callbackBin Meng2019-06-011-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present the link speed change callback is a nop. According to macb device tree bindings, an optional "tx_clk" is used to clock the ethernet controller's TX_CLK under different link speed. In 10/100 MII mode, transmit logic must be clocked from a free running clock generated by the external PHY. In gigabit GMII mode, the controller, not the external PHY, must generate the 125 MHz transmit clock towards the PHY. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Tested-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* | | dm: net: macb: Update macb_linkspd_cb() signatureBin Meng2019-06-011-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | This updates DM version macb_linkspd_cb() signature for future expansion, eg: adding an implementation for link speed changes. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* | | clk: sifive: Add clock driver for GEMGXL MGMTBin Meng2019-06-013-0/+69
|/ / | | | | | | | | | | | | | | | | | | This adds a clock driver to support the GEMGXL management IP block found in FU540 SoCs to control GEM TX clock operation mode for 10/100/1000 Mbps. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Tested-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de>
* | Merge tag 'rockchip-for-v2019.07-rc3' of git://git.denx.de/u-boot-rockchipTom Rini2019-05-311-0/+2
|\ \ | | | | | | | | | | | | | | | | | | - some fix for rk3399-puma; - rockchip script make_fit_atf.py cleanup - Enable TPL for rk3399 orangepi and nanopi4; - add support for rk3399 boards: Nanopi NEO4, Rockpro64, Rock PI 4;
| * | rockchip: clk: rk3399: allow requests for all UART clocksChristoph Muellner2019-05-301-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds the rate for UART1 and UART3 the same way as already implemented for UART0 and UART2. This is required for boards, which have their console output on these UARTs. Signed-off-by: Christoph Muellner <christoph.muellner@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
* | | clk: meson-g12a: Add PCIE PLL supportNeil Armstrong2019-05-311-0/+103
|/ / | | | | | | | | | | | | The G12A PCIE PLL clock was introduced in Linux 5.2-rc1, and is needed for USB to operate, add basic support for it and associated gates. Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
* | Merge branch 'master' of git://git.denx.de/u-boot-tegraTom Rini2019-05-296-0/+518
|\ \ | | | | | | | | | - Audio support
| * | sound: tegra: Add a sound driverSimon Glass2019-05-242-1/+101
| | | | | | | | | | | | | | | | | | | | | | | | Add a sound driver for tegra devices. This connects the audio hub, I2S controller and audio codec to allow sound output. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * | tegra: sound: Add an I2S driverSimon Glass2019-05-243-1/+153
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a driver which supports transmitting digital sound to an audio codec. This uses fixed parameters as a device-tree binding is not currently defined. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Jon Hunter <jonathanh@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
| * | tegra: sound: Add an audio hub driverSimon Glass2019-05-243-0/+266
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add a driver for the audio hub. This is modelled as a misc device which supports writing audio data from I2S. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Jon Hunter <jonathanh@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
* | | dm: arm: bcmstb: Enable driver model MMC supportThomas Fitzsimmons2019-05-281-18/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For bcm7445 and bcm7260, this patch enables CONFIG_DM_MMC and updates the bcmstb SDHCI driver to use the new driver model. This allows removal of SDHCI configuration handling from bcmstb.c, and eliminates a board removal compile warning. Signed-off-by: Thomas Fitzsimmons <fitzsim@fitzsim.org> Reviewed-by: Stefan Roese <sr@denx.de>
* | | Merge branch 'master' of git://git.denx.de/u-boot-shTom Rini2019-05-265-13/+596
|\ \ \ | | | | | | | | | | | | | | | | | | | | - Gen3 PCIe driver + enablement on Salvator-X platforms. - Gen3 recovery SPL used to reload ATF/OpTee/U-Boot instead of minimon. - SDHI HS400 fixes ported from latest BSP and datasheet.
| * | | mmc: tmio: sdhi: HS400 manual adjustmentMarek Vasut2019-05-212-3/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since Gen3 SDHI has an internal DS signal AC-spec violation in HS400 mode, CRC-error may occur in read command in HS400 mode. This phoenomenon occurs at low/high temperature. To fix this, after completion of HS400 tuning, enable manual calibration. However, Gen3 M3 Ver.1.2 or earlier and H3 1.x does not support HS400. These SoC forcibly use HS200 mode by SoC attribute. The DT adjustment of the tuning parameters is not supported until the DT property names become clear. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Adapted from a patch by Takeshi Saito <takeshi.saito.xv@renesas.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> Cc: Peng Fan <peng.fan@nxp.com>
| * | | mmc: tmio: sdhi: Minor macro cleanupMarek Vasut2019-05-211-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean up the whitespaces in macros, no functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> Cc: Peng Fan <peng.fan@nxp.com>
| * | | pci: renesas: Add RCar Gen3 PCIe controller driverMarek Vasut2019-05-213-0/+420
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add driver for the Renesas RCar PCIe controller present on Gen3 SoCs. The PCIe on Gen3 is used both to connect external PCIe peripherals. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
* | | | Merge branch 'master' of git://git.denx.de/u-boot-socfpgaTom Rini2019-05-261-3/+2
|\ \ \ \ | | | | | | | | | | | | | | | - SoCFPGA PL310 cleanup + A10 fix, A10 DT cleanup, DW GPIO fix.
| * | | | gpio: dwapb_gpio: fix broken dev->nodeSimon Goldschmidt2019-05-241-3/+2
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 1b898ffc040b ("gpio: dwapb_gpio: convert to livetree") introduced a bug in that dev->node of the gpio chip was accidentally set to the of_node of its bank subnode. What it meant to do was assign subdev->node, not dev->node. While this doesn't affect too many use cases, iterating over the gpio chip's properties doesn't work any more after that, so fix this. Fixes: commit 1b898ffc040b ("gpio: dwapb_gpio: convert to livetree") Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
* | | | configs: Migrate CONFIG_FMAN_ENET and some related options to KconfigTom Rini2019-05-263-1/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the main symbol for Freescale Fman Ethernet controller option to Kconfig. Also migrate the CONFIG_SYS_QE_FMAN_FW_IN_xxx macros and rename the SPIFLASH one to follow the same format as all of the others. To do this fully we need to migrate CONFIG_QC, do so. Signed-off-by: Tom Rini <trini@konsulko.com>
* | | | Merge tag 'u-boot-stm32-20190523' of https://github.com/pchotard/u-bootTom Rini2019-05-2413-39/+3814
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add various STM32MP1 fixes for serial, env, clk, board, i2c ... - Add STM32MP1 DDR driver update: These update introduce the DDR interactive mode described in: https://wiki.st.com/stm32mpu/index.php/U-Boot_SPL:_DDR_interactive_mode This mode is used by the CubeMX: DDR tuning tool. https://wiki.st.com/stm32mpu/index.php/STM32CubeMX The DDR interactive mode is NOT activated by default because it increase the SPL size and slow down the boot time (200ms wait added).
| * | | | stm32mp1: ram: add tuning in DDR interactive modePatrick Delaunay2019-05-236-1/+1414
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add command tuning for DDR interactive mode, used during board bring-up or with CubeMX DDR tools to execute software tuning for the DDR configuration: - software read DQS Gating (replace the built-in one) - Bit de-skew - Eye Training or DQS training Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>