of_property_count_strings
时间: 2023-08-02 07:05:11 浏览: 270
`of_property_count_strings` 是一个 Linux 内核函数,用于获取设备树中某个属性所包含的字符串数量。它的函数原型如下:
```
int of_property_count_strings(const struct device_node *np, const char *propname);
```
其中,`np` 是指向设备树节点的指针,`propname` 是属性名称。该函数返回属性所包含的字符串数量,如果属性不存在或者不是一个字符串列表,则返回负数。
相关问题
pinctrl中of_property_count_strings
在Linux内核中,pinctrl是一个子系统,用于管理和控制硬件引脚(pin)的配置。of_property_count_strings是pinctrl子系统中的一个函数,用于计算设备树中一个属性(property)值的字符串数量。
当设备树中的属性值是一个字符串数组时,该函数可用于获取该数组中字符串的数量。例如,一个GPIO控制器可能包含一个属性“pins”,其属性值是一个字符串数组,描述了每个引脚的名称和属性。使用of_property_count_strings函数可以获取该属性值中字符串的数量,以便在分配内存时为每个字符串分配正确的空间。
该函数的原型定义如下:
```
int of_property_count_strings(const struct device_node *np,
const char *propname);
```
其中,np是指向设备树节点的指针,propname是要计算字符串数量的属性名称。函数返回属性值中字符串的数量,如果属性值不存在或者不是字符串数组,则返回0。
SET_PROPERTY(CACHE XNNPACK_LIBRARY_TYPE PROPERTY STRINGS default static shared)如何解读
这段代码是使用 CMake 中的 `SET_PROPERTY` 命令来设置一个名为 `XNNPACK_LIBRARY_TYPE` 的缓存变量的属性。属性的名字是 `STRINGS`,它指定了该变量可以接受的值。
具体来说,`SET_PROPERTY(CACHE XNNPACK_LIBRARY_TYPE PROPERTY STRINGS default static shared)` 表示 `XNNPACK_LIBRARY_TYPE` 变量可以接受三个值:`default`、`static` 和 `shared`。
这样设置属性的目的是为了限制 `XNNPACK_LIBRARY_TYPE` 变量的取值范围,确保用户只能从这三个选项中选择一个作为变量的值。
阅读全文