[PATCH v2 0/9] New boards support: db845c and qcs404-evb

Sumit Garg sumit.garg at linaro.org
Tue Jul 12 11:07:02 CEST 2022


On Tue, 12 Jul 2022 at 13:58, Peng Fan <peng.fan at oss.nxp.com> wrote:
>
>
>
> On 7/12/2022 1:53 PM, Sumit Garg wrote:
> > Hi Peng,
> >
> > On Tue, 12 Jul 2022 at 06:27, Peng Fan <peng.fan at oss.nxp.com> wrote:
> >>
> >>
> >>
> >> On 7/8/2022 9:13 PM, Sumit Garg wrote:
> >>> Add support for two new boards db845c and qcs404-evb:
> >>> - db845c is a 96boards compliant platform aka RB3 based on Qualcomm
> >>>     SDM845 SoC.
> >>> - qcs404-evb is an evaluation board from Qualcomm based on QCS404 SoC.
> >>>
> >>> Both these platforms have one thing in common that u-boot is chain-loaded
> >>> in 64-bit mode via Android Boot Loader (ABL) which is an EFI application.
> >>> For further details on chain-loading refer to platform specific
> >>
> >> Just curious about the flow:
> >> ABL(an EFI applicaiton)->load U-Boot->start U-Boot? or you mean U-Boot
> >> run as EFI application?
> >>
> >
> > Here you can think of u-boot as just a replacement of the kernel image
> > within the boot.img. U-boot already has a provision for
> > LINUX_KERNEL_IMAGE_HEADER [1] which makes it look like a kernel image.
> > Boot chain:
> >
> > XBL (edk2 proprietary source code) -> ABL(an EFI applicaiton) ->
> > U-boot (part of boot.img as a replacement of kernel) -> FIT image
> > (part of boot.img as a replacement of ramdisk)
>
> Oh. This is complicated boot flow. Just guess this is easy to
> support Windows ARM and Android both.
>

Currently this u-boot port is targeted for embedded use-cases.

> >
> > Also, the final stage is configurable as u-boot allows interactions
> > with various media (eMMC, USB (WIP), network (WIP) etc.)
>
> U-Boot through XBL to access the various media or directly access.
> I guess it is as U-Boot runs as EFI application, through XBL to access
> the various media.

No currently u-boot is loaded by ABL (EFI application). So it's a
direct access to the various media.

-Sumit

