From: Greg Kroah-Hartman Date: Fri, 28 Aug 2009 23:23:49 +0000 (-0700) Subject: Staging: hv: move StorVscApi.h X-Git-Tag: firefly_0821_release~12948^2~324 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=731a7884f63586184feea6ecd418f1732d2d5161;p=firefly-linux-kernel-4.4.55.git Staging: hv: move StorVscApi.h Move it out of the include subdirectory. No code changes here, just file movements. Cc: Hank Janssen Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/hv/StorVsc.c b/drivers/staging/hv/StorVsc.c index 82686dae78ac..e78f9abe70e3 100644 --- a/drivers/staging/hv/StorVsc.c +++ b/drivers/staging/hv/StorVsc.c @@ -27,7 +27,7 @@ #include #include "osd.h" #include "logging.h" -#include "include/StorVscApi.h" +#include "StorVscApi.h" #include "include/VmbusPacketFormat.h" #include "vstorage.h" diff --git a/drivers/staging/hv/StorVscApi.h b/drivers/staging/hv/StorVscApi.h new file mode 100644 index 000000000000..6771e2b80a0b --- /dev/null +++ b/drivers/staging/hv/StorVscApi.h @@ -0,0 +1,120 @@ +/* + * + * Copyright (c) 2009, Microsoft Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., 59 Temple + * Place - Suite 330, Boston, MA 02111-1307 USA. + * + * Authors: + * Haiyang Zhang + * Hank Janssen + * + */ + + +#ifndef _STORVSC_API_H_ +#define _STORVSC_API_H_ + +#include "include/VmbusApi.h" + +/* Defines */ +#define STORVSC_RING_BUFFER_SIZE (10*PAGE_SIZE) +#define BLKVSC_RING_BUFFER_SIZE (20*PAGE_SIZE) + +#define STORVSC_MAX_IO_REQUESTS 64 + +/* + * In Hyper-V, each port/path/target maps to 1 scsi host adapter. In + * reality, the path/target is not used (ie always set to 0) so our + * scsi host adapter essentially has 1 bus with 1 target that contains + * up to 256 luns. + */ +#define STORVSC_MAX_LUNS_PER_TARGET 64 +#define STORVSC_MAX_TARGETS 1 +#define STORVSC_MAX_CHANNELS 1 + +struct hv_storvsc_request; + +/* Data types */ +typedef int (*PFN_ON_IO_REQUEST)(struct hv_device *Device, + struct hv_storvsc_request *Request); +typedef void (*PFN_ON_IO_REQUEST_COMPLTN)(struct hv_storvsc_request *Request); + +typedef int (*PFN_ON_HOST_RESET)(struct hv_device *Device); +typedef void (*PFN_ON_HOST_RESCAN)(struct hv_device *Device); + +/* Matches Windows-end */ +enum storvsc_request_type{ + WRITE_TYPE, + READ_TYPE, + UNKNOWN_TYPE, +}; + +struct hv_storvsc_request { + enum storvsc_request_type Type; + u32 Host; + u32 Bus; + u32 TargetId; + u32 LunId; + u8 *Cdb; + u32 CdbLen; + u32 Status; + u32 BytesXfer; + + unsigned char *SenseBuffer; + u32 SenseBufferSize; + + void *Context; + + PFN_ON_IO_REQUEST_COMPLTN OnIOCompletion; + + /* This points to the memory after DataBuffer */ + void *Extension; + + struct hv_multipage_buffer DataBuffer; +}; + +/* Represents the block vsc driver */ +struct storvsc_driver_object { + /* Must be the first field */ + /* Which is a bug FIXME! */ + struct hv_driver Base; + + /* Set by caller (in bytes) */ + u32 RingBufferSize; + + /* Allocate this much private extension for each I/O request */ + u32 RequestExtSize; + + /* Maximum # of requests in flight per channel/device */ + u32 MaxOutstandingRequestsPerChannel; + + /* Set by the caller to allow us to re-enumerate the bus on the host */ + PFN_ON_HOST_RESCAN OnHostRescan; + + /* Specific to this driver */ + PFN_ON_IO_REQUEST OnIORequest; + PFN_ON_HOST_RESET OnHostReset; +}; + +struct storvsc_device_info { + unsigned int PortNumber; + unsigned char PathId; + unsigned char TargetId; +}; + +/* Interface */ +int StorVscInitialize(struct hv_driver *driver); +int BlkVscInitialize(struct hv_driver *driver); + +#endif /* _STORVSC_API_H_ */ diff --git a/drivers/staging/hv/blkvsc_drv.c b/drivers/staging/hv/blkvsc_drv.c index e255755b09b2..9e0dbd5e2a08 100644 --- a/drivers/staging/hv/blkvsc_drv.c +++ b/drivers/staging/hv/blkvsc_drv.c @@ -36,8 +36,7 @@ #include "osd.h" #include "logging.h" #include "vmbus.h" - -#include "include/StorVscApi.h" +#include "StorVscApi.h" /* #defines */ diff --git a/drivers/staging/hv/include/StorVscApi.h b/drivers/staging/hv/include/StorVscApi.h deleted file mode 100644 index 56193ff663e6..000000000000 --- a/drivers/staging/hv/include/StorVscApi.h +++ /dev/null @@ -1,120 +0,0 @@ -/* - * - * Copyright (c) 2009, Microsoft Corporation. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. - * - * This program is distributed in the hope it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License along with - * this program; if not, write to the Free Software Foundation, Inc., 59 Temple - * Place - Suite 330, Boston, MA 02111-1307 USA. - * - * Authors: - * Haiyang Zhang - * Hank Janssen - * - */ - - -#ifndef _STORVSC_API_H_ -#define _STORVSC_API_H_ - -#include "VmbusApi.h" - -/* Defines */ -#define STORVSC_RING_BUFFER_SIZE (10*PAGE_SIZE) -#define BLKVSC_RING_BUFFER_SIZE (20*PAGE_SIZE) - -#define STORVSC_MAX_IO_REQUESTS 64 - -/* - * In Hyper-V, each port/path/target maps to 1 scsi host adapter. In - * reality, the path/target is not used (ie always set to 0) so our - * scsi host adapter essentially has 1 bus with 1 target that contains - * up to 256 luns. - */ -#define STORVSC_MAX_LUNS_PER_TARGET 64 -#define STORVSC_MAX_TARGETS 1 -#define STORVSC_MAX_CHANNELS 1 - -struct hv_storvsc_request; - -/* Data types */ -typedef int (*PFN_ON_IO_REQUEST)(struct hv_device *Device, - struct hv_storvsc_request *Request); -typedef void (*PFN_ON_IO_REQUEST_COMPLTN)(struct hv_storvsc_request *Request); - -typedef int (*PFN_ON_HOST_RESET)(struct hv_device *Device); -typedef void (*PFN_ON_HOST_RESCAN)(struct hv_device *Device); - -/* Matches Windows-end */ -enum storvsc_request_type{ - WRITE_TYPE, - READ_TYPE, - UNKNOWN_TYPE, -}; - -struct hv_storvsc_request { - enum storvsc_request_type Type; - u32 Host; - u32 Bus; - u32 TargetId; - u32 LunId; - u8 *Cdb; - u32 CdbLen; - u32 Status; - u32 BytesXfer; - - unsigned char *SenseBuffer; - u32 SenseBufferSize; - - void *Context; - - PFN_ON_IO_REQUEST_COMPLTN OnIOCompletion; - - /* This points to the memory after DataBuffer */ - void *Extension; - - struct hv_multipage_buffer DataBuffer; -}; - -/* Represents the block vsc driver */ -struct storvsc_driver_object { - /* Must be the first field */ - /* Which is a bug FIXME! */ - struct hv_driver Base; - - /* Set by caller (in bytes) */ - u32 RingBufferSize; - - /* Allocate this much private extension for each I/O request */ - u32 RequestExtSize; - - /* Maximum # of requests in flight per channel/device */ - u32 MaxOutstandingRequestsPerChannel; - - /* Set by the caller to allow us to re-enumerate the bus on the host */ - PFN_ON_HOST_RESCAN OnHostRescan; - - /* Specific to this driver */ - PFN_ON_IO_REQUEST OnIORequest; - PFN_ON_HOST_RESET OnHostReset; -}; - -struct storvsc_device_info { - unsigned int PortNumber; - unsigned char PathId; - unsigned char TargetId; -}; - -/* Interface */ -int StorVscInitialize(struct hv_driver *driver); -int BlkVscInitialize(struct hv_driver *driver); - -#endif /* _STORVSC_API_H_ */ diff --git a/drivers/staging/hv/storvsc_drv.c b/drivers/staging/hv/storvsc_drv.c index 2310282f4c9a..361b903e1d19 100644 --- a/drivers/staging/hv/storvsc_drv.c +++ b/drivers/staging/hv/storvsc_drv.c @@ -39,7 +39,7 @@ #include "osd.h" #include "logging.h" #include "vmbus.h" -#include "include/StorVscApi.h" +#include "StorVscApi.h" /* #defines */