xref: /rk3399_ARM-atf/bl1/tbbr/tbbr_img_desc.c (revision 843ddee4aab78dfb940121f5ec28b52f7be5b28a)
148bfb88eSYatharth Kochar /*
2*843ddee4SYatharth Kochar  * Copyright (c) 2015-2016, ARM Limited and Contributors. All rights reserved.
348bfb88eSYatharth Kochar  *
448bfb88eSYatharth Kochar  * Redistribution and use in source and binary forms, with or without
548bfb88eSYatharth Kochar  * modification, are permitted provided that the following conditions are met:
648bfb88eSYatharth Kochar  *
748bfb88eSYatharth Kochar  * Redistributions of source code must retain the above copyright notice, this
848bfb88eSYatharth Kochar  * list of conditions and the following disclaimer.
948bfb88eSYatharth Kochar  *
1048bfb88eSYatharth Kochar  * Redistributions in binary form must reproduce the above copyright notice,
1148bfb88eSYatharth Kochar  * this list of conditions and the following disclaimer in the documentation
1248bfb88eSYatharth Kochar  * and/or other materials provided with the distribution.
1348bfb88eSYatharth Kochar  *
1448bfb88eSYatharth Kochar  * Neither the name of ARM nor the names of its contributors may be used
1548bfb88eSYatharth Kochar  * to endorse or promote products derived from this software without specific
1648bfb88eSYatharth Kochar  * prior written permission.
1748bfb88eSYatharth Kochar  *
1848bfb88eSYatharth Kochar  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
1948bfb88eSYatharth Kochar  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
2048bfb88eSYatharth Kochar  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
2148bfb88eSYatharth Kochar  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
2248bfb88eSYatharth Kochar  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
2348bfb88eSYatharth Kochar  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
2448bfb88eSYatharth Kochar  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
2548bfb88eSYatharth Kochar  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
2648bfb88eSYatharth Kochar  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
2748bfb88eSYatharth Kochar  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
2848bfb88eSYatharth Kochar  * POSSIBILITY OF SUCH DAMAGE.
2948bfb88eSYatharth Kochar  */
3048bfb88eSYatharth Kochar 
3148bfb88eSYatharth Kochar #include <bl1.h>
3248bfb88eSYatharth Kochar #include <bl_common.h>
3348bfb88eSYatharth Kochar #include <platform_def.h>
3448bfb88eSYatharth Kochar 
3548bfb88eSYatharth Kochar image_desc_t bl1_tbbr_image_descs[] = {
3648bfb88eSYatharth Kochar     {
3748bfb88eSYatharth Kochar 	    .image_id = FWU_CERT_ID,
38*843ddee4SYatharth Kochar 	    SET_STATIC_PARAM_HEAD(image_info, PARAM_IMAGE_BINARY,
39*843ddee4SYatharth Kochar 		    VERSION_1, image_info_t, 0),
4048bfb88eSYatharth Kochar 	    .image_info.image_base = BL2_BASE,
41*843ddee4SYatharth Kochar 	    SET_STATIC_PARAM_HEAD(ep_info, PARAM_IMAGE_BINARY,
42*843ddee4SYatharth Kochar 		    VERSION_1, entry_point_info_t, SECURE),
4348bfb88eSYatharth Kochar     },
4448bfb88eSYatharth Kochar #if NS_BL1U_BASE
4548bfb88eSYatharth Kochar     {
4648bfb88eSYatharth Kochar 	    .image_id = NS_BL1U_IMAGE_ID,
47*843ddee4SYatharth Kochar 	    SET_STATIC_PARAM_HEAD(ep_info, PARAM_EP,
48*843ddee4SYatharth Kochar 		    VERSION_1, entry_point_info_t, NON_SECURE | EXECUTABLE),
4948bfb88eSYatharth Kochar 	    .ep_info.pc = NS_BL1U_BASE,
5048bfb88eSYatharth Kochar     },
5148bfb88eSYatharth Kochar #endif
5248bfb88eSYatharth Kochar #if SCP_BL2U_BASE
5348bfb88eSYatharth Kochar     {
5448bfb88eSYatharth Kochar 	    .image_id = SCP_BL2U_IMAGE_ID,
55*843ddee4SYatharth Kochar 	    SET_STATIC_PARAM_HEAD(image_info, PARAM_IMAGE_BINARY,
56*843ddee4SYatharth Kochar 		    VERSION_1, image_info_t, 0),
5748bfb88eSYatharth Kochar 	    .image_info.image_base = SCP_BL2U_BASE,
58*843ddee4SYatharth Kochar 	    SET_STATIC_PARAM_HEAD(ep_info, PARAM_IMAGE_BINARY,
59*843ddee4SYatharth Kochar 		    VERSION_1, entry_point_info_t, SECURE),
6048bfb88eSYatharth Kochar     },
6148bfb88eSYatharth Kochar #endif
6248bfb88eSYatharth Kochar #if BL2U_BASE
6348bfb88eSYatharth Kochar     {
6448bfb88eSYatharth Kochar 	    .image_id = BL2U_IMAGE_ID,
65*843ddee4SYatharth Kochar 	    SET_STATIC_PARAM_HEAD(image_info, PARAM_EP,
66*843ddee4SYatharth Kochar 		    VERSION_1, image_info_t, 0),
6748bfb88eSYatharth Kochar 	    .image_info.image_base = BL2U_BASE,
68*843ddee4SYatharth Kochar 	    SET_STATIC_PARAM_HEAD(ep_info, PARAM_EP,
69*843ddee4SYatharth Kochar 		    VERSION_1, entry_point_info_t, SECURE | EXECUTABLE),
7048bfb88eSYatharth Kochar 	    .ep_info.pc = BL2U_BASE,
7148bfb88eSYatharth Kochar     },
7248bfb88eSYatharth Kochar #endif
7348bfb88eSYatharth Kochar #if NS_BL2U_BASE
7448bfb88eSYatharth Kochar     {
7548bfb88eSYatharth Kochar 	    .image_id = NS_BL2U_IMAGE_ID,
76*843ddee4SYatharth Kochar 	    SET_STATIC_PARAM_HEAD(ep_info, PARAM_EP,
77*843ddee4SYatharth Kochar 		    VERSION_1, entry_point_info_t, NON_SECURE),
7848bfb88eSYatharth Kochar     },
7948bfb88eSYatharth Kochar #endif
8048bfb88eSYatharth Kochar 	    BL2_IMAGE_DESC,
8148bfb88eSYatharth Kochar 
8248bfb88eSYatharth Kochar     {
8348bfb88eSYatharth Kochar 	    .image_id = INVALID_IMAGE_ID,
8448bfb88eSYatharth Kochar     }
8548bfb88eSYatharth Kochar };
86