
도와주세요!!
글 수 15,339
2002.08.22 20:46:59 (*.186.48.184)
19264
안녕하세요...
include/asm-arm/ioctl.h 에 이것에 대한 매크로가 정의 되어있습니다..
참고로 이것은 ioctl을 구현할때 사용되며...간략한 설명은 다음과 같습니다.
_IO(type, nr) :: 데이터 전송 없음
_IOR(type, nr, size) :: 디바이스로 부터 데이터를 읽어옴
_IOW(type, nr, size) :: 디바이스로 데이터를 전송
_IORW(type, nr, size) :: 양방향 전송
** type
매직번호. 한개의 번호를 정하고 드라이브 전체에서 이 값을 사용한다.
** nr
순서에 따른(차례로 붙이는) 번호
** size
관련된 데이터의 전송의 크기
********
소스에서 보시면...
[ test.c ]
ioctl( dev, IOCTL_GPIO_LED_ON_OFF, &pData );
[ gpio.h ]
typedef struct
{
int Cmd; // 명령어
unsigned long Data; // 입출력 데이타
} GPIO_CmdData;
// 제어 명령 리스트
#define IOCTL_GPIO_LED_ON_OFF _IOW(GPIO_IOC_MAGIC, 0, GPIO_CmdData *)
[ gpio.c ]
int gpio_ioctl(struct inode *inode, struct file *filp, unsigned int cmd,
unsigned long arg)
{
switch (cmd)
{
case IOCTL_GPIO_LED_ON_OFF:
return gpio_led_on_off ( (GPIO_CmdData *) arg );
}
}
==> test.c에서 ioctl함수를 호출하면 gpio.h의 정의된 명령을 통하여 디바이스 드라이브의
gpio.c로 명령과 데이타를 넘겨 주게 됩니다...
그럼......
ulra wrote..
: 안녕하세요.
:
: GPIO 예제 소스에서 _IOR, _IOW는 무엇에 쓰는것인가요.
:
: 소스를 살펴봐도 정의 된곳이 없습니다.
:
: 쓰는 용도와 정의된 곳좀 알려주세요.
:
: 부탁드립니다.
include/asm-arm/ioctl.h 에 이것에 대한 매크로가 정의 되어있습니다..
참고로 이것은 ioctl을 구현할때 사용되며...간략한 설명은 다음과 같습니다.
_IO(type, nr) :: 데이터 전송 없음
_IOR(type, nr, size) :: 디바이스로 부터 데이터를 읽어옴
_IOW(type, nr, size) :: 디바이스로 데이터를 전송
_IORW(type, nr, size) :: 양방향 전송
** type
매직번호. 한개의 번호를 정하고 드라이브 전체에서 이 값을 사용한다.
** nr
순서에 따른(차례로 붙이는) 번호
** size
관련된 데이터의 전송의 크기
********
소스에서 보시면...
[ test.c ]
ioctl( dev, IOCTL_GPIO_LED_ON_OFF, &pData );
[ gpio.h ]
typedef struct
{
int Cmd; // 명령어
unsigned long Data; // 입출력 데이타
} GPIO_CmdData;
// 제어 명령 리스트
#define IOCTL_GPIO_LED_ON_OFF _IOW(GPIO_IOC_MAGIC, 0, GPIO_CmdData *)
[ gpio.c ]
int gpio_ioctl(struct inode *inode, struct file *filp, unsigned int cmd,
unsigned long arg)
{
switch (cmd)
{
case IOCTL_GPIO_LED_ON_OFF:
return gpio_led_on_off ( (GPIO_CmdData *) arg );
}
}
==> test.c에서 ioctl함수를 호출하면 gpio.h의 정의된 명령을 통하여 디바이스 드라이브의
gpio.c로 명령과 데이타를 넘겨 주게 됩니다...
그럼......
ulra wrote..
: 안녕하세요.
:
: GPIO 예제 소스에서 _IOR, _IOW는 무엇에 쓰는것인가요.
:
: 소스를 살펴봐도 정의 된곳이 없습니다.
:
: 쓰는 용도와 정의된 곳좀 알려주세요.
:
: 부탁드립니다.