2 # Copyright (C) 2019 Sartura Ltd.
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
11 PKG_RELEASE
:=$(AUTORELEASE
)
12 PKG_HASH
:=ad8a2ffcbcd12d919723da07630fc0840c3c2fba7656d1462e45488e42995d7c
14 PKG_MAINTAINER
:=Vladimir Vid
<vladimir.vid@sartura.hr
>
16 include $(INCLUDE_DIR
)/trusted-firmware-a.mk
17 include $(INCLUDE_DIR
)/package.mk
19 define Trusted-Firmware-A
/Default
21 BUILD_SUBTARGET
:=cortexa53
22 TFA_IMAGE
:=flash-image.bin uart-images.tgz.bin
29 define Trusted-Firmware-A
/espressobin-512mb
30 NAME
:=Marvell ESPRESSObin
(512MB
)
31 DEPENDS
:=+u-boot-espressobin
32 BUILD_DEVICES
:=globalscale_espressobin
35 CLOCKSPRESET
:=CPU_1000_DDR_800
39 define Trusted-Firmware-A
/espressobin-v3-v5-1gb-1cs
40 NAME
:=Marvell ESPRESSObin V3-V5
(1GB
1CS
)
41 DEPENDS
:=+u-boot-espressobin
42 BUILD_DEVICES
:=globalscale_espressobin
45 CLOCKSPRESET
:=CPU_1000_DDR_800
49 define Trusted-Firmware-A
/espressobin-v3-v5-1gb-2cs
50 NAME
:=Marvell ESPRESSObin V3-V5
(1GB
, 2CS
)
51 DEPENDS
:=+u-boot-espressobin
52 BUILD_DEVICES
:=globalscale_espressobin
55 CLOCKSPRESET
:=CPU_1000_DDR_800
59 define Trusted-Firmware-A
/espressobin-v3-v5-2gb
60 NAME
:=Marvell ESPRESSObin V3-V5
(2GB
)
61 DEPENDS
:=+u-boot-espressobin
62 BUILD_DEVICES
:=globalscale_espressobin
65 CLOCKSPRESET
:=CPU_1000_DDR_800
69 define Trusted-Firmware-A
/espressobin-v7-1gb
70 NAME
:=Marvell ESPRESSObin V7
(1GB
)
71 DEPENDS
:=+u-boot-espressobin
72 BUILD_DEVICES
:=globalscale_espressobin-v7
75 CLOCKSPRESET
:=CPU_1000_DDR_800
79 define Trusted-Firmware-A
/espressobin-v7-2gb
80 NAME
:=Marvell ESPRESSObin V7
(2GB
)
81 DEPENDS
:=+u-boot-espressobin
82 BUILD_DEVICES
:=globalscale_espressobin-v7
85 CLOCKSPRESET
:=CPU_1000_DDR_800
89 define Trusted-Firmware-A
/udpu
92 BUILD_DEVICES
:=methode_udpu
95 CLOCKSPRESET
:=CPU_1000_DDR_800
102 espressobin-v3-v5-1gb-1cs \
103 espressobin-v3-v5-1gb-2cs \
104 espressobin-v3-v5-2gb \
110 CROSS_CM3
=$(STAGING_DIR_IMAGE
)/$(CM3_GCC_NAME
)-$(CM3_GCC_RELEASE
)-$(CM3_GCC_VERSION
)/bin
/arm-none-eabi- \
111 BL33
=$(STAGING_DIR_IMAGE
)/$(UBOOT
)-u-boot.bin \
112 MV_DDR_PATH
=$(STAGING_DIR_IMAGE
)/$(MV_DDR_NAME
) \
113 WTP
=$(STAGING_DIR_IMAGE
)/$(A3700_UTILS_NAME
) \
114 WTMI_IMG
=$(STAGING_DIR_IMAGE
)/$(MOX_BB_NAME
)-$(MOX_BB_RELEASE
)/wtmi_app.bin \
117 DDR_TOPOLOGY
=$(DDR_TOPOLOGY
) \
118 CLOCKSPRESET
=$(CLOCKSPRESET
) \
119 A3700_UTILS_COMMIT_ID
=$(A3700_UTILS_RELEASE
) \
120 MV_DDR_COMMIT_ID
=$(MV_DDR_RELEASE
) \
125 A3700_UTILS_NAME
:=a3700-utils
126 A3700_UTILS_RELEASE
:=2efdb10f
127 A3700_UTILS_SOURCE
=$(A3700_UTILS_NAME
)-$(A3700_UTILS_RELEASE
).
tar.bz2
129 define Download
/a3700-utils
130 FILE
:=$(A3700_UTILS_SOURCE
)
132 URL
:=https
://github.com
/MarvellEmbeddedProcessors
/A3700-utils-marvell.git
133 VERSION
:=2efdb10f3524c534d276002adf81fec06e0f1cf2
134 MIRROR_HASH
:=4476e1bacfa7abb4a1303c6cf3aa7d067038b24090dfd5da13ca2a72a0d5c7a4
135 SUBDIR
:=$(A3700_UTILS_NAME
)
138 MV_DDR_NAME
:=mv-ddr-marvell
139 MV_DDR_RELEASE
:=02e23dbc
140 MV_DDR_SOURCE
:=$(MV_DDR_NAME
)-$(MV_DDR_RELEASE
).
tar.bz2
142 define Download
/mv-ddr-marvell
143 FILE
:=$(MV_DDR_SOURCE
)
145 URL
:=https
://github.com
/MarvellEmbeddedProcessors
/mv-ddr-marvell.git
146 VERSION
:=02e23dbcf8dd22e038986052d99319a0eba8f25f
147 MIRROR_HASH
:=d87dcc288b3895d1a1a78908fc607976d500b317ef81edfe667035579df0b440
148 SUBDIR
:=$(MV_DDR_NAME
)
151 MOX_BB_NAME
:=mox-boot-builder
152 MOX_BB_RELEASE
:=v2021.09
.07
153 MOX_BB_SOURCE
:=$(MOX_BB_NAME
)-$(MOX_BB_RELEASE
).
tar.bz2
155 define Download
/mox-boot-builder
156 FILE
:=$(MOX_BB_SOURCE
)
157 URL
:=https
://gitlab.nic.cz
/turris
/mox-boot-builder
/-/archive
/$(MOX_BB_RELEASE
)
158 HASH
:=fd5fe276a3b0dee3177d61c017907a8eb23cd2169478fa78e9a3a836cfe3a4a8
161 CM3_GCC_NAME
:=gcc-arm
162 CM3_GCC_RELEASE
:=10.2-2020.11
163 CM3_GCC_VERSION
:=$(HOST_ARCH
)-arm-none-eabi
164 CM3_GCC_SOURCE
=$(CM3_GCC_NAME
)-$(CM3_GCC_RELEASE
)-$(CM3_GCC_VERSION
).
tar.xz
166 define Download
/cm3-gcc
167 FILE
:=$(CM3_GCC_SOURCE
)
168 URL
:=https
://developer.arm.com
/-/media
/Files
/downloads
/gnu-a
/$(CM3_GCC_RELEASE
)/binrel
169 HASH
:=bf7ee185936d22d787b80c8da573f72ead5675695331fb8b590f0133ef1f6bb9
174 $(STAGING_DIR_IMAGE
)/$(A3700_UTILS_NAME
) \
175 $(STAGING_DIR_IMAGE
)/$(MV_DDR_NAME
) \
176 $(STAGING_DIR_IMAGE
)/$(MOX_BB_NAME
)-$(MOX_BB_RELEASE
) \
177 $(STAGING_DIR_IMAGE
)/$(CM3_GCC_NAME
)-$(CM3_GCC_RELEASE
)-$(CM3_GCC_VERSION
)
182 $(eval
$(call Download
,a3700-utils
))
183 $(eval
$(call Download
,mv-ddr-marvell
))
184 $(eval
$(call Download
,mox-boot-builder
))
185 $(eval
$(call Download
,cm3-gcc
))
187 $(call Build
/Prepare
/Default
,)
189 mkdir
-p
$(STAGING_DIR_IMAGE
)
190 $(TAR
) -C
$(STAGING_DIR_IMAGE
) -xf
$(DL_DIR
)/$(A3700_UTILS_SOURCE
)
191 echo
"master" > $(STAGING_DIR_IMAGE
)/$(A3700_UTILS_NAME
)/branch.txt
192 $(call PatchDir
/Default
,$(STAGING_DIR_IMAGE
)/$(A3700_UTILS_NAME
),.
/patches-a3700-utils
)
193 $(TAR
) -C
$(STAGING_DIR_IMAGE
) -xf
$(DL_DIR
)/$(MV_DDR_SOURCE
)
194 echo
"master" > $(STAGING_DIR_IMAGE
)/$(MV_DDR_NAME
)/branch.txt
195 $(call PatchDir
/Default
,$(STAGING_DIR_IMAGE
)/$(MV_DDR_NAME
),.
/patches-mv-ddr-marvell
)
196 $(TAR
) -C
$(STAGING_DIR_IMAGE
) -xf
$(DL_DIR
)/$(MOX_BB_SOURCE
)
197 $(call PatchDir
/Default
,$(STAGING_DIR_IMAGE
)/$(MOX_BB_NAME
)-$(MOX_BB_RELEASE
),.
/patches-mox-boot-builder
)
198 $(TAR
) -C
$(STAGING_DIR_IMAGE
) -xf
$(DL_DIR
)/$(CM3_GCC_SOURCE
)
203 CROSS_CM3
=$(STAGING_DIR_IMAGE
)/$(CM3_GCC_NAME
)-$(CM3_GCC_RELEASE
)-$(CM3_GCC_VERSION
)/bin
/arm-none-eabi- \
204 WTMI_VERSION
=$(MOX_BB_RELEASE
) \
205 -C
$(STAGING_DIR_IMAGE
)/$(MOX_BB_NAME
)-$(MOX_BB_RELEASE
) \
207 $(call Build
/Compile
/Default
)
210 $(eval
$(call BuildPackage
/Trusted-Firmware-A
))