Subject: Re: Kingmax KEN0100-AF
To: <>
From: David Laight <david@l8s.co.uk>
List: tech-kern
Date: 01/23/2002 12:26:25
Martin Husemann wrote:
> 
> > But this still doesn't tell us where this 'unlikely to be correct'
> > address 0x4300 came from.
> 
> David, this is a pcmcia card behind a cardbus controller.
> 
> The pcmcia card told us it would only decode 10bit, so we are free to map
> it anywhere, as long as the lower 10bit match it's expections (as expressed
> in the CIS info).
> 
> So: 0x4300 is pretty much ok in this case.

I'd like to see the justification for the 0x4300 address rather than its
usual alias 0x300.  I can think of one - but it is somewhat contorted.

It would have to go something like:

1) we setup the cardbus/pcmcia bridge to forward all addresses 0x4xxx
onto its pcmcia bus.  It 'claims' these cycles off the PCI bus using
(probably) a medium DEVSEL.
2) the PCI-ISA bridge uses the 'subtractive' DEVSEL in order to forward
cycles that no one else wants to the ISA bus.

Unfortunately a card at address 0x300 (or maybe even one at 0x280) on
the ISA bus expects to see cycles for the alias of its address at 0x4300
(or 0x4280).  Unfortunately these cycles are 'stolen' by the
cardbus/pcmcia bridge.

Choas reigns.

Now I don't think that the cardbus/pcmcia bridge cannot be configures to
pass the actual ISA address (and its aliases) the card expects from the
PCI bus to the pcmcia (aka ISA) bus.  In this case the card would be
given the address 0x300.

	David