• Home
  • Raw
  • Download

Lines Matching refs:nvm

26 	struct tb_nvm *nvm;  in tb_nvm_alloc()  local
29 nvm = kzalloc(sizeof(*nvm), GFP_KERNEL); in tb_nvm_alloc()
30 if (!nvm) in tb_nvm_alloc()
35 kfree(nvm); in tb_nvm_alloc()
39 nvm->id = ret; in tb_nvm_alloc()
40 nvm->dev = dev; in tb_nvm_alloc()
42 return nvm; in tb_nvm_alloc()
57 int tb_nvm_add_active(struct tb_nvm *nvm, size_t size, nvmem_reg_read_t reg_read) in tb_nvm_add_active() argument
67 config.id = nvm->id; in tb_nvm_add_active()
71 config.dev = nvm->dev; in tb_nvm_add_active()
73 config.priv = nvm; in tb_nvm_add_active()
79 nvm->active = nvmem; in tb_nvm_add_active()
94 int tb_nvm_write_buf(struct tb_nvm *nvm, unsigned int offset, void *val, in tb_nvm_write_buf() argument
97 if (!nvm->buf) { in tb_nvm_write_buf()
98 nvm->buf = vmalloc(NVM_MAX_SIZE); in tb_nvm_write_buf()
99 if (!nvm->buf) in tb_nvm_write_buf()
103 nvm->flushed = false; in tb_nvm_write_buf()
104 nvm->buf_data_size = offset + bytes; in tb_nvm_write_buf()
105 memcpy(nvm->buf + offset, val, bytes); in tb_nvm_write_buf()
121 int tb_nvm_add_non_active(struct tb_nvm *nvm, size_t size, in tb_nvm_add_non_active() argument
132 config.id = nvm->id; in tb_nvm_add_non_active()
136 config.dev = nvm->dev; in tb_nvm_add_non_active()
138 config.priv = nvm; in tb_nvm_add_non_active()
144 nvm->non_active = nvmem; in tb_nvm_add_non_active()
154 void tb_nvm_free(struct tb_nvm *nvm) in tb_nvm_free() argument
156 if (nvm) { in tb_nvm_free()
157 if (nvm->non_active) in tb_nvm_free()
158 nvmem_unregister(nvm->non_active); in tb_nvm_free()
159 if (nvm->active) in tb_nvm_free()
160 nvmem_unregister(nvm->active); in tb_nvm_free()
161 vfree(nvm->buf); in tb_nvm_free()
162 ida_simple_remove(&nvm_ida, nvm->id); in tb_nvm_free()
164 kfree(nvm); in tb_nvm_free()