1*18a8edbfSAugustin Cavalierstatic void device_destroy(struct vm_store *store) 2*18a8edbfSAugustin Cavalier Frees the space associated with this store 3*18a8edbfSAugustin Cavalier 4*18a8edbfSAugustin Cavalierstatic off_t device_commit(struct vm_store *store, off_t size) 5*18a8edbfSAugustin Cavalier Sets this store's commited size to size. 6*18a8edbfSAugustin Cavalier 7*18a8edbfSAugustin Cavalierstatic int device_has_page(struct vm_store *store, off_t offset) 8*18a8edbfSAugustin Cavalier Returns 0 9*18a8edbfSAugustin Cavalier 10*18a8edbfSAugustin Cavalierstatic ssize_t device_read(struct vm_store *store, off_t offset, iovecs *vecs) 11*18a8edbfSAugustin Cavalier Returns unimplemented. 12*18a8edbfSAugustin Cavalier 13*18a8edbfSAugustin Cavalierstatic ssize_t device_write(struct vm_store *store, off_t offset, iovecs *vecs) 14*18a8edbfSAugustin Cavalier Returns 0 15*18a8edbfSAugustin Cavalier 16*18a8edbfSAugustin Cavalierstatic int device_fault(struct vm_store *store, struct vm_address_space *aspace, off_t offset) 17*18a8edbfSAugustin Cavalier Should be called when a page is not mapped in. Locks the translation map, Finds the region in the cache that contains this page and maps it in. Unlocks the cache. 18*18a8edbfSAugustin Cavalier 19*18a8edbfSAugustin Cavaliervm_store *vm_store_create_device(addr base_addr) 20*18a8edbfSAugustin Cavalier Allocates memory for the vm_store structure, plus the data_store_device structure. Sets cache to null, and data to the device_store_data. Sets the device_store_data's base address to the base address passed in.