- Support Prefetchable Memory
- Use the correct rman when allocating memory and ioports
- Translate PCI addresses in bus_alloc_resource to allow physical addresses that are different than pci addresses.
Details
Details
- Reviewers
crowston_protonmail.com - Group Reviewers
arm64 - Commits
- rS362285: Clean up the pci host generic driver
Diff Detail
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
sys/dev/pci/pci_host_generic.c | ||
---|---|---|
364 ↗ | (On Diff #72622) | Actually, another niggle I find while trying to adopt this patch today. In pci_pci.c, when allocating the bridge window, we try to allocate start=0x0, end=0xfffff. That's always going to fail if the pci memory range is [0xf8000000,0xfbffffff] (as in the case of the rpi controller). Somehow we need to adjust that bridge window region into a pci address range. Also, it seems that we don't actually check if sc->ranges[i] is large enough to hold the requested [start, end] resource. |
sys/dev/pci/pci_host_generic.c | ||
---|---|---|
364 ↗ | (On Diff #72622) | Can you get the raw values of the PCIR_MEMBASE_1 and PCIR_MEMLIMIT_1 registers. |