SolidRun / lx2160a_build

Scripts to build basic images for LX2160A COM express type 7 modules
58 stars 47 forks source link

Update edk2-platforms submodule in LSDK-19.09-sr-uefi branch #44

Closed agrajag9 closed 3 years ago

agrajag9 commented 4 years ago

Per this discussion on the freebsd-arm list: https://lists.freebsd.org/pipermail/freebsd-arm/2020-May/021661.html

Right now the edk2-platforms submodule is pinned to commit d65b0a8432334df2905ebe30b5fa7b7996121972, but this several useful commits behind now and as such ACPI is only semi-functioning on UEFI.

Would it be possible to move the submodule forward to at least 97e6b0a36a925f57568d8e411666cfb5034aa38b?


$ git clone https://github.com/SolidRun/lx2160a_build lx2160a_build
Cloning into 'lx2160a_build'...
remote: Enumerating objects: 78, done.
remote: Counting objects: 100% (78/78), done.
remote: Compressing objects: 100% (65/65), done.
remote: Total 342 (delta 27), reused 57 (delta 11), pack-reused 264
Receiving objects: 100% (342/342), 11.10 MiB | 15.96 MiB/s, done.
Resolving deltas: 100% (139/139), done.
$ cd lx2160a_build
$ git branch -a
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/LSDK-19.06-sr
  remotes/origin/LSDK-19.09-sr
  remotes/origin/LSDK-19.09-sr-uefi
  remotes/origin/master
$ git checkout remotes/origin/LSDK-19.09-sr-uefi
Note: switching to 'remotes/origin/LSDK-19.09-sr-uefi'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

  git switch -c <new-branch-name>

Or undo this operation with:

  git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at bdf736a Merge pull request #21 from Josua-SR/LSDK-19.09-sr-uefi
