28 Feb, 2015

1 commit


26 Feb, 2015

1 commit


07 Feb, 2015

1 commit


30 Jan, 2015

10 commits

  • Currently the hash functions used in RSA are called directly from the sha1
    and sha256 libraries. Change the RSA checksum library to use the progressive
    hash API's registered with struct hash_algo. This will allow the checksum
    library to use the hardware accelerated progressive hash API's once available.

    Signed-off-by: Ruchika Gupta
    CC: Simon Glass
    Acked-by: Simon Glass
    Signed-off-by: Simon Glass
    (Fixed build error in am335x_boneblack_vboot due to duplicate CONFIG_DM)

    Change-Id: Ic44279432f88d4e8594c6e94feb1cfcae2443a54

    Ruchika Gupta
     
  • Kconfig option added for devices which support RSA Verification.
    1. RSA_SOFTWARE_EXP
    Enables driver for supporting RSA Modular Exponentiation in Software
    2. RSA_FREESCALE_EXP
    Enables driver for supporting RSA Modular Exponentiation using Freescale specific
    driver

    The above drivers use RSA uclass

    Signed-off-by: Ruchika Gupta
    CC: Simon Glass
    Acked-by: Simon Glass
    Signed-off-by: Simon Glass
    (Removed duplicate line in Kconfig comment)

    Change-Id: I7663c4d5350e2bfc3dfa2696f70ef777d6ccc6f6

    Ruchika Gupta
     
  • Modify rsa_verify to use the rsa driver of DM library .The tools
    will continue to use the same RSA sw library.

    CONFIG_RSA is now dependent on CONFIG_DM. All configurations which
    enable FIT based signatures have been modified to enable CONFIG_DM
    by default.

    Signed-off-by: Ruchika Gupta
    CC: Simon Glass
    Acked-by: Simon Glass

    Ruchika Gupta
     
  • For FIT signature based approach to work, RSA library needs to be selected.
    The FIT_SIGNATURE option in Kconfig is modified to automatically select RSA.
    Selecting RSA compiles the RSA library required for image verification.

    Signed-off-by: Ruchika Gupta
    CC: Simon Glass
    Acked-by: Simon Glass

    Ruchika Gupta
     
  • Public exponentiation which is required in rsa verify functionality is
    tightly integrated with verification code in rsa_verify.c. The patch
    splits the file into twp separating the modular exponentiation.

    1. rsa-verify.c
    - The file parses device tree keys node to fill a keyprop structure.
    The keyprop structure can then be converted to implementation specific
    format.
    (struct rsa_pub_key for sw implementation)
    - The parsed device tree node is then passed to a generic rsa_mod_exp
    function.

    2. rsa-mod-exp.c
    Move the software specific functions related to modular exponentiation
    from rsa-verify.c to this file.

    Signed-off-by: Ruchika Gupta
    CC: Simon Glass
    Acked-by: Simon Glass

    Ruchika Gupta
     
  • This has moved to driver model so we don't need the fdtdec support.

    Signed-off-by: Simon Glass
    Acked-by: Minkyu Kang

    Simon Glass
     
  • These have moved to driver model so we don't need the fdtdec support.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Since GPIO support has now moved to the driver model uclass, we can drop
    this include.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Now that we support device tree GPIO bindings directly in the driver model
    GPIO uclass we can remove these functions.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • For GPIOs and other functions we want to look up a phandle and then decode
    a list of arguments for that phandle. Each phandle can have a different
    number of arguments, specified by a property in the target node. This is
    the "#gpio-cells" property for GPIOs.

    Add a function to provide this feature, taken modified from Linux 3.18.

    Signed-off-by: Simon Glass

    Simon Glass
     

24 Jan, 2015

1 commit


15 Jan, 2015

4 commits

  • This allows the caller to easily detect how much of the destination buffer
    has been used.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • This allows the caller to easily detect how much of the destination buffer
    has been used.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • This allows the caller to easily detect how much of the destination buffer
    has been used.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Commit 4d3b8a0d fixed a problem with lzma decompress where it would
    run out of bytes to decompress. The algorithm needs to know how many
    uncompressed bytes it is expected to produce.

    However, the fix introduced a potential buffer overrun, and causes
    the compression test to fail (test_compression command in sandbox).

    The correct fix seems to be to use the minimum of the expected number
    of uncompressed bytes and the amount of output space available. That
    way things work normally when there is enough space, and return an
    error (without overrunning available space) when there is not.

    Signed-off-by: Antonios Vamporakis
    CC: Kees Cook
    CC: Simon Glass
    CC: Daniel Schwierzeck
    CC: Luka Perkov

    Signed-off-by: Simon Glass

    Simon Glass
     

13 Jan, 2015

