• Horia Geant?'s avatar
    crypto: caam - add support for LS1021A · 6c3af955
    Horia Geant? authored
    LS1021A is a QorIQ SoC having little endian CAAM.
    
    There are a few differences b/w QorIQ and i.MX from CAAM perspective:
    
    1. i.MX platforms are somewhat special wrt. 64-bit registers:
    -big endian format at 64-bit level: MSW at address+0 and LSW at address+4
    -little endian format at 32-bit level (within MSW and LSW)
    and thus need special handling.
    
    2. No CCM (clock controller module) for QorIQ.
    No CAAM clocks to enable / disable.
    
    A new Kconfig option - CRYPTO_DEV_FSL_CAAM_LE - is added to indicate
    CAAM is little endian (*). It is hidden from the user (to avoid
    misconfiguration); when adding support for a new platform with LE CAAM,
    either the Kconfig needs to be updated or the corresponding defconfig
    needs to indicate that CAAM is LE.
    (*) Using a DT property to provide CAAM endianness would not allow
    for the ifdeffery.
    
    In order to keep changes to a minimum, the following changes
    are postponed:
    -endianness fix of the last word in the S/G (rsvd2, bpid, offset),
    fields are always 0 anyway;
    -S/G format fix for i.MX7 (yes, i.MX7 support was not added yet,
    but still...)
    Signed-off-by: default avatarHoria Geant? <horia.geanta@freescale.com>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    6c3af955
regs.h 27.6 KB