mv_os.h
来自「6440linuxDriver的源代码」· C头文件 代码 · 共 160 行
H
160 行
#if !defined(LINUX_OS_H)#define LINUX_OS_H#ifndef LINUX_VERSION_CODE# include <linux/version.h>#endif#ifndef AUTOCONF_INCLUDED# include <linux/config.h>#endif /* AUTOCONF_INCLUDED */#include <linux/list.h>#include <linux/module.h>#include <linux/interrupt.h>#include <linux/kernel.h>#include <linux/errno.h>#include <linux/types.h>#include <linux/string.h>#include <linux/timer.h>#include <linux/time.h>#include <linux/reboot.h>#include <linux/ioport.h>#include <linux/delay.h>#include <linux/proc_fs.h>#include <linux/stat.h>#include <linux/cdev.h>#include <linux/spinlock.h>#include <linux/pci.h>#include <linux/completion.h>#include <linux/blkdev.h>#include <linux/vmalloc.h>#include <linux/kthread.h>#include <linux/nmi.h>#include <asm/uaccess.h>#include <asm/io.h>#include <asm/div64.h>#if defined(__AC_DBG__) && defined(CONFIG_X86)#include <linux/timex.h>#include <asm/msr.h>#endif /* __AC_DBG__ */#include <scsi/scsi.h>#include <scsi/scsi_cmnd.h>#include <scsi/scsi_device.h>#include <scsi/scsi_host.h>#include <scsi/scsi_transport.h>/* OS specific flags */#define _OS_LINUX 1#define _64_BIT_COMPILER 1#ifdef CONFIG_64BIT# define __KCONF_64BIT__#endif /* CONFIG_64BIT */#if defined(__LITTLE_ENDIAN)# define __MV_BIG_ENDIAN__ 0# define __MV_LITTLE_ENDIAN__ 1#elif defined(__BIG_ENDIAN)# define __MV_BIG_ENDIAN__ 1# define __MV_LITTLE_ENDIAN__ 0#else# error "error in endianness"#endif #if defined(__LITTLE_ENDIAN_BITFIELD)# define __MV_BIG_ENDIAN_BITFIELD__ 0# define __MV_LITTLE_ENDIAN_BITFIELD__ 1#elif defined(__BIG_ENDIAN_BITFIELD)# define __MV_BIG_ENDIAN_BITFIELD__ 1# define __MV_LITTLE_ENDIAN_BITFIELD__ 0#else# error "error in endianness"#endif #ifdef __MV_DEBUG__# define MV_DEBUG#else# ifdef MV_DEBUG# undef MV_DEBUG# endif /* MV_DEBUG */#endif /* __MV_DEBUG__ */#ifndef NULL# define NULL 0#endif/* * * Primary Data Type Definition * */#include "com_define.h" /* the use of it should be controlled ... carefully */#include "color_print.h"#define MV_INLINE inline#define CDB_INQUIRY_EVPD 1 //TBD/* os-dependent data structures */#define OSSW_DECLARE_SPINLOCK(x) spinlock_t xtypedef void (*OSSW_TIMER_FUNCTION)(unsigned long);typedef unsigned long OSSW_TIMER_DATA;#define OSSW_DECLARE_TIMER(x) struct timer_list x/* OS macro definition */#define MV_MAX_TRANSFER_SECTOR (MV_MAX_TRANSFER_SIZE >> 9)/*Driver Version for Command Line Interface Query.*/#define VER_MAJOR 1 /* VER_MINOR 4 for RAID, 3 for non-RAID */#ifdef RAID_DRIVER# define VER_MINOR 4# define VER_BUILD 1#else /* RAID_DRIVER */# define VER_MINOR 3# define VER_BUILD 8#endif /* RAID_DRIVER *//* OEM Account definition */#define VER_OEM_GENERIC 0#define VER_OEM_INTEL 1#define VER_OEM_ASUS 2#ifdef __OEM_INTEL__# define VER_OEM VER_OEM_INTEL#elif defined(__OEM__ASUS__)# define VER_OEM VER_OEM_ASUS#else# define VER_OEM VER_OEM_GENERIC#endif /* __OEM_INTEL__ */#ifdef RAID_DRIVER# define VER_TEST "rc2"#else# define VER_TEST ".1"#endif /* RAID_DRIVER */#define mv_driver_name "odin"#define mv_product_name "ODIN"/* call VER_VAR_TO_STRING */#define NUM_TO_STRING(num1, num2, num3, num4) #num1"."#num2"."#num3"."#num4#define VER_VAR_TO_STRING(major, minor, oem, build) NUM_TO_STRING(major, \ minor, \ oem, \ build)#define mv_version_linux VER_VAR_TO_STRING(VER_MAJOR, VER_MINOR, \ VER_OEM, VER_BUILD) VER_TEST#endif /* LINUX_OS_H */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?