1 commit

  • This commit adds several APIs to decode PCI device node according to
    the Open Firmware PCI bus bindings, including:
    - fdtdec_get_pci_addr() for encoded pci address
    - fdtdec_get_pci_vendev() for vendor id and device id
    - fdtdec_get_pci_bdf() for pci device bdf triplet
    - fdtdec_get_pci_bar32() for pci device register bar

    Signed-off-by: Bin Meng
    Acked-by: Simon Glass
    Signed-off-by: Simon Glass
    (Include in fdtdec.h and adjust tegra to fix build error)

    Bin Meng
     

02 Jan, 2015

1 commit


30 Dec, 2014

1 commit

  • Commit "initcall: Improve debugging support" makes sense and indeed
    simplifies process of matching initcalls executed with static
    disassembly.

    Until you are debugging relocation functionality.

    Existign output may make you think that at some point execution somehow
    returned back to non-relocated area. And there're many reasons/problems
    that may provoke this behavior.

    In order to make things clear let's add explicit mention in case initall
    was actually relocated like this:
    --->---
    initcall: 810015f8
    Relocation Offset is: 0efcf000
    Relocating to 8ffcf000, new gd at 8fdced3c, sp at 8fdced20
    initcall: 810015b8
    initcall: 8ffd093c
    initcall: 8ffd0a14
    initcall: 81001940 (relocated to 8ffd0940)
    initcall: 81001958 (relocated to 8ffd0958)
    --->---

    Note "unexpected" jump from 0x8f... area to 0x81... area.
    Without explanation this raises many questions: execution jumped in
    relocated area right as expected and then for some reason returned back?

    But I hope comment in brackets will save some time for those curious
    developers who are careful enough to catch "unexpected jump to pre-reloc
    area" or those unlucky ones who'll have to deal with relocation
    debugging.

    Signed-off-by: Alexey Brodkin
    Cc: Simon Glass
    Cc: Minkyu Kang

    Alexey Brodkin
     

19 Dec, 2014

3 commits

  • Add support for the PCIe controller found on some generations of Tegra.
    Tegra20 has 2 root ports with a total of 4 lanes, Tegra30 has 3 root
    ports with a total of 6 lanes and Tegra124 has 2 root ports with a total
    of 5 lanes.

    This is based on the Linux kernel driver, originally submitted upstream
    by Mike Rapoport.

    Signed-off-by: Mike Rapoport
    Signed-off-by: Thierry Reding
    Signed-off-by: Simon Glass
    Signed-off-by: Tom Warren

    Thierry Reding
     
  • This controller was introduced on Tegra114 to handle XUSB pads. On
    Tegra124 it is also used for PCIe and SATA pin muxing and PHY control.
    Only the Tegra124 PCIe and SATA functionality is currently implemented,
    with weak symbols on Tegra114.

    Tegra20 and Tegra30 also provide weak symbols for these functions so
    that drivers can use the same API irrespective of which SoC they're
    being built for.

    Signed-off-by: Thierry Reding
    Signed-off-by: Simon Glass
    Signed-off-by: Tom Warren

    Thierry Reding
     
  • The AS3722 provides a number of DC/DC converters and LDOs as well as 8
    GPIOs.

    Signed-off-by: Thierry Reding
    Signed-off-by: Simon Glass
    Signed-off-by: Tom Warren

    Thierry Reding
     

14 Dec, 2014

1 commit

  • Move GD_BIST from lib/asm-offsets.c to arch/x86/lib/asm-offsets.c
    as it is x86 arch specific stuff. Also remove GENERATED_GD_RELOC_OFF
    which is not referenced anymore.

    Signed-off-by: Bin Meng
    Acked-by: Simon Glass

    Bin Meng
     

12 Dec, 2014

2 commits

  • The functions error's numbers are standarized - but the error
    messages are not.

    The errors are often handled with unclear error messages,
    so why not use an errno standarized messages.

    Advantages:
    - This could decrease the binary size.
    - Appended with a detailed information,
    the error message will be clear.

    This commit introduces new function:
    - const char *errno_to_str(int errno)

    The functions returns a pointer to the errno corresponding text message:
    - if errno is null or positive number - a pointer to "Success" message
    - if errno is negative - a pointer to errno related message

    Signed-off-by: Przemyslaw Marczak
    Reviewed-by: Tom Rini

    Przemyslaw Marczak
     
  • Move strlcpy() definition from drivers/usb/gadget/ether.c to
    lib/string.c because it is a very useful function.
    Let's add the prototype to include/linux/string.h too.

    Signed-off-by: Masahiro Yamada
    Acked-by: Simon Glass

    Masahiro Yamada
     

08 Dec, 2014

4 commits


02 Dec, 2014

2 commits


28 Nov, 2014

1 commit


27 Nov, 2014

1 commit


25 Nov, 2014

5 commits