Re: Re: Re: Re: Re: Re: Re: Re: Re: [PATCH 11/18] pcmcia: do not use io_req_t when calling pcmcia_request_io()

2010-09-18 Thread Dominik Brodowski
Hey,

On Sat, Sep 18, 2010 at 09:50:31PM +0900, Komuro wrote:
> >Also on re-inserting the card (with 2.6.36-rc4+ as of today)?
> 
> I tried the 2.6.36-rc4-git4.

Thanks for testing!

> >elese we wouldn't see the "is a 16550A" message, right?
> 
> Even if the COR(Configuration Option Register) of irq is not properly setup,
> we can see the above message...

Nothing relating to setting CISREG_COR (at least on pcnet_cs) changed, and
serial_cs does not modify CISREG_COR on such pseudo-multifunction devices.

Would it be possible for you to re-check plain 2.6.35 and 2.6.35 with the
pcmcia patchset availble at 
http://userweb.kernel.org/~brodo/pcmcia-2.6.35.diff
?

If this works, we know that it's a serial/tty core issue, else it's indeed a
PCMCIA issue.

Pavel: has the bt / pcmcia issue you were seeing with -rc1 been solved? If
not, could you try out 2.6.35 with this bigdiff as well, please?

Thanks & best,
Dominik

___
Linux PCMCIA reimplementation list
http://lists.infradead.org/mailman/listinfo/linux-pcmcia


Re: Re: Re: Re: Re: Re: Re: Re: Re: [PATCH 11/18] pcmcia: do not use io_req_t when calling pcmcia_request_io()

2010-09-18 Thread Komuro
Hi,

>Also on re-inserting the card (with 2.6.36-rc4+ as of today)?

I tried the 2.6.36-rc4-git4.
The serial part still does not work,  before and after re-inserting the card.



>elese we wouldn't see the "is a 16550A" message, right?

Even if the COR(Configuration Option Register) of irq is not properly setup,
we can see the above message...


>Hey,
>
>On Sat, Sep 18, 2010 at 07:20:31PM +0900, Komuro wrote:
>> With this patch, fmvj18x_cs based card works (both network and serial).
>
>good. Will push the patch upstream, then.
>
>> but Serial part of Xircom card still does not work.
>
>Also on re-inserting the card (with 2.6.36-rc4+ as of today)?
>
>> I think the reason is irq or io_width or io_lines is not setuped properly
>> for Xircom-card by pcmcia_core.
>
>But those values are the same for 2.6.35 and 2.6.36-rc4+, else we wouldn't
>see the same 
>
>eth0: Xircom: port 0x300, irq 18, hwaddr 00:10:a4:f3:db:02
>0.1: ttyS3 at I/O 0x2e8 (irq = 18) is a 16550A
>
>messages. Furthermore, at least some access to the serial part does work,
>elese we wouldn't see the "is a 16550A" message, right?
>
>Best,
>   Dominik


___
Linux PCMCIA reimplementation list
http://lists.infradead.org/mailman/listinfo/linux-pcmcia


Re: Re: Re: Re: Re: Re: Re: Re: [PATCH 11/18] pcmcia: do not use io_req_t when calling pcmcia_request_io()

2010-09-18 Thread Dominik Brodowski
Hey,

On Sat, Sep 18, 2010 at 07:20:31PM +0900, Komuro wrote:
> With this patch, fmvj18x_cs based card works (both network and serial).

good. Will push the patch upstream, then.

> but Serial part of Xircom card still does not work.

Also on re-inserting the card (with 2.6.36-rc4+ as of today)?

> I think the reason is irq or io_width or io_lines is not setuped properly
> for Xircom-card by pcmcia_core.

But those values are the same for 2.6.35 and 2.6.36-rc4+, else we wouldn't
see the same 

eth0: Xircom: port 0x300, irq 18, hwaddr 00:10:a4:f3:db:02
0.1: ttyS3 at I/O 0x2e8 (irq = 18) is a 16550A

messages. Furthermore, at least some access to the serial part does work,
elese we wouldn't see the "is a 16550A" message, right?

Best,
Dominik

___
Linux PCMCIA reimplementation list
http://lists.infradead.org/mailman/listinfo/linux-pcmcia


Re: Re: Re: Re: Re: Re: Re: Re: [PATCH 11/18] pcmcia: do not use io_req_t when calling pcmcia_request_io()

2010-09-18 Thread Komuro
Hi,

With this patch, fmvj18x_cs based card works (both network and serial).

but Serial part of Xircom card still does not work.

I think the reason is irq or io_width or io_lines is not setuped properly
for Xircom-card by pcmcia_core.



