From owner-freebsd-current Mon Dec 14 17:36:58 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id RAA16078 for freebsd-current-outgoing; Mon, 14 Dec 1998 17:36:58 -0800 (PST) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from dingo.cdrom.com (goldfish.pht.co.jp [210.171.55.12]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id RAA16009 for ; Mon, 14 Dec 1998 17:36:50 -0800 (PST) (envelope-from mike@dingo.cdrom.com) Received: from dingo.cdrom.com (localhost [127.0.0.1]) by dingo.cdrom.com (8.9.1/8.8.8) with ESMTP id CAA00320; Mon, 14 Dec 1998 02:54:58 -0800 (PST) (envelope-from mike@dingo.cdrom.com) Message-Id: <199812141054.CAA00320@dingo.cdrom.com> X-Mailer: exmh version 2.0.2 2/24/98 To: MIHIRA Sanpei Yoshiro cc: mike@smith.net.au, current@FreeBSD.ORG Subject: Re: PAO Integration? In-reply-to: Your message of "Sat, 12 Dec 1998 16:06:54 +0900." <199812120706.QAA22991@lavender.sanpei.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Mon, 14 Dec 1998 02:54:58 -0800 From: Mike Smith Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > mike@smith.net.au wrote: > >> > > >> > Do NE2000 Compatible PCMCIA cards work under PAO3, as it is now? > >> > If so, is the development snapshot available anywhere? > >> > >> They work fine under stock 2.2 and 3.0 (this message is being sent > >> using one). > Content-Type: Text/Plain; charset=us-ascii > Content-Transfer-Encoding: 7bit > > I have three NE2000 compatible PCMCIA cards. > I can use two cards with FreeBSD-current which added some lines to > /etc/pccard.conf, but can't use another one. > Under PAO, I can use all these cards. > > I compare these CIS via pccardc dumpcis command. > o unusable cards has memory descriptor. > o usable cards does not have it. > > Tuple #6, code = 0x1b (Configuration entry), length = 25 > 000: c1 81 78 ca 61 00 03 0f 10 03 0f 30 fc be c9 04 > 010: 00 00 40 0d 40 40 00 40 0d > Config index = 0x1(default) > Interface byte = 0x81 (I/O) wait signal supported > Card decodes 10 address lines, limited 8/16 Bit I/O > I/O address # 1: block start = 0x300 block length = 0x10 > I/O address # 2: block start = 0x310 block length = 0x10 > IRQ modes: Level > IRQs: 2 3 4 5 6 7 9 10 11 12 13 15 > Memory descriptor 1 <------------------- > blk length = 0x400 card addr = 0x000 host addr = 0xd4000 > Memory descriptor 2 <------------------- > blk length = 0x4000 card addr = 0x4000 host addr = 0xd4000 > ---------- > Review pccardd. > PAO's assign_io function in pccardd/cardd.c has related code but > it's comment is ``XXX -- dirty hack for some 'ed' cards that have > incomplete iomem CIS tupples.'' > But FreeBSD-current's assign_io function does not have it. > > I think that Mike's card does not have Memory descriptor.. Is > that right? Yes; there's a long-standing bug in the way that the stock pccardd deals with memory blocks < 4096 bytes, where it tries to allocate a zero-sized window, which fails and thus the card is rejected. The memory region in question's not actually used for the card's operation; the simplest fix would be to correct pccardd to either expand any window < 4096 to 4096 or to just not map it (bad but simpler). -- \\ Sometimes you're ahead, \\ Mike Smith \\ sometimes you're behind. \\ mike@smith.net.au \\ The race is long, and in the \\ msmith@freebsd.org \\ end it's only with yourself. \\ msmith@cdrom.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message