mbox series

[v3,00/12] fsl_esdhc_imx: port several patches from fsl_esdhc

Message ID 20211123200347.3772343-1-sean.anderson@seco.com
Headers show
Series fsl_esdhc_imx: port several patches from fsl_esdhc | expand

Message

Sean Anderson Nov. 23, 2021, 8:03 p.m. UTC
This series ports some of the patches from fsl_esdhc to fsl_esdhc_imx.
Because these drivers share a common lineage, many of these patches
apply with minor changes. For each one, I have noted the originating
commit in the style of linux stable backports. Where I have had to
modify patches, I have noted the changes I have made before my SoB.

In fa33d20749 ("mmc: split fsl_esdhc driver for i.MX"), Yangbo says

> For the two series processors, the eSDHCs are becoming more and more
> different

However, these drivers are still extremely similar; the differences
between them are not major. NXP has not done a good job of porting
patches which apply to both drivers. This causes the fsl_esdhc_imx
driver to rot, as the fsl_esdhc gets more general fixes.  For this
reason, I think that the fsl_esdhc_imx driver should be removed unless
NXP can commit to creating series like this which port patches which
apply to both drivers.

Changes in v3:
- Drop Kconfig BLK dependency
- Fix build error caused by unconverted OF_PLATDATA code
- Replace more #ifdefs by if

Changes in v2:
- Use a switch statement instead of ifs for max_bus_width
- Only default to 8 bit width when max_bus_width is not set

Sean Anderson (12):
  mmc: fsl_esdhc_imx: make BLK as hard requirement of DM_MMC
  mmc: fsl_esdhc_imx: remove redundant DM_MMC checking
  mmc: fsl_esdhc_imx: fix voltage validation
  mmc: fsl_esdhc_imx: clean up bus width configuration code
  mmc: fsl_esdhc_imx: drop redundant code for non-removable feature
  mmc: fsl_esdhc_imx: fix mmc->clock with actual clock
  mmc: fsl_esdhc_imx: simplify 64bit check for SDMA transfers
  mmc: fsl_esdhc_imx: use dma-mapping API
  mmc: fsl_esdhc_imx: simplify esdhc_setup_data()
  mmc: fsl_esdhc_imx: replace most #ifdefs by IS_ENABLED()
  mmc: fsl_esdhc_imx: Replace more #ifdefs by if
  mmc: fsl_esdhc_imx: set sysctl register for clock initialization

 drivers/mmc/fsl_esdhc_imx.c | 643 ++++++++++++++----------------------
 include/fsl_esdhc_imx.h     |  14 +-
 2 files changed, 263 insertions(+), 394 deletions(-)

Comments

Jaehoon Chung Jan. 3, 2022, 11:19 p.m. UTC | #1
Dear Sean,

On 11/24/21 5:03 AM, Sean Anderson wrote:
> This series ports some of the patches from fsl_esdhc to fsl_esdhc_imx.
> Because these drivers share a common lineage, many of these patches
> apply with minor changes. For each one, I have noted the originating
> commit in the style of linux stable backports. Where I have had to
> modify patches, I have noted the changes I have made before my SoB.
> 
> In fa33d20749 ("mmc: split fsl_esdhc driver for i.MX"), Yangbo says
> 
>> For the two series processors, the eSDHCs are becoming more and more
>> different
> 
> However, these drivers are still extremely similar; the differences
> between them are not major. NXP has not done a good job of porting
> patches which apply to both drivers. This causes the fsl_esdhc_imx
> driver to rot, as the fsl_esdhc gets more general fixes.  For this
> reason, I think that the fsl_esdhc_imx driver should be removed unless
> NXP can commit to creating series like this which port patches which
> apply to both drivers.

Sorry for too late.
I had been tried to applied this series from patchwork, but i can't see [PATCH v3 01/12].

Best Regards,
Jaehoon Chung

> 
> Changes in v3:
> - Drop Kconfig BLK dependency
> - Fix build error caused by unconverted OF_PLATDATA code
> - Replace more #ifdefs by if
> 
> Changes in v2:
> - Use a switch statement instead of ifs for max_bus_width
> - Only default to 8 bit width when max_bus_width is not set
> 
> Sean Anderson (12):
>   mmc: fsl_esdhc_imx: make BLK as hard requirement of DM_MMC
>   mmc: fsl_esdhc_imx: remove redundant DM_MMC checking
>   mmc: fsl_esdhc_imx: fix voltage validation
>   mmc: fsl_esdhc_imx: clean up bus width configuration code
>   mmc: fsl_esdhc_imx: drop redundant code for non-removable feature
>   mmc: fsl_esdhc_imx: fix mmc->clock with actual clock
>   mmc: fsl_esdhc_imx: simplify 64bit check for SDMA transfers
>   mmc: fsl_esdhc_imx: use dma-mapping API
>   mmc: fsl_esdhc_imx: simplify esdhc_setup_data()
>   mmc: fsl_esdhc_imx: replace most #ifdefs by IS_ENABLED()
>   mmc: fsl_esdhc_imx: Replace more #ifdefs by if
>   mmc: fsl_esdhc_imx: set sysctl register for clock initialization
> 
>  drivers/mmc/fsl_esdhc_imx.c | 643 ++++++++++++++----------------------
>  include/fsl_esdhc_imx.h     |  14 +-
>  2 files changed, 263 insertions(+), 394 deletions(-)
>