nd.h (4d88a97aa9e8cfa6460aab119c5da60ad2267423) | nd.h (1f7df6f88b9245a7f2d0f8ecbc97dc88c8d0d8e1) |
---|---|
1/* 2 * Copyright(c) 2013-2015 Intel Corporation. All rights reserved. 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of version 2 of the GNU General Public License as 6 * published by the Free Software Foundation. 7 * 8 * This program is distributed in the hope that it will be useful, but 9 * WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 11 * General Public License for more details. 12 */ 13#ifndef __ND_H__ 14#define __ND_H__ | 1/* 2 * Copyright(c) 2013-2015 Intel Corporation. All rights reserved. 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of version 2 of the GNU General Public License as 6 * published by the Free Software Foundation. 7 * 8 * This program is distributed in the hope that it will be useful, but 9 * WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 11 * General Public License for more details. 12 */ 13#ifndef __ND_H__ 14#define __ND_H__ |
15#include <linux/libnvdimm.h> |
|
15#include <linux/device.h> 16#include <linux/mutex.h> 17#include <linux/ndctl.h> 18 19struct nvdimm_drvdata { 20 struct device *dev; 21 struct nd_cmd_get_config_size nsarea; 22 void *data; 23}; 24 | 16#include <linux/device.h> 17#include <linux/mutex.h> 18#include <linux/ndctl.h> 19 20struct nvdimm_drvdata { 21 struct device *dev; 22 struct nd_cmd_get_config_size nsarea; 23 void *data; 24}; 25 |
26struct nd_region { 27 struct device dev; 28 u16 ndr_mappings; 29 u64 ndr_size; 30 u64 ndr_start; 31 int id; 32 void *provider_data; 33 struct nd_mapping mapping[0]; 34}; 35 |
|
25enum nd_async_mode { 26 ND_SYNC, 27 ND_ASYNC, 28}; 29 30void nd_device_register(struct device *dev); 31void nd_device_unregister(struct device *dev, enum nd_async_mode mode); 32int __init nvdimm_init(void); 33void nvdimm_exit(void); 34int nvdimm_init_nsarea(struct nvdimm_drvdata *ndd); 35int nvdimm_init_config_data(struct nvdimm_drvdata *ndd); 36#endif /* __ND_H__ */ | 36enum nd_async_mode { 37 ND_SYNC, 38 ND_ASYNC, 39}; 40 41void nd_device_register(struct device *dev); 42void nd_device_unregister(struct device *dev, enum nd_async_mode mode); 43int __init nvdimm_init(void); 44void nvdimm_exit(void); 45int nvdimm_init_nsarea(struct nvdimm_drvdata *ndd); 46int nvdimm_init_config_data(struct nvdimm_drvdata *ndd); 47#endif /* __ND_H__ */ |