Skip to content
Snippets Groups Projects
  1. Dec 12, 2023
    • Tom Rini's avatar
      Merge tag 'u-boot-imx-20231212' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx · 20d04643
      Tom Rini authored
      - Fix emmc detection on colibri_imx7
      - Fix DDR configuration on tqma6 to improve Ethernet performance
      - Fix aliases and chosen nodes indentation on imx7s-warp
      - Convert pico-imx6ul to DM_SERIAL
      - Convert pico-pi-imx7d to watchdog driver model to fix 'reset' command
      - Select CONFIG_NET_RANDOM_ETHADDR on imx8mp_evk to fix networking on
        older boards
      - Add USBH_EN gpio hog to fix USB host interface not working on some
        Apalis Toradex carrier boards with Apalis iMX8 SoM
      - Add PCI fixup for GW73xx-F+
      - Fix broken EEPROM read on imx8mn-var-som
      20d04643
    • Marcel Ziswiler's avatar
      board: colibri_imx7: fix emmc detection · 29e31c54
      Marcel Ziswiler authored and Tom Rini's avatar Tom Rini committed
      
      Later versions of Colibri iMX7D V1.1B modules use a "new" SoC fusing. The
      difference lies in whether we enable the boot ROM to use the eMMC reset
      signal. Depending on the SoC fuse, the boot ROM configures this pin as a
      GPIO output to drive the reset signal. Our eMMC vs NAND detection
      currently only sets that signal to a GPIO without explicitly setting any
      direction. Previously, by default, it was set as an input. As the boot ROM
      now configures it as an output, we receive a value of zero instead of one,
      indicating the absence of the pull-up on eMMC modules.
      
      To fix this, set the SION bit, allowing the reading back of the value
      even if it is configured as an output by the boot ROM. It's important to
      note that with the new SoC fusing, we now read back what the boot ROM
      drives rather than the real value caused by the pull-up resistor. However,
      if it were ever driven low, the eMMC would permanently be reset.
      
      In addition, remove hard-coded variant in the eMMC build case as since the
      commit 0c39564d ("toradex: colibri_imx7: Enable nand/emmc detection
      and set boot variant") will anyways always get overridden by the detection
      routing in board code.
      
      Fixes: 0c39564d ("toradex: colibri_imx7: Enable nand/emmc detection and set boot variant")
      Signed-off-by: default avatarMarcel Ziswiler <marcel.ziswiler@toradex.com>
      Signed-off-by: default avatarHiago De Franco <hiago.franco@toradex.com>
      29e31c54
    • Miquel Raynal's avatar
      tqma6: Fix DDR configuration · 49a3e0b9
      Miquel Raynal authored and Tom Rini's avatar Tom Rini committed
      Initially investigating a Linux network issue causing a lot of drop and
      poor network performances on a custom system based on a TQMA6A module
      (based on an iMX6Q), [1st link below].
      
      I eventually correlated my observations with a contention at the NIC
      level when in concurrency with the graphics pipeline. Troubleshooting
      this in the kernel lead to disabling DMA bursts accesses made by the IPU
      in order to avoid triggering the QoS at the interconnect level, reducing
      from 50 to 10% the drop rate on eth0, [2nd link below]. The solution
      worked on my setup but not on others, which still suffered from
      abnormally high drop rates even with this "fix".
      
      After looking a while into TQ Systems BSP I figured out a number of
      differences in recent U-Boot out-of-tree patches they had in their
      repository [3rd link]. Parsing the differences one after the other lead
      me to this final solution.
      
      The reset pad of the DDR controller was apparently misconfigured, Bit
      18-19 picturing the "DDR select field". The current value b11 is
      reserved. The only defined value as of version 6 of the iMX6Q manual was
      b00 "DDR3 and LPDDR2 mode". In practice no register difference has been
      spotted after changing this configuration but all issues tracked thus
      far just vanished. All previous fixes have been proven irrelevant. Just
      clearing this field solved all our network issues and the drop rate as
      measured by iperf3 felt back to 0%.
      
      Link: https://lore.kernel.org/netdev/20231012193410.3d1812cf@xps-13/
      Link: https://lists.freedesktop.org/archives/dri-devel/2023-October/428251.html
      Link: https://github.com/tq-systems/u-boot-tqmaxx/commit/15eb6abbefbf6916c28467b85485911dad3da6bc
      
      
      Signed-off-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
      Reviewed-by: default avatarFabio Estevam <festevam@gmail.com>
      49a3e0b9
    • Fabio Estevam's avatar
      imx7s-warp-u-boot: Fix aliases and chosen nodes indentation · 5e13f5db
      Fabio Estevam authored and Tom Rini's avatar Tom Rini committed
      
      The aliases and chosen nodes are currently indented using spaces.
      
      Fix them to use the standard tab indentation.
      
      Signed-off-by: default avatarFabio Estevam <festevam@denx.de>
      5e13f5db
    • Fabio Estevam's avatar
      pico-pi-imx6ul: Connvert to DM_SERIAL · 04b53f12
      Fabio Estevam authored and Tom Rini's avatar Tom Rini committed
      
      The conversion to DM_SERIAL is mandatory, so select this option.
      
      Signed-off-by: default avatarFabio Estevam <festevam@denx.de>
      04b53f12
    • Fabio Estevam's avatar
      pico-pi-imx7d: Convert to watchdog driver model · 43bf6a69
      Fabio Estevam authored and Tom Rini's avatar Tom Rini committed
      
      Commit 68dcbdd5 ("ARM: imx: Add weak default reset_cpu()") caused
      the 'reset' command in U-Boot to not cause a board reset.
      
      Fix it by switching to the watchdog driver model via sysreset, which
      is the preferred method for implementing the watchdog reset
      
      Signed-off-by: default avatarFabio Estevam <festevam@denx.de>
      43bf6a69
    • Fabio Estevam's avatar
      imx8mp_evk: Select CONFIG_NET_RANDOM_ETHADDR · e0dfb341
      Fabio Estevam authored and Tom Rini's avatar Tom Rini committed
      
      On an early revision of the imx8mp-evk that I have access to,
      the MAC addresses fuses are not programmed, causing failure to bring
      the Ethernet interfaces.
      
      Fix this problema by selecting CONFIG_NET_RANDOM_ETHADDR so that
      random MAC addresses are assigned and the Ethernet ports become
      functional out of the box.
      
      Signed-off-by: default avatarFabio Estevam <festevam@denx.de>
      e0dfb341
    • Andrejs Cainikovs's avatar
      apalis-imx8: add USBH_EN gpio hog · 32c9dfcc
      Andrejs Cainikovs authored and Tom Rini's avatar Tom Rini committed
      
      USB host interface is not working on some Apalis Toradex carrier
      boards with Apalis iMX8 SoM. This is due to USBH_EN pin, which
      powers USB peripherals, having a strong pull-down on some boards,
      and a weak pull-down on the others. This USBH_EN pin is left
      unconfigured, which means it is in its default state at cold boot:
      input with a strong pull-up. As a result, carrier boards with a
      weak pull-down have this signal high enough to trigger power
      delivery to USB peripherals, and opposite - boards with strong
      pull-down on USBH_EN have this signal below the threshold needed
      to trigger USB power delivery.
      This change configures the USBH_EN pin as gpio hog, fixing this
      issue for all Apalis carrier boards regardless of pull-down
      resistor value.
      
      Also, update apalis-imx8_defconfig via savedefconfig.
      
      Signed-off-by: default avatarAndrejs Cainikovs <andrejs.cainikovs@toradex.com>
      Reviewed-by: default avatarFabio Estevam <festevam@gmail.com>
      32c9dfcc
    • Tim Harvey's avatar
      board: gateworks: venice: add fixup for GW73xx-F+ · ad3a4f91
      Tim Harvey authored
      
      GW73xx-F board revision switched back to the original PCIe switch due to
      part availability.
      
      Signed-off-by: default avatarTim Harvey <tharvey@gateworks.com>
      Reviewed-by: default avatarFabio Estevam <festevam@gmail.com>
      ad3a4f91
    • Hugo Villeneuve's avatar
      arm: dts: imx8mn-var-som: Fix broken EEPROM read · 3d91bc90
      Hugo Villeneuve authored
      
      On branch WIP/17Oct2023, the EEPROM can no longer be read:
      
          U-Boot 2023.10-latest (Oct 17 2023 - 15:53:43 -0400)
          CPU:   Freescale i.MX8MNano Quad rev1.0 at 1200 MHz
          Reset cause: POR
          Model: Variscite VAR-SOM-MX8MN Symphony evaluation board
          var_read_som_eeprom: uclass_get_device_by_of_offset() failed: -19
          initcall failed at call 000000004022207c (err=-19)
      
      Convert EEPROM-related properties to bootph-all so that the EEPROM can
      also be read outside of SPL.
      
      Fixes: 9e644284 ("dm: core: Report bootph-pre-ram/sram node as pre-reloc after relocation")
      Signed-off-by: default avatarHugo Villeneuve <hvilleneuve@dimonoff.com>
      Reviewed-by: default avatarFabio Estevam <festevam@gmail.com>
      3d91bc90
  2. Dec 09, 2023
  3. Dec 07, 2023
  4. Dec 06, 2023
  5. Dec 05, 2023
Loading