1. 07 Dec, 2023 1 commit
    • Arnd Bergmann's avatar
      Merge tag 'imx-fixes-6.7' of... · 7c9bb190
      Arnd Bergmann authored
      Merge tag 'imx-fixes-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/fixes
      
      i.MX fixes for 6.7:
      
      - A MAINTAINERS update to reinstate freescale ARM64 DT directory in i.MX
        entry.
      - A series from Alexander Stein to fix #pwm-cells for imx8-ss.
      - A series from Haibo Chen to fix GPIO node name for i.MX93 and
        i.MX8ULP.
      - Add parkmode-disable-ss-quirk for DWC3 on i.MX8MP and i.MX8MQ to fix
        an issue that the controller may hang when processing transactions
        under heavy USB traffic from multiple endpoints.
      - Fix mediamix block power on/off for i.MX93 by correcting the power
        domain clock to be 'nic_media'.
      - A couple of Ethernet PHY clock regression fixes for imx6ul-pico and
        imx6q-skov board.
      - Fix edma3 power domain for i.MX8QM to fix a panic during startup
        process.
      
      * tag 'imx-fixes-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
        ARM: dts: imx28-xea: Pass the 'model' property
        ARM: dts: imx7: Declare timers compatible with fsl,imx6dl-gpt
        MAINTAINERS: reinstate freescale ARM64 DT directory in i.MX entry
        arm64: dts: imx8-apalis: set wifi regulator to always-on
        ARM: imx: Check return value of devm_kasprintf in imx_mmdc_perf_init
        arm64: dts: imx8ulp: update gpio node name to align with register address
        arm64: dts: imx93: update gpio node name to align with register address
        arm64: dts: imx93: correct mediamix power
        arm64: dts: imx8qm: Add imx8qm's own pm to avoid panic during startup
        arm64: dts: freescale: imx8-ss-dma: Fix #pwm-cells
        arm64: dts: freescale: imx8-ss-lsio: Fix #pwm-cells
        dt-bindings: pwm: imx-pwm: Unify #pwm-cells for all compatibles
        ARM: dts: imx6ul-pico: Describe the Ethernet PHY clock
        arm64: dts: imx8mp: imx8mq: Add parkmode-disable-ss-quirk on DWC3
        ARM: dts: imx6q: skov: fix ethernet clock regression
        arm64: dt: imx93: tqma9352-mba93xxla: Fix LPUART2 pad config
      
      Link: https://lore.kernel.org/r/20231207005202.GF270430@dragonSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      7c9bb190
  2. 06 Dec, 2023 18 commits
  3. 05 Dec, 2023 3 commits
    • Alexander Stein's avatar
      dt-bindings: pwm: imx-pwm: Unify #pwm-cells for all compatibles · 4c6f19ab
      Alexander Stein authored
      Use #pwm-cells for all i.MX variants. Only fsl,imx1-pwm does not support
      inverted PWM output. Keep it the same for consistency.
      Signed-off-by: default avatarAlexander Stein <alexander.stein@ew.tq-group.com>
      Reviewed-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      Acked-by: default avatarConor Dooley <conor.dooley@microchip.com>
      Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
      4c6f19ab
    • Fabio Estevam's avatar
      ARM: dts: imx6ul-pico: Describe the Ethernet PHY clock · d951f8f5
      Fabio Estevam authored
      Since commit c7e73b50 ("ARM: imx: mach-imx6ul: remove 14x14 EVK
      specific PHY fixup")thet Ethernet PHY is no longer configured via code
      in board file.
      
      This caused Ethernet to stop working.
      
      Fix this problem by describing the clocks and clock-names to the
      Ethernet PHY node so that the KSZ8081 chip can be clocked correctly.
      
      Fixes: c7e73b50 ("ARM: imx: mach-imx6ul: remove 14x14 EVK specific PHY fixup")
      Signed-off-by: default avatarFabio Estevam <festevam@denx.de>
      Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
      d951f8f5
    • Nathan Rossi's avatar
      arm64: dts: imx8mp: imx8mq: Add parkmode-disable-ss-quirk on DWC3 · 209043cf
      Nathan Rossi authored
      The i.MX8MP and i.MX8MQ devices both use the same DWC3 controller and
      are both affected by a known issue with the controller due to specific
      behaviour when park mode is enabled in SuperSpeed host mode operation.
      
      Under heavy USB traffic from multiple endpoints the controller will
      sometimes incorrectly process transactions such that some transactions
      are lost, or the controller may hang when processing transactions. When
      the controller hangs it does not recover.
      
      This issue is documented partially within the linux-imx vendor kernel
      which references a Synopsys STAR number 9001415732 in commits [1] and
      additional details in [2]. Those commits provide some additional
      controller internal implementation specifics around the incorrect
      behaviour of the SuperSpeed host controller operation when park mode is
      enabled.
      
      The summary of this issue is that the host controller can incorrectly
      enter/exit park mode such that part of the controller is in a state
      which behaves as if in park mode even though it is not. In this state
      the controller incorrectly calculates the number of TRBs available which
      results in incorrect access of the internal caches causing the overwrite
      of pending requests in the cache which should have been processed but
      are ignored. This can cause the controller to drop the requests or hang
      waiting for the pending state of the dropped requests.
      
      The workaround for this issue is to disable park mode for SuperSpeed
      operation of the controller through the GUCTL1[17] bit. This is already
      available as a quirk for the DWC3 controller and can be enabled via the
      'snps,parkmode-disable-ss-quirk' device tree property.
      
      It is possible to replicate this failure on an i.MX8MP EVK with a USB
      Hub connecting 4 SuperSpeed USB flash drives. Performing continuous
      small read operations (dd if=/dev/sd... of=/dev/null bs=16) on the block
      devices will result in device errors initially and will eventually
      result in the controller hanging.
      
        [13240.896936] xhci-hcd xhci-hcd.0.auto: WARN Event TRB for slot 4 ep 2 with no TDs queued?
        [13240.990708] usb 2-1.3: reset SuperSpeed USB device number 5 using xhci-hcd
        [13241.015582] sd 2:0:0:0: [sdc] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x07 driverbyte=DRIVER_OK cmd_age=0s
        [13241.025198] sd 2:0:0:0: [sdc] tag#0 CDB: opcode=0x28 28 00 00 00 03 e0 00 01 00 00
        [13241.032949] I/O error, dev sdc, sector 992 op 0x0:(READ) flags 0x80700 phys_seg 25 prio class 2
        [13272.150710] usb 2-1.2: reset SuperSpeed USB device number 4 using xhci-hcd
        [13272.175469] sd 1:0:0:0: [sdb] tag#0 UNKNOWN(0x2003) Result: hostbyte=0x03 driverbyte=DRIVER_OK cmd_age=31s
        [13272.185365] sd 1:0:0:0: [sdb] tag#0 CDB: opcode=0x28 28 00 00 00 03 e0 00 01 00 00
        [13272.193385] I/O error, dev sdb, sector 992 op 0x0:(READ) flags 0x80700 phys_seg 18 prio class 2
        [13434.846556] xhci-hcd xhci-hcd.0.auto: xHCI host not responding to stop endpoint command
        [13434.854592] xhci-hcd xhci-hcd.0.auto: xHCI host controller not responding, assume dead
        [13434.862553] xhci-hcd xhci-hcd.0.auto: HC died; cleaning up
      
      [1] https://github.com/nxp-imx/linux-imx/commit/97a5349d936b08cf301730b59e4e8855283f815c
      [2] https://github.com/nxp-imx/linux-imx/commit/b4b5cbc5a12d7c3b920d1d7cba0ada3379e4e42b
      
      Fixes: fb8587a2 ("arm64: dtsi: imx8mp: add usb nodes")
      Fixes: ad37549c ("arm64: dts: imx8mq: add USB nodes")
      Signed-off-by: default avatarNathan Rossi <nathan.rossi@digi.com>
      Reviewed-by: default avatarFabio Estevam <festevam@gmail.com>
      Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
      209043cf
  4. 04 Dec, 2023 2 commits
  5. 29 Nov, 2023 15 commits
  6. 27 Nov, 2023 1 commit