mbox series

[00/10] Add Support for eMMC boot in AM65x and J721e

Message ID 20200123152435.6793-1-faiz_abbas@ti.com
Headers show
Series Add Support for eMMC boot in AM65x and J721e | expand

Message

Faiz Abbas Jan. 23, 2020, 3:24 p.m. UTC
The following patches add support for eMMC boot in TI's Am65x and J721e
devices.

Faiz Abbas (10):
  mmc: Add a saved_clock member
  arm: K3: sysfw-loader: Add a config_pm_pre_callback()
  configs: am65x_evm: Add CONFIG_SUPPORT_EMMC_BOOT
  spl: mmc: Fix spl_mmc_get_uboot_raw_sector() implementation
  mmc: Merge SD_LEGACY and MMC_LEGACY bus modes
  mmc: sdhci_am654: Update output tap delay writes
  configs: j721e_evm: Add Support for eMMC boot
  mmc: Add init() API
  mmc: sdhci: Expose sdhci_init() as non-static
  mmc: am654_sdhci: Implement workaround for card detect

 arch/arm/dts/k3-am65-main.dtsi               |  12 ++-
 arch/arm/dts/k3-am654-base-board-u-boot.dtsi |  11 +-
 arch/arm/dts/k3-j721e-main.dtsi              |  15 ++-
 arch/arm/mach-imx/imx8/image.c               |   3 +-
 arch/arm/mach-k3/am6_init.c                  |  33 +++++-
 arch/arm/mach-k3/include/mach/sysfw-loader.h |   2 +-
 arch/arm/mach-k3/j721e_init.c                |  33 +++++-
 arch/arm/mach-k3/sysfw-loader.c              |   6 +-
 common/spl/spl_mmc.c                         |  11 +-
 configs/am65x_evm_a53_defconfig              |   1 +
 configs/am65x_evm_r5_defconfig               |   1 +
 configs/j721e_evm_a72_defconfig              |   3 +
 configs/j721e_evm_r5_defconfig               |   3 +
 drivers/mmc/am654_sdhci.c                    | 105 ++++++++++++++++---
 drivers/mmc/fsl_esdhc_imx.c                  |   1 -
 drivers/mmc/mmc.c                            |  33 +++---
 drivers/mmc/omap_hsmmc.c                     |   1 -
 drivers/mmc/sdhci.c                          |   2 +-
 drivers/mmc/zynq_sdhci.c                     |   1 -
 include/configs/am65x_evm.h                  |   2 -
 include/mmc.h                                |   9 +-
 include/sdhci.h                              |   1 +
 22 files changed, 236 insertions(+), 53 deletions(-)

Comments

Lokesh Vutla Jan. 24, 2020, 3:37 a.m. UTC | #1
On 23/01/20 8:54 PM, Faiz Abbas wrote:
> The following patches add support for eMMC boot in TI's Am65x and J721e
> devices.

