查看设备树
/proc/device-tree
查看gpu节点
/sys/class/devfreq/3d00000.qcom,kgsl-3d0
/sys/class/kgsl/kgsl-3d0/devfreq
查看cpu节点
/sys/devices/system/cpu
看见了/sys/devices/virtual/thermal与 /sys/class/thermal
这两个目录下的内容基本相同,于是查询:
对于一个设备,sysfs可以有两个节点来描述该外设
关于注册
sysfs中所有的目录以及目录下的文件都对应内核中的一个struct kobj实例。
bus目录中所有的子目录都对应内核中的一个struct bus_type实例。
class目录中所有的子目录对应内核中的一个struct class实例
devices目录中的所有目录以及子目录都对应一个struct device实例
moudle_init() -> /sys/modules/目录
class_register() -> /sys/class目录
kobject_add("xx", kernel_obj) -> /sys/kernel目录
register_blkdev() -> /sys/block目录
devm_thermal_add_hwmon_sys ->/sys/class/hwmon目录
device_create() -> /sys/devices/virtual/ 与 /dev (一般用这个比较多)