On Thu, Mar 15, 2007 at 05:15:06PM +0300, Evgeniy Polyakov ([EMAIL PROTECTED]) wrote: > On Thu, Mar 15, 2007 at 06:45:33AM -0700, Joerg Pommnitz ([EMAIL PROTECTED]) > wrote: > > Hello all, > > the subject line basically says it all. I was trying to offload IPsec > > encryption to the hardware encryption engine on my Geode LX800. The exact > > same setkey command works fine with software aes. > > > > In case it matters: this is with a MSEP800/A board from DIGITAL-LOGIC AG > > (see > > http://www.digitallogic.com/english/products/catalog07/epic_detail.asp?id=MSEP800_L). > > > > Did anybody ever succeed with Geode hardware accelerated IPsec? Did you > > have to do anything special? > > Please enable as much kernel debugging options as possible and rerun the > test - our mind readers are currently on vacations, so we fail to > find a problem. > > If there will not be any signs of the problem, try to add several printk > into main geode crypto functions (there are not that many of them) or > press various sysrq combinations to determine where stall happens.
As additional debug patch: try this one: diff --git a/drivers/crypto/geode-aes.c b/drivers/crypto/geode-aes.c index 6d3840e..edacc64 100644 --- a/drivers/crypto/geode-aes.c +++ b/drivers/crypto/geode-aes.c @@ -49,7 +49,7 @@ * operation in case of trouble */ -#define AES_OP_TIMEOUT 0x50000 +#define AES_OP_TIMEOUT 0x500 /* Static structures */ @@ -91,6 +91,8 @@ do_crypt(void *src, void *dst, int len, u32 flags) status = ioread32(_iobase + AES_INTR_REG); while(!(status & AES_INTRA_PENDING) && --counter); + BUG_ON(!counter); + /* Clear the event */ iowrite32((status & 0xFF) | AES_INTRA_PENDING, _iobase + AES_INTR_REG); return counter ? 0 : 1; -- Evgeniy Polyakov - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html