Lines Matching refs:fdt
33 static int append_psci_compatible(void *fdt, int offs, const char *str) in append_psci_compatible() argument
35 return fdt_appendprop(fdt, offs, "compatible", str, strlen(str) + 1); in append_psci_compatible()
65 int dt_add_psci_node(void *fdt) in dt_add_psci_node() argument
69 if (fdt_path_offset(fdt, "/psci") >= 0) { in dt_add_psci_node()
74 offs = fdt_path_offset(fdt, "/"); in dt_add_psci_node()
78 offs = fdt_add_subnode(fdt, offs, "psci"); in dt_add_psci_node()
82 if (append_psci_compatible(fdt, offs, "arm,psci-1.0") != 0) { in dt_add_psci_node()
85 if (append_psci_compatible(fdt, offs, "arm,psci-0.2") != 0) { in dt_add_psci_node()
88 if (append_psci_compatible(fdt, offs, "arm,psci") != 0) { in dt_add_psci_node()
91 if (fdt_setprop_string(fdt, offs, "method", "smc") != 0) { in dt_add_psci_node()
94 if (fdt_setprop_u32(fdt, offs, "cpu_suspend", PSCI_CPU_SUSPEND_FNID) != 0) { in dt_add_psci_node()
97 if (fdt_setprop_u32(fdt, offs, "cpu_off", PSCI_CPU_OFF) != 0) { in dt_add_psci_node()
100 if (fdt_setprop_u32(fdt, offs, "cpu_on", PSCI_CPU_ON_FNID) != 0) { in dt_add_psci_node()
118 static int dt_update_one_cpu_node(void *fdt, int offset) in dt_update_one_cpu_node() argument
123 for (offs = fdt_first_subnode(fdt, offset); offs >= 0; in dt_update_one_cpu_node()
124 offs = fdt_next_subnode(fdt, offs)) { in dt_update_one_cpu_node()
129 prop = fdt_getprop(fdt, offs, "device_type", &len); in dt_update_one_cpu_node()
136 prop = fdt_getprop(fdt, offs, "enable-method", &len); in dt_update_one_cpu_node()
141 ret = fdt_setprop_string(fdt, offs, "enable-method", "psci"); in dt_update_one_cpu_node()
168 int dt_add_psci_cpu_enable_methods(void *fdt) in dt_add_psci_cpu_enable_methods() argument
173 offs = fdt_path_offset(fdt, "/cpus"); in dt_add_psci_cpu_enable_methods()
178 ret = dt_update_one_cpu_node(fdt, offs); in dt_add_psci_cpu_enable_methods()