static void lk_dfo_tag_info_collect(void) { // Device tree method struct tag *tags; int node, dfo_nr; int i; node = of_scan_flat_dt(early_init_dt_get_chosen, NULL); tags = of_get_flat_dt_prop(node, "atag,dfo", NULL); #ifndef CONFIG_ARM64 if (tags) { dfo_nr = ((tags->hdr.size << 2) - sizeof(struct tag_header)) / sizeof(tag_dfo_boot); for(i=0; i<dfo_nr; i++) update_fos_table_item(tags->u.dfo_data.info[i].name, tags->u.dfo_data.info[i].value); } #endif }
static void lk_dfo_tag_info_collect(void) { // Device tree method struct tag *tags; int ret, dfo_nr; int i; ret = of_scan_flat_dt(early_init_dt_get_chosen, NULL); if(ret==0){ CCCI_UTIL_INF_MSG("device node no chosen node\n"); return; } tags = of_get_flat_dt_prop(dt_chosen_node, "atag,dfo", NULL); if (tags) { dfo_nr = ((tags->hdr.size << 2) - sizeof(struct tag_header)) / sizeof(tag_dfo_boot); for(i=0; i<dfo_nr; i++) update_fos_table_item(tags->u.dfo_data.info[i].name, tags->u.dfo_data.info[i].value); }else{ CCCI_UTIL_INF_MSG("atag,dfo=NULL\n"); } }