Can you re order the series something like below?
- Bring all mmc related driver changes in the beginning
- Then introduce SoC related changes(arch/arm/*)

Also please split driver and dts changes.

Thanks and regards,
Lokesh

> 
> Faiz Abbas (10):
>   mmc: Add a saved_clock member
>   arm: K3: sysfw-loader: Add a config_pm_pre_callback()
>   configs: am65x_evm: Add CONFIG_SUPPORT_EMMC_BOOT
>   spl: mmc: Fix spl_mmc_get_uboot_raw_sector() implementation
>   mmc: Merge SD_LEGACY and MMC_LEGACY bus modes
>   mmc: sdhci_am654: Update output tap delay writes
>   configs: j721e_evm: Add Support for eMMC boot
>   mmc: Add init() API
>   mmc: sdhci: Expose sdhci_init() as non-static
>   mmc: am654_sdhci: Implement workaround for card detect
> 
>  arch/arm/dts/k3-am65-main.dtsi               |  12 ++-
>  arch/arm/dts/k3-am654-base-board-u-boot.dtsi |  11 +-
>  arch/arm/dts/k3-j721e-main.dtsi              |  15 ++-
>  arch/arm/mach-imx/imx8/image.c               |   3 +-
>  arch/arm/mach-k3/am6_init.c                  |  33 +++++-
>  arch/arm/mach-k3/include/mach/sysfw-loader.h |   2 +-
>  arch/arm/mach-k3/j721e_init.c                |  33 +++++-
>  arch/arm/mach-k3/sysfw-loader.c              |   6 +-
>  common/spl/spl_mmc.c                         |  11 +-
>  configs/am65x_evm_a53_defconfig              |   1 +
>  configs/am65x_evm_r5_defconfig               |   1 +
>  configs/j721e_evm_a72_defconfig              |   3 +
>  configs/j721e_evm_r5_defconfig               |   3 +
>  drivers/mmc/am654_sdhci.c                    | 105 ++++++++++++++++---
>  drivers/mmc/fsl_esdhc_imx.c                  |   1 -
>  drivers/mmc/mmc.c                            |  33 +++---
>  drivers/mmc/omap_hsmmc.c                     |   1 -
>  drivers/mmc/sdhci.c                          |   2 +-
>  drivers/mmc/zynq_sdhci.c                     |   1 -
>  include/configs/am65x_evm.h                  |   2 -
>  include/mmc.h                                |   9 +-
>  include/sdhci.h                              |   1 +
>  22 files changed, 236 insertions(+), 53 deletions(-)
>
Lokesh Vutla Jan. 24, 2020, 4:26 a.m. UTC | #2
On 24/01/20 9:07 AM, Lokesh Vutla wrote:
> 
> 
> On 23/01/20 8:54 PM, Faiz Abbas wrote:
>> The following patches add support for eMMC boot in TI's Am65x and J721e
>> devices.
> 
> Can you re order the series something like below?
> - Bring all mmc related driver changes in the beginning
> - Then introduce SoC related changes(arch/arm/*)
> 
> Also please split driver and dts changes.


Can you please fix the following build errors as well?


Stage: test.py
Name: vexpress_ca9x4 test.py
Trace: +                      ^~
+cc1: all warnings being treated as errors
+make[3]: *** [drivers/mmc/mmc.o] Error 1
+make[2]: *** [drivers/mmc] Error 2
+make[1]: *** [drivers] Error 2
+make: *** [sub-make] Error 2
section_end:1579837800:build_script
section_start:1579837800:after_script
Running after script...
$ rm -rf ~/grub2* /tmp/uboot-test-hooks /tmp/venv
section_end:1579837802:after_script
section_start:1579837802:upload_artifacts_on_failure
section_end:1579837805:upload_artifacts_on_failure
ERROR: Job failed: exit code 128


Job #50296 ( https://gitlab.denx.de/u-boot/custodians/u-boot-ti/-/jobs/50296/raw )

Stage: test.py
Name: vexpress_ca15_tc2 test.py
Trace: +                      ^~
+cc1: all warnings being treated as errors
+make[3]: *** [drivers/mmc/mmc.o] Error 1
+make[2]: *** [drivers/mmc] Error 2
+make[1]: *** [drivers] Error 2
+make: *** [sub-make] Error 2
section_end:1579837767:build_script
section_start:1579837767:after_script
Running after script...
$ rm -rf ~/grub2* /tmp/uboot-test-hooks /tmp/venv
section_end:1579837769:after_script
section_start:1579837769:upload_artifacts_on_failure
section_end:1579837771:upload_artifacts_on_failure
ERROR: Job failed: exit code 128

Thanks and regards,
Lokesh

> 
> Thanks and regards,
> Lokesh
> 
>>
>> Faiz Abbas (10):
>>   mmc: Add a saved_clock member
>>   arm: K3: sysfw-loader: Add a config_pm_pre_callback()
>>   configs: am65x_evm: Add CONFIG_SUPPORT_EMMC_BOOT
>>   spl: mmc: Fix spl_mmc_get_uboot_raw_sector() implementation
>>   mmc: Merge SD_LEGACY and MMC_LEGACY bus modes
>>   mmc: sdhci_am654: Update output tap delay writes
>>   configs: j721e_evm: Add Support for eMMC boot
>>   mmc: Add init() API
>>   mmc: sdhci: Expose sdhci_init() as non-static
>>   mmc: am654_sdhci: Implement workaround for card detect
>>
>>  arch/arm/dts/k3-am65-main.dtsi               |  12 ++-
>>  arch/arm/dts/k3-am654-base-board-u-boot.dtsi |  11 +-
>>  arch/arm/dts/k3-j721e-main.dtsi              |  15 ++-
>>  arch/arm/mach-imx/imx8/image.c               |   3 +-
>>  arch/arm/mach-k3/am6_init.c                  |  33 +++++-
>>  arch/arm/mach-k3/include/mach/sysfw-loader.h |   2 +-
>>  arch/arm/mach-k3/j721e_init.c                |  33 +++++-
>>  arch/arm/mach-k3/sysfw-loader.c              |   6 +-
>>  common/spl/spl_mmc.c                         |  11 +-
>>  configs/am65x_evm_a53_defconfig              |   1 +
>>  configs/am65x_evm_r5_defconfig               |   1 +
>>  configs/j721e_evm_a72_defconfig              |   3 +
>>  configs/j721e_evm_r5_defconfig               |   3 +
>>  drivers/mmc/am654_sdhci.c                    | 105 ++++++++++++++++---
>>  drivers/mmc/fsl_esdhc_imx.c                  |   1 -
>>  drivers/mmc/mmc.c                            |  33 +++---
>>  drivers/mmc/omap_hsmmc.c                     |   1 -
>>  drivers/mmc/sdhci.c                          |   2 +-
>>  drivers/mmc/zynq_sdhci.c                     |   1 -
>>  include/configs/am65x_evm.h                  |   2 -
>>  include/mmc.h                                |   9 +-
>>  include/sdhci.h                              |   1 +
>>  22 files changed, 236 insertions(+), 53 deletions(-)
>>
Faiz Abbas Jan. 24, 2020, 6:17 a.m. UTC | #3
Lokesh,

On 24/01/20 9:07 am, Lokesh Vutla wrote:
> 
> 
> On 23/01/20 8:54 PM, Faiz Abbas wrote:
>> The following patches add support for eMMC boot in TI's Am65x and J721e
>> devices.
> 
> Can you re order the series something like below?
> - Bring all mmc related driver changes in the beginning
> - Then introduce SoC related changes(arch/arm/*)
> 
> Also please split driver and dts changes.
> 

I like this order.

> 
>>
>> Faiz Abbas (10):
>>   mmc: Add a saved_clock member
>>   arm: K3: sysfw-loader: Add a config_pm_pre_callback()

^ these two patches add pm_pre_callback()

>>   configs: am65x_evm: Add CONFIG_SUPPORT_EMMC_BOOT
>>   spl: mmc: Fix spl_mmc_get_uboot_raw_sector() implementation
>>   mmc: Merge SD_LEGACY and MMC_LEGACY bus modes
>>   mmc: sdhci_am654: Update output tap delay writes
>>   configs: j721e_evm: Add Support for eMMC boot

^ All these patches add eMMC support for AM65x and J721e

>>   mmc: Add init() API
>>   mmc: sdhci: Expose sdhci_init() as non-static
>>   mmc: am654_sdhci: Implement workaround for card detect

^ All these workaround the 1 second sdcd issue.

DTS and driver changes have to go together in "Update output tap delay
writes" because otherwise boot will be broken.

Thanks,
Faiz