$ git submodule update --init
Submodule 'build/arm-trusted-firmware' (https://github.com/SolidRun/arm-trusted-firmware.git) registered for path 'build/arm-trusted-firmware'
Submodule 'build/ddr-phy-binary' (https://github.com/NXP/ddr-phy-binary.git) registered for path 'build/ddr-phy-binary'
Submodule 'build/linux' (https://github.com/SolidRun/linux-stable.git) registered for path 'build/linux'
Submodule 'build/mc-utils' (https://github.com/SolidRun/mc-utils.git) registered for path 'build/mc-utils'
Submodule 'build/qoriq-mc-binary' (https://github.com/NXP/qoriq-mc-binary.git) registered for path 'build/qoriq-mc-binary'
Submodule 'build/rcw' (https://github.com/SolidRun/rcw.git) registered for path 'build/rcw'
Submodule 'build/tianocore/edk2' (https://github.com/SolidRun/edk2.git) registered for path 'build/tianocore/edk2'
Submodule 'build/tianocore/edk2-non-osi' (https://github.com/SolidRun/edk2-non-osi.git) registered for path 'build/tianocore/edk2-non-osi'
Submodule 'build/tianocore/edk2-platforms' (https://github.com/SolidRun/edk2-platforms.git) registered for path 'build/tianocore/edk2-platforms'
Submodule 'build/u-boot' (https://github.com/SolidRun/u-boot.git) registered for path 'build/u-boot'
Cloning into '/home/agrajag9/src/lx2160a_build/build/arm-trusted-firmware'...
Cloning into '/home/agrajag9/src/lx2160a_build/build/ddr-phy-binary'...
Cloning into '/home/agrajag9/src/lx2160a_build/build/linux'...
Cloning into '/home/agrajag9/src/lx2160a_build/build/mc-utils'...
Cloning into '/home/agrajag9/src/lx2160a_build/build/qoriq-mc-binary'...
Cloning into '/home/agrajag9/src/lx2160a_build/build/rcw'...
Cloning into '/home/agrajag9/src/lx2160a_build/build/tianocore/edk2'...
Cloning into '/home/agrajag9/src/lx2160a_build/build/tianocore/edk2-non-osi'...
Cloning into '/home/agrajag9/src/lx2160a_build/build/tianocore/edk2-platforms'...
Cloning into '/home/agrajag9/src/lx2160a_build/build/u-boot'...
Submodule path 'build/arm-trusted-firmware': checked out 'fc2fcdcc35dda9aa186b1cbcdc50244e04a6aa5c'
Submodule path 'build/ddr-phy-binary': checked out '14d03e6e748ed5ebb9440f264bb374f1280b061c'
Submodule path 'build/linux': checked out '7d78cdef5869a06b0e282426b709659e260e3f0d'
Submodule path 'build/mc-utils': checked out '9415530fdf8b4c18160eb35962be4d7ca591ee1d'
Submodule path 'build/qoriq-mc-binary': checked out 'f72b978873af6c7cd0fd92b793363506411c102c'
Submodule path 'build/rcw': checked out 'cddb86cbb76be6f8525bae55437d698b075868a3'
Submodule path 'build/tianocore/edk2': checked out '60eb62c4b9190f0e59613db2100548b87c635b7b'
Submodule path 'build/tianocore/edk2-non-osi': checked out 'cf4fdbe1023f0e0cc8e22be17addf779d75074d0'
Submodule path 'build/tianocore/edk2-platforms': checked out 'd65b0a8432334df2905ebe30b5fa7b7996121972'
Submodule path 'build/u-boot': checked out 'a09438084e3cf3b95164015cef529cf85539f570'```
valpackett commented 4 years ago

Looks like you should use the master branch of the build scripts here, not the 19.09

agrajag9 commented 4 years ago

You might think so, except that clones edk2-platforms from the CodeAura qoriq repos which have basically none of the work done by SolidRun :(

Compare this patch from SolidRun to add device aliases: https://github.com/SolidRun/edk2-platforms/commit/0d216c07acc4fa275328ad9c15c0f51a56241b52

With this version in CodeAura: https://source.codeaurora.org/external/qoriq/qoriq-components/edk2-platforms/tree/Silicon/NXP/LX2160A/Include/DeviceTreeInclude/fsl-lx2160a.dtsi?h=master

Also the runme.sh in master doesn't clone tianocore/edk2 or tianocore/edk2-non-osi, the former of which is necessary for UEFI compilation.

Aside, the master runme.sh also basically has no code path that leads to UEFI compilation at all as it's part of a conditional that will never be true. At line 94:

QORIQ_COMPONENTS="u-boot atf rcw restool mc-utils linux dpdk"
for i in $QORIQ_COMPONENTS; do

...<truncated>...

        if [ "x$i" == "xuefi" ]; then
            cd $ROOTDIR/build/uefi/
            git clone https://source.codeaurora.org/external/qoriq/qoriq-components/edk2-platforms
            cd edk2-platforms
            git checkout -b $RELEASE refs/tags/$RELEASE
            patch -p1 < $ROOTDIR/patches/edk2-platforms/*.diff
            git am --keep-cr $ROOTDIR/patches/edk2-platforms/*.patch
        fi
agrajag9 commented 4 years ago

@myfreeweb The plot thickens: this entire LSDK-19.09-sr-uefi branch is now missing...

$ git clone https://github.com/SolidRun/lx2160a_build
Cloning into 'lx2160a_build'...
remote: Enumerating objects: 81, done.
remote: Counting objects: 100% (81/81), done.
remote: Compressing objects: 100% (65/65), done.
remote: Total 308 (delta 30), reused 60 (delta 14), pack-reused 227
Receiving objects: 100% (308/308), 11.09 MiB | 15.82 MiB/s, done.
Resolving deltas: 100% (118/118), done.
$ cd lx2160a_build/
$ git branch -a
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/LSDK-19.06-sr
  remotes/origin/LSDK-19.09-sr
  remotes/origin/master

Can somebody from SolidRun comment? I know there's work to get the new LSDK release working in the master branch, but deleting the only reliable UEFI branch seems a little odd...