15 size_t getBlockCount()
const override {
22 uint64_t
doRead(uint64_t location)
override;
23 uint64_t doWrite(uint64_t location)
override;
24 uint64_t
doWriteDirect(uint64_t location, uintptr_t page)
override;
25 uint64_t doWriteDirectPhysical(uint64_t location, uintptr_t page,
26 physical_uintptr_t physical)
override;
27 uint64_t doSync(uint64_t location)
override;
28 bool supportsDirectCacheWrite()
const override {
34 uint32_t namespaceId()
const {
39 Device* dmaDevice()
const override;
40 bool supportsBufferTransfers()
const override {
43 bool transferBuffer(uint64_t location,
void* buffer,
size_t length,
bool writing)
override;
44 bool transferWriteBuffers(WriteBuffer* buffers,
size_t count)
override;
48 size_t validPageLength(uint64_t location)
const;
50 const uint32_t m_Nsid;