Bug : Can't read CIS (2.6.0-test4)

Russell King rmk at arm.linux.org.uk
Sat Sep 6 11:32:00 BST 2003


On Fri, Sep 05, 2003 at 05:55:52PM -0700, Jean Tourrilhes wrote:
> 	If anybody has other suggestions for debugging that, I'm a
> taker.

Ahhhhhhh, I see _exactly_ what's causing this problem.  It's a nice race
condition between cs.c initialising the socket, and ds.c loading.

We appear to be doing this:
- detect card
- apply power
- assert reset
- deassert reset, but before we've finished resetting...
  - load ds
  - setup CIS maps
  - try to read CIS

but because the reset hasn't finished, we read rubbish.

Also, it seems that we report an insertion of a card into a socket in
ds.c before cs.c has finished setting it up.  Gah.  Ok, now I know exactly
what's going on, I'll see about fixing the damned thing.

Thanks.

-- 
Russell King (rmk at arm.linux.org.uk)	http://www.arm.linux.org.uk/personal/
Linux kernel maintainer of:
  2.6 ARM Linux   - http://www.arm.linux.org.uk/
  2.6 PCMCIA      - http://pcmcia.arm.linux.org.uk/
  2.6 Serial core



More information about the linux-pcmcia mailing list