27 Apr, 2020

1 commit

  • On 2019.04 SPL, we enabled DM gadget driver for QM/QXP to support
    dual USB ports. The CI_UDC DM gadget driver will call init function
    inside EHCI mx6 driver, so when building SPL on iMX8QM/QXP with CI UDC
    enabled, we have to enable usb host driver as well, and this introduces
    about more than 40KB size to SPL.

    Move the common codes to a independent file, so that both host driver
    and gadget driver can call it, then decouple the host and gadget driver.

    Note: the patch only applies to ci_udc gadget DM driver. For non-DM gadget
    driver, it still depends ehci host interfaces.

    Signed-off-by: Ye Li
    Acked-by: Peng Fan
    (cherry picked from commit 1afed171a77b4c95cd4ea76f29d5a0a6bb199820)

    Ye Li
     

23 Apr, 2020

2 commits


13 Apr, 2020

1 commit


07 Apr, 2020

1 commit


03 Apr, 2020

1 commit

  • Commit f4dc714aaa2d ("arm64: Turn u-boot.bin back into an ELF file after
    relocate-rela")
    introduce REMAKE_ELF option to recreate u-boot.elf from u-boot ->
    u-boot.bin + DT -> u-boot.elf.

    The best is to ilustrate it from make V=1 output
    cat u-boot-nodtb.bin dts/dt.dtb > u-boot-dtb.bin
    cp u-boot-dtb.bin u-boot.bin
    aarch64-linux-gnu-objcopy -I binary -B aarch64 -O elf64-littleaarch64 u-boot.bin u-boot-elf.o
    aarch64-linux-gnu-ld.bfd u-boot-elf.o -o u-boot.elf --defsym="_start"=0x8000000 -Ttext=0x8000000

    Last command has no explicit linker script passed that's why toolchain
    internal linker script is used.
    In Binutils 2.32 case it contains SIZEOF_HEADERS symbol which has changed
    behavior by commit
    https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=64029e93683a266c38d19789e780f3748bd6a188
    which result in situation that program headers has changed from
    (xilinx_zynqmp_mini_defconfig)

    Program Headers:
    Type Offset VirtAddr PhysAddr
    FileSiz MemSiz Flags Align
    LOAD 0x0000000000010000 0x00000000fffc0000 0x00000000fffc0000
    0x0000000000018918 0x0000000000018918 RW 0x10000

    to

    Program Headers:
    Type Offset VirtAddr PhysAddr
    FileSiz MemSiz Flags Align
    LOAD 0x0000000000000000 0x00000000fffb0000 0x00000000fffb0000
    0x0000000000028918 0x0000000000028918 RW 0x10000

    Xilinx tools like XSDB or Bootgen are using program headers for loading ELF
    to the right location and by above binutils change ELF is loaded to
    incorrect location.

    The patch is explicitly use u-boot-elf.lds (just cat now) for u-boot.elf
    recreation which is called when REMAKE_ELF is setup.
    By purpose u-boot-elf.lds doesn't contain OUTPUT_FORMAT/OUTPUT_ARCH to be
    able to use by all archs.

    Signed-off-by: Michal Simek
    Reviewed-by: Tom Rini
    Reviewed-by: Daniel Schwierzeck
    Tested-By: Álvaro Fernández Rojas

    Michal Simek
     

31 Mar, 2020

1 commit


13 Mar, 2020

1 commit

  • The commit 5fed97af20da ("Makefile: ensure DTB doesn't overflow into
    initial stack") adds an extra check for stack size in BSS if
    CONFIG_SYS_INIT_SP_BSS_OFFSET is enabled.
    This check, however, doesn't make sense under the configuration where
    control dtb won't be built in and it should be void in such cases.

    Signed-off-by: AKASHI Takahiro
    Fixes: 5fed97af20da ("Makefile: ensure DTB doesn't overflow into initial stack")
    Reviewed-by: Stephen Warren

    AKASHI Takahiro
     

07 Mar, 2020

1 commit


26 Feb, 2020

1 commit


12 Feb, 2020

1 commit


02 Feb, 2020

1 commit


31 Jan, 2020

1 commit

  • Since commit e1910d93b890 ("doc: driver-model: Convert MIGRATION.txt to
    reST") MIGRATION.txt has been converted to migration.rst, so update
    the Makefile references accordingly.

    Fixes: e1910d93b890 ("doc: driver-model: Convert MIGRATION.txt to reST")
    Signed-off-by: Fabio Estevam
    Reviewed-by: Tom Rini

    Fabio Estevam
     

30 Jan, 2020

4 commits

  • All rockchip platforms support TPL or SPL-based bootloader
    in mainline with U-Boot proper as final stage. For each
    stage we need to burn the image on to flash with respective
    offsets.

    This patch creates a single boot image component using
    - binman, for arm32 rockchip platforms
    - pad_cat, for arm64 rockchip platforms.

    This would help users to get rid of burning different
    boot stage images.

    The new image called 'u-boot-rockchip.bin'
    which can burn into flash like:

    ₹ sudo dd if=u-boot-rockchip.bin of=/dev/sda seek=64

    This would support all rockchip platforms, except rk3128
    since it doesn't support for SPL yet.

    Cc: Matwey V. Kornilov
    Cc: Wadim Egorov
    Signed-off-by: Jagan Teki
    Reviewed-by: Kever Yang

    Jagan Teki
     
  • Add SPL-alone mkimage tooling support via Makefile for
    few platforms or boards used in rockchip family.

    With this users would get rid of explicitly creating
    mkimage tool for rockchip rksd or rkspi boot modes.

    Signed-off-by: Jagan Teki
    Reviewed-by: Kever Yang

    Jagan Teki
     
  • Most of the platforms uses the platform type on their boot
    stage image naming conventions in makefile like,

    u-boot-x86-start16-tpl.bin - x86 start16 TPL bin
    u-boot-spl-mtk.bin - Mediatek SPL bin

    This would help to understand the users to what that
    particular image belongs to? and less confused.

    On that note, suffix platform type rockchip for existing
    u-boot-tpl.img so now it become u-boot-tpl-rockchip.bin

    Also, bin is more conventional way to include it on tools
    like binman, pad_cat etc in future patches.

    Note: usage of platform type doesn't follow consistent order
    as of now.

    Signed-off-by: Jagan Teki
    Reviewed-by: Kever Yang

    Jagan Teki
     
  • Add rockchip image type support. right now the image
    type marked with rksd, So create image type variable
    with required image type like rksd or rkspi.

    Cc: Matwey V. Kornilov
    Signed-off-by: Jagan Teki
    Reviewed-by: Kever Yang

    Jagan Teki
     

29 Jan, 2020

1 commit


23 Jan, 2020

1 commit

  • In order to generate a bootable U-Boot binary for i.MX8QXP MEK
    we need to run:

    $ make imx8qxp_mek_defconfig
    $ make flash.bin

    The resultant flash.bin and flash.log are not removed after
    running 'make mrproper'.

    Include these files into the CLEAN_FILES list entry so that
    they can be properly deleted after 'make mrproper'.

    Signed-off-by: Fabio Estevam

    Fabio Estevam
     

18 Jan, 2020

1 commit

  • This only exists to control whether the post/ directory is build. It is
    just as easy to check this in the Makefile. Remove CONFIG_HAS_POST and use
    an ifdef in the Makefile instead.

    Signed-off-by: Simon Glass

    Simon Glass
     

11 Jan, 2020

1 commit

  • GCC 9.x starts complaining about potential misalignment of the pointer to
    the array (in this case alignment=2) in the packed (alignment=1) structures.

    Repeating Linus' Torvalds commit 6f303d60534c in the Linux kernel.

    Original commit message:

    We already did this for clang, but now gcc has that warning too.
    Yes, yes, the address may be unaligned. And that's kind of the point.

    This in particular hides the warnings like

    drivers/usb/gadget/composite.c:545:23: warning: taking address of packed member of ‘struct usb_string_descriptor’ may result in an unaligned pointer value [-Waddress-of-packed-member]
    545 | collect_langs(sp, s->wData);

    drivers/usb/gadget/composite.c:550:24: warning: taking address of packed member of ‘struct usb_string_descriptor’ may result in an unaligned pointer value [-Waddress-of-packed-member]
    550 | collect_langs(sp, s->wData);

    drivers/usb/gadget/composite.c:555:25: warning: taking address of packed member of ‘struct usb_string_descriptor’ may result in an unaligned pointer value [-Waddress-of-packed-member]
    555 | collect_langs(sp, s->wData);

    Signed-off-by: Andy Shevchenko

    Andy Shevchenko
     

08 Jan, 2020

2 commits


07 Jan, 2020

1 commit


16 Dec, 2019

1 commit


07 Dec, 2019

2 commits


05 Dec, 2019

1 commit

  • Move MTD-related lines out of the root Makefile. Put them in their
    respective directories. Enclose some of these new lines to skip them
    when building the SPL. MTD core files and some MTD device drivers are
    compiled in a mtd.o object and included in the final object only if
    MTD support is required (there are two different symbols for that, one
    for U-Boot and one for the SPL).

    Now that all defconfigs have been fixed, we can stop the logic where
    enabling a command selects the core files to compile. This logic is
    broken since selecting a symbol with a 'depends on' will not enforce
    this secondary dependency.

    Signed-off-by: Miquel Raynal

    Miquel Raynal
     

03 Dec, 2019

5 commits


25 Nov, 2019

1 commit

  • The NAND devices with 128 kiB erase blocks require extra 64 kiB padding
    between each SPL image. Generate U-Boot image with such a padding using
    this new target.

    Signed-off-by: Marek Vasut
    Cc: Chin Liang See
    Cc: Dalon Westergreen
    Cc: Dinh Nguyen
    Cc: Ley Foon Tan
    Cc: Simon Goldschmidt
    Cc: Tien Fong Chee
    Reviewed-by: Ley Foon Tan

    Marek Vasut
     

19 Nov, 2019

1 commit


18 Nov, 2019

1 commit


14 Nov, 2019

1 commit

  • OP-TEE can get supplied with a devicetree and will then insert
    its firmware node and reserved-memory sections into it.
    As this devicetree often is not the one supplied to a later
    loaded kernel, a previous commit added functionality to transfer
    these nodes onto that new devicetree.

    To make sure this functionality stays intact, also add a test
    for the transfer functionality.

    Signed-off-by: Heiko Stuebner
    Reviewed-by: Simon Glass

    Heiko Stuebner
     

13 Nov, 2019

1 commit


12 Nov, 2019

1 commit


07 Nov, 2019

1 commit

  • Add support for USB3 host and gadget driver. This is a direct sync of
    Linux kernel Cadence USB stack that from v5.4-rc1 release.
    Driver has been modified so that it compiles without errors against
    U-Boot code base.
    Features not required for U-Boot such as scatter-gather DMA and OTG
    interrupt handling has been dropped.

    Signed-off-by: Jean-Jacques Hiblot
    [jjhiblot@ti.com: Add PHY support]
    Signed-off-by: Vignesh Raghavendra

    Vignesh Raghavendra