Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 02 May 2004 09:11:59 -0600 (MDT)
From:      "M. Warner Losh" <imp@bsdimp.com>
To:        freebsd@newipnet.com
Cc:        freebsd-mobile@freebsd.org
Subject:   Re: Modem + Network in Xircom cards, and maybe others
Message-ID:  <20040502.091159.12222881.imp@bsdimp.com>
In-Reply-To: <200405021259230046.12648609@192.168.128.16>
References:  <200405021259230046.12648609@192.168.128.16>

next in thread | previous in thread | raw e-mail | index | archive | help
In message: <200405021259230046.12648609@192.168.128.16>
            "Carlos Velasco" <freebsd@newipnet.com> writes:
: Xircom cards with multiple functions are not MFC compliant, that makes them
: to fail in CURRENT and only one function works (last one in the CIS,
: Network).
: 
: I have patched pccard to provide support for both functions. I have
: followed this behaviour:
: 
: /* We have a non-MFC compliant card, it puts more
:  * than 1 FUNCID in the CIS without LONGLINK.
:  * a) We put the functions in the list ala MFC.
:  * b) Copy last CFG entry for previous function,
:  *    not sure if this is right, but usually works.
:  */
: 
: Also I have needed to tweak if_xe_pccard because it was claiming itself as
: the right driver when the function was serial and also another tweak to
: proper handling of matches.
: 
: Patch works, however I'm seeing buffer overflows in sio when I issue a
: "ATI11" command with minicom (WinXP works fine wth this):
: sio4: 118 more interrupt-level buffer overflows (total 118)
: sio4: 162 more interrupt-level buffer overflows (total 280)
: 
: In my laptop, cbb is taking irq11:
: sio4: <Xircom CreditCard Ethernet 10/100 + Modem 56> at port 0x2e8-0x2ef
: irq 11 function 0 config 39 on pccard0
: sio4: type 16550A
: sio4: unable to activate interrupt in fast mode - using normal mode
: ...
: xe0: <Xircom CreditCard Ethernet 10/100 + Modem 56> at port 0x100-0x107 irq
: 11 function 1 config 63 on pccard0
: xe0: [GIANT-LOCKED]
: xe0: Xircom CreditCard Ethernet 10/100 + Modem 56, version 0x55/0x05,
: 100Mbps capable, with modem
: xe0: Ethernet address: 00:10:a4:f6:2f:73
: 
: Issuing vmstat -i, I don't think irq11 is handling too many interrupts:
: interrupt                          total       rate
: irq0: clk                           9735         98
: irq1: atkbd0                         410          4
: irq3: sio1                            24          0
: irq4: sio0                             2          0
: irq5: pcm0                             1          0
: irq6: fdc0                             2          0
: irq7: ppc0                             1          0
: irq8: rtc                          12461        125
: irq9: acpi0                            1          0
: irq11: cbb0 cbb1+                    167          1
: irq13: npx0                            1          0
: irq14: ata0                         2863         28
: irq15: ata1                           58          0
: Total                              25726        259
: 
: Also, I thought that it could be the network function to be the cause of
: overflow problem, so I hacked the code to leave only the sio alone, it
: didn't show any difference.
: I would need some help with this problem.
: 
: Warner, I still needed to patch pccard to force 64k alignment for my TI1225
: for this to work as my laptop hangs-up if i don't do it.

Have you confirmed that the extra MFC things that we do are
appropriate fro the xircom cards?  For real MFC cards we have to do a
dance with acking interrupts at the pccard layer.

I'll look at the rest of this patch to see how well it is going to
work with the wide range of cards that I have here...

Warner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040502.091159.12222881.imp>