Re: Problems with PCMCIA (Texas Instruments PCI1450)

From: Daniel Ritz
Date: Fri Sep 05 2003 - 15:24:06 EST


On Fri September 5 2003 21:54, Russell King wrote:
> On Fri, Sep 05, 2003 at 09:40:27PM +0200, Daniel Ritz wrote:
> > On Fri September 5 2003 20:38, Russell King wrote:
> > > On Fri, Sep 05, 2003 at 08:19:28PM +0200, Daniel Ritz wrote:
> > > > ok, now i can reproduce the problem on my ti1410 too. on boot detection
> > > > works fine with an UP kernel and fails with an SMP kernel. thanx for the
> > > > hint.
> > > >
> > > > i go to look at the csets a bit and try to find out more....
> > > > (i think i know which change...)
> > >
> > > Care to provide a hint?
> >
> > yes. just tested. patch below makes on boot detection with a SMP kernel
> > working again (for me). which is nice, but i don't see why it is better
> > that way...
>
> Ok, now I need to hear from Sven (and others) to see if this patch fixes
> their problems. Also, are these other people running a SMP kernel as
> well?
>
> Meanwhile, I'm wondering if we have a timing problem here. Can you check
> whether adding a mdelay(1) just after the BUG_ON in the original code
> fixes the problem?

no effect. i tried that before with loooong sleeps (1 second) w/o any effect...

>
> > ===== cs.c 1.56 vs edited =====
> > --- 1.56/drivers/pcmcia/cs.c Sun Aug 3 14:48:43 2003
> > +++ edited/cs.c Fri Sep 5 21:42:09 2003
> > @@ -316,7 +316,6 @@
> >
> > wait_for_completion(&socket->thread_done);
> > BUG_ON(!socket->thread);
> > - pcmcia_parse_events(socket, SS_DETECT);
> >
> > return 0;
> > }
> > @@ -1524,6 +1523,9 @@
> > if (client == NULL)
> > return CS_OUT_OF_RESOURCE;
> >
> > + if (++s->real_clients == 1)
> > + pcmcia_parse_events(s, SS_DETECT);
> > +
> > *handle = client;
> > client->state &= ~CLIENT_UNBOUND;
> > client->Socket = s;
> >
>
> --
> Russell King (rmk@xxxxxxxxxxxxxxxx) 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
>
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/