Blame view

app/app-prime-modbus/include/common/famap.h 1.1 KB
8c2952457   김태훈   응용 프로그램 추가
1
2
3
  /**    
      @file     famap.h
      @date     2010/12/1
3061c73f6   김태훈   인코딩 변경 EUC-KR -> ...
4
5
      @author   오재경 freefrug@falinux.com  FALinux.Co.,Ltd.
      @brief    mmap 유틸리티이다.
8c2952457   김태훈   응용 프로그램 추가
6
7
8
9
10
11
                Ver 0.1.0
                
      @modify   
      @todo     
      @bug     
      @remark   
3061c73f6   김태훈   인코딩 변경 EUC-KR -> ...
12
      @warning   tmmap.c  tmmap.h 와는 같이 사용하지 않는다.
8c2952457   김태훈   응용 프로그램 추가
13
14
15
16
17
18
19
20
21
22
  */
  //----------------------------------------------------------------------------
  
  #ifndef _FA_MMAP_H_
  #define _FA_MMAP_H_
  
  
  #ifndef  PAGE_SIZE
  #define  PAGE_SIZE  (1024*4)
  #endif
3061c73f6   김태훈   인코딩 변경 EUC-KR -> ...
23
  /// mmap 를 위한 개별 관리 구조체
8c2952457   김태훈   응용 프로그램 추가
24
25
  typedef struct {
  	
3061c73f6   김태훈   인코딩 변경 EUC-KR -> ...
26
27
28
29
  	int            dev;         // /dev/mem 파일핸들
  	unsigned long  phys;        // 물리주소
  	unsigned long  size;        // 크기
  	int            base_ofs;    // 베이스 주소가 4K 정렬이 되지 않았을때 사용
8c2952457   김태훈   응용 프로그램 추가
30
3061c73f6   김태훈   인코딩 변경 EUC-KR -> ...
31
  	void          *virt;        // 할당받은 메모리포인터
8c2952457   김태훈   응용 프로그램 추가
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
  	
  } mmap_alloc_t;
  
  #ifdef __cplusplus 
  extern "C" { 
  #endif 	
  
  extern void  *fa_mmap_alloc( mmap_alloc_t *ma, unsigned long phys_base, unsigned long size );
  extern void   fa_mmap_free ( mmap_alloc_t *ma );
  
  #ifdef __cplusplus 
  }
  #endif 
  
  #endif // _FA_MMAP_H_