首页 > 解决方案 > sysfs 中的符号链接

问题描述

我试图为我的手机适配 4.9 msm8953 内核 [1] - Xiaomi Redmi Note 4x。它最初是随内核 3.18 一起提供的。

内核几乎完成了,但是最后一个问题是更改了 sysfs 结构 [2]:在内核 3.18 中 FPC 指纹设备路径是/sys/devices/soc/soc:fpc1020,但在 4.9 中它现在是/sys/devices/platform/soc/soc:fpc1020. 这是专有用户空间的问题,很难改变。

所以目标是符号链接/sys/devices/platform/soc/soc:fpc1020/sys/devices/soc/soc:fpc1020.

对于我所看到的,没有公共 API 可以直接在/sys/devices.

有什么建议如何在/sys/devices这里获取 kobject 并使 sysfs 符号链接?

[1] https://github.com/nE0sIghT/android_kernel_xiaomi_msm8953
[2] https://github.com/nE0sIghT/android_kernel_xiaomi_msm8953/issues/18

标签: linux-kernel

解决方案


我能够使用并通过属性kernfs_create_link获取父 kernfs 节点来创建符号链接。 这是解决方案:https ://github.com/nE0sIghT/android_kernel_xiaomi_msm8953/commit/5749d673cce1e2ab2bdeb2f689d1527143889a05parent


推荐阅读