intnode)intfdtdec_next_compatible(constvoid*blob,intnode,enumfdt_compat_id id)intfdtdec_next_compatible_subnode(constvoid*blob,intnode,enumfdt_compat_id id,int*depthp)intfdtdec_next_alias(constvoid*blob,constchar*name,enumfdt_compat_id id,int*upto)intfdtdec_...
> > > > > > > + /* find or create "/chosen" node. */ > > > > > > > + nodeoffset = fdt_find_or_add_subnode(fdt, 0, "chosen"); > > > > > > > + if (nodeoffset < 0) > > > > > > > + return nodeoffset; > > > > > > > + > > > > > > > + err ...
node = grub_fdt_find_subnode (fdt, 0, "chosen"); if (node < 0) node = grub_fdt_add_subnode (fdt, 0, "chosen"); if (node < 1) { err = grub_error(grub_errno, "failed to load chosen fdt node."); goto failure; } /* Set initrd info */ if (initrd_start && initrd_end...
处的fdtblob 启动在 83000000 处使用设备树,结束于 8300c040fdt_find_or_add_subnode: 内存:FDT_ERR_BADSTRUCTURE上一篇 刀马旦2022-01-07 07:47:01 请问存储位置的内容如何固话到emmc中呢? /ramdisk.img.u; fatload mmc 0 ${fdt_addr} /sdrun/${fdt_file}; set bootargs console=${console},${baudrat...
* This function decides whether to include or exclude a node, property or * compatible string. The function is defined by fdt_find_regions(). * * The algorithm is documented in the code - disp->invert is 0 for normal * operation, and 1 to invert the sense of all matches. ...
/* find the fragment index in which the symbol lies */ ret = fdt_subnode_offset_namelen(fdto, 0, frag_name, frag_name_len); /* not found? */ if (ret < 0) return -FDT_ERR_BADOVERLAY; fragment = ret;/* an __overlay__ subnode must exist */ ret = fdt_subnode_offset(fd...
2.1 root Node 设备树的起点是根节点,Model和compatible属性指明了当前平台的名字,格式为<mfg>,<board>: Mfg是vendor,board是板子模型 Compatible属性不一定非得要,但是当两个系统在硬件配置上基本一致时,这个参数可以用于辨别当前系统。 / { model = "fsl,mpc8377rdb"; ...
@@ -131,8 +131,8 @@ static int findnode_nofail(void *fdt, const char *node_path) return offset; } int qemu_devtree_setprop(void *fdt, const char *node_path, const char *property, const void *val_array, int size) int qemu_fdt_setprop(void *fdt, const char *node_path, const ...
@@ -1014,7 +1014,12 @@ void fdt_fixup_mtdparts(void *blob, const struct node_info *node_info, dev = device_find(node_info[i].type, idx++); if (dev) { if (fdt_node_set_part_info(blob, noff, dev)) parts = fdt_subnode_offset(blob, noff, "partitions"); if (parts < 0...
Expand Down Expand Up @@ -227,7 +308,7 @@ int fdt_next_subnode(const void *fdt, int offset) return offset; } const char *_fdt_find_string(const char *strtab, int tabsize, const char *s) const char *fdt_find_string_(const char *strtab, int tabsize, const char *s) { int...