도와주세요!!
안녕하세요..
안드로이드가 포팅된 보드에 제가 작성한 드라이버를 올리고자 합니다.
드라이버를 작성하고,
커널에 포함시켜 컴파일하고 보드에 올려서
드라이버가 등록되어
디바이스 노드가 /dev 폴더밑에 생성되는것 까지는 확인하였습니다.
이제.. 제가 만든 노드의 권한을 변경하고자 하는데.. 죽어도 안되네요.. ㅠㅠ
/system/core/init/devices.c 파일에서 권한을 아래와 같이 설정해도 반응이 없고,
{ "/dev/mydevice", 0666, AID_ROOT, AID_ROOT, 1 },
init.rc 에 아래와 같은 구문을 추가해도 반응이 없네요.. ㅠㅠ
chmod 0666 /dev/mydevice
이럴때는 어떻게 해주면 되는지 혹시 아시는분 안계신가요..
누가 좀 도와주세요.. 어흑.. ㅠㅠ
그럴리가 없는데요; 저는 지금 확인해 봤는데 매우 잘 됩니다.
에를 들면 등록된 디바이스를 바로 'ls -alh /dev/mydevice' 라고 해보세요.
권한이 대충은 crw-rw---- 으로 나오지 않을까 싶은데요.
그걸 chmod 로 바꿔버리면 바뀝니다.
극단적으로 'chmod 777 /dev/mydevice' 라고 하면 권한은 'crwxrwxrwx' 로 바뀌게 됩니다.
한번 확인해 보세요.
그러게요..
그냥 콘솔에서 chmod 777 /dev/mydevice 이런식으로 하면..
문제없이 잘 변경되는데..
부팅할 때 변경시키기 위해 위에 말씀드린 방식으로 하면..
전혀.. 반응이 없네요.. ㅠㅠ
한가지 더 이상한건..
rc 파일 같은데서 제 노드를 변경하면서
원래 존재하던.. 예를들면 /dev/usb 같은것들도 아래와 같이 나란히 변경시켜보니
chmod 777 /dev/mydevice
chmod 777 /dev/usb
제 노드만 빼고 다른것들은 다 변경된다는 것입니다.
거의.. 환장하기 일보직전이예요.. --;;;
init.rc 에서
소유자도 같이 변경해 해보세요
chown system system /dev/XXX
목록