>
> Thanks,
> Peng.
>
> >
> > [1] https://source.denx.de/u-boot/u-boot/-/blob/master/arch/arm/Kconfig#L82
> >
> > -Sumit
> >
> >> THanks,
> >> Peng.
> >>
> >>> documentation:
> >>> - doc/board/qualcomm/sdm845.rst
> >>> - doc/board/qualcomm/qcs404.rst
> >>>
> >>> Changes in v2:
> >>> - Added patch #1 to fix DT node overrides in starqltechn-uboot.dtsi.
> >>> - Updated patch #2 commit description.
> >>> - Fixed a typo (s/96Board/96Boards/) in patch #5.
> >>>
> >>> Sumit Garg (9):
> >>>     board: starqltechn: Align DT node overrides with sdm845.dtsi
> >>>     arm64: dts: sdm845: Remove redundant u-boot DT properties
> >>>     clocks: sdm845: Import qcom,gcc-sdm845.h
> >>>     uart: sdm845: Fix debug UART pinmux
> >>>     board: qualcomm: Add support for dragonboard845c
> >>>     mmc: msm_sdhci: Add SDCC version 5.0.0 support
> >>>     pinctrl: qcom: Add pinctrl driver for QCS404 SoC
> >>>     clocks: qcom: Add clock driver for QCS404 SoC
> >>>     board: qualcomm: Add support for QCS404 EVB
> >>>
> >>>    arch/arm/dts/Makefile                         |   1 +
> >>>    arch/arm/dts/dragonboard845c-uboot.dtsi       |  37 +++
> >>>    arch/arm/dts/dragonboard845c.dts              |  44 ++++
> >>>    arch/arm/dts/qcs404-evb-uboot.dtsi            |  24 ++
> >>>    arch/arm/dts/qcs404-evb.dts                   |  81 ++++++
> >>>    arch/arm/dts/sdm845.dtsi                      |   8 +-
> >>>    arch/arm/dts/starqltechn-uboot.dtsi           |  18 +-
> >>>    arch/arm/dts/starqltechn.dts                  |   2 +-
> >>>    arch/arm/mach-snapdragon/Kconfig              |  25 ++
> >>>    arch/arm/mach-snapdragon/Makefile             |   3 +
> >>>    arch/arm/mach-snapdragon/clock-qcs404.c       |  30 +++
> >>>    arch/arm/mach-snapdragon/clock-sdm845.c       |   3 +-
> >>>    arch/arm/mach-snapdragon/clock-snapdragon.c   |   1 +
> >>>    .../include/mach/sysmap-qcs404.h              |  13 +
> >>>    arch/arm/mach-snapdragon/pinctrl-qcs404.c     |  55 ++++
> >>>    arch/arm/mach-snapdragon/pinctrl-snapdragon.c |   1 +
> >>>    arch/arm/mach-snapdragon/pinctrl-snapdragon.h |   1 +
> >>>    arch/arm/mach-snapdragon/sysmap-qcs404.c      |  31 +++
> >>>    board/qualcomm/dragonboard845c/Kconfig        |  12 +
> >>>    board/qualcomm/dragonboard845c/MAINTAINERS    |   6 +
> >>>    board/qualcomm/dragonboard845c/Makefile       |   9 +
> >>>    board/qualcomm/dragonboard845c/db845c.its     |  63 +++++
> >>>    .../dragonboard845c/dragonboard845c.c         |   9 +
> >>>    board/qualcomm/qcs404-evb/Kconfig             |  15 ++
> >>>    board/qualcomm/qcs404-evb/MAINTAINERS         |   6 +
> >>>    board/qualcomm/qcs404-evb/Makefile            |   6 +
> >>>    board/qualcomm/qcs404-evb/qcs404-evb.c        |  33 +++
> >>>    board/qualcomm/qcs404-evb/qcs404-evb.its      |  64 +++++
> >>>    configs/dragonboard845c_defconfig             |  28 ++
> >>>    configs/qcs404evb_defconfig                   |  39 +++
> >>>    doc/board/qualcomm/index.rst                  |   1 +
> >>>    doc/board/qualcomm/qcs404.rst                 |  79 ++++++
> >>>    doc/board/qualcomm/sdm845.rst                 | 100 ++++++-
> >>>    drivers/mmc/msm_sdhci.c                       |  96 ++++---
> >>>    include/configs/dragonboard845c.h             |  28 ++
> >>>    include/configs/qcs404-evb.h                  |  27 ++
> >>>    include/dt-bindings/clock/qcom,gcc-qcs404.h   | 180 +++++++++++++
> >>>    include/dt-bindings/clock/qcom,gcc-sdm845.h   | 246 ++++++++++++++++++
> >>>    38 files changed, 1363 insertions(+), 62 deletions(-)
> >>>    create mode 100644 arch/arm/dts/dragonboard845c-uboot.dtsi
> >>>    create mode 100644 arch/arm/dts/dragonboard845c.dts
> >>>    create mode 100644 arch/arm/dts/qcs404-evb-uboot.dtsi
> >>>    create mode 100644 arch/arm/dts/qcs404-evb.dts
> >>>    create mode 100644 arch/arm/mach-snapdragon/clock-qcs404.c
> >>>    create mode 100644 arch/arm/mach-snapdragon/include/mach/sysmap-qcs404.h
> >>>    create mode 100644 arch/arm/mach-snapdragon/pinctrl-qcs404.c
> >>>    create mode 100644 arch/arm/mach-snapdragon/sysmap-qcs404.c
> >>>    create mode 100644 board/qualcomm/dragonboard845c/Kconfig
> >>>    create mode 100644 board/qualcomm/dragonboard845c/MAINTAINERS
> >>>    create mode 100644 board/qualcomm/dragonboard845c/Makefile
> >>>    create mode 100644 board/qualcomm/dragonboard845c/db845c.its
> >>>    create mode 100644 board/qualcomm/dragonboard845c/dragonboard845c.c
> >>>    create mode 100644 board/qualcomm/qcs404-evb/Kconfig
> >>>    create mode 100644 board/qualcomm/qcs404-evb/MAINTAINERS
> >>>    create mode 100644 board/qualcomm/qcs404-evb/Makefile
> >>>    create mode 100644 board/qualcomm/qcs404-evb/qcs404-evb.c
> >>>    create mode 100644 board/qualcomm/qcs404-evb/qcs404-evb.its
> >>>    create mode 100644 configs/dragonboard845c_defconfig
> >>>    create mode 100644 configs/qcs404evb_defconfig
> >>>    create mode 100644 doc/board/qualcomm/qcs404.rst
> >>>    create mode 100644 include/configs/dragonboard845c.h
> >>>    create mode 100644 include/configs/qcs404-evb.h
> >>>    create mode 100644 include/dt-bindings/clock/qcom,gcc-qcs404.h
> >>>    create mode 100644 include/dt-bindings/clock/qcom,gcc-sdm845.h
> >>>


More information about the U-Boot mailing list