• Bjorn Helgaas's avatar
    PCI: Stop clearing bridge Secondary Status when setting up I/O aperture · 5b764b83
    Bjorn Helgaas authored
    pci_setup_bridge_io() accessed PCI_IO_BASE and PCI_IO_LIMIT using dword
    (32-bit) reads and writes, which also access the Secondary Status register.
    Since the Secondary Status register is in the upper 16 bits of the dword,
    and we preserved those upper 16 bits, this had the effect of clearing any
    of the write-1-to-clear bits that happened to be set in the Secondary
    Status register.
    
    That's not what we want, so use word (16-bit) accesses to update only
    PCI_IO_BASE and PCI_IO_LIMIT.
    Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
    5b764b83
setup-bus.c 43.4 KB