Linux/Linux_Device_Drivers
character device driver - allocating fixed number of major number (메이저 넘버 강제 - 고정 - 할당)
반응형
major number를 강제 할당 하는 방법
1) kernel/include/uapi/linux로 이동
major.h를 editor에서 open
#define LBA_MAJOR 240 <-- 이것이 마지막 번호라면,
다음과 같이 2개의 majro number를 추가
#define MY_1_MAJOR (SCSI_OSD_MAJOR + 1)
#define MY_2_MAJOR (G2_HANTRODEC_MAJOR + 1)
2) driver_1/driver_1.c major number 설정 부분 수정
#include <linux/major.h> <- 추가
int __init driver_1_init(void)
{
...
my_1_major = MY_1_MAJOR; <-- 추가
result = register_chrdev(my_1_major, "driver_1", &my_1_fops);
...
}
3) driver_2/driver_2.c major number 설정 부분 수정
#include <linux/major.h> <-- 추가
int __init driver_2_init(void) {
{
...
driver_2_major = MY_2_MAJOR; <-- 추가
result = register_chrdev(driver_2_major, "driver_2", &driver_2_fops);
...
}
2. mknod는 다음과 같이 고정된 major number로 수행
mknod /dev/driver_1 c 241 0
mknod /dev/driver_2 c 242 0
반응형
'Linux > Linux_Device_Drivers' 카테고리의 다른 글
[Linux] __attribute__((packed)) 사용 위치 (0) | 2015.07.04 |
---|---|
Kernel device driver 추가 (0) | 2015.05.31 |
kernel symbol (커널 심볼) 확인 (0) | 2015.05.31 |
Linux input device driver (인풋 디바이스 드라이버) (0) | 2015.03.10 |
MTD (Memory Technology Devices) (0) | 2015.03.10 |
댓글