)]}'
{
  "log": [
    {
      "commit": "ed60963595855e66ffc06a8a543cbb429c7ede03",
      "tree": "1d3d4aec58f52ff6643f254a8b955dbafad62a3c",
      "parents": [
        "c7904c2dee7af838ec08131ecdfe74d4e43a49f9"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Jan 05 10:59:33 2017 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Apr 26 14:18:58 2018 +0100"
      },
      "message": "Enable pointer auth for EL2 and below\n\nBy default, use of pointer authentication functionality (either\ninstructions or access to keys) will trap to EL3.\n\nThis patch programs SCR_EL3 to enable pointer authentication for lower\nexception levels.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "c7904c2dee7af838ec08131ecdfe74d4e43a49f9",
      "tree": "b44816279bd98a1ef45dc13aa9de6c2343b158c2",
      "parents": [
        "7c2bc5495e556c9039f0d3e79d8d5af4ad35baf4"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Mon Apr 23 17:32:06 2018 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Apr 26 13:54:29 2018 +0100"
      },
      "message": "Fix out-of-tree build\n\nAdding AArch32 support to the boot-wrapper changed the source layout and\nbroke out-of-tree build. This patch allows to put all generated files\ninto a separate directory again, and build multiple images in parallel:\n\n    mkdir build/ \u0026\u0026 cd build/\n    ~/src/boot-wrapper-aarch64/configure ...\n    make\n\nMake attempts to output object files into build/arch/aarchXX/, but fails\nbecause that folder doesn\u0027t exist in the build directory. Add mkdir as\nprerequisite for any *.o target in the arch folder.\n\nSo that Make doesn\u0027t confuse the destination folder with the source,\noverride VPATH to only affect .S and .c sources.\n\nAnd set $(ARCH_SRC) as order-only-prerequisite (after a \u0027|\u0027). Otherwise\nMake would rebuild all objects whenever the timestamp of $(ARCH_SRC)\nchanges, which is every time an object is rebuilt...\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "7c2bc5495e556c9039f0d3e79d8d5af4ad35baf4",
      "tree": "b3efb21916ff7ced1a7e1ed823c8f5a315177354",
      "parents": [
        "5e1261e08abfb8add6491b90a42076e864589ced"
      ],
      "author": {
        "name": "Suzuki K Poulose",
        "email": "suzuki.poulose@arm.com",
        "time": "Wed Apr 25 14:06:04 2018 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Apr 26 13:52:58 2018 +0100"
      },
      "message": "boot-wrapper-aarch64: Do not hardcode TEXT_LIMIT\n\nWe hard code TEXT_LIMIT to check for image overflow, assuming the memory\nis always at 0x80000000, which may not always be true. Instead use the\noffset from the PHYS_OFFSET, which is actually dependent on the DT.\n\nSigned-off-by: Suzuki K Poulose \u003csuzuki.poulose@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "5e1261e08abfb8add6491b90a42076e864589ced",
      "tree": "8ddb163e6674dcd8ed9139e605d6ef8fdcb700b0",
      "parents": [
        "ccdc936924b3682db547eb90519cfe7cebd785ed"
      ],
      "author": {
        "name": "Dave Martin",
        "email": "Dave.Martin@arm.com",
        "time": "Wed Sep 20 13:09:48 2017 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Sep 20 13:41:29 2017 +0100"
      },
      "message": "bootwrapper: SVE: Enable SVE for EL2 and below\n\nBy default, SVE will trap to EL3.  We also want to make sure that\nlower ELs have access to the full SVE vector length before dropping\ndown.\n\nThis patch programs CPTR_EL3 and ZCR_EL3 appropriately to enable\nSVE for lower exception levels and make sure that they can use the\nfull vector length provided by the hardware.\n\nSigned-off-by: Dave Martin \u003cDave.Martin@arm.com\u003e\nCc: Alex Bennée \u003calex.bennee@linaro.org\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "ccdc936924b3682db547eb90519cfe7cebd785ed",
      "tree": "c2cc22c340219c7d342d50f01efafc397d3717f1",
      "parents": [
        "6e7aa16562f8ac0a98087d48985b2f4a909e414f"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Jan 19 15:09:32 2017 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Fri Feb 17 12:11:55 2017 +0000"
      },
      "message": "Dynamically determine the set of CPUs\n\nCurrently we hard-code the set of CPUs we expect, and we have some\nstrong expectations on the formatting of nodes.\n\nAs we can configure models with differing sets of CPUs, we added the\nwith-cpu-ids configure option to override this assumption, though in\npractice it turns out this is very fragile.\n\nInstead, we can parse the DTB to discover the set of CPU nodes (and\nhence the set of CPU IDs, and the number of CPUs). This is far more\nrobust.\n\nThis patch changes the bootwrapper to do this, removing the newly\nredundant --with-cpu-ids configure option.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "6e7aa16562f8ac0a98087d48985b2f4a909e414f",
      "tree": "4f98bc30666896cf26b6f800cb5ab7af3b98941c",
      "parents": [
        "1a0163135df878114e520beab207abde36eb2502"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Jan 19 13:59:27 2017 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Jan 19 14:41:52 2017 +0000"
      },
      "message": "FDT.pm: add helper to get a node\u0027s full path\n\nThis will be useful for subsequent patches where we want to\nautomatically configure properties for nodes which may have arbitrary\nnames.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "1a0163135df878114e520beab207abde36eb2502",
      "tree": "c921ff7d41656445fdecf94a78f40451e487956f",
      "parents": [
        "a184c6afdf8989b3baea864e65cf9260c24d1cfc"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Jan 19 14:12:59 2017 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Jan 19 14:41:48 2017 +0000"
      },
      "message": "FDT.pm: add helper to get untranslated reg\n\nIn some cases, we\u0027ll want to parse a reg property that cannot be\ntranslated, e.g. for cpu nodes. Add a helper to extract the reg without\nattempting translation, factoring this logic out of\nNode::get_translated_reg().\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "a184c6afdf8989b3baea864e65cf9260c24d1cfc",
      "tree": "d214dc68a1ac9084e24543d9fe61751f3bd72113",
      "parents": [
        "b2ff532cb2969cebef2a711c6d9cee80e0ccfa21"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Mon Jan 09 17:19:24 2017 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Mon Jan 09 17:37:41 2017 +0000"
      },
      "message": "FDT.pm: consistently check defined()\n\nIn a few cases, we check not $var to check if a var has a defined value.\nThis also catches the case where $var has a defined value, but evaluates\nto false (e.g. if $var is zero).\n\nIn FDT::Node::get_translated_reg(), this erroneous check means that reg\nentries with an address zero will not be translated, even where there is\na valid set of ranges properties in parent nodes.\n\nElsewhere, this is simply inconsistent, but not otherwise harmful.\n\nFix the code to use defined($var) consistently.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\nReported-by: Vladimir Murzin \u003cvladimir.murzin@arm.com\u003e\nTested-by: Vladimir Murzin \u003cvladimir.murzin@arm.com\u003e\n"
    },
    {
      "commit": "b2ff532cb2969cebef2a711c6d9cee80e0ccfa21",
      "tree": "c4611ae0d76b1b1e6c8e1042264b214739ac1c8b",
      "parents": [
        "19c7205c2fdb4fb1c666b75cf186969761b3c90f"
      ],
      "author": {
        "name": "Christoffer Dall",
        "email": "christoffer.dall@linaro.org",
        "time": "Thu Dec 15 12:27:18 2016 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jan 03 17:29:23 2017 +0000"
      },
      "message": "Explicitly clean linux-system.axf and xen-system.axf\n\nWhen doing a make clean, only the output image currently configured to\nbuild is being removed.  However, one would expect all build artifacts\nto be removed when doing a \u0027make clean\u0027 and when switching between Xen\nand Linux builds, it is easy to accidentally run an older build than\nintended.  Simply hardcode the axf image file names.\n\nSigned-off-by: Christoffer Dall \u003cchristoffer.dall@linaro.org\u003e\nSigned-off-by: Andre Przywara \u003candre.przywara@arm.com\u003e\nReviewed-by: Julien Grall \u003cjulien.grall@arm.com\u003e\nTested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nReviewed-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "19c7205c2fdb4fb1c666b75cf186969761b3c90f",
      "tree": "2624f932a63c79a88c0d2a5a1f6999bedc3e72a9",
      "parents": [
        "ffe062bd235d8b698ac94edbac3192e8b3beb760"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "ian.campbell@citrix.com",
        "time": "Thu Dec 15 12:27:17 2016 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jan 03 17:26:28 2017 +0000"
      },
      "message": "Xen: Select correct dom0 console\n\nIf Xen is enabled, tell Dom0 to use the \u0027hvc0\u0027 console, and fall back to\nthe usual ttyAMA0 otherwise.\n\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nSigned-off-by: Christoffer Dall \u003cchristoffer.dall@linaro.org\u003e\nSigned-off-by: Andre Przywara \u003candre.przywara@arm.com\u003e\nReviewed-by: Julien Grall \u003cjulien.grall@arm.com\u003e\nTested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "ffe062bd235d8b698ac94edbac3192e8b3beb760",
      "tree": "d3b5831149050aa380169be96d493ed2874612d7",
      "parents": [
        "fdb7db1922643aad76496dea2364853781fc1cb5"
      ],
      "author": {
        "name": "Christoffer Dall",
        "email": "christoffer.dall@linaro.org",
        "time": "Thu Dec 15 12:27:16 2016 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jan 03 17:14:01 2017 +0000"
      },
      "message": "Xen: Support adding DT nodes\n\nSupport adding xen,xen-bootargs node via --with-xen-cmdline to the\nconfigure script and automatically add the Dom0 node to the DT as well.\n\nSigned-off-by: Christoffer Dall \u003cchristoffer.dall@linaro.org\u003e\nSigned-off-by: Andre Przywara \u003candre.przywara@arm.com\u003e\nTested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nReviewed-by: Julien Grall \u003cjulien.grall@arm.com\u003e\n[Mark: s/XEN_BOOTARGS/XEN_CHOSEN/]\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "fdb7db1922643aad76496dea2364853781fc1cb5",
      "tree": "d7f5c96f1d9c34006d438cccbeb3bde3662ad242",
      "parents": [
        "1396ef76ee6e4e6079f032cd89aa50276ec65487"
      ],
      "author": {
        "name": "Christoffer Dall",
        "email": "christoffer.dall@linaro.org",
        "time": "Thu Dec 15 12:27:15 2016 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jan 03 16:38:51 2017 +0000"
      },
      "message": "Support for building in a Xen binary\n\nAdd support for building a Xen binary which includes a Dom0 image and\nthe Dom0 command-line.\n\nIf the user specifies --with-xen\u003d\u003cXen\u003e, where Xen is an appropriate\nAArch64 Xen binary, the build system will generate a xen-system.axf\ninstead of a linux-system.axf.\n\nOriginal patch from Ian Campbell, but I modified most of it so all bugs\nare probably mine.\n[Andre: adapt to newest boot-wrapper branch, increase load address,\n\tfixup Xen image file test]\n\nCc: Ian Campbell \u003cijc@hellion.org.uk\u003e\nSigned-off-by: Christoffer Dall \u003cchristoffer.dall@linaro.org\u003e\nSigned-off-by: Andre Przywara \u003candre.przywara@arm.com\u003e\nTested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nReviewed-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nReviewed-by: Julien Grall \u003cjulien.grall@arm.com\u003e\n"
    },
    {
      "commit": "1396ef76ee6e4e6079f032cd89aa50276ec65487",
      "tree": "de4a900581b5182d44ea5491b48b4daa8914ccf9",
      "parents": [
        "e3fe71d0a592064adf1bfde81193b23df03c3469"
      ],
      "author": {
        "name": "Andre Przywara",
        "email": "andre.przywara@arm.com",
        "time": "Thu Dec 15 12:27:14 2016 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jan 03 16:35:21 2017 +0000"
      },
      "message": "configure: fix file detection when cross-compiling\n\nThe autotools documentation states that AC_CHECK_FILE cannot be used when\ncross-compiling [1], because it\u0027s meant to check files in the target\nsystem, not on the build host. When just giving --host on the configure\ncommand line, the script detects cross compilation rather late; and as the\nfile test just happens to execute earlier, this works anyway.\nHowever if one gives both --host and --build, cross compilation is\ndetected very early and ./configure complains:\n\nchecking for /src/linux-arm64... configure: error: cannot check for file existence when cross compiling\n\nSo replace the checkfile macro usage with a simple \"test -f\" call (which\nis the recommended way of checking for files on the build host) and output\nproper error messages.\n\n[1] https://www.gnu.org/software/autoconf/manual/autoconf.html#Files\n\nSigned-off-by: Andre Przywara \u003candre.przywara@arm.com\u003e\n[Mark: simplified error messages]\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "e3fe71d0a592064adf1bfde81193b23df03c3469",
      "tree": "617f12b38d2b94c0b9b15db0238b0849552614f5",
      "parents": [
        "5933e49b6f45fa18dd1e32d14372bb60837ff954"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Fri Dec 04 12:43:20 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 15 10:27:35 2016 +0100"
      },
      "message": "Add AArch32 to the boot-wrapper\n\nThis patch allows to build a 32-bit boot-wrapper, and create a complete\nlinux-system.axf for models that start in AArch32. Most of the code is a\nsimple translation of the AArch64 side.\n\nWe add an --aarch32-bw argument to ./configure, and bump the version to\n0.2, to welcome this new architecture.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "5933e49b6f45fa18dd1e32d14372bb60837ff954",
      "tree": "79928d6bffb9fd92731e89c55a8dad9ed8faf6bc",
      "parents": [
        "259bef910fee48a927e4700e9e82f99e94962098"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Thu Oct 08 10:08:18 2015 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 15 10:27:35 2016 +0100"
      },
      "message": "Protect against overlapping with the 32-bit kernel\n\nThis patch adds a guard in the linker script to abort the build when the\nbootloader code overflows the 12k limit. Indeed, 32-bit Linux with LPAE\nenabled puts its initial page tables between 0x80003000 and 0x80007fff.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "259bef910fee48a927e4700e9e82f99e94962098",
      "tree": "480a6ea46677c13399639827bd781435a7b2be1f",
      "parents": [
        "c311db0c5821f72604bfdaf40c6cbb0b672017c1"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Tue Sep 22 10:42:15 2015 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 15 10:27:35 2016 +0100"
      },
      "message": "Add support for 32-bit kernel\n\nThis patch adds an --enable-aarch32-kernel parameter to ./configure,\nwhich enables dropping into AArch32 state at EL2. Notable differences\nwith AArch64 boot are:\n\n* SCR.RW is set to 0, to declare all lower levels as AArch32,\n* SPSR_EL2 has a 32-bit M[4:0] field,\n* kernel parameters are different, but we can still put them into x0-x2,\n  because those registers are mapped to r0-r2 (ARM ARM v8 D1.20.1)\n* SCTLR.CP15BEN is set, to allow the Linux decompressor to keep using\n  its legacy CP15 barriers.\n* We also need to make sure MMU is disabled at EL1: hyp-stub in arm64\n  resets SCTLR_EL1, but the 32-bit hyp-stub doesn\u0027t. Leaving SCTRL.M set\n  would break hotplug when no hypervisor is present.\n* PSCI function ID for CPU_ON differs.\n\nWe don\u0027t plan to support spin method on 32-bit. PSCI is automatically\nenabled by ./configure, and this patch forbids disabling it.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "c311db0c5821f72604bfdaf40c6cbb0b672017c1",
      "tree": "23aa61afc9d7fe809df0b8621a7f61292b8ed84e",
      "parents": [
        "f01ed6c65ce267c37efc3d48fc68e36af2d00e62"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Wed Sep 23 15:21:09 2015 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 15 10:27:35 2016 +0100"
      },
      "message": "Add 32-bit compatibility to device-tree CPU nodes\n\nThe 32-bit DT parser in Linux doesn\u0027t understand \u0027reg\u0027 properties with\ntwo cells, in a CPU node. Since the boot-wrapper always sets the upper\nbits to 0, we can restrict that size to one cell.\n\nThe parser also requires the device_type property to be present. This is\nthe case for arm64 as well, but it only fails when the patched device-tree\ndoesn\u0027t have any CPU node to begin with. Add device_type unconditionally.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "f01ed6c65ce267c37efc3d48fc68e36af2d00e62",
      "tree": "cc6e87873aa70574bf54ca55c24a4fac922741ba",
      "parents": [
        "0bb7b2545582accfdc440c099d9ccba4b3108c26"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Wed May 18 17:32:19 2016 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 15 10:27:35 2016 +0100"
      },
      "message": "AArch64: get rid of EL2 trampoline\n\nThere is no harm in initialising the platform from EL3, so we move the\ncall into the boot_common path of CPU0, and take the opportunity to\nrename ns_init_system to init_platform. Caches and MMU are now disabled\nat EL3, and we can also move cache maintenance in the initial boot path\nof each CPU. This allows us to get rid of the EL2 layer, which makes\nAArch32 kernel support possible.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "0bb7b2545582accfdc440c099d9ccba4b3108c26",
      "tree": "5e44cdfca31fa19bf4e7a05971a0600bb2d15be6",
      "parents": [
        "50eb940341fe22e2a3e36d9d8d06ad40b8b961f0"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Thu Dec 10 19:28:24 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 15 10:27:35 2016 +0100"
      },
      "message": "Remove MMU identity map setup\n\nWe have a few good reasons to leave MMU disabled at EL3:\n\n* Translations defined by our static pages might alias with the kernel,\n  leading to mismatched memory attributes and all kinds of pains.\n\n* For legacy reasons, boot-wrapper accesses are not cached at the\n  moment (SCTLR_EL3.C is unset)\n\n* It feels cumbersome to enable the MMU for one small exclusive\n  operation.\n\n* Removing the static page tables also frees 4k of memory, which is\n  quite welcome when loading a 32-bit kernel case, where we only have\n  12k of bootloader RAM to play with.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "50eb940341fe22e2a3e36d9d8d06ad40b8b961f0",
      "tree": "6e30e03142b34331126aa307076309ce54558efe",
      "parents": [
        "5714dbb8b62ac25f336e5256dcc2fd8fe7c37b1b"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Thu Dec 10 19:24:59 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 15 10:27:35 2016 +0100"
      },
      "message": "Replace exclusive accesses with a bakery lock\n\nThe commit prepares the removal of the MMU identity map, which was only\nused for exclusive accesses (ldxr/stxr) in psci_cpu_on.\n\nInstead of relying on exclusives, we assume that when stage-1\ntranslation is disabled, all EL3 memory accesses have Device type, with\nnon-gathering and non-reordering attributes. This guarantees single-copy\natomicity of aligned halfword accesses, as per the ARM ARM.\n\nWe can thus switch to a less constrained (albeit bulkier) locking\nmechanism. This patch implements Lamport\u0027s bakery lock, which doesn\u0027t\nrely on atomic compare-and-swap primitives.\n\nFor bisectability, we remove the call to switch_to_idmap here.\nOtherwise, the assertions made by the bakery lock code, regarding order\nof accesses, are invalid. The rest of the code will be removed in a\nsubsequent patch.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "5714dbb8b62ac25f336e5256dcc2fd8fe7c37b1b",
      "tree": "b951ea36df5e0977e6bf2e3ee31467d2c5b5fbd4",
      "parents": [
        "f730ba47d27c6f56dd9cc2c86cf895303ff0d8d6"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Thu Dec 17 14:59:46 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 15 10:27:35 2016 +0100"
      },
      "message": "Add GCC library functions\n\nGCC might generate implicit calls to standard functions, for example\nmemcpy when copying a struct. Implement these functions upfront, to\nensure that GCC never uses some optimized version, which could do\nunaligned device memory accesses. We only implement memcpy and memset\nfor the moment. The others (memmove, memcmp, ...) can be added in the\nfuture if required.\n\nWe also add flags \"-ffunction-sections\", \"-fdata-sections\" to GCC, and\n\"--gc-sections\" to ld, in order to avoid linking those functions into\nthe final image when they aren\u0027t used.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "f730ba47d27c6f56dd9cc2c86cf895303ff0d8d6",
      "tree": "124997f57fc03fb6579c2eebf67348e2deddde59",
      "parents": [
        "5b2546dff953719ff7562bef7d1a67cfb618f10e"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Fri Dec 04 17:28:18 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 15 10:27:35 2016 +0100"
      },
      "message": "Rewrite cache flush in C\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "5b2546dff953719ff7562bef7d1a67cfb618f10e",
      "tree": "1b46621fa69693a33c4bea605faf9b0facc3347b",
      "parents": [
        "7ff3872adb33b068706c00a96a6540d2feea896f"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Fri Dec 04 17:21:19 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 15 10:27:07 2016 +0100"
      },
      "message": "Rewrite GIC drivers in C\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\n[Mark: fold GICv3 and GICv2 patches for bisectability]\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "7ff3872adb33b068706c00a96a6540d2feea896f",
      "tree": "10c3bb4f0c533399c3e985522ed966687fb2bcaf",
      "parents": [
        "fc4857f4292d0dfc40b5c32d80f16d47e27f98cc"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Fri Dec 04 17:16:34 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jun 14 17:49:47 2016 +0100"
      },
      "message": "Rewrite platform initialisation in C\n\nAdd two assembly helpers for 32-bit MMIO accesses, and translate\nplatform initialisation to C. Since we can now add features without too\nmuch pain, also output a string describing the boot-wrapper version.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "fc4857f4292d0dfc40b5c32d80f16d47e27f98cc",
      "tree": "25e898f9d4c183a3c19eeb3ee2ad2ebbe01a86ea",
      "parents": [
        "abd980e0f52240a46f6815001cdf44fa387c2c80"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Fri Dec 04 16:42:42 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jun 14 17:49:43 2016 +0100"
      },
      "message": "AArch64: clean common.S\n\nRemove macro drop_el since its only user is now boot.S, and move all\ndefines to cpu.h.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "abd980e0f52240a46f6815001cdf44fa387c2c80",
      "tree": "f737641871b1ccc0a29b9505576aaffbe90f923a",
      "parents": [
        "d16746c76b3dfe58e96a03375c6887f3c82333d7"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Tue Dec 01 19:51:23 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jun 14 17:49:37 2016 +0100"
      },
      "message": "Rewrite boot methods in C\n\nThis patch brings the boot-wrapper into the twenty-first century, by\nintroducing it to the C language. This change, along with the next few\npatches, will greatly simplify the AArch32 port and overall maintenance.\n\nThe assembly side of PSCI now only contains basic dispatchers, for both\nboot and SMC entries.\n\nInitial boot flow:\n\tasm\t_start\t\t\tboot.S\n\t\tstart_(no_)el3\t\tpsci.S or spin.S\n\tC\tfirst_spin\t\tboot_common.c\n\t\tspin\t\t\tboot_common.c\n\tasm\tjump_kernel if CPU0\tboot.S\n\nCPU_ON flow:\n\tasm\tsmc_entry\t\tpsci.S\n\tC\tpsci_cpu_on\t\tpsci.c\n\tasm\tsmc_exit\t\tpsci.S\n\nCPU_OFF flow:\n\tasm\tsmc_entry\t\tpsci.S\n\tC\tpsci_cpu_off\t\tpsci.c\n\t\tspin\t\t\tboot_common.c\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "d16746c76b3dfe58e96a03375c6887f3c82333d7",
      "tree": "cfaf50ba01a6b5760139ebbb4e1e97f8f4967fba",
      "parents": [
        "3c1a7c71729fd18242ac420c136afdfa337dc0b1"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Fri Dec 04 17:39:07 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jun 14 17:49:33 2016 +0100"
      },
      "message": "AArch64: factor CPU ID getters\n\nThis patch adds a simple utility to read the current CPU ID from C or\nassembly. The underlying objective of this seemingly useless change is\nto provide a clean base for C helpers. It introduces two include paths:\ninclude/ and arch/*/include/asm\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "3c1a7c71729fd18242ac420c136afdfa337dc0b1",
      "tree": "315d97d3b09da000deead314c0531ad6a5bd7ba5",
      "parents": [
        "8fe23b296fb92637458e8f05c3f02efb58367fec"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Thu Nov 26 17:49:41 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jun 14 17:49:29 2016 +0100"
      },
      "message": "AArch64: add a small stack for each CPU\n\nWhen rewriting some bits of the boot-wrapper in C, we will need tiny\nper-CPU stacks. This patch reserves 256 bytes of stack for each CPU\ndefined in the CPU_IDS macro.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "8fe23b296fb92637458e8f05c3f02efb58367fec",
      "tree": "883dddf939d8a5f34bebc5f806eeb5371e189b91",
      "parents": [
        "23cc2e03e2d0354a0a61d1f11ac704381475757b"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Mon Dec 14 19:39:46 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jun 14 17:49:25 2016 +0100"
      },
      "message": "AArch64: extract common utilities from PSCI\n\nHelpers find_logical_id and setup_vector, as well as the number of\nexpected CPUs, will be needed outside of PSCI during future refactoring\nwork. This patch puts them into utils.S, and moves the number of CPUs\none level up, in a macro defined by the Makefile.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "23cc2e03e2d0354a0a61d1f11ac704381475757b",
      "tree": "b4c91511f86f6ef85aa3381105ca4d93c53a4fe1",
      "parents": [
        "972310147bb45d7f0c0530313ac28125fe9b70fe"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Wed Sep 16 16:18:05 2015 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jun 14 17:49:21 2016 +0100"
      },
      "message": "Move all sources to arch-specific folder\n\nThis patch moves all assembly to arch/aarch64.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "972310147bb45d7f0c0530313ac28125fe9b70fe",
      "tree": "017c6f6f1e7ca116b1a5e6a9b3b39567cd13dbc7",
      "parents": [
        "8aca634eda45e13d653fe41109d70dbbc2c3cf17"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Tue Dec 01 19:51:56 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jun 14 17:49:16 2016 +0100"
      },
      "message": "Make the linker script more generic\n\nAttempt to make the linker script more flexible, by removing explicit\nobject names. We move boot code into a \".init\" section, and let ld freely\nreorganize the rest.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "8aca634eda45e13d653fe41109d70dbbc2c3cf17",
      "tree": "ef734dd70684d2937bc8cb26274d389a236ea868",
      "parents": [
        "9f01bed3a1c944c3d2bac84b497cbffdacb707ad"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Wed Oct 07 19:20:43 2015 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jun 14 17:49:11 2016 +0100"
      },
      "message": "Clean up image layout\n\nThis patch moves page tables and vectors to their own section, in order\nto avoid big alignment gaps in the middle of .text or .data. We also\nremove all .org directives, as they are not needed.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "9f01bed3a1c944c3d2bac84b497cbffdacb707ad",
      "tree": "cbd600b1206627eb25e57345ea212974f5fdbca1",
      "parents": [
        "988b01a8eabdee19866a472a7b290a2b5ac1e3e3"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Thu Nov 26 18:04:11 2015 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jun 14 17:49:06 2016 +0100"
      },
      "message": "Pass object files on the ld command line\n\nThe 32-bit linker struggles with INPUT directives in linker scripts, and\ntends to include the whole ELF files instead of merging their sections.\n\nRemove INPUT for object files and pass them as arguments to ld instead.\nAlso sneakily remove the orphan \"BOOTLOADER\" variable from Makefile.am,\nsince we\u0027re cleaning things up. It hasn\u0027t been used for a while.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "988b01a8eabdee19866a472a7b290a2b5ac1e3e3",
      "tree": "418f6b8b0d841afd16233faaedd32fa63fe8d3d2",
      "parents": [
        "26a17ad59544f026878efdb0524ce66b7a314784"
      ],
      "author": {
        "name": "Jean-Philippe Brucker",
        "email": "jean-philippe.brucker@arm.com",
        "time": "Fri Apr 22 13:51:48 2016 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jun 14 17:48:39 2016 +0100"
      },
      "message": "Clean up PSCI function IDs\n\nThe boot-wrapper allows to boot secondary CPUs through a PSCI interface.\nThis implementation is incomplete, and only understands two SMC calls,\nCPU_ON and CPU_OFF. Since PSCI versions \u003e\u003d0.2 require to implement a few\nmore functions (VERSION, SUSPEND, SYSTEM_OFF...), we implement PSCI 0.1,\nwhich doesn\u0027t specify what SMC numbers to use. An implementation needs\nto advertise its SMC numbers to the kernel through device-tree nodes.\n\nOur current SMC numbers are inconsistent with the rest of the world:\n\n                 |  B-W (0.1)   | U-boot (0.1) |     v0.2\n  ---------------+--------------+--------------+--------------\n         CPU_OFF |  0x84000001  |  0x95c1ba5f  |  0x84000002\n  64-bit CPU_ON  |  0x84000002  |  0x95c1ba60  |  0xc4000003\n\nThis is a problem when testing systems like Jailhouse, that currently\ndon\u0027t read the device-tree but hard-code PSCI IDs. To align with the\nrest of the world, switch to PSCI 0.2 IDs.\n\nNote: this patch does *not* add PSCI 0.2 compatibility to the\nboot-wrapper. We still advertise as 0.1.\n\nSigned-off-by: Jean-Philippe Brucker \u003cjean-philippe.brucker@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "26a17ad59544f026878efdb0524ce66b7a314784",
      "tree": "ec6287712137c6c155859d91eaa8a0d4a847a325",
      "parents": [
        "119f54ca240684f47d8c1897ca4594fccc59846b"
      ],
      "author": {
        "name": "Andre Przywara",
        "email": "andre.przywara@arm.com",
        "time": "Tue Jul 29 17:18:51 2014 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Nov 06 17:34:25 2014 +0000"
      },
      "message": "bootwrapper: improve UART initialisation\n\nThe PL011 spec requires that baud rate settings should be done by\nwriting both xBRD registers followed by a write to LCR_H (which we\nskipped so far completely).[1]\nSo include the FBRD register write as well and set up the LCR_H\nregister to initialise the UART to 8N1.\nAlso skip the automatic RTS/CTS enablement, as this may not be\nused by the peer (and the generic UART does not have it at all).\n\n[1] ARM PL011 TRM, 3.3.7 (top of page 3-14)\n\nSigned-off-by: Andre Przywara \u003candre.przywara@arm.com\u003e\n"
    },
    {
      "commit": "119f54ca240684f47d8c1897ca4594fccc59846b",
      "tree": "e6548fee8cbd07ddce2ae40f6aee07d89b13720e",
      "parents": [
        "955cb98c8b6c47dddc4191011ec0c45f51d6da09"
      ],
      "author": {
        "name": "Vladimir Murzin",
        "email": "vladimir.murzin@arm.com",
        "time": "Fri Aug 08 11:35:08 2014 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Nov 06 17:34:24 2014 +0000"
      },
      "message": "Set sctlr_el2 to predefined state for all CPUs\n\nCurrently, sctlr_el2 is initialised only in the cold boot path, and even then\nwe didn\u0027t set the RES1 bits. So we\u0027re lucky the cold boot path ever worked\ngiven most of the bits are UNKNOWN.\n\nLack of initialisation in the hot boot path leads to kernel crash while CPU is\nhot-plugging and KVM is enabled:\n\nroot@genericarmv8:~# echo 0 \u003e /sys/devices/system/cpu/cpu1/online\nkvm: disabling virtualization on CPU1\nCPU1: shutdown\nroot@genericarmv8:~# echo 1 \u003e /sys/devices/system/cpu/cpu1/online\nKernel panic - not syncing: HYP panic:\nPS:000003c9 PC:0000000080002394 ESR:0000000086000005\nFAR:0000000080002394 HPFAR:          (null) PAR:          (null)\nVCPU:          (null)\n\nCPU: 1 PID: 0 Comm: swapper/1 Not tainted 3.16.0-rc1+ #162\nCall trace:\n[\u003cffffffc0000880d8\u003e] dump_backtrace+0x0/0x12c\n[\u003cffffffc000088214\u003e] show_stack+0x10/0x1c\n[\u003cffffffc000472680\u003e] dump_stack+0x74/0xc4\n[\u003cffffffc00046f8ec\u003e] panic+0xe4/0x21c\n[\u003cffffffc00046f804\u003e] mmu_memory_cache_alloc.part.25+0x34/0x38\n[\u003cffffffc00008a26c\u003e] cpu_psci_cpu_die+0x20/0x40\n[\u003cffffffc00008e95c\u003e] cpu_die+0x40/0x70\n[\u003cffffffc0000852e0\u003e] arch_cpu_idle_dead+0x8/0x14\n[\u003cffffffc0000dca4c\u003e] cpu_startup_entry+0x144/0x14c\n[\u003cffffffc00008e7f0\u003e] secondary_start_kernel+0x118/0x128\n\nInitialise sctlr_el2 in the reset value just before dropping from EL3 for psci\nand spin-table boot protocols.\n\nSigned-off-by: Vladimir Murzin \u003cvladimir.murzin@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "955cb98c8b6c47dddc4191011ec0c45f51d6da09",
      "tree": "c0ceaf2db653f8601d0aa9ec2dd34bc5c5c979a5",
      "parents": [
        "877b6eea207b0d89a236abc152a301cdb5f0d358"
      ],
      "author": {
        "name": "Marc Zyngier",
        "email": "marc.zyngier@arm.com",
        "time": "Wed Aug 06 15:45:10 2014 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Nov 06 17:34:24 2014 +0000"
      },
      "message": "boot-wrapper: arm64: gicv3: skip GIC init if not available\n\nRather than exploding very early on, just skip the GICv3 initialization\nif no GICv3 CPU interface is reported available.\n\nSigned-off-by: Marc Zyngier \u003cmarc.zyngier@arm.com\u003e\n[Mark: amend comment]\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "877b6eea207b0d89a236abc152a301cdb5f0d358",
      "tree": "a1c7d2924d3441a8fdc2bb446c27735a243a75ea",
      "parents": [
        "5ba492c144223079f475090ff4f8a72e9e5e44e7"
      ],
      "author": {
        "name": "Geoff Levand",
        "email": "geoff@infradead.org",
        "time": "Thu Jun 12 01:12:56 2014 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 18 18:11:53 2014 +0100"
      },
      "message": "configure: Fixes for --enable-xxx\n\nWhen the --enable-psci\u003dno or --enable-gicv3\u003dno form of configure option\nwas passed our configure script was setting the option to yes.  This\nchanges the logic slightly to fix the problem.\n\nSigned-off-by: Geoff Levand \u003cgeoff@infradead.org\u003e\n[Mark: fit with exiting USE_FEATURE naming scheme, fix whitespace]\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "5ba492c144223079f475090ff4f8a72e9e5e44e7",
      "tree": "a924b828ed67dbdfe94477d29d5e16de7093e159",
      "parents": [
        "09d7031d5642ff1d81c0dede9b86822d67b6b52a"
      ],
      "author": {
        "name": "Geoff Levand",
        "email": "geoff@infradead.org",
        "time": "Thu Jun 12 01:12:56 2014 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 18 18:11:35 2014 +0100"
      },
      "message": "Makefile: Add local perl module include path\n\nWe recently added perl scripting to our makefile, but omitted adding the include\npath of the local modules in the invocation of perl.  Fixes build errors like\nthese when building out of the source tree:\n\n  Can\u0027t locate FDT.pm in @INC (you may need to install the FDT module)\n\nSigned-off-by: Geoff Levand \u003cgeoff@infradead.org\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "09d7031d5642ff1d81c0dede9b86822d67b6b52a",
      "tree": "3e2df770dca9c7ee67f167930f81d80789e94e45",
      "parents": [
        "1a5cc50778aadad8f7cde86940dc7ab6a54395f3"
      ],
      "author": {
        "name": "Marc Zyngier",
        "email": "marc.zyngier@arm.com",
        "time": "Thu Apr 24 16:17:22 2014 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Fri May 09 18:43:52 2014 +0100"
      },
      "message": "boot-wrapper: arm64: add support for GICv3\n\nPerforms the minimal initialization required for GICv3 support.\nSupport can be enabled with --enable-gicv3.\n\nSigned-off-by: Marc Zyngier \u003cmarc.zyngier@arm.com\u003e\nSigned-off-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "1a5cc50778aadad8f7cde86940dc7ab6a54395f3",
      "tree": "aa50a3d973efa8494725da1ba08bb146a84d9362",
      "parents": [
        "987e8754cbe5f85cd6c0274f549691b8433a61c0"
      ],
      "author": {
        "name": "Will Deacon",
        "email": "will.deacon@arm.com",
        "time": "Thu Apr 24 16:17:21 2014 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Fri May 09 18:36:03 2014 +0100"
      },
      "message": ".gitignore: add auto-generated `compile\u0027 file\n\nSeems that something in autotools spits out a `compile\u0027 script, so add\nthis to .gitignore.\n\nSigned-off-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "987e8754cbe5f85cd6c0274f549691b8433a61c0",
      "tree": "fdd488fb2c916a2b0083b58a7158f9c743a9e125",
      "parents": [
        "80a9599916b0cd2222d7fba0beb3909c967e6604"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Apr 15 16:20:48 2014 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Apr 15 16:20:48 2014 +0100"
      },
      "message": "Allow DTB to be overridden\n\nSome platforms differ significantly enough from the RTSM VE platform\nsuch the RTSM VE DTB is not a valid DTB for the platform. Now that we\nhave the appropriate logic for detecting device and memory base\naddresses, there\u0027s no reason we can\u0027t allwo the user to arbittrarily\nchoose to use another DTB so long as the basics are present (memory, a\npl011, and V2M sysregs).\n\nThis patch adds a \"--with-dtb\" option to override the DTB to use. The\naformentioned base addresses are automatically dicovered at build time.\nWhere a required device is not present, the build will fail.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "80a9599916b0cd2222d7fba0beb3909c967e6604",
      "tree": "88460b1eb43b7c8c36385b7d88ff3dbc4ae518ad",
      "parents": [
        "000a66b55f725918f55d40515bae5c400a969cad"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Apr 15 16:02:02 2014 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Apr 15 16:08:19 2014 +0100"
      },
      "message": "Discover memory from the DTB\n\nIn case the start of physical memory happens to be different on some\nmodel variant, this patch adds the necessary tooling to detect the base\naddress of said memory and ensure that the kernel and wrapper get loaded\nat appropriate addresses.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "000a66b55f725918f55d40515bae5c400a969cad",
      "tree": "23f1d6993b94ba36c7d948b5dcfd2ab862959294",
      "parents": [
        "0cb95d9d55b99b4b08f19b2349b2d5d1575b17a8"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Apr 15 14:31:44 2014 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Apr 15 16:08:14 2014 +0100"
      },
      "message": "Discover device base addresses from the DTB\n\nThe base addresses of various components can differ from one model to\nanother. As these addresses are currently hard-coded in the bootwrapper,\nit is necessary to manually alter the bootwrapper for each variation.\n\nThis patch adds scripting to extract the (absolute / CPU) addresses of\nvarious system components. With this change the bootwrapper build system\nwill automatically discover the addresses that need to be used.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "0cb95d9d55b99b4b08f19b2349b2d5d1575b17a8",
      "tree": "2064f521943d581214fa0f56e054c8af8134cb75",
      "parents": [
        "2ff0b45423226d3de898a52a81b8e90b20fecd60"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Apr 15 14:38:15 2014 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Apr 15 15:38:47 2014 +0100"
      },
      "message": "Add FDT perl module\n\nThere are various models (RTSM VE, FVP Base, Foundation) which the\nbooterapper is intended to function on, but differences between these\n(be they static or configurable) are difficult to handle as the\nbootwrapper currently has hard-coded base addresses.\n\nWe already have a platform description (the device tree blob) which must\ncontain the correct addresses for a real OS to function, and it would be\nnice if we could extract the values out of the device tree rather than\nredundantly describing them in the boot wrapper.\n\nThis patch adds a pure perl library for parsing and querying values from\na device tree blob. Scripts may use this library to extract addresses\nand other values from the DT.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "2ff0b45423226d3de898a52a81b8e90b20fecd60",
      "tree": "24bac9869a31c6e15491568bec66df053575571b",
      "parents": [
        "59478438a52f3dcc7a592f77a96ec68b3769cb36"
      ],
      "author": {
        "name": "Geoff Levand",
        "email": "geoff@infradead.org",
        "time": "Fri Apr 04 00:07:01 2014 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Mon Apr 07 18:23:48 2014 +0100"
      },
      "message": "Fix maintainer-clean make target\n\nAdd the missing MAINTAINERCLEANFILES to makefile.am.\n\nSigned-off-by: Geoff Levand \u003cgeoff@infradead.org\u003e\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "59478438a52f3dcc7a592f77a96ec68b3769cb36",
      "tree": "c938b9d7c8dda796e4dbe4ad749277d3460cd3ea",
      "parents": [
        "ebc511d7b1215b02c7ff1804f14307ec9619dedb"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Mar 20 15:40:46 2014 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Mar 20 15:52:49 2014 +0000"
      },
      "message": "cache.S: fix misleading comments\n\nA couple of comments in cache.S are misleading. While they do not affect\nthe correctness of the code they do make it somewhat difficult to reason\nabout it:\n\nCSSIDR_EL1[12:3] contains the associativity field, which is enconded as\none less than the total number of ways, (matching the maximum way index)\nso the comment on line 40 is wrong.\n\nCounting the leading zeros on a 32-bit register with the extracted\nassociativity field results in 32 - ceil(log2(max way index)), rather\nthan log2(ways) rounded down. Thus the comment on line 41 is also wrong.\n\nThis patch adjusts both comments to better reflect the code.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "ebc511d7b1215b02c7ff1804f14307ec9619dedb",
      "tree": "6f54cc1527fbd0fe358a52abbfa19d876e9a7fe8",
      "parents": [
        "4266507a84f8c06452109d38e0350d4759740694"
      ],
      "author": {
        "name": "Vladimir Murzin",
        "email": "vladimir.murzin@arm.com",
        "time": "Thu Mar 20 11:01:32 2014 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Mar 20 15:38:20 2014 +0000"
      },
      "message": "fix SetWay bits alignment for DC op\n\nAlthought comment is aligned with ARMv8 ARM implentation is different. In\nfact, \"set\" is shifted by \"shift\" and \"way\" is shifted by \"line size\".\n\nCorrect this missalignment.\n\nSigned-off-by: Vladimir Murzin \u003cvladimir.murzin@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "4266507a84f8c06452109d38e0350d4759740694",
      "tree": "8382900b6b14d8b938dc506540b719ab9d49d4d8",
      "parents": [
        "e4ae51a1c128ccaac01bdc834692fd15c3a3c8de"
      ],
      "author": {
        "name": "Matthew Leach",
        "email": "Matthew.Leach@arm.com",
        "time": "Thu Jan 23 17:29:31 2014 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Mar 12 11:15:58 2014 +0000"
      },
      "message": "Modify cpu nodes to set the enable-method\n\nWhen using PSCI, the enable-method property for each CPU node in the\nDTB needs to be set to \"psci\". Add a script and Makefile.am rules so\nthat this is done automatically for the final pass through DTC.\n\nSigned-off-by: Matthew Leach \u003cmatthew.leach@arm.com\u003e\n[Mark: remove backticks, fix copyright date, use $(), fix indentation]\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "e4ae51a1c128ccaac01bdc834692fd15c3a3c8de",
      "tree": "5adbdd4645704d6c7a7fb28d043974369f6a1023",
      "parents": [
        "d7cb1d660d17f3ecd715e26c6b84e12e2a2ca0cb"
      ],
      "author": {
        "name": "Matthew Leach",
        "email": "Matthew.Leach@arm.com",
        "time": "Thu Jan 23 17:29:30 2014 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Mar 12 11:15:58 2014 +0000"
      },
      "message": "If enabled, add the PSCI node to the FDT\n\nPSCI requires a node to be inserted into the FDT. Do this for the user\nautomatically if PSCI is enabled.\n\nSigned-off-by: Matthew Leach \u003cmatthew.leach@arm.com\u003e\n[Mark: add missing \"method\" property, fix indentation]\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "d7cb1d660d17f3ecd715e26c6b84e12e2a2ca0cb",
      "tree": "79c74f96486e8118c1173ca79b30a9d48c8dd43d",
      "parents": [
        "ba169a9c86c6d9fa555dfebd8c6cdffd86f76e73"
      ],
      "author": {
        "name": "Matthew Leach",
        "email": "Matthew.Leach@arm.com",
        "time": "Thu Jan 23 17:29:29 2014 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Mar 12 11:15:58 2014 +0000"
      },
      "message": "Allow the passing of CPUIDs in the configure script\n\nAdd the --with-cpu-ids switch to the configure script to allow the\nuser to manually set the CPU IDs that are passed to PSCI.\n\nSigned-off-by: Matthew Leach \u003cmatthew.leach@arm.com\u003e\n[Mark: fix indentation]\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "ba169a9c86c6d9fa555dfebd8c6cdffd86f76e73",
      "tree": "5cf982d93eb13272304a7b89fc556a928f67c433",
      "parents": [
        "7613f81fc03cd91fe90977165e48875ab98c2e68"
      ],
      "author": {
        "name": "Matthew Leach",
        "email": "Matthew.Leach@arm.com",
        "time": "Thu Jan 23 17:29:28 2014 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Mar 12 11:15:58 2014 +0000"
      },
      "message": "Check for dtc in the kernel dir\n\nThe dtc tool should also be checked for in the $KERN_DIR/scripts/dtc\ndirectory as it is shipped with Linux.\n\nSigned-off-by: Matthew Leach \u003cmatthew.leach@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "7613f81fc03cd91fe90977165e48875ab98c2e68",
      "tree": "dcab936efc03cb07e6156870838bfe3cb11fa51c",
      "parents": [
        "bae4ae6a834cd15bf50f0ddc9a7331d8b0ac7168"
      ],
      "author": {
        "name": "Matthew Leach",
        "email": "Matthew.Leach@arm.com",
        "time": "Thu Jan 23 17:29:27 2014 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Mar 12 11:15:58 2014 +0000"
      },
      "message": "Add a PSCI configure option\n\nThe boot-wrapper can be build with or without support for\nPSCI. Therefore add that as a configure option (which defaults to not\nusing PSCI) and set the appropriate options in the makefile.\n\nSigned-off-by: Matthew Leach \u003cmatthew.leach@arm.com\u003e\n[Mark: fix indentation]\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "bae4ae6a834cd15bf50f0ddc9a7331d8b0ac7168",
      "tree": "ede44c057db9d447028725f6a8e1ba08abe3ca60",
      "parents": [
        "20db29f89a11c023634ccaab152941a6afdf2d52"
      ],
      "author": {
        "name": "Matthew Leach",
        "email": "Matthew.Leach@arm.com",
        "time": "Thu Jan 23 17:29:26 2014 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Mar 12 11:15:25 2014 +0000"
      },
      "message": "Add autotools configuration.\n\nThis patch adds a basic auto-tools configuration environment for the\nbootwrapper consisting of the configure.ac file and the Makefile.am\nfile.\n\nThe configure.ac file includes several options and checks:\n  - Ensure that an AArch64 compiler is used.\n  - Add the mandatory --with-kernel-dir option that sets KERN_DIR.\n  - Check that the correct base dtb file exists in KERN_DIR.\n  - Add an option, --with-initrd, that allows a user to specify an\n    initrd file to embed in the image.\n  - Check for a working dtc and set DTC to the full-path to the\n    executable.\n  - Create the necessary symbolic links to the relevant kernel files.\n\nThe Makefile.am file includes several changes:\n\n- Use a prebuilt dtb rather than a dts, which is decompiled to inject\n  the chosen node.\n- Use the configured compiler tool names.\n- Use the configured SED program rather than assuming it is in PATH.\n\nSigned-off-by: Matthew Leach \u003cmatthew.leach@arm.com\u003e\n[Mark: use dtb, add options, fix style issues, remove src/]\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "20db29f89a11c023634ccaab152941a6afdf2d52",
      "tree": "fc378d92d39cdcdb39a8f067455259083d341f10",
      "parents": [
        "79de899b5a235fb8a2aacd0147ac83a2a86cfd47",
        "47cdf0391af24f6d9b8eb82324f28b2086198290"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Feb 04 10:33:46 2014 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Feb 04 10:33:46 2014 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/boot-wrapper-aarch64.git\n\nUnify upstream build system updates and PSCI support.\n\nConflicts:\n\tMakefile\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "47cdf0391af24f6d9b8eb82324f28b2086198290",
      "tree": "afd7287a1878373ea16fdf2f5918b5b75917b5b3",
      "parents": [
        "73ecb28f15a4c92562573efa1a701043b4a826ac"
      ],
      "author": {
        "name": "Geoff Levand",
        "email": "geoff@infradead.org",
        "time": "Wed Nov 13 20:36:58 2013 +0000"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Tue Dec 17 14:20:30 2013 +0000"
      },
      "message": "Add CFLAGS to makefile compile\n\nFrom 8a5783e72029c1ecd26fb99130b48a470e13a8da Mon Sep 17 00:00:00 2001\nFrom: Geoff Levand \u003cgeoff@infradead.org\u003e\nDate: Wed, 13 Nov 2013 12:26:01 -0800\n\nAllow user to pass compiler flags on the make command line as\nin \u0027make CFLAGS\u003d\"-g\"\u0027.\n\nSigned-off-by: Geoff Levand \u003cgeoff@infradead.org\u003e\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "79de899b5a235fb8a2aacd0147ac83a2a86cfd47",
      "tree": "2ac5ca63489631825fd2af82cb80ce8fad659a1b",
      "parents": [
        "d9e63728ff454f338e41edd1433b7e5096120279"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Jul 02 15:44:06 2013 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Aug 14 14:14:50 2013 +0100"
      },
      "message": "cache.S: fix max cache level detection\n\nDue to incorrect operands for an and, we treat the value of the Ctype1\nfield of clidr_el1 as if it were the LoC field.\n\nFix up the operands so we use LoC corretly.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "d9e63728ff454f338e41edd1433b7e5096120279",
      "tree": "f00e5d1405f3a2f8b87e6ec4bac295ffb3ed5c5a",
      "parents": [
        "28ec269a22c8dc141f49a693aea389af88424b0c"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Mon Feb 11 16:58:18 2013 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 15:58:12 2013 +0100"
      },
      "message": "Add simple PSCI implementation\n\nThis patch adds a simple PSCI implementation, only supporting CPU_ON and\nCPU_OFF. As this does not communicate with any hardware power controller\n(yet), CPUs spin in an internal pen, with a wfe to limit their polling\nspeed.\n\nWhile the model brings up CPUs with caches invalidated, we enable caches\nand the MMU to allow the use of exclusive operations in the bootwrapper,\nand thus the cache may allocate entries while in EL3. As PSCI requires\nthat caches are invalid when executing from a CPU_ON entry point, the\ncaches must be cleaned and invalided when we drop to EL2. This cleaning\nis performed in a shim in EL2 as this is simpler than enabling/disabling\ncaches and the MMU on each SMC.\n\nThe list of all CPU IDs (MPIDRS with non-aff bits masked out) in the\nsystem must be provided in the Makefile as the comma-separated list\nCPU_IDs, to enable the bootwrapper to differentiate CPUs and provide the\ncorrect error messages if for example the OS attempts to power on a CPU\nmultiple times. If this list does not match the CPUs present, it may not\nbe possible to bring some CPUs online, and the PSCI implementation may\nerroneously acknowledge power on requests for non-existent CPUs.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "28ec269a22c8dc141f49a693aea389af88424b0c",
      "tree": "aae9959193f22c575bdc7696b7a3f4a744d1d1de",
      "parents": [
        "f356aa93e1aa0a1d7f06649c4f61c05e2ab31294"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Apr 23 14:50:14 2013 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 15:55:22 2013 +0100"
      },
      "message": "Add code to clean and invalidate caches\n\nLinux expects to be handed a system with caches disabled and\ninvalidated. While the model currently brings CPUs up with caches\ninvalidated, we\u0027ll need to invalidate caches when leaving the\nbootwrapper if we enable them within the bootwrapper (e.g. for the use\nof exclusive operations), as lines may be allocated.\n\nThis patch adds code to invalidate the dcaches and icaches. It is not\nyet called.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "f356aa93e1aa0a1d7f06649c4f61c05e2ab31294",
      "tree": "1fc9041d0183f7c5c362d300f57f2334ec636509",
      "parents": [
        "36e3d541275f3e61f9de7a17c7d405c828d20c71"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Mon Feb 11 16:24:17 2013 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 15:55:22 2013 +0100"
      },
      "message": "Factor spin-table into its own file\n\nThis patch factors out the spin-table boot protocol into its own file,\nleaving boot.S to do all of the required EL3 initialisation, and calling\nupon ns_init to perform EL2 initialisation.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "36e3d541275f3e61f9de7a17c7d405c828d20c71",
      "tree": "10fbeb24990911e8c15375fa8ee0adf32cb1bc71",
      "parents": [
        "0ffd5871d107035f34491dfbf8a7428e753c974e"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Apr 25 16:02:09 2013 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 15:55:22 2013 +0100"
      },
      "message": "Factor out secure GIC initialisation\n\nCurrently the bootwrapper still lumps together logically distinct pieces\nof hardware initialisation, making porting to new platforms or adding\nnew features difficult. It would be nicer if we could separate some of\nthe functional units to make the code clearer and easier to extend.\n\nTo this end, this patch factors the secure GIC initialisation into its\nown file. Additionally, the code is modified to route all interrupts to\nthe non-secure side, not just the first 64.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "0ffd5871d107035f34491dfbf8a7428e753c974e",
      "tree": "571ec6a3a9b4964f0a5b567290656b5e6a13526a",
      "parents": [
        "76eca64800b99aaf0c3d7e46b2111875f266e05e"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Mon Feb 11 14:38:22 2013 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 15:55:08 2013 +0100"
      },
      "message": "Factor non-secure system initialisation\n\nWhen we add PSCI, we\u0027ll want to share the same non-secure sysetem\ninitialisation code. As we\u0027re going to want to put spin-table and PSCI\nimplementations in separate files, it would be nice to have the\ninitialisation code in its own file, to make clear the separation\nbetween early boot, platform interface code, and non-secure system\ninitialisation.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "76eca64800b99aaf0c3d7e46b2111875f266e05e",
      "tree": "cd6a8420c77568fb8460ed452ec273e5491d9311",
      "parents": [
        "cc281ad661f59102b52ee1274555e69b1a3bd887"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu May 16 11:07:41 2013 +0100"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 13:57:42 2013 +0100"
      },
      "message": "Test all MPIDR affinity bits\n\nCurrently we only test the Aff0 bits of the MPIDR to determine the\n\u0027primary\u0027 CPU. In multi-cluster systems, MPIDR.Aff{3,2,1} may not be\nzero, and there may by multiple CPUs where MPIDR.Aff0 is zero. In these\nsystems we might determine that two cpus are the primary CPU.\n\nThis patch adds a MPIDR_ID_BITS mask, and uses it in all cases we test\nthe MPIDR, making this safe for multi-cluster systems. This doesn\u0027t\nbring full support for multi-cluster systems, however, as they may\nrequire additional hardware to be set up (e.g. CCI).\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "cc281ad661f59102b52ee1274555e69b1a3bd887",
      "tree": "15382d9d67f9d20f5c8ee09282aa897bcb9b1ec2",
      "parents": [
        "3ca15bca1ec85810f1438a76413cd4e7e8b45254"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Mon Feb 11 14:25:33 2013 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 13:57:42 2013 +0100"
      },
      "message": "Allow support of multiple assembly files\n\nTo support more complex functionality, it would be nice if we could\nseparate bits of the boot code into separate files.\n\nThis patch refactors the Makefile, allowing us to add more source files\nlater without having to add a new rule for each file. The defines we\npass to each object are also factored into separate lines for easier\nmodification in future.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "3ca15bca1ec85810f1438a76413cd4e7e8b45254",
      "tree": "7a80b11ac88aa17943054db05ddb0ca6a0afc5df",
      "parents": [
        "d7e15e0470b60c4c69c0d58ba278231b33b86c69"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Fri Feb 08 16:55:09 2013 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 13:56:14 2013 +0100"
      },
      "message": "Add CURRENTEL_EL3 #define\n\nAdd a CURRENTEL_EL3 #define to make tests against the value of CurrentEL\nclearer.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "d7e15e0470b60c4c69c0d58ba278231b33b86c69",
      "tree": "b0b3e93bb3776a77dd61f4a89b55cc382259e88b",
      "parents": [
        "2f47ab6e3650bd26223a5bb2352be839790bea4b"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Tue Feb 05 17:27:46 2013 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 13:56:14 2013 +0100"
      },
      "message": "Move EL drop definition out of boot.S\n\nPSCI needs to be able to drop cores to EL2 repeatedly, and it doesn\u0027t\nmake sense to always throw CPUs through the original boot path.\n\nThis patch changes the EL drop into a macro, and moves it to a common\nfile that can be used by different boot protocol / service\nimplementations. While doing so, the SPSR value used is split out to be\nmore legible.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "2f47ab6e3650bd26223a5bb2352be839790bea4b",
      "tree": "6ec541ef38f6d916b8d11f1f8577bb0d2b967f67",
      "parents": [
        "85c331041d99a56c17a3723afa5d378acd2c82d6"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Mon Feb 11 16:58:54 2013 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 13:56:14 2013 +0100"
      },
      "message": "gitignore: ignore build files\n\nCurrently. we don\u0027t ignore several files produced during the build in\nthe .gitignore, which can make the output of git status very noisy.\n\nLet\u0027s ignore all of the external dependencies we might add to the source\ndirectory (dtc, *.dts{i,}, *.cpio.gz), and all of the files we\u0027ll\nproduce during the build (*.o, *.axf). Ignoring the general case of all\nof these files should produce less churn in .gitignore in future, and we\ncan always add special exemptions if required.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "85c331041d99a56c17a3723afa5d378acd2c82d6",
      "tree": "8ad1a207d005af11635b5496720218d7e53e2585",
      "parents": [
        "fc9e28de1da7c08886ee0cf46d5cbe74ea31b0fe"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Mon Jan 07 13:50:44 2013 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 13:56:14 2013 +0100"
      },
      "message": "Use immediate offsets rather than post-increment\n\nWhen we set the GICD_IGROUPRn registers, we have a dangling\npost-increment at the end which is never useful, being overwritten in\nevery path. As we\u0027re only writing to 3 registers, the offsets of which\ncan be represented in immediates, use movs with immediate offsets to\nperform the writes.\n\nReported-by: Nigel Stephens \u003cnigel.stephens@arm.com\u003e\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "fc9e28de1da7c08886ee0cf46d5cbe74ea31b0fe",
      "tree": "9d203ca4c6096c9854e9899c771f3c4f63b4d1e2",
      "parents": [
        "73ecb28f15a4c92562573efa1a701043b4a826ac"
      ],
      "author": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Thu Dec 20 16:52:51 2012 +0000"
      },
      "committer": {
        "name": "Mark Rutland",
        "email": "mark.rutland@arm.com",
        "time": "Wed Jun 05 13:56:14 2013 +0100"
      },
      "message": "Remove unnecessary ldr from boot wrapper\n\nWe currently do an ldr from GICC_CTLR to w0, then immediately overwrite\nw0 with a mov. Reading the GICC_CTLR has no effect on the state of the\nGIC, so there\u0027s no reason to do the ldr. It\u0027s also inconsistent with the\nway we set the GICD_CTLR.\n\nFix this.\n\nSigned-off-by: Mark Rutland \u003cmark.rutland@arm.com\u003e\n"
    },
    {
      "commit": "73ecb28f15a4c92562573efa1a701043b4a826ac",
      "tree": "5f8aade7ea192f2de36a443e0c5d5eb758ed6426",
      "parents": [
        "c51dde817b5ed5b8f741b67ac51bd67bd87b4a2a"
      ],
      "author": {
        "name": "Christoffer Dall",
        "email": "cdall@cs.columbia.edu",
        "time": "Fri Apr 05 01:23:14 2013 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Apr 18 16:50:03 2013 +0100"
      },
      "message": "Allow CROSS_COMPILE override on the make command line\n\nSigned-off-by: Christoffer Dall \u003ccdall@cs.columbia.edu\u003e\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "c51dde817b5ed5b8f741b67ac51bd67bd87b4a2a",
      "tree": "0a4191b855a562940c1b42607a41d5febe069735",
      "parents": [
        "ce44479906988dc0a4b1dcfd1d01b5508e6b99bf"
      ],
      "author": {
        "name": "Matthew Leach",
        "email": "matthew.leach@arm.com",
        "time": "Thu Jan 10 10:58:48 2013 +0000"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jan 10 17:53:41 2013 +0000"
      },
      "message": "Update README\n\nChange the DT files that are required as they have been re-named in\nthe kernel.\n\nSigned-off-by: Matthew Leach \u003cmatthew.leach@arm.com\u003e\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "ce44479906988dc0a4b1dcfd1d01b5508e6b99bf",
      "tree": "f741809ccdeed5ea75aa064053cd305fb94614dc",
      "parents": [
        "81a47f2daf02ab6869b7d0dc68e523e3eec8bfb1"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Jan 09 15:44:45 2013 +0000"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Jan 09 15:54:47 2013 +0000"
      },
      "message": "Tidy up the kernel boot arguments\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "81a47f2daf02ab6869b7d0dc68e523e3eec8bfb1",
      "tree": "9ba15b939e6cdb99cd2842c7af2bbd71b1cf988f",
      "parents": [
        "b4ebd41f98ed13a92e4877cd84984aeff5187734"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Fri Jan 04 13:06:31 2013 +0000"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Jan 09 15:53:20 2013 +0000"
      },
      "message": "Enable the CLCD output\n\nThis patch is to avoid setting the MUXFPGA configuration in the platform\ncode in the kernel. On real hardware, this function is handled by the\nboot monitor.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "b4ebd41f98ed13a92e4877cd84984aeff5187734",
      "tree": "5728092ca284226b5a15e742261a4beb4895a569",
      "parents": [
        "dfa7df4e2af3c9920eb0e6cfe3e60b85264bb9d4"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Nov 21 16:44:59 2012 +0000"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Jan 09 15:53:20 2013 +0000"
      },
      "message": "Change the FDT_SRC file to rtsm_ve-aemv8a.dts\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "dfa7df4e2af3c9920eb0e6cfe3e60b85264bb9d4",
      "tree": "a14025faf1fdf6a0aea2068898e70d3113fb193f",
      "parents": [
        "26b62f586020fd998c6efd43db657eaafeec14da"
      ],
      "author": {
        "name": "Pawel Moll",
        "email": "pawel.moll@arm.com",
        "time": "Wed Nov 21 16:13:17 2012 +0000"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Jan 09 15:53:20 2013 +0000"
      },
      "message": "Use the DTC Power(TM) instead of sed to inject the chosen node\n\nSigned-off-by: Pawel Moll \u003cpawel.moll@arm.com\u003e\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "26b62f586020fd998c6efd43db657eaafeec14da",
      "tree": "ec0dd0ff281ba47614baec4d496e581c7b9e0c89",
      "parents": [],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Dec 02 12:26:48 2009 +0000"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Sep 12 14:20:41 2012 +0100"
      },
      "message": "Initial version of the AArch64 Linux boot wrapper\n\nThis boot wrapper contains the code for initialising the ARMv8 software\nmodel before the Linux kernel can run (see\nDocumentation/arm64/booting.txt in the kernel tree for the Linux booting\nrequirements).\n\nRunning \"make\" creates a \"linux-system.axf\" ELF file that can be loaded\nby the software model.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    }
  ]
}
