09 Aug, 2019

1 commit

  • On imx8 platform, the usb2 and usb3 ports are both supported. Which
    means we can use usb2(ci_udc_otg) and usb3(cdns3_generic_peripheral)
    gadget driver to run sdp/fastboot/ums at the same time.

    For sdp and the fastboot that runs automatically when uboot starts,
    board_usb_gadget_port_auto() is added to autodetect usb port, this
    means that we don't have to specify which USB port should be used to
    download in code, now we can just connect either usb port then it
    will download automatically.

    Signed-off-by: Sherry Sun

    Sherry Sun
     

16 Jul, 2019

2 commits

  • mtdparts quit when invalid mtd devices found. Add thes patches to skip
    the invalid devices, so NAND partitions can be alway found to burn boot
    images.

    For instance,

    On i.MX6DL Sabreauto, nand config u-boot didn't enable the weim nor, so
    parsing 8000000.nor leads to error:

    Device nor0 not found!

    With the patches, we can skip this invalid device and still get nand
    boot partition table:

    Device nor0 not found!
    current device is invalid, skip it and check the next one

    device nand0 , # parts = 5
    0: nandboot 0x04000000 0x00000000 0
    1: nandkernel 0x01000000 0x04000000 0
    2: nanddtb 0x01000000 0x05000000 0
    3: nandtee 0x01000000 0x06000000 0
    4: nandrootfs 0xf9000000 0x07000000 0

    active partition: nand0,0 - (nandboot) 0x04000000 @ 0x00000000

    Signed-off-by: Han Xu

    Han Xu
     
  • add a new option in mtdparts to skip the invalid devices rather than
    just quit

    Signed-off-by: Han Xu

    Han Xu
     

24 May, 2019

