CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2026/05/01 14:03:58
Modified files:
sys/arch/hppa/dev: sti_sgc.c
sys/dev/ic : sti.c stireg.h stivar.h
sys/dev/pci : sti_pci.c
Log message:
More work to handle devices which don't have a copy of the STI ROM available
through one of the regular BARs, and have a shared decoder for BAR and ROM.
Such devices can't have their BAR accessed when the ROM is mapped. In this case,
we make a memory copy of the ROM contents and point the STI routines to it,
without leaving the ROM mapped.
This ought to be able to make the FireGL-UX work, but unfortunately it still
hangs the PCI bus when accessing the frame buffer memory at low addresses.
A good side effect of these changes, though, is that we no longer keep a
bus_space mapping on the PCI ROM after initial ROM grovelling. On systems
where the PDC firmware maps all PCI ROM at the same address (since only one
may be active at any time), this lets multiple STI PCI devices attach and
operate correctly, rather than only one attaching and the others complaining
being unable to map the ROM, with errno being EAGAIN.