]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
Merge patch series "ufs-exynos stability fixes for gs101"
authorMartin K. Petersen <martin.petersen@oracle.com>
Thu, 3 Apr 2025 13:58:05 +0000 (09:58 -0400)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 3 Apr 2025 13:58:05 +0000 (09:58 -0400)
Peter Griffin <peter.griffin@linaro.org> says:

Hi folks,

This series fixes several stability issues with the upstream ufs-exynos
driver, specifically for the gs101 SoC found in Pixel 6.

The main fix is regarding the IO cache coherency setting and ensuring
that it is correctly applied depending on if the dma-coherent property
is specified in device tree. This fixes the UFS stability issues on gs101
and I would imagine will also fix issues on exynosauto platform that
seems to have similar iocc shareability bits.

Additionally the phy reference counting is fixed which allows module
load/unload to work reliably and keeps the phy state machine in sync
with the controller glue driver.

regards,

Peter

Link: https://lore.kernel.org/r/20250319-exynos-ufs-stability-fixes-v2-0-96722cc2ba1b@linaro.org
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
1  2 
drivers/ufs/host/ufs-exynos.c
drivers/ufs/host/ufs-exynos.h

Simple merge
index aac5172761899a5dd8ad98f9ee34b1671dd27880,3c6fe5132190abcd4b31186a13142a44ba0dce7b..abe7e472759e94fef353e9a97bc9b55f6a0324c1
@@@ -188,9 -189,10 +189,10 @@@ struct exynos_ufs_drv_data 
        int (*pre_pwr_change)(struct exynos_ufs *ufs,
                                struct ufs_pa_layer_attr *pwr);
        int (*post_pwr_change)(struct exynos_ufs *ufs,
 -                              struct ufs_pa_layer_attr *pwr);
 +                             const struct ufs_pa_layer_attr *pwr);
        int (*pre_hce_enable)(struct exynos_ufs *ufs);
        int (*post_hce_enable)(struct exynos_ufs *ufs);
+       int (*suspend)(struct exynos_ufs *ufs);
  };
  
  struct ufs_phy_time_cfg {