On Tue, 31 Dec 2002 20:18:31 +0100 (CET), Jimi wrote: >>Both PCCard and CardBus have only two IO windows and thus >>PCCards/Cardbus cards won't request more than two IO regions at a time. > >But there may be multiple PCMCIA devices. So if I got 2 devices and both request 2 >specific I/O locations, the >cardbus controller isn't able to fullfill the request.
One device per slot, one slot per PCI function, and 2 mem and 2 IO windows per function. Multifunction devices have to fit into this scheme. IIRC they have offsets within their windows to address the different subfunctions. >>No, you don't! Did you ever write a PCCard/Cardbus enabled driver? I >>have limited knowledge on Cardbus, but may be Veit will fill the void. > >I need to know how many resources a device needs, otherwise I can't adjust the >resource window. >That's why I'm putting all resource requirements of a certain device into detection >area. Sure, but never forget, some requirements are imposed by the bridge rather than the device (even if it thinks otherwise!). >>>On normal (non-PCI) PCMCIA controllers -> yes you are right. The driver will do it. >On cardbus, there is this >>>resource window crap, so it's not do-able by the actual cardbus driver. The cardbus >driver needs to get >>>configured on system startup, not later. And the window may not get adjusted. >>Where did you learn that from? > >Well, if I change the resource window during run-time, I would need to reconfigure >the PCMCIA devices, don't >I? Yes, but I don't see a reason why you have to reconfigure the resource window in the first place? The resources are setup by the driver at card insertions (real and artificial ones) and teared down at card removals (real and artificial ones). >(talking about cardbus again) >e.g. I/O resource window is 0xE400 -> 0xEFFF >1 card is inserted at system startup and takes up all the space. Also another PCI >device sits at >0xE000->0xE3FF. User inserts new card. What should I do now? I can not enlarge the >window in any way, so >I would need to adjust it to e.g. 0xD000 -> 0xDFFF. But there is already a card using >the 0xE400 resources, >so I can't change it. I would need to also reconfigure the 1st cards resources. If >the driver is point-enabled, >then it actually thinks the device is fixed...fixed at 0xE400. So if I change the >window, the first card would >stop to work. > >If I'm wrong with this, I'm sorry. The windows are independent. Each card has one associated bridge with a set of io and mem windows. Ciao, Dani ----------- To unsubscribe yourself from this list, send the following message to [EMAIL PROTECTED] unsubscribe acpi-os2 end