標準 linux 系統好像是由 usbd _ rules 負責。
android 是由 init 負責。
ystem/root/init/ueventd.c
一開始,吃設定檔:
get_hardware_name(hardware, &revision);
ueventd_parse_config_file("/ueventd.rc");
snprintf(tmp, sizeof(tmp), "/ueventd.%s.rc", hardware);
ueventd_parse_config_file(tmp);
所以設定檔就是 /ueventd.hardwarename.rc
以 imx5x 為例, hardwarename 是 freescale,所以是 ueventd.freescale.rc
這個設定檔的內容是:
/dev/ttymxc2 0600 bluetooth bluetooth /dev/pmem_gpu 0660 system graphics /dev/pmem_adsp* 0666 system audio /dev/snd/* 0664 system audio /dev/ttyUSB* 0640 radio radio /dev/ttyACM* 0640 radio radio /dev/video0 0660 system camera /dev/video1 0660 system camera
所以,要把 ttyUSB 的權限改成所有program 都可以read/write,就要改:
/dev/ttyUSB* 0666 radio radio
沒有留言:
張貼留言