brcm2708-gpu-fw: add support for Raspberry Pi 4
[openwrt/staging/wigyori.git] / package / kernel / brcm2708-gpu-fw / Makefile
1 #
2 # Copyright (C) 2012-2019 OpenWrt.org
3 # Copyright (C) 2017 LEDE project
4 #
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
7 #
8 include $(TOPDIR)/rules.mk
9 include $(INCLUDE_DIR)/kernel.mk
10
11 PKG_NAME:=brcm2708-gpu-fw
12 PKG_VERSION:=2019-07-09
13 PKG_RELEASE:=025759b8634c2f8df35203be02c19a0633f1cec1
14
15 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)/rpi-firmware-$(PKG_RELEASE)
16
17 PKG_FLAGS:=nonshared
18
19 include $(INCLUDE_DIR)/package.mk
20
21 RPI_FIRMWARE_URL:=@GITHUB/raspberrypi/firmware/$(PKG_RELEASE)/boot/
22 RPI_FIRMWARE_FILE:=rpi-firmware-$(PKG_RELEASE)
23
24 define Download/LICENCE_broadcom
25 FILE:=$(RPI_FIRMWARE_FILE)-LICENCE.broadcom
26 URL:=$(RPI_FIRMWARE_URL)
27 URL_FILE:=LICENCE.broadcom
28 HASH:=ba76edfc10a248166d965b8eaf320771c44f4f432d4fce2fd31fd272e7038add
29 endef
30 $(eval $(call Download,LICENCE_broadcom))
31
32 define Download/bootcode_bin
33 FILE:=$(RPI_FIRMWARE_FILE)-bootcode.bin
34 URL:=$(RPI_FIRMWARE_URL)
35 URL_FILE:=bootcode.bin
36 HASH:=6948c07f60f93489bbbc78747a1dc09ff0b1de42035c915fbd6453cdbd0e6475
37 endef
38 $(eval $(call Download,bootcode_bin))
39
40 define Download/fixup_dat
41 FILE:=$(RPI_FIRMWARE_FILE)-fixup.dat
42 URL:=$(RPI_FIRMWARE_URL)
43 URL_FILE:=fixup.dat
44 HASH:=d63bc6d3516dbb860091a34ec3ce584fafb4dc79740c11da9be87572849c2e02
45 endef
46 $(eval $(call Download,fixup_dat))
47
48 define Download/fixup_cd_dat
49 FILE:=$(RPI_FIRMWARE_FILE)-fixup_cd.dat
50 URL:=$(RPI_FIRMWARE_URL)
51 URL_FILE:=fixup_cd.dat
52 HASH:=eba5b57f49d2e8c1b2261e59297256bdff4751aeb3c7a16e60044799bcfd6b68
53 endef
54 $(eval $(call Download,fixup_cd_dat))
55
56 define Download/fixup_x_dat
57 FILE:=$(RPI_FIRMWARE_FILE)-fixup_x.dat
58 URL:=$(RPI_FIRMWARE_URL)
59 URL_FILE:=fixup_x.dat
60 HASH:=74cc843d28f07940f7f9e618d2f5ff8c0ed245599bb45457bab1960e56cbf672
61 endef
62 $(eval $(call Download,fixup_x_dat))
63
64 define Download/fixup4_dat
65 FILE:=$(RPI_FIRMWARE_FILE)-fixup4.dat
66 URL:=$(RPI_FIRMWARE_URL)
67 URL_FILE:=fixup4.dat
68 HASH:=d8b44fd10c87ae51d4cce14a692f7f322574d63f7255f9776a61005c37183c5a
69 endef
70 $(eval $(call Download,fixup4_dat))
71
72 define Download/fixup4cd_dat
73 FILE:=$(RPI_FIRMWARE_FILE)-fixup4cd.dat
74 URL:=$(RPI_FIRMWARE_URL)
75 URL_FILE:=fixup4cd.dat
76 HASH:=efc3fa3cd5f94e08687824bf149ed8c9a11bbd3e8ebac034934246dbf502300c
77 endef
78 $(eval $(call Download,fixup4cd_dat))
79
80 define Download/fixup4x_dat
81 FILE:=$(RPI_FIRMWARE_FILE)-fixup4x.dat
82 URL:=$(RPI_FIRMWARE_URL)
83 URL_FILE:=fixup4x.dat
84 HASH:=866c11f0770246fba0756ee671cf118313ee23be88decae09114b123db2f26bd
85 endef
86 $(eval $(call Download,fixup4x_dat))
87
88 define Download/start_elf
89 FILE:=$(RPI_FIRMWARE_FILE)-start.elf
90 URL:=$(RPI_FIRMWARE_URL)
91 URL_FILE:=start.elf
92 HASH:=c9f831786f4c03d58110baddef4da32f56387d1af191866f839dffb9b0671aab
93 endef
94 $(eval $(call Download,start_elf))
95
96 define Download/start_cd_elf
97 FILE:=$(RPI_FIRMWARE_FILE)-start_cd.elf
98 URL:=$(RPI_FIRMWARE_URL)
99 URL_FILE:=start_cd.elf
100 HASH:=c7ba345f71b1e5fed2cbc9d16dbb1b658546c1365e92302828f4f75ccb693df5
101 endef
102 $(eval $(call Download,start_cd_elf))
103
104 define Download/start_x_elf
105 FILE:=$(RPI_FIRMWARE_FILE)-start_x.elf
106 URL:=$(RPI_FIRMWARE_URL)
107 URL_FILE:=start_x.elf
108 HASH:=ab51744e7048a67758ac133ed20e3f482e40f81780915b88efb97647f838771e
109 endef
110 $(eval $(call Download,start_x_elf))
111
112 define Download/start4_elf
113 FILE:=$(RPI_FIRMWARE_FILE)-start4.elf
114 URL:=$(RPI_FIRMWARE_URL)
115 URL_FILE:=start4.elf
116 HASH:=2691df2baa2d24dc08a7c7c99381555a819722a92c2b80731452724ddcd3e6d0
117 endef
118 $(eval $(call Download,start4_elf))
119
120 define Download/start4cd_elf
121 FILE:=$(RPI_FIRMWARE_FILE)-start4cd.elf
122 URL:=$(RPI_FIRMWARE_URL)
123 URL_FILE:=start4cd.elf
124 HASH:=5e0d5e20b212daab99c2dd57a363ccd64ed27c8bbd0205efee07a731e6ae1a4e
125 endef
126 $(eval $(call Download,start4cd_elf))
127
128 define Download/start4x_elf
129 FILE:=$(RPI_FIRMWARE_FILE)-start4x.elf
130 URL:=$(RPI_FIRMWARE_URL)
131 URL_FILE:=start4x.elf
132 HASH:=67a748bb67267cfea45597681e8400a1794956dd9b7906032991cb6ce2d8742b
133 endef
134 $(eval $(call Download,start4x_elf))
135
136 define Package/brcm2708-gpu-fw
137 SECTION:=boot
138 CATEGORY:=Boot Loaders
139 DEPENDS:=@TARGET_brcm2708
140 TITLE:=brcm2708-gpu-fw
141 DEFAULT:=y if TARGET_brcm2708
142 endef
143
144 define Package/brcm2708-gpu-fw/description
145 GPU and kernel boot firmware for brcm2708.
146 endef
147
148 define Build/Prepare
149 rm -rf $(PKG_BUILD_DIR)
150 mkdir -p $(PKG_BUILD_DIR)
151 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-LICENCE.broadcom $(PKG_BUILD_DIR)/LICENCE.broadcom
152 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-bootcode.bin $(PKG_BUILD_DIR)/bootcode.bin
153 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-fixup.dat $(PKG_BUILD_DIR)/fixup.dat
154 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-fixup_cd.dat $(PKG_BUILD_DIR)/fixup_cd.dat
155 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-fixup_x.dat $(PKG_BUILD_DIR)/fixup_x.dat
156 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-fixup4.dat $(PKG_BUILD_DIR)/fixup4.dat
157 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-fixup4cd.dat $(PKG_BUILD_DIR)/fixup4cd.dat
158 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-fixup4x.dat $(PKG_BUILD_DIR)/fixup4x.dat
159 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-start.elf $(PKG_BUILD_DIR)/start.elf
160 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-start_cd.elf $(PKG_BUILD_DIR)/start_cd.elf
161 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-start_x.elf $(PKG_BUILD_DIR)/start_x.elf
162 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-start4.elf $(PKG_BUILD_DIR)/start4.elf
163 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-start4cd.elf $(PKG_BUILD_DIR)/start4cd.elf
164 cp $(DL_DIR)/$(RPI_FIRMWARE_FILE)-start4x.elf $(PKG_BUILD_DIR)/start4x.elf
165 endef
166
167 define Build/Compile
168 true
169 endef
170
171 define Package/brcm2708-gpu-fw/install
172 true
173 endef
174
175 define Build/InstallDev
176 $(CP) $(PKG_BUILD_DIR)/bootcode.bin $(KERNEL_BUILD_DIR)
177 $(CP) $(PKG_BUILD_DIR)/LICENCE.broadcom $(KERNEL_BUILD_DIR)
178 $(CP) $(PKG_BUILD_DIR)/start.elf $(KERNEL_BUILD_DIR)
179 $(CP) $(PKG_BUILD_DIR)/start_cd.elf $(KERNEL_BUILD_DIR)
180 $(CP) $(PKG_BUILD_DIR)/start_x.elf $(KERNEL_BUILD_DIR)
181 $(CP) $(PKG_BUILD_DIR)/start4.elf $(KERNEL_BUILD_DIR)
182 $(CP) $(PKG_BUILD_DIR)/start4cd.elf $(KERNEL_BUILD_DIR)
183 $(CP) $(PKG_BUILD_DIR)/start4x.elf $(KERNEL_BUILD_DIR)
184 $(CP) $(PKG_BUILD_DIR)/fixup.dat $(KERNEL_BUILD_DIR)
185 $(CP) $(PKG_BUILD_DIR)/fixup_cd.dat $(KERNEL_BUILD_DIR)
186 $(CP) $(PKG_BUILD_DIR)/fixup_x.dat $(KERNEL_BUILD_DIR)
187 $(CP) $(PKG_BUILD_DIR)/fixup4.dat $(KERNEL_BUILD_DIR)
188 $(CP) $(PKG_BUILD_DIR)/fixup4cd.dat $(KERNEL_BUILD_DIR)
189 $(CP) $(PKG_BUILD_DIR)/fixup4x.dat $(KERNEL_BUILD_DIR)
190 endef
191
192 $(eval $(call BuildPackage,brcm2708-gpu-fw))