12 commits

  • Porting the FSL android fastboot features from imx u-boot v2018.03 to
    support all SoCs: imx6/imx7/imx7ulp/imx8/imx8m.

    The UUU commands like UCmd and ACmd are also added. Users need set
    CONFIG_FASTBOOT_UUU_SUPPORT=y to enable the feature.

    Signed-off-by: Frank Li
    Signed-off-by: Ye Li
    (cherry picked from commit 65120b06a7f750b9b1a6e0db3d2082cc7088d5a8)

    Ye Li
     
  • When IMX_OPTEE is enabled for secure boot, update bootm to authenticate the optee
    image and the kernel zImage before booting into optee.

    Signed-off-by: Ye Li
    (cherry picked from commit d3bee08f12f1d41c83c47773aec6cfa28056694a)
    (cherry picked from commit 3825c3fedbbe59fdf8c4f59f10221823a5fc6f03)
    (cherry picked from commit a09dca5eff735ef8ef46313de09cfa0f3b4cf189)

    Ye Li
     
  • When sata stop is executed, the sata_curr_device is not reset to -1, so
    any following sata commands will not initialize the sata again and cause
    problem.

    Additional, in sata init implementation, the sata_curr_device should be updated,
    otherwise sata will be initialized again when doing other sata commands like
    read/write/info/part/device.

    Signed-off-by: Ye Li
    (cherry picked from commit 9bccfd01c618a5d059f332c000c42e5bf39880d9)

    Ye Li
     
  • This fix a wrong trace error while executing caam genlob command.

    Signed-off-by: Aymen Sghaier
    (cherry picked from commit 7b80598100baf38562bee10bb4a19c3c834b945b)

    Aymen Sghaier
     
  • Add the fsl CAAM driver and new commands to implement DEK blob operations,
    like "caam genblob" to generate encrypted blob and "caam decap" to output
    orignal plain data.

    Signed-off-by: Ye Li
    (cherry picked from commit 4ec81a0b075d8d853ac696172660a7771064405d)

    Ye Li
     
  • This patch enable blob command for mScale platforms.

    Signed-off-by: Aymen Sghaier
    (cherry picked from commit 895669394f6aae633abf6ea3f327d6093562edde)
    (cherry picked from commit bac8ed98778c93ef43ce9093efa3b9999d650576)

    Aymen Sghaier
     
  • Signed-off-by: Franck LENORMAND
    (cherry picked from commit 03cb71cd22ff6ab1e2005a4bcb183c65f49b6e4e)
    (cherry picked from commit 5d797db35da7fa3f7971df8811b6a1e800786ced)

    Franck LENORMAND
     
  • U-Boot can instantiate CAAM RNG if needed by crypto operations.
    Call sec_init() prior running a blob operation to ensure
    RNG is correctly instantiated.

    Make sure CAAM clock is enabled and check if a job ring is
    available for that operation.

    Signed-off-by: Breno Lima
    Reviewed-by: Ye Li
    (cherry picked from commit b2b745515d06f05ea288524e26cf2389d6924ff2)
    (cherry picked from commit fe33f7296336b7364fb24ad21b0be32eb5810262)

    Breno Lima
     
  • In order to build CMD_BLOB on i.MX CAAM supported devices it's
    necessary to select SECURE_BOOT. Add SECURE_BOOT and CAAM supported
    SoCs as dependency.

    Signed-off-by: Breno Lima
    Reviewed-by: Ye Li
    (cherry picked from commit 4afb519038d190687cac6d410e9ad65d0655f1c0)
    (cherry picked from commit acda6159eefbefaee15b19568fd1c4665c047432)

    Breno Lima
     
  • When secure boot is enabled, add authenticate_image in booti to authenticate
    kernel image.

    Signed-off-by: Ye Li
    (cherry picked from commit f29a143cdb8c74566113737e9be7e1bcd8c625f4)
    (cherry picked from commit 1e33f493a55dad7e016f948b932000ec295c6df4)

    Ye Li
     
  • To support the trust boot chain, we integrate the authentication
    into the kernel image loading process. The kernel image will be verified
    at its load address. So when signing the kernel image, we need to
    use this load address which may change on different platforms.

    Signed-off-by: Ye Li
    (cherry picked from commit 3c118b8d6bbe1a25ca8c8bafeb528309f16fc73d)
    (cherry picked from commit fd9a9759ed9b3a9fc26b18aff00880382213b1ca)
    (cherry picked from commit 98d4faefdb83579d4a5a170e06af5efb64ad2b3c)

    Ye Li
     
  • The usb mass storage (f_mass_storage.c) uses fixed usb index 0,
    this causes problem while CDNS3 USB controller index is 1.
    Modify the API of fsg to pass the controller index.

    Signed-off-by: Ye Li
    Reviewed-by: Jun Li

    Ye Li
     

26 Mar, 2019

1 commit


21 Mar, 2019

1 commit


16 Mar, 2019

1 commit


09 Mar, 2019

1 commit


03 Mar, 2019

1 commit


25 Feb, 2019

