Using ArmTF-Test SP/SPD with Juno

Hi experts  ,

I configured my Juno board as this instruction and my workspace is initialized by the script from that page too.

Now I met some unknown issues when setting secure timer for my board. I find the ARM-TF provides a test secure payload and they utilize the secure timer so I want to try this payload to confirm my board's timer works well.

In this case, I'm wondering can I still use the workspace I got to build the TSP for Juno board?

If I can, could you please give me some hints about how to modify the build scripts? If I can't, is there any other instructions about applying the TSP on Juno?

Thank you in advance.

Simon

Parents
  • Hi Simon,

    I had a quick bash at getting this to work with the existing workspace and this is what I came up with:

    1) Sync 64-bit Juno build from source Linux/Android workspace

    2) Build everything using `./build-scripts/build-all.sh all'

    3) Clean ARM Trusted Firmware:

            $ cd arm-tf/
            $ make realclean

    4) Create a build wrapper for ARM Trusted Firmware like this:

            #!/usr/bin/env bash
            CROSS_COMPILE=/path/to/gcc/bin/aarch64-elf- \
                    make PLAT=juno DEBUG=1 \
                    BL33=<workspace>/output/juno/components/juno/uboot.bin \
                    SCP_BL2=<workspace>/output/juno/components/juno_SILICON/scp-ram.bin \
                    SPD=tspd \
                    all fip

    And run it.

    5) Erase the Juno's Flash

    6) Mount the Juno's SD card, then delete everything off it

    7) Copy contents of `<workspace>/recovery/' onto Juno's SD card

    8) Copy contents of `<workspace>/output/juno/juno-busybox/uboot/' to the `/SOFTWARE/' folder on the Juno's SD card

    9) Copy these two files to the `/SOFTWARE/' folder on the Juno's SD card:

            <workspace>/arm-tf/build/juno/debug/bl1.bin
            <workspace>/arm-tf/build/juno/debug/fip.bin

    10) Issue a `sync' command on your host PC

    11) Reboot the Juno

    A few things to note:

    • This isn't using exactly the same settings as the proper Linaro workspace as I didn't bother generating certificates etc
    • This successfully booted on the Juno for me, but I'm not in the office right now so cannot verify whether the TSPD is functioning as I don't have physical access to the board (if I recall correct it echoes PSCI commands to the bottom UART)

    Also you may want to automate the copying of the components on to the SD card as it's a bit cumbersome.

    Hope that helps,
    Ash.

Reply
  • Hi Simon,

    I had a quick bash at getting this to work with the existing workspace and this is what I came up with:

    1) Sync 64-bit Juno build from source Linux/Android workspace

    2) Build everything using `./build-scripts/build-all.sh all'

    3) Clean ARM Trusted Firmware:

            $ cd arm-tf/
            $ make realclean

    4) Create a build wrapper for ARM Trusted Firmware like this:

            #!/usr/bin/env bash
            CROSS_COMPILE=/path/to/gcc/bin/aarch64-elf- \
                    make PLAT=juno DEBUG=1 \
                    BL33=<workspace>/output/juno/components/juno/uboot.bin \
                    SCP_BL2=<workspace>/output/juno/components/juno_SILICON/scp-ram.bin \
                    SPD=tspd \
                    all fip

    And run it.

    5) Erase the Juno's Flash

    6) Mount the Juno's SD card, then delete everything off it

    7) Copy contents of `<workspace>/recovery/' onto Juno's SD card

    8) Copy contents of `<workspace>/output/juno/juno-busybox/uboot/' to the `/SOFTWARE/' folder on the Juno's SD card

    9) Copy these two files to the `/SOFTWARE/' folder on the Juno's SD card:

            <workspace>/arm-tf/build/juno/debug/bl1.bin
            <workspace>/arm-tf/build/juno/debug/fip.bin

    10) Issue a `sync' command on your host PC

    11) Reboot the Juno

    A few things to note:

    • This isn't using exactly the same settings as the proper Linaro workspace as I didn't bother generating certificates etc
    • This successfully booted on the Juno for me, but I'm not in the office right now so cannot verify whether the TSPD is functioning as I don't have physical access to the board (if I recall correct it echoes PSCI commands to the bottom UART)

    Also you may want to automate the copying of the components on to the SD card as it's a bit cumbersome.

    Hope that helps,
    Ash.

Children
More questions in this forum
There are no posts to show. This could be because there are no posts in this forum or due to a filter.