lkml.org 
[lkml]   [2003]   [Feb]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] Re: stuff-up in pcmcia/cardbus stuff
On Tue, Feb 18, 2003 at 04:23:45AM -0500, Jeff Garzik wrote:
> Dominik Brodowski wrote:
> >Indeed. socket->pcmcia_socket (old) == socket->cls_d.s_info[0] (new)
>
> If this is true...
>
> >@@ -230,14 +230,16 @@
> > static int cardbus_suspend (struct pci_dev *dev, u32 state)
> > {
> > pci_socket_t *socket = pci_get_drvdata(dev);
> >- pcmcia_suspend_socket (socket->pcmcia_socket);
> >+ if (socket && socket->cls_d.s_info[0])
> >+ pcmcia_suspend_socket (socket->cls_d.s_info[0]);
> > return 0;
> > }
> >
> > static int cardbus_resume (struct pci_dev *dev)
> > {
> > pci_socket_t *socket = pci_get_drvdata(dev);
> >- pcmcia_resume_socket (socket->pcmcia_socket);
> >+ if (socket && socket->cls_d.s_info[0])
> >+ pcmcia_resume_socket (socket->cls_d.s_info[0]);
> > return 0;
> > }
>
>
> 1) ...why do you bother checking for NULL? Isn't NULL indicative of a
> BUG(), instead?

Well, it's only a safeguard against suspending / resuming combined with
probing or removing the device. Else it's a BUG indeed...

> 2) why are multiple s_info records allocated, when you hardcode use of
> record #0 ?
Only one s_info is actually allocated (in cs.c::pcmcia_register_socket) as
only one pcmcia/cardbus socket is attached to one pci_dev for yenta-style
devices. There are up to four pcmcia sockets to one pci_dev for i82092
devices, though. And so s_info[3] might be perfectly valid within the
i82092 driver.

Dominik

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

\
 
 \ /
  Last update: 2005-03-22 13:33    [W:0.061 / U:0.064 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site