主题:AM62P 中讨论的其他器件
工具/软件:
您好、AM62P Android Champ!
本报告详细介绍了在运行 Android 15 的 TI AM62P EVM 板上尝试控制 GPIO 引脚时遇到的问题。
gpioset从控制台正确运行的命令在从init.am62x.rc脚本调用时无法执行。
由于hal_gpio_default域无法访问 GPIO 设备、因此怀疑此问题是 SELinux 策略违规造成的。
问题描述
该libgiiod库存在于 TI AM62P 的 Android 15 源代码中、并且标准 GPIO 命令(如,和)gpioinfogpiogetgpioset在命令行中按预期运行。
工作命令:
gpioset gpiochip2 49=1
此命令成功控制 EVM 电路板上的 LED。
实施失败:
在中添加了一条device/ti/init.am62x.rc在引导时执行此命令的行:
exec u:r:hal_gpio_default:s0 -- /system/bin/gpioset gpiochip2 49=1
但是、此命令无法控制 LED、表明存在权限问题。
分析
该故障可能是由于 SELinux 访问控制违例所致。 hal_gpio_default域(即执行命令的环境)没有访问和操作/dev/gpiochip2设备的必要权限。
尝试通过在中添加 SELinux 策略来解决此问题/system/sepolicy/private会导致错误、表明策略规则格式不正确或放置不正确。
请求协助
我们需要有关创建允许hal_gpio_default域执行gpioset命令和控制 GPIO 引脚的 SELinux 策略的正确方法的指导。
请提供正确的 SELinux 策略规则以及将其集成到构建系统中的正确位置。 此外、如能深入了解 GPIO 器件访问所需的特定权限、敬请期待。
谢谢。
此致、
插孔