On Fri, Apr 27, 2007 at 06:10:51PM +1000, Herbert Xu (herbert@xxxxxxxxxxxxxxxxxxx) wrote: > > Has anyone else tried to test the geode-aes driver with the tcrypt module? > > > > I am also not able to use the geode-aes driver with openswan-2.4.7 on kernel > > 2.6.19 (with patched-in geode driver). > > Jordan, do you have any ideas why this is happening? Could it be compiler problem and broken hardware? Martin, can you test attached patch? diff --git a/drivers/crypto/geode-aes.c b/drivers/crypto/geode-aes.c index 6d3840e..724169b 100644 --- a/drivers/crypto/geode-aes.c +++ b/drivers/crypto/geode-aes.c @@ -78,7 +78,7 @@ static int do_crypt(void *src, void *dst, int len, u32 flags) { u32 status; - u32 counter = AES_OP_TIMEOUT; + int counter = AES_OP_TIMEOUT; iowrite32(virt_to_phys(src), _iobase + AES_SOURCEA_REG); iowrite32(virt_to_phys(dst), _iobase + AES_DSTA_REG); @@ -89,7 +89,9 @@ do_crypt(void *src, void *dst, int len, u32 flags) do status = ioread32(_iobase + AES_INTR_REG); - while(!(status & AES_INTRA_PENDING) && --counter); + while(--counter > 0 && !(status & AES_INTRA_PENDING)); + + WARN_ON(!counter); /* Clear the event */ iowrite32((status & 0xFF) | AES_INTRA_PENDING, _iobase + AES_INTR_REG); -- Evgeniy Polyakov - To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html