7 commits

  • "memmap" command prints uefi-specific memory map information.
    => efi memmap
    Type Start End Attributes
    ================ ================ ================ ==========
    CONVENTIONAL 0000000040000000-000000007de27000 WB
    RUNTIME DATA 000000007de27000-000000007de28000 WB|RT
    RESERVED 000000007de28000-000000007de2a000 WB
    RUNTIME DATA 000000007de2a000-000000007de2b000 WB|RT
    RESERVED 000000007de2b000-000000007de2c000 WB
    RUNTIME DATA 000000007de2c000-000000007de2d000 WB|RT
    LOADER DATA 000000007de2d000-000000007ff37000 WB
    RUNTIME CODE 000000007ff37000-000000007ff38000 WB|RT
    LOADER DATA 000000007ff38000-0000000080000000 WB

    Signed-off-by: AKASHI Takahiro
    Reviewed-by: Heinrich Schuchardt

    AKASHI Takahiro
     
  • "images" command prints loaded images-related information.

    Signed-off-by: AKASHI Takahiro
    Reviewed-by: Heinrich Schuchardt

    AKASHI Takahiro
     
  • "dh" command prints all the uefi handles used in the system.

    => efi dh
    7ef3bfa0: Device Path, Device Path To Text, Device Path Utilities,
    Unicode Collation 2
    7ef31d30: Driver Binding
    7ef31da0: Simple Text Output
    7ef31e10: Simple Text Input, Simple Text Input Ex
    7ef3cca0: Block IO, Device Path
    7ef3d070: Block IO, Device Path
    7ef3d1b0: Block IO, Device Path, Simple File System
    7ef3d3e0: Block IO, Device Path, Simple File System

    Signed-off-by: AKASHI Takahiro
    Reviewed-by: Heinrich Schuchardt

    AKASHI Takahiro
     
  • "drivers" command prints all the uefi drivers on the system.

    => efi drivers
    Driver Name Image Path
    ================ ==================== ====================
    000000007ef003d0

    Signed-off-by: AKASHI Takahiro
    Reviewed-by: Heinrich Schuchardt

    AKASHI Takahiro
     
  • "devices" command prints all the uefi variables on the system.

    => efi devices
    Scanning disk ahci_scsi.id0lun0...
    Scanning disk ahci_scsi.id1lun0...
    Found 4 disks
    Device Device Path
    ================ ====================
    000000007ef07ea0 /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b)
    000000007ef00c10 /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b)/Scsi(0,0)
    000000007ef00dd0 /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b)/Scsi(1,0)
    000000007ef07be0 /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b)/Scsi(1,0)/HD(1,MBR,0x086246ba,0x800,0x40000)
    000000007ef07510 /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b)/Scsi(1,0)/HD(2,MBR,0x086246ba,0x40800,0x3f800)

    Signed-off-by: AKASHI Takahiro
    Reviewed-by: Heinrich Schuchardt

    AKASHI Takahiro
     
  • Currently, there is no easy way to add or modify UEFI variables.
    In particular, bootmgr supports BootOrder/BootXXXX variables, it is
    quite hard to define them as u-boot variables because they are represented
    in a complicated and encoded format.

    The new command, efidebug, helps address these issues and give us
    more friendly interfaces:
    * efidebug boot add: add BootXXXX variable
    * efidebug boot rm: remove BootXXXX variable
    * efidebug boot dump: display all BootXXXX variables
    * efidebug boot next: set BootNext variable
    * efidebug boot order: set/display a boot order (BootOrder)

    Signed-off-by: AKASHI Takahiro
    Reviewed-by: Heinrich Schuchardt

    AKASHI Takahiro
     
  • "env [print|set] -e" allows for handling uefi variables without
    knowing details about mapping to corresponding u-boot variables.

    Signed-off-by: AKASHI Takahiro
    Reviewed-by: Heinrich Schuchardt

    AKASHI Takahiro
     

23 Feb, 2019

1 commit

  • Without CONFIG_LED, we get

    cmd/built-in.o: In function `show_led_state':
    cmd/led.c:40: undefined reference to `led_get_state'
    cmd/built-in.o: In function `do_led':
    cmd/led.c:99: undefined reference to `led_get_by_label'
    cmd/led.c:108: undefined reference to `led_set_state'

    Signed-off-by: Jan Kiszka

    Jan Kiszka
     

20 Feb, 2019

4 commits


19 Feb, 2019

2 commits

  • Arguments are const and belong to the caller. Calling date in a hush
    loop will yield different results from the second invocation.

    Signed-off-by: Roman Kapl

    Roman Kapl
     
  • Currently there are two problems in 'bootelf -p' (load elf by segments)
    command:
    - bss section is not flushed, so booted elf can have non zero values
    in bss;
    - at least on ARM there are 'CACHE: Misaligned operation at
    range...' warnings

    Use p_memsz instead of p_filesz during cache flushing for elf segment.
    p_filesz doesn't include zero initialized memory (e.g. bss section),
    which also should be flushed.

    Align these cache flushes to line boundaries.

    Signed-off-by: Kurban Mallachiev

    Kurban Mallachiev
     

16 Feb, 2019

5 commits


15 Feb, 2019

1 commit