Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Feb 2000 11:37:45 +0100 (CET)
From:      hm@kts.org (Hellmuth Michaelis)
To:        dfr@nlsystems.com (Doug Rabson)
Cc:        current@FreeBSD.ORG, freebsd-isdn@FreeBSD.ORG
Subject:   Re: Big ATA problems
Message-ID:  <20000220103745.EB14A1F17@bert.kts.org>
In-Reply-To: <Pine.BSF.4.21.0002200917410.77743-100000@salmon.nlsystems.com> from Doug Rabson at "Feb 20, 2000  9:18:57 am"

next in thread | previous in thread | raw e-mail | index | archive | help
Doug Rabson wrote:

> > atapci0: <VIA 82C586 ATA33 controller> port 0xe000-0xe00f at device 7.1 on
> > pci0
> > ata0: at 0x1f0 irq 14 on atapci0
> > ata1: at 0x170 irq 15 on atapci0
> > ...
> > isic0: Error allocating io at 0x160 for Teles S0/16.3!
> > 
> > While I was able to use the Teles again by changing it's default IO port I
> > think there will be some people who will find it cumbersome to have to
> > change the IO on a card that was working fine before.
> > 
> > I feel this is a newbus issue with the ATA driver and/or maybe the i4b
> > driver doesn't really need that many IO ports so I'm sending this email to
> > both parties.
> 
> This is a bug in the isic driver. I'm sure it doesn't use every port in
> that range so it needs to split the range in to two or more pieces and
> only allocate ports which it actually needs.

How do you come to that conclusion ?

A typical isic hardware has an ISAC and an HSCX chip onboard. The ISAC
chip does the D-channel handling and uses offsets 0-0x2b and 0x30-0x3b,
the HSCX (B-channels) uses offsets 0-0x3b and 0x40-0x73.

The card in question allocates 3 portranges for this uses with each 0x40
bytes in length. 

In case there is is already an IDE controller allocated at 0x170 and a
Teles 16.3 tries to allocate a range of 0x40 at 0x160 it cannot do so.

So where is the bug ?

This all looks perfectly reasonable to me with the exception that we could
start argueing about whether it would be reasonable to split the allocation
ranges for the ISAC and to save (if at all possible, there are some more
registers at the end of the HSCX on the card) some bytes in the HSCX case.

hellmuth
-- 
Hellmuth Michaelis                hm@kts.org                   Hamburg, Europe
 We all live in a yellow subroutine, yellow subroutine, yellow subroutine ...



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-isdn" in the body of the message




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