Lines Matching full:update

6  * Microcode update for Intel PIII and later CPUs
25 * whether the update is applicable or not. We also use the same structure
41 struct microcode_update *update) in microcode_decode_node() argument
43 update->data = fdt_getprop(blob, node, "data", &update->size); in microcode_decode_node()
44 if (!update->data) in microcode_decode_node()
47 update->header_version = fdtdec_get_int(blob, node, in microcode_decode_node()
49 update->update_revision = fdtdec_get_int(blob, node, in microcode_decode_node()
50 "intel,update-revision", 0); in microcode_decode_node()
51 update->date_code = fdtdec_get_int(blob, node, in microcode_decode_node()
53 update->processor_signature = fdtdec_get_int(blob, node, in microcode_decode_node()
55 update->checksum = fdtdec_get_int(blob, node, "intel,checksum", 0); in microcode_decode_node()
56 update->loader_revision = fdtdec_get_int(blob, node, in microcode_decode_node()
58 update->processor_flags = fdtdec_get_int(blob, node, in microcode_decode_node()
99 /* CPUID sets MSR 0x8B iff a microcode update has been loaded. */ in microcode_read_cpu()
121 /* Get a microcode update from the device tree and apply it */
124 struct microcode_update cpu, update; in microcode_update_intel() local
145 ret = microcode_decode_node(blob, node, &update); in microcode_update_intel()
157 debug("%s: Unable to decode update: %d\n", __func__, in microcode_update_intel()
161 if (!(update.processor_signature == cpu.processor_signature && in microcode_update_intel()
162 (update.processor_flags & cpu.processor_flags))) { in microcode_update_intel()
163 debug("%s: Skipping non-matching update, sig=%x, pf=%x\n", in microcode_update_intel()
164 __func__, update.processor_signature, in microcode_update_intel()
165 update.processor_flags); in microcode_update_intel()
169 address = (ulong)update.data + UCODE_HEADER_LEN; in microcode_update_intel()
173 rev, update.date_code & 0xffff, in microcode_update_intel()
174 (update.date_code >> 24) & 0xff, in microcode_update_intel()
175 (update.date_code >> 16) & 0xff); in microcode_update_intel()
176 if (update.update_revision != rev) { in microcode_update_intel()
177 printf("Microcode update failed\n"); in microcode_update_intel()
182 ucode_base = (ulong)update.data; in microcode_update_intel()
183 ucode_size = update.size; in microcode_update_intel()