VSF Documented
Data Structures | Macros | Typedefs | Functions | Variables
vsf_cfg.h File Reference
#include "vsf_usr_cfg.h"

Go to the source code of this file.

Data Structures

union  vsf_vplt_info_t
 
struct  vsf_vplt_t
 
struct  vsf_dynamic_vplt_t
 
struct  vsf_vplt_entry_t
 
struct  vsf_applet_ctx_t
 
struct  vsf_applet_vplt_t
 

Macros

#define ENABLED   1
 
#define DISABLED   0
 
#define __VSF_DEBUG__   1
 
#define VSF_USE_KERNEL   ENABLED
 
#define Hz   ul
 
#define VSF_USR_SWI_NUM   0
 
#define __VSF_VPLT_DECORATOR__   const
 
#define VSF_APPLET_CFG_LINKABLE   ENABLED
 
#define VSF_APPLET_VPLT_INFO(__TYPE, __MAJOR, __MINOR, __FINAL)
 
#define VSF_APPLET_VPLT_ENTRY_MOD_DEF(__NAME)    vsf_vplt_entry_t mod_##__NAME
 
#define VSF_APPLET_VPLT_ENTRY_FUNC_DEF(__NAME)    vsf_vplt_entry_t fn_##__NAME
 
#define VSF_APPLET_VPLT_ENTRY_VAR_DEF(__NAME)    vsf_vplt_entry_t var_##__NAME
 
#define VSF_APPLET_VPLT_ENTRY_FUNC_ENTRY(__VPLT, __NAME)    ((__##__NAME##_prototype_t)((__VPLT)->fn_##__NAME.ptr))
 
#define VSF_APPLET_VPLT_ENTRY_VAR_ENTRY(__VPLT, __NAME)    ((__VPLT)->var_##__NAME.ptr)
 
#define VSF_APPLET_VPLT_ENTRY_FUNC_TRACE()    vsf_vplt_trace("vplt invoke: %s\n", __FUNCTION__)
 
#define VSF_APPLET_VPLT_FUNC_DECORATOR(__NAME)   static inline
 
#define VSF_APPLET_VPLT_ENTRY_FUNC_IMP(__VPLT, __NAME, __RET, ...)
 
#define VSF_APPLET_VPLT_ENTRY_FUNC_EX(__ENTRY, __NAME, __PTR)
 
#define VSF_APPLET_VPLT_ENTRY_FUNC(__NAME)
 
#define VSF_APPLET_VPLT_ENTRY_VAR(__NAME)
 
#define VSF_APPLET_VPLT_ENTRY_MOD(__NAME, __MOD)
 
#define __VSF_APPLET_CTX_DEFINED__
 
#define VSF_APPLET_USE_ARCH   ENABLED
 
#define VSF_APPLET_USE_SERVICE   ENABLED
 

Typedefs

typedef union vsf_vplt_info_t vsf_vplt_info_t
 
typedef struct vsf_vplt_t vsf_vplt_t
 
typedef struct vsf_dynamic_vplt_t vsf_dynamic_vplt_t
 
typedef struct vsf_vplt_entry_t vsf_vplt_entry_t
 
typedef struct vsf_applet_ctx_t vsf_applet_ctx_t
 
typedef struct vsf_applet_vplt_t vsf_applet_vplt_t
 

Functions

int vsf_vplt_load_dyn (vsf_vplt_info_t *info)
 
void * vsf_vplt_link (void *vplt, char *symname)
 

Variables

vsf_dynamic_vplt_t vsf_dynamic_vplt
 
__VSF_VPLT_DECORATOR__ vsf_vplt_t vsf_vplt
 
__VSF_VPLT_DECORATOR__ vsf_applet_vplt_t vsf_applet_vplt
 

Macro Definition Documentation

◆ ENABLED

#define ENABLED   1
Note
Top Level Configuration

◆ DISABLED

#define DISABLED   0

◆ __VSF_DEBUG__

#define __VSF_DEBUG__   1

◆ VSF_USE_KERNEL

#define VSF_USE_KERNEL   ENABLED

◆ Hz

#define Hz   ul

◆ VSF_USR_SWI_NUM

#define VSF_USR_SWI_NUM   0

◆ __VSF_VPLT_DECORATOR__

#define __VSF_VPLT_DECORATOR__   const

◆ VSF_APPLET_CFG_LINKABLE

#define VSF_APPLET_CFG_LINKABLE   ENABLED

◆ VSF_APPLET_VPLT_INFO

#define VSF_APPLET_VPLT_INFO (   __TYPE,
  __MAJOR,
  __MINOR,
  __FINAL 
)
Value:
.info = { \
.major = (__MAJOR), \
.minor = (__MINOR), \
.final = (__FINAL), \
.entry_num = (sizeof(__TYPE) - sizeof(vsf_vplt_info_t)) \
/ ((__FINAL) ? sizeof(vsf_vplt_entry_t) : sizeof(void *)),\
}
Definition vsf_cfg.h:138
unsigned int minor(dev_t dev)
Definition vsf_linux.c:3924
Definition vsf_cfg.h:95

