
As part of the effort to support Atom processors it became apparent the they can only support microcode updates before RAM is available. In this early environment the device tree is not available.
This series solves this problem by updating ifdtool to provide very early microcode access on these platforms.
Changes in v2: - Add function comments - Fix problem with specifying the full microcode filename - Allow 'list' command to display a list of matching microcode chunks - Print a message when generating microcode - Expand the help a little - Print an error when an ambiguous microcode model is given - Finish off comments in write_uboot() function - Write the correct microcode pointer to U-Boot (fix fdt->addr bug) - Update microcode with output from updated tool - Add new patch to correct problems in the microcode loading - Update microcode file to version 5_cv - Drop patches that have already been applied
Simon Glass (6): x86: Add a script to process Intel microcode files x86: ifdtool: Add support for early microcode access x86: Move microcode updates into a separate directory x86: ivybridge: Update the microcode x86: Correct problems in the microcode loading x86: Convert microcode format to device-tree-only
Makefile | 4 +- arch/x86/cpu/ivybridge/microcode_intel.c | 27 +- arch/x86/cpu/queensbay/M0220661105.inc | 1288 ------------------------- arch/x86/cpu/queensbay/tnc_car.S | 11 +- arch/x86/dts/crownbay.dts | 7 + arch/x86/dts/link.dts | 4 +- arch/x86/dts/m12206a7_00000028.dtsi | 622 ------------ arch/x86/dts/m12306a9_00000017.dtsi | 750 -------------- arch/x86/dts/microcode/m0220661105_cv.dtsi | 366 +++++++ arch/x86/dts/microcode/m12206a7_00000029.dtsi | 686 +++++++++++++ arch/x86/dts/microcode/m12306a9_0000001b.dtsi | 814 ++++++++++++++++ tools/Makefile | 1 + tools/ifdtool.c | 110 ++- tools/microcode-tool | 1 + tools/microcode-tool.py | 245 +++++ 15 files changed, 2248 insertions(+), 2688 deletions(-) delete mode 100644 arch/x86/cpu/queensbay/M0220661105.inc delete mode 100644 arch/x86/dts/m12206a7_00000028.dtsi delete mode 100644 arch/x86/dts/m12306a9_00000017.dtsi create mode 100644 arch/x86/dts/microcode/m0220661105_cv.dtsi create mode 100644 arch/x86/dts/microcode/m12206a7_00000029.dtsi create mode 100644 arch/x86/dts/microcode/m12306a9_0000001b.dtsi create mode 120000 tools/microcode-tool create mode 100755 tools/microcode-tool.py