Симлинк внутри sysfs - PullRequest
       19

Симлинк внутри sysfs

0 голосов
/ 29 апреля 2020

Я пытаюсь адаптировать ядро ​​4.9 msm8953 [1] для своего телефона - Xiaomi Redmi Note 4x. Первоначально он был поставлен с ядром 3.18.

Ядро почти готово, однако одной из последних проблем является измененная структура sysfs [2]: в ядре 3.18 FP C путь устройства идентификации по отпечаткам пальцев был /sys/devices/soc/soc:fpc1020, но в 4.9 сейчас оно в /sys/devices/platform/soc/soc:fpc1020. Это проблема для проприетарного пользовательского пространства, которое трудно изменить.

Поэтому цель состоит в том, чтобы символическая ссылка /sys/devices/platform/soc/soc:fpc1020 на /sys/devices/soc/soc:fpc1020.

Для того, что я вижу, нет публикации c API для непосредственного создания узлов внутри /sys/devices.

Любые советы, как получить kobject из /sys/devices и сделать символическую ссылку sysfs здесь?

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

1 Ответ

0 голосов
/ 29 апреля 2020

Мне удалось создать символьную c ссылку, используя kernfs_create_link и получить родительский узел kernfs через свойство parent.
Вот решение: https://github.com/nE0sIghT/android_kernel_xiaomi_msm8953/commit/5749d673cce1e2ab2bdeb2f689d1527143889a05

...