19 May, 2010

2 commits

  • SEC h/w versions 2.1 and above support sha224 via explicit instruction.

    Performing sha224 ahashes on earlier versions is still possible because
    they support sha256 (sha224 is sha256 with different initial constants
    and a different truncation length). We do this by overriding hardware
    context self-initialization, and perform it manually in s/w instead.

    Thanks to Lee for his fixes for correct execution on actual sec2.0 h/w.

    Signed-off-by: Kim Phillips
    Signed-off by: Lee Nipper
    Signed-off-by: Herbert Xu

    Kim Phillips
     
  • Add the following alorithms to talitos:
    md5,
    sha1,
    sha256,
    sha384,
    sha512.
    These are all type ahash.

    Signed-off-by: Lee Nipper
    Acked-By: Kim Phillips
    Signed-off-by: Herbert Xu

    Lee Nipper
     

13 Aug, 2009

1 commit


25 Dec, 2008

3 commits

  • Base versions handle constant folding just fine.

    Signed-off-by: Harvey Harrison
    Signed-off-by: Herbert Xu

    Harvey Harrison
     
  • SEC version 2.1 and above adds the capability to do the IPSec ICV
    memcmp in h/w. Results of the cmp are written back in the descriptor
    header, along with the done status. A new callback is added that
    checks these ICCR bits instead of performing the memcmp on the core,
    and is enabled by h/w capability.

    Signed-off-by: Kim Phillips

    After testing on different parts, another condition was added
    before using h/w auth check because different
    SEC revisions require different handling.

    The SEC 3.0 allows a more flexible link table where
    the auth data can span separate link table entries.
    The SEC 2.4/2.1 does not support this case.
    So a test was added in the decrypt routine
    for a fragmented case; the h/w auth check is disallowed for
    revisions not having the extent in the link table;
    in this case the hw auth check is done by software.

    A portion of a previous change for SEC 3.0 link table handling
    was removed since it became dead code with the hw auth check supported.

    This seems to be the best compromise for using hw auth check
    on supporting SEC revisions; it keeps the link table logic
    simpler for the fragmented cases.

    Signed-off-by: Lee Nipper
    Signed-off-by: Herbert Xu

    Kim Phillips
     
  • In talitos_interrupt, upon one done interrupt, mask further done interrupts,
    and ack only any error interrupt.
    In talitos_done, unmask done interrupts after completing processing.
    In flush_channel, ack each done channel processed.
    Keep done overflow interrupts masked because even though each pkt
    is ack'ed, a few done overflows still occur.

    Signed-off-by: Lee Nipper
    Signed-off-by: Kim Phillips
    Signed-off-by: Herbert Xu

    Lee Nipper
     

10 Jul, 2008

2 commits