>
>
>Hey,
>
>On Sat, Sep 18, 2010 at 11:48:32AM +0900, Komuro wrote:
>> Attached file is dmesg of another multi-function card(fmvj18x_cs)
>
>Thanks for the debug output -- this helps a lot!
>
>> This card works with 2.6.35
>> but does not work with 2.6.36rc3(+patch).
>
>does this patch help (at least with the network function?)?
>
>Best,
>   Dominik
>
>
>commit 9e7d4841d766f96a4e28a51c434485695d6a60ca
>Author: Dominik Brodowski 
>Date:   Sat Sep 18 10:19:13 2010 +0200
>
>pcmcia: preserve configuration information if request_io fails partly
>
>If pcmcia_request_io() only fails partly -- for the second of two
>requested resources -- preserve the configuration settings for the
>first one.
>
>Signed-off-by: Dominik Brodowski 
>
>diff --git a/drivers/pcmcia/pcmcia_resource.c b/drivers/pcmcia/pcmcia_resourc
e.c
>index a5c1765..9ba4dad 100644
>--- a/drivers/pcmcia/pcmcia_resource.c
>+++ b/drivers/pcmcia/pcmcia_resource.c
>@@ -595,7 +595,13 @@ int pcmcia_request_io(struct pcmcia_device *p_dev)
>   if (c->io[1].end) {
>   ret = alloc_io_space(s, &c->io[1], p_dev->io_lines);
>   if (ret) {
>+  struct resource tmp = c->io[0];
>+  /* release the previously allocated resource */
>   release_io_space(s, &c->io[0]);
>+  /* but preserve the settings, for they worked... */
>+  c->io[0].end = resource_size(&tmp);
>+  c->io[0].start = tmp.start;
>+  c->io[0].flags = tmp.flags;
>   goto out;
>   }
>   } else


___
Linux PCMCIA reimplementation list
http://lists.infradead.org/mailman/listinfo/linux-pcmcia


Re: Re: Re: Re: Re: Re: [PATCH 11/18] pcmcia: do not use io_req_t when calling pcmcia_request_io()

2010-09-18 Thread Dominik Brodowski
Hey,

with 2.6.36-rc4+ (as of today), I see a (similar?) issue: When inserting
a multifunction card after reboot for the first time, the serial part does
not work. After re-inserting the card, it works. Re-loading the PCMCIA
modules does not make the bug re-appear, so I presume the issue to be
related to the serial layer. Could you verify whether it also works on
2.6.36-rc4+ for you, at least if you re-insert the card?

Will try to investigate further as to the cause(s) of this bug.

Best,
Dominik

___
Linux PCMCIA reimplementation list
http://lists.infradead.org/mailman/listinfo/linux-pcmcia


Re: [PATCH 09/15] pcmcia: Documentation update

2010-09-18 Thread Dominik Brodowski
On Fri, Sep 17, 2010 at 02:06:33PM -0700, Randy Dunlap wrote:
> On Fri,  3 Sep 2010 12:57:08 +0200 Dominik Brodowski wrote:
> 
> > Fill in missing descriptions and update some others for functions in
> > pcmcia_resource.c.
> > 
> > Signed-off-by: Dominik Brodowski 
> 
> kernel-doc notation (beginning with /**) needs to have function parameters
> listed also, please.  Otherwise it generates warnings when used in docbook.
> 
> OK, I see a few of the functions have that, but they have a '-' following
> the parameter name instead of a ':'.  Please change them to ':'
> (but yes, the function name itself is followed by a '-').

Thanks, fixed.

Best,
Dominik

___
Linux PCMCIA reimplementation list
http://lists.infradead.org/mailman/listinfo/linux-pcmcia


Re: Re: Re: Re: Re: Re: Re: [PATCH 11/18] pcmcia: do not use io_req_t when calling pcmcia_request_io()

2010-09-18 Thread Dominik Brodowski
Hey,

On Sat, Sep 18, 2010 at 11:48:32AM +0900, Komuro wrote:
> Attached file is dmesg of another multi-function card(fmvj18x_cs)

Thanks for the debug output -- this helps a lot!

> This card works with 2.6.35
> but does not work with 2.6.36rc3(+patch).

does this patch help (at least with the network function?)?

Best,
Dominik


commit 9e7d4841d766f96a4e28a51c434485695d6a60ca
Author: Dominik Brodowski 
Date:   Sat Sep 18 10:19:13 2010 +0200

pcmcia: preserve configuration information if request_io fails partly

If pcmcia_request_io() only fails partly -- for the second of two
requested resources -- preserve the configuration settings for the
first one.

Signed-off-by: Dominik Brodowski 

diff --git a/drivers/pcmcia/pcmcia_resource.c b/drivers/pcmcia/pcmcia_resource.c
index a5c1765..9ba4dad 100644
--- a/drivers/pcmcia/pcmcia_resource.c
+++ b/drivers/pcmcia/pcmcia_resource.c
@@ -595,7 +595,13 @@ int pcmcia_request_io(struct pcmcia_device *p_dev)
if (c->io[1].end) {
ret = alloc_io_space(s, &c->io[1], p_dev->io_lines);
if (ret) {
+   struct resource tmp = c->io[0];
+   /* release the previously allocated resource */
release_io_space(s, &c->io[0]);
+   /* but preserve the settings, for they worked... */
+   c->io[0].end = resource_size(&tmp);
+   c->io[0].start = tmp.start;
+   c->io[0].flags = tmp.flags;
goto out;
}
} else

___
Linux PCMCIA reimplementation list
http://lists.infradead.org/mailman/listinfo/linux-pcmcia