20#include "pedigree/kernel/LockGuard.h"
21#include "pedigree/kernel/processor/IoPort.h"
22#include "pedigree/kernel/processor/IoPortManager.h"
23#include "pedigree/kernel/processor/Processor.h"
24#include "pedigree/kernel/utilities/new"
76 while (IoPorts.
count() != 0) {
Manages hardware I/O port (de)allocations.
bool allocate(IoPort *Port, io_port_t ioPort, size_t size)
void initialise(io_port_t ioPortBase, size_t size) INITIALISATION_ONLY
void allocateIoPortList(Vector< IoPortInfo * > &IoPorts)
void freeIoPortList(Vector< IoPortInfo * > &IoPorts)
Vector< IoPort * > m_UsedIoPorts
RangeList< uint32_t > m_FreeIoPorts
static IoPortManager m_Instance
IoPortManager() INITIALISATION_ONLY
virtual size_t size() const
static size_t isInitialised()
void free(T address, T length, bool merge=true)
bool allocateSpecific(T address, T length)
A vector / dynamic array.
void pushBack(const T &value)