아래와 같이 터치 테스트 프로그램을 만들어서 터치를 연결하여 프로그램을 돌려보니,
아무 반응이 없습니다.
그래서, cat /proc/interrupts 하여 확인하여보면,
.[root@ez-x5 /root]$ cat /proc/interrupts
  3:          0   GPIO 2-80
 10:          0   LCD
 13:         74   serial
 18:          0   DMA
 19:       2753   timer
 44:          0   cs89x0
 45:          0   mk712_touchscreen
Err:          0
라고 나옵니다.
mk712_touchscreen 의 인터럽트 요청 횟수가 올라 가지 않는데요
인터럽트가 안 걸리는 것 아닌가요?
어떻게 해결해야 하는지 알려 주시기 바랍니다.
물론 echo "1" > /dev/mk712
해도 디바이스 오픈시 메세지만 뜹니다


#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <unistd.h>       // open/close
#include <fcntl.h>   
#include <sys/types.h>
#include <sys/stat.h>
#include <string.h>
//typedef struct mk712_packet val;
struct mk712_packet
{
    unsigned int header;
    unsigned int x;
    unsigned int y;
    unsigned int reserved;
};
int   main( void)
{
   int touch_fd;
   int i;
   int nBytes;
   char buf[16];
   struct mk712_packet val;
   val.header = 0;
   val.x  = 0;
   val.y = 0;
   val.reserved = 0;
   printf("This is a touch test program\n");
   if( 0 > (touch_fd = open("/dev/mk712", O_RDONLY))) return -1;
   for(i=0;i<10;i++)
   {
   
    nBytes = read(touch_fd,buf,sizeof(struct mk712_packet));
    memcpy(&val,buf,sizeof(struct mk712_packet));
    printf("header = %d\nx = %d\ny=%d\nreserved=%d\n",val.header,val.x,val.y,val.reserved);
   }
   close(touch_fd);
   return 0;
}