◆ VSF_APPLET_VPLT_ENTRY_MOD_DEF

#define VSF_APPLET_VPLT_ENTRY_MOD_DEF (   __NAME)     vsf_vplt_entry_t mod_##__NAME

◆ VSF_APPLET_VPLT_ENTRY_FUNC_DEF

#define VSF_APPLET_VPLT_ENTRY_FUNC_DEF (   __NAME)     vsf_vplt_entry_t fn_##__NAME

◆ VSF_APPLET_VPLT_ENTRY_VAR_DEF

#define VSF_APPLET_VPLT_ENTRY_VAR_DEF (   __NAME)     vsf_vplt_entry_t var_##__NAME

◆ VSF_APPLET_VPLT_ENTRY_FUNC_ENTRY

#define VSF_APPLET_VPLT_ENTRY_FUNC_ENTRY (   __VPLT,
  __NAME 
)     ((__##__NAME##_prototype_t)((__VPLT)->fn_##__NAME.ptr))

◆ VSF_APPLET_VPLT_ENTRY_VAR_ENTRY

#define VSF_APPLET_VPLT_ENTRY_VAR_ENTRY (   __VPLT,
  __NAME 
)     ((__VPLT)->var_##__NAME.ptr)

◆ VSF_APPLET_VPLT_ENTRY_FUNC_TRACE

#define VSF_APPLET_VPLT_ENTRY_FUNC_TRACE ( )     vsf_vplt_trace("vplt invoke: %s\n", __FUNCTION__)

◆ VSF_APPLET_VPLT_FUNC_DECORATOR

#define VSF_APPLET_VPLT_FUNC_DECORATOR (   __NAME)    static inline

◆ VSF_APPLET_VPLT_ENTRY_FUNC_IMP

#define VSF_APPLET_VPLT_ENTRY_FUNC_IMP (   __VPLT,
  __NAME,
  __RET,
  ... 
)
Value:
typedef __RET (*__##__NAME##_prototype_t)(__VA_ARGS__); \
VSF_APPLET_VPLT_FUNC_DECORATOR(__NAME) __RET __NAME(__VA_ARGS__)

◆ VSF_APPLET_VPLT_ENTRY_FUNC_EX

#define VSF_APPLET_VPLT_ENTRY_FUNC_EX (   __ENTRY,
  __NAME,
  __PTR 
)
Value:
.__ENTRY = { \
.name = (__NAME), \
.ptr = (void *)(__PTR), \
}

◆ VSF_APPLET_VPLT_ENTRY_FUNC

#define VSF_APPLET_VPLT_ENTRY_FUNC (   __NAME)
Value:
.fn_##__NAME = { \
.name = VSF_STR(__NAME), \
.ptr = (void *)(__NAME), \
}
#define VSF_STR(__STRING)
Definition __type.h:140

◆ VSF_APPLET_VPLT_ENTRY_VAR

#define VSF_APPLET_VPLT_ENTRY_VAR (   __NAME)
Value:
.var_##__NAME = { \
.name = VSF_STR(__NAME), \
.ptr = (void *)&(__NAME), \
}

◆ VSF_APPLET_VPLT_ENTRY_MOD

#define VSF_APPLET_VPLT_ENTRY_MOD (   __NAME,
  __MOD 
)
Value:
.mod_##__NAME = { \
.name = VSF_STR(__NAME), \
.ptr = (void *)&(__MOD), \
}

◆ __VSF_APPLET_CTX_DEFINED__

#define __VSF_APPLET_CTX_DEFINED__

◆ VSF_APPLET_USE_ARCH

#define VSF_APPLET_USE_ARCH   ENABLED

◆ VSF_APPLET_USE_SERVICE

#define VSF_APPLET_USE_SERVICE   ENABLED

Typedef Documentation

◆ vsf_vplt_info_t

◆ vsf_vplt_t

typedef struct vsf_vplt_t vsf_vplt_t

◆ vsf_dynamic_vplt_t

◆ vsf_vplt_entry_t

◆ vsf_applet_ctx_t

◆ vsf_applet_vplt_t

Function Documentation

◆ vsf_vplt_load_dyn()

int vsf_vplt_load_dyn ( vsf_vplt_info_t info)
extern

◆ vsf_vplt_link()

void * vsf_vplt_link ( void *  vplt,
char *  symname 
)
extern

Variable Documentation

◆ vsf_dynamic_vplt

vsf_dynamic_vplt_t vsf_dynamic_vplt
extern

◆ vsf_vplt

◆ vsf_applet_vplt

__VSF_VPLT_DECORATOR__ vsf_applet_vplt_t vsf_applet_vplt
extern