summaryrefslogtreecommitdiffstats
path: root/drivers
Commit message (Collapse)AuthorAgeFilesLines
...
| * usb: host: dwc3-sti-glue: Fix ofnode_valid() parameterPatrice Chotard2020-08-131-1/+1
| | | | | | | | | | | | | | | | | | | | node varaible is used as iterator into ofnode_for_each_subnode() loop, when exiting of it, node is no more a valid ofnode. Use dwc3_node instead as parameter of ofnode_valid() Fixes: ac28e59a574d ("usb: Migrate to support live DT for some driver") Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Cc: Kever Yang <kever.yang@rock-chips.com>
* | soc: soc_ti_k3: Add device identification for J7200 SoCKishon Vijay Abraham I2020-08-111-0/+4
| | | | | | | | | | | | | | | | Add device identification for J7200 SoC Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com> Reviewed-by: Suman Anna <s-anna@ti.com>
* | ram: k3-j721e: Relax version checks for memory controllerLokesh Vutla2020-08-111-15/+1
| | | | | | | | | | | | | | | | k3-j721e ddr driver sanity checks for product id and version number. Version number gets changed for every minor update in the IP. So discard the version check and just sanity check for product id. Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
* | mmc: am654_sdhci: Use MMC_MODES_END value instead of hardcoded valueFaiz Abbas2020-08-111-1/+1
| | | | | | | | | | | | | | | | | | The hardcoded array size leads to array overflows with changes in speed modes enum in mmc core. Use MMC_MODES_END for otap_del_sel array declaration to fix this. Signed-off-by: Faiz Abbas <faiz_abbas@ti.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
* | watchdog: Add support for K3 RTI watchdogJan Kiszka2020-08-113-0/+131
|/ | | | | | | | | | | | | | This is based on the Linux kernel driver for the RTI watchdog. To actually reset the system on an AM65x, it requires firmware running on the R5 that accepts the NMI and issues the actual system reset via TISCI. Kind of an iTCO, except that this watchdog hardware has support for no-way-out, and only for that. On the J721E, reset works without extra firmware help when routing the RTI interrupt via the ESM. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
* led: led_cortina: Add CAxxx LED supportJway Lin2020-08-073-0/+307
| | | | | | | | | | | Add Cortina Access LED controller support for CAxxxx SOCs Signed-off-by: Jway Lin <jway.lin@cortina-access.com> Signed-off-by: Alex Nemirovsky <alex.nemirovsky@cortina-access.com> CC: Simon Glass <sjg@chromium.org> Add head file fixed link error and remove unused flashing function Reviewed-by: Simon Glass <sjg@chromium.org>
* Merge https://gitlab.denx.de/u-boot/custodians/u-boot-usbTom Rini2020-08-064-25/+24
|\ | | | | | | - XHCI updates to support MIPS better
| * usb: xhci: Add virt_to_phys() to support mapped platformsStefan Roese2020-08-053-16/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Some platforms, like MIPS Octeon, use mapped addresses (virtual address != physical address). On these platforms we need to make sure, that the local virtual addresses are converted to physical (DMA) addresses for the xHCI controller. This patch adds the missing virt_to_phys() calls, so that the correct addresses are used. Signed-off-by: Stefan Roese <sr@denx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Marek Vasut <marex@denx.de>
| * usb: usb-uclass.c: Drop le16_to_cpu() as values are already swappedStefan Roese2020-08-051-4/+4
| | | | | | | | | | | | | | | | | | | | | | These values are already swapped to CPU endianess, so swapping them again is a bug. Let's remove the swap here instead. Signed-off-by: Stefan Roese <sr@denx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Marek Vasut <marex@denx.de>
| * usb: xhci: xhci_mem_init: Use cpu_to_le64() and not xhci_writeq()Stefan Roese2020-08-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | xhci_writeq() makes the CPU->LE swapping only when addressing registers in the xHCI controller address range and not in the local memory (RAM). We need to use cpu_to_le64() here to ensure that the conversion is done correctly. Signed-off-by: Stefan Roese <sr@denx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Marek Vasut <marex@denx.de>
| * usb: xhci: Add missing endian conversions (cpu_to_leXX / leXX_to_cpu)Stefan Roese2020-08-051-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | While trying to use the U-Boot xHCI driver on the MIPS Octeon platform, which is big endian, I noticed that the driver is missing a few endian conversion calls. This patch adds these missing endian conversion calls. Signed-off-by: Stefan Roese <sr@denx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Marek Vasut <marex@denx.de>
* | blkcache: Extend blkcache_init to cover CONFIG_NEEDS_MANUAL_RELOCOvidiu Panait2020-08-061-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend manual relocation of block_cache list pointers to all platforms that enable CONFIG_NEEDS_MANUAL_RELOC. Remove m68k-specific checks and provide a single implementation that adds gd->reloc_off to the pre-relocation pointers. Acked-by: Angelo Dureghello <angelo.dureghello@timesys.com> Tested-by: Angelo Dureghello <angelo.dureghello@timesys.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Eric Nelson <eric@nelint.com> Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com> [trini: Add guard around DECLARE_GLOBAL_DATA_PTR to avoid size growth] Signed-off-by: Tom Rini <trini@konsulko.com>
* | drivers: serial: Make serial_initialize return intOvidiu Panait2020-08-062-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | serial_initialize is called only during the common init sequence, after relocation (in common/board_r.c). Because it has a void return value, it has to wrapped in initr_serial. In order to be able to get rid of this indirection, make serial_initialize return int. Remove extern from prototype in order to silence the following checkpatch warning: check: extern prototypes should be avoided in .h files Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
* | dm: blk: Use IS_ENABLED() instead of #ifdefs in blk_post_probeOvidiu Panait2020-08-061-4/+5
| | | | | | | | | | | | | | | | | | | | | | Use IS_ENABLED() instead of #ifdef in blk_post_probe function. No functional change intended. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com> [trini: Fix thinko and use CONFIG_HAVE_BLOCK_DEVICE in IS_ENABLED()] Signed-off-by: Tom Rini <trini@konsulko.com>
* | pinctrl: aspeed: Fix Kconfig entry indentationMichal Simek2020-08-041-7/+7
| | | | | | | | | | | | | | | | Fix Kconfig entry indentation for Aspeed ast2500 pin control driver. Fixes: 4f0e44e46615 ("aspeed: AST2500 Pinctrl Driver") Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* | net: dwc_eth_qos: add Kconfig option to select supported configurationPatrick Delaunay2020-08-042-6/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add configuration flag to select the supported dwc driver configuration: - CONFIG_DWC_ETH_QOS_TEGRA186 - CONFIG_DWC_ETH_QOS_IMX - CONFIG_DWC_ETH_QOS_STM32 See Linux driver ethernet/stmicro/stmmac and associated glue layers for other configuration examples. This patch removes the not-selected compatibles and lets the linker remove the unused functions to reduce the size of the driver. Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
* | psci: put psci_method in .data section if EFI_LOADER is not enabledYann Gautier2020-08-041-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the variable psci_method in .data section when EFI is not activated and the psci driver safely access it before relocation. Without this patch the variable is located in .bss section and the psci probe requested before relocation corrupts the device tree (probe is requested by board_f.c::print_resetinfo()). When EFI_LOADER is activated, this variable in already located in the .data.efi_runtime section by __efi_runtime_data. Signed-off-by: Yann Gautier <yann.gautier@st.com> Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
* | Fix corner case in bad block table handling.Doyle, Patrick2020-08-041-1/+1
|/ | | | | | | | | In the unlikely event that both blocks 10 and 11 are marked as bad (on a 32 bit machine), then the process of marking block 10 as bad stomps on cached entry for block 11. There are (of course) other examples. Signed-off-by: Patrick Doyle <pdoyle@irobot.com> Reviewed-by: Richard Weinberger <richard@nod.at>
* Merge tag 'u-boot-imx-20200804' of ↵Tom Rini2020-08-045-39/+119
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://gitlab.denx.de/u-boot/custodians/u-boot-imx For 2020.10 ----------- - fixes for Toradex board - fix warnings from previous PR - HAB: reset instead of panic after failure - new board: MYiR Tech MYS-6ULX - mx6cuboxi: use OF_PLATDATA - further changes for DM Travis: https://travis-ci.org/github/sbabic/u-boot-imx/builds/714513163
| * drivers: rename more drivers to match compatible stringWalter Lozano2020-08-022-4/+6
| | | | | | | | | | | | | | | | Continuing with the approach in commit <addf358bac1d2bd0> rename additional drivers to allow the OF_PLATDATA support. Signed-off-by: Walter Lozano <walter.lozano@collabora.com> Reviewed-by: Simon Glass <sjg@chromium.org>
| * mmc: fsl_esdhc_imx: add CD support when OF_PLATDATA is enabledWalter Lozano2020-08-021-1/+24
| | | | | | | | | | | | | | | | After enabling OF_PLATDATA support to both MMC and GPIO drivers add the support for card detection. Signed-off-by: Walter Lozano <walter.lozano@collabora.com> Reviewed-by: Simon Glass <sjg@chromium.org>
| * gpio: mxc_gpio: add OF_PLATDATA supportWalter Lozano2020-08-021-6/+21
| | | | | | | | | | | | | | | | Continuing with the OF_PLATADATA support for iMX6 to reduce SPL footprint, add it to mxc_gpio. Thanks to this, it will be possible to enable card detection on MMC driver. Signed-off-by: Walter Lozano <walter.lozano@collabora.com>
| * mmc: fsl_esdhc_imx: add OF_PLATDATA supportWalter Lozano2020-08-021-14/+53
| | | | | | | | | | | | | | | | | | | | In order to reduce the footprint of SPL by removing dtb and library overhead, add OF_PLATDATA support to fsl_esdhc_imx. This initial approach does not support card detection, which will be enabled after adding OF_PLATDATA support to GPIO. Signed-off-by: Walter Lozano <walter.lozano@collabora.com> Reviewed-by: Simon Glass <sjg@chromium.org>
| * mmc: fsl_esdhc_imx: rename driver name to match ll_entryWalter Lozano2020-08-021-1/+1
| | | | | | | | | | | | | | | | As discussed in commit <addf358bac1d2bd0> rename fsl_esdhc_imx driver to allow the OF_PLATDATA support. Signed-off-by: Walter Lozano <walter.lozano@collabora.com> Reviewed-by: Simon Glass <sjg@chromium.org>
| * imx8m: ddrphy_utils: Improve coding styleFabio Estevam2020-07-271-14/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently checkpatch is not happy about this file: total: 14 errors, 2 warnings, 7 checks, 359 lines checked Improve the coding style so that it can now report: total: 0 errors, 0 warnings, 6 checks, 360 lines checked Reported-by: Tom Rini <trini@konsulko.com> Signed-off-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
* | Merge tag 'fixes-for-2020.10-rc1' of ↵Tom Rini2020-08-041-4/+9
|\ \ | | | | | | | | | | | | | | | | | | https://gitlab.denx.de/u-boot/custodians/u-boot-video - Fix tbs2910 vidconsole environment - Fix ipuv3 framebuffer output on i.MX6Q/D
| * | video: ipuv3: fix framebuffer base address init with multiple IPUsAnatolij Gustschin2020-08-031-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 7812bbdc3732 ("video: Correctly handle multiple framebuffers") the vidconsole output is missing on the primary display on boards with two IPU units (all i.MX6Q/D based boards). The base address of the allocated framebuffer is not correctly programmed in the display controller. Fix it. Reported-by: Soeren Moch <smoch@web.de> Signed-off-by: Anatolij Gustschin <agust@denx.de> Tested-by: Soeren Moch <smoch@web.de>
* | | Merge https://gitlab.denx.de/u-boot/custodians/u-boot-riscvTom Rini2020-08-044-25/+193
|\ \ \ | | | | | | | | | | | | - add DM based reset driver for SiFive SoC's.
| * | | configs: reset: fu540: enable dm reset framework for SiFiveSagar Shrikant Kadam2020-08-042-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add necessary defconfig and Kconfig entries to enable SiFive SoC's reset driver so as to utilise U-Boot's reset framework. Signed-off-by: Sagar Shrikant Kadam <sagar.kadam@sifive.com> Reviewed-by: Pragnesh Patel <Pragnesh.patel@sifive.com> Reviewed-by: Bin Meng <bin.meng@windriver.com> Tested-by: Bin Meng <bin.meng@windriver.com>
| * | | sifive: reset: add DM based reset driver for SiFive SoC'sSagar Shrikant Kadam2020-08-042-15/+176
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PRCI module within SiFive SoC's has register with which we can reset the sub-systems within the SoC. The resets to DDR and ethernet sub systems within FU540-C000 SoC are active low, and are hold low by default on power-up. Currently these are directly asserted within prci driver via register read/write. With the DM based reset driver support here, we bind the reset driver with clock (prci) driver and assert the reset signals of both sub-system's appropriately. Signed-off-by: Sagar Shrikant Kadam <sagar.kadam@sifive.com> Reviewed-by: Pragnesh Patel <Pragnesh.patel@sifive.com> Reviewed-by: Bin Meng <bin.meng@windriver.com> Tested-by: Bin Meng <bin.meng@windriver.com>
| * | | fu540: prci: use common reset indexes defined in binding headerSagar Shrikant Kadam2020-08-041-10/+7
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Indexes of reset signals available in PRCI driver are also defined in include/dt-bindings/reset/sifive-fu540-prci.h. So use those instead of defining new ones again within the fu540-prci driver. Signed-off-by: Sagar Shrikant Kadam <sagar.kadam@sifive.com> Reviewed-by: Pragnesh Patel <pragnesh.patel@sifive.com> Reviewed-by: Bin Meng <bin.meng@windriver.com>
* | | Merge tag 'mips-pull-2020-08-03' of ↵Tom Rini2020-08-049-0/+955
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | https://gitlab.denx.de/u-boot/custodians/u-boot-mips - doc: fix qemu-mips build instructions - MIPS: add GPIO, CLK and SPI drivers for Octeon MIPS64
| * | | drivers: spi: Add SPI controller driver for OcteonSuneel Garapati2020-08-033-0/+622
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds support for SPI controllers found on Octeon II/III and Octeon TX TX2 SoC platforms. Signed-off-by: Aaron Williams <awilliams@marvell.com> Signed-off-by: Suneel Garapati <sgarapati@marvell.com> Signed-off-by: Stefan Roese <sr@denx.de> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Cc: Aaron Williams <awilliams@marvell.com> Cc: Chandrakala Chavva <cchavva@marvell.com> Cc: Jagan Teki <jagan@amarulasolutions.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
| * | | clk: clk_octeon: Add simple MIPS Octeon clock driverStefan Roese2020-08-033-0/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a simple clock driver for the Marvell Octeon MIPS SoC family. Its for IO clock rate passing via DT in some of the Octeon driver, like I2C. So that we don't need to use the non-mainline API octeon_get_io_clock(). Signed-off-by: Stefan Roese <sr@denx.de> Cc: Lukasz Majewski <lukma@denx.de>
| * | | gpio: octeon_gpio: Add GPIO controller driver for OcteonSuneel Garapati2020-08-033-0/+253
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for GPIO controllers found on Octeon II/III and Octeon TX TX2 SoC platforms. Signed-off-by: Aaron Williams <awilliams@marvell.com> Signed-off-by: Suneel Garapati <sgarapati@marvell.com> Signed-off-by: Stefan Roese <sr@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
* | | net: Drop duplicate include of dm.h in pcnet.cSimon Glass2020-08-031-1/+0
| | | | | | | | | | | | | | | | | | This file includes the header twice. Drop the second one. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | clk: Drop dm.h header file in clk-provider.hSimon Glass2020-08-033-6/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This header file should not be included in other header files. Remove it and use a forward declaration and un-inlining of dev_get_clk_ptr() instead. Fix up the kendryte header files to avoid build errors. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Sean Anderson <seanga2@gmail.com>
* | | usb: Drop dm.h header fileSimon Glass2020-08-033-36/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This header file should not be included in other header files. Remove it and use a forward declaration instead. Also move the inline function out into a C file. We should not include C code in headers. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | ufs: Drop dm.h header fileSimon Glass2020-08-033-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | This header file should not be included in other header files. Remove it and use a forward declaration instead. Also drop asm/io.h Signed-off-by: Simon Glass <sjg@chromium.org>
* | | nand: Drop dm.h header fileSimon Glass2020-08-032-2/+3
| | | | | | | | | | | | | | | | | | | | | This header file should not be included in other header files. Remove it and use a forward declaration instead. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | adc: Drop dm.h header fileSimon Glass2020-08-033-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | This header file should not be included in other header files. Remove it and use a forward declaration instead. Drop the common.h inclusion also. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | pci: Drop dm.h inclusion from header fileSimon Glass2020-08-034-2/+3
| | | | | | | | | | | | | | | | | | The layerscape header should not include dm.h so remove it. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | ti: am654: Drop duplicate dm.h inclusionSimon Glass2020-08-031-1/+0
| | | | | | | | | | | | | | | | | | We only need to include this header once. Drop the duplicate. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | spi: Drop duplicate dm.h inclusionSimon Glass2020-08-031-1/+0
| | | | | | | | | | | | | | | | | | We only need to include this header once. Drop the duplicate. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | mmc: Drop duplicate dm.h inclusionSimon Glass2020-08-031-1/+0
| | | | | | | | | | | | | | | | | | We only need to include this header once. Drop the duplicate. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | power: Tidy up inclusion of regulator_common.hSimon Glass2020-08-034-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | This file should not include common.h and dm.h so remove them. Also move the inclusion of this file to after the normal includes. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
* | | fs: fs-loader: Drop dm.h header fileSimon Glass2020-08-031-0/+1
| | | | | | | | | | | | | | | | | | | | | This header file should not be included in other header files. Remove it and use a forward declaration instead. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | mtd: spi-mem: Drop dm.h header fileSimon Glass2020-08-033-1/+9
| | | | | | | | | | | | | | | | | | | | | This header file should not be included in other header files. Remove it and use a forward declaration instead. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | mtd: spi-nor: Tidy up error handling / debug codeSimon Glass2020-08-033-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The -ENODEV error value in spi_nor_read_id() is incorrect since there clearly is a device - it just cannot be supported. Use -ENOMEDIUM instead which has the virtue of being less common. Fix the return value in spi_nor_scan(). Also there are a few printf() statements which should be debug() since they bloat the code with unused strings at present. Fix those while here. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | spi: Allow separate control of SPI_FLASH_TINY for SPL/TPLSimon Glass2020-08-031-1/+1
|/ / | | | | | | | | | | | | In some cases SPL needs to be able to erase but TPL just needs to read. Allow these to have separate settings for SPI_FLASH_TINY. Signed-off-by: Simon Glass <sjg@chromium.org>