[lkml]   [2006]   [Feb]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH 0/6] PCI legacy I/O port free driver (take2)
    Benjamin Herrenschmidt wrote:
    >>Here, there are many PCI devices that provide both I/O port and MMIO
    >>interface, and some of those devices can be handled without using I/O
    >>port interface. The reason why such devices provide I/O port interface
    >>is for compatibility to legacy OSs. So this kind of devices should
    >>work even if enough I/O port resources are not assigned. The "PCI
    >>Local Bus Specification Revision 3.0" also mentions about this topic
    >>(Please see p.44, "IMPLEMENTATION NOTE"). On the current linux,
    >>unfortunately, this kind of devices don't work if I/O port resources
    >>are not assigned, because pci_enable_device() for those devices fails.
    > Which is where the real problem is ... I'm afraid you are doing a
    > workaround for the wrong issue... do we really need to assign all
    > resources to the device at pci_enable_device() time ? Yeah, I know, that
    > sounds gross... but think about it... doesn't pci_request_region(s) look
    > like a better spot ? Or maybe we should change pci_enable_device()
    > itself to take a mask of BARs that are relevant. That would help dealing
    > with a couple of other cases of devices where some BARs really need to
    > be ignored...
    > The later is probably the best approach without breaking everything, by
    > having a new pci_enable_resources(mask) that would take a mask of BARs
    > to enable, with pci_enable_device() becoming just a call to the former
    > for all BARs ....
    > Ben.

    I guess the existing pci_enable_device_bars() is very similar to
    your pci_enable_resources(). We already discussed it at:

    Kenji Kaneshige
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2006-02-23 07:05    [W:0.022 / U:107.308 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site