标签:prop dev cd gpio con id card SD
[kernel 如何解析cd-gpio]
1.dts:
一般dts里会被配置
2.解析:
mmc_of_parse(mmc); -->if (device_property_read_bool(dev, "non-removable")) { host->caps |= MMC_CAP_NONREMOVABLE; } else { xxx ret = mmc_gpiod_request_cd(host, "cd", 0, false, cd_debounce_delay_ms * 1000);
}
-->devm_gpiod_get_index(host->parent, con_id, idx, GPIOD_IN);
-->gpiod_get_index(dev, con_id, idx, flags);
if (is_of_node(fwnode)) {
dev_dbg(dev, "using device tree for GPIO lookup\n");
desc = of_find_gpio(dev, con_id, idx, &lookupflags);
-->of_find_gpio(dev, con_id, idx, &lookupflags);
/* Try GPIO property "foo-gpios" and "foo-gpio" */
for (i = 0; i < ARRAY_SIZE(gpio_suffixes); i++) {
if (con_id) snprintf(prop_name, sizeof(prop_name), "%s-%s", con_id, gpio_suffixes[i]); else snprintf(prop_name, sizeof(prop_name), "%s", gpio_suffixes[i]); desc = of_get_named_gpiod_flags(dev->of_node, prop_name, idx, &of_flags);
/* gpio suffixes used for ACPI and device tree lookup */ static __maybe_unused const char * const gpio_suffixes[] = { "gpios", "gpio" };
由上可以看出,
1.只要dts没有配置"non-removable",就会去解析”cd“。
2.dts里配置cd-gpio或cd-gpios都可以被正确解析到。
标签:prop,dev,cd,gpio,con,id,card,SD 来源: https://www.cnblogs.com/Big-hu/p/15949350.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。