[i.MX] gpio access

[复制链接]
2584|1
 楼主| isdqwq 发表于 2015-10-20 14:36 | 显示全部楼层 |阅读模式
为了防止RITA的习惯性问题.
BSP  Android 5.0  kernel 3.10.53  uboot 2014.04   
硬件是  IMX6Q  主板是自己设计的.我想下面要描述的问题应该与硬件无关了.
各位,你们的gpio access是如何做的.
是直接在android app里在访问 sys/class/gpio/gpioxx/value 文件吗?
如果是这样的话,Android 5.0增加了  SELinux 功能.
这个开启的话, android app只能读gpio不能写呢 .
你们又是如何解决的.
我试过修改 SELinux的策略,
在file.te中增加
type gpio_control, fs_type, sysfs_type;
在 file_contexts文件增加下面行
/sys/devices/soc0/soc.1/2000000.aips-bus/20a0000.gpio/gpio/gpio32/value u:object_r:gpio_control:s0
这样增加的话,如果设备没有接u盘或者sdcard,可以正常启动进系统,在debug console下面检查 /sys/class/gpio/gpioxx/value 确实改为了 u:object_r:gpio_control:s0 ,如何检查的? ls -Z
但设备如果插入了sdcard 或者u盘,就引导不进系统了,
报下面的错误.请问各位是如何解决的.
  1. init: Timed out waiting for /dev/.coldboot_done
  2. init: /dev/hw_random not found
  3. Console: switching to colour dummy device 80x30
  4. init: /dev/hw_random not found
  5. fs_mgr: Error opening device mapper (No such file or directory)fs_mgr: Could not set up verified partition, skipping!
  6. EXT4-fs (mmcblk3p4): Ignoring removed nomblk_io_submit option
  7. EXT4-fs (mmcblk3p4): mounted filesystem with ordered data mode. Opts: nomblk_io_submit,noauto_da_alloc,errors=panic
  8. fs_mgr: __mount(source=/dev/block/mmcblk3p4,target=/data,type=ext4)=0
  9. EXT4-fs (mmcblk3p6): Ignoring removed nomblk_io_submit option
  10. EXT4-fs (mmcblk3p6): mounted filesystem with ordered data mode. Opts: nomblk_io_submit
  11. fs_mgr: __mount(source=/dev/block/mmcblk3p6,target=/cache,type=ext4)=0
  12. EXT4-fs (mmcblk3p7): mounted filesystem with ordered data mode. Opts: (null)
  13. fs_mgr: __mount(source=/dev/block/mmcblk3p7,target=/device,type=ext4)=0
  14. init: cannot find '/system/bin/logd', disabling 'logd'
  15. init: cannot find '/system/bin/sh', disabling 'console'
  16. binder: 124:124 transaction failed 29189, size 0-0
  17. init: cannot find '/system/bin/lmkd', disabling 'lmkd'
  18. init: cannot find '/system/bin/servicemanager', disabling 'servicemanager'
  19. init: cannot find '/system/bin/vold', disabling 'vold'
  20. init: cannot find '/system/bin/surfaceflinger', disabling 'surfaceflinger'
  21. init: using deprecated syntax for specifying property 'ro.serialno', use ${name} instead
  22. init: using deprecated syntax for specifying property 'ro.product.manufacturer', use ${name} instead
  23. init: property 'ro.product.manufacturer' doesn't exist while expanding '$ro.product.manufacturer'
  24. init: cannot expand '$ro.product.manufacturer' while writing to '/sys/class/android_usb/android0/iManufacturer'
  25. init: using deprecated syntax for specifying property 'ro.product.model', use ${name} instead
  26. init: property 'ro.product.model' doesn't exist while expanding '$ro.product.model'
  27. init: cannot expand '$ro.product.model' while writing to '/sys/class/android_usb/android0/iProduct'
  28. init: cannot find '/system/bin/netd', disabling 'netd'
  29. init: cannot find '/system/bin/debuggerd', disabling 'debuggerd'
  30. init: cannot find '/system/bin/debuggerd64', disabling 'debuggerd64'
  31. init: cannot find '/system/bin/drmserver', disabling 'drm'
  32. init: cannot find '/system/bin/mediaserver', disabling 'media'
  33. init: cannot find '/system/bin/installd', disabling 'installd'
  34. init: cannot find '/system/bin/install-recovery.sh', disabling 'flash_recovery'
  35. init: cannot find '/system/bin/keystore', disabling 'keystore'
  36. init: cannot find '/system/bin/rild', disabling 'ril-daemon'
  37. init: cannot find '/system/bin/app_process', disabling 'zygote'
  38. init: cannot find '/system/bin/sh', disabling 'wifi_mac'
  39. init: cannot find '/system/bin/sdcard', disabling 'sdcard'
  40. init: cannot find '/system/bin/magd', disabling 'magd'
  41. android_usb: already disabled
  42. mtp_bind_config
  43. ci_hdrc ci_hdrc.0: timeout waiting for 00000800 in 12
  44. binder: 124:124 transaction failed 29189, size 0-0
  45. binder: 124:124 transaction failed 29189, size 0-0
  46. binder: 124:124 transaction failed 29189, size 0-0
  47. binder: 124:124 transaction failed 29189, size 0-0
  48. binder: 124:124 transaction failed 29189, size 0-0
  49. binder: 124:124 transaction failed 29189, size 0-0
  50. binder: 124:124 transaction failed 29189, size 0-0
  51. binder: 124:124 transaction failed 29189, size 0-0
  52. binder: 124:124 transaction failed 29189, size 0-0
  53. binder: 124:124 transaction failed 29189, size 0-0
  54. binder: 124:124 transaction failed 29189, size 0-0
  55. binder: 124:124 transaction failed 29189, size 0-0
  56. binder: 124:124 transaction failed 29189, size 0-0
  57. binder: 124:124 transaction failed 29189, size 0-0
  58. binder: 124:124 transaction failed 29189, size 0-0
  59. binder: 124:124 transaction failed 29189, size 0-0
mini1986 发表于 2015-10-23 09:30 | 显示全部楼层
没搞过,帮你顶一下......不过,个人觉得,你自己写个GPIO驱动,HAL和JNI,让上层Java调用更直接......
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

94

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部