On Fri, Apr 27, 2007 at 06:10:51PM +1000, Herbert Xu ([EMAIL PROTECTED]) 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 [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html