diff options
author | Mark Hatle <mark.hatle@amd.com> | 2023-05-18 13:18:29 -0600 |
---|---|---|
committer | Mark Hatle <mark.hatle@amd.com> | 2023-05-18 14:59:03 -0600 |
commit | 96363a1fada8f5dca874917e47899e7f6dd26b43 (patch) | |
tree | 60a031689d7c6bb11640136a00e2e44eedfc3868 | |
parent | fe4b15d97e0b5ce73cd3186ac3e380df07c9d1ca (diff) | |
parent | d4732aa636e6764c64030083a20975283c2352d5 (diff) | |
download | meta-xilinx-96363a1fada8f5dca874917e47899e7f6dd26b43.tar.gz |
Merge remote-tracking branch 'origin/rel-v2023.1'
Resolved conflicts
Preserved 2022* versions
Signed-off-by: Mark Hatle <mark.hatle@amd.com>
266 files changed, 3670 insertions, 775 deletions
diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 00000000..ae8486a4 --- /dev/null +++ b/.gitmodules | |||
@@ -0,0 +1,4 @@ | |||
1 | [submodule "gen-machine-conf"] | ||
2 | path = meta-xilinx-core/gen-machine-conf | ||
3 | url = https://github.com/Xilinx/gen-machine-conf.git | ||
4 | branch = xlnx_rel_v2023.1 | ||
diff --git a/docs/README.fpgamanager.custom.md b/docs/README.fpgamanager.custom.md index 53f06703..ada3985e 100644 --- a/docs/README.fpgamanager.custom.md +++ b/docs/README.fpgamanager.custom.md | |||
@@ -179,8 +179,8 @@ IMAGE_INSTALL:append = " \ | |||
179 | 179 | ||
180 | * ZynqMP | 180 | * ZynqMP |
181 | ``` | 181 | ``` |
182 | yocto-zynqmp-generic-20222:~$ sudo su | 182 | yocto-zynqmp-generic-20231:~$ sudo su |
183 | yocto-zynqmp-generic-20222:/home/petalinux# cat /proc/interrupts | 183 | yocto-zynqmp-generic-20231:/home/petalinux# cat /proc/interrupts |
184 | CPU0 CPU1 CPU2 CPU3 | 184 | CPU0 CPU1 CPU2 CPU3 |
185 | 11: 13309 13021 13673 14170 GICv2 30 Level arch_timer | 185 | 11: 13309 13021 13673 14170 GICv2 30 Level arch_timer |
186 | 14: 0 0 0 0 GICv2 67 Level zynqmp_ipi | 186 | 14: 0 0 0 0 GICv2 67 Level zynqmp_ipi |
@@ -230,7 +230,7 @@ IPI4: 0 0 0 0 Timer broadcast interrupt | |||
230 | IPI5: 0 0 0 0 IRQ work interrupts | 230 | IPI5: 0 0 0 0 IRQ work interrupts |
231 | IPI6: 0 0 0 0 CPU wake-up interrupts | 231 | IPI6: 0 0 0 0 CPU wake-up interrupts |
232 | Err: 0 | 232 | Err: 0 |
233 | yocto-zynqmp-generic-20222:/home/petalinux# tree /lib/firmware/ | 233 | yocto-zynqmp-generic-20231:/home/petalinux# tree /lib/firmware/ |
234 | /lib/firmware/ | 234 | /lib/firmware/ |
235 | `-- xilinx | 235 | `-- xilinx |
236 | `-- zcu111-pl-demo | 236 | `-- zcu111-pl-demo |
@@ -238,7 +238,7 @@ yocto-zynqmp-generic-20222:/home/petalinux# tree /lib/firmware/ | |||
238 | `-- zcu111-pl-demo.dtbo | 238 | `-- zcu111-pl-demo.dtbo |
239 | 239 | ||
240 | 2 directories, 2 files | 240 | 2 directories, 2 files |
241 | yocto-zynqmp-generic-20222:/home/petalinux# fpgautil -b /lib/firmware/xilinx/zcu111-pl-demo/zcu111-pl-demo.bit -o /lib/firmware/xilinx/zcu111-pl-demo/zcu111-pl-demo.dtbo | 241 | yocto-zynqmp-generic-20231:/home/petalinux# fpgautil -b /lib/firmware/xilinx/zcu111-pl-demo/zcu111-pl-demo.bit -o /lib/firmware/xilinx/zcu111-pl-demo/zcu111-pl-demo.dtbo |
242 | [ 91.039773] fpga_manager fpga0: writing zcu111-pl-demo.bit to Xilinx ZynqMP FPGA Manager | 242 | [ 91.039773] fpga_manager fpga0: writing zcu111-pl-demo.bit to Xilinx ZynqMP FPGA Manager |
243 | [ 91.528214] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga-full/firmware-name | 243 | [ 91.528214] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga-full/firmware-name |
244 | [ 91.538354] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga-full/pid | 244 | [ 91.538354] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga-full/pid |
@@ -259,13 +259,13 @@ yocto-zynqmp-generic-20222:/home/petalinux# fpgautil -b /lib/firmware/xilinx/zcu | |||
259 | [ 91.906539] input: pl-gpio-keys as /devices/platform/pl-gpio-keys/input/input1 | 259 | [ 91.906539] input: pl-gpio-keys as /devices/platform/pl-gpio-keys/input/input1 |
260 | Time taken to load BIN is 901.000000 Milli Seconds | 260 | Time taken to load BIN is 901.000000 Milli Seconds |
261 | BIN FILE loaded through FPGA manager successfully | 261 | BIN FILE loaded through FPGA manager successfully |
262 | yocto-zynqmp-generic-20222:/home/petalinux# | 262 | yocto-zynqmp-generic-20231:/home/petalinux# |
263 | ``` | 263 | ``` |
264 | * Versal (DFx Static) | 264 | * Versal (DFx Static) |
265 | ``` | 265 | ``` |
266 | yocto-vck190-dfx-2022:~$ sudo su | 266 | yocto-vck190-dfx-2023:~$ sudo su |
267 | root@yocto-vck190-dfx-2022:~# | 267 | root@yocto-vck190-dfx-2023:~# |
268 | root@yocto-vck190-dfx-2022:~# fpgautil -o /lib/firmware/xilinx/vck190-dfx-static/vck190-dfx-static.dtbo | 268 | root@yocto-vck190-dfx-2023:~# fpgautil -o /lib/firmware/xilinx/vck190-dfx-static/vck190-dfx-static.dtbo |
269 | [ 257.555571] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga/external-fpga-config | 269 | [ 257.555571] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga/external-fpga-config |
270 | [ 257.565879] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga/pid | 270 | [ 257.565879] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga/pid |
271 | [ 257.574670] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga/uid | 271 | [ 257.574670] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga/uid |
@@ -279,11 +279,11 @@ root@yocto-vck190-dfx-2022:~# fpgautil -o /lib/firmware/xilinx/vck190-dfx-static | |||
279 | [ 257.663234] of-fpga-region fpga:fpga-PR0: FPGA Region probed | 279 | [ 257.663234] of-fpga-region fpga:fpga-PR0: FPGA Region probed |
280 | [ 257.669135] of-fpga-region fpga:fpga-PR1: FPGA Region probed | 280 | [ 257.669135] of-fpga-region fpga:fpga-PR1: FPGA Region probed |
281 | [ 257.675022] of-fpga-region fpga:fpga-PR2: FPGA Region probed | 281 | [ 257.675022] of-fpga-region fpga:fpga-PR2: FPGA Region probed |
282 | root@yocto-vck190-dfx-2022:~# | 282 | root@yocto-vck190-dfx-2023:~# |
283 | ``` | 283 | ``` |
284 | * Versal (DFx RP) | 284 | * Versal (DFx RP) |
285 | ``` | 285 | ``` |
286 | root@yocto-vck190-dfx-2022:~# fpgautil -b /lib/firmware/xilinx/vck190-dfx-static/rp1/vck190-dfx-rp1rm1-dipsw/vck190-dfx-rp1rm1-dipsw.pdi -o /lib/firmware/xilinx/vck190-dfx-static/rp1/vck190-dfx-rp1rm1-dipsw/vck190-dfx-rp1rm1-dipsw.dtbo -f Partial -n PR0 | 286 | root@yocto-vck190-dfx-2023:~# fpgautil -b /lib/firmware/xilinx/vck190-dfx-static/rp1/vck190-dfx-rp1rm1-dipsw/vck190-dfx-rp1rm1-dipsw.pdi -o /lib/firmware/xilinx/vck190-dfx-static/rp1/vck190-dfx-rp1rm1-dipsw/vck190-dfx-rp1rm1-dipsw.dtbo -f Partial -n PR0 |
287 | [ 273.511455] fpga_manager fpga0: writing vck190-dfx-rp1rm1-dipsw.pdi to Xilinx Versal FPGA Manager | 287 | [ 273.511455] fpga_manager fpga0: writing vck190-dfx-rp1rm1-dipsw.pdi to Xilinx Versal FPGA Manager |
288 | [284052.461]Loading PDI from DDR | 288 | [284052.461]Loading PDI from DDR |
289 | [284052.566]Monolithic/Master Device | 289 | [284052.566]Monolithic/Master Device |
@@ -314,7 +314,7 @@ root@yocto-vck190-dfx-2022:~# fpgautil -b /lib/firmware/xilinx/vck190-dfx-static | |||
314 | [ 273.670490] input: pl-gpio-keys as /devices/platform/pl-gpio-keys/input/input0 | 314 | [ 273.670490] input: pl-gpio-keys as /devices/platform/pl-gpio-keys/input/input0 |
315 | Time taken to load BIN is 171.000000 Milli Seconds | 315 | Time taken to load BIN is 171.000000 Milli Seconds |
316 | BIN FILE loaded through FPGA manager successfully | 316 | BIN FILE loaded through FPGA manager successfully |
317 | root@yocto-vck190-dfx-2022:~# | 317 | root@yocto-vck190-dfx-2023:~# |
318 | ``` | 318 | ``` |
319 | --- | 319 | --- |
320 | 320 | ||
@@ -324,7 +324,7 @@ root@yocto-vck190-dfx-2022:~# | |||
324 | * Verify PL GPIO DIP switches and Push buttons are registered. | 324 | * Verify PL GPIO DIP switches and Push buttons are registered. |
325 | * Move the DIP Switches ON/OFF and verify the interrupt counts. | 325 | * Move the DIP Switches ON/OFF and verify the interrupt counts. |
326 | ``` | 326 | ``` |
327 | yocto-zynqmp-generic-20222:/home/petalinux# cat /proc/interrupts | 327 | yocto-zynqmp-generic-20231:/home/petalinux# cat /proc/interrupts |
328 | CPU0 CPU1 CPU2 CPU3 | 328 | CPU0 CPU1 CPU2 CPU3 |
329 | 11: 23303 22971 24203 24990 GICv2 30 Level arch_timer | 329 | 11: 23303 22971 24203 24990 GICv2 30 Level arch_timer |
330 | 14: 0 0 0 0 GICv2 67 Level zynqmp_ipi | 330 | 14: 0 0 0 0 GICv2 67 Level zynqmp_ipi |
@@ -387,7 +387,7 @@ IPI4: 0 0 0 0 Timer broadcast interrupt | |||
387 | IPI5: 0 0 0 0 IRQ work interrupts | 387 | IPI5: 0 0 0 0 IRQ work interrupts |
388 | IPI6: 0 0 0 0 CPU wake-up interrupts | 388 | IPI6: 0 0 0 0 CPU wake-up interrupts |
389 | Err: 0 | 389 | Err: 0 |
390 | yocto-zynqmp-generic-20222:/home/petalinux# cat /proc/interrupts | 390 | yocto-zynqmp-generic-20231:/home/petalinux# cat /proc/interrupts |
391 | CPU0 CPU1 CPU2 CPU3 | 391 | CPU0 CPU1 CPU2 CPU3 |
392 | 11: 28169 27725 29250 30190 GICv2 30 Level arch_timer | 392 | 11: 28169 27725 29250 30190 GICv2 30 Level arch_timer |
393 | 14: 0 0 0 0 GICv2 67 Level zynqmp_ipi | 393 | 14: 0 0 0 0 GICv2 67 Level zynqmp_ipi |
@@ -450,22 +450,22 @@ IPI4: 0 0 0 0 Timer broadcast interrupt | |||
450 | IPI5: 0 0 0 0 IRQ work interrupts | 450 | IPI5: 0 0 0 0 IRQ work interrupts |
451 | IPI6: 0 0 0 0 CPU wake-up interrupts | 451 | IPI6: 0 0 0 0 CPU wake-up interrupts |
452 | Err: 0 | 452 | Err: 0 |
453 | yocto-zynqmp-generic-20222:/home/petalinux# | 453 | yocto-zynqmp-generic-20231:/home/petalinux# |
454 | ``` | 454 | ``` |
455 | --- | 455 | --- |
456 | 456 | ||
457 | ### Unloading PL bitstream or pdi and dt overlay | 457 | ### Unloading PL bitstream or pdi and dt overlay |
458 | * Zynq or ZynqMP | 458 | * Zynq or ZynqMP |
459 | ``` | 459 | ``` |
460 | yocto-zynqmp-generic-20222:/home/petalinux# fpgautil -R | 460 | yocto-zynqmp-generic-20231:/home/petalinux# fpgautil -R |
461 | ``` | 461 | ``` |
462 | * Versal (DFx RP) | 462 | * Versal (DFx RP) |
463 | ``` | 463 | ``` |
464 | root@yocto-vck190-dfx-2022:~# fpgautil -R -n PR0 | 464 | root@yocto-vck190-dfx-2023:~# fpgautil -R -n PR0 |
465 | ``` | 465 | ``` |
466 | * Versal (DFx Static) | 466 | * Versal (DFx Static) |
467 | ``` | 467 | ``` |
468 | root@yocto-vck190-dfx-2022:~# fpgautil -R -n Full | 468 | root@yocto-vck190-dfx-2023:~# fpgautil -R -n Full |
469 | ``` | 469 | ``` |
470 | --- | 470 | --- |
471 | 471 | ||
diff --git a/gen-machine-conf b/gen-machine-conf new file mode 120000 index 00000000..3fe520d6 --- /dev/null +++ b/gen-machine-conf | |||
@@ -0,0 +1 @@ | |||
meta-xilinx-core/gen-machine-conf \ No newline at end of file | |||
diff --git a/meta-microblaze/README.md b/meta-microblaze/README.md index d7bf9117..9da3f813 100644 --- a/meta-microblaze/README.md +++ b/meta-microblaze/README.md | |||
@@ -18,4 +18,4 @@ This layer depends on: | |||
18 | https://git.yoctoproject.org/meta-xilinx (official version) | 18 | https://git.yoctoproject.org/meta-xilinx (official version) |
19 | https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) | 19 | https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) |
20 | layers: meta-xilinx-core | 20 | layers: meta-xilinx-core |
21 | branch: langdale or amd xilinx release version (e.g. rel-v2022.2) | 21 | branch: langdale or amd xilinx release version (e.g. rel-v2023.1) |
diff --git a/meta-xilinx-bsp/README.md b/meta-xilinx-bsp/README.md index 18056e0d..29177ad7 100644 --- a/meta-xilinx-bsp/README.md +++ b/meta-xilinx-bsp/README.md | |||
@@ -24,6 +24,9 @@ The following boards are supported by the meta-xilinx-bsp layer: | |||
24 | | Devices | Evaluation Board | Machine Configuration file | Reference XSA | HW Board Device tree | QEMU tested | HW tested | | 24 | | Devices | Evaluation Board | Machine Configuration file | Reference XSA | HW Board Device tree | QEMU tested | HW tested | |
25 | |------------|-------------------------------------------------------------------------------|--------------------------------------------------------------|-----------------------|-------------------------------------|-------------|-----------| | 25 | |------------|-------------------------------------------------------------------------------|--------------------------------------------------------------|-----------------------|-------------------------------------|-------------|-----------| |
26 | | MicroBlaze | [KC705](https://www.xilinx.com/products/boards-and-kits/ek-k7-kc705-g.html) | [kc705-microblazeel](conf/machine/kc705-microblazeel.conf) | `kc705-microblazeel` | `kc705-full` | Yes | Yes | | 26 | | MicroBlaze | [KC705](https://www.xilinx.com/products/boards-and-kits/ek-k7-kc705-g.html) | [kc705-microblazeel](conf/machine/kc705-microblazeel.conf) | `kc705-microblazeel` | `kc705-full` | Yes | Yes | |
27 | | | [AC701](https://www.xilinx.com/products/boards-and-kits/ek-a7-ac701-g.html) | [ac701-microblazeel](conf/machine/ac701-microblazeel.conf) | `ac701-microblazeel` | `ac701-full` | Yes | Yes | | ||
28 | | | [KCU105](https://www.xilinx.com/products/boards-and-kits/kcu105.html) | [kcu105-microblazeel](conf/machine/kcu105-microblazeel.conf) | `kcu105-microblazeel` | `kcu105` | Yes | Yes | | ||
29 | | | [VCU118](https://www.xilinx.com/products/boards-and-kits/vcu118.html) | [vcu118-microblazeel](conf/machine/vcu118-microblazeel.conf) | `vcu118-microblazeel` | `vcu118-rev2.0` | Yes | Yes | | ||
27 | | Zynq-7000 | [ZC702](https://www.xilinx.com/products/boards-and-kits/ek-z7-zc702-g.html) | [zc702-zynq7](conf/machine/zc702-zynq7.conf) | `zc702-zynq7` | `zc702` | Yes | Yes | | 30 | | Zynq-7000 | [ZC702](https://www.xilinx.com/products/boards-and-kits/ek-z7-zc702-g.html) | [zc702-zynq7](conf/machine/zc702-zynq7.conf) | `zc702-zynq7` | `zc702` | Yes | Yes | |
28 | | | [ZC706](https://www.xilinx.com/products/boards-and-kits/ek-z7-zc706-g.html) | [zc706-zynq7](conf/machine/zc706-zynq7.conf) | `zc706-zynq7` | `zc706` | Yes | Yes | | 31 | | | [ZC706](https://www.xilinx.com/products/boards-and-kits/ek-z7-zc706-g.html) | [zc706-zynq7](conf/machine/zc706-zynq7.conf) | `zc706-zynq7` | `zc706` | Yes | Yes | |
29 | | ZynqMP | [ZCU102](https://www.xilinx.com/products/boards-and-kits/ek-u1-zcu102-g.html) | [zcu102-zynqmp](conf/machine/zcu102-zynqmp.conf) | `zcu102-zynqmp` | `zcu102-rev1.0` | Yes | Yes | | 32 | | ZynqMP | [ZCU102](https://www.xilinx.com/products/boards-and-kits/ek-u1-zcu102-g.html) | [zcu102-zynqmp](conf/machine/zcu102-zynqmp.conf) | `zcu102-zynqmp` | `zcu102-rev1.0` | Yes | Yes | |
@@ -32,11 +35,16 @@ The following boards are supported by the meta-xilinx-bsp layer: | |||
32 | | | [ZCU111](https://www.xilinx.com/products/boards-and-kits/zcu111.html) | [zcu111-zynqmp](conf/machine/zcu111-zynqmp.conf) | `zcu111-zynqmp` | `zcu111-reva` | Yes | Yes | | 35 | | | [ZCU111](https://www.xilinx.com/products/boards-and-kits/zcu111.html) | [zcu111-zynqmp](conf/machine/zcu111-zynqmp.conf) | `zcu111-zynqmp` | `zcu111-reva` | Yes | Yes | |
33 | | | [ZCU1275](https://www.xilinx.com/products/boards-and-kits/zcu1275.html) | [zcu1275-zynqmp](conf/machine/zcu1275-zynqmp.conf) | `zcu1275-zynqmp` | `zcu1275-revb` | Yes | Yes | | 36 | | | [ZCU1275](https://www.xilinx.com/products/boards-and-kits/zcu1275.html) | [zcu1275-zynqmp](conf/machine/zcu1275-zynqmp.conf) | `zcu1275-zynqmp` | `zcu1275-revb` | Yes | Yes | |
34 | | | [ZCU1285](https://www.xilinx.com/products/boards-and-kits/zcu1285.html) | [zcu1285-zynqmp](conf/machine/zcu1285-zynqmp.conf) | `zcu1285-zynqmp` | `zcu1285-reva` | Yes | Yes | | 37 | | | [ZCU1285](https://www.xilinx.com/products/boards-and-kits/zcu1285.html) | [zcu1285-zynqmp](conf/machine/zcu1285-zynqmp.conf) | `zcu1285-zynqmp` | `zcu1285-reva` | Yes | Yes | |
38 | | | [ZCU208](https://www.xilinx.com/products/boards-and-kits/zcu208.html) | [zcu208-zynqmp](conf/machine/zcu208-zynqmp.conf) | `zcu208-zynqmp` | `zcu208-reva` | Yes | Yes | | ||
35 | | | [ZCU216](https://www.xilinx.com/products/boards-and-kits/zcu216.html) | [zcu216-zynqmp](conf/machine/zcu216-zynqmp.conf) | `zcu216-zynqmp` | `zcu216-reva` | Yes | Yes | | 39 | | | [ZCU216](https://www.xilinx.com/products/boards-and-kits/zcu216.html) | [zcu216-zynqmp](conf/machine/zcu216-zynqmp.conf) | `zcu216-zynqmp` | `zcu216-reva` | Yes | Yes | |
40 | | | [ZCU670](https://www.xilinx.com/products/boards-and-kits/zcu670.html) | [zcu670-zynqmp](conf/machine/zcu670-zynqmp.conf) | `zcu670-zynqmp` | `zcu670-revb` | Yes | Yes | | ||
36 | | Versal | [VCK190](https://www.xilinx.com/products/boards-and-kits/vck190.html) | [vck190-versal](conf/machine/vck190-versal.conf) | `vck190-versal` | `versal-vck190-reva-x-ebm-01-reva` | Yes | Yes | | 41 | | Versal | [VCK190](https://www.xilinx.com/products/boards-and-kits/vck190.html) | [vck190-versal](conf/machine/vck190-versal.conf) | `vck190-versal` | `versal-vck190-reva-x-ebm-01-reva` | Yes | Yes | |
37 | | | [VMK180](https://www.xilinx.com/products/boards-and-kits/vmk180.html) | [vmk180-versal](conf/machine/vmk180-versal.conf) | `vmk180-versal` | `versal-vmk180-reva-x-ebm-01-reva` | Yes | Yes | | 42 | | | [VMK180](https://www.xilinx.com/products/boards-and-kits/vmk180.html) | [vmk180-versal](conf/machine/vmk180-versal.conf) | `vmk180-versal` | `versal-vmk180-reva-x-ebm-01-reva` | Yes | Yes | |
38 | | | [VCK5000](https://www.xilinx.com/products/boards-and-kits/vck5000.html) | [vck5000-versal](conf/machine/vck5000-versal.conf) | `vck5000-versal` | `versal-vck5000-reva-x-ebm-01-reva` | No | No | | 43 | | | [VCK5000](https://www.xilinx.com/products/boards-and-kits/vck5000.html) | [vck5000-versal](conf/machine/vck5000-versal.conf) | `vck5000-versal` | `versal-vck5000-reva-x-ebm-01-reva` | No | No | |
39 | | | [VPK120](https://www.xilinx.com/products/boards-and-kits/vpk120.html) | [vpk120-versal](conf/machine/vpk120-versal.conf) | `vpk120-versal` | `versal-vpk120-reva` | Yes | Yes | | 44 | | | [VPK120](https://www.xilinx.com/products/boards-and-kits/vpk120.html) | [vpk120-versal](conf/machine/vpk120-versal.conf) | `vpk120-versal` | `versal-vpk120-reva` | Yes | Yes | |
45 | | | [VPK180](https://www.xilinx.com/products/boards-and-kits/vpk180.html) | [vpk180-versal](conf/machine/vpk180-versal.conf) | `vpk180-versal` | `versal-vpk180-reva` | Yes | Yes | | ||
46 | | | [VEK280](https://www.xilinx.com/products/boards-and-kits/vek280.html) | [vek280-versal](conf/machine/vek280-versal.conf) | `vek280-versal` | `versal-vek280-reva` | Yes | Yes | | ||
47 | | | [VHK158](https://www.xilinx.com/products/boards-and-kits/vhk158.html) | [vhk158-versal](conf/machine/vhk158-versal.conf) | `vhk158-versal` | `versal-vhk158-reva` | Yes | Yes | | ||
40 | 48 | ||
41 | > **Note:** Additional information on Xilinx architectures can be found at: | 49 | > **Note:** Additional information on Xilinx architectures can be found at: |
42 | https://www.xilinx.com/products/silicon-devices.html | 50 | https://www.xilinx.com/products/silicon-devices.html |
@@ -57,4 +65,4 @@ This layer depends on: | |||
57 | https://git.yoctoproject.org/meta-xilinx (official version) | 65 | https://git.yoctoproject.org/meta-xilinx (official version) |
58 | https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) | 66 | https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) |
59 | layers: meta-xilinx-microblaze, meta-xilinx-core | 67 | layers: meta-xilinx-microblaze, meta-xilinx-core |
60 | branch: langdale or amd xilinx release version (e.g. rel-v2022.2) | 68 | branch: langdale or amd xilinx release version (e.g. rel-v2023.1) |
diff --git a/meta-xilinx-bsp/conf/machine/ac701-microblazeel.conf b/meta-xilinx-bsp/conf/machine/ac701-microblazeel.conf new file mode 100644 index 00000000..88a0d7bb --- /dev/null +++ b/meta-xilinx-bsp/conf/machine/ac701-microblazeel.conf | |||
@@ -0,0 +1,42 @@ | |||
1 | #@TYPE: Machine | ||
2 | #@NAME: ac701-microblazeel | ||
3 | #@DESCRIPTION: Machine configuration for the AC701 evaluation board. | ||
4 | |||
5 | #### Preamble | ||
6 | MACHINEOVERRIDES =. "${@['', 'ac701-microblazeel:']['ac701-microblazeel' !='${MACHINE}']}" | ||
7 | #### Regular settings follow | ||
8 | |||
9 | # Variables that changes based on hw design or board specific requirement must be | ||
10 | # defined before calling the required inclusion file else pre-expansion value | ||
11 | # defined in microblazeel-generic.conf will be set. | ||
12 | |||
13 | # Yocto AC701 FS-Boot variables | ||
14 | YAML_SERIAL_CONSOLE_STDIN:pn-fs-boot ?= "axi_uartlite_0" | ||
15 | YAML_SERIAL_CONSOLE_STDOUT:pn-fs-boot ?= "axi_uartlite_0" | ||
16 | YAML_MAIN_MEMORY_CONFIG:pn-fs-boot ?= "MIG_7SERIES_0" | ||
17 | YAML_FLASH_MEMORY_CONFIG:pn-fs-boot ?= "axi_quad_spi_0" | ||
18 | XSCTH_PROC:pn-fs-boot ?= "microblaze_0" | ||
19 | |||
20 | # Yocto AC701 device-tree variables | ||
21 | YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "axi_uartlite_0" | ||
22 | YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "MIG_7SERIES_0" | ||
23 | DT_PADDING_SIZE:pn-device-tree ?= "0x1000" | ||
24 | DTC_FLAGS:pn-device-tree ?= "" | ||
25 | XSCTH_PROC:pn-device-tree ?= "microblaze_0" | ||
26 | YAML_DT_BOARD_FLAGS ?= "{BOARD ac701-full}" | ||
27 | |||
28 | # Set DDR Base address for u-boot-xlnx-scr variables | ||
29 | DDR_BASEADDR ?= "0x80000000" | ||
30 | SKIP_APPEND_BASEADDR ?= "0" | ||
31 | |||
32 | # Required generic machine inclusion | ||
33 | require conf/machine/microblaze-generic.conf | ||
34 | |||
35 | # This machine conf file uses ac701-microblazeel xsa as reference input. | ||
36 | # User can override with ac701 custom xsa using HDF_BASE and HDF_PATH variables | ||
37 | # from local.conf. | ||
38 | HDF_MACHINE = "ac701-microblazeel" | ||
39 | |||
40 | #### No additional settings should be after the Postamble | ||
41 | #### Postamble | ||
42 | PACKAGE_EXTRA_ARCHS:append = "${@['', 'ac701_microblazeel']['ac701-microblazeel' != '${MACHINE}']}" | ||
diff --git a/meta-xilinx-bsp/conf/machine/kcu105-microblazeel.conf b/meta-xilinx-bsp/conf/machine/kcu105-microblazeel.conf new file mode 100644 index 00000000..3edf190e --- /dev/null +++ b/meta-xilinx-bsp/conf/machine/kcu105-microblazeel.conf | |||
@@ -0,0 +1,42 @@ | |||
1 | #@TYPE: Machine | ||
2 | #@NAME: kcu105-microblazeel | ||
3 | #@DESCRIPTION: Machine configuration for the KCU105 evaluation board. | ||
4 | |||
5 | #### Preamble | ||
6 | MACHINEOVERRIDES =. "${@['', 'kcu105-microblazeel:']['kcu105-microblazeel' !='${MACHINE}']}" | ||
7 | #### Regular settings follow | ||
8 | |||
9 | # Variables that changes based on hw design or board specific requirement must be | ||
10 | # defined before calling the required inclusion file else pre-expansion value | ||
11 | # defined in microblazeel-generic.conf will be set. | ||
12 | |||
13 | # Yocto KCU105 FS-Boot variables | ||
14 | YAML_SERIAL_CONSOLE_STDIN:pn-fs-boot ?= "axi_uartlite_0" | ||
15 | YAML_SERIAL_CONSOLE_STDOUT:pn-fs-boot ?= "axi_uartlite_0" | ||
16 | YAML_MAIN_MEMORY_CONFIG:pn-fs-boot ?= "DDR4_0" | ||
17 | YAML_FLASH_MEMORY_CONFIG:pn-fs-boot ?= "axi_quad_spi_0" | ||
18 | XSCTH_PROC:pn-fs-boot ?= "microblaze_0" | ||
19 | |||
20 | # Yocto KCU105 device-tree variables | ||
21 | YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "axi_uartlite_0" | ||
22 | YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "DDR4_0" | ||
23 | DT_PADDING_SIZE:pn-device-tree ?= "0x1000" | ||
24 | DTC_FLAGS:pn-device-tree ?= "" | ||
25 | XSCTH_PROC:pn-device-tree ?= "microblaze_0" | ||
26 | YAML_DT_BOARD_FLAGS ?= "{BOARD kcu105}" | ||
27 | |||
28 | # Set DDR Base address for u-boot-xlnx-scr variables | ||
29 | DDR_BASEADDR ?= "0x80000000" | ||
30 | SKIP_APPEND_BASEADDR ?= "0" | ||
31 | |||
32 | # Required generic machine inclusion | ||
33 | require conf/machine/microblaze-generic.conf | ||
34 | |||
35 | # This machine conf file uses kcu105-microblazeel xsa as reference input. | ||
36 | # User can override with kcu105 custom xsa using HDF_BASE and HDF_PATH variables | ||
37 | # from local.conf. | ||
38 | HDF_MACHINE = "kcu105-microblazeel" | ||
39 | |||
40 | #### No additional settings should be after the Postamble | ||
41 | #### Postamble | ||
42 | PACKAGE_EXTRA_ARCHS:append = "${@['', 'kcu105_microblazeel']['kcu105-microblazeel' != '${MACHINE}']}" | ||
diff --git a/meta-xilinx-bsp/conf/machine/vcu118-microblazeel.conf b/meta-xilinx-bsp/conf/machine/vcu118-microblazeel.conf new file mode 100644 index 00000000..ada52ceb --- /dev/null +++ b/meta-xilinx-bsp/conf/machine/vcu118-microblazeel.conf | |||
@@ -0,0 +1,46 @@ | |||
1 | #@TYPE: Machine | ||
2 | #@NAME: vcu118-microblazeel | ||
3 | #@DESCRIPTION: Machine configuration for the VCU118 evaluation board. | ||
4 | |||
5 | #### Preamble | ||
6 | MACHINEOVERRIDES =. "${@['', 'vcu118-microblazeel:']['vcu118-microblazeel' !='${MACHINE}']}" | ||
7 | #### Regular settings follow | ||
8 | |||
9 | # Variables that changes based on hw design or board specific requirement must be | ||
10 | # defined before calling the required inclusion file else pre-expansion value | ||
11 | # defined in microblazeel-generic.conf will be set. | ||
12 | |||
13 | # Yocto VCU118 FS-Boot variables | ||
14 | YAML_SERIAL_CONSOLE_STDIN:pn-fs-boot ?= "axi_uartlite_0" | ||
15 | YAML_SERIAL_CONSOLE_STDOUT:pn-fs-boot ?= "axi_uartlite_0" | ||
16 | YAML_MAIN_MEMORY_CONFIG:pn-fs-boot ?= "DDR4_0" | ||
17 | YAML_FLASH_MEMORY_CONFIG:pn-fs-boot ?= "axi_quad_spi_0" | ||
18 | XSCTH_PROC:pn-fs-boot ?= "microblaze_0" | ||
19 | |||
20 | # Yocto VCU118 device-tree variables | ||
21 | YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "axi_uartlite_0" | ||
22 | YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "DDR4_0" | ||
23 | DT_PADDING_SIZE:pn-device-tree ?= "0x1000" | ||
24 | DTC_FLAGS:pn-device-tree ?= "" | ||
25 | XSCTH_PROC:pn-device-tree ?= "microblaze_0" | ||
26 | YAML_DT_BOARD_FLAGS ?= "{BOARD vcu118-rev2.0}" | ||
27 | |||
28 | # Yocto KERNEL Variables | ||
29 | UBOOT_ENTRYPOINT ?= "0x80000000" | ||
30 | UBOOT_LOADADDRESS ?= "0x80000000" | ||
31 | |||
32 | # Set DDR Base address for u-boot-xlnx-scr variables | ||
33 | DDR_BASEADDR ?= "0x80000000" | ||
34 | SKIP_APPEND_BASEADDR ?= "0" | ||
35 | |||
36 | # Required generic machine inclusion | ||
37 | require conf/machine/microblaze-generic.conf | ||
38 | |||
39 | # This machine conf file uses vcu118-microblazeel xsa as reference input. | ||
40 | # User can override with vcu118 custom xsa using HDF_BASE and HDF_PATH variables | ||
41 | # from local.conf. | ||
42 | HDF_MACHINE = "vcu118-microblazeel" | ||
43 | |||
44 | #### No additional settings should be after the Postamble | ||
45 | #### Postamble | ||
46 | PACKAGE_EXTRA_ARCHS:append = "${@['', 'vcu118_microblazeel']['vcu118-microblazeel' != '${MACHINE}']}" | ||
diff --git a/meta-xilinx-bsp/conf/machine/vek280-versal.conf b/meta-xilinx-bsp/conf/machine/vek280-versal.conf new file mode 100644 index 00000000..b533b833 --- /dev/null +++ b/meta-xilinx-bsp/conf/machine/vek280-versal.conf | |||
@@ -0,0 +1,35 @@ | |||
1 | #@TYPE: Machine | ||
2 | #@NAME: vek280-versal | ||
3 | #@DESCRIPTION: Machine configuration for the VEK280 evaluation boards. | ||
4 | |||
5 | #### Preamble | ||
6 | MACHINEOVERRIDES =. "${@['', 'vek280-versal:']['vek280-versal' !='${MACHINE}']}" | ||
7 | #### Regular settings follow | ||
8 | |||
9 | # Variables that changes based on hw design or board specific requirement must be | ||
10 | # defined before calling the required inclusion file else pre-expansion value | ||
11 | # defined in versal-generic.conf will be set. | ||
12 | |||
13 | # Yocto device-tree variables | ||
14 | YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "CIPS_0_pspmc_0_psv_sbsauart_0" | ||
15 | YAML_DT_BOARD_FLAGS ?= "{BOARD versal-vek280-reva}" | ||
16 | |||
17 | # Yocto PLM variables | ||
18 | YAML_SERIAL_CONSOLE_STDIN:pn-plm-firmware ?= "CIPS_0_pspmc_0_psv_sbsauart_0" | ||
19 | YAML_SERIAL_CONSOLE_STDOUT:pn-plm-firmware ?= "CIPS_0_pspmc_0_psv_sbsauart_0" | ||
20 | |||
21 | # vek280-versal Serial Console | ||
22 | SERIAL_CONSOLES ?= "115200;ttyAMA0" | ||
23 | YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200" | ||
24 | |||
25 | # Required generic machine inclusion | ||
26 | require conf/machine/versal-ai-edge-generic.conf | ||
27 | |||
28 | # This machine conf file uses vek280-versal xsa as reference input. | ||
29 | # User can override with vek280 custom xsa using HDF_BASE and HDF_PATH variables | ||
30 | # from local.conf. | ||
31 | HDF_MACHINE = "vek280-versal" | ||
32 | |||
33 | #### No additional settings should be after the Postamble | ||
34 | #### Postamble | ||
35 | PACKAGE_EXTRA_ARCHS:append = "${@['', 'vek280_versal']['vek280-versal' != '${MACHINE}']}" \ No newline at end of file | ||
diff --git a/meta-xilinx-bsp/conf/machine/vhk158-versal.conf b/meta-xilinx-bsp/conf/machine/vhk158-versal.conf new file mode 100644 index 00000000..5c0406de --- /dev/null +++ b/meta-xilinx-bsp/conf/machine/vhk158-versal.conf | |||
@@ -0,0 +1,52 @@ | |||
1 | #@TYPE: Machine | ||
2 | #@NAME: vhk158-versal | ||
3 | #@DESCRIPTION: Machine configuration for the VHK158 evaluation board. | ||
4 | |||
5 | #### Preamble | ||
6 | MACHINEOVERRIDES =. "${@['', 'vhk158-versal:']['vhk158-versal' !='${MACHINE}']}" | ||
7 | #### Regular settings follow | ||
8 | |||
9 | # Variables that changes based on hw design or board specific requirement must be | ||
10 | # defined before calling the required inclusion file else pre-expansion value | ||
11 | # defined in versal-generic.conf will be set. | ||
12 | |||
13 | # Yocto device-tree variables | ||
14 | YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "versal_cips_0_pspmc_0_psv_sbsauart_0" | ||
15 | YAML_DT_BOARD_FLAGS ?= "{BOARD versal-vhk158-reva}" | ||
16 | |||
17 | # Yocto arm-trusted-firmware(TF-A) variables | ||
18 | ATF_CONSOLE_DEFAULT ?= "pl011" | ||
19 | TFA_BL33_LOAD ?= "0x8000000" | ||
20 | |||
21 | # Yocto PLM variables | ||
22 | YAML_SERIAL_CONSOLE_STDIN:pn-plm-firmware ?= "versal_cips_0_pspmc_0_psv_sbsauart_0" | ||
23 | YAML_SERIAL_CONSOLE_STDOUT:pn-plm-firmware ?= "versal_cips_0_pspmc_0_psv_sbsauart_0" | ||
24 | |||
25 | # Yocto KERNEL Variables | ||
26 | UBOOT_ENTRYPOINT ?= "0x200000" | ||
27 | UBOOT_LOADADDRESS ?= "0x200000" | ||
28 | |||
29 | # vhk158-versal Serial Console | ||
30 | SERIAL_CONSOLES ?= "115200;ttyAMA0" | ||
31 | YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200" | ||
32 | |||
33 | # Required generic machine inclusion | ||
34 | # VHK158 board uses Versal HBM device hence use soc variant based generic | ||
35 | # machine inclusion | ||
36 | require conf/machine/versal-hbm-generic.conf | ||
37 | |||
38 | # This machine conf file uses vhk158-versal xsa as reference input. | ||
39 | # User can override with vhk158 custom xsa using HDF_BASE and HDF_PATH variables | ||
40 | # from local.conf. | ||
41 | HDF_MACHINE = "vhk158-versal" | ||
42 | |||
43 | # VHK158 has 32GB memory only but default versal-generic has QB_MEM set to 8G, | ||
44 | # Since versal-vhk158-reva.dts has 32GB set, we need set same in QB_MEM | ||
45 | QB_MEM = "-m 32G" | ||
46 | |||
47 | QEMU_HW_DTB_PS = "${QEMU_HW_DTB_PATH}/board-versal-ps-vhk158.dtb" | ||
48 | QEMU_HW_DTB_PMC = "${QEMU_HW_DTB_PATH}/board-versal-pmc-virt.dtb" | ||
49 | |||
50 | #### No additional settings should be after the Postamble | ||
51 | #### Postamble | ||
52 | PACKAGE_EXTRA_ARCHS:append = "${@['', 'vhk158_versal']['vhk158-versal' != '${MACHINE}']}" \ No newline at end of file | ||
diff --git a/meta-xilinx-bsp/conf/machine/vpk180-versal.conf b/meta-xilinx-bsp/conf/machine/vpk180-versal.conf new file mode 100644 index 00000000..099cd956 --- /dev/null +++ b/meta-xilinx-bsp/conf/machine/vpk180-versal.conf | |||
@@ -0,0 +1,48 @@ | |||
1 | #@TYPE: Machine | ||
2 | #@NAME: vpk180-versal | ||
3 | #@DESCRIPTION: Machine configuration for the VPK180 evaluation board. | ||
4 | |||
5 | #### Preamble | ||
6 | MACHINEOVERRIDES =. "${@['', 'vpk180-versal:']['vpk180-versal' !='${MACHINE}']}" | ||
7 | #### Regular settings follow | ||
8 | |||
9 | # Variables that changes based on hw design or board specific requirement must be | ||
10 | # defined before calling the required inclusion file else pre-expansion value | ||
11 | # defined in versal-generic.conf will be set. | ||
12 | |||
13 | # Yocto device-tree variables | ||
14 | YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "versal_cips_0_pspmc_0_psv_sbsauart_0" | ||
15 | YAML_DT_BOARD_FLAGS ?= "{BOARD versal-vpk180-reva}" | ||
16 | |||
17 | # Yocto arm-trusted-firmware(TF-A) variables | ||
18 | ATF_CONSOLE_DEFAULT ?= "pl011" | ||
19 | TFA_BL33_LOAD ?= "0x8000000" | ||
20 | |||
21 | # Yocto PLM variables | ||
22 | YAML_SERIAL_CONSOLE_STDIN:pn-plm-firmware ?= "versal_cips_0_pspmc_0_psv_sbsauart_0" | ||
23 | YAML_SERIAL_CONSOLE_STDOUT:pn-plm-firmware ?= "versal_cips_0_pspmc_0_psv_sbsauart_0" | ||
24 | |||
25 | # Yocto KERNEL Variables | ||
26 | UBOOT_ENTRYPOINT ?= "0x200000" | ||
27 | UBOOT_LOADADDRESS ?= "0x200000" | ||
28 | |||
29 | # vpk180-versal Serial Console | ||
30 | SERIAL_CONSOLES ?= "115200;ttyAMA0" | ||
31 | YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200" | ||
32 | |||
33 | # Required generic machine inclusion | ||
34 | # VPK180 board uses Versal Premium device hence use soc variant based generic | ||
35 | # machine inclusion | ||
36 | require conf/machine/versal-premium-generic.conf | ||
37 | |||
38 | # This machine conf file uses vpk180-versal xsa as reference input. | ||
39 | # User can override with vpk180 custom xsa using HDF_BASE and HDF_PATH variables | ||
40 | # from local.conf. | ||
41 | HDF_MACHINE = "vpk180-versal" | ||
42 | |||
43 | QEMU_HW_DTB_PS = "${QEMU_HW_DTB_PATH}/board-versal-ps-vpk180.dtb" | ||
44 | QEMU_HW_DTB_PMC = "${QEMU_HW_DTB_PATH}/board-versal-pmc-virt.dtb" | ||
45 | |||
46 | #### No additional settings should be after the Postamble | ||
47 | #### Postamble | ||
48 | PACKAGE_EXTRA_ARCHS:append = "${@['', 'vpk180_versal']['vpk180-versal' != '${MACHINE}']}" | ||
diff --git a/meta-xilinx-bsp/conf/machine/zcu208-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zcu208-zynqmp.conf new file mode 100644 index 00000000..d7b2f340 --- /dev/null +++ b/meta-xilinx-bsp/conf/machine/zcu208-zynqmp.conf | |||
@@ -0,0 +1,50 @@ | |||
1 | #@TYPE: Machine | ||
2 | #@NAME: zcu208-zynqmp | ||
3 | #@DESCRIPTION: Machine configuration for the ZCU208 evaluation board. | ||
4 | |||
5 | #### Preamble | ||
6 | MACHINEOVERRIDES =. "${@['', 'zcu208-zynqmp:']['zcu208-zynqmp' !='${MACHINE}']}" | ||
7 | #### Regular settings follow | ||
8 | |||
9 | # Variables that changes based on hw design or board specific requirement must be | ||
10 | # defined before calling the required inclusion file else pre-expansion value | ||
11 | # defined in zynqmp-generic.conf will be set. | ||
12 | |||
13 | # Yocto device-tree variables | ||
14 | YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "psu_uart_0" | ||
15 | YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PSU_DDR_0" | ||
16 | YAML_DT_BOARD_FLAGS ?= "{BOARD zcu208-reva}" | ||
17 | |||
18 | # Yocto arm-trusted-firmware(TF-A) variables | ||
19 | ATF_CONSOLE_DEFAULT ?= "cadence" | ||
20 | TFA_BL33_LOAD ?= "0x8000000" | ||
21 | |||
22 | # Yocto PMUFW variables | ||
23 | YAML_SERIAL_CONSOLE_STDIN:pn-pmu-firmware ?= "psu_uart_0" | ||
24 | YAML_SERIAL_CONSOLE_STDOUT:pn-pmu-firmware ?= "psu_uart_0" | ||
25 | |||
26 | # Yocto FSBL variables | ||
27 | YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "psu_uart_0" | ||
28 | YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "psu_uart_0" | ||
29 | |||
30 | # Yocto KERNEL Variables | ||
31 | UBOOT_ENTRYPOINT ?= "0x200000" | ||
32 | UBOOT_LOADADDRESS ?= "0x200000" | ||
33 | |||
34 | # zcu208-zynqmp Serial Console | ||
35 | SERIAL_CONSOLES ?= "115200;ttyPS0" | ||
36 | YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200" | ||
37 | |||
38 | # Required generic machine inclusion | ||
39 | # ZCU208 board uses ZynqMP DR device hence use soc variant based generic machine | ||
40 | # inclusion | ||
41 | require conf/machine/zynqmp-dr-generic.conf | ||
42 | |||
43 | # This eval board machine conf file uses zcu208-zynqmp xsa as reference input. | ||
44 | # User can override with zcu208 custom xsa using HDF_BASE and HDF_PATH variables | ||
45 | # from local.conf. | ||
46 | HDF_MACHINE = "zcu208-zynqmp" | ||
47 | |||
48 | #### No additional settings should be after the Postamble | ||
49 | #### Postamble | ||
50 | PACKAGE_EXTRA_ARCHS:append = "${@['', 'zcu208_zynqmp']['zcu208-zynqmp' != '${MACHINE}']}" | ||
diff --git a/meta-xilinx-bsp/conf/machine/zcu670-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zcu670-zynqmp.conf new file mode 100644 index 00000000..6b1dd488 --- /dev/null +++ b/meta-xilinx-bsp/conf/machine/zcu670-zynqmp.conf | |||
@@ -0,0 +1,50 @@ | |||
1 | #@TYPE: Machine | ||
2 | #@NAME: zcu670-zynqmp | ||
3 | #@DESCRIPTION: Machine configuration for the ZCU670 evaluation board. | ||
4 | |||
5 | #### Preamble | ||
6 | MACHINEOVERRIDES =. "${@['', 'zcu670-zynqmp:']['zcu670-zynqmp' !='${MACHINE}']}" | ||
7 | #### Regular settings follow | ||
8 | |||
9 | # Variables that changes based on hw design or board specific requirement must be | ||
10 | # defined before calling the required inclusion file else pre-expansion value | ||
11 | # defined in zynqmp-generic.conf will be set. | ||
12 | |||
13 | # Yocto device-tree variables | ||
14 | YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "psu_uart_0" | ||
15 | YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PSU_DDR_0" | ||
16 | YAML_DT_BOARD_FLAGS ?= "{BOARD zcu670-revb}" | ||
17 | |||
18 | # Yocto arm-trusted-firmware(TF-A) variables | ||
19 | ATF_CONSOLE_DEFAULT ?= "cadence" | ||
20 | TFA_BL33_LOAD ?= "0x8000000" | ||
21 | |||
22 | # Yocto PMUFW variables | ||
23 | YAML_SERIAL_CONSOLE_STDIN:pn-pmu-firmware ?= "psu_uart_0" | ||
24 | YAML_SERIAL_CONSOLE_STDOUT:pn-pmu-firmware ?= "psu_uart_0" | ||
25 | |||
26 | # Yocto FSBL variables | ||
27 | YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "psu_uart_0" | ||
28 | YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "psu_uart_0" | ||
29 | |||
30 | # Yocto KERNEL Variables | ||
31 | UBOOT_ENTRYPOINT ?= "0x200000" | ||
32 | UBOOT_LOADADDRESS ?= "0x200000" | ||
33 | |||
34 | # zcu670-zynqmp Serial Console | ||
35 | SERIAL_CONSOLES ?= "115200;ttyPS0" | ||
36 | YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200" | ||
37 | |||
38 | # Required generic machine inclusion | ||
39 | # ZCU670 board uses ZynqMP DR device hence use soc variant based generic machine | ||
40 | # inclusion | ||
41 | require conf/machine/zynqmp-dr-generic.conf | ||
42 | |||
43 | # This eval board machine conf file uses zcu670-zynqmp xsa as reference input. | ||
44 | # User can override with zcu670 custom xsa using HDF_BASE and HDF_PATH variables | ||
45 | # from local.conf. | ||
46 | HDF_MACHINE = "zcu670-zynqmp" | ||
47 | |||
48 | #### No additional settings should be after the Postamble | ||
49 | #### Postamble | ||
50 | PACKAGE_EXTRA_ARCHS:append = "${@['', 'zcu670_zynqmp']['zcu670-zynqmp' != '${MACHINE}']}" | ||
diff --git a/meta-xilinx-contrib/README.md b/meta-xilinx-contrib/README.md index 629a7798..30dc3282 100644 --- a/meta-xilinx-contrib/README.md +++ b/meta-xilinx-contrib/README.md | |||
@@ -31,4 +31,4 @@ This layer depends on: | |||
31 | https://git.yoctoproject.org/meta-xilinx (official version) | 31 | https://git.yoctoproject.org/meta-xilinx (official version) |
32 | https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) | 32 | https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) |
33 | layers: meta-xilinx-microblaze, meta-xilinx-core, meta-xilinx-vendor | 33 | layers: meta-xilinx-microblaze, meta-xilinx-core, meta-xilinx-vendor |
34 | branch: langdale or amd xilinx release version (e.g. rel-v2022.2) | 34 | branch: langdale or amd xilinx release version (e.g. rel-v2023.1) |
diff --git a/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0001-drm-xilinx-Add-encoder-for-Digilent-boards.patch b/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0001-drm-xilinx-Add-encoder-for-Digilent-boards.patch new file mode 100644 index 00000000..660bc218 --- /dev/null +++ b/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0001-drm-xilinx-Add-encoder-for-Digilent-boards.patch | |||
@@ -0,0 +1,305 @@ | |||
1 | From 21cc8144efdaa3cd8dbd7279f87b14fa3432fae4 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jason Wu <jason.wu.misc@gmail.com> | ||
3 | Date: Sun, 10 Apr 2016 13:14:13 +1000 | ||
4 | Subject: [PATCH 1/3] drm: xilinx: Add encoder for Digilent boards | ||
5 | |||
6 | Add the dglnt_encoder driver that enables DRM support for the VGA and | ||
7 | HDMI output ports found on many Digilent boards. | ||
8 | |||
9 | Upstream-Status: Pending | ||
10 | |||
11 | Signed-off-by: Sam Bobrowicz <sbobrowicz@digilentinc.com> | ||
12 | Signed-off-by: Jason Wu <jason.wu.misc@gmail.com> | ||
13 | --- | ||
14 | .../bindings/drm/xilinx/dglnt_encoder.txt | 23 +++ | ||
15 | drivers/gpu/drm/xilinx/Kconfig | 6 + | ||
16 | drivers/gpu/drm/xilinx/Makefile | 1 + | ||
17 | drivers/gpu/drm/xilinx/dglnt_encoder.c | 217 +++++++++++++++++++++ | ||
18 | 4 files changed, 247 insertions(+) | ||
19 | create mode 100644 Documentation/devicetree/bindings/drm/xilinx/dglnt_encoder.txt | ||
20 | create mode 100644 drivers/gpu/drm/xilinx/dglnt_encoder.c | ||
21 | |||
22 | diff --git a/Documentation/devicetree/bindings/drm/xilinx/dglnt_encoder.txt b/Documentation/devicetree/bindings/drm/xilinx/dglnt_encoder.txt | ||
23 | new file mode 100644 | ||
24 | index 0000000..242b24e | ||
25 | --- /dev/null | ||
26 | +++ b/Documentation/devicetree/bindings/drm/xilinx/dglnt_encoder.txt | ||
27 | @@ -0,0 +1,23 @@ | ||
28 | +Device-Tree bindings for Digilent DRM Encoder Slave | ||
29 | + | ||
30 | +This driver provides support for VGA and HDMI outputs on Digilent FPGA boards. | ||
31 | +The VGA or HDMI port must be connected to a Xilinx display pipeline via an | ||
32 | +axi2vid IP core. | ||
33 | + | ||
34 | +Required properties: | ||
35 | + - compatible: Should be "digilent,drm-encoder". | ||
36 | + | ||
37 | +Optional properties: | ||
38 | + - dglnt,edid-i2c: The I2C device connected to the DDC bus on the video | ||
39 | + connector. This is used to obtain the supported resolutions | ||
40 | + of an attached monitor. If not defined, then a default | ||
41 | + set of resolutions is used and the display will initialize | ||
42 | + to 720p. Note most VGA connectors on Digilent boards do | ||
43 | + not have the DDC bus routed out. | ||
44 | + | ||
45 | +Example: | ||
46 | + | ||
47 | + encoder_0: digilent_encoder { | ||
48 | + compatible = "digilent,drm-encoder"; | ||
49 | + dglnt,edid-i2c = <&i2c1>; | ||
50 | + }; | ||
51 | diff --git a/drivers/gpu/drm/xilinx/Kconfig b/drivers/gpu/drm/xilinx/Kconfig | ||
52 | index 57e18a9..d9ecff2 100644 | ||
53 | --- a/drivers/gpu/drm/xilinx/Kconfig | ||
54 | +++ b/drivers/gpu/drm/xilinx/Kconfig | ||
55 | @@ -33,6 +33,12 @@ config DRM_XILINX_DP_SUB | ||
56 | help | ||
57 | DRM driver for Xilinx Display Port Subsystem. | ||
58 | |||
59 | +config DRM_DIGILENT_ENCODER | ||
60 | + tristate "Digilent VGA/HDMI DRM Encoder Driver" | ||
61 | + depends on DRM_XILINX | ||
62 | + help | ||
63 | + DRM slave encoder for Video-out on Digilent boards. | ||
64 | + | ||
65 | config DRM_XILINX_DP_SUB_DEBUG_FS | ||
66 | bool "Xilinx DRM DPSUB debugfs" | ||
67 | depends on DEBUG_FS && DRM_XILINX_DP_SUB | ||
68 | diff --git a/drivers/gpu/drm/xilinx/Makefile b/drivers/gpu/drm/xilinx/Makefile | ||
69 | index 19bc154..c2717e40 100644 | ||
70 | --- a/drivers/gpu/drm/xilinx/Makefile | ||
71 | +++ b/drivers/gpu/drm/xilinx/Makefile | ||
72 | @@ -7,6 +7,7 @@ xilinx_drm-y := xilinx_drm_crtc.o xilinx_drm_connector.o xilinx_drm_drv.o \ | ||
73 | xilinx_drm_plane.o | ||
74 | xilinx_drm-y += xilinx_cresample.o xilinx_osd.o xilinx_rgb2yuv.o xilinx_vtc.o | ||
75 | |||
76 | +obj-$(CONFIG_DRM_DIGILENT_ENCODER) += dglnt_encoder.o | ||
77 | obj-$(CONFIG_DRM_XILINX) += xilinx_drm.o | ||
78 | obj-$(CONFIG_DRM_XILINX_DP) += xilinx_drm_dp.o | ||
79 | obj-$(CONFIG_DRM_XILINX_DP_SUB) += xilinx_drm_dp_sub.o | ||
80 | diff --git a/drivers/gpu/drm/xilinx/dglnt_encoder.c b/drivers/gpu/drm/xilinx/dglnt_encoder.c | ||
81 | new file mode 100644 | ||
82 | index 0000000..cb9fc7d | ||
83 | --- /dev/null | ||
84 | +++ b/drivers/gpu/drm/xilinx/dglnt_encoder.c | ||
85 | @@ -0,0 +1,217 @@ | ||
86 | +/* | ||
87 | + * dglnt_encoder.c - DRM slave encoder for Video-out on Digilent boards | ||
88 | + * | ||
89 | + * Copyright (C) 2015 Digilent | ||
90 | + * Author: Sam Bobrowicz <sbobrowicz@digilentinc.com> | ||
91 | + * | ||
92 | + * Based on udl_encoder.c and udl_connector.c, Copyright (C) 2012 Red Hat. | ||
93 | + * Also based on xilinx_drm_dp.c, Copyright (C) 2014 Xilinx, Inc. | ||
94 | + * | ||
95 | + * This software is licensed under the terms of the GNU General Public | ||
96 | + * License version 2, as published by the Free Software Foundation, and | ||
97 | + * may be copied, distributed, and modified under those terms. | ||
98 | + * | ||
99 | + * This program is distributed in the hope that it will be useful, | ||
100 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
101 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
102 | + * GNU General Public License for more details. | ||
103 | + */ | ||
104 | + | ||
105 | +#include <drm/drmP.h> | ||
106 | +#include <drm/drm_edid.h> | ||
107 | +#include <drm/drm_encoder_slave.h> | ||
108 | + | ||
109 | +#include <linux/device.h> | ||
110 | +#include <linux/module.h> | ||
111 | +#include <linux/err.h> | ||
112 | +#include <linux/i2c.h> | ||
113 | +#include <linux/of.h> | ||
114 | +#include <linux/of_platform.h> | ||
115 | +#include <linux/platform_device.h> | ||
116 | + | ||
117 | +#define DGLNT_ENC_MAX_FREQ 150000 | ||
118 | +#define DGLNT_ENC_MAX_H 1920 | ||
119 | +#define DGLNT_ENC_MAX_V 1080 | ||
120 | +#define DGLNT_ENC_PREF_H 1280 | ||
121 | +#define DGLNT_ENC_PREF_V 720 | ||
122 | + | ||
123 | +struct dglnt_encoder { | ||
124 | + struct drm_encoder *encoder; | ||
125 | + struct i2c_adapter *i2c_bus; | ||
126 | + bool i2c_present; | ||
127 | +}; | ||
128 | + | ||
129 | +static inline struct dglnt_encoder *to_dglnt_encoder( | ||
130 | + struct drm_encoder *encoder) | ||
131 | +{ | ||
132 | + return to_encoder_slave(encoder)->slave_priv; | ||
133 | +} | ||
134 | + | ||
135 | +static bool dglnt_mode_fixup(struct drm_encoder *encoder, | ||
136 | + const struct drm_display_mode *mode, | ||
137 | + struct drm_display_mode *adjusted_mode) | ||
138 | +{ | ||
139 | + return true; | ||
140 | +} | ||
141 | + | ||
142 | +static void dglnt_encoder_mode_set(struct drm_encoder *encoder, | ||
143 | + struct drm_display_mode *mode, | ||
144 | + struct drm_display_mode *adjusted_mode) | ||
145 | +{ | ||
146 | +} | ||
147 | + | ||
148 | +static void | ||
149 | +dglnt_encoder_dpms(struct drm_encoder *encoder, int mode) | ||
150 | +{ | ||
151 | +} | ||
152 | + | ||
153 | +static void dglnt_encoder_save(struct drm_encoder *encoder) | ||
154 | +{ | ||
155 | +} | ||
156 | + | ||
157 | +static void dglnt_encoder_restore(struct drm_encoder *encoder) | ||
158 | +{ | ||
159 | +} | ||
160 | + | ||
161 | +static int dglnt_encoder_mode_valid(struct drm_encoder *encoder, | ||
162 | + struct drm_display_mode *mode) | ||
163 | +{ | ||
164 | + if (mode && | ||
165 | + !(mode->flags & ((DRM_MODE_FLAG_INTERLACE | | ||
166 | + DRM_MODE_FLAG_DBLCLK) | DRM_MODE_FLAG_3D_MASK)) && | ||
167 | + (mode->clock <= DGLNT_ENC_MAX_FREQ) && | ||
168 | + (mode->hdisplay <= DGLNT_ENC_MAX_H) && | ||
169 | + (mode->vdisplay <= DGLNT_ENC_MAX_V)) | ||
170 | + return MODE_OK; | ||
171 | + return MODE_BAD; | ||
172 | +} | ||
173 | + | ||
174 | +static int dglnt_encoder_get_modes(struct drm_encoder *encoder, | ||
175 | + struct drm_connector *connector) | ||
176 | +{ | ||
177 | + struct dglnt_encoder *dglnt = to_dglnt_encoder(encoder); | ||
178 | + struct edid *edid; | ||
179 | + int num_modes = 0; | ||
180 | + | ||
181 | + if (dglnt->i2c_present) { | ||
182 | + edid = drm_get_edid(connector, dglnt->i2c_bus); | ||
183 | + drm_connector_update_edid_property(connector, edid); | ||
184 | + if (edid) { | ||
185 | + num_modes = drm_add_edid_modes(connector, edid); | ||
186 | + kfree(edid); | ||
187 | + } | ||
188 | + } else { | ||
189 | + num_modes = drm_add_modes_noedid(connector, DGLNT_ENC_MAX_H, | ||
190 | + DGLNT_ENC_MAX_V); | ||
191 | + drm_set_preferred_mode(connector, DGLNT_ENC_PREF_H, | ||
192 | + DGLNT_ENC_PREF_V); | ||
193 | + } | ||
194 | + return num_modes; | ||
195 | +} | ||
196 | + | ||
197 | +static enum drm_connector_status dglnt_encoder_detect( | ||
198 | + struct drm_encoder *encoder, | ||
199 | + struct drm_connector *connector) | ||
200 | +{ | ||
201 | + struct dglnt_encoder *dglnt = to_dglnt_encoder(encoder); | ||
202 | + | ||
203 | + if (dglnt->i2c_present) { | ||
204 | + if (drm_probe_ddc(dglnt->i2c_bus)) | ||
205 | + return connector_status_connected; | ||
206 | + return connector_status_disconnected; | ||
207 | + } else | ||
208 | + return connector_status_unknown; | ||
209 | +} | ||
210 | + | ||
211 | +static struct drm_encoder_slave_funcs dglnt_encoder_slave_funcs = { | ||
212 | + .dpms = dglnt_encoder_dpms, | ||
213 | + .save = dglnt_encoder_save, | ||
214 | + .restore = dglnt_encoder_restore, | ||
215 | + .mode_fixup = dglnt_mode_fixup, | ||
216 | + .mode_valid = dglnt_encoder_mode_valid, | ||
217 | + .mode_set = dglnt_encoder_mode_set, | ||
218 | + .detect = dglnt_encoder_detect, | ||
219 | + .get_modes = dglnt_encoder_get_modes, | ||
220 | +}; | ||
221 | + | ||
222 | +static int dglnt_encoder_encoder_init(struct platform_device *pdev, | ||
223 | + struct drm_device *dev, | ||
224 | + struct drm_encoder_slave *encoder) | ||
225 | +{ | ||
226 | + struct dglnt_encoder *dglnt = platform_get_drvdata(pdev); | ||
227 | + struct device_node *sub_node; | ||
228 | + | ||
229 | + encoder->slave_priv = dglnt; | ||
230 | + encoder->slave_funcs = &dglnt_encoder_slave_funcs; | ||
231 | + | ||
232 | + dglnt->encoder = &encoder->base; | ||
233 | + | ||
234 | + /* get i2c adapter for edid */ | ||
235 | + dglnt->i2c_present = false; | ||
236 | + sub_node = of_parse_phandle(pdev->dev.of_node, "dglnt,edid-i2c", 0); | ||
237 | + if (sub_node) { | ||
238 | + dglnt->i2c_bus = of_find_i2c_adapter_by_node(sub_node); | ||
239 | + if (!dglnt->i2c_bus) | ||
240 | + DRM_INFO("failed to get the edid i2c adapter, using default modes\n"); | ||
241 | + else | ||
242 | + dglnt->i2c_present = true; | ||
243 | + of_node_put(sub_node); | ||
244 | + } | ||
245 | + | ||
246 | + return 0; | ||
247 | +} | ||
248 | + | ||
249 | +static int dglnt_encoder_probe(struct platform_device *pdev) | ||
250 | +{ | ||
251 | + struct dglnt_encoder *dglnt; | ||
252 | + | ||
253 | + dglnt = devm_kzalloc(&pdev->dev, sizeof(*dglnt), GFP_KERNEL); | ||
254 | + if (!dglnt) | ||
255 | + return -ENOMEM; | ||
256 | + | ||
257 | + platform_set_drvdata(pdev, dglnt); | ||
258 | + | ||
259 | + return 0; | ||
260 | +} | ||
261 | + | ||
262 | +static int dglnt_encoder_remove(struct platform_device *pdev) | ||
263 | +{ | ||
264 | + return 0; | ||
265 | +} | ||
266 | + | ||
267 | +static const struct of_device_id dglnt_encoder_of_match[] = { | ||
268 | + { .compatible = "digilent,drm-encoder", }, | ||
269 | + { /* end of table */ }, | ||
270 | +}; | ||
271 | +MODULE_DEVICE_TABLE(of, dglnt_encoder_of_match); | ||
272 | + | ||
273 | +static struct drm_platform_encoder_driver dglnt_encoder_driver = { | ||
274 | + .platform_driver = { | ||
275 | + .probe = dglnt_encoder_probe, | ||
276 | + .remove = dglnt_encoder_remove, | ||
277 | + .driver = { | ||
278 | + .owner = THIS_MODULE, | ||
279 | + .name = "dglnt-drm-enc", | ||
280 | + .of_match_table = dglnt_encoder_of_match, | ||
281 | + }, | ||
282 | + }, | ||
283 | + | ||
284 | + .encoder_init = dglnt_encoder_encoder_init, | ||
285 | +}; | ||
286 | + | ||
287 | +static int __init dglnt_encoder_init(void) | ||
288 | +{ | ||
289 | + return platform_driver_register(&dglnt_encoder_driver.platform_driver); | ||
290 | +} | ||
291 | + | ||
292 | +static void __exit dglnt_encoder_exit(void) | ||
293 | +{ | ||
294 | + platform_driver_unregister(&dglnt_encoder_driver.platform_driver); | ||
295 | +} | ||
296 | + | ||
297 | +module_init(dglnt_encoder_init); | ||
298 | +module_exit(dglnt_encoder_exit); | ||
299 | + | ||
300 | +MODULE_AUTHOR("Digilent, Inc."); | ||
301 | +MODULE_DESCRIPTION("DRM slave encoder for Video-out on Digilent boards"); | ||
302 | +MODULE_LICENSE("GPL v2"); | ||
303 | -- | ||
304 | 2.7.4 | ||
305 | |||
diff --git a/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0002-clk-Add-driver-for-axi_dynclk-IP-Core.patch b/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0002-clk-Add-driver-for-axi_dynclk-IP-Core.patch new file mode 100644 index 00000000..9b6229db --- /dev/null +++ b/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0002-clk-Add-driver-for-axi_dynclk-IP-Core.patch | |||
@@ -0,0 +1,607 @@ | |||
1 | From 217e3b6f4393926b8dcad841381527ef3fc808c2 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jason Wu <jason.wu.misc@gmail.com> | ||
3 | Date: Sun, 10 Apr 2016 13:16:06 +1000 | ||
4 | Subject: [PATCH 2/3] clk: Add driver for axi_dynclk IP Core | ||
5 | |||
6 | Add support for the axi_dynclk IP Core available from Digilent. This IP | ||
7 | core dynamically configures the clock resources inside a Xilinx FPGA to | ||
8 | generate a clock with a software programmable frequency. | ||
9 | |||
10 | Upstream-Status: Pending | ||
11 | |||
12 | Signed-off-by: Sam Bobrowicz <sbobrowicz@digilentinc.com> | ||
13 | Signed-off-by: Jason Wu <jason.wu.misc@gmail.com> | ||
14 | --- | ||
15 | drivers/clk/Kconfig | 8 + | ||
16 | drivers/clk/Makefile | 1 + | ||
17 | drivers/clk/clk-dglnt-dynclk.c | 547 +++++++++++++++++++++++++++++++++++++++++ | ||
18 | 3 files changed, 556 insertions(+) | ||
19 | create mode 100644 drivers/clk/clk-dglnt-dynclk.c | ||
20 | |||
21 | diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig | ||
22 | index dccb111100..7fe65a702b 100644 | ||
23 | --- a/drivers/clk/Kconfig | ||
24 | +++ b/drivers/clk/Kconfig | ||
25 | @@ -148,6 +148,14 @@ config CLK_QORIQ | ||
26 | This adds the clock driver support for Freescale QorIQ platforms | ||
27 | using common clock framework. | ||
28 | |||
29 | +config COMMON_CLK_DGLNT_DYNCLK | ||
30 | + tristate "Digilent axi_dynclk Driver" | ||
31 | + depends on ARCH_ZYNQ || MICROBLAZE | ||
32 | + help | ||
33 | + ---help--- | ||
34 | + Support for the Digilent AXI Dynamic Clock core for Xilinx | ||
35 | + FPGAs. | ||
36 | + | ||
37 | config COMMON_CLK_XGENE | ||
38 | bool "Clock driver for APM XGene SoC" | ||
39 | default y | ||
40 | diff --git a/drivers/clk/Makefile b/drivers/clk/Makefile | ||
41 | index 0760449dde..45ce97d053 100644 | ||
42 | --- a/drivers/clk/Makefile | ||
43 | +++ b/drivers/clk/Makefile | ||
44 | @@ -24,6 +24,7 @@ obj-$(CONFIG_COMMON_CLK_CDCE706) += clk-cdce706.o | ||
45 | obj-$(CONFIG_COMMON_CLK_CDCE925) += clk-cdce925.o | ||
46 | obj-$(CONFIG_ARCH_CLPS711X) += clk-clps711x.o | ||
47 | obj-$(CONFIG_COMMON_CLK_CS2000_CP) += clk-cs2000-cp.o | ||
48 | +obj-$(CONFIG_COMMON_CLK_DGLNT_DYNCLK) += clk-dglnt-dynclk.o | ||
49 | obj-$(CONFIG_ARCH_EFM32) += clk-efm32gg.o | ||
50 | obj-$(CONFIG_ARCH_HIGHBANK) += clk-highbank.o | ||
51 | obj-$(CONFIG_COMMON_CLK_MAX77686) += clk-max77686.o | ||
52 | diff --git a/drivers/clk/clk-dglnt-dynclk.c b/drivers/clk/clk-dglnt-dynclk.c | ||
53 | new file mode 100644 | ||
54 | index 0000000000..496ad5fc90 | ||
55 | --- /dev/null | ||
56 | +++ b/drivers/clk/clk-dglnt-dynclk.c | ||
57 | @@ -0,0 +1,547 @@ | ||
58 | +/* | ||
59 | + * clk-dglnt-dynclk.c - Digilent AXI Dynamic Clock (axi_dynclk) Driver | ||
60 | + * | ||
61 | + * Copyright (C) 2015 Digilent | ||
62 | + * Author: Sam Bobrowicz <sbobrowicz@digilentinc.com> | ||
63 | + * | ||
64 | + * Reused code from clk-axi-clkgen.c, Copyright (C) 2012-2013 Analog Devices Inc. | ||
65 | + * | ||
66 | + * This software is licensed under the terms of the GNU General Public | ||
67 | + * License version 2, as published by the Free Software Foundation, and | ||
68 | + * may be copied, distributed, and modified under those terms. | ||
69 | + * | ||
70 | + * This program is distributed in the hope that it will be useful, | ||
71 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
72 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
73 | + * GNU General Public License for more details. | ||
74 | + */ | ||
75 | + | ||
76 | +#include <linux/platform_device.h> | ||
77 | +#include <linux/clk-provider.h> | ||
78 | +#include <linux/clk.h> | ||
79 | +#include <linux/slab.h> | ||
80 | +#include <linux/io.h> | ||
81 | +#include <linux/of.h> | ||
82 | +#include <linux/module.h> | ||
83 | +#include <linux/err.h> | ||
84 | +#include <linux/kernel.h> | ||
85 | + | ||
86 | +#define CLK_BIT_WEDGE 13 | ||
87 | +#define CLK_BIT_NOCOUNT 12 | ||
88 | + | ||
89 | +/* This value is used to signal an error */ | ||
90 | +#define ERR_CLKCOUNTCALC 0xFFFFFFFF | ||
91 | +#define ERR_CLKDIVIDER (1 << CLK_BIT_WEDGE | 1 << CLK_BIT_NOCOUNT) | ||
92 | + | ||
93 | +#define DYNCLK_DIV_1_REGMASK 0x1041 | ||
94 | +/* 25 MHz (125 KHz / 5) */ | ||
95 | +#define DYNCLK_DEFAULT_FREQ 125000 | ||
96 | + | ||
97 | +#define MMCM_FREQ_VCOMIN 600000 | ||
98 | +#define MMCM_FREQ_VCOMAX 1200000 | ||
99 | +#define MMCM_FREQ_PFDMIN 10000 | ||
100 | +#define MMCM_FREQ_PFDMAX 450000 | ||
101 | +#define MMCM_FREQ_OUTMIN 4000 | ||
102 | +#define MMCM_FREQ_OUTMAX 800000 | ||
103 | +#define MMCM_DIV_MAX 106 | ||
104 | +#define MMCM_FB_MIN 2 | ||
105 | +#define MMCM_FB_MAX 64 | ||
106 | +#define MMCM_CLKDIV_MAX 128 | ||
107 | +#define MMCM_CLKDIV_MIN 1 | ||
108 | + | ||
109 | +#define OFST_DISPLAY_CTRL 0x0 | ||
110 | +#define OFST_DISPLAY_STATUS 0x4 | ||
111 | +#define OFST_DISPLAY_CLK_L 0x8 | ||
112 | +#define OFST_DISPLAY_FB_L 0x0C | ||
113 | +#define OFST_DISPLAY_FB_H_CLK_H 0x10 | ||
114 | +#define OFST_DISPLAY_DIV 0x14 | ||
115 | +#define OFST_DISPLAY_LOCK_L 0x18 | ||
116 | +#define OFST_DISPLAY_FLTR_LOCK_H 0x1C | ||
117 | + | ||
118 | +static const u64 lock_lookup[64] = { | ||
119 | + 0b0011000110111110100011111010010000000001, | ||
120 | + 0b0011000110111110100011111010010000000001, | ||
121 | + 0b0100001000111110100011111010010000000001, | ||
122 | + 0b0101101011111110100011111010010000000001, | ||
123 | + 0b0111001110111110100011111010010000000001, | ||
124 | + 0b1000110001111110100011111010010000000001, | ||
125 | + 0b1001110011111110100011111010010000000001, | ||
126 | + 0b1011010110111110100011111010010000000001, | ||
127 | + 0b1100111001111110100011111010010000000001, | ||
128 | + 0b1110011100111110100011111010010000000001, | ||
129 | + 0b1111111111111000010011111010010000000001, | ||
130 | + 0b1111111111110011100111111010010000000001, | ||
131 | + 0b1111111111101110111011111010010000000001, | ||
132 | + 0b1111111111101011110011111010010000000001, | ||
133 | + 0b1111111111101000101011111010010000000001, | ||
134 | + 0b1111111111100111000111111010010000000001, | ||
135 | + 0b1111111111100011111111111010010000000001, | ||
136 | + 0b1111111111100010011011111010010000000001, | ||
137 | + 0b1111111111100000110111111010010000000001, | ||
138 | + 0b1111111111011111010011111010010000000001, | ||
139 | + 0b1111111111011101101111111010010000000001, | ||
140 | + 0b1111111111011100001011111010010000000001, | ||
141 | + 0b1111111111011010100111111010010000000001, | ||
142 | + 0b1111111111011001000011111010010000000001, | ||
143 | + 0b1111111111011001000011111010010000000001, | ||
144 | + 0b1111111111010111011111111010010000000001, | ||
145 | + 0b1111111111010101111011111010010000000001, | ||
146 | + 0b1111111111010101111011111010010000000001, | ||
147 | + 0b1111111111010100010111111010010000000001, | ||
148 | + 0b1111111111010100010111111010010000000001, | ||
149 | + 0b1111111111010010110011111010010000000001, | ||
150 | + 0b1111111111010010110011111010010000000001, | ||
151 | + 0b1111111111010010110011111010010000000001, | ||
152 | + 0b1111111111010001001111111010010000000001, | ||
153 | + 0b1111111111010001001111111010010000000001, | ||
154 | + 0b1111111111010001001111111010010000000001, | ||
155 | + 0b1111111111001111101011111010010000000001, | ||
156 | + 0b1111111111001111101011111010010000000001, | ||
157 | + 0b1111111111001111101011111010010000000001, | ||
158 | + 0b1111111111001111101011111010010000000001, | ||
159 | + 0b1111111111001111101011111010010000000001, | ||
160 | + 0b1111111111001111101011111010010000000001, | ||
161 | + 0b1111111111001111101011111010010000000001, | ||
162 | + 0b1111111111001111101011111010010000000001, | ||
163 | + 0b1111111111001111101011111010010000000001, | ||
164 | + 0b1111111111001111101011111010010000000001, | ||
165 | + 0b1111111111001111101011111010010000000001, | ||
166 | + 0b1111111111001111101011111010010000000001, | ||
167 | + 0b1111111111001111101011111010010000000001, | ||
168 | + 0b1111111111001111101011111010010000000001, | ||
169 | + 0b1111111111001111101011111010010000000001, | ||
170 | + 0b1111111111001111101011111010010000000001, | ||
171 | + 0b1111111111001111101011111010010000000001, | ||
172 | + 0b1111111111001111101011111010010000000001, | ||
173 | + 0b1111111111001111101011111010010000000001, | ||
174 | + 0b1111111111001111101011111010010000000001, | ||
175 | + 0b1111111111001111101011111010010000000001, | ||
176 | + 0b1111111111001111101011111010010000000001, | ||
177 | + 0b1111111111001111101011111010010000000001, | ||
178 | + 0b1111111111001111101011111010010000000001, | ||
179 | + 0b1111111111001111101011111010010000000001, | ||
180 | + 0b1111111111001111101011111010010000000001, | ||
181 | + 0b1111111111001111101011111010010000000001, | ||
182 | + 0b1111111111001111101011111010010000000001 | ||
183 | +}; | ||
184 | + | ||
185 | +static const u32 filter_lookup_low[64] = { | ||
186 | + 0b0001011111, | ||
187 | + 0b0001010111, | ||
188 | + 0b0001111011, | ||
189 | + 0b0001011011, | ||
190 | + 0b0001101011, | ||
191 | + 0b0001110011, | ||
192 | + 0b0001110011, | ||
193 | + 0b0001110011, | ||
194 | + 0b0001110011, | ||
195 | + 0b0001001011, | ||
196 | + 0b0001001011, | ||
197 | + 0b0001001011, | ||
198 | + 0b0010110011, | ||
199 | + 0b0001010011, | ||
200 | + 0b0001010011, | ||
201 | + 0b0001010011, | ||
202 | + 0b0001010011, | ||
203 | + 0b0001010011, | ||
204 | + 0b0001010011, | ||
205 | + 0b0001010011, | ||
206 | + 0b0001010011, | ||
207 | + 0b0001010011, | ||
208 | + 0b0001010011, | ||
209 | + 0b0001100011, | ||
210 | + 0b0001100011, | ||
211 | + 0b0001100011, | ||
212 | + 0b0001100011, | ||
213 | + 0b0001100011, | ||
214 | + 0b0001100011, | ||
215 | + 0b0001100011, | ||
216 | + 0b0001100011, | ||
217 | + 0b0001100011, | ||
218 | + 0b0001100011, | ||
219 | + 0b0001100011, | ||
220 | + 0b0001100011, | ||
221 | + 0b0001100011, | ||
222 | + 0b0001100011, | ||
223 | + 0b0010010011, | ||
224 | + 0b0010010011, | ||
225 | + 0b0010010011, | ||
226 | + 0b0010010011, | ||
227 | + 0b0010010011, | ||
228 | + 0b0010010011, | ||
229 | + 0b0010010011, | ||
230 | + 0b0010010011, | ||
231 | + 0b0010010011, | ||
232 | + 0b0010010011, | ||
233 | + 0b0010100011, | ||
234 | + 0b0010100011, | ||
235 | + 0b0010100011, | ||
236 | + 0b0010100011, | ||
237 | + 0b0010100011, | ||
238 | + 0b0010100011, | ||
239 | + 0b0010100011, | ||
240 | + 0b0010100011, | ||
241 | + 0b0010100011, | ||
242 | + 0b0010100011, | ||
243 | + 0b0010100011, | ||
244 | + 0b0010100011, | ||
245 | + 0b0010100011, | ||
246 | + 0b0010100011, | ||
247 | + 0b0010100011, | ||
248 | + 0b0010100011, | ||
249 | + 0b0010100011 | ||
250 | +}; | ||
251 | + | ||
252 | +struct dglnt_dynclk_reg; | ||
253 | +struct dglnt_dynclk_mode; | ||
254 | +struct dglnt_dynclk; | ||
255 | + | ||
256 | +struct dglnt_dynclk_reg { | ||
257 | + u32 clk0L; | ||
258 | + u32 clkFBL; | ||
259 | + u32 clkFBH_clk0H; | ||
260 | + u32 divclk; | ||
261 | + u32 lockL; | ||
262 | + u32 fltr_lockH; | ||
263 | +}; | ||
264 | + | ||
265 | +struct dglnt_dynclk_mode { | ||
266 | + u32 freq; | ||
267 | + u32 fbmult; | ||
268 | + u32 clkdiv; | ||
269 | + u32 maindiv; | ||
270 | +}; | ||
271 | + | ||
272 | +struct dglnt_dynclk { | ||
273 | + void __iomem *base; | ||
274 | + struct clk_hw clk_hw; | ||
275 | + unsigned long freq; | ||
276 | +}; | ||
277 | + | ||
278 | +u32 dglnt_dynclk_divider(u32 divide) | ||
279 | +{ | ||
280 | + u32 output = 0; | ||
281 | + u32 highTime = 0; | ||
282 | + u32 lowTime = 0; | ||
283 | + | ||
284 | + if ((divide < 1) || (divide > 128)) | ||
285 | + return ERR_CLKDIVIDER; | ||
286 | + | ||
287 | + if (divide == 1) | ||
288 | + return DYNCLK_DIV_1_REGMASK; | ||
289 | + | ||
290 | + highTime = divide / 2; | ||
291 | + /* if divide is odd */ | ||
292 | + if (divide & 0x1) { | ||
293 | + lowTime = highTime + 1; | ||
294 | + output = 1 << CLK_BIT_WEDGE; | ||
295 | + } else { | ||
296 | + lowTime = highTime; | ||
297 | + } | ||
298 | + | ||
299 | + output |= 0x03F & lowTime; | ||
300 | + output |= 0xFC0 & (highTime << 6); | ||
301 | + return output; | ||
302 | +} | ||
303 | + | ||
304 | +u32 dglnt_dynclk_count_calc(u32 divide) | ||
305 | +{ | ||
306 | + u32 output = 0; | ||
307 | + u32 divCalc = 0; | ||
308 | + | ||
309 | + divCalc = dglnt_dynclk_divider(divide); | ||
310 | + if (divCalc == ERR_CLKDIVIDER) | ||
311 | + output = ERR_CLKCOUNTCALC; | ||
312 | + else | ||
313 | + output = (0xFFF & divCalc) | ((divCalc << 10) & 0x00C00000); | ||
314 | + return output; | ||
315 | +} | ||
316 | + | ||
317 | + | ||
318 | +int dglnt_dynclk_find_reg(struct dglnt_dynclk_reg *regValues, | ||
319 | + struct dglnt_dynclk_mode *clkParams) | ||
320 | +{ | ||
321 | + if ((clkParams->fbmult < 2) || clkParams->fbmult > 64) | ||
322 | + return -EINVAL; | ||
323 | + | ||
324 | + regValues->clk0L = dglnt_dynclk_count_calc(clkParams->clkdiv); | ||
325 | + if (regValues->clk0L == ERR_CLKCOUNTCALC) | ||
326 | + return -EINVAL; | ||
327 | + | ||
328 | + regValues->clkFBL = dglnt_dynclk_count_calc(clkParams->fbmult); | ||
329 | + if (regValues->clkFBL == ERR_CLKCOUNTCALC) | ||
330 | + return -EINVAL; | ||
331 | + | ||
332 | + regValues->clkFBH_clk0H = 0; | ||
333 | + | ||
334 | + regValues->divclk = dglnt_dynclk_divider(clkParams->maindiv); | ||
335 | + if (regValues->divclk == ERR_CLKDIVIDER) | ||
336 | + return -EINVAL; | ||
337 | + | ||
338 | + regValues->lockL = (u32)(lock_lookup[clkParams->fbmult - 1] & | ||
339 | + 0xFFFFFFFF); | ||
340 | + | ||
341 | + regValues->fltr_lockH = (u32)((lock_lookup[clkParams->fbmult - 1] >> | ||
342 | + 32) & 0x000000FF); | ||
343 | + regValues->fltr_lockH |= ((filter_lookup_low[clkParams->fbmult - 1] << | ||
344 | + 16) & 0x03FF0000); | ||
345 | + | ||
346 | + return 0; | ||
347 | +} | ||
348 | + | ||
349 | +void dglnt_dynclk_write_reg(struct dglnt_dynclk_reg *regValues, | ||
350 | + void __iomem *baseaddr) | ||
351 | +{ | ||
352 | + writel(regValues->clk0L, baseaddr + OFST_DISPLAY_CLK_L); | ||
353 | + writel(regValues->clkFBL, baseaddr + OFST_DISPLAY_FB_L); | ||
354 | + writel(regValues->clkFBH_clk0H, baseaddr + OFST_DISPLAY_FB_H_CLK_H); | ||
355 | + writel(regValues->divclk, baseaddr + OFST_DISPLAY_DIV); | ||
356 | + writel(regValues->lockL, baseaddr + OFST_DISPLAY_LOCK_L); | ||
357 | + writel(regValues->fltr_lockH, baseaddr + OFST_DISPLAY_FLTR_LOCK_H); | ||
358 | +} | ||
359 | + | ||
360 | +u32 dglnt_dynclk_find_mode(u32 freq, u32 parentFreq, | ||
361 | + struct dglnt_dynclk_mode *bestPick) | ||
362 | +{ | ||
363 | + u32 bestError = MMCM_FREQ_OUTMAX; | ||
364 | + u32 curError; | ||
365 | + u32 curClkMult; | ||
366 | + u32 curFreq; | ||
367 | + u32 divVal; | ||
368 | + u32 curFb, curClkDiv; | ||
369 | + u32 minFb = 0; | ||
370 | + u32 maxFb = 0; | ||
371 | + u32 curDiv = 1; | ||
372 | + u32 maxDiv; | ||
373 | + bool freq_found = false; | ||
374 | + | ||
375 | + bestPick->freq = 0; | ||
376 | + if (parentFreq == 0) | ||
377 | + return 0; | ||
378 | + | ||
379 | + /* minimum frequency is actually dictated by VCOmin */ | ||
380 | + if (freq < MMCM_FREQ_OUTMIN) | ||
381 | + freq = MMCM_FREQ_OUTMIN; | ||
382 | + if (freq > MMCM_FREQ_OUTMAX) | ||
383 | + freq = MMCM_FREQ_OUTMAX; | ||
384 | + | ||
385 | + if (parentFreq > MMCM_FREQ_PFDMAX) | ||
386 | + curDiv = 2; | ||
387 | + maxDiv = parentFreq / MMCM_FREQ_PFDMIN; | ||
388 | + if (maxDiv > MMCM_DIV_MAX) | ||
389 | + maxDiv = MMCM_DIV_MAX; | ||
390 | + | ||
391 | + while (curDiv <= maxDiv && !freq_found) { | ||
392 | + minFb = curDiv * DIV_ROUND_UP(MMCM_FREQ_VCOMIN, parentFreq); | ||
393 | + maxFb = curDiv * (MMCM_FREQ_VCOMAX / parentFreq); | ||
394 | + if (maxFb > MMCM_FB_MAX) | ||
395 | + maxFb = MMCM_FB_MAX; | ||
396 | + if (minFb < MMCM_FB_MIN) | ||
397 | + minFb = MMCM_FB_MIN; | ||
398 | + | ||
399 | + divVal = curDiv * freq; | ||
400 | + /* | ||
401 | + * This multiplier is used to find the best clkDiv value for | ||
402 | + * each FB value | ||
403 | + */ | ||
404 | + curClkMult = ((parentFreq * 1000) + (divVal / 2)) / divVal; | ||
405 | + | ||
406 | + curFb = minFb; | ||
407 | + while (curFb <= maxFb && !freq_found) { | ||
408 | + curClkDiv = ((curClkMult * curFb) + 500) / 1000; | ||
409 | + if (curClkDiv > MMCM_CLKDIV_MAX) | ||
410 | + curClkDiv = MMCM_CLKDIV_MAX; | ||
411 | + if (curClkDiv < MMCM_CLKDIV_MIN) | ||
412 | + curClkDiv = MMCM_CLKDIV_MIN; | ||
413 | + curFreq = (((parentFreq * curFb) / curDiv) / curClkDiv); | ||
414 | + if (curFreq >= freq) | ||
415 | + curError = curFreq - freq; | ||
416 | + else | ||
417 | + curError = freq - curFreq; | ||
418 | + if (curError < bestError) { | ||
419 | + bestError = curError; | ||
420 | + bestPick->clkdiv = curClkDiv; | ||
421 | + bestPick->fbmult = curFb; | ||
422 | + bestPick->maindiv = curDiv; | ||
423 | + bestPick->freq = curFreq; | ||
424 | + } | ||
425 | + if (!curError) | ||
426 | + freq_found = true; | ||
427 | + curFb++; | ||
428 | + } | ||
429 | + curDiv++; | ||
430 | + } | ||
431 | + return bestPick->freq; | ||
432 | +} | ||
433 | + | ||
434 | +static struct dglnt_dynclk *clk_hw_to_dglnt_dynclk(struct clk_hw *clk_hw) | ||
435 | +{ | ||
436 | + return container_of(clk_hw, struct dglnt_dynclk, clk_hw); | ||
437 | +} | ||
438 | + | ||
439 | + | ||
440 | +static int dglnt_dynclk_enable(struct clk_hw *clk_hw) | ||
441 | +{ | ||
442 | + struct dglnt_dynclk *dglnt_dynclk = clk_hw_to_dglnt_dynclk(clk_hw); | ||
443 | + unsigned int clock_state; | ||
444 | + | ||
445 | + if (dglnt_dynclk->freq) { | ||
446 | + writel(1, dglnt_dynclk->base + OFST_DISPLAY_CTRL); | ||
447 | + do { | ||
448 | + clock_state = readl(dglnt_dynclk->base + | ||
449 | + OFST_DISPLAY_STATUS); | ||
450 | + } while (!clock_state); | ||
451 | + } | ||
452 | + return 0; | ||
453 | +} | ||
454 | + | ||
455 | +static void dglnt_dynclk_disable(struct clk_hw *clk_hw) | ||
456 | +{ | ||
457 | + struct dglnt_dynclk *dglnt_dynclk = clk_hw_to_dglnt_dynclk(clk_hw); | ||
458 | + | ||
459 | + writel(0, dglnt_dynclk->base + OFST_DISPLAY_CTRL); | ||
460 | +} | ||
461 | + | ||
462 | +static int dglnt_dynclk_set_rate(struct clk_hw *clk_hw, | ||
463 | + unsigned long rate, unsigned long parent_rate) | ||
464 | +{ | ||
465 | + struct dglnt_dynclk *dglnt_dynclk = clk_hw_to_dglnt_dynclk(clk_hw); | ||
466 | + struct dglnt_dynclk_reg clkReg; | ||
467 | + struct dglnt_dynclk_mode clkMode; | ||
468 | + | ||
469 | + if (parent_rate == 0 || rate == 0) | ||
470 | + return -EINVAL; | ||
471 | + if (rate == dglnt_dynclk->freq) | ||
472 | + return 0; | ||
473 | + | ||
474 | + /* | ||
475 | + * Convert from Hz to KHz, then multiply by five to account for | ||
476 | + * BUFR division | ||
477 | + */ | ||
478 | + rate = (rate + 100) / 200; | ||
479 | + /* convert from Hz to KHz */ | ||
480 | + parent_rate = (parent_rate + 500) / 1000; | ||
481 | + if (!dglnt_dynclk_find_mode(rate, parent_rate, &clkMode)) | ||
482 | + return -EINVAL; | ||
483 | + | ||
484 | + /* | ||
485 | + * Write to the PLL dynamic configuration registers to configure it | ||
486 | + * with the calculated parameters. | ||
487 | + */ | ||
488 | + dglnt_dynclk_find_reg(&clkReg, &clkMode); | ||
489 | + dglnt_dynclk_write_reg(&clkReg, dglnt_dynclk->base); | ||
490 | + dglnt_dynclk->freq = clkMode.freq * 200; | ||
491 | + dglnt_dynclk_disable(clk_hw); | ||
492 | + dglnt_dynclk_enable(clk_hw); | ||
493 | + | ||
494 | + return 0; | ||
495 | +} | ||
496 | + | ||
497 | +static long dglnt_dynclk_round_rate(struct clk_hw *hw, unsigned long rate, | ||
498 | + unsigned long *parent_rate) | ||
499 | +{ | ||
500 | + struct dglnt_dynclk_mode clkMode; | ||
501 | + | ||
502 | + dglnt_dynclk_find_mode(((rate + 100) / 200), | ||
503 | + ((*parent_rate) + 500) / 1000, &clkMode); | ||
504 | + | ||
505 | + return (clkMode.freq * 200); | ||
506 | +} | ||
507 | + | ||
508 | +static unsigned long dglnt_dynclk_recalc_rate(struct clk_hw *clk_hw, | ||
509 | + unsigned long parent_rate) | ||
510 | +{ | ||
511 | + struct dglnt_dynclk *dglnt_dynclk = clk_hw_to_dglnt_dynclk(clk_hw); | ||
512 | + | ||
513 | + return dglnt_dynclk->freq; | ||
514 | +} | ||
515 | + | ||
516 | + | ||
517 | +static const struct clk_ops dglnt_dynclk_ops = { | ||
518 | + .recalc_rate = dglnt_dynclk_recalc_rate, | ||
519 | + .round_rate = dglnt_dynclk_round_rate, | ||
520 | + .set_rate = dglnt_dynclk_set_rate, | ||
521 | + .enable = dglnt_dynclk_enable, | ||
522 | + .disable = dglnt_dynclk_disable, | ||
523 | +}; | ||
524 | + | ||
525 | +static const struct of_device_id dglnt_dynclk_ids[] = { | ||
526 | + { .compatible = "digilent,axi-dynclk", }, | ||
527 | + { }, | ||
528 | +}; | ||
529 | +MODULE_DEVICE_TABLE(of, dglnt_dynclk_ids); | ||
530 | + | ||
531 | +static int dglnt_dynclk_probe(struct platform_device *pdev) | ||
532 | +{ | ||
533 | + const struct of_device_id *id; | ||
534 | + struct dglnt_dynclk *dglnt_dynclk; | ||
535 | + struct clk_init_data init; | ||
536 | + const char *parent_name; | ||
537 | + const char *clk_name; | ||
538 | + struct resource *mem; | ||
539 | + struct clk *clk; | ||
540 | + | ||
541 | + if (!pdev->dev.of_node) | ||
542 | + return -ENODEV; | ||
543 | + | ||
544 | + id = of_match_node(dglnt_dynclk_ids, pdev->dev.of_node); | ||
545 | + if (!id) | ||
546 | + return -ENODEV; | ||
547 | + | ||
548 | + dglnt_dynclk = devm_kzalloc(&pdev->dev, sizeof(*dglnt_dynclk), | ||
549 | + GFP_KERNEL); | ||
550 | + if (!dglnt_dynclk) | ||
551 | + return -ENOMEM; | ||
552 | + | ||
553 | + mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); | ||
554 | + dglnt_dynclk->base = devm_ioremap_resource(&pdev->dev, mem); | ||
555 | + if (IS_ERR(dglnt_dynclk->base)) | ||
556 | + return PTR_ERR(dglnt_dynclk->base); | ||
557 | + | ||
558 | + parent_name = of_clk_get_parent_name(pdev->dev.of_node, 0); | ||
559 | + if (!parent_name) | ||
560 | + return -EINVAL; | ||
561 | + | ||
562 | + clk_name = pdev->dev.of_node->name; | ||
563 | + of_property_read_string(pdev->dev.of_node, "clock-output-names", | ||
564 | + &clk_name); | ||
565 | + | ||
566 | + init.name = clk_name; | ||
567 | + init.ops = &dglnt_dynclk_ops; | ||
568 | + init.flags = 0; | ||
569 | + init.parent_names = &parent_name; | ||
570 | + init.num_parents = 1; | ||
571 | + | ||
572 | + dglnt_dynclk->freq = 0; | ||
573 | + dglnt_dynclk_disable(&dglnt_dynclk->clk_hw); | ||
574 | + | ||
575 | + dglnt_dynclk->clk_hw.init = &init; | ||
576 | + clk = devm_clk_register(&pdev->dev, &dglnt_dynclk->clk_hw); | ||
577 | + if (IS_ERR(clk)) | ||
578 | + return PTR_ERR(clk); | ||
579 | + | ||
580 | + return of_clk_add_provider(pdev->dev.of_node, of_clk_src_simple_get, | ||
581 | + clk); | ||
582 | +} | ||
583 | + | ||
584 | +static int dglnt_dynclk_remove(struct platform_device *pdev) | ||
585 | +{ | ||
586 | + of_clk_del_provider(pdev->dev.of_node); | ||
587 | + | ||
588 | + return 0; | ||
589 | +} | ||
590 | + | ||
591 | +static struct platform_driver dglnt_dynclk_driver = { | ||
592 | + .driver = { | ||
593 | + .name = "dglnt-dynclk", | ||
594 | + .owner = THIS_MODULE, | ||
595 | + .of_match_table = dglnt_dynclk_ids, | ||
596 | + }, | ||
597 | + .probe = dglnt_dynclk_probe, | ||
598 | + .remove = dglnt_dynclk_remove, | ||
599 | +}; | ||
600 | +module_platform_driver(dglnt_dynclk_driver); | ||
601 | + | ||
602 | +MODULE_LICENSE("GPL v2"); | ||
603 | +MODULE_AUTHOR("Sam Bobrowicz <sbobrowicz@digilentinc.com>"); | ||
604 | +MODULE_DESCRIPTION("CCF Driver for Digilent axi_dynclk IP Core"); | ||
605 | -- | ||
606 | 2.14.2 | ||
607 | |||
diff --git a/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0003-drm-xilinx-Fix-DPMS-transition-to-on.patch b/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0003-drm-xilinx-Fix-DPMS-transition-to-on.patch new file mode 100644 index 00000000..a98d84c5 --- /dev/null +++ b/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0003-drm-xilinx-Fix-DPMS-transition-to-on.patch | |||
@@ -0,0 +1,54 @@ | |||
1 | From 1a18e2b514ae9e75145597ac509a87f656c976ba Mon Sep 17 00:00:00 2001 | ||
2 | From: Nathan Rossi <nathan@nathanrossi.com> | ||
3 | Date: Mon, 2 May 2016 23:46:42 +1000 | ||
4 | Subject: [PATCH 3/3] drm: xilinx: Fix DPMS transition to on | ||
5 | |||
6 | Fix the issues where the VTC is reset (losing its timing config). | ||
7 | |||
8 | Also fix the issue where the plane destroys its DMA descriptors and | ||
9 | marks the DMA channels as inactive but never recreates the descriptors | ||
10 | and never updates the active state when turning DPMS back on. | ||
11 | |||
12 | Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> | ||
13 | Upstream-Status: Pending [This is a workaround] | ||
14 | --- | ||
15 | drivers/gpu/drm/xilinx/xilinx_drm_crtc.c | 1 - | ||
16 | drivers/gpu/drm/xilinx/xilinx_drm_plane.c | 3 ++- | ||
17 | 2 files changed, 2 insertions(+), 2 deletions(-) | ||
18 | |||
19 | diff --git a/drivers/gpu/drm/xilinx/xilinx_drm_crtc.c b/drivers/gpu/drm/xilinx/xilinx_drm_crtc.c | ||
20 | index 631d35b921..93dbd4b58a 100644 | ||
21 | --- a/drivers/gpu/drm/xilinx/xilinx_drm_crtc.c | ||
22 | +++ b/drivers/gpu/drm/xilinx/xilinx_drm_crtc.c | ||
23 | @@ -88,7 +88,6 @@ static void xilinx_drm_crtc_dpms(struct drm_crtc *base_crtc, int dpms) | ||
24 | default: | ||
25 | if (crtc->vtc) { | ||
26 | xilinx_vtc_disable(crtc->vtc); | ||
27 | - xilinx_vtc_reset(crtc->vtc); | ||
28 | } | ||
29 | if (crtc->cresample) { | ||
30 | xilinx_cresample_disable(crtc->cresample); | ||
31 | diff --git a/drivers/gpu/drm/xilinx/xilinx_drm_plane.c b/drivers/gpu/drm/xilinx/xilinx_drm_plane.c | ||
32 | index 6a248b72d4..d2518a4bdf 100644 | ||
33 | --- a/drivers/gpu/drm/xilinx/xilinx_drm_plane.c | ||
34 | +++ b/drivers/gpu/drm/xilinx/xilinx_drm_plane.c | ||
35 | @@ -140,7 +140,7 @@ void xilinx_drm_plane_commit(struct drm_plane *base_plane) | ||
36 | for (i = 0; i < MAX_NUM_SUB_PLANES; i++) { | ||
37 | struct xilinx_drm_plane_dma *dma = &plane->dma[i]; | ||
38 | |||
39 | - if (dma->chan && dma->is_active) { | ||
40 | + if (dma->chan) { | ||
41 | flags = DMA_CTRL_ACK | DMA_PREP_INTERRUPT; | ||
42 | desc = dmaengine_prep_interleaved_dma(dma->chan, | ||
43 | &dma->xt, | ||
44 | @@ -153,6 +153,7 @@ void xilinx_drm_plane_commit(struct drm_plane *base_plane) | ||
45 | dmaengine_submit(desc); | ||
46 | |||
47 | dma_async_issue_pending(dma->chan); | ||
48 | + dma->is_active = true; | ||
49 | } | ||
50 | } | ||
51 | } | ||
52 | -- | ||
53 | 2.14.2 | ||
54 | |||
diff --git a/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0004-minized-wifi-bluetooth.cfg b/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0004-minized-wifi-bluetooth.cfg new file mode 100644 index 00000000..f71e53ab --- /dev/null +++ b/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx/v2023.1/0004-minized-wifi-bluetooth.cfg | |||
@@ -0,0 +1,33 @@ | |||
1 | # | ||
2 | # Bluetooth config | ||
3 | # | ||
4 | CONFIG_BT=y | ||
5 | CONFIG_BT_BREDR=y | ||
6 | CONFIG_BT_HS=y | ||
7 | CONFIG_BT_LE=y | ||
8 | CONFIG_BT_BCM=y | ||
9 | CONFIG_BT_HCIUART=y | ||
10 | CONFIG_BT_HCIUART_H4=y | ||
11 | CONFIG_BT_HCIUART_BCM=y | ||
12 | CONFIG_BT_HIDP=y | ||
13 | CONFIG_CFG80211=y | ||
14 | CONFIG_CFG80211_DEFAULT_PS=y | ||
15 | CONFIG_CFG80211_CRDA_SUPPORT=y | ||
16 | CONFIG_BRCMUTIL=y | ||
17 | CONFIG_BRCMFMAC=y | ||
18 | CONFIG_BRCMFMAC_PROTO_BCDC=y | ||
19 | CONFIG_BRCMFMAC_SDIO=y | ||
20 | CONFIG_CRYPTO_BLKCIPHER=y | ||
21 | CONFIG_CRYPTO_MANAGER=y | ||
22 | CONFIG_CRYPTO_ECB=y | ||
23 | CONFIG_CRYPTO_CMAC=y | ||
24 | CONFIG_CRYPTO_SHA256=y | ||
25 | |||
26 | # | ||
27 | # Regulator config | ||
28 | # | ||
29 | CONFIG_REGMAP_IRQ=y | ||
30 | CONFIG_I2C_XILINX=y | ||
31 | CONFIG_MFD_DA9062=y | ||
32 | CONFIG_REGULATOR_DA9062=y | ||
33 | |||
diff --git a/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx_2023.1.bbappend b/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx_2023.1.bbappend new file mode 100644 index 00000000..c789c7a9 --- /dev/null +++ b/meta-xilinx-contrib/recipes-kernel/linux/linux-xlnx_2023.1.bbappend | |||
@@ -0,0 +1,12 @@ | |||
1 | FILESEXTRAPATHS:prepend := "${THISDIR}/linux-xlnx/v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}:" | ||
2 | |||
3 | # Note: These patches are very old and doesn't apply on top of 5.x | ||
4 | # kernel. For more details refer README.md file. | ||
5 | |||
6 | #SRC_URI:append:zybo-linux-bd-zynq7 = " \ | ||
7 | # file://0001-drm-xilinx-Add-encoder-for-Digilent-boards.patch \ | ||
8 | # file://0002-clk-Add-driver-for-axi_dynclk-IP-Core.patch \ | ||
9 | # file://0003-drm-xilinx-Fix-DPMS-transition-to-on.patch \ | ||
10 | # " | ||
11 | |||
12 | SRC_URI:append:minized-zynq7 = " file://0004-minized-wifi-bluetooth.cfg" | ||
diff --git a/meta-xilinx-core/classes/gen-machine-conf.bbclass b/meta-xilinx-core/classes/gen-machine-conf.bbclass new file mode 100644 index 00000000..25960cd1 --- /dev/null +++ b/meta-xilinx-core/classes/gen-machine-conf.bbclass | |||
@@ -0,0 +1,6 @@ | |||
1 | #Add scripts path with the tools to PATH to be able to use from eSDK | ||
2 | sdk_ext_postinst:append() { | ||
3 | if [ -d $target_sdk_dir/layers/meta-xilinx/meta-xilinx-core/gen-machine-conf ]; then | ||
4 | echo "export PATH=$target_sdk_dir/layers/meta-xilinx/meta-xilinx-core/gen-machine-conf:\$PATH" >> $env_setup_script | ||
5 | fi | ||
6 | } | ||
diff --git a/meta-xilinx-core/conf/layer.conf b/meta-xilinx-core/conf/layer.conf index 5f0c939f..36f445ac 100644 --- a/meta-xilinx-core/conf/layer.conf +++ b/meta-xilinx-core/conf/layer.conf | |||
@@ -41,12 +41,13 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \ | |||
41 | *->xserver-xorg \ | 41 | *->xserver-xorg \ |
42 | " | 42 | " |
43 | 43 | ||
44 | XILINX_RELEASE_VERSION ??= "v2022.2" | 44 | XILINX_RELEASE_VERSION ??= "v2023.1" |
45 | 45 | ||
46 | BUILDCFG_VARS:append = " SOC_VARIANT XILINX_RELEASE_VERSION" | 46 | BUILDCFG_VARS:append = " SOC_VARIANT XILINX_RELEASE_VERSION" |
47 | 47 | ||
48 | XILINX_QEMU_VERSION[v2022.1] = "v7.1.0-xilinx-v2022.1%" | 48 | XILINX_QEMU_VERSION[v2022.1] = "v7.1.0-xilinx-v2022.1%" |
49 | XILINX_QEMU_VERSION[v2022.2] = "v7.1.0-xilinx-v2022.2%" | 49 | XILINX_QEMU_VERSION[v2022.2] = "v7.1.0-xilinx-v2022.2%" |
50 | XILINX_QEMU_VERSION[v2023.1] = "v7.1.0-xilinx-v2023.1%" | ||
50 | PREFERRED_VERSION_qemu-xilinx ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 51 | PREFERRED_VERSION_qemu-xilinx ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
51 | PREFERRED_VERSION_qemu-xilinx-native ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 52 | PREFERRED_VERSION_qemu-xilinx-native ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
52 | PREFERRED_VERSION_qemu-xilinx-system-native ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 53 | PREFERRED_VERSION_qemu-xilinx-system-native ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
@@ -54,14 +55,21 @@ PREFERRED_VERSION_qemu-devicetrees ?= "xilinx-${XILINX_RELEASE_VERSION}%" | |||
54 | 55 | ||
55 | XILINX_ATF_VERSION[v2022.1] = "2.6-xilinx-v2022.1%" | 56 | XILINX_ATF_VERSION[v2022.1] = "2.6-xilinx-v2022.1%" |
56 | XILINX_ATF_VERSION[v2022.2] = "2.6-xilinx-v2022.2%" | 57 | XILINX_ATF_VERSION[v2022.2] = "2.6-xilinx-v2022.2%" |
58 | XILINX_ATF_VERSION[v2023.1] = "2.8-xilinx-v2023.1%" | ||
57 | PREFERRED_VERSION_arm-trusted-firmware ?= "${@d.getVarFlag('XILINX_ATF_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 59 | PREFERRED_VERSION_arm-trusted-firmware ?= "${@d.getVarFlag('XILINX_ATF_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
58 | 60 | ||
59 | XILINX_UBOOT_VERSION[v2022.1] = "v2021.01-xilinx-v2022.1%" | 61 | XILINX_UBOOT_VERSION[v2022.1] = "v2021.01-xilinx-v2022.1%" |
60 | XILINX_UBOOT_VERSION[v2022.2] = "v2021.01-xilinx-v2022.2%" | 62 | XILINX_UBOOT_VERSION[v2022.2] = "v2021.01-xilinx-v2022.2%" |
63 | XILINX_UBOOT_VERSION[v2023.1] = "v2023.01-xilinx-v2023.1%" | ||
61 | 64 | ||
62 | PREFERRED_VERSION_u-boot-xlnx ?= "${@d.getVarFlag('XILINX_UBOOT_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 65 | PREFERRED_VERSION_u-boot-xlnx ?= "${@d.getVarFlag('XILINX_UBOOT_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
63 | PREFERRED_VERSION_u-boot-tools-xlnx ?= "${@d.getVarFlag('XILINX_UBOOT_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 66 | PREFERRED_VERSION_u-boot-tools-xlnx ?= "${@d.getVarFlag('XILINX_UBOOT_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
64 | 67 | ||
65 | XILINX_LINUX_VERSION[v2022.1] = "5.15.19-xilinx-v2022.1%" | 68 | XILINX_LINUX_VERSION[v2022.1] = "5.15.19-xilinx-v2022.1%" |
66 | XILINX_LINUX_VERSION[v2022.2] = "5.15.36-xilinx-v2022.2%" | 69 | XILINX_LINUX_VERSION[v2022.2] = "5.15.36-xilinx-v2022.2%" |
70 | XILINX_LINUX_VERSION[v2023.1] = "6.1.5-xilinx-v2023.1%" | ||
67 | PREFERRED_VERSION_linux-xlnx ?= "${@d.getVarFlag('XILINX_LINUX_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 71 | PREFERRED_VERSION_linux-xlnx ?= "${@d.getVarFlag('XILINX_LINUX_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
72 | |||
73 | # Add support to eSDK for gen-machine-conf if it exists | ||
74 | PLNX_SCRIPTS_PATH = "${LAYERDIR}/gen-machine-conf/gen-machine-scripts" | ||
75 | IMAGE_CLASSES += "gen-machine-conf" | ||
diff --git a/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-bsp/device-tree/open-amp-device-tree.bb b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-bsp/device-tree/open-amp-device-tree.bb index 9f481fec..8f77bd54 100644 --- a/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-bsp/device-tree/open-amp-device-tree.bb +++ b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-bsp/device-tree/open-amp-device-tree.bb | |||
@@ -11,8 +11,6 @@ SRC_URI = " \ | |||
11 | file://zynqmp-openamp-overlay.dts \ | 11 | file://zynqmp-openamp-overlay.dts \ |
12 | file://versal-openamp.dtsi \ | 12 | file://versal-openamp.dtsi \ |
13 | file://versal-openamp-overlay.dts \ | 13 | file://versal-openamp-overlay.dts \ |
14 | file://versal-net-openamp.dtsi \ | ||
15 | file://versal-net-openamp-overlay.dts \ | ||
16 | " | 14 | " |
17 | 15 | ||
18 | # We don't have anything to include from the kernel | 16 | # We don't have anything to include from the kernel |
@@ -21,7 +19,6 @@ KERNEL_INCLUDE = "" | |||
21 | COMPATIBLE_MACHINE:zynq = "${MACHINE}" | 19 | COMPATIBLE_MACHINE:zynq = "${MACHINE}" |
22 | COMPATIBLE_MACHINE:zynqmp = "${MACHINE}" | 20 | COMPATIBLE_MACHINE:zynqmp = "${MACHINE}" |
23 | COMPATIBLE_MACHINE:versal = "${MACHINE}" | 21 | COMPATIBLE_MACHINE:versal = "${MACHINE}" |
24 | COMPATIBLE_MACHINE:versal-net = "${MACHINE}" | ||
25 | 22 | ||
26 | inherit devicetree image-artifact-names features_check | 23 | inherit devicetree image-artifact-names features_check |
27 | 24 | ||
diff --git a/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/libmetal/libmetal-xlnx_v2023.1.bb b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/libmetal/libmetal-xlnx_v2023.1.bb new file mode 100644 index 00000000..30ca3501 --- /dev/null +++ b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/libmetal/libmetal-xlnx_v2023.1.bb | |||
@@ -0,0 +1,15 @@ | |||
1 | SRCBRANCH ?= "2023.1" | ||
2 | SRCREV = "be635252271de342014a146825870b64bd41d6eb" | ||
3 | BRANCH = "xlnx_rel_v2023.1" | ||
4 | LIC_FILES_CHKSUM ?= "file://LICENSE.md;md5=f4d5df0f12dcea1b1a0124219c0dbab4" | ||
5 | PV = "${SRCBRANCH}+git${SRCPV}" | ||
6 | |||
7 | REPO = "git://github.com/Xilinx/libmetal.git;protocol=https" | ||
8 | |||
9 | include ${LAYER_PATH_openamp-layer}/recipes-openamp/libmetal/libmetal.inc | ||
10 | |||
11 | RPROVIDES:${PN}-dbg += "libmetal-dbg" | ||
12 | RPROVIDES:${PN}-dev += "libmetal-dev" | ||
13 | RPROVIDES:${PN}-lic += "libmetal-lic" | ||
14 | RPROVIDES:${PN}-src += "libmetal-src" | ||
15 | RPROVIDES:${PN}-staticdev += "libmetal-staticdev" | ||
diff --git a/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/open-amp/open-amp-xlnx_v2023.1.bb b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/open-amp/open-amp-xlnx_v2023.1.bb new file mode 100644 index 00000000..e295b869 --- /dev/null +++ b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/open-amp/open-amp-xlnx_v2023.1.bb | |||
@@ -0,0 +1,16 @@ | |||
1 | SRCBRANCH ?= "2023.1" | ||
2 | SRCREV = "c8aaf2f26d5493f492f0af09dd558d45908636da" | ||
3 | BRANCH = "xlnx_rel_v2023.1" | ||
4 | LIC_FILES_CHKSUM ?= "file://LICENSE.md;md5=ab88daf995c0bd0071c2e1e55f3d3505" | ||
5 | PV = "${SRCBRANCH}+git${SRCPV}" | ||
6 | REPO = "git://github.com/Xilinx/open-amp.git;protocol=https" | ||
7 | |||
8 | include ${LAYER_PATH_openamp-layer}/recipes-openamp/open-amp/open-amp.inc | ||
9 | require ${LAYER_PATH_openamp-layer}/vendor/xilinx/recipes-openamp/open-amp/open-amp-xlnx.inc | ||
10 | |||
11 | RPROVIDES:${PN}-dbg += "open-amp-dbg" | ||
12 | RPROVIDES:${PN}-dev += "open-amp-dev" | ||
13 | RPROVIDES:${PN}-lic += "open-amp-lic" | ||
14 | RPROVIDES:${PN}-src += "open-amp-src" | ||
15 | RPROVIDES:${PN}-staticdev += "open-amp-staticdev" | ||
16 | |||
diff --git a/meta-xilinx-core/dynamic-layers/virtualization-layer/recipes-kernel/lopper/lopper_git.bbappend b/meta-xilinx-core/dynamic-layers/virtualization-layer/recipes-kernel/lopper/lopper_git.bbappend index db4f4820..0440b1bc 100644 --- a/meta-xilinx-core/dynamic-layers/virtualization-layer/recipes-kernel/lopper/lopper_git.bbappend +++ b/meta-xilinx-core/dynamic-layers/virtualization-layer/recipes-kernel/lopper/lopper_git.bbappend | |||
@@ -1,5 +1,7 @@ | |||
1 | SRC_URI = "git://github.com/devicetree-org/lopper.git;branch=v0.2022.x;protocol=https" | 1 | SRC_URI = "git://github.com/devicetree-org/lopper.git;branch=master;protocol=https" |
2 | SRCREV = "cdb1a7b55c375f5237683a512257e0fc573063a2" | 2 | SRCREV = "395f00d44ee259d5db6fd6165c6cd18c8fe40e2f" |
3 | |||
4 | FILESEXTRAPATHS:prepend := "${THISDIR}/lopper:" | ||
3 | 5 | ||
4 | BASEVERSION = "1.1.0" | 6 | BASEVERSION = "1.1.0" |
5 | 7 | ||
diff --git a/meta-xilinx-core/gen-machine-conf b/meta-xilinx-core/gen-machine-conf new file mode 160000 | |||
Subproject a08b0e9e88b4c70336b12d57d4704343474d608 | |||
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.2.bb b/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.2.bb index 787111b5..810b51fd 100644 --- a/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.2.bb +++ b/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.2.bb | |||
@@ -1,7 +1,7 @@ | |||
1 | SUMMARY = "Xilinx AI Engine runtime" | 1 | SUMMARY = "Xilinx AI Engine runtime" |
2 | DESCRIPTION = "This library provides APIs for the runtime support of the Xilinx AI Engine IP" | 2 | DESCRIPTION = "This library provides APIs for the runtime support of the Xilinx AI Engine IP" |
3 | 3 | ||
4 | require aie-rt.inc | 4 | require aie-rt-2022.inc |
5 | 5 | ||
6 | SECTION = "libs" | 6 | SECTION = "libs" |
7 | 7 | ||
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.3.bb b/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.3.bb new file mode 100644 index 00000000..6a4fd880 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.3.bb | |||
@@ -0,0 +1,47 @@ | |||
1 | SUMMARY = "Xilinx AI Engine runtime" | ||
2 | DESCRIPTION = "This library provides APIs for the runtime support of the Xilinx AI Engine IP" | ||
3 | |||
4 | require aie-rt.inc | ||
5 | |||
6 | SECTION = "libs" | ||
7 | |||
8 | AIEDIR ?= "${S}/driver" | ||
9 | S = "${WORKDIR}/git" | ||
10 | I = "${AIEDIR}/include" | ||
11 | |||
12 | COMPATIBLE_MACHINE = "^$" | ||
13 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
14 | COMPATIBLE_MACHINE:versal-ai-edge = "${SOC_VARIANT_ARCH}" | ||
15 | PV = "3.3" | ||
16 | |||
17 | IOBACKENDS ?= "Linux" | ||
18 | |||
19 | DEPENDS = "${@bb.utils.contains('IOBACKENDS', 'metal', 'libmetal', '', d)}" | ||
20 | RDEPENDS:${PN} = "${@bb.utils.contains('IOBACKENDS', 'metal', 'libmetal', '', d)}" | ||
21 | |||
22 | PROVIDES = "libxaiengine" | ||
23 | RPROVIDES:${PN} = "libxaiengine" | ||
24 | |||
25 | # The makefile isn't ready for parallel execution at the moment | ||
26 | PARALLEL_MAKE = "-j 1" | ||
27 | |||
28 | CFLAGS += "-Wall -Wextra -fno-thread-jumps -fno-tree-pre" | ||
29 | CFLAGS += "${@bb.utils.contains('IOBACKENDS', 'Linux', ' -D__AIELINUX__', '', d)}" | ||
30 | CFLAGS += "${@bb.utils.contains('IOBACKENDS', 'metal', ' -D__AIEMETAL__', '', d)}" | ||
31 | EXTRA_OEMAKE = "-C ${AIEDIR}/src -f Makefile.Linux CFLAGS='${CFLAGS}'" | ||
32 | |||
33 | |||
34 | do_compile(){ | ||
35 | oe_runmake | ||
36 | } | ||
37 | |||
38 | do_install(){ | ||
39 | install -d ${D}${includedir} | ||
40 | install ${I}/*.h ${D}${includedir}/ | ||
41 | install -d ${D}${includedir}/xaiengine | ||
42 | install ${I}/xaiengine/*.h ${D}${includedir}/xaiengine/ | ||
43 | install -d ${D}${libdir} | ||
44 | cp -dr ${AIEDIR}/src/*.so* ${D}${libdir} | ||
45 | } | ||
46 | |||
47 | PACKAGE_ARCH:versal-ai-core = "${SOC_VARIANT_ARCH}" | ||
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt-2022.inc b/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt-2022.inc new file mode 100644 index 00000000..85121654 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt-2022.inc | |||
@@ -0,0 +1,11 @@ | |||
1 | SECTION = "libs" | ||
2 | |||
3 | REPO ?= "git://github.com/Xilinx/aie-rt.git;protocol=https" | ||
4 | |||
5 | BRANCH ?= "xlnx_rel_v2022.2" | ||
6 | SRCREV ?= "ae24c8ede049906323510693f37e6167a963fd0e" | ||
7 | |||
8 | LICENSE = "BSD-3-Clause" | ||
9 | LIC_FILES_CHKSUM ?= "file://license.txt;md5=b81abf1f508952331dd7d2ab36408f5b" | ||
10 | |||
11 | SRC_URI = "${REPO};branch=${BRANCH}" | ||
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt.inc b/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt.inc index 85121654..5eeb69d4 100644 --- a/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt.inc +++ b/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt.inc | |||
@@ -2,8 +2,8 @@ SECTION = "libs" | |||
2 | 2 | ||
3 | REPO ?= "git://github.com/Xilinx/aie-rt.git;protocol=https" | 3 | REPO ?= "git://github.com/Xilinx/aie-rt.git;protocol=https" |
4 | 4 | ||
5 | BRANCH ?= "xlnx_rel_v2022.2" | 5 | BRANCH ?= "xlnx_rel_v2023.1" |
6 | SRCREV ?= "ae24c8ede049906323510693f37e6167a963fd0e" | 6 | SRCREV ?= "1ad203de0b7f282b1c0659fd2ae3f218652c7274" |
7 | 7 | ||
8 | LICENSE = "BSD-3-Clause" | 8 | LICENSE = "BSD-3-Clause" |
9 | LIC_FILES_CHKSUM ?= "file://license.txt;md5=b81abf1f508952331dd7d2ab36408f5b" | 9 | LIC_FILES_CHKSUM ?= "file://license.txt;md5=b81abf1f508952331dd7d2ab36408f5b" |
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.0.bb b/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.0.bb index 641c39a9..7bb4b849 100644 --- a/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.0.bb +++ b/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.0.bb | |||
@@ -1,7 +1,7 @@ | |||
1 | SUMMARY = "Xilinx AI Engine FAL(Functional Abstraction Layer)" | 1 | SUMMARY = "Xilinx AI Engine FAL(Functional Abstraction Layer)" |
2 | DESCRIPTION = "AIE FAL provides functional abstraction APIs for runtime support of Xilinx AI Engine IP" | 2 | DESCRIPTION = "AIE FAL provides functional abstraction APIs for runtime support of Xilinx AI Engine IP" |
3 | 3 | ||
4 | require aie-rt.inc | 4 | require aie-rt-2022.inc |
5 | 5 | ||
6 | SECTION = "devel" | 6 | SECTION = "devel" |
7 | 7 | ||
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.4.bb b/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.4.bb new file mode 100644 index 00000000..641c39a9 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.4.bb | |||
@@ -0,0 +1,33 @@ | |||
1 | SUMMARY = "Xilinx AI Engine FAL(Functional Abstraction Layer)" | ||
2 | DESCRIPTION = "AIE FAL provides functional abstraction APIs for runtime support of Xilinx AI Engine IP" | ||
3 | |||
4 | require aie-rt.inc | ||
5 | |||
6 | SECTION = "devel" | ||
7 | |||
8 | XAIEFAL_DIR ?= "fal" | ||
9 | S = "${WORKDIR}/git" | ||
10 | |||
11 | COMPATIBLE_MACHINE = "^$" | ||
12 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
13 | COMPATIBLE_MACHINE:versal-ai-edge = "${SOC_VARIANT_ARCH}" | ||
14 | |||
15 | IOBACKENDS ?= "Linux" | ||
16 | |||
17 | PROVIDES = "aiefal" | ||
18 | ALLOW_EMPTY:${PN} = "1" | ||
19 | |||
20 | inherit pkgconfig cmake | ||
21 | |||
22 | DEPENDS = "libxaiengine" | ||
23 | |||
24 | OECMAKE_SOURCEPATH = "${S}/${XAIEFAL_DIR}" | ||
25 | |||
26 | EXTRA_OECMAKE = "-DWITH_TESTS=OFF " | ||
27 | EXTRA_OECMAKE:append = "${@'-DWITH_EXAMPLES=ON' if d.getVar('WITH_EXAMPLES') == 'y' else '-DWITH_EXAMPLES=OFF'}" | ||
28 | |||
29 | FILES:${PN}-demos = " \ | ||
30 | ${bindir}/* \ | ||
31 | " | ||
32 | |||
33 | PACKAGE_ARCH:versal-ai-core = "${SOC_VARIANT_ARCH}" | ||
diff --git a/meta-xilinx-core/recipes-bsp/arm-trusted-firmware/arm-trusted-firmware_2023.1.bb b/meta-xilinx-core/recipes-bsp/arm-trusted-firmware/arm-trusted-firmware_2023.1.bb new file mode 100644 index 00000000..2bcbe7d4 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/arm-trusted-firmware/arm-trusted-firmware_2023.1.bb | |||
@@ -0,0 +1,8 @@ | |||
1 | ATF_VERSION = "2.8" | ||
2 | SRCREV = "c9b71dc96f3f18ca94cad590612aae3224c8c84d" | ||
3 | BRANCH = "xlnx_rebase_v2.8" | ||
4 | LIC_FILES_CHKSUM = "file://license.rst;md5=1dd070c98a281d18d9eefd938729b031" | ||
5 | |||
6 | |||
7 | include arm-trusted-firmware.inc | ||
8 | |||
diff --git a/meta-xilinx-core/recipes-bsp/bootgen/bootgen_2023.1.bb b/meta-xilinx-core/recipes-bsp/bootgen/bootgen_2023.1.bb new file mode 100644 index 00000000..a934230d --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/bootgen/bootgen_2023.1.bb | |||
@@ -0,0 +1,31 @@ | |||
1 | SUMMARY = "Building and installing bootgen" | ||
2 | DESCRIPTION = "Building and installing bootgen, a Xilinx tool that lets you stitch binary files together and generate device boot images" | ||
3 | |||
4 | LICENSE = "Apache-2.0" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=d526b6d0807bf263b97da1da876f39b1" | ||
6 | |||
7 | S = "${WORKDIR}/git" | ||
8 | |||
9 | DEPENDS += "openssl" | ||
10 | RDEPENDS:${PN} += "openssl" | ||
11 | |||
12 | REPO ?= "git://github.com/Xilinx/bootgen.git;protocol=https" | ||
13 | BRANCH = "xlnx_rel_v2023.1" | ||
14 | SRCREV = "4f1e1caf2c09cdeacc35cbeedaf2550c6e44c7fd" | ||
15 | |||
16 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
17 | SRC_URI = "${REPO};${BRANCHARG}" | ||
18 | |||
19 | EXTRA_OEMAKE += 'CROSS_COMPILER="${CXX}" -C ${S}' | ||
20 | CXXFLAGS:append = " -std=c++0x" | ||
21 | |||
22 | TARGET_CC_ARCH += "${LDFLAGS}" | ||
23 | |||
24 | do_install() { | ||
25 | install -d ${D}${bindir} | ||
26 | install -Dm 0755 ${S}/bootgen ${D}${bindir} | ||
27 | } | ||
28 | |||
29 | FILES:${PN} = "${bindir}/bootgen" | ||
30 | |||
31 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta-xilinx-core/recipes-bsp/dfx-mgr/dfx-mgr_2023.1.bb b/meta-xilinx-core/recipes-bsp/dfx-mgr/dfx-mgr_2023.1.bb new file mode 100644 index 00000000..a4149d39 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/dfx-mgr/dfx-mgr_2023.1.bb | |||
@@ -0,0 +1,72 @@ | |||
1 | SUMMARY = "Xilinx dfx-mgr libraries" | ||
2 | DESCRIPTION = "Xilinx Runtime User Space Libraries and Binaries" | ||
3 | |||
4 | LICENSE = "MIT" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=d67bcef754e935bf77b6d7051bd62b5e" | ||
6 | |||
7 | REPO ?= "git://github.com/Xilinx/dfx-mgr.git;protocol=https" | ||
8 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
9 | SRC_URI = "${REPO};${BRANCHARG}" | ||
10 | |||
11 | BRANCH = "xlnx_rel_v2023.1" | ||
12 | SRCREV = "5918fb3406d828693cca484b77229ffd031b5dc4" | ||
13 | SOMAJOR = "1" | ||
14 | SOMINOR = "0" | ||
15 | SOVERSION = "${SOMAJOR}.${SOMINOR}" | ||
16 | |||
17 | COMPATIBLE_MACHINE = "^$" | ||
18 | COMPATIBLE_MACHINE:zynqmp = "zynqmp" | ||
19 | COMPATIBLE_MACHINE:versal = "versal" | ||
20 | |||
21 | S = "${WORKDIR}/git" | ||
22 | |||
23 | inherit cmake update-rc.d systemd | ||
24 | |||
25 | DEPENDS += " libwebsockets inotify-tools libdfx zocl libdrm" | ||
26 | RDEPENDS:${PN} += " freeipmi" | ||
27 | EXTRA_OECMAKE += " \ | ||
28 | -DCMAKE_SYSROOT:PATH=${RECIPE_SYSROOT} \ | ||
29 | " | ||
30 | |||
31 | INITSCRIPT_NAME = "dfx-mgr.sh" | ||
32 | INITSCRIPT_PARAMS = "start 99 S ." | ||
33 | |||
34 | SYSTEMD_PACKAGES="${PN}" | ||
35 | SYSTEMD_SERVICE:${PN}="dfx-mgr.service" | ||
36 | SYSTEMD_AUTO_ENABLE:${PN}="enable" | ||
37 | |||
38 | |||
39 | do_install(){ | ||
40 | install -d ${D}${bindir} | ||
41 | install -d ${D}${libdir} | ||
42 | install -d ${D}${includedir} | ||
43 | install -d ${D}${base_libdir}/firmware/xilinx | ||
44 | install -d ${D}${sysconfdir}/dfx-mgrd | ||
45 | |||
46 | cp ${B}/example/sys/linux/dfx-mgrd-static ${D}${bindir}/dfx-mgrd | ||
47 | cp ${B}/example/sys/linux/dfx-mgr-client-static ${D}${bindir}/dfx-mgr-client | ||
48 | chrpath -d ${D}${bindir}/dfx-mgrd | ||
49 | chrpath -d ${D}${bindir}/dfx-mgr-client | ||
50 | install -m 0644 ${S}/src/dfxmgr_client.h ${D}${includedir} | ||
51 | |||
52 | oe_soinstall ${B}/src/libdfx-mgr.so.${SOVERSION} ${D}${libdir} | ||
53 | |||
54 | install -m 0755 ${S}/src/daemon.conf ${D}${sysconfdir}/dfx-mgrd/ | ||
55 | |||
56 | if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then | ||
57 | install -d ${D}${sysconfdir}/init.d/ | ||
58 | install -m 0755 ${S}/src/dfx-mgr.sh ${D}${sysconfdir}/init.d/ | ||
59 | fi | ||
60 | |||
61 | install -m 0755 ${S}/src/dfx-mgr.sh ${D}${bindir} | ||
62 | install -m 0755 ${S}/src/scripts/xlnx-firmware-detect ${D}${bindir} | ||
63 | |||
64 | install -d ${D}${systemd_system_unitdir} | ||
65 | install -m 0644 ${S}/src/dfx-mgr.service ${D}${systemd_system_unitdir} | ||
66 | } | ||
67 | |||
68 | PACKAGES =+ "libdfx-mgr" | ||
69 | |||
70 | FILES:${PN} += "${base_libdir}/firmware/xilinx" | ||
71 | FILES:${PN} += "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','${sysconfdir}/init.d/dfx-mgr.sh', '', d)} ${systemd_system_unitdir}" | ||
72 | FILES:libdfx-mgr = "${libdir}/libdfx-mgr.so.${SOVERSION} ${libdir}/libdfx-mgr.so.${SOMAJOR}" | ||
diff --git a/meta-xilinx-core/recipes-bsp/libdfx/libdfx_2023.1.bb b/meta-xilinx-core/recipes-bsp/libdfx/libdfx_2023.1.bb new file mode 100644 index 00000000..287246c2 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/libdfx/libdfx_2023.1.bb | |||
@@ -0,0 +1,23 @@ | |||
1 | SUMMARY = "Xilinx libdfx library" | ||
2 | DESCRIPTION = "Xilinx libdfx Library and headers" | ||
3 | |||
4 | LICENSE = "MIT & GPL-2.0-or-later" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=94aba86aec117f003b958a52f019f1a7" | ||
6 | |||
7 | BRANCH ?= "xlnx_rel_v2023.1" | ||
8 | REPO ?= "git://github.com/Xilinx/libdfx.git;protocol=https" | ||
9 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
10 | SRC_URI = "${REPO};${BRANCHARG}" | ||
11 | SRCREV = "52c1d83c72a2b2e85d256411a199ed1baed12ae1" | ||
12 | |||
13 | COMPATIBLE_MACHINE = "^$" | ||
14 | COMPATIBLE_MACHINE:zynqmp = "zynqmp" | ||
15 | COMPATIBLE_MACHINE:versal = "versal" | ||
16 | |||
17 | S = "${WORKDIR}/git" | ||
18 | |||
19 | inherit cmake | ||
20 | |||
21 | # Due to an update where the soname/version was defined, we need to use an RREPLACES | ||
22 | # so updates will work properly. | ||
23 | RREPLACES:${PN} = "libdfx" | ||
diff --git a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-tools-xlnx_2023.1.bb b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-tools-xlnx_2023.1.bb new file mode 100644 index 00000000..fe5ecf79 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-tools-xlnx_2023.1.bb | |||
@@ -0,0 +1,21 @@ | |||
1 | require u-boot-tools-xlnx.inc | ||
2 | require u-boot-xlnx-2023.1.inc | ||
3 | |||
4 | # MUST clear CONFIG_VIDEO to avoid a compilation failure trying to construct | ||
5 | # bmp_logo.h | ||
6 | SED_CONFIG_EFI:append = ' -e "s/CONFIG_VIDEO=.*/# CONFIG_VIDEO is not set/"' | ||
7 | |||
8 | # Default do_compile fails with: | ||
9 | # | error: object directory ../downloads/git2/github.com.Xilinx.u-boot-xlnx.git/objects does not exist; check .git/objects/info/alternates. | ||
10 | # The regular workaround of calling 'git diff' seems to be problematic. | ||
11 | do_compile () { | ||
12 | oe_runmake -C ${S} tools-only_defconfig O=${B} | ||
13 | |||
14 | # Disable CONFIG_CMD_LICENSE, license.h is not used by tools and | ||
15 | # generating it requires bin2header tool, which for target build | ||
16 | # is built with target tools and thus cannot be executed on host. | ||
17 | sed -i -e "s/CONFIG_CMD_LICENSE=.*/# CONFIG_CMD_LICENSE is not set/" ${SED_CONFIG_EFI} ${B}/.config | ||
18 | |||
19 | oe_runmake -C ${S} cross_tools NO_SDL=1 O=${B} | ||
20 | } | ||
21 | |||
diff --git a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic-top.h b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic-top.h new file mode 100644 index 00000000..be823421 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic-top.h | |||
@@ -0,0 +1,8 @@ | |||
1 | /* | ||
2 | * This file is use for addition u-boot configurations for microblaze. | ||
3 | */ | ||
4 | #include <configs/microblaze-generic.h> | ||
5 | |||
6 | /* Core microblaze boot configurations */ | ||
7 | #define XILINX_USE_ICACHE 1 | ||
8 | #define XILINX_USE_DCACHE 1 | ||
diff --git a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic.cfg b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic.cfg new file mode 100644 index 00000000..3c911a06 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic.cfg | |||
@@ -0,0 +1,83 @@ | |||
1 | # SPDX-License-Identifier: MIT | ||
2 | |||
3 | #........................................................................ | ||
4 | # WARNING | ||
5 | # | ||
6 | # This file is a u-boot configuration fragment, and not a full u-boot | ||
7 | # configuration file. The final u-boot configuration is made up of | ||
8 | # an assembly of processed fragments, each of which is designed to | ||
9 | # capture a specific part of the final configuration (e.g. platform | ||
10 | # configuration, feature configuration, and board specific hardware | ||
11 | # configuration). For more information on u-boot configuration, please | ||
12 | # refer the product documentation. | ||
13 | # | ||
14 | #....................................................................... | ||
15 | |||
16 | # | ||
17 | # Definitions for Generic Microbalze machine. | ||
18 | # | ||
19 | CONFIG_BOOTDELAY=4 | ||
20 | CONFIG_TEXT_BASE=0x80100000 | ||
21 | CONFIG_SYS_PROMPT="U-Boot>" | ||
22 | CONFIG_SYS_CONFIG_NAME="microblaze-generic-top" | ||
23 | CONFIG_BOOT_SCRIPT_OFFSET=0x1F00000 | ||
24 | # CONFIG_SYS_NS16550 is not set | ||
25 | # CONFIG_SYS_FLASH_USE_BUFFER_WRITE is not set | ||
26 | # CONFIG_SYS_FLASH_CFI is not set | ||
27 | # CONFIG_FLASH_CFI_DRIVER is not set | ||
28 | # CONFIG_CMD_FLASH is not set | ||
29 | # CONFIG_CMD_IMLS is not set | ||
30 | # CONFIG_MTD_NOR_FLASH is not set | ||
31 | # CONFIG_MTD_DEVICE is not set | ||
32 | # CONFIG_SYS_FLASH_PROTECTION is not set | ||
33 | # CONFIG_SPI_FLASH_SST is not set | ||
34 | # CONFIG_XILINX_EMACLITE is not set | ||
35 | # CONFIG_PHY_VITESSE is not set | ||
36 | # CONFIG_CMD_EXT2 is not set | ||
37 | # CONFIG_CMD_EXT4 is not set | ||
38 | # CONFIG_CMD_EXT4_WRITE is not set | ||
39 | # CONFIG_CMD_FAT is not set | ||
40 | # CONFIG_DOS_PARTITION is not set | ||
41 | # CONFIG_FAT_WRITE is not set | ||
42 | CONFIG_DM=y | ||
43 | CONFIG_SYS_MALLOC_F=y | ||
44 | CONFIG_XILINX_UARTLITE=y | ||
45 | CONFIG_XILINX_AXIEMAC=y | ||
46 | CONFIG_PHY_XILINX=y | ||
47 | CONFIG_PHY_TI=y | ||
48 | CONFIG_NET=y | ||
49 | CONFIG_PHY_GIGE=y | ||
50 | CONFIG_NETDEVICES=y | ||
51 | CONFIG_CMD_NET=y | ||
52 | CONFIG_DM_ETH=y | ||
53 | CONFIG_CMD_PING=y | ||
54 | CONFIG_CMD_DHCP=y | ||
55 | CONFIG_PHYLIB=y | ||
56 | CONFIG_CMD_TFTPPUT=y | ||
57 | CONFIG_CMD_NFS=y | ||
58 | CONFIG_CMD_MII=y | ||
59 | CONFIG_PHY_MARVELL=y | ||
60 | CONFIG_PHY_REALTEK=y | ||
61 | CONFIG_PHY_NATSEMI=y | ||
62 | CONFIG_XILINX_SPI=y | ||
63 | CONFIG_CMD_SPI=y | ||
64 | CONFIG_CMD_SF=y | ||
65 | CONFIG_SPI_FLASH=y | ||
66 | CONFIG_SPI_FLASH_BAR=y | ||
67 | CONFIG_DM_SPI_FLASH=y | ||
68 | CONFIG_DM_SPI=y | ||
69 | CONFIG_SPI_FLASH_SPANSION=y | ||
70 | CONFIG_SPI_FLASH_STMICRO=y | ||
71 | CONFIG_SPI_FLASH_WINBOND=y | ||
72 | CONFIG_SPI_FLASH_MACRONIX=y | ||
73 | CONFIG_SPI=y | ||
74 | CONFIG_SPI_FLASH_ISSI=y | ||
75 | # CONFIG_BOOTARGS is not set | ||
76 | # CONFIG_USE_BOOTARGS is not set | ||
77 | # CONFIG_SPL is not set | ||
78 | # CONFIG_I2C_EEPROM is not set | ||
79 | # CONFIG_CMD_EEPROM is not set | ||
80 | # CONFIG_SYS_I2C_EEPROM_ADDR is not set | ||
81 | # CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW is not set | ||
82 | CONFIG_DCACHE=y | ||
83 | CONFIG_ICACHE=y | ||
diff --git a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx-2023.1.inc b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx-2023.1.inc new file mode 100644 index 00000000..01082966 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx-2023.1.inc | |||
@@ -0,0 +1,17 @@ | |||
1 | UBOOT_VERSION = "v2023.01" | ||
2 | |||
3 | UBRANCH = "xlnx_rebase_v2023.01" | ||
4 | |||
5 | SRCREV = "40a08d69e749c0472103551c85c02c41f979453d" | ||
6 | |||
7 | LICENSE = "GPL-2.0-or-later" | ||
8 | LIC_FILES_CHKSUM = "file://README;beginline=1;endline=4;md5=744e7e3bb0c94b4b9f6b3db3bf893897" | ||
9 | |||
10 | # u-boot-xlnx has support for these | ||
11 | HAS_PLATFORM_INIT ?= " \ | ||
12 | xilinx_zynqmp_virt_config \ | ||
13 | xilinx_zynq_virt_defconfig \ | ||
14 | xilinx_versal_vc_p_a2197_revA_x_prc_01_revA \ | ||
15 | " | ||
16 | |||
17 | DEPENDS += "bc-native dtc-native python3-setuptools-native gnutls-native" | ||
diff --git a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx_2023.1.bb b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx_2023.1.bb new file mode 100644 index 00000000..fd76bc51 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx_2023.1.bb | |||
@@ -0,0 +1,4 @@ | |||
1 | |||
2 | require u-boot-xlnx.inc | ||
3 | require u-boot-spl-zynq-init.inc | ||
4 | require u-boot-xlnx-2023.1.inc | ||
diff --git a/meta-xilinx-core/recipes-core/images/core-image-ptest-all.bbppend b/meta-xilinx-core/recipes-core/images/core-image-ptest-all.bbppend new file mode 100644 index 00000000..fd3a3c11 --- /dev/null +++ b/meta-xilinx-core/recipes-core/images/core-image-ptest-all.bbppend | |||
@@ -0,0 +1,5 @@ | |||
1 | # Minimum board memory required for each type | ||
2 | QB_MEM:microblaze = "-m 2G" | ||
3 | QB_MEM:zynq = "-m 1G" | ||
4 | QB_MEM:zynqmp = "-m 4G" | ||
5 | QB_MEM:versal = "-m 16G" | ||
diff --git a/meta-xilinx-core/recipes-devtools/qemu/qemu-devicetrees_2023.1.bb b/meta-xilinx-core/recipes-devtools/qemu/qemu-devicetrees_2023.1.bb new file mode 100644 index 00000000..91e787bd --- /dev/null +++ b/meta-xilinx-core/recipes-devtools/qemu/qemu-devicetrees_2023.1.bb | |||
@@ -0,0 +1,6 @@ | |||
1 | |||
2 | require qemu-devicetrees.inc | ||
3 | |||
4 | BRANCH ?= "xlnx_rel_v2023.1" | ||
5 | SRCREV ?= "1c45adcde1fc06432c01be250bf668c6477d8459" | ||
6 | |||
diff --git a/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-2023.1.inc b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-2023.1.inc new file mode 100644 index 00000000..06ac05a1 --- /dev/null +++ b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-2023.1.inc | |||
@@ -0,0 +1,3 @@ | |||
1 | XILINX_QEMU_VERSION = "v7.1.0" | ||
2 | BRANCH = "xlnx_rel_v2023.1" | ||
3 | SRCREV = "21adc9f99e813fb24fb65421259b5b0614938376" | ||
diff --git a/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-native_2023.1.bb b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-native_2023.1.bb new file mode 100644 index 00000000..06711fd9 --- /dev/null +++ b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-native_2023.1.bb | |||
@@ -0,0 +1,9 @@ | |||
1 | require qemu-xilinx-2023.1.inc | ||
2 | require qemu-xilinx-native-7.1.inc | ||
3 | require qemu-native-alt.inc | ||
4 | |||
5 | BPN = "qemu-xilinx" | ||
6 | |||
7 | EXTRA_OECONF:append = " --target-list=${@get_qemu_usermode_target_list(d)} --disable-tools --disable-blobs --disable-guest-agent" | ||
8 | |||
9 | PACKAGECONFIG ??= "pie" | ||
diff --git a/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-system-native_2023.1.bb b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-system-native_2023.1.bb new file mode 100644 index 00000000..1e738530 --- /dev/null +++ b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-system-native_2023.1.bb | |||
@@ -0,0 +1,26 @@ | |||
1 | require qemu-system-native-alt.inc | ||
2 | require qemu-xilinx-2023.1.inc | ||
3 | require qemu-xilinx-native-7.1.inc | ||
4 | |||
5 | PROVIDES = "qemu-system-native" | ||
6 | |||
7 | EXTRA_OECONF:append = " --target-list=${@get_qemu_system_target_list(d)}" | ||
8 | |||
9 | PACKAGECONFIG ??= "fdt alsa kvm gcrypt pie slirp" | ||
10 | |||
11 | PACKAGECONFIG:remove = "${@'kvm' if not os.path.exists('/usr/include/linux/kvm.h') else ''}" | ||
12 | |||
13 | DEPENDS += "pixman-native qemu-xilinx-native bison-native ninja-native meson-native" | ||
14 | DEPENDS += "qemu-xilinx-multiarch-helper-native" | ||
15 | |||
16 | do_install:append() { | ||
17 | # The following is also installed by qemu-native | ||
18 | rm -f ${D}${datadir}/qemu/trace-events-all | ||
19 | rm -rf ${D}${datadir}/qemu/keymaps | ||
20 | rm -rf ${D}${datadir}/icons | ||
21 | rm -rf ${D}${includedir}/qemu-plugin.h | ||
22 | |||
23 | # Install qmp.py to be used with testimage | ||
24 | install -d ${D}${libdir}/qemu-python/qmp/ | ||
25 | install -D ${S}/python/qemu/qmp/* ${D}${libdir}/qemu-python/qmp/ | ||
26 | } | ||
diff --git a/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx_2023.1.bb b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx_2023.1.bb new file mode 100644 index 00000000..6c1851ba --- /dev/null +++ b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx_2023.1.bb | |||
@@ -0,0 +1,24 @@ | |||
1 | require qemu-xilinx-2023.1.inc | ||
2 | require recipes-devtools/qemu/qemu.inc | ||
3 | require qemu-xilinx-7.1.inc | ||
4 | require qemu-alt.inc | ||
5 | |||
6 | # Links to libmali-xlnx, so it becomes MACHINE_ARCH specific | ||
7 | DEFAULT_PACKAGE_ARCH := "${PACKAGE_ARCH}" | ||
8 | MALI_PACKAGE_ARCH = "${@'${MACHINE_ARCH}' if d.getVar('PREFERRED_PROVIDER_virtual/libgles1') == 'libmali-xlnx' else '${DEFAULT_PACKAGE_ARCH}'}" | ||
9 | PACKAGE_ARCH:class-target = "${@bb.utils.contains_any('DEPENDS', 'libepoxy virglrenderer', '${MALI_PACKAGE_ARCH}', '${DEFAULT_PACKAGE_ARCH}', d)}" | ||
10 | |||
11 | BBCLASSEXTEND = "nativesdk" | ||
12 | |||
13 | RDEPENDS:${PN}:class-target += "bash" | ||
14 | |||
15 | PROVIDES:class-nativesdk = "nativesdk-qemu" | ||
16 | RPROVIDES:${PN}:class-nativesdk = "nativesdk-qemu" | ||
17 | |||
18 | EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}" | ||
19 | EXTRA_OECONF:append:class-nativesdk = " --target-list=${@get_qemu_target_list(d)}" | ||
20 | EXTRA_OECONF:append:class-target:mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}" | ||
21 | |||
22 | do_install:append:class-nativesdk() { | ||
23 | ${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'make_qemu_wrapper', '', d)} | ||
24 | } | ||
diff --git a/meta-xilinx-core/recipes-graphics/libgles/libmali-xlnx.bb b/meta-xilinx-core/recipes-graphics/libgles/libmali-xlnx.bb index e3113b4d..07de26dc 100644 --- a/meta-xilinx-core/recipes-graphics/libgles/libmali-xlnx.bb +++ b/meta-xilinx-core/recipes-graphics/libgles/libmali-xlnx.bb | |||
@@ -13,8 +13,8 @@ PROVIDES += "virtual/libgles1 virtual/libgles2 virtual/egl virtual/libgbm" | |||
13 | FILESEXTRAPATHS:prepend := "${THISDIR}/files:" | 13 | FILESEXTRAPATHS:prepend := "${THISDIR}/files:" |
14 | 14 | ||
15 | REPO ?= "git://github.com/Xilinx/mali-userspace-binaries.git;protocol=https" | 15 | REPO ?= "git://github.com/Xilinx/mali-userspace-binaries.git;protocol=https" |
16 | BRANCH ?= "xlnx_rel_v2022.2" | 16 | BRANCH ?= "xlnx_rel_v2023.1" |
17 | SRCREV ?= "a1a22c9f03b20d8cb70b91727fe51c1db7f4b061" | 17 | SRCREV ?= "b3a772aad859cdadc8513b11c3e995546c20e75e" |
18 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | 18 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" |
19 | 19 | ||
20 | PV = "r9p0-01rel0" | 20 | PV = "r9p0-01rel0" |
diff --git a/meta-xilinx-core/recipes-kernel/dp/kernel-module-dp_2023.1.bb b/meta-xilinx-core/recipes-kernel/dp/kernel-module-dp_2023.1.bb new file mode 100644 index 00000000..28770994 --- /dev/null +++ b/meta-xilinx-core/recipes-kernel/dp/kernel-module-dp_2023.1.bb | |||
@@ -0,0 +1,24 @@ | |||
1 | SUMMARY = "Xilinx DisplayPort Linux Kernel module" | ||
2 | DESCRIPTION = "Out-of-tree DisplayPort(DP) kernel modules provider for aarch64 devices" | ||
3 | SECTION = "kernel/modules" | ||
4 | LICENSE = "GPL-2.0-only" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eb723b61539feef013de476e68b5c50a" | ||
6 | |||
7 | XLNX_DP_VERSION = "6.1.0" | ||
8 | PV = "${XLNX_DP_VERSION}+xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
9 | |||
10 | S = "${WORKDIR}/git" | ||
11 | |||
12 | BRANCH ?= "xlnx_rel_v2023.1" | ||
13 | REPO ?= "git://github.com/xilinx/dp-modules.git;protocol=https" | ||
14 | SRCREV ?= "5b0969ac09f301c33bccc140c8f60e832f5cf222" | ||
15 | |||
16 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
17 | SRC_URI = "${REPO};${BRANCHARG}" | ||
18 | |||
19 | inherit module | ||
20 | |||
21 | EXTRA_OEMAKE += "O=${STAGING_KERNEL_BUILDDIR}" | ||
22 | COMPATIBLE_MACHINE = "^$" | ||
23 | COMPATIBLE_MACHINE:zynqmp = "zynqmp" | ||
24 | COMPATIBLE_MACHINE:versal = "versal" | ||
diff --git a/meta-xilinx-core/recipes-kernel/hdmi/kernel-module-hdmi_2023.1.bb b/meta-xilinx-core/recipes-kernel/hdmi/kernel-module-hdmi_2023.1.bb new file mode 100644 index 00000000..20acb8b3 --- /dev/null +++ b/meta-xilinx-core/recipes-kernel/hdmi/kernel-module-hdmi_2023.1.bb | |||
@@ -0,0 +1,24 @@ | |||
1 | SUMMARY = "Xilinx HDMI Linux Kernel module" | ||
2 | DESCRIPTION = "Out-of-tree HDMI kernel modules provider for MPSoC EG/EV devices" | ||
3 | SECTION = "kernel/modules" | ||
4 | LICENSE = "GPL-2.0-only" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=b34277fe156508fd5a650609dc36d1fe" | ||
6 | |||
7 | XLNX_HDMI_VERSION = "6.1" | ||
8 | PV = "${XLNX_HDMI_VERSION}+xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
9 | |||
10 | S = "${WORKDIR}/git" | ||
11 | |||
12 | BRANCH ?= "xlnx_rel_v2023.1" | ||
13 | REPO ?= "git://github.com/Xilinx/hdmi-modules.git;protocol=https" | ||
14 | SRCREV = "1c6330f02fea68992e22400fdbc8c0d0e63e2958" | ||
15 | |||
16 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
17 | SRC_URI = "${REPO};${BRANCHARG}" | ||
18 | |||
19 | inherit module | ||
20 | |||
21 | EXTRA_OEMAKE += "O=${STAGING_KERNEL_BUILDDIR}" | ||
22 | COMPATIBLE_MACHINE = "^$" | ||
23 | COMPATIBLE_MACHINE:zynqmp = "zynqmp" | ||
24 | COMPATIBLE_MACHINE:versal = "versal" | ||
diff --git a/meta-xilinx-core/recipes-kernel/linux/linux-microblaze.inc b/meta-xilinx-core/recipes-kernel/linux/linux-microblaze.inc index 40fdc70a..a2f15adb 100644 --- a/meta-xilinx-core/recipes-kernel/linux/linux-microblaze.inc +++ b/meta-xilinx-core/recipes-kernel/linux/linux-microblaze.inc | |||
@@ -1,5 +1,4 @@ | |||
1 | SRC_URI += " \ | 1 | SRC_URI += " \ |
2 | file://mb-no-tree-loop-distribute-patterns.patch \ | ||
3 | file://microblaze_generic.cfg \ | 2 | file://microblaze_generic.cfg \ |
4 | " | 3 | " |
5 | 4 | ||
diff --git a/meta-xilinx-core/recipes-kernel/linux/linux-xlnx_2023.1.bb b/meta-xilinx-core/recipes-kernel/linux/linux-xlnx_2023.1.bb new file mode 100644 index 00000000..6740a459 --- /dev/null +++ b/meta-xilinx-core/recipes-kernel/linux/linux-xlnx_2023.1.bb | |||
@@ -0,0 +1,11 @@ | |||
1 | LINUX_VERSION = "6.1.5" | ||
2 | YOCTO_META ?= "git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-6.1;destsuffix=yocto-kmeta" | ||
3 | KBRANCH="xlnx_rebase_v6.1_LTS" | ||
4 | SRCREV = "716921b6d7dc9db49660369428fb61ca96947ccb" | ||
5 | SRCREV_meta = "185bcfcbe480c742247d9117011794c69682914f" | ||
6 | |||
7 | KCONF_AUDIT_LEVEL="0" | ||
8 | |||
9 | include linux-xlnx.inc | ||
10 | |||
11 | FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" | ||
diff --git a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops.bb b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops.bb index 38ec473b..2648c372 100644 --- a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops.bb +++ b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops.bb | |||
@@ -8,9 +8,10 @@ RDEPENDS:${PN} += "lopper" | |||
8 | SRC_URI = " \ | 8 | SRC_URI = " \ |
9 | file://lop-microblaze-yocto.dts \ | 9 | file://lop-microblaze-yocto.dts \ |
10 | file://lop-xilinx-id-cpus.dts \ | 10 | file://lop-xilinx-id-cpus.dts \ |
11 | file://lop-machine-name.dts \ | ||
11 | " | 12 | " |
12 | 13 | ||
13 | LIC_FILES_CHKSUM = "file://lop-microblaze-yocto.dts;endline=8;md5=a0e89d39fa397ec5d5320409ff701280" | 14 | LIC_FILES_CHKSUM = "file://lop-microblaze-yocto.dts;endline=10;md5=27139f9b862dc6fe466c7157aba7ed9c" |
14 | 15 | ||
15 | S = "${WORKDIR}" | 16 | S = "${WORKDIR}" |
16 | 17 | ||
@@ -23,6 +24,7 @@ do_install() { | |||
23 | mkdir -p ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops | 24 | mkdir -p ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops |
24 | cp ${S}/lop-microblaze-yocto.dts ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops/. | 25 | cp ${S}/lop-microblaze-yocto.dts ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops/. |
25 | cp ${S}/lop-xilinx-id-cpus.dts ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops/. | 26 | cp ${S}/lop-xilinx-id-cpus.dts ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops/. |
27 | cp ${S}/lop-machine-name.dts ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops/. | ||
26 | } | 28 | } |
27 | 29 | ||
28 | FILES:${PN} += "${PYTHON_SITEPACKAGES_DIR}/lopper/lops" | 30 | FILES:${PN} += "${PYTHON_SITEPACKAGES_DIR}/lopper/lops" |
diff --git a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-machine-name.dts b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-machine-name.dts new file mode 100644 index 00000000..0fb5649a --- /dev/null +++ b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-machine-name.dts | |||
@@ -0,0 +1,44 @@ | |||
1 | /* | ||
2 | * Copyright (c) 2023 Advanced Micro Devices, Inc. All rights reserved. | ||
3 | * | ||
4 | * Author: | ||
5 | * Mark Hatle <mark.hatle@amd.com> | ||
6 | * | ||
7 | * SPDX-License-Identifier: BSD-3-Clause | ||
8 | */ | ||
9 | |||
10 | /dts-v1/; | ||
11 | |||
12 | / { | ||
13 | compatible = "system-device-tree-v1,lop"; | ||
14 | lops { | ||
15 | compatible = "system-device-tree-v1,lop"; | ||
16 | track_feature: track_feature { | ||
17 | compatible = "system-device-tree-v1,lop,code-v1"; | ||
18 | noexec; | ||
19 | code = " | ||
20 | # print( 'track: lopper library routine: %s' % node ) | ||
21 | try: | ||
22 | node.tunes[prop] = prop | ||
23 | except: | ||
24 | pass | ||
25 | "; | ||
26 | }; | ||
27 | lop_0_1 { | ||
28 | compatible = "system-device-tree-v1,lop,select-v1"; | ||
29 | select_1; | ||
30 | select_2 = "/"; | ||
31 | lop_0_2 { | ||
32 | compatible = "system-device-tree-v1,lop,code-v1"; | ||
33 | inherit = "subsystem"; | ||
34 | code = " | ||
35 | for n in tree.__selected__: | ||
36 | mach_name = n['compatible'].value[0].replace(',','-').replace('.','-') | ||
37 | model = n['model'].value[0] | ||
38 | device_id = n['device_id'].value[0] | ||
39 | print( '%s %s %s' % (mach_name.lower(), device_id, model) ) | ||
40 | "; | ||
41 | }; | ||
42 | }; | ||
43 | }; | ||
44 | }; | ||
diff --git a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-microblaze-yocto.dts b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-microblaze-yocto.dts index 72eb4665..5e5f7986 100644 --- a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-microblaze-yocto.dts +++ b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-microblaze-yocto.dts | |||
@@ -1,8 +1,10 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (c) 2020 Xilinx Inc. All rights reserved. | 2 | * Copyright (c) 2020 Xilinx Inc. All rights reserved. |
3 | * Copyright (c) 2023 Advanced Micro Devices, Inc. All rights reserved. | ||
3 | * | 4 | * |
4 | * Author: | 5 | * Author: |
5 | * Bruce Ashfield <bruce.ashfield@xilinx.com> | 6 | * Bruce Ashfield <bruce.ashfield@amd.com> |
7 | * Mark Hatle <mark.hatle@amd.com> | ||
6 | * | 8 | * |
7 | * SPDX-License-Identifier: BSD-3-Clause | 9 | * SPDX-License-Identifier: BSD-3-Clause |
8 | */ | 10 | */ |
@@ -38,13 +40,16 @@ | |||
38 | n.tunes = OrderedDict() | 40 | n.tunes = OrderedDict() |
39 | n.tunes['microblaze'] = 'microblaze' | 41 | n.tunes['microblaze'] = 'microblaze' |
40 | n.tunes['version'] = 'v9.2' | 42 | n.tunes['version'] = 'v9.2' |
43 | n.tune_type = val.split('-')[0] | ||
41 | 44 | ||
42 | if val == 'pmc-microblaze' or val == 'psm-microblaze': | 45 | elif val == 'pmc-microblaze' or val == 'psm-microblaze': |
43 | n.tunes = OrderedDict() | 46 | n.tunes = OrderedDict() |
44 | n.tunes['microblaze'] = 'microblaze' | 47 | n.tunes['microblaze'] = 'microblaze' |
45 | n.tunes['version'] = 'v10.0' | 48 | n.tunes['version'] = 'v10.0' |
49 | n.tune_type = val.split('-')[0] | ||
46 | 50 | ||
47 | n.tune_type = val | 51 | else: |
52 | n.tune_type = re.split('@', n.name)[0] | ||
48 | "; | 53 | "; |
49 | }; | 54 | }; |
50 | }; | 55 | }; |
@@ -225,18 +230,16 @@ | |||
225 | compatible = "system-device-tree-v1,lop,code-v1"; | 230 | compatible = "system-device-tree-v1,lop,code-v1"; |
226 | code = " | 231 | code = " |
227 | cpu_addr = 0 | 232 | cpu_addr = 0 |
233 | firmware_cpus = {} | ||
228 | for n in __selected__: | 234 | for n in __selected__: |
229 | tname = re.split('@', n.name) | 235 | tname = 'microblaze-'+n.tune_type |
230 | tname = tname[0]+str(cpu_addr) | 236 | if n.tune_type == 'cpu': |
231 | cpu_addr += 1 | 237 | tname = tname + str(cpu_addr) |
232 | print( 'AVAILTUNES += \"microblaze-%s\"' % tname ) | 238 | cpu_addr += 1 |
233 | print( 'TUNE_FEATURES:tune-microblaze-%s = \"' % tname, end='' ) | 239 | print( '# %s\\n# compatible = \"%s\";' % (n, n['compatible'].value[0])) |
234 | for t in n.tunes.values(): | 240 | print( 'AVAILTUNES += \"%s\"' % tname ) |
235 | print( ' %s' % t, end='' ) | 241 | print( 'TUNE_FEATURES:tune-%s = \"%s\"' % (tname, ' '.join(n.tunes.values()))) |
236 | print( '\"' ) | 242 | print( 'PACKAGE_EXTRA_ARCHS:tune-%s = \"${TUNE_PKGARCH}\"\\n' % tname ) |
237 | print( 'PACKAGE_EXTRA_ARCHS:tune-microblaze-%s = \"${TUNE_PKGARCH}\"' % tname ) | ||
238 | print( 'TUNE_FEATURES:tune-%s = \"${TUNE_FEATURES:tune-microblaze-%s}\"\\n' % (n.tune_type,tname) ) | ||
239 | |||
240 | "; | 243 | "; |
241 | }; | 244 | }; |
242 | }; | 245 | }; |
diff --git a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-xilinx-id-cpus.dts b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-xilinx-id-cpus.dts index 67d68bba..1468801a 100644 --- a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-xilinx-id-cpus.dts +++ b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-xilinx-id-cpus.dts | |||
@@ -104,19 +104,27 @@ | |||
104 | inherit = "lopper_lib"; | 104 | inherit = "lopper_lib"; |
105 | code = " | 105 | code = " |
106 | cpu_output = {} | 106 | cpu_output = {} |
107 | symbol_node = node.tree['/__symbols__'] | ||
108 | prop_dict = symbol_node.__props__ | ||
107 | for c in __selected__: | 109 | for c in __selected__: |
110 | num_cpu = 0 | ||
108 | for c_node in c.subnodes( children_only = True ): | 111 | for c_node in c.subnodes( children_only = True ): |
109 | try: | 112 | try: |
110 | cpu_node = c_node['device_type'].value[0] | 113 | cpu_node = c_node['device_type'].value[0] |
114 | num_cpu = c_node['reg'].value[0] | ||
115 | num_cpu = num_cpu + 1 | ||
111 | except: | 116 | except: |
112 | cpu_node = None | 117 | cpu_node = None |
113 | if cpu_node: | 118 | if cpu_node: |
114 | if c_node.ref == 0: | 119 | match = [label for label,node_abs in prop_dict.items() if re.match(node_abs[0], c_node.abs_path) and len(node_abs[0]) == len(c_node.abs_path)] |
120 | cpu_name = match[0] | ||
121 | if num_cpu != 0: | ||
115 | cpu_type = c_node['compatible'].value[0] | 122 | cpu_type = c_node['compatible'].value[0] |
116 | cpu_output[cpu_type] = '{} {} {}'.format(cpu_type,'None','None') | 123 | dict_key = cpu_name + str(num_cpu) |
124 | cpu_output[dict_key] = '{} {} {} {} {}'.format(cpu_type, num_cpu-1, 'None', cpu_name, 'None') | ||
117 | 125 | ||
118 | if cpu_output: | 126 | if cpu_output: |
119 | print( '# global no-domain cpus' ) | 127 | print( '# global core_number no-domain cpu_name' ) |
120 | 128 | ||
121 | for o in cpu_output.values(): | 129 | for o in cpu_output.values(): |
122 | print( '%s' % o ) | 130 | print( '%s' % o ) |
diff --git a/meta-xilinx-core/recipes-multimedia/vcu/kernel-module-vcu_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vcu/kernel-module-vcu_2023.1.bb new file mode 100644 index 00000000..9adfcade --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vcu/kernel-module-vcu_2023.1.bb | |||
@@ -0,0 +1,39 @@ | |||
1 | SUMMARY = "Linux kernel module for Video Code Unit" | ||
2 | DESCRIPTION = "Out-of-tree VCU decoder, encoder and common kernel modules provider for MPSoC EV devices" | ||
3 | SECTION = "kernel/modules" | ||
4 | LICENSE = "GPL-2.0-only" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eb723b61539feef013de476e68b5c50a" | ||
6 | |||
7 | XILINX_VCU_VERSION = "1.0.0" | ||
8 | PV = "${XILINX_VCU_VERSION}-xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
9 | |||
10 | S = "${WORKDIR}/git" | ||
11 | |||
12 | FILESEXTRAPATHS:prepend := "${THISDIR}/files:" | ||
13 | |||
14 | BRANCH = "xlnx_rel_v2023.1" | ||
15 | REPO = "git://github.com/Xilinx/vcu-modules.git;protocol=https" | ||
16 | SRCREV = "4afe0ab4eb3b7f2d17bcb823dee0caa0f03ab7a0" | ||
17 | |||
18 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
19 | SRC_URI = " \ | ||
20 | ${REPO};${BRANCHARG} \ | ||
21 | file://99-vcu-enc-dec.rules \ | ||
22 | " | ||
23 | |||
24 | inherit module features_check | ||
25 | |||
26 | REQUIRED_MACHINE_FEATURES = "vcu" | ||
27 | |||
28 | EXTRA_OEMAKE += "O=${STAGING_KERNEL_BUILDDIR}" | ||
29 | |||
30 | RDEPENDS:${PN} = "vcu-firmware" | ||
31 | |||
32 | KERNEL_MODULE_AUTOLOAD += "dmaproxy" | ||
33 | |||
34 | do_install:append() { | ||
35 | install -d ${D}${sysconfdir}/udev/rules.d | ||
36 | install -m 0644 ${WORKDIR}/99-vcu-enc-dec.rules ${D}${sysconfdir}/udev/rules.d/ | ||
37 | } | ||
38 | |||
39 | FILES:${PN} = "${sysconfdir}/udev/rules.d/*" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vcu/libomxil-xlnx_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vcu/libomxil-xlnx_2023.1.bb new file mode 100644 index 00000000..3c258008 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vcu/libomxil-xlnx_2023.1.bb | |||
@@ -0,0 +1,51 @@ | |||
1 | SUMMARY = "OpenMAX Integration layer for VCU" | ||
2 | DESCRIPTION = "OMX IL Libraries,test applications and headers for VCU" | ||
3 | LICENSE = "MIT" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=5375796c5ae4ee85ea1f2c1603e58509" | ||
5 | |||
6 | XILINX_VCU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VCU_VERSION}-xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
8 | |||
9 | BRANCH ?= "xlnx_rel_v2023.1" | ||
10 | REPO ?= "git://github.com/Xilinx/vcu-omx-il.git;protocol=https" | ||
11 | SRCREV = "4773b372b72b88ccbabc122b023f042fb22a019e" | ||
12 | |||
13 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
14 | SRC_URI = "${REPO};${BRANCHARG}" | ||
15 | |||
16 | S = "${WORKDIR}/git" | ||
17 | |||
18 | inherit features_check | ||
19 | |||
20 | REQUIRED_MACHINE_FEATURES = "vcu" | ||
21 | |||
22 | PACKAGE_ARCH = "${MACHINE_ARCH}" | ||
23 | |||
24 | DEPENDS = "libvcu-xlnx" | ||
25 | RDEPENDS:${PN} = "kernel-module-vcu libvcu-xlnx" | ||
26 | |||
27 | EXTERNAL_INCLUDE="${STAGING_INCDIR}/vcu-ctrl-sw/include" | ||
28 | |||
29 | EXTRA_OEMAKE = " \ | ||
30 | CC='${CC}' CXX='${CXX} ${CXXFLAGS}' \ | ||
31 | EXTERNAL_INCLUDE='${EXTERNAL_INCLUDE}' \ | ||
32 | " | ||
33 | |||
34 | do_install() { | ||
35 | install -d ${D}${libdir} | ||
36 | install -d ${D}${includedir}/vcu-omx-il | ||
37 | |||
38 | install -m 0644 ${S}/omx_header/*.h ${D}${includedir}/vcu-omx-il | ||
39 | |||
40 | install -Dm 0755 ${S}/bin/omx_decoder ${D}/${bindir}/omx_decoder | ||
41 | install -Dm 0755 ${S}/bin/omx_encoder ${D}/${bindir}/omx_encoder | ||
42 | |||
43 | oe_libinstall -C ${S}/bin/ -so libOMX.allegro.core ${D}/${libdir}/ | ||
44 | oe_libinstall -C ${S}/bin/ -so libOMX.allegro.video_decoder ${D}/${libdir}/ | ||
45 | oe_libinstall -C ${S}/bin/ -so libOMX.allegro.video_encoder ${D}/${libdir}/ | ||
46 | } | ||
47 | |||
48 | # These libraries shouldn't get installed in world builds unless something | ||
49 | # explicitly depends upon them. | ||
50 | |||
51 | EXCLUDE_FROM_WORLD = "1" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vcu/libvcu-xlnx_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vcu/libvcu-xlnx_2023.1.bb new file mode 100644 index 00000000..7dc97d72 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vcu/libvcu-xlnx_2023.1.bb | |||
@@ -0,0 +1,44 @@ | |||
1 | SUMMARY = "Control Software for VCU" | ||
2 | DESCRIPTION = "Control software libraries, test applications and headers provider for VCU" | ||
3 | LICENSE = "MIT" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=5375796c5ae4ee85ea1f2c1603e58509" | ||
5 | |||
6 | XILINX_VCU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VCU_VERSION}-xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
8 | |||
9 | BRANCH ?= "xlnx_rel_v2023.1" | ||
10 | REPO ?= "git://github.com/Xilinx/vcu-ctrl-sw.git;protocol=https" | ||
11 | SRCREV = "83aabb84c26667f7d6aee632654c63e504838061" | ||
12 | |||
13 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
14 | SRC_URI = "${REPO};${BRANCHARG}" | ||
15 | |||
16 | S = "${WORKDIR}/git" | ||
17 | |||
18 | inherit features_check | ||
19 | |||
20 | REQUIRED_MACHINE_FEATURES = "vcu" | ||
21 | |||
22 | RDEPENDS:${PN} = "kernel-module-vcu" | ||
23 | |||
24 | EXTRA_OEMAKE = "CC='${CC}' CXX='${CXX} ${CXXFLAGS}'" | ||
25 | |||
26 | do_install() { | ||
27 | install -d ${D}${libdir} | ||
28 | install -d ${D}${includedir}/vcu-ctrl-sw/include | ||
29 | |||
30 | install -Dm 0755 ${S}/bin/ctrlsw_encoder ${D}/${bindir}/ctrlsw_encoder | ||
31 | install -Dm 0755 ${S}/bin/ctrlsw_decoder ${D}/${bindir}/ctrlsw_decoder | ||
32 | |||
33 | oe_runmake install_headers INSTALL_HDR_PATH=${D}${includedir}/vcu-ctrl-sw/include | ||
34 | oe_libinstall -C ${S}/bin/ -so liballegro_decode ${D}/${libdir}/ | ||
35 | oe_libinstall -C ${S}/bin/ -so liballegro_encode ${D}/${libdir}/ | ||
36 | } | ||
37 | |||
38 | # These libraries shouldn't get installed in world builds unless something | ||
39 | # explicitly depends upon them. | ||
40 | |||
41 | EXCLUDE_FROM_WORLD = "1" | ||
42 | |||
43 | # Disable buildpaths QA check warnings. | ||
44 | INSANE_SKIP:${PN} += "buildpaths" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vcu/vcu-firmware_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vcu/vcu-firmware_2023.1.bb new file mode 100644 index 00000000..50e7926d --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vcu/vcu-firmware_2023.1.bb | |||
@@ -0,0 +1,38 @@ | |||
1 | SUMMARY = "Firmware for VCU" | ||
2 | DESCRIPTION = "Firmware binaries provider for VCU" | ||
3 | LICENSE = "Proprietary" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=6da65299754e921b31f03e9b11d77a74" | ||
5 | |||
6 | XILINX_VCU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VCU_VERSION}-xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
8 | |||
9 | S = "${WORKDIR}/git" | ||
10 | |||
11 | BRANCH ?= "xlnx_rel_v2023.1" | ||
12 | REPO ?= "git://github.com/Xilinx/vcu-firmware.git;protocol=https" | ||
13 | SRCREV = "c90288595ac9a12ff401de6dfa680b1f9adce5f6" | ||
14 | |||
15 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
16 | SRC_URI = "${REPO};${BRANCHARG}" | ||
17 | |||
18 | inherit features_check | ||
19 | |||
20 | REQUIRED_MACHINE_FEATURES = "vcu" | ||
21 | |||
22 | do_install() { | ||
23 | install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5d_b.fw ${D}/lib/firmware/al5d_b.fw | ||
24 | install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5d.fw ${D}/lib/firmware/al5d.fw | ||
25 | install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5e_b.fw ${D}/lib/firmware/al5e_b.fw | ||
26 | install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5e.fw ${D}/lib/firmware/al5e.fw | ||
27 | } | ||
28 | |||
29 | # Inhibit warnings about files being stripped | ||
30 | INHIBIT_PACKAGE_DEBUG_SPLIT = "1" | ||
31 | INHIBIT_PACKAGE_STRIP = "1" | ||
32 | FILES:${PN} = "/lib/firmware/*" | ||
33 | |||
34 | # These libraries shouldn't get installed in world builds unless something | ||
35 | # explicitly depends upon them. | ||
36 | EXCLUDE_FROM_WORLD = "1" | ||
37 | |||
38 | INSANE_SKIP:${PN} = "ldflags" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/files/99-vdu-enc-dec.rules b/meta-xilinx-core/recipes-multimedia/vdu/files/99-vdu-enc-dec.rules new file mode 100644 index 00000000..78bb54f4 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vdu/files/99-vdu-enc-dec.rules | |||
@@ -0,0 +1,4 @@ | |||
1 | # Allegro VDU Encode, Decoder module drivers | ||
2 | SUBSYSTEM=="allegro_decode_class", KERNEL=="allegroDecodeIP[0-4]*", MODE="0660", GROUP="video", TAG+="uaccess" | ||
3 | |||
4 | |||
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/kernel-module-vdu_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vdu/kernel-module-vdu_2023.1.bb new file mode 100644 index 00000000..a1396278 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vdu/kernel-module-vdu_2023.1.bb | |||
@@ -0,0 +1,41 @@ | |||
1 | SUMMARY = "Linux kernel module for Video Decode Unit" | ||
2 | DESCRIPTION = "Out-of-tree VDU decoder common kernel modules" | ||
3 | SECTION = "kernel/modules" | ||
4 | LICENSE = "GPLv2" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eb723b61539feef013de476e68b5c50a" | ||
6 | |||
7 | XILINX_VDU_VERSION = "1.0.0" | ||
8 | PV = "${XILINX_VDU_VERSION}-xilinx-${XILINX_RELEASE_VERSION}+git${SRCPV}" | ||
9 | |||
10 | S = "${WORKDIR}/git" | ||
11 | FILESEXTRAPATHS:prepend := "${THISDIR}/files:" | ||
12 | |||
13 | BRANCH ?= "xlnx_rel_v2023.1" | ||
14 | REPO ?= "git://github.com/Xilinx/vdu-modules.git;protocol=https" | ||
15 | SRCREV ?= "82d06e395c93a1e941b83cccbb6f2e4e6d966f1c" | ||
16 | |||
17 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
18 | SRC_URI = "${REPO};${BRANCHARG} \ | ||
19 | file://99-vdu-enc-dec.rules \ | ||
20 | " | ||
21 | |||
22 | inherit module features_check | ||
23 | |||
24 | REQUIRED_MACHINE_FEATURES = "vdu" | ||
25 | |||
26 | EXTRA_OEMAKE += "O=${STAGING_KERNEL_BUILDDIR}" | ||
27 | |||
28 | RDEPENDS:${PN} = "vdu-firmware" | ||
29 | |||
30 | COMPATIBLE_MACHINE = "^$" | ||
31 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
32 | COMPATIBLE_MACHINE:versal-ai-edge = "versal-ai-edge" | ||
33 | |||
34 | PACKAGE_ARCH = "${SOC_FAMILY_ARCH}" | ||
35 | |||
36 | do_install:append() { | ||
37 | install -d ${D}${sysconfdir}/udev/rules.d | ||
38 | install -m 0644 ${WORKDIR}/99-vdu-enc-dec.rules ${D}${sysconfdir}/udev/rules.d/ | ||
39 | } | ||
40 | |||
41 | FILES:${PN} = "${sysconfdir}/udev/rules.d/*" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/libvdu-ctrlsw_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vdu/libvdu-ctrlsw_2023.1.bb new file mode 100644 index 00000000..82f3c4f5 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vdu/libvdu-ctrlsw_2023.1.bb | |||
@@ -0,0 +1,44 @@ | |||
1 | SUMMARY = "Control Software for VDU" | ||
2 | DESCRIPTION = "Control software libraries, test applications and headers provider for VDU" | ||
3 | LICENSE = "MIT" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=aaf483d309243c4596f6373eb9c8325f" | ||
5 | |||
6 | XILINX_VDU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VDU_VERSION}-xilinx-${XILINX_RELEASE_VERSION}+git${SRCPV}" | ||
8 | |||
9 | inherit autotools features_check | ||
10 | |||
11 | REQUIRED_MACHINE_FEATURES = "vdu" | ||
12 | |||
13 | BRANCH ?= "xlnx_rel_v2023.1" | ||
14 | REPO ?= "git://github.com/Xilinx/vdu-ctrl-sw.git;protocol=https" | ||
15 | SRCREV ?= "06fc18b303b40d4fee7549ad162c22ee1bc31582" | ||
16 | |||
17 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
18 | SRC_URI = "${REPO};${BRANCHARG}" | ||
19 | |||
20 | S = "${WORKDIR}/git" | ||
21 | |||
22 | COMPATIBLE_MACHINE = "^$" | ||
23 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
24 | COMPATIBLE_MACHINE:versal-ai-edge = "versal-ai-edge" | ||
25 | |||
26 | PACKAGE_ARCH = "${SOC_FAMILY_ARCH}" | ||
27 | |||
28 | RDEPENDS:${PN} = "kernel-module-vdu" | ||
29 | |||
30 | do_compile[dirs] = "${S}" | ||
31 | do_install[dirs] = "${S}" | ||
32 | |||
33 | EXTRA_OEMAKE = "CC='${CC}' CXX='${CXX} ${CXXFLAGS}'" | ||
34 | EXTRA_OEMAKE +=" INSTALL_HDR_PATH=${D}${includedir}/vdu-ctrl-sw/include INSTALL_PATH=${D}${bindir}" | ||
35 | |||
36 | do_install:append() { | ||
37 | |||
38 | oe_libinstall -C ${S}/bin/ -so liballegro_decode ${D}/${libdir}/ | ||
39 | } | ||
40 | |||
41 | # These libraries shouldn't get installed in world builds unless something | ||
42 | # explicitly depends upon them. | ||
43 | |||
44 | EXCLUDE_FROM_WORLD = "1" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/libvdu-omxil_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vdu/libvdu-omxil_2023.1.bb new file mode 100644 index 00000000..88b50193 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vdu/libvdu-omxil_2023.1.bb | |||
@@ -0,0 +1,53 @@ | |||
1 | SUMMARY = "OpenMAX Integration layer for VDU" | ||
2 | DESCRIPTION = "OMX IL Libraries,test application and headers for VDU" | ||
3 | LICENSE = "MIT" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=aaf483d309243c4596f6373eb9c8325f" | ||
5 | |||
6 | XILINX_VDU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VDU_VERSION}-xilinx-${XILINX_RELEASE_VERSION}+git${SRCPV}" | ||
8 | |||
9 | BRANCH ?= "xlnx_rel_v2023.1" | ||
10 | REPO ?= "git://github.com/Xilinx/vdu-omx-il.git;protocol=https" | ||
11 | SRCREV ?= "811eefac953fd5e098c69cada97a0dd35f5e9015" | ||
12 | |||
13 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
14 | SRC_URI = "${REPO};${BRANCHARG} \ | ||
15 | " | ||
16 | S = "${WORKDIR}/git" | ||
17 | |||
18 | inherit autotools features_check | ||
19 | |||
20 | REQUIRED_MACHINE_FEATURES = "vdu" | ||
21 | |||
22 | COMPATIBLE_MACHINE = "^$" | ||
23 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
24 | COMPATIBLE_MACHINE:versal-ai-edge = "versal-ai-edge" | ||
25 | |||
26 | PACKAGE_ARCH = "${SOC_FAMILY_ARCH}" | ||
27 | |||
28 | DEPENDS = "libvdu-ctrlsw" | ||
29 | RDEPENDS:${PN} = "kernel-module-vdu libvdu-ctrlsw" | ||
30 | |||
31 | EXTERNAL_INCLUDE="${STAGING_INCDIR}/vdu-ctrl-sw/include" | ||
32 | |||
33 | do_compile[dirs] = "${S}" | ||
34 | do_install[dirs] = "${S}" | ||
35 | |||
36 | EXTRA_OEMAKE = " \ | ||
37 | CC='${CC}' CXX='${CXX} ${CXXFLAGS}' \ | ||
38 | EXTERNAL_INCLUDE='${EXTERNAL_INCLUDE}' \ | ||
39 | INSTALL_PATH=${D}${bindir} \ | ||
40 | INCLUDE_INST_PATH=${D}${includedir} \ | ||
41 | " | ||
42 | |||
43 | do_install:append() { | ||
44 | install -d ${D}${libdir} | ||
45 | |||
46 | oe_libinstall -C ${S}/bin/ -so libOMX.allegro.core ${D}/${libdir}/ | ||
47 | oe_libinstall -C ${S}/bin/ -so libOMX.allegro.video_decoder ${D}/${libdir}/ | ||
48 | } | ||
49 | |||
50 | # These libraries shouldn't get installed in world builds unless something | ||
51 | # explicitly depends upon them. | ||
52 | |||
53 | EXCLUDE_FROM_WORLD = "1" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/vdu-firmware_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vdu/vdu-firmware_2023.1.bb new file mode 100755 index 00000000..e96e0d24 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vdu/vdu-firmware_2023.1.bb | |||
@@ -0,0 +1,42 @@ | |||
1 | SUMMARY = "Firmware for VDU" | ||
2 | DESCRIPTION = "Firmware binaries provider for VDU" | ||
3 | LICENSE = "Proprietary" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=c5784f63397086d836580d8785d1deb9" | ||
5 | |||
6 | XILINX_VDU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VDU_VERSION}-xilinx-${XILINX_RELEASE_VERSION}+git${SRCPV}" | ||
8 | |||
9 | S = "${WORKDIR}/git" | ||
10 | |||
11 | inherit autotools features_check | ||
12 | |||
13 | REQUIRED_MACHINE_FEATURES = "vdu" | ||
14 | |||
15 | BRANCH ?= "xlnx_rel_v2023.1" | ||
16 | REPO ?= "git://github.com/Xilinx/vdu-firmware.git;protocol=https" | ||
17 | SRCREV ?= "63fe2fce6e46d5bf03e33300a58a37d8568722ee" | ||
18 | |||
19 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
20 | SRC_URI = "${REPO};${BRANCHARG}" | ||
21 | |||
22 | COMPATIBLE_MACHINE = "^$" | ||
23 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
24 | COMPATIBLE_MACHINE:versal-ai-edge = "versal-ai-edge" | ||
25 | |||
26 | PACKAGE_ARCH = "${SOC_FAMILY_ARCH}" | ||
27 | EXTRA_OEMAKE +="INSTALL_PATH=${D}/lib/firmware" | ||
28 | |||
29 | do_compile[noexec] = "1" | ||
30 | do_install[dirs] = "${S}" | ||
31 | |||
32 | # Inhibit warnings about files being stripped | ||
33 | INHIBIT_PACKAGE_DEBUG_SPLIT = "1" | ||
34 | INHIBIT_PACKAGE_STRIP = "1" | ||
35 | FILES:${PN} = "/lib/firmware/*" | ||
36 | |||
37 | |||
38 | # These libraries shouldn't get installed in world builds unless something | ||
39 | # explicitly depends upon them. | ||
40 | EXCLUDE_FROM_WORLD = "1" | ||
41 | |||
42 | INSANE_SKIP:${PN} = "ldflags" | ||
diff --git a/meta-xilinx-core/recipes-xrt/xrt/xrt.inc b/meta-xilinx-core/recipes-xrt/xrt/xrt.inc index 19f8f8cd..3b150673 100644 --- a/meta-xilinx-core/recipes-xrt/xrt/xrt.inc +++ b/meta-xilinx-core/recipes-xrt/xrt/xrt.inc | |||
@@ -3,6 +3,6 @@ BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != ' | |||
3 | SRC_URI = "${REPO};${BRANCHARG}" | 3 | SRC_URI = "${REPO};${BRANCHARG}" |
4 | 4 | ||
5 | BRANCH= "2023.1" | 5 | BRANCH= "2023.1" |
6 | SRCREV= "f0c2e397211347dfa1ea92910712d481fe43f662" | 6 | SRCREV= "64c933573e7e50a8aba939a74209590c2b739e8b" |
7 | PV = "202310.2.15.0" | 7 | PV = "202310.2.15.0" |
8 | 8 | ||
diff --git a/meta-xilinx-standalone-experimental/README.md b/meta-xilinx-standalone-experimental/README.md index 99675b0a..8014265b 100644 --- a/meta-xilinx-standalone-experimental/README.md +++ b/meta-xilinx-standalone-experimental/README.md | |||
@@ -14,36 +14,47 @@ parts and pieces. | |||
14 | **Note:** to use this layer you must REMOVE meta-xilinx-tools from your | 14 | **Note:** to use this layer you must REMOVE meta-xilinx-tools from your |
15 | project. meta-xilinx-tools is not compatible with this experimental | 15 | project. meta-xilinx-tools is not compatible with this experimental |
16 | approach. You may also have to remove other layers that depend | 16 | approach. You may also have to remove other layers that depend |
17 | on meta-xilinx-tools, such as meta-som. | 17 | on meta-xilinx-tools, such as meta-kria and meta-system-controller. |
18 | 18 | ||
19 | To use the experimental version of the embedded software (firmware) | 19 | To use the experimental version of the embedded software (firmware) |
20 | as well as system configuration, you must build the 'meta-xilinx-setup' | 20 | as well as system configuration, you must build the 'meta-xilinx-setup' |
21 | SDK. This SDK is passed a device tree, constructed from DTG++ and | 21 | SDK. This SDK is passed a device tree, constructed from System Device tree and |
22 | produces a number of configuration files. | 22 | produces a number of configuration files. |
23 | 23 | ||
24 | To build the setup SDK: | 24 | 1. Remove meta-xilinx-tools, meta-kria and meta-system-controller, then add the decoupling layer |
25 | 25 | ``` | |
26 | MACHINE=qemux86-64 bitbake meta-xilinx-setup | 26 | $ bitbake-layers remove-layer meta-xilinx-tools |
27 | 27 | $ bitbake-layers remove-layer meta-kria | |
28 | To install the setup SDK: | 28 | $ bitbake-layers remove-layer meta-system-controller |
29 | 29 | $ bitbake-layers add-layer ./<path-to-layer>/meta-xilinx/meta-xilinx-standalone-experimental | |
30 | ./tmp/deploy/sdk/x86_64-xilinx-nativesdk-prestep-2021.2.sh -d prestep -y | 30 | ``` |
31 | 2. Build the setup SDK | ||
32 | ``` | ||
33 | $ bitbake meta-xilinx-setup | ||
34 | ``` | ||
35 | 3. Install the setup SDK: | ||
36 | ``` | ||
37 | $ .${TMPDIR}/tmp/deploy/sdk/x86_64-xilinx-nativesdk-prestep-2023.1....sh -d prestep -y | ||
38 | ``` | ||
31 | 39 | ||
32 | Then follow the instructions in the 'prestep/README-setup' file. | 40 | Then follow the instructions in the 'prestep/README-setup' file. |
33 | 41 | ||
34 | 42 | ||
35 | |||
36 | ## Dependencies | 43 | ## Dependencies |
37 | 44 | ||
38 | This layer depends on: | 45 | This layer depends on: |
39 | 46 | ||
40 | URI: git://git.openembedded.org/bitbake | 47 | URI: https://git.yoctoproject.org/poky |
48 | layers: meta, meta-poky | ||
49 | branch: langdale | ||
41 | 50 | ||
42 | URI: git://git.openembedded.org/openembedded-core | 51 | URI: https://git.openembedded.org/meta-openembedded |
43 | layers: meta | 52 | layers: meta-oe |
44 | branch: master or xilinx current release version (e.g. hosister) | 53 | branch: langdale |
45 | 54 | ||
46 | URI: git://git.yoctoproject.org/meta-xilinx.git | 55 | URI: |
56 | https://git.yoctoproject.org/meta-xilinx (official version) | ||
57 | https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) | ||
47 | layers: meta-xilinx-core, meta-xilinx-bsp, meta-xilinx-standalone | 58 | layers: meta-xilinx-core, meta-xilinx-bsp, meta-xilinx-standalone |
48 | branch: master or xilinx current release version (e.g. hosister) | 59 | branch: langdale or amd xilinx release version (e.g. rel-v2023.1) |
49 | 60 | ||
diff --git a/meta-xilinx-standalone-experimental/classes/esw.bbclass b/meta-xilinx-standalone-experimental/classes/esw.bbclass index f133662a..febdebad 100644 --- a/meta-xilinx-standalone-experimental/classes/esw.bbclass +++ b/meta-xilinx-standalone-experimental/classes/esw.bbclass | |||
@@ -26,7 +26,7 @@ COMPATIBLE_HOST = ".*-elf" | |||
26 | COMPATIBLE_HOST:arm = "[^-]*-[^-]*-eabi" | 26 | COMPATIBLE_HOST:arm = "[^-]*-[^-]*-eabi" |
27 | 27 | ||
28 | CONFIG_DTFILE ??= "" | 28 | CONFIG_DTFILE ??= "" |
29 | DTS_FILE = "${DEPLOY_DIR_IMAGE}/devicetree/${@os.path.basename(d.getVar('CONFIG_DTFILE'))}" | 29 | DTS_FILE = "${DEPLOY_DIR_IMAGE}/devicetree/${@os.path.basename(d.getVar('CONFIG_DTFILE').replace('.dts','.dtb'))}" |
30 | 30 | ||
31 | DEPENDS += "python3-pyyaml-native lopper-native device-tree python3-dtc-native" | 31 | DEPENDS += "python3-pyyaml-native lopper-native device-tree python3-dtc-native" |
32 | 32 | ||
@@ -48,9 +48,9 @@ def get_xlnx_cmake_machine(fam, d): | |||
48 | def get_xlnx_cmake_processor(tune, machine, d): | 48 | def get_xlnx_cmake_processor(tune, machine, d): |
49 | cmake_processor = tune | 49 | cmake_processor = tune |
50 | if tune.startswith('microblaze'): | 50 | if tune.startswith('microblaze'): |
51 | if (machine == 'microblaze-pmu'): | 51 | if (machine == 'psu_pmu_0'): |
52 | cmake_processor = 'pmu_microblaze' | 52 | cmake_processor = 'pmu_microblaze' |
53 | elif (machine == 'microblaze-plm'): | 53 | elif (machine == 'psv_pmc_0'): |
54 | cmake_processor = 'plm_microblaze' | 54 | cmake_processor = 'plm_microblaze' |
55 | else: | 55 | else: |
56 | cmake_processor = 'microblaze' | 56 | cmake_processor = 'microblaze' |
@@ -79,6 +79,11 @@ cmake_do_generate_toolchain_file:append() { | |||
79 | # Will need this in the future to make cmake understand esw variables | 79 | # Will need this in the future to make cmake understand esw variables |
80 | # set( CMAKE_SYSTEM_NAME `echo elf | sed -e 's/^./\u&/' -e 's/^\(Linux\).*/\1/'` ) | 80 | # set( CMAKE_SYSTEM_NAME `echo elf | sed -e 's/^./\u&/' -e 's/^\(Linux\).*/\1/'` ) |
81 | set( CMAKE_SYSTEM_NAME "${XLNX_CMAKE_SYSTEM_NAME}" ) | 81 | set( CMAKE_SYSTEM_NAME "${XLNX_CMAKE_SYSTEM_NAME}" ) |
82 | set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${S}/cmake) | ||
83 | set( CMAKE_LIBRARY_PATH ${CMAKE_INSTALL_LIBDIR}) | ||
84 | if ("${XLNX_CMAKE_PROCESSOR}" STREQUAL "plm_microblaze") | ||
85 | set( CMAKE_BUILD_TYPE Release) | ||
86 | endif() | ||
82 | add_definitions( "${XLNX_CMAKE_BSP_VARS}" ) | 87 | add_definitions( "${XLNX_CMAKE_BSP_VARS}" ) |
83 | EOF | 88 | EOF |
84 | } | 89 | } |
@@ -119,7 +124,7 @@ python do_generate_driver_data() { | |||
119 | src_dir = glob.glob(d.getVar('OECMAKE_SOURCEPATH')) | 124 | src_dir = glob.glob(d.getVar('OECMAKE_SOURCEPATH')) |
120 | machine = d.getVar('ESW_MACHINE') | 125 | machine = d.getVar('ESW_MACHINE') |
121 | 126 | ||
122 | driver_name = d.getVar('REQUIRED_DISTRO_FEATURES') | 127 | driver_name = d.getVar('REQUIRED_MACHINE_FEATURES') |
123 | 128 | ||
124 | if len(system_dt) == 0: | 129 | if len(system_dt) == 0: |
125 | bb.error("Couldn't find device tree %s" % d.getVar('DTS_FILE')) | 130 | bb.error("Couldn't find device tree %s" % d.getVar('DTS_FILE')) |
diff --git a/meta-xilinx-standalone-experimental/classes/esw_examples.bbclass b/meta-xilinx-standalone-experimental/classes/esw_examples.bbclass index 508da535..43e78191 100644 --- a/meta-xilinx-standalone-experimental/classes/esw_examples.bbclass +++ b/meta-xilinx-standalone-experimental/classes/esw_examples.bbclass | |||
@@ -6,7 +6,6 @@ do_configure:prepend() { | |||
6 | ( | 6 | ( |
7 | cd ${S} | 7 | cd ${S} |
8 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 8 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
9 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
10 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 9 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
11 | ) | 10 | ) |
12 | } | 11 | } |
diff --git a/meta-xilinx-standalone-experimental/conf/dtb-embeddedsw.inc b/meta-xilinx-standalone-experimental/conf/dtb-embeddedsw.inc index 2b461993..b252e609 100644 --- a/meta-xilinx-standalone-experimental/conf/dtb-embeddedsw.inc +++ b/meta-xilinx-standalone-experimental/conf/dtb-embeddedsw.inc | |||
@@ -2,11 +2,13 @@ | |||
2 | # meta-xilinx/meta-xilinx-standalone/classes/xlnx-embeddedsw.bbclass | 2 | # meta-xilinx/meta-xilinx-standalone/classes/xlnx-embeddedsw.bbclass |
3 | 3 | ||
4 | # Make it clear decoupling is 'experimental' in the version | 4 | # Make it clear decoupling is 'experimental' in the version |
5 | ESW_VER = "experimental" | 5 | ESW_VER = "2023.1_sdt_experimental" |
6 | 6 | ||
7 | REPO = "git://github.com/Xilinx/embeddedsw-experimental-dt-support.git;protocol=https" | 7 | REPO = "git://github.com/Xilinx/embeddedsw-experimental-dt-support.git;protocol=https" |
8 | 8 | ||
9 | ESW_BRANCH[experimental] = "xlnx_rel_v2022.1_sdt_experimental_beta" | 9 | ESW_BRANCH[2023.1_sdt_experimental] = "xlnx_rel_v2023.1_sdt" |
10 | ESW_REV[experimental] = "2f93defe078000965c8f7203da11817c9f0982d1" | 10 | ESW_REV[2023.1_sdt_experimental] = "b47bfef27d7af0690add590b9c98e6fc51a1a1f6" |
11 | LIC_FILES_CHKSUM[master] = '7c92de7a21a6613265035c28f4a92f48' | 11 | LIC_FILES_CHKSUM[master] = '7c92de7a21a6613265035c28f4a92f48' |
12 | LIC_FILES_CHKSUM[xlnx_rel_v2022.1_sdt_experimental_beta] = 'e26f53a7d6f58f4b1a9687099417225c' | 12 | LIC_FILES_CHKSUM[xlnx_rel_v2022.1_sdt_experimental_beta] = 'e26f53a7d6f58f4b1a9687099417225c' |
13 | LIC_FILES_CHKSUM[xlnx_rel_v2023.1_sdt_experimental] = 'ce611484168a6000bd35df68fc4f4290' | ||
14 | LIC_FILES_CHKSUM[xlnx_rel_v2023.1_sdt] = 'ce611484168a6000bd35df68fc4f4290' | ||
diff --git a/meta-xilinx-standalone-experimental/conf/layer.conf b/meta-xilinx-standalone-experimental/conf/layer.conf index 54098905..12734173 100644 --- a/meta-xilinx-standalone-experimental/conf/layer.conf +++ b/meta-xilinx-standalone-experimental/conf/layer.conf | |||
@@ -12,6 +12,9 @@ BBFILE_COLLECTIONS += "xilinx-standalone-exp" | |||
12 | BBFILE_PATTERN_xilinx-standalone-exp = "^${LAYERDIR}/" | 12 | BBFILE_PATTERN_xilinx-standalone-exp = "^${LAYERDIR}/" |
13 | BBFILE_PRIORITY_xilinx-standalone-exp = "7" | 13 | BBFILE_PRIORITY_xilinx-standalone-exp = "7" |
14 | 14 | ||
15 | # Allow other layers to find the root of this layer if necessary | ||
16 | META_XILINX_STANDALONE_EXP_PATH = "${LAYERDIR}" | ||
17 | |||
15 | LAYERDEPENDS_xilinx-standalone-exp = "core \ | 18 | LAYERDEPENDS_xilinx-standalone-exp = "core \ |
16 | xilinx \ | 19 | xilinx \ |
17 | xilinx-standalone \ | 20 | xilinx-standalone \ |
@@ -20,3 +23,6 @@ LAYERDEPENDS_xilinx-standalone-exp = "core \ | |||
20 | " | 23 | " |
21 | 24 | ||
22 | LAYERSERIES_COMPAT_xilinx-standalone-exp = "mickledore" | 25 | LAYERSERIES_COMPAT_xilinx-standalone-exp = "mickledore" |
26 | |||
27 | # Aid debugging, show where the device trees are we are using | ||
28 | BUILDCFG_VARS:append = " SYSTEM_DTFILE CONFIG_DTFILE" | ||
diff --git a/meta-xilinx-standalone-experimental/conf/multiconfig/pmumc.conf b/meta-xilinx-standalone-experimental/conf/multiconfig/pmumc.conf deleted file mode 100644 index 756ea94a..00000000 --- a/meta-xilinx-standalone-experimental/conf/multiconfig/pmumc.conf +++ /dev/null | |||
@@ -1,8 +0,0 @@ | |||
1 | MACHINE = "microblaze-pmu" | ||
2 | DISTRO = "xilinx-standalone" | ||
3 | TMPDIR = "${TOPDIR}/tmp-${MACHINE}-${TCLIBC}" | ||
4 | |||
5 | # These should be temporary until the dtg repo has the correct design | ||
6 | HDF_BASE ?= "file://" | ||
7 | HDF_PATH ?= "${TOPDIR}/system.dsa" | ||
8 | HDF_EXT ?= "dsa" | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/empty-application/empty-application_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/empty-application/empty-application_git.bb index 8ffb01cb..d62779ae 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/empty-application/empty-application_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/empty-application/empty-application_git.bb | |||
@@ -10,9 +10,10 @@ do_configure:prepend() { | |||
10 | ( | 10 | ( |
11 | cd ${S} | 11 | cd ${S} |
12 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 12 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
13 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | 13 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} |
14 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 14 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
15 | install -m 0644 ${CUSTOM_SRCFILE}/* ${S}/${ESW_COMPONENT_SRC}/ | 15 | install -m 0644 ${CUSTOM_SRCFILE}/* ${S}/${ESW_COMPONENT_SRC}/ |
16 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
16 | ) | 17 | ) |
17 | } | 18 | } |
18 | 19 | ||
@@ -25,10 +26,10 @@ inherit image-artifact-names | |||
25 | 26 | ||
26 | CUSTOM_APP_BASE_NAME ?= "${CUSTOM_APP_IMAGE_NAME}-${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" | 27 | CUSTOM_APP_BASE_NAME ?= "${CUSTOM_APP_IMAGE_NAME}-${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" |
27 | 28 | ||
28 | ESW_COMPONENT ??= "executable.elf" | 29 | ESW_COMPONENT ??= "empty_application.elf" |
29 | 30 | ||
30 | do_compile:append() { | 31 | do_compile:append() { |
31 | ${OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/executable.bin | 32 | ${OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/empty_application.bin |
32 | } | 33 | } |
33 | 34 | ||
34 | do_install() { | 35 | do_install() { |
@@ -38,7 +39,7 @@ do_install() { | |||
38 | do_deploy() { | 39 | do_deploy() { |
39 | install -Dm 0644 ${B}/${ESW_COMPONENT} ${DEPLOYDIR}/${CUSTOM_APP_BASE_NAME}.elf | 40 | install -Dm 0644 ${B}/${ESW_COMPONENT} ${DEPLOYDIR}/${CUSTOM_APP_BASE_NAME}.elf |
40 | ln -sf ${CUSTOM_APP_BASE_NAME}.elf ${DEPLOYDIR}/${CUSTOM_APP_IMAGE_NAME}.elf | 41 | ln -sf ${CUSTOM_APP_BASE_NAME}.elf ${DEPLOYDIR}/${CUSTOM_APP_IMAGE_NAME}.elf |
41 | install -m 0644 ${B}/executable.bin ${DEPLOYDIR}/${CUSTOM_APP_BASE_NAME}.bin | 42 | install -m 0644 ${B}/empty_application.bin ${DEPLOYDIR}/${CUSTOM_APP_BASE_NAME}.bin |
42 | ln -sf ${CUSTOM_APP_BASE_NAME}.bin ${DEPLOYDIR}/${CUSTOM_APP_IMAGE_NAME}.bin | 43 | ln -sf ${CUSTOM_APP_BASE_NAME}.bin ${DEPLOYDIR}/${CUSTOM_APP_IMAGE_NAME}.bin |
43 | } | 44 | } |
44 | addtask deploy before do_build after do_install | 45 | addtask deploy before do_build after do_install |
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/freertos-hello-world/freertos-hello-world_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/freertos-hello-world/freertos-hello-world_git.bb index f97240f8..8106684b 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/freertos-hello-world/freertos-hello-world_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/freertos-hello-world/freertos-hello-world_git.bb | |||
@@ -8,8 +8,9 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} |
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
13 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
13 | ) | 14 | ) |
14 | } | 15 | } |
15 | 16 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-echo-server/freertos-lwip-echo-server_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-echo-server/freertos-lwip-echo-server_git.bb index 5e58c601..f7eae1dc 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-echo-server/freertos-lwip-echo-server_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-echo-server/freertos-lwip-echo-server_git.bb | |||
@@ -8,8 +8,9 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} |
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
13 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
13 | ) | 14 | ) |
14 | } | 15 | } |
15 | 16 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-client/freertos-lwip-tcp-perf-client_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-client/freertos-lwip-tcp-perf-client_git.bb index e4a2b041..51b89b8e 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-client/freertos-lwip-tcp-perf-client_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-client/freertos-lwip-tcp-perf-client_git.bb | |||
@@ -8,8 +8,9 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} |
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
13 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
13 | ) | 14 | ) |
14 | } | 15 | } |
15 | 16 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-server/freertos-lwip-tcp-perf-server_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-server/freertos-lwip-tcp-perf-server_git.bb index bf892954..606fd01e 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-server/freertos-lwip-tcp-perf-server_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-server/freertos-lwip-tcp-perf-server_git.bb | |||
@@ -8,8 +8,9 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} |
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
13 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
13 | ) | 14 | ) |
14 | } | 15 | } |
15 | 16 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-udp-perf-client/freertos-lwip-udp-perf-client_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-udp-perf-client/freertos-lwip-udp-perf-client_git.bb index 0a28d3df..7f9d86e2 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-udp-perf-client/freertos-lwip-udp-perf-client_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-udp-perf-client/freertos-lwip-udp-perf-client_git.bb | |||
@@ -8,8 +8,9 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
12 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
13 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
13 | ) | 14 | ) |
14 | } | 15 | } |
15 | 16 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-udp-perf-server/freertos-lwip-udp-perf-server_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-udp-perf-server/freertos-lwip-udp-perf-server_git.bb index 0212dab2..4fc02f36 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-udp-perf-server/freertos-lwip-udp-perf-server_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-udp-perf-server/freertos-lwip-udp-perf-server_git.bb | |||
@@ -8,8 +8,9 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
12 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
13 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
13 | ) | 14 | ) |
14 | } | 15 | } |
15 | 16 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/hello-world/hello-world_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/hello-world/hello-world_git.bb index 16d9d030..1de5ef8c 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/hello-world/hello-world_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/hello-world/hello-world_git.bb | |||
@@ -10,8 +10,9 @@ do_configure:prepend() { | |||
10 | ( | 10 | ( |
11 | cd ${S} | 11 | cd ${S} |
12 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 12 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
13 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
14 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 13 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
14 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
15 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
15 | ) | 16 | ) |
16 | } | 17 | } |
17 | 18 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/lwip-echo-server/lwip-echo-server_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/lwip-echo-server/lwip-echo-server_git.bb index 84909f18..c59d816e 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/lwip-echo-server/lwip-echo-server_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/lwip-echo-server/lwip-echo-server_git.bb | |||
@@ -8,8 +8,9 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
12 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
13 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
13 | ) | 14 | ) |
14 | } | 15 | } |
15 | 16 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/lwip-tcp-perf-client/lwip-tcp-perf-client_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/lwip-tcp-perf-client/lwip-tcp-perf-client_git.bb index eea50f60..b9834e34 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/lwip-tcp-perf-client/lwip-tcp-perf-client_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/lwip-tcp-perf-client/lwip-tcp-perf-client_git.bb | |||
@@ -8,8 +8,9 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
12 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
13 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
13 | ) | 14 | ) |
14 | } | 15 | } |
15 | 16 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/lwip-tcp-perf-server/lwip-tcp-perf-server_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/lwip-tcp-perf-server/lwip-tcp-perf-server_git.bb index fac6ace0..0acc4b8f 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/lwip-tcp-perf-server/lwip-tcp-perf-server_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/lwip-tcp-perf-server/lwip-tcp-perf-server_git.bb | |||
@@ -8,8 +8,9 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
12 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
13 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
13 | ) | 14 | ) |
14 | } | 15 | } |
15 | 16 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/lwip-udp-perf-client/lwip-udp-perf-client_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/lwip-udp-perf-client/lwip-udp-perf-client_git.bb index 0c1b1f9b..00a9eaa6 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/lwip-udp-perf-client/lwip-udp-perf-client_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/lwip-udp-perf-client/lwip-udp-perf-client_git.bb | |||
@@ -8,8 +8,9 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
12 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
13 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
13 | ) | 14 | ) |
14 | } | 15 | } |
15 | 16 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/lwip-udp-perf-server/lwip-udp-perf-server_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/lwip-udp-perf-server/lwip-udp-perf-server_git.bb index 8973ee60..5f54caf9 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/lwip-udp-perf-server/lwip-udp-perf-server_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/lwip-udp-perf-server/lwip-udp-perf-server_git.bb | |||
@@ -8,8 +8,9 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
12 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
13 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
13 | ) | 14 | ) |
14 | } | 15 | } |
15 | 16 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/memory-tests/memory-tests_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/memory-tests/memory-tests_git.bb index f2af00f6..1ece5a8c 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/memory-tests/memory-tests_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/memory-tests/memory-tests_git.bb | |||
@@ -10,15 +10,16 @@ do_configure:prepend() { | |||
10 | ( | 10 | ( |
11 | cd ${S} | 11 | cd ${S} |
12 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} memtest | 12 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} memtest |
13 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
14 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 13 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
14 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
15 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
15 | ) | 16 | ) |
16 | } | 17 | } |
17 | 18 | ||
18 | do_install() { | 19 | do_install() { |
19 | install -d ${D}/${base_libdir}/firmware | 20 | install -d ${D}/${base_libdir}/firmware |
20 | # Note that we have to make the ELF executable for it to be stripped | 21 | # Note that we have to make the ELF executable for it to be stripped |
21 | install -m 0755 ${B}/memory_test* ${D}/${base_libdir}/firmware | 22 | install -m 0755 ${B}/memory_tests* ${D}/${base_libdir}/firmware |
22 | } | 23 | } |
23 | 24 | ||
24 | inherit image-artifact-names | 25 | inherit image-artifact-names |
@@ -28,13 +29,13 @@ MEMORY_TESTS_BASE_NAME ?= "${BPN}-${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERS | |||
28 | do_deploy() { | 29 | do_deploy() { |
29 | 30 | ||
30 | # We need to deploy the stripped elf, hence why not doing it from ${D} | 31 | # We need to deploy the stripped elf, hence why not doing it from ${D} |
31 | install -Dm 0644 ${WORKDIR}/package/${base_libdir}/firmware/memory_test.elf ${DEPLOYDIR}/${MEMORY_TESTS_BASE_NAME}.elf | 32 | install -Dm 0644 ${WORKDIR}/package/${base_libdir}/firmware/memory_tests.elf ${DEPLOYDIR}/${MEMORY_TESTS_BASE_NAME}.elf |
32 | ln -sf ${MEMORY_TESTS_BASE_NAME}.elf ${DEPLOYDIR}/${BPN}-${MACHINE}.elf | 33 | ln -sf ${MEMORY_TESTS_BASE_NAME}.elf ${DEPLOYDIR}/${BPN}-${MACHINE}.elf |
33 | ${OBJCOPY} -O binary ${WORKDIR}/package/${base_libdir}/firmware/memory_test.elf ${WORKDIR}/package/${base_libdir}/firmware/memory_test.bin | 34 | ${OBJCOPY} -O binary ${WORKDIR}/package/${base_libdir}/firmware/memory_tests.elf ${WORKDIR}/package/${base_libdir}/firmware/memory_tests.bin |
34 | install -m 0644 ${WORKDIR}/package/${base_libdir}/firmware/memory_test.bin ${DEPLOYDIR}/${MEMORY_TESTS_BASE_NAME}.bin | 35 | install -m 0644 ${WORKDIR}/package/${base_libdir}/firmware/memory_tests.bin ${DEPLOYDIR}/${MEMORY_TESTS_BASE_NAME}.bin |
35 | ln -sf ${MEMORY_TESTS_BASE_NAME}.bin ${DEPLOYDIR}/${BPN}-${MACHINE}.bin | 36 | ln -sf ${MEMORY_TESTS_BASE_NAME}.bin ${DEPLOYDIR}/${BPN}-${MACHINE}.bin |
36 | } | 37 | } |
37 | 38 | ||
38 | addtask deploy before do_build after do_package | 39 | addtask deploy before do_build after do_package |
39 | 40 | ||
40 | FILES:${PN} = "${base_libdir}/firmware/memory_test*" | 41 | FILES:${PN} = "${base_libdir}/firmware/memory_tests*" |
diff --git a/meta-xilinx-standalone-experimental/recipes-applications/peripheral-tests/peripheral-tests_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/peripheral-tests/peripheral-tests_git.bb index 21422739..b6b15d5a 100644 --- a/meta-xilinx-standalone-experimental/recipes-applications/peripheral-tests/peripheral-tests_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-applications/peripheral-tests/peripheral-tests_git.bb | |||
@@ -10,8 +10,9 @@ do_configure:prepend() { | |||
10 | ( | 10 | ( |
11 | cd ${S} | 11 | cd ${S} |
12 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 12 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
13 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
14 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 13 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
14 | cp -rf ${S}/scripts/linker_files/ ${S}/${ESW_COMPONENT_SRC}/linker_files | ||
15 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
15 | ) | 16 | ) |
16 | } | 17 | } |
17 | 18 | ||
@@ -29,13 +30,9 @@ python do_generate_app_data() { | |||
29 | if len(src_dir) == 0: | 30 | if len(src_dir) == 0: |
30 | bb.error("Couldn't find source dir %s" % d.getVar('OECMAKE_SOURCEPATH')) | 31 | bb.error("Couldn't find source dir %s" % d.getVar('OECMAKE_SOURCEPATH')) |
31 | 32 | ||
32 | driver_name = d.getVar('REQUIRED_DISTRO_FEATURES') | 33 | driver_name = d.getVar('REQUIRED_MACHINE_FEATURES') |
33 | command = ["lopper"] + ["-f"] + [system_dt[0]] + ["--"] + ["baremetal_gentestapp_xlnx"] + [machine] + [srcdir[0]] | 34 | command = ["lopper"] + ["-f"] + ["-O"] + [src_dir[0]] + [system_dt[0]] + ["--"] + ["baremetal_gentestapp_xlnx"] + [machine] + [srcdir[0]] |
34 | subprocess.run(command, check = True) | 35 | subprocess.run(command, check = True) |
35 | with open("file_list.txt", 'r') as fd: | ||
36 | for line in fd: | ||
37 | command = ["install"] + ["-m"] + ["0755"] + [line.strip()] + [src_dir[0]] | ||
38 | subprocess.run(command, check = True) | ||
39 | } | 36 | } |
40 | addtask do_generate_app_data before do_configure after do_prepare_recipe_sysroot | 37 | addtask do_generate_app_data before do_configure after do_prepare_recipe_sysroot |
41 | do_prepare_recipe_sysroot[rdeptask] = "do_unpack" | 38 | do_prepare_recipe_sysroot[rdeptask] = "do_unpack" |
@@ -46,10 +43,10 @@ inherit image-artifact-names | |||
46 | 43 | ||
47 | PERIPHERAL_TEST_BASE_NAME ?= "${PERIPHERAL_TEST_APP_IMAGE_NAME}-${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" | 44 | PERIPHERAL_TEST_BASE_NAME ?= "${PERIPHERAL_TEST_APP_IMAGE_NAME}-${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}" |
48 | 45 | ||
49 | ESW_COMPONENT ??= "executable.elf" | 46 | ESW_COMPONENT ??= "peripheral_tests.elf" |
50 | 47 | ||
51 | do_compile:append() { | 48 | do_compile:append() { |
52 | ${OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/executable.bin | 49 | ${OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/peripheral_tests.bin |
53 | } | 50 | } |
54 | 51 | ||
55 | do_install() { | 52 | do_install() { |
@@ -59,7 +56,7 @@ do_install() { | |||
59 | do_deploy() { | 56 | do_deploy() { |
60 | install -Dm 0644 ${B}/${ESW_COMPONENT} ${DEPLOYDIR}/${PERIPHERAL_TEST_BASE_NAME}.elf | 57 | install -Dm 0644 ${B}/${ESW_COMPONENT} ${DEPLOYDIR}/${PERIPHERAL_TEST_BASE_NAME}.elf |
61 | ln -sf ${PERIPHERAL_TEST_BASE_NAME}.elf ${DEPLOYDIR}/${BPN}-${MACHINE}.elf | 58 | ln -sf ${PERIPHERAL_TEST_BASE_NAME}.elf ${DEPLOYDIR}/${BPN}-${MACHINE}.elf |
62 | install -m 0644 ${B}/executable.bin ${DEPLOYDIR}/${PERIPHERAL_TEST_BASE_NAME}.bin | 59 | install -m 0644 ${B}/peripheral_tests.bin ${DEPLOYDIR}/${PERIPHERAL_TEST_BASE_NAME}.bin |
63 | ln -sf ${PERIPHERAL_TEST_BASE_NAME}.bin ${DEPLOYDIR}/${BPN}-${MACHINE}.bin | 60 | ln -sf ${PERIPHERAL_TEST_BASE_NAME}.bin ${DEPLOYDIR}/${BPN}-${MACHINE}.bin |
64 | } | 61 | } |
65 | addtask deploy before do_build after do_install | 62 | addtask deploy before do_build after do_install |
diff --git a/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/fsbl-firmware_git.bbappend b/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/fsbl-firmware_git.bbappend index 43dcc106..d40f3cdb 100644 --- a/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/fsbl-firmware_git.bbappend +++ b/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/fsbl-firmware_git.bbappend | |||
@@ -49,6 +49,7 @@ do_configure:prepend() { | |||
49 | else | 49 | else |
50 | bbwarn "Using the default psu_init.h, this may not work correctly." | 50 | bbwarn "Using the default psu_init.h, this may not work correctly." |
51 | fi | 51 | fi |
52 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
52 | } | 53 | } |
53 | 54 | ||
54 | do_install() { | 55 | do_install() { |
diff --git a/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/plm-firmware_git.bbappend b/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/plm-firmware_git.bbappend index 8a72a184..cc6d757f 100644 --- a/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/plm-firmware_git.bbappend +++ b/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/plm-firmware_git.bbappend | |||
@@ -10,6 +10,13 @@ ESW_COMPONENT_SRC = "/lib/sw_apps/versal_plm/src/" | |||
10 | 10 | ||
11 | ESW_COMPONENT = "versal_plm.elf" | 11 | ESW_COMPONENT = "versal_plm.elf" |
12 | 12 | ||
13 | do_configure:prepend() { | ||
14 | ( | ||
15 | cd ${S} | ||
16 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
17 | ) | ||
18 | } | ||
19 | |||
13 | do_compile:append() { | 20 | do_compile:append() { |
14 | ${MB_OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/${ESW_COMPONENT}.bin | 21 | ${MB_OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/${ESW_COMPONENT}.bin |
15 | } | 22 | } |
diff --git a/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/pmu-firmware_git.bbappend b/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/pmu-firmware_git.bbappend index dd0a3d92..b5908d46 100644 --- a/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/pmu-firmware_git.bbappend +++ b/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/pmu-firmware_git.bbappend | |||
@@ -8,7 +8,15 @@ inherit esw | |||
8 | 8 | ||
9 | ESW_COMPONENT_SRC = "/lib/sw_apps/zynqmp_pmufw/src" | 9 | ESW_COMPONENT_SRC = "/lib/sw_apps/zynqmp_pmufw/src" |
10 | 10 | ||
11 | ESW_COMPONENT = "pmufw.elf" | 11 | ESW_COMPONENT = "zynqmp_pmufw.elf" |
12 | |||
13 | |||
14 | do_configure:prepend() { | ||
15 | ( | ||
16 | cd ${S} | ||
17 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
18 | ) | ||
19 | } | ||
12 | 20 | ||
13 | do_compile:append() { | 21 | do_compile:append() { |
14 | ${MB_OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/${ESW_COMPONENT}.bin | 22 | ${MB_OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/${ESW_COMPONENT}.bin |
diff --git a/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/psm-firmware_git.bbappend b/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/psm-firmware_git.bbappend index 9b3d6475..c4953ce7 100644 --- a/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/psm-firmware_git.bbappend +++ b/meta-xilinx-standalone-experimental/recipes-bsp/embeddedsw/psm-firmware_git.bbappend | |||
@@ -10,6 +10,13 @@ ESW_COMPONENT_SRC = "/lib/sw_apps/versal_psmfw/src/" | |||
10 | 10 | ||
11 | ESW_COMPONENT = "versal_psmfw.elf" | 11 | ESW_COMPONENT = "versal_psmfw.elf" |
12 | 12 | ||
13 | do_configure:prepend() { | ||
14 | ( | ||
15 | cd ${S} | ||
16 | install -m 0644 ${S}/cmake/UserConfig.cmake ${S}/${ESW_COMPONENT_SRC} | ||
17 | ) | ||
18 | } | ||
19 | |||
13 | do_compile:append() { | 20 | do_compile:append() { |
14 | ${MB_OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/${ESW_COMPONENT}.bin | 21 | ${MB_OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/${ESW_COMPONENT}.bin |
15 | } | 22 | } |
diff --git a/meta-xilinx-standalone-experimental/recipes-core/meta/files/README-setup b/meta-xilinx-standalone-experimental/recipes-core/meta/files/README-setup index 88046966..0a5736d8 100644 --- a/meta-xilinx-standalone-experimental/recipes-core/meta/files/README-setup +++ b/meta-xilinx-standalone-experimental/recipes-core/meta/files/README-setup | |||
@@ -1,25 +1,12 @@ | |||
1 | Document Version: 20211209 | 1 | Document Version: 20230112 |
2 | 2 | ||
3 | The Yocto Project setup for the new workflow is as follows. Be sure to read | 3 | The Yocto Project setup for the System Device Tree workflow is as follows. |
4 | everything below, as the steps will be updated in the future if the | 4 | Be sure to read everything below, as the steps will be updated in the future |
5 | setup script changes. | 5 | if the setup script changes. |
6 | 6 | ||
7 | The steps in this document expect that you have already built the setup | 7 | The steps in this document expect that you have already built the setup |
8 | (meta-xilinx-setup) SDK, and installed it. | 8 | (meta-xilinx-setup) SDK, and installed it. |
9 | 9 | ||
10 | * Configure you local.conf | ||
11 | |||
12 | The following items should be in your conf/local.conf. This ensures that | ||
13 | the correct configurations are available, and the correct firmware version | ||
14 | is selected for this workflow. | ||
15 | |||
16 | # Instruct the system to use the decoupling firmware sources, | ||
17 | # add the following to the conf/local.conf: | ||
18 | PREFERRED_VERSION_fsbl-firmware = "experimental%" | ||
19 | PREFERRED_VERSION_pmu-firmware = "experimental%" | ||
20 | PREFERRED_VERSION_plm-firmware = "experimental%" | ||
21 | PREFERRED_VERSION_psm-firmware = "experimental%" | ||
22 | |||
23 | * Run the setup script | 10 | * Run the setup script |
24 | 11 | ||
25 | The setup environment should be run in a new shell (not the build shell) | 12 | The setup environment should be run in a new shell (not the build shell) |
@@ -28,68 +15,88 @@ to ensure that you do not contaminate the environment for your build. | |||
28 | We will assume below that the directory "prestep" was used for the SDK, | 15 | We will assume below that the directory "prestep" was used for the SDK, |
29 | however you may use any path you wish. | 16 | however you may use any path you wish. |
30 | 17 | ||
31 | # Source the SDK environment file | 18 | Source the SDK environment file |
32 | . <build>/prestep/environment-setup-x86_64-petalinux-linux | 19 | $ . <build>/prestep/environment-setup-x86_64-petalinux-linux |
33 | 20 | ||
34 | # Run the script from the same directory as this README | 21 | Run the script from the same directory as this README |
35 | <build>/prestep/dt-processor.sh -c <conf> -s <dtb> | 22 | $ <build>/prestep/dt-processor.sh -c <conf> -s <dtb> -l conf/local.conf |
36 | 23 | ||
37 | # For example, zynqmp: | 24 | Note: The -l option will automatically add the necessary parameters to the |
38 | # <build>/prestep/dt-processor.sh -c <build>/conf -s <device-tree>/zu-sdt/system-top.dts | 25 | local.conf file. If you need to re-run this comment, you just clear the |
39 | # | 26 | parameters from the end of the file. Without the -l option the items are |
40 | # Follow the instructions returned by the script! | 27 | printed to the screen and must be manually added to your conf/local.conf |
41 | # Such as: | 28 | |
42 | 29 | For example, zynqmp: | |
43 | To enable this, add the following to your local.conf: | 30 | $ ./prestep/dt-processor.sh -c conf -s /proj/yocto/zcu102-sdt/system-top.dts -l conf/local.conf |
44 | 31 | ||
45 | # Adjust BASE_TMPDIR if you want to move the tmpdirs elsewhere | 32 | The following will be written to the end of the conf/local.conf file: |
46 | BASE_TMPDIR = "${TOPDIR}" | 33 | |
47 | require conf/cortexa53-zynqmp-linux.conf | 34 | # Each multiconfig will define it's own TMPDIR, this is the new default based |
48 | SYSTEM_DTFILE = "/proj/yocto/zu_sdt/system-top.dts" | 35 | # on BASE_TMPDIR for the Linux build |
49 | BBMULTICONFIG += " cortexa53-zynqmp-fsbl-baremetal cortexa53-zynqmp-baremetal cortexa53-zynqmp-freertos cortexr5-zynqmp-fsbl-baremetal cortexr5-zynqmp-baremetal cortexr5-zynqmp-freertos microblaze-pmu" | 36 | TMPDIR = "${BASE_TMPDIR}/tmp" |
50 | FSBL_DEPENDS = "" | 37 | |
51 | FSBL_MCDEPENDS = "mc::cortexa53-zynqmp-fsbl-baremetal:fsbl-firmware:do_deploy" | 38 | # Use the newly generated MACHINE |
52 | FSBL_DEPLOY_DIR = "${BASE_TMPDIR}/tmp-cortexa53-zynqmp-fsbl-baremetal/deploy/images/${MACHINE}" | 39 | MACHINE = "xlnx-zynqmp-zcu102-rev1-0" |
53 | R5FSBL_DEPENDS = "" | 40 | |
54 | R5FSBL_MCDEPENDS = "mc::cortexr5-zynqmp-fsbl-baremetal:fsbl-firmware:do_deploy" | 41 | # All of the TMPDIRs must be in a common parent directory. This is defined |
55 | R5FSBL_DEPLOY_DIR = "${BASE_TMPDIR}/tmp-cortexr5-zynqmp-fsbl-baremetal/deploy/images/${MACHINE}" | 42 | # as BASE_TMPDIR. |
56 | PMU_DEPENDS = "" | 43 | # Adjust BASE_TMPDIR if you want to move the tmpdirs elsewhere, such as /tmp |
57 | PMU_MCDEPENDS = "mc::microblaze-pmu:pmu-firmware:do_deploy" | 44 | BASE_TMPDIR ?= "${TOPDIR}" |
58 | PMU_FIRMWARE_DEPLOY_DIR = "${BASE_TMPDIR}/tmp-microblaze-pmu/deploy/images/${MACHINE}" | 45 | |
59 | 46 | # The following is the full set of multiconfigs for this configuration | |
60 | # | 47 | # A large list can cause a slow parse. |
61 | # OR | 48 | BBMULTICONFIG = " cortexa53-0-zynqmp-fsbl-baremetal cortexa53-0-zynqmp-baremetal cortexa53-0-zynqmp-freertos cortexa53-1-zynqmp-baremetal cortexa53-1-zynqmp-freertos cortexa53-2-zynqmp-baremetal cortexa53-2-zynqmp-freertos cortexa53-3-zynqmp-baremetal cortexa53-3-zynqmp-freertos cortexr5-0-zynqmp-fsbl-baremetal cortexr5-0-zynqmp-baremetal cortexr5-0-zynqmp-freertos cortexr5-1-zynqmp-baremetal cortexr5-1-zynqmp-freertos microblaze-0-pmu" |
62 | # | 49 | # Alternatively trim the list to the minimum |
63 | # Versal: | 50 | #BBMULTICONFIG = " cortexa53-0-zynqmp-fsbl-baremetal microblaze-0-pmu" |
64 | # <build>/prestep/dt-processor.sh -c <build>/conf -s <device-tree>/vck190-sdt/system-top.dts | 51 | |
65 | # | 52 | |
66 | # Follow the instructions returned by the script! | 53 | For example, versal: |
67 | # Such as: | 54 | $ ./prestep/dt-processor.sh -c conf -s /proj/yocto/vmk180-sdt/system-top.dts -l conf/local.conf |
68 | 55 | ||
69 | To enable this, add the following to your local.conf: | 56 | The following will be written to the end of the conf/local.conf file: |
70 | 57 | ||
71 | # Adjust BASE_TMPDIR if you want to move the tmpdirs elsewhere | 58 | # Each multiconfig will define it's own TMPDIR, this is the new default based |
72 | BASE_TMPDIR = "${TOPDIR}" | 59 | # on BASE_TMPDIR for the Linux build |
73 | require conf/cortexa72-versal-linux.conf | 60 | TMPDIR = "${BASE_TMPDIR}/tmp" |
74 | SYSTEM_DTFILE = "/proj/yocto/mhatle/DTB-FLOW/testing/vck190-sdt/system-top.dts" | 61 | |
75 | BBMULTICONFIG += " cortexa72-versal-baremetal cortexa72-versal-freertos microblaze-pmc microblaze-psm cortexr5-versal-baremetal cortexr5-versal-freertos" | 62 | # Use the newly generated MACHINE |
76 | PLM_DEPENDS = "" | 63 | MACHINE = "xlnx-versal-vmk180-rev1-1-x-ebm-01-reva" |
77 | PLM_MCDEPENDS = "mc::microblaze-pmc:plm-firmware:do_deploy" | 64 | |
78 | PLM_DEPLOY_DIR = "${BASE_TMPDIR}/tmp-microblaze-pmc/deploy/images/${MACHINE}" | 65 | # All of the TMPDIRs must be in a common parent directory. This is defined |
79 | PSM_DEPENDS = "" | 66 | # as BASE_TMPDIR. |
80 | PSM_MCDEPENDS = "mc::microblaze-psm:psm-firmware:do_deploy" | 67 | # Adjust BASE_TMPDIR if you want to move the tmpdirs elsewhere, such as /tmp |
81 | PSM_FIRMWARE_DEPLOY_DIR = "${BASE_TMPDIR}/tmp-microblaze-psm/deploy/images/${MACHINE}" | 68 | BASE_TMPDIR ?= "${TOPDIR}" |
82 | PDI_PATH = "__PATH TO PDI FILE HERE__" | 69 | |
83 | 70 | # The following is the full set of multiconfigs for this configuration | |
84 | # NOTE: On versal, you MUST specify the PDI file as directed by the instructions. | 71 | # A large list can cause a slow parse. |
85 | # such as: PDI_PATH = "__PATH TO PDI FILE HERE__" | 72 | BBMULTICONFIG = " cortexa72-0-versal-baremetal cortexa72-0-versal-freertos cortexa72-1-versal-baremetal cortexa72-1-versal-freertos microblaze-0-pmc microblaze-0-psm cortexr5-0-versal-baremetal cortexr5-0-versal-freertos cortexr5-1-versal-baremetal cortexr5-1-versal-freertos" |
86 | # Use the full path to the corresponding PDI file, such as: | 73 | # Alternatively trim the list to the minimum |
87 | PDI_PATH = "/proj/yocto/vck190-sdt/base-design.pdi" | 74 | #BBMULTICONFIG = " microblaze-0-pmc microblaze-0-psm" |
88 | 75 | ||
89 | # _EXIT THE NEW SHELL_ return the build environment | 76 | |
90 | 77 | You can now EXIT THE NEW SHELL return the build environment for the remaining steps. | |
91 | ### In the original build shell | 78 | |
92 | # Build your Linux sytem: | 79 | * Bitbake Performance Note |
93 | bitbake petalinux-image-minimal | 80 | |
94 | 81 | Each BBMULTICONFIG value requires all of the recipes to be parsed for that | |
95 | # The output will be in tmp/deploy/images/... | 82 | configuration. Thus each multiconfig will add more parsing time. A long list |
83 | can lead to a very slow parse (many minutes). To speed up parsing, it is | ||
84 | suggested that you trim this down to only the configurations you require. | ||
85 | A minimum configuration is included with the generated configuration. | ||
86 | |||
87 | * Build your project | ||
88 | |||
89 | You should now be able to build your project normally. See the Yocto Project | ||
90 | documentation if you have questions on how to work with the multiconfig | ||
91 | recipes. The following is a simple build for testing. | ||
92 | |||
93 | In the original build shell | ||
94 | Build your Linux sytem: | ||
95 | $ bitbake petalinux-image-minimal | ||
96 | |||
97 | The output will be in tmp/deploy/images/... | ||
98 | |||
99 | If the system is QEMU capable execute QEMU using: | ||
100 | $ runqemu nographic slirp core-image-minimal | ||
101 | |||
102 | To terminate qemu, usually the command is ctrl-a x | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-core/meta/files/dt-processor.sh b/meta-xilinx-standalone-experimental/recipes-core/meta/files/dt-processor.sh index 22345321..939fabe4 100755 --- a/meta-xilinx-standalone-experimental/recipes-core/meta/files/dt-processor.sh +++ b/meta-xilinx-standalone-experimental/recipes-core/meta/files/dt-processor.sh | |||
@@ -34,12 +34,14 @@ usage() { | |||
34 | cat <<EOF | 34 | cat <<EOF |
35 | $0 | 35 | $0 |
36 | -c <config_dir> Location of the build conf directory | 36 | -c <config_dir> Location of the build conf directory |
37 | -s <system_dtb> Path to system DTB | 37 | -s <system_dts> Path to system dts |
38 | [-d <domain_file>] Path to domain file (.yml/.dts) | 38 | [-d <domain_file>] Path to domain file (.yml/.dts) |
39 | [-o <overlay_dtb>] Generate overlay dts | 39 | [-o <overlay_dts>] Generate overlay dts |
40 | [-e <external_fpga>] Apply a partial overlay | 40 | [-e <external_fpga>] Apply a partial overlay |
41 | [-m <machine>] zynqmp or versal | 41 | [-m <machine_conf>] The name of the machine .conf to generate |
42 | [-p <psu_init_path>] Path to psu_init files, defaults to system_dtb path | 42 | [-t <machine>] Machine type: zynqmp or versal (usually auto detected) |
43 | [-v <soc_variant>] SOC Variant: cg, dr, eg, ev, ai-prime, premium (usually auto detected) | ||
44 | [-p <psu_init_path>] Path to psu_init files, defaults to system_dts path | ||
43 | [-i <pdu_path>] Path to the pdi file | 45 | [-i <pdu_path>] Path to the pdi file |
44 | [-l <config_file>] write local.conf changes to this file | 46 | [-l <config_file>] write local.conf changes to this file |
45 | [-P <petalinux_schema>] Path to petalinux schema file | 47 | [-P <petalinux_schema>] Path to petalinux schema file |
@@ -52,14 +54,16 @@ parse_args() { | |||
52 | [ $# -eq 0 ] && usage | 54 | [ $# -eq 0 ] && usage |
53 | [ $1 = "--help" ] && usage | 55 | [ $1 = "--help" ] && usage |
54 | 56 | ||
55 | while getopts ":c:s:d:o:e:m:l:hP:p:i:" opt; do | 57 | while getopts ":c:s:d:o:e:m:l:hP:p:i:t:v:" opt; do |
56 | case ${opt} in | 58 | case ${opt} in |
57 | c) config_dir=$OPTARG ;; | 59 | c) config_dir=$OPTARG ;; |
58 | s) system_dtb=$OPTARG ;; | 60 | s) system_dts=$OPTARG ;; |
59 | o) overlay_dtb=$OPTARG ;; | 61 | o) overlay_dts=$OPTARG ;; |
60 | d) domain_file=$OPTARG ;; | 62 | d) domain_file=$OPTARG ;; |
61 | e) external_fpga=$OPTARG ;; | 63 | e) external_fpga=$OPTARG ;; |
62 | m) machine=$OPTARG ;; | 64 | m) mach_conf=$OPTARG ; mach_conf=${mach_conf%%.conf} ;; |
65 | t) machine=$OPTARG ;; | ||
66 | v) soc_variant=$OPTARG ;; | ||
63 | p) psu_init_path=$OPTARG ;; | 67 | p) psu_init_path=$OPTARG ;; |
64 | i) pdi_path=$OPTARG ;; | 68 | i) pdi_path=$OPTARG ;; |
65 | l) localconf=$OPTARG ;; | 69 | l) localconf=$OPTARG ;; |
@@ -71,17 +75,17 @@ parse_args() { | |||
71 | done | 75 | done |
72 | 76 | ||
73 | [ -z "${config_dir}" ] && error "You must specify the path to the build conf directory with -c" | 77 | [ -z "${config_dir}" ] && error "You must specify the path to the build conf directory with -c" |
74 | [ -z "${system_dtb}" ] && error "You must specify the path to the system device tree with -s" | 78 | [ -z "${system_dts}" ] && error "You must specify the path to the system device tree with -s" |
75 | [ -f "${config_dir}/local.conf" ] || error "Invalid config dir: ${config_dir}" | 79 | [ -f "${config_dir}/local.conf" ] || error "Invalid config dir: ${config_dir}" |
76 | [ -f "${system_dtb}" ] || error "Unable to find: ${system_dtb}" | 80 | [ -f "${system_dts}" ] || error "Unable to find: ${system_dts}" |
77 | system_dtb=$(realpath ${system_dtb}) | 81 | system_dts=$(realpath ${system_dts}) |
78 | if [ -z "$psu_init_path" ]; then | 82 | if [ -z "$psu_init_path" ]; then |
79 | psu_init_path=$(dirname ${system_dtb}) | 83 | psu_init_path=$(dirname ${system_dts}) |
80 | else | 84 | else |
81 | psu_init_path=$(realpath ${psu_init_path}) | 85 | psu_init_path=$(realpath ${psu_init_path}) |
82 | fi | 86 | fi |
83 | if [ -z "$pdi_path" ]; then | 87 | if [ -z "$pdi_path" ]; then |
84 | pdi_path=$(dirname ${system_dtb}) | 88 | pdi_path=$(dirname ${system_dts}) |
85 | else | 89 | else |
86 | pdi_path=$(realpath ${pdi_path}) | 90 | pdi_path=$(realpath ${pdi_path}) |
87 | fi | 91 | fi |
@@ -93,51 +97,115 @@ parse_args() { | |||
93 | 97 | ||
94 | detect_machine() { | 98 | detect_machine() { |
95 | if [ -z "${machine}" ]; then | 99 | if [ -z "${machine}" ]; then |
96 | # Identify the system type first using PSM/PMC/PMU | 100 | if [ -n "${deviceid}" ]; then |
97 | while read -r cpu domain os_hint; do | 101 | case ${deviceid} in |
98 | case ${cpu} in | 102 | # ZynqMP variants |
99 | pmu-microblaze) | 103 | xczu*cg) |
100 | machine="zynqmp" ;; | 104 | machine="zynqmp" |
101 | pmc-microblaze | psm-microblaze) | 105 | soc_variant="cg" ;; |
102 | machine="versal" ;; | 106 | xczu*dr) |
107 | machine="zynqmp" | ||
108 | soc_variant="dr" ;; | ||
109 | xczu*eg) | ||
110 | machine="zynqmp" | ||
111 | soc_variant="eg" ;; | ||
112 | xczu*ev) | ||
113 | machine="zynqmp" | ||
114 | soc_variant="ev" ;; | ||
115 | # Versal variants | ||
116 | xcvm*) | ||
117 | machine="versal" | ||
118 | soc_variant="prime" ;; | ||
119 | xcvc*) | ||
120 | machine="versal" | ||
121 | soc_variant="ai-core" ;; | ||
122 | xcve*) | ||
123 | machine="versal" | ||
124 | soc_variant="ai-edge" ;; | ||
125 | xcvn*) | ||
126 | machine="versal" | ||
127 | soc_variant="net" ;; | ||
128 | xcvp*) | ||
129 | machine="versal" | ||
130 | soc_variant="premium" ;; | ||
131 | xcvh*) | ||
132 | machine="versal" | ||
133 | soc_variant="hbm" ;; | ||
134 | # Special Case Starter Kit SOMs | ||
135 | xck26) | ||
136 | incmachine="k26-smk.conf" | ||
137 | machine="zynqmp" | ||
138 | soc_variant="ev" ;; | ||
139 | xck24) | ||
140 | incmachine="k24-smk.conf" | ||
141 | machine="zynqmp" | ||
142 | soc_variant="eg" ;; | ||
103 | esac | 143 | esac |
104 | done <${cpulist} | 144 | else |
145 | # Identify the system type first using PSM/PMC/PMU | ||
146 | while read -r cpu core domain cpu_name os_hint; do | ||
147 | case ${cpu} in | ||
148 | pmu-microblaze) | ||
149 | machine="zynqmp" ;; | ||
150 | pmc-microblaze | psm-microblaze) | ||
151 | machine="versal" ;; | ||
152 | esac | ||
153 | done <${cpulist} | ||
154 | fi | ||
105 | fi | 155 | fi |
106 | 156 | ||
107 | # Machine not provided and we cannot identify.. | 157 | # Machine not provided and we cannot identify.. |
108 | [ -z ${machine} ] && \ | 158 | [ -z ${machine} ] && \ |
109 | error "Unable to autodetect machine type, use -m to specify the machine." | 159 | error "Unable to autodetect machine type, use -t to specify the machine." |
110 | 160 | ||
111 | case ${machine} in | 161 | case ${machine} in |
112 | zynqmp | versal) : ;; | 162 | zynqmp | versal) : ;; |
113 | *) error "Invalid machine type ${machine}; please choose zynqmp or versal" | 163 | *) error "Invalid machine type ${machine}; please choose zynqmp or versal" |
114 | esac | 164 | esac |
165 | |||
166 | [ -z ${soc_variant} ] && \ | ||
167 | warn "Unable to autodetect soc variant, use -v to specify a variant." | ||
168 | } | ||
169 | |||
170 | dump_cpus() { | ||
171 | prefix="$1" | ||
172 | while read -r cpu core domain cpu_name os_hint; do | ||
173 | case ${cpu} in | ||
174 | \#*) ;; | ||
175 | \[*) ;; | ||
176 | pmu-microblaze) echo "${prefix}zynqmp-pmu ${cpu_name}" ;; | ||
177 | pmc-microblaze) echo "${prefix}versal-plm ${cpu_name}" ;; | ||
178 | psm-microblaze) echo "${prefix}versal-psm ${cpu_name}" ;; | ||
179 | xlnx,microblaze) echo "${prefix}microblaze ${core} ${cpu_name}";; | ||
180 | arm,*) echo "${prefix}${cpu/,/ } ${core} ${cpu_name}";; | ||
181 | *) echo "${prefix}${cpu} ${core} ${cpu_name}";; | ||
182 | esac | ||
183 | done <${cpulist} | ||
115 | } | 184 | } |
116 | 185 | ||
117 | cortex_a53_linux() { | 186 | cortex_a53_linux() { |
118 | info "cortex-a53 for Linux [ $1 ]" | 187 | info "cortex-a53 for Linux [ $1 ]" |
119 | 188 | ||
120 | if [ "$1" = "None" ]; then | 189 | if [ "$1" = "None" ]; then |
121 | dtb_file="cortexa53-${machine}-linux.dtb" | ||
122 | dts_file="cortexa53-${machine}-linux.dts" | 190 | dts_file="cortexa53-${machine}-linux.dts" |
123 | system_conf=conf/cortexa53-${machine}-linux.conf | 191 | system_conf=${dts_file} |
124 | conf_file=cortexa53-${machine}-linux.conf | 192 | conf_file="" |
125 | else | 193 | else |
126 | dtb_file="cortexa53-${machine}-$1-linux.dtb" | 194 | mc_name=cortexa53-${machine}-$1-linux |
127 | dts_file="cortexa53-${machine}-$1-linux.dts" | 195 | dts_file="${mc_name}.dts" |
128 | multiconf="${multiconf} cortexa53-${machine}-linux" | 196 | multiconf="${multiconf} ${mc_name}" |
129 | conf_file=multiconfig/cortexa53-${machine}-$1-linux.conf | 197 | conf_file=multiconfig/${mc_name}.conf |
130 | fi | 198 | fi |
131 | 199 | ||
132 | # Check if it is overlay dts otherwise just create linux dtb | 200 | # Check if it is overlay dts otherwise just create linux dts |
133 | ( | 201 | ( |
134 | cd dtb || error "Unable to cd to dtb dir" | 202 | cd dts || error "Unable to cd to dts dir" |
135 | if [ "${overlay_dtb}" = "true" ]; then | 203 | if [ "${overlay_dts}" = "true" ]; then |
136 | if [ "${external_fpga}" = "true" ]; then | 204 | if [ "${external_fpga}" = "true" ]; then |
137 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dtb}" -- xlnx_overlay_dt ${machine} full \ | 205 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" -- xlnx_overlay_dt ${machine} full \ |
138 | || error "lopper failed" | 206 | || error "lopper failed" |
139 | else | 207 | else |
140 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} "${system_dtb}" -- xlnx_overlay_dt ${machine} partial \ | 208 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} "${system_dts}" -- xlnx_overlay_dt ${machine} partial \ |
141 | || error "lopper failed" | 209 | || error "lopper failed" |
142 | fi | 210 | fi |
143 | dtc -q -O dtb -o pl.dtbo -b 0 -@ pl.dtsi || error "dtc failed" | 211 | dtc -q -O dtb -o pl.dtbo -b 0 -@ pl.dtsi || error "dtc failed" |
@@ -146,42 +214,27 @@ cortex_a53_linux() { | |||
146 | -i "${domain_file}" -i "${lops_dir}/lop-a53-imux.dts" \ | 214 | -i "${domain_file}" -i "${lops_dir}/lop-a53-imux.dts" \ |
147 | -i "${lops_dir}/lop-domain-linux-a53.dts" \ | 215 | -i "${lops_dir}/lop-domain-linux-a53.dts" \ |
148 | -i "${lops_dir}/lop-domain-linux-a53-prune.dts" \ | 216 | -i "${lops_dir}/lop-domain-linux-a53-prune.dts" \ |
149 | "${system_dtb}" "${dtb_file}" \ | 217 | "${system_dts}" "${dts_file}" \ |
150 | || error "lopper failed" | ||
151 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ | ||
152 | -i "${domain_file}" -i "${lops_dir}/lop-a53-imux.dts" \ | ||
153 | -i "${lops_dir}/lop-domain-linux-a53.dts" \ | ||
154 | -i "${lops_dir}/lop-domain-linux-a53-prune.dts" \ | ||
155 | "${system_dtb}" "${dts_file}" \ | ||
156 | || error "lopper failed" | 218 | || error "lopper failed" |
157 | else | 219 | else |
158 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a53-imux.dts" \ | 220 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a53-imux.dts" \ |
159 | -i "${lops_dir}/lop-domain-linux-a53.dts" \ | 221 | -i "${lops_dir}/lop-domain-linux-a53.dts" \ |
160 | -i "${lops_dir}/lop-domain-linux-a53-prune.dts" \ | 222 | -i "${lops_dir}/lop-domain-linux-a53-prune.dts" \ |
161 | "${system_dtb}" "${dtb_file}" \ | 223 | "${system_dts}" "${dts_file}" \ |
162 | || error "lopper failed" | ||
163 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a53-imux.dts" \ | ||
164 | -i "${lops_dir}/lop-domain-linux-a53.dts" \ | ||
165 | -i "${lops_dir}/lop-domain-linux-a53-prune.dts" \ | ||
166 | "${system_dtb}" "${dts_file}" \ | ||
167 | || error "lopper failed" | 224 | || error "lopper failed" |
168 | fi | 225 | fi |
169 | rm -f pl.dtsi lop-a53-imux.dts.dtb lop-domain-linux-a53.dts.dtb | 226 | rm -f pl.dtsi lop-a53-imux.dts.dtb lop-domain-linux-a53.dts.dtb lop-domain-linux-a53-prune.dts.dtb |
170 | ) | 227 | ) |
171 | 228 | ||
229 | if [ -z "${conf_file}" ]; then | ||
230 | return $? | ||
231 | fi | ||
232 | |||
233 | ## Generate a multiconfig | ||
172 | cat <<EOF >"${conf_file}" | 234 | cat <<EOF >"${conf_file}" |
173 | CONFIG_DTFILE = "\${TOPDIR}/conf/dtb/${dtb_file}" | 235 | CONFIG_DTFILE = "\${TOPDIR}/conf/dts/${dts_file}" |
174 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
175 | 236 | ||
176 | MACHINE = "${machine}-generic" | 237 | TMPDIR = "\${BASE_TMPDIR}/tmp-${mc_name}" |
177 | # We don't want the kernel to build us a device-tree | ||
178 | KERNEL_DEVICETREE:${machine}-generic = "" | ||
179 | # We need u-boot to use the one we passed in | ||
180 | DEVICE_TREE_NAME:pn-u-boot-xlnx-scr = "\${@os.path.basename(d.getVar('CONFIG_DTFILE'))}" | ||
181 | # Update bootbin to use proper device tree | ||
182 | BIF_PARTITION_IMAGE[device-tree] = "\${RECIPE_SYSROOT}/boot/devicetree/\${@os.path.basename(d.getVar('CONFIG_DTFILE'))}" | ||
183 | # Remap boot files to ensure the right device tree is listed first | ||
184 | IMAGE_BOOT_FILES = "devicetree/\${@os.path.basename(d.getVar('CONFIG_DTFILE'))} \${@get_default_image_boot_files(d)}" | ||
185 | EOF | 238 | EOF |
186 | } | 239 | } |
187 | 240 | ||
@@ -191,7 +244,7 @@ cortex_a53_baremetal() { | |||
191 | [ ${a53_fsbl_done} = 1 ] && return | 244 | [ ${a53_fsbl_done} = 1 ] && return |
192 | info "cortex-a53 FSBL baremetal configuration" | 245 | info "cortex-a53 FSBL baremetal configuration" |
193 | else | 246 | else |
194 | info "cortex-a53 for baremetal [ $1 ]" | 247 | info "cortex-a53 baremetal configuration for core $2 [ $1 ]" |
195 | fi | 248 | fi |
196 | 249 | ||
197 | suffix=""; lto="-nolto" | 250 | suffix=""; lto="-nolto" |
@@ -199,44 +252,47 @@ cortex_a53_baremetal() { | |||
199 | suffix="-$1"; lto="" | 252 | suffix="-$1"; lto="" |
200 | fi | 253 | fi |
201 | 254 | ||
202 | dtb_file="cortexa53-${machine}${suffix}-baremetal.dtb" | 255 | mc_name="cortexa53-$2-${machine}${suffix}-baremetal" |
203 | multiconf="${multiconf} cortexa53-${machine}${suffix}-baremetal" | 256 | dts_file="${mc_name}.dts" |
204 | conf_file="multiconfig/cortexa53-${machine}${suffix}-baremetal.conf" | 257 | multiconf="${multiconf} ${mc_name}" |
205 | libxil="multiconfig/includes/cortexa53-${machine}${suffix}-libxil.conf" | 258 | conf_file="multiconfig/${mc_name}.conf" |
206 | distro="multiconfig/includes/cortexa53-${machine}${suffix}-distro.conf" | 259 | libxil="machine/include/${mach_conf}/${mc_name}-libxil.conf" |
260 | features="machine/include/${mach_conf}/${mc_name}-features.conf" | ||
207 | yocto_distro="xilinx-standalone${lto}" | 261 | yocto_distro="xilinx-standalone${lto}" |
208 | if [ "$1" = "fsbl" ]; then | 262 | if [ "$1" = "fsbl" ]; then |
209 | fsbl_mcdepends="mc::${dtb_file%%.dtb}:fsbl-firmware:do_deploy" | 263 | fsbl_mcdepends="mc::${mc_name}:fsbl-firmware:do_deploy" |
210 | fsbl_deploy_dir="\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}/deploy/images/\${MACHINE}" | 264 | fsbl_deploy_dir="\${BASE_TMPDIR}/tmp-${mc_name}/deploy/images/\${MACHINE}" |
265 | multiconf_min="${multiconf_min} ${mc_name}" | ||
211 | a53_fsbl_done=1 | 266 | a53_fsbl_done=1 |
212 | fi | 267 | fi |
213 | 268 | ||
214 | # Build device tree | 269 | # Build device tree |
215 | ( | 270 | ( |
216 | cd dtb || error "Unable to cd to dtb dir" | 271 | cd dts || error "Unable to cd to dts dir" |
217 | if [ -n "${domain_file}" ]; then | 272 | if [ -n "${domain_file}" ]; then |
218 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ | 273 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ |
219 | -i "${domain_file}" -i "${lops_dir}/lop-a53-imux.dts" "${system_dtb}" "${dtb_file}" \ | 274 | -i "${domain_file}" -i "${lops_dir}/lop-a53-imux.dts" "${system_dts}" "${dts_file}" \ |
220 | || error "lopper failed" | 275 | || error "lopper failed" |
221 | else | 276 | else |
222 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a53-imux.dts" \ | 277 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a53-imux.dts" \ |
223 | "${system_dtb}" "${dtb_file}" || error "lopper failed" | 278 | "${system_dts}" "${dts_file}" || error "lopper failed" |
224 | fi | 279 | fi |
225 | rm -f lop-a53-imux.dts.dtb | 280 | rm -f lop-a53-imux.dts.dtb |
226 | ) | 281 | ) |
227 | 282 | ||
228 | # Build baremetal multiconfig | 283 | # Build baremetal multiconfig |
229 | if [ -n "${domain_file}" ]; then | 284 | if [ -n "${domain_file}" ]; then |
230 | ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dtb}" \ | 285 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dts}" \ |
231 | -- baremetaldrvlist_xlnx cortexa53-${machine} "${embeddedsw}" \ | 286 | -- baremetaldrvlist_xlnx $3 "${embeddedsw}" \ |
232 | || error "lopper failed" | 287 | || error "lopper failed" |
233 | else | 288 | else |
234 | ${lopper} -f "${system_dtb}" -- baremetaldrvlist_xlnx cortexa53-${machine} "${embeddedsw}" \ | 289 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" -- baremetaldrvlist_xlnx $3 "${embeddedsw}" \ |
235 | || error "lopper failed" | 290 | || error "lopper failed" |
236 | fi | 291 | fi |
237 | 292 | ||
238 | mv libxil.conf "${libxil}" | 293 | mv libxil.conf "${libxil}" |
239 | mv distro.conf "${distro}" | 294 | mv distro.conf "${features}" |
295 | sed -i ${features} -e "s,DISTRO_FEATURES,MACHINE_FEATURES," | ||
240 | 296 | ||
241 | if [ "$1" = "fsbl" ]; then | 297 | if [ "$1" = "fsbl" ]; then |
242 | if [ ! -e "${psu_init_path}/psu_init.c" ]; then | 298 | if [ ! -e "${psu_init_path}/psu_init.c" ]; then |
@@ -253,80 +309,66 @@ EOF | |||
253 | cat /dev/null >"${conf_file}" | 309 | cat /dev/null >"${conf_file}" |
254 | fi | 310 | fi |
255 | cat <<EOF >>"${conf_file}" | 311 | cat <<EOF >>"${conf_file}" |
256 | CONFIG_DTFILE = "\${TOPDIR}/conf/dtb/${dtb_file}" | 312 | CONFIG_DTFILE = "\${TOPDIR}/conf/dts/${dts_file}" |
257 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
258 | 313 | ||
259 | ESW_MACHINE = "cortexa53-${machine}" | 314 | ESW_MACHINE = "$3" |
260 | DEFAULTTUNE = "cortexa53" | 315 | DEFAULTTUNE = "cortexa53" |
261 | 316 | ||
262 | TMPDIR = "\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}" | 317 | TMPDIR = "\${BASE_TMPDIR}/tmp-${mc_name}" |
263 | 318 | ||
264 | DISTRO = "${yocto_distro}" | 319 | DISTRO = "${yocto_distro}" |
265 | |||
266 | LIBXIL_CONFIG = "conf/${libxil}" | ||
267 | require conf/${distro} | ||
268 | |||
269 | SKIP_META_VIRT_SANITY_CHECK = "1" | ||
270 | SKIP_META_SECURITY_SANITY_CHECK = "1" | ||
271 | SKIP_META_TPM_SANITY_CHECK = "1" | ||
272 | EOF | 320 | EOF |
273 | } | 321 | } |
274 | 322 | ||
275 | cortex_a53_freertos() { | 323 | cortex_a53_freertos() { |
276 | info "cortex-a53 for FreeRTOS [ $1 ]" | 324 | info "cortex-a53 FreeRTOS configuration for core $2 [ $1 ]" |
277 | 325 | ||
278 | suffix="" | 326 | suffix="" |
279 | [ "$1" != "None" ] && suffix="-$1" | 327 | [ "$1" != "None" ] && suffix="-$1" |
280 | 328 | ||
281 | dtb_file="cortexa53-${machine}${suffix}-freertos.dtb" | 329 | mc_name="cortexa53-$2-${machine}${suffix}-freertos" |
282 | multiconf="${multiconf} cortexa53-${machine}${suffix}-freertos" | 330 | dts_file="${mc_name}.dts" |
283 | conf_file="multiconfig/cortexa53-${machine}${suffix}-freertos.conf" | 331 | multiconf="${multiconf} ${mc_name}" |
284 | libxil="multiconfig/includes/cortexa53-${machine}${suffix}-libxil.conf" | 332 | conf_file="multiconfig/${mc_name}.conf" |
285 | distro="multiconfig/includes/cortexa53-${machine}${suffix}-distro.conf" | 333 | libxil="machine/include/${mach_conf}/${mc_name}-libxil.conf" |
334 | features="machine/include/${mach_conf}/${mc_name}-features.conf" | ||
286 | 335 | ||
287 | # Build device tree | 336 | # Build device tree |
288 | ( | 337 | ( |
289 | cd dtb || error "Unable to cd to dtb dir" | 338 | cd dts || error "Unable to cd to dts dir" |
290 | if [ -n "${domain_file}" ]; then | 339 | if [ -n "${domain_file}" ]; then |
291 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ | 340 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ |
292 | -i "${domain_file}" -i "${lops_dir}/lop-a53-imux.dts" "${system_dtb}" "${dtb_file}" \ | 341 | -i "${domain_file}" -i "${lops_dir}/lop-a53-imux.dts" "${system_dts}" "${dts_file}" \ |
293 | || error "lopper failed" | 342 | || error "lopper failed" |
294 | else | 343 | else |
295 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a53-imux.dts" \ | 344 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a53-imux.dts" \ |
296 | "${system_dtb}" "${dtb_file}" || error "lopper failed" | 345 | "${system_dts}" "${dts_file}" || error "lopper failed" |
297 | fi | 346 | fi |
298 | rm -f lop-a53-imux.dts.dtb | 347 | rm -f lop-a53-imux.dts.dtb |
299 | ) | 348 | ) |
300 | 349 | ||
301 | # Build baremetal multiconfig | 350 | # Build baremetal multiconfig |
302 | if [ -n "${domain_file}" ]; then | 351 | if [ -n "${domain_file}" ]; then |
303 | ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dtb}" \ | 352 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dts}" \ |
304 | -- baremetaldrvlist_xlnx cortexa53-${machine} "${embeddedsw}" || error "lopper failed" | 353 | -- baremetaldrvlist_xlnx $3 "${embeddedsw}" || error "lopper failed" |
305 | else | 354 | else |
306 | ${lopper} -f "${system_dtb}" -- baremetaldrvlist_xlnx cortexa53-${machine} "${embeddedsw}" \ | 355 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" -- baremetaldrvlist_xlnx $3 "${embeddedsw}" \ |
307 | || error "lopper failed" | 356 | || error "lopper failed" |
308 | fi | 357 | fi |
309 | 358 | ||
310 | mv libxil.conf "${libxil}" | 359 | mv libxil.conf "${libxil}" |
311 | mv distro.conf "${distro}" | 360 | mv distro.conf "${features}" |
361 | sed -i ${features} -e "s,DISTRO_FEATURES,MACHINE_FEATURES," | ||
312 | 362 | ||
313 | cat <<EOF >"${conf_file}" | 363 | cat <<EOF >"${conf_file}" |
314 | CONFIG_DTFILE = "\${TOPDIR}/conf/dtb/${dtb_file}" | 364 | CONFIG_DTFILE = "\${TOPDIR}/conf/dts/${dts_file}" |
315 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
316 | 365 | ||
317 | ESW_MACHINE = "cortexa53-${machine}" | 366 | ESW_MACHINE = "$3" |
318 | DEFAULTTUNE = "cortexa53" | 367 | DEFAULTTUNE = "cortexa53" |
319 | 368 | ||
320 | TMPDIR = "\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}" | 369 | TMPDIR = "\${BASE_TMPDIR}/tmp-${mc_name}" |
321 | 370 | ||
322 | DISTRO = "xilinx-freertos" | 371 | DISTRO = "xilinx-freertos" |
323 | |||
324 | LIBXIL_CONFIG = "conf/${libxil}" | ||
325 | require conf/${distro} | ||
326 | |||
327 | SKIP_META_VIRT_SANITY_CHECK = "1" | ||
328 | SKIP_META_SECURITY_SANITY_CHECK = "1" | ||
329 | SKIP_META_TPM_SANITY_CHECK = "1" | ||
330 | EOF | 372 | EOF |
331 | } | 373 | } |
332 | 374 | ||
@@ -336,36 +378,35 @@ cortex_a72_linux() { | |||
336 | # Find the first file ending in .pdi | 378 | # Find the first file ending in .pdi |
337 | full_pdi_path=$(ls ${pdi_path}/*.pdi 2>/dev/null | head -n 1) | 379 | full_pdi_path=$(ls ${pdi_path}/*.pdi 2>/dev/null | head -n 1) |
338 | if [ -z "${full_pdi_path}" ]; then | 380 | if [ -z "${full_pdi_path}" ]; then |
339 | warn "Warning: Unable to find a pdi file in ${pdi_path}" | 381 | error "Unable to find a pdi file in ${pdi_path}, use the -i option to point to the directory containing a .pdi file" |
340 | full_pdi_path="__PATH TO PDI FILE HERE__" | 382 | full_pdi_path="__PATH TO PDI FILE HERE__" |
341 | elif [ "${full_pdi_path}" != "$(ls ${pdi_path}/*.pdi 2>/dev/null)" ]; then | 383 | elif [ "${full_pdi_path}" != "$(ls ${pdi_path}/*.pdi 2>/dev/null)" ]; then |
342 | warn "Warning: multiple PDI files found, using first found $(basename ${full_pdi_path})." | 384 | warn "Warning: multiple PDI files found, using first found $(basename ${full_pdi_path})." |
343 | fi | 385 | fi |
344 | 386 | ||
345 | if [ "$1" = "None" ]; then | 387 | if [ "$1" = "None" ]; then |
346 | dtb_file="cortexa72-${machine}-linux.dtb" | ||
347 | dts_file="cortexa72-${machine}-linux.dts" | 388 | dts_file="cortexa72-${machine}-linux.dts" |
348 | system_conf=conf/cortexa72-${machine}-linux.conf | 389 | system_conf=${dts_file} |
349 | conf_file=cortexa72-${machine}-linux.conf | 390 | conf_file="" |
350 | else | 391 | else |
351 | dtb_file="cortexa72-${machine}-$1-linux.dtb" | 392 | mc_name="cortexa72-${machine}-$1-linux" |
352 | dts_file="cortexa72-${machine}-$1-linux.dts" | 393 | dts_file="${mc_name}.dts" |
353 | multiconf="${multiconf} cortexa72-${machine}-linux" | 394 | multiconf="${multiconf} ${mc_name}" |
354 | conf_file=multiconfig/cortexa72-${machine}-$1-linux.conf | 395 | conf_file=multiconfig/${mc_name}.conf |
355 | fi | 396 | fi |
356 | 397 | ||
357 | ( | 398 | ( |
358 | cd dtb || error "Unable to cd to dtb dir" | 399 | cd dts || error "Unable to cd to dts dir" |
359 | # Check if it is overlay dts otherwise just create linux dtb | 400 | # Check if it is overlay dts otherwise just create linux dts |
360 | if [ "${overlay_dtb}" = "true" ]; then | 401 | if [ "${overlay_dts}" = "true" ]; then |
361 | # As there is no partial support on Versal, As per fpga manager implementatin there is | 402 | # As there is no partial support on Versal, As per fpga manager implementatin there is |
362 | # a flag "external_fpga" which says apply overlay without loading the bit file. | 403 | # a flag "external_fpga" which says apply overlay without loading the bit file. |
363 | if [ "${external_fpga}" = "true" ]; then | 404 | if [ "${external_fpga}" = "true" ]; then |
364 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dtb}" -- xlnx_overlay_dt \ | 405 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" -- xlnx_overlay_dt \ |
365 | ${machine} full external_fpga || error "lopper failed" | 406 | ${machine} full external_fpga || error "lopper failed" |
366 | else | 407 | else |
367 | # If there is no external_fpga flag, then the default is full | 408 | # If there is no external_fpga flag, then the default is full |
368 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} "${system_dtb}" -- xlnx_overlay_dt \ | 409 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} "${system_dts}" -- xlnx_overlay_dt \ |
369 | ${machine} full || error "lopper failed" | 410 | ${machine} full || error "lopper failed" |
370 | fi | 411 | fi |
371 | dtc -q -O dtb -o pl.dtbo -b 0 -@ pl.dtsi || error "dtc failed" | 412 | dtc -q -O dtb -o pl.dtbo -b 0 -@ pl.dtsi || error "dtc failed" |
@@ -374,156 +415,130 @@ cortex_a72_linux() { | |||
374 | -i "${domain_file}" -i "${lops_dir}/lop-a72-imux.dts" \ | 415 | -i "${domain_file}" -i "${lops_dir}/lop-a72-imux.dts" \ |
375 | -i "${lops_dir}/lop-domain-a72.dts" \ | 416 | -i "${lops_dir}/lop-domain-a72.dts" \ |
376 | -i "${lops_dir}/lop-domain-a72-prune.dts" \ | 417 | -i "${lops_dir}/lop-domain-a72-prune.dts" \ |
377 | "${system_dtb}" "${dtb_file}" \ | 418 | "${system_dts}" "${dts_file}" \ |
378 | || error "lopper failed" | ||
379 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ | ||
380 | -i "${domain_file}" -i "${lops_dir}/lop-a72-imux.dts" \ | ||
381 | -i "${lops_dir}/lop-domain-a72.dts" \ | ||
382 | -i "${lops_dir}/lop-domain-a72-prune.dts" \ | ||
383 | "${system_dtb}" "${dts_file}" \ | ||
384 | || error "lopper failed" | 419 | || error "lopper failed" |
385 | else | 420 | else |
386 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a72-imux.dts" \ | 421 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a72-imux.dts" \ |
387 | -i "${lops_dir}/lop-domain-a72.dts" \ | 422 | -i "${lops_dir}/lop-domain-a72.dts" \ |
388 | -i "${lops_dir}/lop-domain-a72-prune.dts" \ | 423 | -i "${lops_dir}/lop-domain-a72-prune.dts" \ |
389 | "${system_dtb}" "${dtb_file}" || error "lopper failed" | 424 | "${system_dts}" "${dts_file}" || error "lopper failed" |
390 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a72-imux.dts" \ | ||
391 | -i "${lops_dir}/lop-domain-a72.dts" \ | ||
392 | -i "${lops_dir}/lop-domain-a72-prune.dts" \ | ||
393 | "${system_dtb}" "${dts_file}" || error "lopper failed" | ||
394 | fi | 425 | fi |
395 | rm -f pl.dtsi lop-a72-imux.dts.dtb lop-domain-a72.dts.dtb | 426 | rm -f pl.dtsi lop-a72-imux.dts.dtb lop-domain-a72.dts.dtb lop-domain-a72-prune.dts.dtb |
396 | ) | 427 | ) |
397 | 428 | ||
429 | if [ -z "${conf_file}" ]; then | ||
430 | return $? | ||
431 | fi | ||
432 | |||
433 | ## Generate a multiconfig | ||
398 | cat <<EOF >"${conf_file}" | 434 | cat <<EOF >"${conf_file}" |
399 | CONFIG_DTFILE = "\${TOPDIR}/conf/dtb/${dtb_file}" | 435 | CONFIG_DTFILE = "\${TOPDIR}/conf/dts/${dts_file}" |
400 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
401 | 436 | ||
402 | MACHINE = "${machine}-generic" | 437 | TMPDIR = "\${BASE_TMPDIR}/tmp-${mc_name}" |
403 | # We don't want the kernel to build us a device-tree | ||
404 | KERNEL_DEVICETREE:${machine}-generic = "" | ||
405 | # We need u-boot to use the one we passed in | ||
406 | DEVICE_TREE_NAME:pn-u-boot-xlnx-scr = "\${@os.path.basename(d.getVar('CONFIG_DTFILE'))}" | ||
407 | # Update bootbin to use proper device tree | ||
408 | BIF_PARTITION_IMAGE[device-tree] = "\${RECIPE_SYSROOT}/boot/devicetree/\${@os.path.basename(d.getVar('CONFIG_DTFILE'))}" | ||
409 | # Remap boot files to ensure the right device tree is listed first | ||
410 | IMAGE_BOOT_FILES = "devicetree/\${@os.path.basename(d.getVar('CONFIG_DTFILE'))} \${@get_default_image_boot_files(d)}" | ||
411 | EOF | 438 | EOF |
412 | } | 439 | } |
413 | 440 | ||
414 | cortex_a72_baremetal() { | 441 | cortex_a72_baremetal() { |
415 | info "cortex-a72 for baremetal [ $1 ]" | 442 | info "cortex-a72 baremetal configuration for core $2 [ $1 ]" |
416 | 443 | ||
417 | suffix="" | 444 | suffix="" |
418 | [ "$1" != "None" ] && suffix="-$1" | 445 | [ "$1" != "None" ] && suffix="-$1" |
419 | 446 | ||
420 | dtb_file="cortexa72-${machine}${suffix}-baremetal.dtb" | 447 | mc_name="cortexa72-$2-${machine}${suffix}-baremetal" |
421 | multiconf="${multiconf} cortexa72-${machine}${suffix}-baremetal" | 448 | dts_file="${mc_name}.dts" |
422 | conf_file="multiconfig/cortexa72-${machine}${suffix}-baremetal.conf" | 449 | multiconf="${multiconf} ${mc_name}" |
423 | libxil="multiconfig/includes/cortexa72-${machine}${suffix}-libxil.conf" | 450 | conf_file="multiconfig/${mc_name}.conf" |
424 | distro="multiconfig/includes/cortexa72-${machine}${suffix}-distro.conf" | 451 | libxil="machine/include/${mach_conf}/${mc_name}-libxil.conf" |
452 | features="machine/include/${mach_conf}/${mc_name}-features.conf" | ||
425 | 453 | ||
426 | # Build device tree | 454 | # Build device tree |
427 | ( | 455 | ( |
428 | cd dtb || error "Unable to cd to dtb dir" | 456 | cd dts || error "Unable to cd to dts dir" |
429 | if [ -n "${domain_file}" ]; then | 457 | if [ -n "${domain_file}" ]; then |
430 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ | 458 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ |
431 | -i "${domain_file}" -i "${lops_dir}/lop-a72-imux.dts" "${system_dtb}" "${dtb_file}" \ | 459 | -i "${domain_file}" -i "${lops_dir}/lop-a72-imux.dts" "${system_dts}" "${dts_file}" \ |
432 | || error "lopper failed" | 460 | || error "lopper failed" |
433 | else | 461 | else |
434 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a72-imux.dts" \ | 462 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a72-imux.dts" \ |
435 | "${system_dtb}" "${dtb_file}" || error "lopper failed" | 463 | "${system_dts}" "${dts_file}" || error "lopper failed" |
436 | fi | 464 | fi |
437 | rm -f lop-a72-imux.dts.dtb | 465 | rm -f lop-a72-imux.dts.dtb |
438 | ) | 466 | ) |
439 | 467 | ||
440 | # Build baremetal multiconfig | 468 | # Build baremetal multiconfig |
441 | if [ -n "${domain_file}" ]; then | 469 | if [ -n "${domain_file}" ]; then |
442 | ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dtb}" \ | 470 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dts}" \ |
443 | -- baremetaldrvlist_xlnx cortexa72-${machine} "${embeddedsw}" || error "lopper failed" | 471 | -- baremetaldrvlist_xlnx $3 "${embeddedsw}" || error "lopper failed" |
444 | else | 472 | else |
445 | ${lopper} -f "${system_dtb}" -- baremetaldrvlist_xlnx cortexa72-${machine} "${embeddedsw}" \ | 473 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" -- baremetaldrvlist_xlnx $3 "${embeddedsw}" \ |
446 | || error "lopper failed" | 474 | || error "lopper failed" |
447 | fi | 475 | fi |
448 | 476 | ||
449 | mv libxil.conf "${libxil}" | 477 | mv libxil.conf "${libxil}" |
450 | mv distro.conf "${distro}" | 478 | mv distro.conf "${features}" |
479 | sed -i ${features} -e "s,DISTRO_FEATURES,MACHINE_FEATURES," | ||
451 | 480 | ||
452 | cat <<EOF >"${conf_file}" | 481 | cat <<EOF >"${conf_file}" |
453 | CONFIG_DTFILE = "\${TOPDIR}/conf/dtb/${dtb_file}" | 482 | CONFIG_DTFILE = "\${TOPDIR}/conf/dts/${dts_file}" |
454 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
455 | 483 | ||
456 | ESW_MACHINE = "cortexa72-${machine}" | 484 | ESW_MACHINE = "$3" |
457 | DEFAULTTUNE = "cortexa72" | 485 | DEFAULTTUNE = "cortexa72" |
458 | 486 | ||
459 | TMPDIR = "\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}" | 487 | TMPDIR = "\${BASE_TMPDIR}/tmp-${mc_name}" |
460 | 488 | ||
461 | DISTRO = "xilinx-standalone-nolto" | 489 | DISTRO = "xilinx-standalone-nolto" |
462 | |||
463 | LIBXIL_CONFIG = "conf/${libxil}" | ||
464 | require conf/${distro} | ||
465 | |||
466 | SKIP_META_VIRT_SANITY_CHECK = "1" | ||
467 | SKIP_META_SECURITY_SANITY_CHECK = "1" | ||
468 | SKIP_META_TPM_SANITY_CHECK = "1" | ||
469 | EOF | 490 | EOF |
470 | } | 491 | } |
471 | 492 | ||
472 | cortex_a72_freertos() { | 493 | cortex_a72_freertos() { |
473 | info "cortex-a72 for FreeRTOS [ $1 ]" | 494 | info "cortex-a72 FreeRTOS configuration for core $2 [ $1 ]" |
474 | 495 | ||
475 | suffix="" | 496 | suffix="" |
476 | [ "$1" != "None" ] && suffix="-$1" | 497 | [ "$1" != "None" ] && suffix="-$1" |
477 | 498 | ||
478 | dtb_file="cortexa72-${machine}${suffix}-freertos.dtb" | 499 | mc_name="cortexa72-$2-${machine}${suffix}-freertos" |
479 | multiconf="${multiconf} cortexa72-${machine}${suffix}-freertos" | 500 | dts_file="${mc_name}.dts" |
480 | conf_file="multiconfig/cortexa72-${machine}${suffix}-freertos.conf" | 501 | multiconf="${multiconf} ${mc_name}" |
481 | libxil="multiconfig/includes/cortexa72-${machine}${suffix}-libxil.conf" | 502 | conf_file="multiconfig/${mc_name}.conf" |
482 | distro="multiconfig/includes/cortexa72-${machine}${suffix}-distro.conf" | 503 | libxil="machine/include/${mach_conf}/${mc_name}-libxil.conf" |
504 | features="machine/include/${mach_conf}/${mc_name}-features.conf" | ||
483 | 505 | ||
484 | # Build device tree | 506 | # Build device tree |
485 | ( | 507 | ( |
486 | cd dtb || error "Unable to cd to dtb dir" | 508 | cd dts || error "Unable to cd to dts dir" |
487 | if [ -n "${domain_file}" ]; then | 509 | if [ -n "${domain_file}" ]; then |
488 | LOPPER_DTC_FLAGS="-b 0 -@" lopper -f --enhanced -x '*.yaml' \ | 510 | LOPPER_DTC_FLAGS="-b 0 -@" lopper -f --enhanced -x '*.yaml' \ |
489 | -i "${domain_file}" -i "${lops_dir}/lop-a72-imux.dts" "${system_dtb}" "${dtb_file}" \ | 511 | -i "${domain_file}" -i "${lops_dir}/lop-a72-imux.dts" "${system_dts}" "${dts_file}" \ |
490 | || error "lopper failed" | 512 | || error "lopper failed" |
491 | else | 513 | else |
492 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a72-imux.dts" \ | 514 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-a72-imux.dts" \ |
493 | "${system_dtb}" "${dtb_file}" || error "lopper failed" | 515 | "${system_dts}" "${dts_file}" || error "lopper failed" |
494 | fi | 516 | fi |
495 | rm -f lop-a72-imux.dts.dtb | 517 | rm -f lop-a72-imux.dts.dtb |
496 | ) | 518 | ) |
497 | 519 | ||
498 | # Build baremetal multiconfig | 520 | # Build baremetal multiconfig |
499 | if [ -n "${domain_file}" ]; then | 521 | if [ -n "${domain_file}" ]; then |
500 | ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dtb}" \ | 522 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dts}" \ |
501 | -- baremetaldrvlist_xlnx cortexa72-${machine} "${embeddedsw}" || error "lopper failed" | 523 | -- baremetaldrvlist_xlnx $3 "${embeddedsw}" || error "lopper failed" |
502 | else | 524 | else |
503 | ${lopper} -f "${system_dtb}" -- baremetaldrvlist_xlnx cortexa72-${machine} "${embeddedsw}" \ | 525 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" -- baremetaldrvlist_xlnx $3 "${embeddedsw}" \ |
504 | || error "lopper failed" | 526 | || error "lopper failed" |
505 | fi | 527 | fi |
506 | 528 | ||
507 | mv libxil.conf "${libxil}" | 529 | mv libxil.conf "${libxil}" |
508 | mv distro.conf "${distro}" | 530 | mv distro.conf "${features}" |
531 | sed -i ${features} -e "s,DISTRO_FEATURES,MACHINE_FEATURES," | ||
509 | 532 | ||
510 | cat <<EOF >"${conf_file}" | 533 | cat <<EOF >"${conf_file}" |
511 | CONFIG_DTFILE = "\${TOPDIR}/conf/dtb/${dtb_file}" | 534 | CONFIG_DTFILE = "\${TOPDIR}/conf/dts/${dts_file}" |
512 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
513 | 535 | ||
514 | ESW_MACHINE = "cortexa72-${machine}" | 536 | ESW_MACHINE = "$3" |
515 | DEFAULTTUNE = "cortexa72" | 537 | DEFAULTTUNE = "cortexa72" |
516 | 538 | ||
517 | TMPDIR = "\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}" | 539 | TMPDIR = "\${BASE_TMPDIR}/tmp-${mc_name}" |
518 | 540 | ||
519 | DISTRO = "xilinx-freertos" | 541 | DISTRO = "xilinx-freertos" |
520 | |||
521 | LIBXIL_CONFIG = "conf/${libxil}" | ||
522 | require conf/${distro} | ||
523 | |||
524 | SKIP_META_VIRT_SANITY_CHECK = "1" | ||
525 | SKIP_META_SECURITY_SANITY_CHECK = "1" | ||
526 | SKIP_META_TPM_SANITY_CHECK = "1" | ||
527 | EOF | 542 | EOF |
528 | } | 543 | } |
529 | 544 | ||
@@ -533,7 +548,7 @@ cortex_r5_baremetal() { | |||
533 | [ ${r5_fsbl_done} = 1 ] && return | 548 | [ ${r5_fsbl_done} = 1 ] && return |
534 | info "cortex-r5 FSBL baremetal configuration" | 549 | info "cortex-r5 FSBL baremetal configuration" |
535 | else | 550 | else |
536 | info "cortex-r5 for baremetal [ $1 ]" | 551 | info "cortex-r5 baremetal configuration for core $2 [ $1 ]" |
537 | fi | 552 | fi |
538 | 553 | ||
539 | suffix=""; lto="-nolto" | 554 | suffix=""; lto="-nolto" |
@@ -541,44 +556,46 @@ cortex_r5_baremetal() { | |||
541 | suffix="-$1"; lto="" | 556 | suffix="-$1"; lto="" |
542 | fi | 557 | fi |
543 | 558 | ||
544 | dtb_file="cortexr5-${machine}${suffix}-baremetal.dtb" | 559 | mc_name="cortexr5-$2-${machine}${suffix}-baremetal" |
545 | multiconf="${multiconf} cortexr5-${machine}${suffix}-baremetal" | 560 | dts_file="${mc_name}.dts" |
546 | conf_file="multiconfig/cortexr5-${machine}${suffix}-baremetal.conf" | 561 | multiconf="${multiconf} ${mc_name}" |
547 | libxil="multiconfig/includes/cortexr5-${machine}${suffix}-libxil.conf" | 562 | conf_file="multiconfig/${mc_name}.conf" |
548 | distro="multiconfig/includes/cortexr5-${machine}${suffix}-distro.conf" | 563 | libxil="machine/include/${mach_conf}/${mc_name}-libxil.conf" |
564 | features="machine/include/${mach_conf}/${mc_name}-features.conf" | ||
549 | yocto_distro="xilinx-standalone${lto}" | 565 | yocto_distro="xilinx-standalone${lto}" |
550 | 566 | ||
551 | if [ "$1" = "fsbl" ]; then | 567 | if [ "$1" = "fsbl" ]; then |
552 | r5fsbl_mcdepends="mc::${dtb_file%%.dtb}:fsbl-firmware:do_deploy" | 568 | r5fsbl_mcdepends="mc::${mc_name}:fsbl-firmware:do_deploy" |
553 | r5fsbl_deploy_dir="\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}/deploy/images/\${MACHINE}" | 569 | r5fsbl_deploy_dir="\${BASE_TMPDIR}/tmp-${mc_name}/deploy/images/\${MACHINE}" |
554 | r5_fsbl_done=1 | 570 | r5_fsbl_done=1 |
555 | fi | 571 | fi |
556 | 572 | ||
557 | # Build device tree | 573 | # Build device tree |
558 | ( | 574 | ( |
559 | cd dtb || error "Unable to cd to dtb dir" | 575 | cd dts || error "Unable to cd to dts dir" |
560 | if [ -n "$domain_file" ]; then | 576 | if [ -n "$domain_file" ]; then |
561 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ | 577 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ |
562 | -i "${domain_file}" -i "${lops_dir}/lop-r5-imux.dts" "${system_dtb}" "${dtb_file}" \ | 578 | -i "${domain_file}" -i "${lops_dir}/lop-r5-imux.dts" "${system_dts}" "${dts_file}" \ |
563 | || error "lopper failed" | 579 | || error "lopper failed" |
564 | else | 580 | else |
565 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-r5-imux.dts" \ | 581 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-r5-imux.dts" \ |
566 | "${system_dtb}" "${dtb_file}" || error "lopper failed" | 582 | "${system_dts}" "${dts_file}" || error "lopper failed" |
567 | fi | 583 | fi |
568 | rm -f lop-r5-imux.dts.dtb | 584 | rm -f lop-r5-imux.dts.dtb |
569 | ) | 585 | ) |
570 | 586 | ||
571 | # Build baremetal multiconfig | 587 | # Build baremetal multiconfig |
572 | if [ -n "${domain_file}" ]; then | 588 | if [ -n "${domain_file}" ]; then |
573 | ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dtb}" \ | 589 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dts}" \ |
574 | -- baremetaldrvlist_xlnx cortexr5-${machine} "${embeddedsw}" || error "lopper failed" | 590 | -- baremetaldrvlist_xlnx $3 "${embeddedsw}" || error "lopper failed" |
575 | else | 591 | else |
576 | ${lopper} -f "${system_dtb}" -- baremetaldrvlist_xlnx cortexr5-${machine} "${embeddedsw}" \ | 592 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" -- baremetaldrvlist_xlnx $3 "${embeddedsw}" \ |
577 | || error "lopper failed" | 593 | || error "lopper failed" |
578 | fi | 594 | fi |
579 | 595 | ||
580 | mv libxil.conf "${libxil}" | 596 | mv libxil.conf "${libxil}" |
581 | mv distro.conf "${distro}" | 597 | mv distro.conf "${features}" |
598 | sed -i ${features} -e "s,DISTRO_FEATURES,MACHINE_FEATURES," | ||
582 | 599 | ||
583 | if [ "$1" = "fsbl" ]; then | 600 | if [ "$1" = "fsbl" ]; then |
584 | if [ ! -e "${psu_init_path}/psu_init.c" ]; then | 601 | if [ ! -e "${psu_init_path}/psu_init.c" ]; then |
@@ -595,80 +612,66 @@ EOF | |||
595 | cat /dev/null >"${conf_file}" | 612 | cat /dev/null >"${conf_file}" |
596 | fi | 613 | fi |
597 | cat <<EOF >>"${conf_file}" | 614 | cat <<EOF >>"${conf_file}" |
598 | CONFIG_DTFILE = "\${TOPDIR}/conf/dtb/${dtb_file}" | 615 | CONFIG_DTFILE = "\${TOPDIR}/conf/dts/${dts_file}" |
599 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
600 | 616 | ||
601 | ESW_MACHINE = "cortexr5-${machine}" | 617 | ESW_MACHINE = "$3" |
602 | DEFAULTTUNE = "cortexr5" | 618 | DEFAULTTUNE = "cortexr5" |
603 | 619 | ||
604 | TMPDIR = "\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}" | 620 | TMPDIR = "\${BASE_TMPDIR}/tmp-${mc_name}" |
605 | 621 | ||
606 | DISTRO = "$yocto_distro" | 622 | DISTRO = "$yocto_distro" |
607 | |||
608 | LIBXIL_CONFIG = "conf/${libxil}" | ||
609 | require conf/${distro} | ||
610 | |||
611 | SKIP_META_VIRT_SANITY_CHECK = "1" | ||
612 | SKIP_META_SECURITY_SANITY_CHECK = "1" | ||
613 | SKIP_META_TPM_SANITY_CHECK = "1" | ||
614 | EOF | 623 | EOF |
615 | } | 624 | } |
616 | 625 | ||
617 | cortex_r5_freertos() { | 626 | cortex_r5_freertos() { |
618 | info "cortex-r5 for FreeRTOS [ $1 ]" | 627 | info "cortex-r5 FreeRTOS configuration for core $2 [ $1 ]" |
619 | 628 | ||
620 | suffix="" | 629 | suffix="" |
621 | [ "$1" != "None" ] && suffix="-$1" | 630 | [ "$1" != "None" ] && suffix="-$1" |
622 | 631 | ||
623 | dtb_file="cortexr5-${machine}${suffix}-freertos.dtb" | 632 | mc_name="cortexr5-$2-${machine}${suffix}-freertos" |
624 | multiconf="${multiconf} cortexr5-${machine}${suffix}-freertos" | 633 | dts_file="${mc_name}.dts" |
625 | conf_file="multiconfig/cortexr5-${machine}${suffix}-freertos.conf" | 634 | multiconf="${multiconf} ${mc_name}" |
626 | libxil="multiconfig/includes/cortexr5-${machine}${suffix}-libxil.conf" | 635 | conf_file="multiconfig/${mc_name}.conf" |
627 | distro="multiconfig/includes/cortexr5-${machine}${suffix}-distro.conf" | 636 | libxil="machine/include/${mach_conf}/${mc_name}-libxil.conf" |
637 | features="machine/include/${mach_conf}/${mc_name}-features.conf" | ||
628 | 638 | ||
629 | # Build device tree | 639 | # Build device tree |
630 | ( | 640 | ( |
631 | cd dtb || error "Unable to cd to dtb dir" | 641 | cd dts || error "Unable to cd to dts dir" |
632 | if [ -n "$domain_file" ]; then | 642 | if [ -n "$domain_file" ]; then |
633 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ | 643 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' \ |
634 | -i "${domain_file}" -i "${lops_dir}/lop-r5-imux.dts" "${system_dtb}" "${dtb_file}" \ | 644 | -i "${domain_file}" -i "${lops_dir}/lop-r5-imux.dts" "${system_dts}" "${dts_file}" \ |
635 | || error "lopper failed" | 645 | || error "lopper failed" |
636 | else | 646 | else |
637 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-r5-imux.dts" \ | 647 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-r5-imux.dts" \ |
638 | "${system_dtb}" "${dtb_file}" || error "lopper failed" | 648 | "${system_dts}" "${dts_file}" || error "lopper failed" |
639 | fi | 649 | fi |
640 | rm -f lop-r5-imux.dts.dtb | 650 | rm -f lop-r5-imux.dts.dtb |
641 | ) | 651 | ) |
642 | 652 | ||
643 | # Build baremetal multiconfig | 653 | # Build baremetal multiconfig |
644 | if [ -n "${domain_file}" ]; then | 654 | if [ -n "${domain_file}" ]; then |
645 | ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dtb}" \ | 655 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dts}" \ |
646 | -- baremetaldrvlist_xlnx cortexr5-${machine} "${embeddedsw}" || error "lopper failed" | 656 | -- baremetaldrvlist_xlnx $3 "${embeddedsw}" || error "lopper failed" |
647 | else | 657 | else |
648 | ${lopper} -f "${system_dtb}" -- baremetaldrvlist_xlnx cortexr5-${machine} "${embeddedsw}" \ | 658 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" -- baremetaldrvlist_xlnx $3 "${embeddedsw}" \ |
649 | || error "lopper failed" | 659 | || error "lopper failed" |
650 | fi | 660 | fi |
651 | 661 | ||
652 | mv libxil.conf "${libxil}" | 662 | mv libxil.conf "${libxil}" |
653 | mv distro.conf "${distro}" | 663 | mv distro.conf "${features}" |
664 | sed -i ${features} -e "s,DISTRO_FEATURES,MACHINE_FEATURES," | ||
654 | 665 | ||
655 | cat <<EOF >"${conf_file}" | 666 | cat <<EOF >"${conf_file}" |
656 | CONFIG_DTFILE = "\${TOPDIR}/conf/dtb/${dtb_file}" | 667 | CONFIG_DTFILE = "\${TOPDIR}/conf/dts/${dts_file}" |
657 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
658 | 668 | ||
659 | ESW_MACHINE = "cortexr5-${machine}" | 669 | ESW_MACHINE = "$3" |
660 | DEFAULTTUNE = "cortexr5" | 670 | DEFAULTTUNE = "cortexr5" |
661 | 671 | ||
662 | TMPDIR = "\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}" | 672 | TMPDIR = "\${BASE_TMPDIR}/tmp-${mc_name}" |
663 | 673 | ||
664 | DISTRO = "xilinx-freertos" | 674 | DISTRO = "xilinx-freertos" |
665 | |||
666 | LIBXIL_CONFIG = "conf/${libxil}" | ||
667 | require conf/${distro} | ||
668 | |||
669 | SKIP_META_VIRT_SANITY_CHECK = "1" | ||
670 | SKIP_META_SECURITY_SANITY_CHECK = "1" | ||
671 | SKIP_META_TPM_SANITY_CHECK = "1" | ||
672 | EOF | 675 | EOF |
673 | } | 676 | } |
674 | 677 | ||
@@ -679,12 +682,15 @@ process_microblaze() { | |||
679 | 682 | ||
680 | info "Generating microblaze processor tunes" | 683 | info "Generating microblaze processor tunes" |
681 | 684 | ||
685 | mkdir -p machine/include/${mach_conf} | ||
682 | ( | 686 | ( |
683 | cd dtb || error "Unable to cd to dtb dir" | 687 | cd dts || error "Unable to cd to dts dir" |
684 | ${lopper} -f --enhanced -i "${lops_dir}/lop-microblaze-yocto.dts" "${system_dtb}" \ | 688 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-microblaze-yocto.dts" "${system_dts}" \ |
685 | || error "lopper failed" | 689 | || error "lopper failed" |
686 | rm -f lop-microblaze-yocto.dts.dtb | 690 | rm -f lop-microblaze-yocto.dts.dtb |
687 | ) >microblaze.conf | 691 | ) >machine/include/${mach_conf}/microblaze.inc |
692 | |||
693 | echo "require conf/machine/include/xilinx-microblaze.inc" >> machine/include/${mach_conf}/microblaze.inc | ||
688 | 694 | ||
689 | microblaze_done=1 | 695 | microblaze_done=1 |
690 | } | 696 | } |
@@ -695,55 +701,48 @@ pmu-microblaze() { | |||
695 | 701 | ||
696 | process_microblaze | 702 | process_microblaze |
697 | 703 | ||
698 | dtb_file="microblaze-pmu.dtb" | 704 | mc_name="microblaze-0-pmu" |
699 | multiconf="${multiconf} microblaze-pmu" | 705 | dts_file="${mc_name}.dts" |
700 | conf_file="multiconfig/microblaze-pmu.conf" | 706 | multiconf="${multiconf} ${mc_name}" |
701 | libxil="multiconfig/includes/microblaze-pmu-libxil.conf" | 707 | multiconf_min="${multiconf_min} ${mc_name}" |
702 | distro="multiconfig/includes/microblaze-pmu-distro.conf" | 708 | conf_file="multiconfig/${mc_name}.conf" |
709 | libxil="machine/include/${mach_conf}/${mc_name}-libxil.conf" | ||
710 | features="machine/include/${mach_conf}/${mc_name}-features.conf" | ||
703 | 711 | ||
704 | pmu_mcdepends="mc::${dtb_file%%.dtb}:pmu-firmware:do_deploy" | 712 | pmu_mcdepends="mc::${mc_name}:pmu-firmware:do_deploy" |
705 | pmu_firmware_deploy_dir="\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}/deploy/images/\${MACHINE}" | 713 | pmu_firmware_deploy_dir="\${BASE_TMPDIR}/tmp-${mc_name}/deploy/images/\${MACHINE}" |
706 | 714 | ||
707 | # Build device tree | 715 | # Build device tree |
708 | ( | 716 | ( |
709 | cd dtb || error "Unable to cd to dtb dir" | 717 | cd dts || error "Unable to cd to dts dir" |
710 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dtb}" "${dtb_file}" || error "lopper failed" | 718 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" "${dts_file}" || error "lopper failed" |
711 | ) | 719 | ) |
712 | 720 | ||
713 | # Build baremetal multiconfig | 721 | # Build baremetal multiconfig |
714 | if [ -n "${domain_file}" ]; then | 722 | if [ -n "${domain_file}" ]; then |
715 | ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dtb}" \ | 723 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dts}" \ |
716 | -- baremetaldrvlist_xlnx microblaze-pmu "${embeddedsw}" || error "lopper failed" | 724 | -- baremetaldrvlist_xlnx $1 "${embeddedsw}" || error "lopper failed" |
717 | else | 725 | else |
718 | ${lopper} -f "${system_dtb}" -- baremetaldrvlist_xlnx microblaze-pmu "${embeddedsw}" \ | 726 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" -- baremetaldrvlist_xlnx $1 "${embeddedsw}" \ |
719 | || error "lopper failed" | 727 | || error "lopper failed" |
720 | fi | 728 | fi |
721 | 729 | ||
722 | mv libxil.conf "${libxil}" | 730 | mv libxil.conf "${libxil}" |
723 | mv distro.conf "${distro}" | 731 | mv distro.conf "${features}" |
732 | sed -i ${features} -e "s,DISTRO_FEATURES,MACHINE_FEATURES," | ||
724 | 733 | ||
725 | cat <<EOF >"${conf_file}" | 734 | cat <<EOF >"${conf_file}" |
726 | CONFIG_DTFILE = "\${TOPDIR}/conf/dtb/${dtb_file}" | 735 | CONFIG_DTFILE = "\${TOPDIR}/conf/dts/${dts_file}" |
727 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
728 | 736 | ||
729 | ESW_MACHINE = "microblaze-pmu" | 737 | ESW_MACHINE = "$1" |
730 | 738 | ||
731 | require conf/microblaze.conf | 739 | DEFAULTTUNE = "microblaze-pmu" |
732 | DEFAULTTUNE = "microblaze" | ||
733 | TUNE_FEATURES:tune-microblaze:forcevariable = "\${TUNE_FEATURES:tune-pmu-microblaze}" | ||
734 | 740 | ||
735 | TARGET_CFLAGS += "-DPSU_PMU=1U" | 741 | TARGET_CFLAGS += "-DPSU_PMU=1U" |
736 | 742 | ||
737 | TMPDIR = "\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}" | 743 | TMPDIR = "\${BASE_TMPDIR}/tmp-${mc_name}" |
738 | 744 | ||
739 | DISTRO = "xilinx-standalone" | 745 | DISTRO = "xilinx-standalone" |
740 | |||
741 | LIBXIL_CONFIG = "conf/${libxil}" | ||
742 | require conf/${distro} | ||
743 | |||
744 | SKIP_META_VIRT_SANITY_CHECK = "1" | ||
745 | SKIP_META_SECURITY_SANITY_CHECK = "1" | ||
746 | SKIP_META_TPM_SANITY_CHECK = "1" | ||
747 | EOF | 746 | EOF |
748 | } | 747 | } |
749 | 748 | ||
@@ -753,55 +752,48 @@ pmc-microblaze() { | |||
753 | 752 | ||
754 | process_microblaze | 753 | process_microblaze |
755 | 754 | ||
756 | dtb_file="microblaze-pmc.dtb" | 755 | mc_name="microblaze-0-pmc" |
757 | multiconf="${multiconf} microblaze-pmc" | 756 | dts_file="${mc_name}.dts" |
758 | conf_file="multiconfig/microblaze-pmc.conf" | 757 | multiconf="${multiconf} ${mc_name}" |
759 | libxil="multiconfig/includes/microblaze-pmc-libxil.conf" | 758 | multiconf_min="${multiconf_min} ${mc_name}" |
760 | distro="multiconfig/includes/microblaze-pmc-distro.conf" | 759 | conf_file="multiconfig/${mc_name}.conf" |
760 | libxil="machine/include/${mach_conf}/${mc_name}-libxil.conf" | ||
761 | features="machine/include/${mach_conf}/${mc_name}-features.conf" | ||
761 | 762 | ||
762 | plm_mcdepends="mc::${dtb_file%%.dtb}:plm-firmware:do_deploy" | 763 | plm_mcdepends="mc::${mc_name}:plm-firmware:do_deploy" |
763 | plm_deploy_dir="\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}/deploy/images/\${MACHINE}" | 764 | plm_deploy_dir="\${BASE_TMPDIR}/tmp-${mc_name}/deploy/images/\${MACHINE}" |
764 | 765 | ||
765 | # Build device tree | 766 | # Build device tree |
766 | ( | 767 | ( |
767 | cd dtb || error "Unable to cd to dtb dir" | 768 | cd dts || error "Unable to cd to dts dir" |
768 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dtb}" "${dtb_file}" || error "lopper failed" | 769 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" "${dts_file}" || error "lopper failed" |
769 | ) | 770 | ) |
770 | 771 | ||
771 | # Build baremetal multiconfig | 772 | # Build baremetal multiconfig |
772 | if [ -n "${domain_file}" ]; then | 773 | if [ -n "${domain_file}" ]; then |
773 | ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dtb}" \ | 774 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dts}" \ |
774 | -- baremetaldrvlist_xlnx microblaze-plm "${embeddedsw}" || error "lopper failed" | 775 | -- baremetaldrvlist_xlnx $1 "${embeddedsw}" || error "lopper failed" |
775 | else | 776 | else |
776 | ${lopper} -f "${system_dtb}" -- baremetaldrvlist_xlnx microblaze-plm "${embeddedsw}" \ | 777 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" -- baremetaldrvlist_xlnx $1 "${embeddedsw}" \ |
777 | || error "lopper failed" | 778 | || error "lopper failed" |
778 | fi | 779 | fi |
779 | 780 | ||
780 | mv libxil.conf "${libxil}" | 781 | mv libxil.conf "${libxil}" |
781 | mv distro.conf "${distro}" | 782 | mv distro.conf "${features}" |
783 | sed -i ${features} -e "s,DISTRO_FEATURES,MACHINE_FEATURES," | ||
782 | 784 | ||
783 | cat <<EOF >"${conf_file}" | 785 | cat <<EOF >"${conf_file}" |
784 | CONFIG_DTFILE = "\${TOPDIR}/conf/dtb/${dtb_file}" | 786 | CONFIG_DTFILE = "\${TOPDIR}/conf/dts/${dts_file}" |
785 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
786 | 787 | ||
787 | ESW_MACHINE = "microblaze-plm" | 788 | ESW_MACHINE = "$1" |
788 | 789 | ||
789 | require conf/microblaze.conf | 790 | DEFAULTTUNE = "microblaze-pmc" |
790 | DEFAULTTUNE = "microblaze" | ||
791 | TUNE_FEATURES:tune-microblaze:forcevariable = "\${TUNE_FEATURES:tune-pmc-microblaze}" | ||
792 | 791 | ||
793 | TARGET_CFLAGS += "-DVERSAL_PLM=1" | 792 | TARGET_CFLAGS += "-DVERSAL_PLM=1" |
794 | 793 | ||
795 | TMPDIR = "\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}" | 794 | TMPDIR = "\${BASE_TMPDIR}/tmp-${mc_name}" |
796 | 795 | ||
797 | DISTRO = "xilinx-standalone" | 796 | DISTRO = "xilinx-standalone" |
798 | |||
799 | LIBXIL_CONFIG = "conf/${libxil}" | ||
800 | require conf/${distro} | ||
801 | |||
802 | SKIP_META_VIRT_SANITY_CHECK = "1" | ||
803 | SKIP_META_SECURITY_SANITY_CHECK = "1" | ||
804 | SKIP_META_TPM_SANITY_CHECK = "1" | ||
805 | EOF | 797 | EOF |
806 | } | 798 | } |
807 | 799 | ||
@@ -811,63 +803,194 @@ psm-microblaze() { | |||
811 | 803 | ||
812 | process_microblaze | 804 | process_microblaze |
813 | 805 | ||
814 | dtb_file="microblaze-psm.dtb" | 806 | mc_name="microblaze-0-psm" |
815 | multiconf="${multiconf} microblaze-psm" | 807 | dts_file="${mc_name}.dts" |
816 | conf_file="multiconfig/microblaze-psm.conf" | 808 | multiconf="${multiconf} ${mc_name}" |
817 | libxil="multiconfig/includes/microblaze-psm-libxil.conf" | 809 | multiconf_min="${multiconf_min} ${mc_name}" |
818 | distro="multiconfig/includes/microblaze-psm-distro.conf" | 810 | conf_file="multiconfig/${mc_name}.conf" |
811 | libxil="machine/include/${mach_conf}/${mc_name}-libxil.conf" | ||
812 | features="machine/include/${mach_conf}/${mc_name}-features.conf" | ||
819 | 813 | ||
820 | psm_mcdepends="mc::${dtb_file%%.dtb}:psm-firmware:do_deploy" | 814 | psm_mcdepends="mc::${mc_name}:psm-firmware:do_deploy" |
821 | psm_firmware_deploy_dir="\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}/deploy/images/\${MACHINE}" | 815 | psm_firmware_deploy_dir="\${BASE_TMPDIR}/tmp-${mc_name}/deploy/images/\${MACHINE}" |
822 | 816 | ||
823 | # Build device tree | 817 | # Build device tree |
824 | ( | 818 | ( |
825 | cd dtb || error "Unable to cd to dtb dir" | 819 | cd dts || error "Unable to cd to dts dir" |
826 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dtb}" "${dtb_file}" || error "lopper failed" | 820 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" "${dts_file}" || error "lopper failed" |
827 | ) | 821 | ) |
828 | 822 | ||
829 | # Build baremetal multiconfig | 823 | # Build baremetal multiconfig |
830 | if [ -n "${domain_file}" ]; then | 824 | if [ -n "${domain_file}" ]; then |
831 | ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dtb}" \ | 825 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -x '*.yaml' -i "${domain_file}" "${system_dts}" \ |
832 | -- baremetaldrvlist_xlnx microblaze-psm "${embeddedsw}" || error "lopper failed" | 826 | -- baremetaldrvlist_xlnx $1 "${embeddedsw}" || error "lopper failed" |
833 | else | 827 | else |
834 | ${lopper} -f "${system_dtb}" -- baremetaldrvlist_xlnx microblaze-psm "${embeddedsw}" \ | 828 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f "${system_dts}" -- baremetaldrvlist_xlnx $1 "${embeddedsw}" \ |
835 | || error "lopper failed" | 829 | || error "lopper failed" |
836 | fi | 830 | fi |
837 | 831 | ||
838 | mv libxil.conf "${libxil}" | 832 | mv libxil.conf "${libxil}" |
839 | mv distro.conf "${distro}" | 833 | mv distro.conf "${features}" |
834 | sed -i ${features} -e "s,DISTRO_FEATURES,MACHINE_FEATURES," | ||
840 | 835 | ||
841 | cat <<EOF >"${conf_file}" | 836 | cat <<EOF >"${conf_file}" |
842 | CONFIG_DTFILE = "\${TOPDIR}/conf/dtb/${dtb_file}" | 837 | CONFIG_DTFILE = "\${TOPDIR}/conf/dts/${dts_file}" |
843 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
844 | 838 | ||
845 | ESW_MACHINE = "microblaze-psm" | 839 | ESW_MACHINE = "$1" |
846 | 840 | ||
847 | require conf/microblaze.conf | 841 | DEFAULTTUNE = "microblaze-psm" |
848 | DEFAULTTUNE = "microblaze" | ||
849 | TUNE_FEATURES:tune-microblaze:forcevariable = "\${TUNE_FEATURES:tune-psm-microblaze}" | ||
850 | 842 | ||
851 | TARGET_CFLAGS += "-DVERSAL_psm=1" | 843 | TARGET_CFLAGS += "-DVERSAL_psm=1" |
852 | 844 | ||
853 | TMPDIR = "\${BASE_TMPDIR}/tmp-${dtb_file%%.dtb}" | 845 | TMPDIR = "\${BASE_TMPDIR}/tmp-${mc_name}" |
854 | 846 | ||
855 | DISTRO = "xilinx-standalone" | 847 | DISTRO = "xilinx-standalone" |
848 | EOF | ||
849 | } | ||
856 | 850 | ||
857 | LIBXIL_CONFIG = "conf/${libxil}" | 851 | generate_machine() { |
858 | require conf/${distro} | 852 | info "Generating machine conf file" |
853 | conf_file="machine/${mach_conf}.conf" | ||
854 | |||
855 | # Machine include file | ||
856 | if [ -z ${incmachine} ]; then | ||
857 | if [ -n ${soc_variant} ]; then | ||
858 | incmachine="${machine}-${soc_variant}-generic.conf" | ||
859 | else | ||
860 | incmachine="${machine}-generic.conf" | ||
861 | fi | ||
862 | fi | ||
863 | |||
864 | mkdir -p machine | ||
865 | # Generate header | ||
866 | cat <<EOF >"${conf_file}" | ||
867 | #@TYPE: Machine | ||
868 | #@NAME: ${mach_conf} | ||
869 | #@DESCRIPTION: ${model} | ||
870 | |||
871 | #### Preamble | ||
872 | MACHINEOVERRIDES =. "\${@['', '${mach_conf}:']['${mach_conf}' != '\${MACHINE}']}" | ||
873 | #### Regular settings follow | ||
859 | 874 | ||
860 | SKIP_META_VIRT_SANITY_CHECK = "1" | ||
861 | SKIP_META_SECURITY_SANITY_CHECK = "1" | ||
862 | SKIP_META_TPM_SANITY_CHECK = "1" | ||
863 | EOF | 875 | EOF |
864 | } | ||
865 | 876 | ||
866 | parse_cpus() { | 877 | if [ "${machine}" == "zynqmp" ]; then |
867 | info "Generating configuration..." | 878 | cat <<EOF >>"${conf_file}" |
879 | TUNEFILE[microblaze-pmu] = "conf/machine/include/${mach_conf}/microblaze.inc" | ||
880 | EOF | ||
881 | elif [ "${machine}" == "versal" ]; then | ||
882 | cat <<EOF >>"${conf_file}" | ||
883 | TUNEFILE[microblaze-pmc] = "conf/machine/include/${mach_conf}/microblaze.inc" | ||
884 | TUNEFILE[microblaze-psm] = "conf/machine/include/${mach_conf}/microblaze.inc" | ||
885 | EOF | ||
886 | fi | ||
887 | |||
888 | sysdt_path=$(dirname ${system_dts}) | ||
889 | sysdt_base=$(basename ${system_dts}) | ||
890 | cat <<EOF >>"${conf_file}" | ||
891 | |||
892 | # Set the default (linux) domain device tree | ||
893 | CONFIG_DTFILE ?= "\${TOPDIR}/conf/dts/${system_conf}" | ||
894 | CONFIG_DTFILE[vardepsexclude] += "TOPDIR" | ||
895 | |||
896 | require conf/machine/${incmachine} | ||
897 | |||
898 | # System Device Tree does not use HDF_MACHINE | ||
899 | HDF_MACHINE = "" | ||
900 | |||
901 | # Set the system device trees | ||
902 | SYSTEM_DTFILE_DIR = "${sysdt_path}" | ||
903 | SYSTEM_DTFILE = "\${SYSTEM_DTFILE_DIR}/${sysdt_base}" | ||
904 | SYSTEM_DTFILE[vardepsexclude] += "SYSTEM_DTFILE_DIR" | ||
905 | |||
906 | # Load the dynamic machine features | ||
907 | include conf/machine/include/${mach_conf}/\${BB_CURRENT_MC}-features.conf | ||
908 | LIBXIL_CONFIG = "conf/machine/include/${mach_conf}/\${BB_CURRENT_MC}-libxil.conf" | ||
909 | |||
910 | EOF | ||
911 | |||
912 | if [ -n "${fsbl_mcdepends}" ]; then | ||
913 | cat <<EOF >>"${conf_file}" | ||
914 | # First Stage Boot Loader | ||
915 | FSBL_DEPENDS = "" | ||
916 | FSBL_MCDEPENDS = "${fsbl_mcdepends}" | ||
917 | FSBL_DEPLOY_DIR = "${fsbl_deploy_dir}" | ||
918 | |||
919 | EOF | ||
920 | fi | ||
921 | if [ -n "${r5fsbl_mcdepends}" ]; then | ||
922 | cat <<EOF >>"${conf_file}" | ||
923 | # Cortex-R5 First Stage Boot Loader | ||
924 | R5FSBL_DEPENDS = "" | ||
925 | R5FSBL_MCDEPENDS = "${r5fsbl_mcdepends}" | ||
926 | R5FSBL_DEPLOY_DIR = "${r5fsbl_deploy_dir}" | ||
927 | |||
928 | EOF | ||
929 | fi | ||
930 | if [ -n "${pmu_mcdepends}" ]; then | ||
931 | cat <<EOF >>"${conf_file}" | ||
932 | # PMU Firware | ||
933 | PMU_DEPENDS = "" | ||
934 | PMU_MCDEPENDS = "${pmu_mcdepends}" | ||
935 | PMU_FIRMWARE_DEPLOY_DIR = "${pmu_firmware_deploy_dir}" | ||
936 | |||
937 | EOF | ||
938 | fi | ||
939 | if [ -n "${plm_mcdepends}" ]; then | ||
940 | cat <<EOF >>"${conf_file}" | ||
941 | # Platform Loader and Manager | ||
942 | PLM_DEPENDS = "" | ||
943 | PLM_MCDEPENDS = "${plm_mcdepends}" | ||
944 | PLM_DEPLOY_DIR = "${plm_deploy_dir}" | ||
945 | |||
946 | EOF | ||
947 | fi | ||
948 | if [ -n "${psm_mcdepends}" ]; then | ||
949 | cat <<EOF >>"${conf_file}" | ||
950 | # PSM Firmware | ||
951 | PSM_DEPENDS = "" | ||
952 | PSM_MCDEPENDS = "${psm_mcdepends}" | ||
953 | PSM_FIRMWARE_DEPLOY_DIR = "${psm_firmware_deploy_dir}" | ||
954 | |||
955 | EOF | ||
956 | fi | ||
957 | |||
958 | if [ -n "${full_pdi_path}" ]; then | ||
959 | pdi_path_dir=$(dirname ${full_pdi_path}) | ||
960 | pdi_path_base=$(basename ${full_pdi_path}) | ||
961 | cat <<EOF >>"${conf_file}" | ||
962 | # Versal PDI | ||
963 | PDI_PATH_DIR = "${pdi_path_dir}" | ||
964 | PDI_PATH = "\${PDI_PATH_DIR}/${pdi_path_base}" | ||
965 | PDI_PATH[vardepsexclude] += "PDI_PATH_DIR" | ||
966 | |||
967 | EOF | ||
968 | fi | ||
969 | |||
970 | cat <<EOF >>"${conf_file}" | ||
971 | # Enable the correct version of the firmware components | ||
972 | PREFERRED_VERSION_fsbl-firmware = "2023.1_sdt_experimental%" | ||
973 | PREFERRED_VERSION_pmu-firmware = "2023.1_sdt_experimental%" | ||
974 | PREFERRED_VERSION_plm-firmware = "2023.1_sdt_experimental%" | ||
975 | PREFERRED_VERSION_psm-firmware = "2023.1_sdt_experimental%" | ||
976 | |||
977 | # Exclude BASE_TMPDIR from hash calculations | ||
978 | BB_HASHEXCLUDE_COMMON:append = " BASE_TMPDIR" | ||
979 | |||
980 | # Update bootbin to use proper device tree | ||
981 | BIF_PARTITION_IMAGE[device-tree] = "\${RECIPE_SYSROOT}/boot/devicetree/\${@os.path.basename(d.getVar('CONFIG_DTFILE').replace('.dts', '.dtb'))}" | ||
982 | # Remap boot files to ensure the right device tree is listed first | ||
983 | IMAGE_BOOT_FILES =+ "devicetree/\${@os.path.basename(d.getVar('CONFIG_DTFILE').replace('.dts', '.dtb'))}" | ||
868 | 984 | ||
869 | while read -r cpu domain os_hint; do | 985 | #### No additional settings should be after the Postamble |
986 | #### Postamble | ||
987 | PACKAGE_EXTRA_ARCHS:append = "\${@['', ' ${mach_conf//-/_}']['${mach_conf}' != "\${MACHINE}"]}" | ||
988 | EOF | ||
989 | } | ||
870 | 990 | ||
991 | parse_cpus() { | ||
992 | gen_linux_dts="None" | ||
993 | while read -r cpu core domain cpu_name os_hint; do | ||
871 | # Skip commented lines and WARNINGs | 994 | # Skip commented lines and WARNINGs |
872 | case ${cpu} in | 995 | case ${cpu} in |
873 | \#* | \[WARNING\]:) continue ;; | 996 | \#* | \[WARNING\]:) continue ;; |
@@ -877,19 +1000,28 @@ parse_cpus() { | |||
877 | 1000 | ||
878 | arm,cortex-a53) | 1001 | arm,cortex-a53) |
879 | # We need a base cortex_a53_baremetal for the FSBL | 1002 | # We need a base cortex_a53_baremetal for the FSBL |
880 | cortex_a53_baremetal fsbl | 1003 | if [ "${core}" == 0 ]; then |
1004 | cortex_a53_baremetal fsbl ${core} ${cpu_name} | ||
1005 | fi | ||
881 | if [ "${os_hint}" == "None" ]; then | 1006 | if [ "${os_hint}" == "None" ]; then |
882 | cortex_a53_linux "${domain}" | 1007 | if [ "${gen_linux_dts}" == "None" ]; then |
883 | cortex_a53_baremetal "${domain}" | 1008 | cortex_a53_linux "${domain}" |
884 | cortex_a53_freertos "${domain}" | 1009 | gen_linux_dts="True" |
1010 | fi | ||
1011 | cortex_a53_baremetal "${domain}" ${core} ${cpu_name} | ||
1012 | cortex_a53_freertos "${domain}" ${core} ${cpu_name} | ||
885 | else | 1013 | else |
886 | case "${os_hint}" in | 1014 | case "${os_hint}" in |
887 | linux*) | 1015 | linux*) |
888 | cortex_a53_linux "${domain}" ;; | 1016 | if [ "${gen_linux_dts}" == "None" ]; then |
1017 | cortex_a53_linux "${domain}" | ||
1018 | gen_linux_dts="True" | ||
1019 | fi | ||
1020 | ;; | ||
889 | baremetal*) | 1021 | baremetal*) |
890 | cortex_a53_baremetal "${domain}" ;; | 1022 | cortex_a53_baremetal "${domain}" ${core} ${cpu_name};; |
891 | freertos*) | 1023 | freertos*) |
892 | cortex_a53_freertos "${domain}" ;; | 1024 | cortex_a53_freertos "${domain}" ${core} ${cpu_name};; |
893 | *) | 1025 | *) |
894 | warn "cortex-a53 for unknown OS (${os_hint}), parsing baremetal. ${domain}" | 1026 | warn "cortex-a53 for unknown OS (${os_hint}), parsing baremetal. ${domain}" |
895 | cortex_a53_baremetal "${domain}" | 1027 | cortex_a53_baremetal "${domain}" |
@@ -899,36 +1031,42 @@ parse_cpus() { | |||
899 | 1031 | ||
900 | arm,cortex-a72) | 1032 | arm,cortex-a72) |
901 | if [ "${os_hint}" == "None" ]; then | 1033 | if [ "${os_hint}" == "None" ]; then |
902 | cortex_a72_linux "${domain}" | 1034 | if [ "${gen_linux_dts}" == "None" ]; then |
903 | cortex_a72_baremetal "${domain}" | 1035 | cortex_a72_linux "${domain}" |
904 | cortex_a72_freertos "${domain}" | 1036 | gen_linux_dts="True" |
1037 | fi | ||
1038 | cortex_a72_baremetal "${domain}" ${core} ${cpu_name} | ||
1039 | cortex_a72_freertos "${domain}" ${core} ${cpu_name} | ||
905 | else | 1040 | else |
906 | case "${os_hint}" in | 1041 | case "${os_hint}" in |
907 | linux*) | 1042 | linux*) |
908 | cortex_a72_linux "${domain}" ;; | 1043 | if [ "${gen_linux_dts}" == "None" ]; then |
1044 | cortex_a72_linux "${domain}" | ||
1045 | gen_linux_dts="True" | ||
1046 | fi | ||
1047 | ;; | ||
909 | baremetal*) | 1048 | baremetal*) |
910 | cortex_a72_baremetal "${domain}" ;; | 1049 | cortex_a72_baremetal "${domain}" ${core} ${cpu_name};; |
911 | freertos*) | 1050 | freertos*) |
912 | cortex_a72_freertos "${domain}" ;; | 1051 | cortex_a72_freertos "${domain}" ${core} ${cpu_name};; |
913 | *) | 1052 | *) |
914 | warn "cortex-a72 for unknown OS (${os_hint}), parsing baremetal. ${domain}" | 1053 | warn "cortex-a72 for unknown OS (${os_hint}), parsing baremetal. ${domain}" |
915 | cortex_a72_baremetal "${domain}" | 1054 | cortex_a72_baremetal "${domain}" |
916 | esac | 1055 | esac |
917 | fi | 1056 | fi |
918 | ;; | 1057 | ;; |
919 | |||
920 | arm,cortex-r5) | 1058 | arm,cortex-r5) |
921 | if [ "${os_hint}" == "None" ]; then | 1059 | if [ "${os_hint}" == "None" ]; then |
922 | # We need a base cortex_r5_baremetal for the FSBL for ZynqMP platform | 1060 | # We need a base cortex_r5_baremetal for the FSBL for ZynqMP platform |
923 | [ "${machine}" = "zynqmp" ] && cortex_r5_baremetal fsbl | 1061 | [ "${machine}" = "zynqmp" ] && cortex_r5_baremetal fsbl ${core} ${cpu_name} |
924 | cortex_r5_baremetal "${domain}" | 1062 | cortex_r5_baremetal "${domain}" ${core} ${cpu_name} |
925 | cortex_r5_freertos "${domain}" | 1063 | cortex_r5_freertos "${domain}" ${core} ${cpu_name} |
926 | else | 1064 | else |
927 | case "${os_hint}" in | 1065 | case "${os_hint}" in |
928 | baremetal*) | 1066 | baremetal*) |
929 | cortex_r5_baremetal "${domain}" ;; | 1067 | cortex_r5_baremetal "${domain}" ${core} ${cpu_name};; |
930 | freertos*) | 1068 | freertos*) |
931 | cortex_r5_freertos "${domain}" ;; | 1069 | cortex_r5_freertos "${domain}" ${core} ${cpu_name};; |
932 | *) | 1070 | *) |
933 | warn "cortex-r5 for unknown OS (${os_hint}), parsing baremetal. ${domain}" | 1071 | warn "cortex-r5 for unknown OS (${os_hint}), parsing baremetal. ${domain}" |
934 | cortex_r5_baremetal "${domain}" | 1072 | cortex_r5_baremetal "${domain}" |
@@ -949,14 +1087,13 @@ parse_cpus() { | |||
949 | ;; | 1087 | ;; |
950 | 1088 | ||
951 | pmu-microblaze) | 1089 | pmu-microblaze) |
952 | pmu-microblaze ;; | 1090 | pmu-microblaze ${cpu_name};; |
953 | 1091 | ||
954 | pmc-microblaze) | 1092 | pmc-microblaze) |
955 | pmc-microblaze ;; | 1093 | pmc-microblaze ${cpu_name};; |
956 | 1094 | ||
957 | psm-microblaze) | 1095 | psm-microblaze) |
958 | psm-microblaze ;; | 1096 | psm-microblaze ${cpu_name};; |
959 | |||
960 | *) | 1097 | *) |
961 | warn "Unknown CPU ${cpu}" | 1098 | warn "Unknown CPU ${cpu}" |
962 | 1099 | ||
@@ -965,45 +1102,45 @@ parse_cpus() { | |||
965 | } | 1102 | } |
966 | 1103 | ||
967 | gen_local_conf() { | 1104 | gen_local_conf() { |
968 | echo "# Adjust BASE_TMPDIR if you want to move the tmpdirs elsewhere" >> $1 | 1105 | cat << EOF >> $1 |
969 | echo "BASE_TMPDIR ?= \"\${TOPDIR}\"" >> $1 | 1106 | |
970 | [ -n "${system_conf}" ] && echo "require ${system_conf}" >> $1 | 1107 | # Avoid errors in some baremetal configs as these layers may be present |
971 | echo "SYSTEM_DTFILE = \"${system_dtb}\"" >> $1 | 1108 | # but are not used. Note the following lines are optional and can be |
972 | echo "BBMULTICONFIG += \"${multiconf}\"" >> $1 | 1109 | # safetly disabled. |
973 | if [ -n "${fsbl_mcdepends}" ]; then | 1110 | SKIP_META_VIRT_SANITY_CHECK = "1" |
974 | echo "FSBL_DEPENDS = \"\"" >> $1 | 1111 | SKIP_META_SECURITY_SANITY_CHECK = "1" |
975 | echo "FSBL_MCDEPENDS = \"${fsbl_mcdepends}\"" >> $1 | 1112 | SKIP_META_TPM_SANITY_CHECK = "1" |
976 | echo "FSBL_DEPLOY_DIR = \"${fsbl_deploy_dir}\"" >> $1 | 1113 | |
977 | fi | 1114 | # Each multiconfig will define it's own TMPDIR, this is the new default based |
978 | if [ -n "${r5fsbl_mcdepends}" ]; then | 1115 | # on BASE_TMPDIR for the Linux build |
979 | echo "R5FSBL_DEPENDS = \"\"" >> $1 | 1116 | TMPDIR = "\${BASE_TMPDIR}/tmp" |
980 | echo "R5FSBL_MCDEPENDS = \"${r5fsbl_mcdepends}\"" >> $1 | 1117 | |
981 | echo "R5FSBL_DEPLOY_DIR = \"${r5fsbl_deploy_dir}\"" >> $1 | 1118 | # Use the newly generated MACHINE |
982 | fi | 1119 | MACHINE = "${mach_conf}" |
983 | if [ -n "${pmu_mcdepends}" ]; then | 1120 | |
984 | echo "PMU_DEPENDS = \"\"" >> $1 | 1121 | # All of the TMPDIRs must be in a common parent directory. This is defined |
985 | echo "PMU_MCDEPENDS = \"${pmu_mcdepends}\"" >> $1 | 1122 | # as BASE_TMPDIR. |
986 | echo "PMU_FIRMWARE_DEPLOY_DIR = \"${pmu_firmware_deploy_dir}\"" >> $1 | 1123 | # Adjust BASE_TMPDIR if you want to move the tmpdirs elsewhere, such as /tmp |
987 | fi | 1124 | BASE_TMPDIR ?= "\${TOPDIR}" |
988 | if [ -n "${plm_mcdepends}" ]; then | 1125 | |
989 | echo "PLM_DEPENDS = \"\"" >> $1 | 1126 | # The following is the full set of multiconfigs for this configuration |
990 | echo "PLM_MCDEPENDS = \"${plm_mcdepends}\"" >> $1 | 1127 | # A large list can cause a slow parse. |
991 | echo "PLM_DEPLOY_DIR = \"${plm_deploy_dir}\"" >> $1 | 1128 | BBMULTICONFIG ?= "${multiconf}" |
992 | fi | 1129 | # Alternatively trim the list to the minimum |
993 | if [ -n "${psm_mcdepends}" ]; then | 1130 | #BBMULTICONFIG = "${multiconf_min}" |
994 | echo "PSM_DEPENDS = \"\"" >> $1 | 1131 | EOF |
995 | echo "PSM_MCDEPENDS = \"${psm_mcdepends}\"" >> $1 | ||
996 | echo "PSM_FIRMWARE_DEPLOY_DIR = \"${psm_firmware_deploy_dir}\"" >> $1 | ||
997 | fi | ||
998 | [ "${machine}" = "versal" ] && echo "PDI_PATH = \"${full_pdi_path}\"" >> $1 | ||
999 | echo | ||
1000 | } | 1132 | } |
1001 | 1133 | ||
1002 | gen_petalinux_conf() { | 1134 | gen_petalinux_conf() { |
1003 | cd "${config_dir}" || exit | 1135 | cd "${config_dir}" || exit |
1004 | ( | 1136 | ( |
1005 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} "${system_dtb}" -- petalinuxconfig_xlnx ${petalinux_schema} \ | 1137 | if [ "$machine" == "zynqmp" ]; then |
1006 | || error "lopper failed" | 1138 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} "${system_dts}" -- petalinuxconfig_xlnx psu_cortexa53_0 ${petalinux_schema} \ |
1139 | || error "lopper failed" | ||
1140 | else | ||
1141 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} "${system_dts}" -- petalinuxconfig_xlnx psv_cortexa72_0 ${petalinux_schema} \ | ||
1142 | || error "lopper failed" | ||
1143 | fi | ||
1007 | ) | 1144 | ) |
1008 | } | 1145 | } |
1009 | parse_args "$@" | 1146 | parse_args "$@" |
@@ -1020,20 +1157,47 @@ multiconf="" | |||
1020 | cpulist=$(mktemp) | 1157 | cpulist=$(mktemp) |
1021 | 1158 | ||
1022 | priordir=$(pwd) | 1159 | priordir=$(pwd) |
1023 | # Generate CPU list | ||
1024 | cd "${config_dir}" || exit | 1160 | cd "${config_dir}" || exit |
1025 | mkdir -p dtb multiconfig/includes | 1161 | mkdir -p dts multiconfig machine/include |
1162 | # Get mach_conf name and model name | ||
1026 | ( | 1163 | ( |
1027 | cd dtb || error "Unable to cd to dtb dir" | 1164 | cd dts || error "Unable to cd to dts dir" |
1028 | ${lopper} -f --enhanced -i "${lops_dir}/lop-xilinx-id-cpus.dts" "${system_dtb}" \ | 1165 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-machine-name.dts" "${system_dts}" \ |
1166 | /dev/null > ${cpulist} || error "lopper failed" | ||
1167 | rm -f "lop-machine-name.dts.dtb" | ||
1168 | ) | ||
1169 | read local_mach_conf deviceid model < ${cpulist} | ||
1170 | if [ -z "${mach_conf}" ]; then | ||
1171 | mach_conf=${local_mach_conf} | ||
1172 | fi | ||
1173 | |||
1174 | # Generate CPU list | ||
1175 | ( | ||
1176 | cd dts || error "Unable to cd to dts dir" | ||
1177 | LOPPER_DTC_FLAGS="-b 0 -@" ${lopper} -f --enhanced -i "${lops_dir}/lop-xilinx-id-cpus.dts" "${system_dts}" \ | ||
1029 | /dev/null > ${cpulist} || error "lopper failed" | 1178 | /dev/null > ${cpulist} || error "lopper failed" |
1030 | rm -f "lop-xilinx-id-cpus.dts.dtb" | 1179 | rm -f "lop-xilinx-id-cpus.dts.dtb" |
1031 | ) | 1180 | ) |
1032 | 1181 | ||
1033 | detect_machine | 1182 | detect_machine |
1034 | 1183 | # Now that we know the machine name, we can create the directory | |
1184 | mkdir -p machine/include/${mach_conf} | ||
1185 | |||
1186 | echo "System Configuration:" | ||
1187 | echo "MODEL = \"${model}\"" | ||
1188 | echo "MACHINE = \"${mach_conf}\"" | ||
1189 | echo "DEVICE_ID = \"${deviceid}\"" | ||
1190 | echo "SOC_FAMILY = \"${machine}\"" | ||
1191 | echo "SOC_VARIANT = \"${soc_variant}\"" | ||
1192 | echo "CPUs:" | ||
1193 | dump_cpus " = " | ||
1194 | echo | ||
1195 | |||
1196 | info "Generating configuration..." | ||
1035 | parse_cpus | 1197 | parse_cpus |
1036 | 1198 | ||
1199 | generate_machine | ||
1200 | |||
1037 | cd ${priordir} | 1201 | cd ${priordir} |
1038 | if [ -z "${localconf}" ]; then | 1202 | if [ -z "${localconf}" ]; then |
1039 | echo | 1203 | echo |
@@ -1058,4 +1222,4 @@ if [ -n "${petalinux_schema}" ]; then | |||
1058 | fi | 1222 | fi |
1059 | 1223 | ||
1060 | # Cleanup our temp file | 1224 | # Cleanup our temp file |
1061 | rm ${cpulist} | 1225 | rm -rf ${cpulist} ${config_dir}/CMakeLists.txt ${config_dir}/DRVLISTConfig.cmake |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/avbuf_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/avbuf_git.bb index 2ac8954b..7edd2d9d 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/avbuf_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/avbuf_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "avbuf" | 3 | REQUIRED_MACHINE_FEATURES = "avbuf" |
4 | 4 | ||
5 | inherit esw | 5 | inherit esw |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/axicdma-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/axicdma-example_git.bb index 081609dd..1846b291 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/axicdma-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/axicdma-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "axicdma" | 3 | REQUIRED_MACHINE_FEATURES = "axicdma" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/axicdma/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/axicdma/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/axicdma_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/axicdma_git.bb index 3c7e8b72..47111dc5 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/axicdma_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/axicdma_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "axicdma" | 3 | REQUIRED_MACHINE_FEATURES = "axicdma" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/axidma-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/axidma-example_git.bb index db8658a1..68a26f45 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/axidma-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/axidma-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "axidma" | 3 | REQUIRED_MACHINE_FEATURES = "axidma" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/axidma/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/axidma/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/axidma_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/axidma_git.bb index 8b24a67e..c385d13f 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/axidma_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/axidma_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "axidma" | 3 | REQUIRED_MACHINE_FEATURES = "axidma" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/axiethernet-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/axiethernet-example_git.bb index 8dee5feb..04c2c151 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/axiethernet-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/axiethernet-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "axiethernet" | 3 | REQUIRED_MACHINE_FEATURES = "axiethernet" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/axiethernet/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/axiethernet/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/axiethernet_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/axiethernet_git.bb index b230e6ad..0b635859 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/axiethernet_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/axiethernet_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "axiethernet" | 3 | REQUIRED_MACHINE_FEATURES = "axiethernet" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/axipmon-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/axipmon-example_git.bb index 4c949e99..4aa716e7 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/axipmon-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/axipmon-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "axipmon" | 3 | REQUIRED_MACHINE_FEATURES = "axipmon" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/axipmon/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/axipmon/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/axipmon_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/axipmon_git.bb index 3fa70322..ff2eae91 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/axipmon_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/axipmon_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "axipmon" | 3 | REQUIRED_MACHINE_FEATURES = "axipmon" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/axis-switch_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/axis-switch_git.bb index 2f69db45..b34dedb0 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/axis-switch_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/axis-switch_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "axis-switch" | 3 | REQUIRED_MACHINE_FEATURES = "axis-switch" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/axivdma-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/axivdma-example_git.bb index 6742356c..2866c02b 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/axivdma-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/axivdma-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "axivdma" | 3 | REQUIRED_MACHINE_FEATURES = "axivdma" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/axivdma/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/axivdma/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/axivdma_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/axivdma_git.bb index 5f22d212..15268629 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/axivdma_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/axivdma_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "axivdma" | 3 | REQUIRED_MACHINE_FEATURES = "axivdma" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/bram-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/bram-example_git.bb index 6e2c4918..a3145467 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/bram-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/bram-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "bram" | 3 | REQUIRED_MACHINE_FEATURES = "bram" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/bram/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/bram/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/bram_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/bram_git.bb index 400da93e..3c81c619 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/bram_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/bram_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "bram" | 3 | REQUIRED_MACHINE_FEATURES = "bram" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/can-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/can-example_git.bb index 9e6417ce..115852fa 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/can-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/can-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "can" | 3 | REQUIRED_MACHINE_FEATURES = "can" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/can/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/can/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/can_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/can_git.bb index 07024082..eb7fc473 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/can_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/can_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "can" | 3 | REQUIRED_MACHINE_FEATURES = "can" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/canfd-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/canfd-example_git.bb index c8395f4e..84276569 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/canfd-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/canfd-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "canfd" | 3 | REQUIRED_MACHINE_FEATURES = "canfd" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/canfd/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/canfd/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/canfd_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/canfd_git.bb index 719126e5..5f2e6ea8 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/canfd_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/canfd_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "canfd" | 3 | REQUIRED_MACHINE_FEATURES = "canfd" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/canps-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/canps-example_git.bb index 17ac3d0c..574dc563 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/canps-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/canps-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "canps" | 3 | REQUIRED_MACHINE_FEATURES = "canps" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/canps/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/canps/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/canps_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/canps_git.bb index ae88f744..c9f61cd2 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/canps_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/canps_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "canps" | 3 | REQUIRED_MACHINE_FEATURES = "canps" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/cframe_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/cframe_git.bb index bb4a540f..6ffdf85d 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/cframe_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/cframe_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "cframe" | 3 | REQUIRED_MACHINE_FEATURES = "cframe" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/cfupmc_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/cfupmc_git.bb index 6b15f41b..3cb675bc 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/cfupmc_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/cfupmc_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "cfupmc" | 3 | REQUIRED_MACHINE_FEATURES = "cfupmc" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/clk-wiz_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/clk-wiz_git.bb index a1ce7ed0..ae0453a1 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/clk-wiz_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/clk-wiz_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "clk-wiz" | 3 | REQUIRED_MACHINE_FEATURES = "clk-wiz" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/clockps-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/clockps-example_git.bb index 67fb695e..f9c5bce6 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/clockps-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/clockps-example_git.bb | |||
@@ -2,7 +2,7 @@ inherit esw deploy features_check | |||
2 | 2 | ||
3 | ESW_COMPONENT_SRC = "XilinxProcessorIPLib/drivers/clockps/examples/" | 3 | ESW_COMPONENT_SRC = "XilinxProcessorIPLib/drivers/clockps/examples/" |
4 | 4 | ||
5 | REQUIRED_DISTRO_FEATURES = "clockps" | 5 | REQUIRED_MACHINE_FEATURES = "clockps" |
6 | 6 | ||
7 | DEPENDS += "libxil xiltimer resetps" | 7 | DEPENDS += "libxil xiltimer resetps" |
8 | 8 | ||
@@ -12,7 +12,6 @@ do_configure:prepend() { | |||
12 | ( | 12 | ( |
13 | cd ${S} | 13 | cd ${S} |
14 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 14 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
15 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
16 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 15 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
17 | ) | 16 | ) |
18 | } | 17 | } |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/clockps_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/clockps_git.bb index 99ec8e85..4bddb2c0 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/clockps_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/clockps_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "clockps" | 3 | REQUIRED_MACHINE_FEATURES = "clockps" |
4 | 4 | ||
5 | inherit esw | 5 | inherit esw |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/common_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/common_git.bb index d01a8cac..541ff225 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/common_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/common_git.bb | |||
@@ -1,14 +1,14 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "common" | 3 | REQUIRED_MACHINE_FEATURES = "common" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
7 | DEPENDS += "xilstandalone " | 7 | DEPENDS += "xilstandalone " |
8 | 8 | ||
9 | PACKAGECONFIG ?= "${@bb.utils.contains("DISTRO_FEATURES", "clockps", "clockps", "", d)} \ | 9 | PACKAGECONFIG ?= "${@bb.utils.contains("MACHINE_FEATURES", "clockps", "clockps", "", d)} \ |
10 | ${@bb.utils.contains("DISTRO_FEATURES", "scugic", "scugic", "", d)} \ | 10 | ${@bb.utils.contains("MACHINE_FEATURES", "scugic", "scugic", "", d)} \ |
11 | ${@bb.utils.contains("DISTRO_FEATURES", "intc", "intc", "", d)}" | 11 | ${@bb.utils.contains("MACHINE_FEATURES", "intc", "intc", "", d)}" |
12 | PACKAGECONFIG[clockps] = "${RECIPE_SYSROOT}/usr/lib/libclockps.a,,clockps,," | 12 | PACKAGECONFIG[clockps] = "${RECIPE_SYSROOT}/usr/lib/libclockps.a,,clockps,," |
13 | PACKAGECONFIG[scugic] = "${RECIPE_SYSROOT}/usr/lib/libscugic.a,,scugic,," | 13 | PACKAGECONFIG[scugic] = "${RECIPE_SYSROOT}/usr/lib/libscugic.a,,scugic,," |
14 | PACKAGECONFIG[intc] = "${RECIPE_SYSROOT}/usr/lib/libintc.a,,intc,," | 14 | PACKAGECONFIG[intc] = "${RECIPE_SYSROOT}/usr/lib/libintc.a,,intc,," |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/coresightps-dcc_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/coresightps-dcc_git.bb index f1dce225..9110b51e 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/coresightps-dcc_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/coresightps-dcc_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "coresightps-dcc" | 3 | REQUIRED_MACHINE_FEATURES = "coresightps-dcc" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/csudma-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/csudma-example_git.bb index 3f5c2138..5706967a 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/csudma-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/csudma-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "csudma" | 3 | REQUIRED_MACHINE_FEATURES = "csudma" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/csudma/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/csudma/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/csudma_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/csudma_git.bb index 002f6d15..8283ce8d 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/csudma_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/csudma_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "csudma" | 3 | REQUIRED_MACHINE_FEATURES = "csudma" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/ddrcpsu_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/ddrcpsu_git.bb index 91f2679d..4728b6c5 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/ddrcpsu_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/ddrcpsu_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "ddrcpsu" | 3 | REQUIRED_MACHINE_FEATURES = "ddrcpsu" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/devcfg-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/devcfg-example_git.bb index 2b0cd72f..dd70e09d 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/devcfg-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/devcfg-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "devcfg" | 3 | REQUIRED_MACHINE_FEATURES = "devcfg" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/devcfg/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/devcfg/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/devcfg_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/devcfg_git.bb index 69d01ffa..4b794d22 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/devcfg_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/devcfg_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "devcfg" | 3 | REQUIRED_MACHINE_FEATURES = "devcfg" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/dfxasm-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/dfxasm-example_git.bb index d98ba493..974dd48b 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/dfxasm-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/dfxasm-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "dfxasm" | 3 | REQUIRED_MACHINE_FEATURES = "dfxasm" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/dfxasm/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/dfxasm/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/dfxasm_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/dfxasm_git.bb index 755545d2..81f2157b 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/dfxasm_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/dfxasm_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "dfxasm" | 3 | REQUIRED_MACHINE_FEATURES = "dfxasm" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/dmaps-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/dmaps-example_git.bb index 77d4ac0c..40d08e4b 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/dmaps-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/dmaps-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "dmaps" | 3 | REQUIRED_MACHINE_FEATURES = "dmaps" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/dmaps/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/dmaps/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/dpdma_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/dpdma_git.bb index 82005fe9..3adb88a6 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/dpdma_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/dpdma_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "dpdma" | 3 | REQUIRED_MACHINE_FEATURES = "dpdma" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/dppsu_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/dppsu_git.bb index 478af8a3..87cca884 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/dppsu_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/dppsu_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "dppsu" | 3 | REQUIRED_MACHINE_FEATURES = "dppsu" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/emaclite-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/emaclite-example_git.bb index 82a66d70..6ed717fb 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/emaclite-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/emaclite-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "emaclite" | 3 | REQUIRED_MACHINE_FEATURES = "emaclite" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/emaclite/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/emaclite/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/emaclite_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/emaclite_git.bb index 2784110a..9ceb477f 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/emaclite_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/emaclite_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "emaclite" | 3 | REQUIRED_MACHINE_FEATURES = "emaclite" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/emacps-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/emacps-example_git.bb index 93c2ff59..2c57eafe 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/emacps-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/emacps-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "emacps" | 3 | REQUIRED_MACHINE_FEATURES = "emacps" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/emacps/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/emacps/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/emacps_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/emacps_git.bb index 08bb3202..8ed85984 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/emacps_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/emacps_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "emacps" | 3 | REQUIRED_MACHINE_FEATURES = "emacps" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/gpio-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/gpio-example_git.bb index 1446c92c..3f79cfec 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/gpio-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/gpio-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "gpio" | 3 | REQUIRED_MACHINE_FEATURES = "gpio" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/gpio/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/gpio/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/gpio_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/gpio_git.bb index 5bd6c7f0..83a746b7 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/gpio_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/gpio_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "gpio" | 3 | REQUIRED_MACHINE_FEATURES = "gpio" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/gpiops-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/gpiops-example_git.bb index e7050fc4..cc2e1703 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/gpiops-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/gpiops-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "gpiops" | 3 | REQUIRED_MACHINE_FEATURES = "gpiops" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/gpiops/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/gpiops/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/gpiops_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/gpiops_git.bb index 55fca761..4bd63d1e 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/gpiops_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/gpiops_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "gpiops" | 3 | REQUIRED_MACHINE_FEATURES = "gpiops" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/iic-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/iic-example_git.bb index 55627498..b781b82c 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/iic-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/iic-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "iic" | 3 | REQUIRED_MACHINE_FEATURES = "iic" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/iic/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/iic/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/iic_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/iic_git.bb index 8474a61b..7011f90b 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/iic_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/iic_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "iic" | 3 | REQUIRED_MACHINE_FEATURES = "iic" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/iicps-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/iicps-example_git.bb index fec7256b..e9df1cbd 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/iicps-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/iicps-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "iicps" | 3 | REQUIRED_MACHINE_FEATURES = "iicps" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/iicps/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/iicps/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/iicps_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/iicps_git.bb index d68d7d88..e96dc2ac 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/iicps_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/iicps_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "iicps" | 3 | REQUIRED_MACHINE_FEATURES = "iicps" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/intc-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/intc-example_git.bb index 2e86d35c..0b4b95a8 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/intc-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/intc-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "intc" | 3 | REQUIRED_MACHINE_FEATURES = "intc" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/intc/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/intc/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/intc_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/intc_git.bb index 05a44342..331c2e32 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/intc_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/intc_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "intc" | 3 | REQUIRED_MACHINE_FEATURES = "intc" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/iomodule_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/iomodule_git.bb index c2ea342d..1f625521 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/iomodule_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/iomodule_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "iomodule" | 3 | REQUIRED_MACHINE_FEATURES = "iomodule" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/ipipsu-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/ipipsu-example_git.bb index e007b74e..0b31601d 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/ipipsu-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/ipipsu-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "ipipsu" | 3 | REQUIRED_MACHINE_FEATURES = "ipipsu" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/ipipsu/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/ipipsu/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/ipipsu_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/ipipsu_git.bb index b7369c7a..3e2ccc0b 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/ipipsu_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/ipipsu_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "ipipsu" | 3 | REQUIRED_MACHINE_FEATURES = "ipipsu" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/llfifo-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/llfifo-example_git.bb index da02cbd2..6b1c211a 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/llfifo-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/llfifo-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "llfifo" | 3 | REQUIRED_MACHINE_FEATURES = "llfifo" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/llfifo/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/llfifo/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/llfifo_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/llfifo_git.bb index 4241f80a..1fb76b18 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/llfifo_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/llfifo_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "llfifo" | 3 | REQUIRED_MACHINE_FEATURES = "llfifo" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/mbox-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/mbox-example_git.bb index 3adea549..3c4870b4 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/mbox-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/mbox-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "mbox" | 3 | REQUIRED_MACHINE_FEATURES = "mbox" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/mbox/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/mbox/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/mbox_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/mbox_git.bb index b7a3f54a..5c1b8393 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/mbox_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/mbox_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "mbox" | 3 | REQUIRED_MACHINE_FEATURES = "mbox" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/mcdma-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/mcdma-example_git.bb index 54622350..64979470 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/mcdma-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/mcdma-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "mcdma" | 3 | REQUIRED_MACHINE_FEATURES = "mcdma" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/mcdma/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/mcdma/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/mcdma_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/mcdma_git.bb index d697f768..f13a7e54 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/mcdma_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/mcdma_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "mcdma" | 3 | REQUIRED_MACHINE_FEATURES = "mcdma" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/mutex-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/mutex-example_git.bb index ac637d2c..fc0527da 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/mutex-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/mutex-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "mutex" | 3 | REQUIRED_MACHINE_FEATURES = "mutex" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/mutex/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/mutex/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/mutex_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/mutex_git.bb index b4702e03..98abc948 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/mutex_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/mutex_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "mutex" | 3 | REQUIRED_MACHINE_FEATURES = "mutex" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/nandpsu-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/nandpsu-example_git.bb index 0502471e..8b7a88b5 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/nandpsu-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/nandpsu-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "nandpsu" | 3 | REQUIRED_MACHINE_FEATURES = "nandpsu" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/nandpsu/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/nandpsu/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/nandpsu_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/nandpsu_git.bb index 72e6160a..6d2a71c5 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/nandpsu_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/nandpsu_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "nandpsu" | 3 | REQUIRED_MACHINE_FEATURES = "nandpsu" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/ospipsv-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/ospipsv-example_git.bb index c9d68260..0ded4fd2 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/ospipsv-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/ospipsv-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "ospipsv" | 3 | REQUIRED_MACHINE_FEATURES = "ospipsv" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/ospipsv/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/ospipsv/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/ospipsv_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/ospipsv_git.bb index 19cfe8ed..f0548efc 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/ospipsv_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/ospipsv_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "ospipsv" | 3 | REQUIRED_MACHINE_FEATURES = "ospipsv" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/pciepsu-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/pciepsu-example_git.bb index a980b4b5..23895fba 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/pciepsu-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/pciepsu-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "pciepsu" | 3 | REQUIRED_MACHINE_FEATURES = "pciepsu" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/pciepsu/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/pciepsu/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/pciepsu_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/pciepsu_git.bb index ce6cb3a0..ccedb1df 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/pciepsu_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/pciepsu_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "pciepsu" | 3 | REQUIRED_MACHINE_FEATURES = "pciepsu" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/qspips-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/qspips-example_git.bb index 7a77274d..674b879a 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/qspips-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/qspips-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "qspips" | 3 | REQUIRED_MACHINE_FEATURES = "qspips" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/qspips/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/qspips/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/qspips_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/qspips_git.bb index 67c9e935..fa28d901 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/qspips_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/qspips_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "qspips" | 3 | REQUIRED_MACHINE_FEATURES = "qspips" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/qspipsu-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/qspipsu-example_git.bb index a533c50c..21231450 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/qspipsu-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/qspipsu-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "qspipsu" | 3 | REQUIRED_MACHINE_FEATURES = "qspipsu" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/qspipsu/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/qspipsu/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/qspipsu_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/qspipsu_git.bb index 79156cf5..5b4b1614 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/qspipsu_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/qspipsu_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "qspipsu" | 3 | REQUIRED_MACHINE_FEATURES = "qspipsu" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/resetps-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/resetps-example_git.bb index 86a9acc1..243393bb 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/resetps-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/resetps-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "resetps" | 3 | REQUIRED_MACHINE_FEATURES = "resetps" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/resetps/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/resetps/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/resetps_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/resetps_git.bb index 86171bfc..c753c666 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/resetps_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/resetps_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "resetps" | 3 | REQUIRED_MACHINE_FEATURES = "resetps" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/rtcpsu-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/rtcpsu-example_git.bb index fc18adeb..ac386c4c 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/rtcpsu-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/rtcpsu-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "rtcpsu" | 3 | REQUIRED_MACHINE_FEATURES = "rtcpsu" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/rtcpsu/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/rtcpsu/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/rtcpsu_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/rtcpsu_git.bb index 4ef2cccd..7b96bf16 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/rtcpsu_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/rtcpsu_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "rtcpsu" | 3 | REQUIRED_MACHINE_FEATURES = "rtcpsu" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/scugic-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/scugic-example_git.bb index 5ad0ba17..cbef3ce9 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/scugic-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/scugic-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "scugic" | 3 | REQUIRED_MACHINE_FEATURES = "scugic" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/scugic/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/scugic/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/scugic_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/scugic_git.bb index 19ec303e..f079354d 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/scugic_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/scugic_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "scugic" | 3 | REQUIRED_MACHINE_FEATURES = "scugic" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/sdps-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/sdps-example_git.bb index 9a5c435b..550d664b 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/sdps-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/sdps-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "sdps" | 3 | REQUIRED_MACHINE_FEATURES = "sdps" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/sdps/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/sdps/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/sdps_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/sdps_git.bb index dfe68bfd..4caf0e63 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/sdps_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/sdps_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "sdps" | 3 | REQUIRED_MACHINE_FEATURES = "sdps" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/spips-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/spips-example_git.bb index bec085bb..71ead5d3 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/spips-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/spips-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "spips" | 3 | REQUIRED_MACHINE_FEATURES = "spips" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/spips/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/spips/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/spips_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/spips_git.bb index 9451d79b..ca02fda0 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/spips_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/spips_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "spips" | 3 | REQUIRED_MACHINE_FEATURES = "spips" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/sysmon-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/sysmon-example_git.bb index 1ef37ee8..5bc007ad 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/sysmon-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/sysmon-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "sysmon" | 3 | REQUIRED_MACHINE_FEATURES = "sysmon" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/sysmon/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/sysmon/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/sysmon_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/sysmon_git.bb index f1be4ee6..5353f6f8 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/sysmon_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/sysmon_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "sysmon" | 3 | REQUIRED_MACHINE_FEATURES = "sysmon" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsu-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsu-example_git.bb index 52e5b1e6..2c76a978 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsu-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsu-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "sysmonpsu" | 3 | REQUIRED_MACHINE_FEATURES = "sysmonpsu" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/sysmonpsu/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/sysmonpsu/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsu_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsu_git.bb index 5056cb15..871a77a3 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsu_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsu_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "sysmonpsu" | 3 | REQUIRED_MACHINE_FEATURES = "sysmonpsu" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsv-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsv-example_git.bb index 7bd0e81d..edce2794 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsv-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsv-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "sysmonpsv" | 3 | REQUIRED_MACHINE_FEATURES = "sysmonpsv" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/sysmonpsv/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/sysmonpsv/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsv_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsv_git.bb index 06b82811..2c693809 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsv_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/sysmonpsv_git.bb | |||
@@ -1,10 +1,10 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "sysmonpsv" | 3 | REQUIRED_MACHINE_FEATURES = "sysmonpsv" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
7 | DEPENDS += "xilstandalone ${@'scugic' if d.getVar('ESW_MACHINE') != 'microblaze-plm' and d.getVar('ESW_MACHINE') != 'microblaze-psm' else ''}" | 7 | DEPENDS += "xilstandalone ${@'scugic' if d.getVar('ESW_MACHINE') != 'psv_pmc_0' and d.getVar('ESW_MACHINE') != 'psv_psm_0' else ''}" |
8 | 8 | ||
9 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/sysmonpsv/src/" | 9 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/sysmonpsv/src/" |
10 | ESW_COMPONENT_NAME = "libsysmonpsv.a" | 10 | ESW_COMPONENT_NAME = "libsysmonpsv.a" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/tmr-inject_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/tmr-inject_git.bb index c13880f1..dbf3d364 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/tmr-inject_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/tmr-inject_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "tmr-inject" | 3 | REQUIRED_MACHINE_FEATURES = "tmr-inject" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/tmr-manager_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/tmr-manager_git.bb index 9d491abb..dd91fed7 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/tmr-manager_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/tmr-manager_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "tmr-manager" | 3 | REQUIRED_MACHINE_FEATURES = "tmr-manager" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/tmrctr-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/tmrctr-example_git.bb index cd971139..8224d6fe 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/tmrctr-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/tmrctr-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "tmrctr" | 3 | REQUIRED_MACHINE_FEATURES = "tmrctr" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/tmrctr/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/tmrctr/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/tmrctr_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/tmrctr_git.bb index 1eb38c44..cf94a9d0 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/tmrctr_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/tmrctr_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "tmrctr" | 3 | REQUIRED_MACHINE_FEATURES = "tmrctr" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/trafgen-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/trafgen-example_git.bb index 57d6a2cb..84c5618c 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/trafgen-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/trafgen-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "trafgen" | 3 | REQUIRED_MACHINE_FEATURES = "trafgen" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/trafgen/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/trafgen/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/trafgen_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/trafgen_git.bb index d9e9238a..77d000db 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/trafgen_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/trafgen_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "trafgen" | 3 | REQUIRED_MACHINE_FEATURES = "trafgen" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/ttcps-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/ttcps-example_git.bb index 783dce25..d294c383 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/ttcps-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/ttcps-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "ttcps" | 3 | REQUIRED_MACHINE_FEATURES = "ttcps" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/ttcps/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/ttcps/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/ttcps_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/ttcps_git.bb index 7de97781..ea520656 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/ttcps_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/ttcps_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "ttcps" | 3 | REQUIRED_MACHINE_FEATURES = "ttcps" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/uartlite-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/uartlite-example_git.bb index f218e604..9aa0f598 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/uartlite-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/uartlite-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "uartlite" | 3 | REQUIRED_MACHINE_FEATURES = "uartlite" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/uartlite/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/uartlite/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/uartlite_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/uartlite_git.bb index 270ffb43..5998e092 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/uartlite_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/uartlite_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "uartlite" | 3 | REQUIRED_MACHINE_FEATURES = "uartlite" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/uartns550-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/uartns550-example_git.bb index 2e98c9f9..d81ce77b 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/uartns550-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/uartns550-example_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "uartns550" | 3 | REQUIRED_MACHINE_FEATURES = "uartns550" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/uartns550/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/uartns550/examples/" |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/uartns550_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/uartns550_git.bb index 8e64457e..a08763cb 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/uartns550_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/uartns550_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "uartns550" | 3 | REQUIRED_MACHINE_FEATURES = "uartns550" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/uartps-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/uartps-example_git.bb index f010794a..bbff466d 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/uartps-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/uartps-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "uartps" | 3 | REQUIRED_MACHINE_FEATURES = "uartps" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/uartps/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/uartps/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/uartps_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/uartps_git.bb index c2247736..932be9eb 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/uartps_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/uartps_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "uartps" | 3 | REQUIRED_MACHINE_FEATURES = "uartps" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/uartpsv-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/uartpsv-example_git.bb index e881f429..78f878a6 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/uartpsv-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/uartpsv-example_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "uartpsv" | 3 | REQUIRED_MACHINE_FEATURES = "uartpsv" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/uartpsv/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/uartpsv/examples/" |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/uartpsv_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/uartpsv_git.bb index 266f1db9..01e48caa 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/uartpsv_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/uartpsv_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "uartpsv" | 3 | REQUIRED_MACHINE_FEATURES = "uartpsv" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/usb-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/usb-example_git.bb index e9fddd0b..0d4e113a 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/usb-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/usb-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "usb" | 3 | REQUIRED_MACHINE_FEATURES = "usb" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/usb/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/usb/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/usb_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/usb_git.bb index 720c73b0..9dac8cba 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/usb_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/usb_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "usb" | 3 | REQUIRED_MACHINE_FEATURES = "usb" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/usbpsu-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/usbpsu-example_git.bb index 88c983e0..4eb9bc93 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/usbpsu-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/usbpsu-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "usbpsu" | 3 | REQUIRED_MACHINE_FEATURES = "usbpsu" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/usbpsu/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/usbpsu/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/usbpsu_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/usbpsu_git.bb index a8947226..194b1f0f 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/usbpsu_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/usbpsu_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "usbpsu" | 3 | REQUIRED_MACHINE_FEATURES = "usbpsu" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-csc_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-csc_git.bb index 21261423..068a43e9 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-csc_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-csc_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-csc" | 3 | REQUIRED_MACHINE_FEATURES = "v-csc" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-deinterlacer_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-deinterlacer_git.bb index 006452d3..741fdd91 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-deinterlacer_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-deinterlacer_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-deinterlacer" | 3 | REQUIRED_MACHINE_FEATURES = "v-deinterlacer" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-demosaic-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-demosaic-example_git.bb index 21f80b09..cf2cdf6f 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-demosaic-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-demosaic-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-demosaic" | 3 | REQUIRED_MACHINE_FEATURES = "v-demosaic" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_demosaic/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_demosaic/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-demosaic_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-demosaic_git.bb index 83913f31..79ef55f2 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-demosaic_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-demosaic_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-demosaic" | 3 | REQUIRED_MACHINE_FEATURES = "v-demosaic" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-rd-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-rd-example_git.bb index fcb2f95e..fc13c194 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-rd-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-rd-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-frmbuf-rd" | 3 | REQUIRED_MACHINE_FEATURES = "v-frmbuf-rd" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_frmbuf_rd/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_frmbuf_rd/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-rd_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-rd_git.bb index da248701..91ee34d8 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-rd_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-rd_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-frmbuf-rd" | 3 | REQUIRED_MACHINE_FEATURES = "v-frmbuf-rd" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-wr-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-wr-example_git.bb index 215bd250..87a1be53 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-wr-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-wr-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-frmbuf-wr" | 3 | REQUIRED_MACHINE_FEATURES = "v-frmbuf-wr" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_frmbuf_wr/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_frmbuf_wr/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-wr_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-wr_git.bb index f2ec3b27..d88ac592 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-wr_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-frmbuf-wr_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-frmbuf-wr" | 3 | REQUIRED_MACHINE_FEATURES = "v-frmbuf-wr" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-gamma-lut-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-gamma-lut-example_git.bb index 8fa3e245..4d5dcf03 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-gamma-lut-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-gamma-lut-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-gamma-lut" | 3 | REQUIRED_MACHINE_FEATURES = "v-gamma-lut" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_gamma_lut/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_gamma_lut/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-gamma-lut_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-gamma-lut_git.bb index 6d365dcd..8cf95c9d 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-gamma-lut_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-gamma-lut_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-gamma-lut" | 3 | REQUIRED_MACHINE_FEATURES = "v-gamma-lut" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-hcresampler_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-hcresampler_git.bb index fb3119b8..1731f984 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-hcresampler_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-hcresampler_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-hcresampler" | 3 | REQUIRED_MACHINE_FEATURES = "v-hcresampler" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-hscaler_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-hscaler_git.bb index 17d129d1..b239380e 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-hscaler_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-hscaler_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-hscaler" | 3 | REQUIRED_MACHINE_FEATURES = "v-hscaler" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-letterbox_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-letterbox_git.bb index 7c0bdb12..f5ad5f4e 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-letterbox_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-letterbox_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-letterbox" | 3 | REQUIRED_MACHINE_FEATURES = "v-letterbox" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-mix-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-mix-example_git.bb index 0597cb64..8bafbf00 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-mix-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-mix-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-mix" | 3 | REQUIRED_MACHINE_FEATURES = "v-mix" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_mix/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_mix/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-mix_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-mix_git.bb index f3b8b967..acc19bd0 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-mix_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-mix_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-mix" | 3 | REQUIRED_MACHINE_FEATURES = "v-mix" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-multi-scaler-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-multi-scaler-example_git.bb index c584a558..28660316 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-multi-scaler-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-multi-scaler-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-multi-scaler" | 3 | REQUIRED_MACHINE_FEATURES = "v-multi-scaler" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_multi_scaler/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_multi_scaler/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-multi-scaler_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-multi-scaler_git.bb index b2a9c5e5..bd725dbe 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-multi-scaler_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-multi-scaler_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-multi-scaler" | 3 | REQUIRED_MACHINE_FEATURES = "v-multi-scaler" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-scenechange-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-scenechange-example_git.bb index 7b610b41..2859de79 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-scenechange-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-scenechange-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-scenechange" | 3 | REQUIRED_MACHINE_FEATURES = "v-scenechange" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_scenechange/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/v_scenechange/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-scenechange_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-scenechange_git.bb index 91de657d..77cf9189 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-scenechange_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-scenechange_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-scenechange" | 3 | REQUIRED_MACHINE_FEATURES = "v-scenechange" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-tpg_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-tpg_git.bb index fbc3d696..6ea70db1 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-tpg_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-tpg_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-tpg" | 3 | REQUIRED_MACHINE_FEATURES = "v-tpg" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-vcresampler_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-vcresampler_git.bb index 1f262db0..45913cdc 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-vcresampler_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-vcresampler_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-vcresampler" | 3 | REQUIRED_MACHINE_FEATURES = "v-vcresampler" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/v-vscaler_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/v-vscaler_git.bb index 4d5ca11b..9528d2e0 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/v-vscaler_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/v-vscaler_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "v-vscaler" | 3 | REQUIRED_MACHINE_FEATURES = "v-vscaler" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/video-common_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/video-common_git.bb index 37596d56..278dee8a 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/video-common_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/video-common_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "video-common" | 3 | REQUIRED_MACHINE_FEATURES = "video-common" |
4 | 4 | ||
5 | inherit esw | 5 | inherit esw |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/vprocss-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/vprocss-example_git.bb index 7c44a0f5..d9050ec4 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/vprocss-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/vprocss-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "vprocss" | 3 | REQUIRED_MACHINE_FEATURES = "vprocss" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/vprocss/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/vprocss/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/vprocss_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/vprocss_git.bb index ea28963b..26b2852f 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/vprocss_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/vprocss_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "vprocss" | 3 | REQUIRED_MACHINE_FEATURES = "vprocss" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/vtc_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/vtc_git.bb index 59d45b74..a82ae5ee 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/vtc_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/vtc_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "vtc" | 3 | REQUIRED_MACHINE_FEATURES = "vtc" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/wdtps-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/wdtps-example_git.bb index f3696e60..610a7476 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/wdtps-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/wdtps-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "wdtps" | 3 | REQUIRED_MACHINE_FEATURES = "wdtps" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/wdtps/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/wdtps/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/wdtps_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/wdtps_git.bb index 8accc1aa..2c900038 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/wdtps_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/wdtps_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "wdtps" | 3 | REQUIRED_MACHINE_FEATURES = "wdtps" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/wdttb-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/wdttb-example_git.bb index 99b65cc9..cad6ca20 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/wdttb-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/wdttb-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "wdttb" | 3 | REQUIRED_MACHINE_FEATURES = "wdttb" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/wdttb/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/wdttb/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/wdttb_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/wdttb_git.bb index 99388577..33331c32 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/wdttb_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/wdttb_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "wdttb" | 3 | REQUIRED_MACHINE_FEATURES = "wdttb" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/xadcps-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/xadcps-example_git.bb index bda86f79..f8878144 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/xadcps-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/xadcps-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "xadcps" | 3 | REQUIRED_MACHINE_FEATURES = "xadcps" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/xadcps/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/xadcps/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/xadcps_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/xadcps_git.bb index 39b2855e..85800a27 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/xadcps_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/xadcps_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "xadcps" | 3 | REQUIRED_MACHINE_FEATURES = "xadcps" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/xdmapcie-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/xdmapcie-example_git.bb index fd268ba8..26983a8f 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/xdmapcie-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/xdmapcie-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "xdmapcie" | 3 | REQUIRED_MACHINE_FEATURES = "xdmapcie" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/xdmapcie/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/xdmapcie/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/xdmapcie_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/xdmapcie_git.bb index 87c7b073..cab8e9d0 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/xdmapcie_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/xdmapcie_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "xdmapcie" | 3 | REQUIRED_MACHINE_FEATURES = "xdmapcie" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/xxvethernet-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/xxvethernet-example_git.bb index 283bea9b..d6a87183 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/xxvethernet-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/xxvethernet-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "xxvethernet" | 3 | REQUIRED_MACHINE_FEATURES = "xxvethernet" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/xxvethernet/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/xxvethernet/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/xxvethernet_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/xxvethernet_git.bb index d810cf0c..491eb07c 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/xxvethernet_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/xxvethernet_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "xxvethernet" | 3 | REQUIRED_MACHINE_FEATURES = "xxvethernet" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/zdma-example_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/zdma-example_git.bb index afba0f8a..e74e3279 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/zdma-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/zdma-example_git.bb | |||
@@ -1,5 +1,5 @@ | |||
1 | inherit esw_examples features_check | 1 | inherit esw_examples features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "zdma" | 3 | REQUIRED_MACHINE_FEATURES = "zdma" |
4 | 4 | ||
5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/zdma/examples/" | 5 | ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/zdma/examples/" |
diff --git a/meta-xilinx-standalone-experimental/recipes-drivers/zdma_git.bb b/meta-xilinx-standalone-experimental/recipes-drivers/zdma_git.bb index 8e6c768c..e987f560 100644 --- a/meta-xilinx-standalone-experimental/recipes-drivers/zdma_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-drivers/zdma_git.bb | |||
@@ -1,6 +1,6 @@ | |||
1 | inherit features_check | 1 | inherit features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "zdma" | 3 | REQUIRED_MACHINE_FEATURES = "zdma" |
4 | 4 | ||
5 | inherit esw python3native | 5 | inherit esw python3native |
6 | 6 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/libxil_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/libxil_git.bb index 9d0b697f..2ec1d6cd 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/libxil_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/libxil_git.bb | |||
@@ -25,8 +25,8 @@ ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/" | |||
25 | ESW_COMPONENT_NAME = "libxil.a" | 25 | ESW_COMPONENT_NAME = "libxil.a" |
26 | 26 | ||
27 | DEPENDS += "xilstandalone " | 27 | DEPENDS += "xilstandalone " |
28 | REQUIRED_DISTRO_FEATURES = "${DISTRO_FEATURES}" | 28 | REQUIRED_MACHINE_FEATURES = "${MACHINE_FEATURES}" |
29 | PACKAGECONFIG ?= "${DISTRO_FEATURES}" | 29 | PACKAGECONFIG ?= "${MACHINE_FEATURES}" |
30 | 30 | ||
31 | do_configure:prepend() { | 31 | do_configure:prepend() { |
32 | LOPPER_DTC_FLAGS="-b 0 -@" lopper ${DTS_FILE} -- baremetal_xparameters_xlnx.py ${ESW_MACHINE} ${S} | 32 | LOPPER_DTC_FLAGS="-b 0 -@" lopper ${DTS_FILE} -- baremetal_xparameters_xlnx.py ${ESW_MACHINE} ${S} |
@@ -37,7 +37,7 @@ do_compile() { | |||
37 | # Combines the .a archives produced by all of the dependent items | 37 | # Combines the .a archives produced by all of the dependent items |
38 | cd ${RECIPE_SYSROOT}/usr/lib/ | 38 | cd ${RECIPE_SYSROOT}/usr/lib/ |
39 | echo create libxil.a > libxil.mri | 39 | echo create libxil.a > libxil.mri |
40 | for each in ${REQUIRED_DISTRO_FEATURES}; do | 40 | for each in ${REQUIRED_MACHINE_FEATURES}; do |
41 | each=$(echo $each | sed 's/-/_/g') | 41 | each=$(echo $each | sed 's/-/_/g') |
42 | if [ -e lib$each.a ]; then | 42 | if [ -e lib$each.a ]; then |
43 | echo addlib lib$each.a >> libxil.mri | 43 | echo addlib lib$each.a >> libxil.mri |
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/lwip_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/lwip_git.bb index 213187e1..93f0b1e8 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/lwip_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/lwip_git.bb | |||
@@ -1,17 +1,17 @@ | |||
1 | inherit esw python3native | 1 | inherit esw python3native |
2 | 2 | ||
3 | ESW_COMPONENT_SRC = "/ThirdParty/sw_services/lwip211/src/" | 3 | ESW_COMPONENT_SRC = "/ThirdParty/sw_services/lwip213/src/" |
4 | ESW_COMPONENT_NAME = "liblwip211.a" | 4 | ESW_COMPONENT_NAME = "liblwip213.a" |
5 | 5 | ||
6 | DEPENDS += "libxil" | 6 | DEPENDS += "libxil" |
7 | DEPENDS:append:xilinx-freertos = "freertos10-xilinx" | 7 | DEPENDS:append:xilinx-freertos = "freertos10-xilinx" |
8 | 8 | ||
9 | EXTRA_OECMAKE += "-Dlwip_api_mode=RAW_API" | 9 | EXTRA_OECMAKE += "-Dlwip213_api_mode=RAW_API" |
10 | EXTRA_OECMAKE += "-Dlwip_dhcp_does_arp_check=ON" | 10 | EXTRA_OECMAKE += "-Dlwip213_dhcp_does_arp_check=ON" |
11 | EXTRA_OECMAKE += "-Dlwip_dhcp=ON" | 11 | EXTRA_OECMAKE += "-Dlwip213_dhcp=ON" |
12 | EXTRA_OECMAKE += "-Dlwip_pbuf_pool_size=2048" | 12 | EXTRA_OECMAKE += "-Dlwip213_pbuf_pool_size=2048" |
13 | EXTRA_OECMAKE += "-Dlwip_ipv6_enable=OFF" | 13 | EXTRA_OECMAKE += "-Dlwip213_ipv6_enable=OFF" |
14 | EXTRA_OECMAKE:append:xilinx-freertos = " -Dlwip_api_mode=SOCKET_API" | 14 | EXTRA_OECMAKE:append:xilinx-freertos = " -Dlwip213_api_mode=SOCKET_API" |
15 | 15 | ||
16 | do_configure:prepend() { | 16 | do_configure:prepend() { |
17 | # This script should also not rely on relative paths and such | 17 | # This script should also not rely on relative paths and such |
@@ -30,5 +30,5 @@ do_install() { | |||
30 | install -m 0644 ${B}/include/*.h ${D}${includedir} | 30 | install -m 0644 ${B}/include/*.h ${D}${includedir} |
31 | cp -r ${B}/include/arch/ ${D}${includedir} | 31 | cp -r ${B}/include/arch/ ${D}${includedir} |
32 | cp -r ${B}/include/include/lwip/ ${D}${includedir} | 32 | cp -r ${B}/include/include/lwip/ ${D}${includedir} |
33 | cp -r ${B}/include/include/netif/ ${D}${includedir} | 33 | cp -r ${B}/include/netif/ ${D}${includedir} |
34 | } | 34 | } |
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilffs-example_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilffs-example_git.bb index bb976377..cae39d17 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilffs-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilffs-example_git.bb | |||
@@ -1,7 +1,7 @@ | |||
1 | inherit esw deploy | 1 | inherit esw deploy |
2 | 2 | ||
3 | # Requires by dependency xilffs | 3 | # Requires by dependency xilffs |
4 | REQUIRED_DISTRO_FEATURES = "sdps" | 4 | REQUIRED_MACHINE_FEATURES = "sdps" |
5 | 5 | ||
6 | ESW_COMPONENT_SRC = "/lib/sw_services/xilffs/examples/" | 6 | ESW_COMPONENT_SRC = "/lib/sw_services/xilffs/examples/" |
7 | 7 | ||
@@ -11,7 +11,6 @@ do_configure:prepend() { | |||
11 | ( | 11 | ( |
12 | cd ${S} | 12 | cd ${S} |
13 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 13 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
14 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
15 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 14 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
16 | ) | 15 | ) |
17 | } | 16 | } |
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilffs_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilffs_git.bb index 2a01c974..298e3033 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilffs_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilffs_git.bb | |||
@@ -1,7 +1,5 @@ | |||
1 | inherit esw features_check | 1 | inherit esw features_check |
2 | 2 | ||
3 | REQUIRED_DISTRO_FEATURES = "sdps" | ||
4 | |||
5 | ESW_COMPONENT_SRC = "/lib/sw_services/xilffs/src/" | 3 | ESW_COMPONENT_SRC = "/lib/sw_services/xilffs/src/" |
6 | ESW_COMPONENT_NAME = "libxilffs.a" | 4 | ESW_COMPONENT_NAME = "libxilffs.a" |
7 | 5 | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilfpga-example_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilfpga-example_git.bb index df5c1bbe..a3fb1560 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilfpga-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilfpga-example_git.bb | |||
@@ -8,7 +8,6 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
13 | ) | 12 | ) |
14 | } | 13 | } |
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilmailbox-example_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilmailbox-example_git.bb index 1e457d18..600369ad 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilmailbox-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilmailbox-example_git.bb | |||
@@ -8,7 +8,6 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
13 | ) | 12 | ) |
14 | } | 13 | } |
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilmailbox_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilmailbox_git.bb index 50dbc776..77115515 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilmailbox_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilmailbox_git.bb | |||
@@ -4,3 +4,12 @@ ESW_COMPONENT_SRC = "/lib/sw_services/xilmailbox/src/" | |||
4 | ESW_COMPONENT_NAME = "libxilmailbox.a" | 4 | ESW_COMPONENT_NAME = "libxilmailbox.a" |
5 | 5 | ||
6 | DEPENDS += "xilstandalone libxil xiltimer" | 6 | DEPENDS += "xilstandalone libxil xiltimer" |
7 | |||
8 | do_configure:prepend() { | ||
9 | # This script should also not rely on relative paths and such | ||
10 | ( | ||
11 | cd ${S} | ||
12 | lopper ${DTS_FILE} -- bmcmake_metadata_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} hwcmake_metadata ${S} | ||
13 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | ||
14 | ) | ||
15 | } | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilnvm-example_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilnvm-example_git.bb index a656e7ec..a4a81c8b 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilnvm-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilnvm-example_git.bb | |||
@@ -8,7 +8,6 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
13 | ) | 12 | ) |
14 | } | 13 | } |
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilpm_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilpm_git.bb index f58538cd..69b505c8 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilpm_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilpm_git.bb | |||
@@ -1,6 +1,15 @@ | |||
1 | inherit esw | 1 | inherit esw python3native |
2 | 2 | ||
3 | ESW_COMPONENT_SRC = "/lib/sw_services/xilpm/src/" | 3 | ESW_COMPONENT_SRC = "/lib/sw_services/xilpm/src/" |
4 | ESW_COMPONENT_NAME = "libxilpm.a" | 4 | ESW_COMPONENT_NAME = "libxilpm.a" |
5 | 5 | ||
6 | DEPENDS = "libxil ${@'xilplmi cframe' if d.getVar('ESW_MACHINE') == 'microblaze-plm' else ''}" | 6 | DEPENDS += "libxil ${@'xilplmi cframe' if d.getVar('ESW_MACHINE') == 'psv_pmc_0' else ''}" |
7 | |||
8 | do_configure:prepend:zynqmp() { | ||
9 | # This script should also not rely on relative paths and such | ||
10 | ( | ||
11 | cd ${S} | ||
12 | lopper -f --enhanced --werror ${DTS_FILE} -- generate_config_object pm_cfg_obj.c ${ESW_MACHINE} | ||
13 | install -m 0755 pm_cfg_obj.c ${S}/${ESW_COMPONENT_SRC}/zynqmp/client/common/ | ||
14 | ) | ||
15 | } | ||
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilpuf-example_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilpuf-example_git.bb index ad2d5c47..ca0abc12 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilpuf-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilpuf-example_git.bb | |||
@@ -8,7 +8,6 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
13 | ) | 12 | ) |
14 | } | 13 | } |
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilpuf_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilpuf_git.bb index 266503d1..81bee095 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilpuf_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilpuf_git.bb | |||
@@ -3,4 +3,4 @@ inherit esw | |||
3 | ESW_COMPONENT_SRC = "/lib/sw_services/xilpuf/src/" | 3 | ESW_COMPONENT_SRC = "/lib/sw_services/xilpuf/src/" |
4 | ESW_COMPONENT_NAME = "libxilpuf.a" | 4 | ESW_COMPONENT_NAME = "libxilpuf.a" |
5 | 5 | ||
6 | DEPENDS += "libxil xiltimer ${@'xilplmi' if d.getVar('ESW_MACHINE') == 'microblaze-plm' else 'xilmailbox'}" | 6 | DEPENDS += "libxil xiltimer ${@'xilplmi' if d.getVar('ESW_MACHINE') == 'psv_pmc_0' else 'xilmailbox'}" |
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilsecure-example_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilsecure-example_git.bb index 2267571f..993794b5 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilsecure-example_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilsecure-example_git.bb | |||
@@ -8,7 +8,6 @@ do_configure:prepend() { | |||
8 | ( | 8 | ( |
9 | cd ${S} | 9 | cd ${S} |
10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 10 | lopper ${DTS_FILE} -- baremetallinker_xlnx.py ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
11 | install -m 0755 memory.ld ${S}/${ESW_COMPONENT_SRC}/ | ||
12 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ | 11 | install -m 0755 *.cmake ${S}/${ESW_COMPONENT_SRC}/ |
13 | ) | 12 | ) |
14 | } | 13 | } |
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilsecure_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilsecure_git.bb index b8e2aa16..0001d3fb 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilsecure_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilsecure_git.bb | |||
@@ -3,4 +3,4 @@ inherit esw | |||
3 | ESW_COMPONENT_SRC = "/lib/sw_services/xilsecure/src/" | 3 | ESW_COMPONENT_SRC = "/lib/sw_services/xilsecure/src/" |
4 | ESW_COMPONENT_NAME = "libxilsecure.a" | 4 | ESW_COMPONENT_NAME = "libxilsecure.a" |
5 | 5 | ||
6 | DEPENDS += "libxil xiltimer ${@'xilplmi' if d.getVar('ESW_MACHINE') == 'microblaze-plm' else 'xilmailbox'}" | 6 | DEPENDS += "libxil xiltimer ${@'xilplmi' if d.getVar('ESW_MACHINE') == 'psv_pmc_0' else ''} ${@'xilmailbox' if d.getVar('ESW_MACHINE') == 'psv_cortexa72_0' or d.getVar('ESW_MACHINE') == 'psv_cortexr5_0' else ''}" |
diff --git a/meta-xilinx-standalone-experimental/recipes-libraries/xilstandalone_git.bb b/meta-xilinx-standalone-experimental/recipes-libraries/xilstandalone_git.bb index 70a46c5e..facbfbaa 100644 --- a/meta-xilinx-standalone-experimental/recipes-libraries/xilstandalone_git.bb +++ b/meta-xilinx-standalone-experimental/recipes-libraries/xilstandalone_git.bb | |||
@@ -11,6 +11,8 @@ do_configure:prepend() { | |||
11 | cd ${S} | 11 | cd ${S} |
12 | lopper ${DTS_FILE} -- baremetal_bspconfig_xlnx ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} | 12 | lopper ${DTS_FILE} -- baremetal_bspconfig_xlnx ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} |
13 | install -m 0755 MemConfig.cmake ${S}/${ESW_COMPONENT_SRC}/ | 13 | install -m 0755 MemConfig.cmake ${S}/${ESW_COMPONENT_SRC}/ |
14 | install -m 0755 *.c ${S}/${ESW_COMPONENT_SRC}/common/ | 14 | install -m 0755 *.c ${S}/${ESW_COMPONENT_SRC} |
15 | lopper ${DTS_FILE} -- bmcmake_metadata_xlnx ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} hwcmake_metadata ${S} | ||
16 | install -m 0755 StandaloneExample.cmake ${S}/${ESW_COMPONENT_SRC}/common/ | ||
15 | ) | 17 | ) |
16 | } | 18 | } |
diff --git a/meta-xilinx-standalone/README.md b/meta-xilinx-standalone/README.md index 0a8114d8..aa672b1d 100644 --- a/meta-xilinx-standalone/README.md +++ b/meta-xilinx-standalone/README.md | |||
@@ -68,4 +68,4 @@ This layer depends on: | |||
68 | https://git.yoctoproject.org/meta-xilinx (official version) | 68 | https://git.yoctoproject.org/meta-xilinx (official version) |
69 | https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) | 69 | https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) |
70 | layers: meta-xilinx-microblaze, meta-xilinx-core, meta-xilinx-bsp | 70 | layers: meta-xilinx-microblaze, meta-xilinx-core, meta-xilinx-bsp |
71 | branch: langdale or amd xilinx release version (e.g. rel-v2022.2) | 71 | branch: langdale or amd xilinx release version (e.g. rel-v2023.1) |
diff --git a/meta-xilinx-standalone/classes/xlnx-embeddedsw.bbclass b/meta-xilinx-standalone/classes/xlnx-embeddedsw.bbclass index d9c6e149..aaee9e68 100644 --- a/meta-xilinx-standalone/classes/xlnx-embeddedsw.bbclass +++ b/meta-xilinx-standalone/classes/xlnx-embeddedsw.bbclass | |||
@@ -5,10 +5,12 @@ REPO ??= "git://github.com/Xilinx/embeddedsw.git;protocol=https" | |||
5 | 5 | ||
6 | ESW_BRANCH[2022.1] = "xlnx_rel_v2022.1_update" | 6 | ESW_BRANCH[2022.1] = "xlnx_rel_v2022.1_update" |
7 | ESW_BRANCH[2022.2] = "xlnx_rel_v2022.2" | 7 | ESW_BRANCH[2022.2] = "xlnx_rel_v2022.2" |
8 | ESW_BRANCH[2023.1] = "xlnx_rel_v2023.1" | ||
8 | BRANCH ??= "${@d.getVarFlag('ESW_BRANCH', d.getVar('ESW_VER')) or '${ESW_VER}'}" | 9 | BRANCH ??= "${@d.getVarFlag('ESW_BRANCH', d.getVar('ESW_VER')) or '${ESW_VER}'}" |
9 | 10 | ||
10 | ESW_REV[2022.1] = "56d94a506fd9f80949f4cff08e13015928603f01" | 11 | ESW_REV[2022.1] = "56d94a506fd9f80949f4cff08e13015928603f01" |
11 | ESW_REV[2022.2] = "5330a64c8efd14f0eef09befdbb8d3d738c33ec2" | 12 | ESW_REV[2022.2] = "5330a64c8efd14f0eef09befdbb8d3d738c33ec2" |
13 | ESW_REV[2023.1] = "86f54b77641f325042a1101fead96b2714e6d3ef" | ||
12 | SRCREV ??= "${@d.getVarFlag('ESW_REV', d.getVar('ESW_VER')) or 'invalid'}" | 14 | SRCREV ??= "${@d.getVarFlag('ESW_REV', d.getVar('ESW_VER')) or 'invalid'}" |
13 | 15 | ||
14 | EMBEDDEDSW_BRANCHARG ?= "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH') != '']}" | 16 | EMBEDDEDSW_BRANCHARG ?= "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH') != '']}" |
@@ -17,6 +19,7 @@ EMBEDDEDSW_SRCURI ?= "${REPO};${EMBEDDEDSW_BRANCHARG}" | |||
17 | LICENSE = "MIT" | 19 | LICENSE = "MIT" |
18 | LIC_FILES_CHKSUM[xlnx_rel_v2022.1_update] = 'e62cb7a722c4430999e0a55a7234035d' | 20 | LIC_FILES_CHKSUM[xlnx_rel_v2022.1_update] = 'e62cb7a722c4430999e0a55a7234035d' |
19 | LIC_FILES_CHKSUM[xlnx_rel_v2022.2] = 'ce611484168a6000bd35df68fc4f4290' | 21 | LIC_FILES_CHKSUM[xlnx_rel_v2022.2] = 'ce611484168a6000bd35df68fc4f4290' |
22 | LIC_FILES_CHKSUM[xlnx_rel_v2023.1] = '3c310a3ee2197a4c92c6a0e2937c207c' | ||
20 | LIC_FILES_CHKSUM ??= "file://license.txt;md5=${@d.getVarFlag('LIC_FILES_CHKSUM', d.getVar('BRANCH')) or '0'}" | 23 | LIC_FILES_CHKSUM ??= "file://license.txt;md5=${@d.getVarFlag('LIC_FILES_CHKSUM', d.getVar('BRANCH')) or '0'}" |
21 | 24 | ||
22 | SRC_URI = "${EMBEDDEDSW_SRCURI}" | 25 | SRC_URI = "${EMBEDDEDSW_SRCURI}" |
diff --git a/meta-xilinx-standalone/recipes-bsp/embeddedsw/embeddedsw/2023.1/0001-versal_fw-Fixup-core-makefiles.patch b/meta-xilinx-standalone/recipes-bsp/embeddedsw/embeddedsw/2023.1/0001-versal_fw-Fixup-core-makefiles.patch new file mode 100644 index 00000000..d6cb0e38 --- /dev/null +++ b/meta-xilinx-standalone/recipes-bsp/embeddedsw/embeddedsw/2023.1/0001-versal_fw-Fixup-core-makefiles.patch | |||
@@ -0,0 +1,101 @@ | |||
1 | From 607322dafb2979affd329ea70a2a7952203188a4 Mon Sep 17 00:00:00 2001 | ||
2 | From: Mark Hatle <mark.hatle@amd.com> | ||
3 | Date: Wed, 7 Dec 2022 15:42:15 -0800 | ||
4 | Subject: [PATCH] versal_fw: Fixup core makefiles | ||
5 | |||
6 | The Yocto Project build environment needs to be able to override a few | ||
7 | additional variables that may not be appropriate to do on the regular | ||
8 | command line build version. This patch preserves the default while | ||
9 | allowing it to be overriden as necessary. | ||
10 | |||
11 | Signed-off-by: Mark Hatle <mark.hatle@amd.com> | ||
12 | --- | ||
13 | lib/sw_apps/versal_plm/misc/versal/Makefile | 6 ++++-- | ||
14 | lib/sw_apps/versal_plm/misc/versal_net/Makefile | 6 ++++-- | ||
15 | lib/sw_apps/versal_psmfw/misc/Makefile | 6 ++++-- | ||
16 | 3 files changed, 12 insertions(+), 6 deletions(-) | ||
17 | |||
18 | diff --git a/lib/sw_apps/versal_plm/misc/versal/Makefile b/lib/sw_apps/versal_plm/misc/versal/Makefile | ||
19 | index 5c8e719e9c..af070716b6 100644 | ||
20 | --- a/lib/sw_apps/versal_plm/misc/versal/Makefile | ||
21 | +++ b/lib/sw_apps/versal_plm/misc/versal/Makefile | ||
22 | @@ -2,6 +2,8 @@ | ||
23 | COMPILER := mb-gcc | ||
24 | ARCHIVER := mb-gcc-ar | ||
25 | ASSEMBLER := mb-as | ||
26 | +COMPILER_FLAGS := -O2 -c -mcpu=v10.0 -mlittle-endian -mxl-barrel-shift -mxl-pattern-compare | ||
27 | +EXTRA_COMPILER_FLAGS := -g -ffunction-sections -fdata-sections -Wall -Wextra -Os -flto -ffat-lto-objects | ||
28 | DRIVER_LIB_VERSION = 1.0 | ||
29 | PROCESSOR = psv_pmc_0 | ||
30 | LIBRARIES = ${PROCESSOR}/lib/libxil.a | ||
31 | @@ -40,11 +42,11 @@ $(PROCESSOR)/lib/libxil.a: $(PROCESSOR)/lib/libxil_init.a | ||
32 | |||
33 | %/make.include: $(if $(wildcard $(PROCESSOR)/lib/libxil_init.a),$(PROCESSOR)/lib/libxil.a,) | ||
34 | @echo "Running Make include in $(subst /make.include,,$@)" | ||
35 | - $(MAKE) -C $(subst /make.include,,$@) -s include "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS= -O2 -c -mcpu=v10.0 -mlittle-endian -mxl-barrel-shift -mxl-pattern-compare" "EXTRA_COMPILER_FLAGS=-g -ffunction-sections -fdata-sections -Wall -Wextra -Os -flto -ffat-lto-objects" | ||
36 | + $(MAKE) -C $(subst /make.include,,$@) -s include "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS=$(COMPILER_FLAGS)" "EXTRA_COMPILER_FLAGS=$(EXTRA_COMPILER_FLAGS)" | ||
37 | |||
38 | %/make.libs: include | ||
39 | @echo "Running Make libs in $(subst /make.libs,,$@)" | ||
40 | - $(MAKE) -C $(subst /make.libs,,$@) -s libs "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS= -O2 -c -mcpu=v10.0 -mlittle-endian -mxl-barrel-shift -mxl-pattern-compare" "EXTRA_COMPILER_FLAGS=-g -ffunction-sections -fdata-sections -Wall -Wextra -Os -flto -ffat-lto-objects" | ||
41 | + $(MAKE) -C $(subst /make.libs,,$@) -s libs "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS=$(COMPILER_FLAGS)" "EXTRA_COMPILER_FLAGS=$(EXTRA_COMPILER_FLAGS)" | ||
42 | |||
43 | %/make.clean: | ||
44 | $(MAKE) -C $(subst /make.clean,,$@) -s clean | ||
45 | diff --git a/lib/sw_apps/versal_plm/misc/versal_net/Makefile b/lib/sw_apps/versal_plm/misc/versal_net/Makefile | ||
46 | index abffa6c5ed..4af5a02001 100644 | ||
47 | --- a/lib/sw_apps/versal_plm/misc/versal_net/Makefile | ||
48 | +++ b/lib/sw_apps/versal_plm/misc/versal_net/Makefile | ||
49 | @@ -2,6 +2,8 @@ | ||
50 | COMPILER := mb-gcc | ||
51 | ARCHIVER := mb-gcc-ar | ||
52 | ASSEMBLER := mb-as | ||
53 | +COMPILER_FLAGS := -O2 -c -mcpu=v10.0 -mlittle-endian -mxl-barrel-shift -mxl-pattern-compare | ||
54 | +EXTRA_COMPILER_FLAGS := -g -ffunction-sections -fdata-sections -Wall -Wextra -Os -flto -ffat-lto-objects | ||
55 | DRIVER_LIB_VERSION = 1.0 | ||
56 | PROCESSOR = psx_pmc_0 | ||
57 | LIBRARIES = ${PROCESSOR}/lib/libxil.a | ||
58 | @@ -40,11 +42,11 @@ $(PROCESSOR)/lib/libxil.a: $(PROCESSOR)/lib/libxil_init.a | ||
59 | |||
60 | %/make.include: $(if $(wildcard $(PROCESSOR)/lib/libxil_init.a),$(PROCESSOR)/lib/libxil.a,) | ||
61 | @echo "Running Make include in $(subst /make.include,,$@)" | ||
62 | - $(MAKE) -C $(subst /make.include,,$@) -s include "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS= -O2 -c -mcpu=v10.0 -mlittle-endian -mxl-barrel-shift -mxl-pattern-compare" "EXTRA_COMPILER_FLAGS=-g -ffunction-sections -fdata-sections -Wall -Wextra -Os -flto -ffat-lto-objects" | ||
63 | + $(MAKE) -C $(subst /make.include,,$@) -s include "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS=$(COMPILER_FLAGS)" "EXTRA_COMPILER_FLAGS=$(EXTRA_COMPILER_FLAGS)" | ||
64 | |||
65 | %/make.libs: include | ||
66 | @echo "Running Make libs in $(subst /make.libs,,$@)" | ||
67 | - $(MAKE) -C $(subst /make.libs,,$@) -s libs "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS= -O2 -c -mcpu=v10.0 -mlittle-endian -mxl-barrel-shift -mxl-pattern-compare" "EXTRA_COMPILER_FLAGS=-g -ffunction-sections -fdata-sections -Wall -Wextra -Os -flto -ffat-lto-objects" | ||
68 | + $(MAKE) -C $(subst /make.libs,,$@) -s libs "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS=$(COMPILER_FLAGS)" "EXTRA_COMPILER_FLAGS=$(EXTRA_COMPILER_FLAGS)" | ||
69 | |||
70 | %/make.clean: | ||
71 | $(MAKE) -C $(subst /make.clean,,$@) -s clean | ||
72 | diff --git a/lib/sw_apps/versal_psmfw/misc/Makefile b/lib/sw_apps/versal_psmfw/misc/Makefile | ||
73 | index 02d85e492e..f6386dcbed 100644 | ||
74 | --- a/lib/sw_apps/versal_psmfw/misc/Makefile | ||
75 | +++ b/lib/sw_apps/versal_psmfw/misc/Makefile | ||
76 | @@ -11,6 +11,8 @@ PAR_SUBDIRS := $(patsubst %/Makefile, %, $(BSP_PARALLEL_MAKEFILES)) | ||
77 | COMPILER := mb-gcc | ||
78 | ARCHIVER := mb-ar | ||
79 | ASSEMBLER := mb-as | ||
80 | +COMPILER_FLAGS := -O2 -c -mcpu=v10.0 -mlittle-endian -mxl-barrel-shift -mxl-pattern-compare | ||
81 | +EXTRA_COMPILER_FLAGS := -g -ffunction-sections -fdata-sections -Wall -Wextra | ||
82 | |||
83 | ifneq (,$(findstring win,$(RDI_PLATFORM))) | ||
84 | SHELL = CMD | ||
85 | @@ -41,11 +43,11 @@ $(PROCESSOR)/lib/libxil.a: $(PROCESSOR)/lib/libxil_init.a | ||
86 | |||
87 | %/make.include: $(if $(wildcard $(PROCESSOR)/lib/libxil_init.a),$(PROCESSOR)/lib/libxil.a,) | ||
88 | @echo "Running Make include in $(subst /make.include,,$@)" | ||
89 | - $(MAKE) -C $(subst /make.include,,$@) -s include "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS= -O2 -c -mcpu=v10.0 -mlittle-endian -mxl-barrel-shift -mxl-pattern-compare" "EXTRA_COMPILER_FLAGS=-g -ffunction-sections -fdata-sections -Wall -Wextra" | ||
90 | + $(MAKE) -C $(subst /make.include,,$@) -s include "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS=$(COMPILER_FLAGS)" "EXTRA_COMPILER_FLAGS=$(EXTRA_COMPILER_FLAGS)" | ||
91 | |||
92 | %/make.libs: include | ||
93 | @echo "Running Make libs in $(subst /make.libs,,$@)" | ||
94 | - $(MAKE) -C $(subst /make.libs,,$@) -s libs "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS= -O2 -c -mcpu=v10.0 -mlittle-endian -mxl-barrel-shift -mxl-pattern-compare" "EXTRA_COMPILER_FLAGS=-g -ffunction-sections -fdata-sections -Wall -Wextra" | ||
95 | + $(MAKE) -C $(subst /make.libs,,$@) -s libs "SHELL=$(SHELL)" "COMPILER=$(COMPILER)" "ASSEMBLER=$(ASSEMBLER)" "ARCHIVER=$(ARCHIVER)" "COMPILER_FLAGS=$(COMPILER_FLAGS)" "EXTRA_COMPILER_FLAGS=$(EXTRA_COMPILER_FLAGS)" | ||
96 | |||
97 | %/make.clean: | ||
98 | $(MAKE) -C $(subst /make.clean,,$@) -s clean | ||
99 | -- | ||
100 | 2.17.1 | ||
101 | |||
diff --git a/meta-xilinx-standalone/recipes-bsp/embeddedsw/embeddedsw/2023.1/makefile-skip-copy_bsp.sh.patch b/meta-xilinx-standalone/recipes-bsp/embeddedsw/embeddedsw/2023.1/makefile-skip-copy_bsp.sh.patch new file mode 100644 index 00000000..1300c7e1 --- /dev/null +++ b/meta-xilinx-standalone/recipes-bsp/embeddedsw/embeddedsw/2023.1/makefile-skip-copy_bsp.sh.patch | |||
@@ -0,0 +1,104 @@ | |||
1 | From d703670357546d9aab66baea1f6751ba1cbdf7ad Mon Sep 17 00:00:00 2001 | ||
2 | From: Mark Hatle <mark.hatle@amd.com> | ||
3 | Date: Wed, 7 Dec 2022 15:30:23 -0800 | ||
4 | Subject: [PATCH] Prevent makefile from calling copy_bsp.sh | ||
5 | |||
6 | If we call copy_bsp.sh we will undo any manual compliation steps we | ||
7 | have already done. Avoid this. | ||
8 | |||
9 | YP integration specific | ||
10 | |||
11 | Signed-off-by: Mark Hatle <mark.hatle@amd.com> | ||
12 | --- | ||
13 | lib/sw_apps/versal_plm/src/versal/Makefile | 4 ++-- | ||
14 | lib/sw_apps/versal_plm/src/versal_net/Makefile | 4 ++-- | ||
15 | lib/sw_apps/versal_psmfw/src/versal/Makefile | 4 ++-- | ||
16 | lib/sw_apps/versal_psmfw/src/versal_net/Makefile | 6 +++--- | ||
17 | lib/sw_apps/zynqmp_pmufw/src/Makefile | 4 ++-- | ||
18 | 5 files changed, 11 insertions(+), 11 deletions(-) | ||
19 | |||
20 | diff --git a/lib/sw_apps/versal_plm/src/versal/Makefile b/lib/sw_apps/versal_plm/src/versal/Makefile | ||
21 | index d1ebd1d374..bfb8c83adb 100644 | ||
22 | --- a/lib/sw_apps/versal_plm/src/versal/Makefile | ||
23 | +++ b/lib/sw_apps/versal_plm/src/versal/Makefile | ||
24 | @@ -32,8 +32,8 @@ $(EXEC): $(LIBS) $(OBJS) $(INCLUDES) | ||
25 | $(CC) -o $@ $(OBJS) $(CC_FLAGS) $(CFLAGS) $(LN_FLAGS) $(LIBPATH) $(LSCRIPT) | ||
26 | |||
27 | $(LIBS): | ||
28 | - echo "Copying BSP files" | ||
29 | - ../../misc/versal/copy_bsp.sh | ||
30 | + #echo "Copying BSP files" | ||
31 | + #../../misc/versal/copy_bsp.sh | ||
32 | echo "Compiling bsp" | ||
33 | $(MAKE) -C ../../misc/versal/versal_plm_bsp | ||
34 | |||
35 | diff --git a/lib/sw_apps/versal_plm/src/versal_net/Makefile b/lib/sw_apps/versal_plm/src/versal_net/Makefile | ||
36 | index 39c7aa38e3..081d8f1b2e 100644 | ||
37 | --- a/lib/sw_apps/versal_plm/src/versal_net/Makefile | ||
38 | +++ b/lib/sw_apps/versal_plm/src/versal_net/Makefile | ||
39 | @@ -32,8 +32,8 @@ $(EXEC): $(LIBS) $(OBJS) $(INCLUDES) | ||
40 | $(CC) -o $@ $(OBJS) $(CC_FLAGS) $(CFLAGS) $(LN_FLAGS) $(LIBPATH) $(LSCRIPT) | ||
41 | |||
42 | $(LIBS): | ||
43 | - echo "Copying BSP files" | ||
44 | - ../../misc/versal_net/copy_bsp.sh | ||
45 | + #echo "Copying BSP files" | ||
46 | + #../../misc/versal_net/copy_bsp.sh | ||
47 | echo "Compiling bsp" | ||
48 | $(MAKE) -C ../../misc/versal_net/versal_plm_bsp | ||
49 | |||
50 | diff --git a/lib/sw_apps/versal_psmfw/src/versal/Makefile b/lib/sw_apps/versal_psmfw/src/versal/Makefile | ||
51 | index 1572bbbca9..ce182acaa7 100644 | ||
52 | --- a/lib/sw_apps/versal_psmfw/src/versal/Makefile | ||
53 | +++ b/lib/sw_apps/versal_psmfw/src/versal/Makefile | ||
54 | @@ -34,8 +34,8 @@ $(EXEC): $(LIBS) $(OBJS) $(INCLUDES) | ||
55 | $(CC) -o $@ $(OBJS) $(CC_FLAGS) $(CFLAGS) $(LN_FLAGS) $(LIBPATH) $(LSCRIPT) | ||
56 | |||
57 | $(LIBS): | ||
58 | - echo "Copying BSP files" | ||
59 | - ../../misc/copy_bsp.sh | ||
60 | + #echo "Copying BSP files" | ||
61 | + #../../misc/copy_bsp.sh | ||
62 | echo "Compiling bsp" | ||
63 | $(MAKE) -C ../../misc/versal_psmfw_bsp | ||
64 | |||
65 | diff --git a/lib/sw_apps/versal_psmfw/src/versal_net/Makefile b/lib/sw_apps/versal_psmfw/src/versal_net/Makefile | ||
66 | index a72ffa1de2..3670310daa 100644 | ||
67 | --- a/lib/sw_apps/versal_psmfw/src/versal_net/Makefile | ||
68 | +++ b/lib/sw_apps/versal_psmfw/src/versal_net/Makefile | ||
69 | @@ -34,8 +34,8 @@ $(EXEC): $(LIBS) $(OBJS) $(INCLUDES) | ||
70 | $(CC) -o $@ $(OBJS) $(CC_FLAGS) $(CFLAGS) $(LN_FLAGS) $(LIBPATH) $(LSCRIPT) | ||
71 | |||
72 | $(LIBS): | ||
73 | - echo "Copying BSP files" | ||
74 | - ../../misc/versal_net/copy_bsp.sh | ||
75 | + #echo "Copying BSP files" | ||
76 | + #../../misc/versal_net/copy_bsp.sh | ||
77 | echo "Compiling bsp" | ||
78 | $(MAKE) -C ../../misc/versal_net/versal_psmfw_bsp | ||
79 | |||
80 | @@ -44,4 +44,4 @@ $(LIBS): | ||
81 | |||
82 | clean: | ||
83 | rm -rf $(OBJS) $(LIBS) $(EXEC) *.o *.d ../common/*.o ../common/*.d | ||
84 | - rm -rf ../../misc/versal_net/versal_psmfw_bsp | ||
85 | \ No newline at end of file | ||
86 | + rm -rf ../../misc/versal_net/versal_psmfw_bsp | ||
87 | diff --git a/lib/sw_apps/zynqmp_pmufw/src/Makefile b/lib/sw_apps/zynqmp_pmufw/src/Makefile | ||
88 | index 1750c0a329..17f6a545ea 100644 | ||
89 | --- a/lib/sw_apps/zynqmp_pmufw/src/Makefile | ||
90 | +++ b/lib/sw_apps/zynqmp_pmufw/src/Makefile | ||
91 | @@ -28,8 +28,8 @@ $(EXEC): $(LIBS) $(OBJS) $(INCLUDES) | ||
92 | $(CC) -o $@ $(OBJS) $(CC_FLAGS) $(CFLAGS) $(LN_FLAGS) $(LIBPATH) $(LSCRIPT) | ||
93 | |||
94 | $(LIBS): | ||
95 | - echo "Copying BSP files" | ||
96 | - ../misc/copy_bsp.sh | ||
97 | + #echo "Copying BSP files" | ||
98 | + #../misc/copy_bsp.sh | ||
99 | echo "Compiling bsp" | ||
100 | $(MAKE) -C ../misc/zynqmp_pmufw_bsp | ||
101 | |||
102 | -- | ||
103 | 2.17.1 | ||
104 | |||
diff --git a/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2023.1.bb b/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2023.1.bb new file mode 100644 index 00000000..8816dc4d --- /dev/null +++ b/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_2023.1.bb | |||
@@ -0,0 +1,11 @@ | |||
1 | require fsbl-firmware.inc | ||
2 | |||
3 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw/2023.1:${FILE_DIRNAME}/embeddedsw" | ||
4 | |||
5 | SRC_URI += " \ | ||
6 | file://makefile-skip-copy_bsp.sh.patch \ | ||
7 | file://fsbl-fixups.patch \ | ||
8 | " | ||
9 | |||
10 | # This version does not build for zynq | ||
11 | COMPATIBLE_MACHINE:zynq = "none" | ||
diff --git a/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_git.bb b/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_git.bb index 0094384a..f5e55ecc 100644 --- a/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_git.bb +++ b/meta-xilinx-standalone/recipes-bsp/embeddedsw/fsbl-firmware_git.bb | |||
@@ -3,7 +3,7 @@ DEFAULT_PREFERENCE = "-1" | |||
3 | 3 | ||
4 | require fsbl-firmware.inc | 4 | require fsbl-firmware.inc |
5 | 5 | ||
6 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw" | 6 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw/2023.1:${FILE_DIRNAME}/embeddedsw" |
7 | 7 | ||
8 | SRC_URI += " \ | 8 | SRC_URI += " \ |
9 | file://makefile-skip-copy_bsp.sh.patch \ | 9 | file://makefile-skip-copy_bsp.sh.patch \ |
diff --git a/meta-xilinx-standalone/recipes-bsp/embeddedsw/plm-firmware_2023.1.bb b/meta-xilinx-standalone/recipes-bsp/embeddedsw/plm-firmware_2023.1.bb new file mode 100644 index 00000000..37861b75 --- /dev/null +++ b/meta-xilinx-standalone/recipes-bsp/embeddedsw/plm-firmware_2023.1.bb | |||
@@ -0,0 +1,29 @@ | |||
1 | require plm-firmware.inc | ||
2 | |||
3 | # Separate build directories for versal and versal-net | ||
4 | SOC_DIR = "versal" | ||
5 | SOC_DIR:versal-net = "versal_net" | ||
6 | B = "${S}/lib/sw_apps/versal_plm/src/${SOC_DIR}" | ||
7 | |||
8 | BSP_DIR ?= "${B}/../../misc/versal_plm_bsp" | ||
9 | |||
10 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw/2023.1:${FILE_DIRNAME}/embeddedsw" | ||
11 | |||
12 | SRC_URI += " \ | ||
13 | file://makefile-skip-copy_bsp.sh.patch \ | ||
14 | file://0001-versal_fw-Fixup-core-makefiles.patch \ | ||
15 | " | ||
16 | |||
17 | EXTRA_COMPILER_FLAGS = "-g -ffunction-sections -fdata-sections -Wall -Wextra -Os -flto -ffat-lto-objects" | ||
18 | |||
19 | do_configure() { | ||
20 | # manually do the copy_bsp step first, so as to be able to fix up use of | ||
21 | # mb-* commands | ||
22 | ${B}/../../misc/${SOC_DIR}/copy_bsp.sh | ||
23 | } | ||
24 | |||
25 | do_compile() { | ||
26 | oe_runmake | ||
27 | |||
28 | ${MB_OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/${ESW_COMPONENT}.bin | ||
29 | } | ||
diff --git a/meta-xilinx-standalone/recipes-bsp/embeddedsw/plm-firmware_git.bb b/meta-xilinx-standalone/recipes-bsp/embeddedsw/plm-firmware_git.bb index 2d06fa6a..bbc7519f 100644 --- a/meta-xilinx-standalone/recipes-bsp/embeddedsw/plm-firmware_git.bb +++ b/meta-xilinx-standalone/recipes-bsp/embeddedsw/plm-firmware_git.bb | |||
@@ -3,7 +3,14 @@ DEFAULT_PREFERENCE = "-1" | |||
3 | 3 | ||
4 | require plm-firmware.inc | 4 | require plm-firmware.inc |
5 | 5 | ||
6 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw" | 6 | # Separate build directories for versal and versal-net |
7 | SOC_DIR = "versal" | ||
8 | SOC_DIR:versal-net = "versal_net" | ||
9 | B = "${S}/lib/sw_apps/versal_plm/src/${SOC_DIR}" | ||
10 | |||
11 | BSP_DIR ?= "${B}/../../misc/versal_plm_bsp" | ||
12 | |||
13 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw/2023.1:${FILE_DIRNAME}/embeddedsw" | ||
7 | 14 | ||
8 | SRC_URI += " \ | 15 | SRC_URI += " \ |
9 | file://makefile-skip-copy_bsp.sh.patch \ | 16 | file://makefile-skip-copy_bsp.sh.patch \ |
@@ -12,6 +19,12 @@ SRC_URI += " \ | |||
12 | 19 | ||
13 | EXTRA_COMPILER_FLAGS = "-g -ffunction-sections -fdata-sections -Wall -Wextra -Os -flto -ffat-lto-objects" | 20 | EXTRA_COMPILER_FLAGS = "-g -ffunction-sections -fdata-sections -Wall -Wextra -Os -flto -ffat-lto-objects" |
14 | 21 | ||
22 | do_configure() { | ||
23 | # manually do the copy_bsp step first, so as to be able to fix up use of | ||
24 | # mb-* commands | ||
25 | ${B}/../../misc/${SOC_DIR}/copy_bsp.sh | ||
26 | } | ||
27 | |||
15 | do_compile() { | 28 | do_compile() { |
16 | oe_runmake | 29 | oe_runmake |
17 | 30 | ||
diff --git a/meta-xilinx-standalone/recipes-bsp/embeddedsw/pmu-firmware_2023.1.bb b/meta-xilinx-standalone/recipes-bsp/embeddedsw/pmu-firmware_2023.1.bb new file mode 100644 index 00000000..fe6deddc --- /dev/null +++ b/meta-xilinx-standalone/recipes-bsp/embeddedsw/pmu-firmware_2023.1.bb | |||
@@ -0,0 +1,16 @@ | |||
1 | require pmu-firmware.inc | ||
2 | |||
3 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw/2023.1:${FILE_DIRNAME}/embeddedsw" | ||
4 | |||
5 | SRC_URI += " \ | ||
6 | file://makefile-skip-copy_bsp.sh.patch \ | ||
7 | file://0001-zynqmp_pmufw-Fixup-core-makefiles.patch \ | ||
8 | " | ||
9 | |||
10 | EXTRA_COMPILER_FLAGS = "-ffunction-sections -fdata-sections -Wall -Wextra -Os -flto -ffat-lto-objects" | ||
11 | |||
12 | do_compile() { | ||
13 | oe_runmake | ||
14 | |||
15 | ${MB_OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/${ESW_COMPONENT}.bin | ||
16 | } | ||
diff --git a/meta-xilinx-standalone/recipes-bsp/embeddedsw/pmu-firmware_git.bb b/meta-xilinx-standalone/recipes-bsp/embeddedsw/pmu-firmware_git.bb index 5d806067..c55cd149 100644 --- a/meta-xilinx-standalone/recipes-bsp/embeddedsw/pmu-firmware_git.bb +++ b/meta-xilinx-standalone/recipes-bsp/embeddedsw/pmu-firmware_git.bb | |||
@@ -3,7 +3,7 @@ DEFAULT_PREFERENCE = "-1" | |||
3 | 3 | ||
4 | require pmu-firmware.inc | 4 | require pmu-firmware.inc |
5 | 5 | ||
6 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw" | 6 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw/2023.1:${FILE_DIRNAME}/embeddedsw" |
7 | 7 | ||
8 | SRC_URI += " \ | 8 | SRC_URI += " \ |
9 | file://makefile-skip-copy_bsp.sh.patch \ | 9 | file://makefile-skip-copy_bsp.sh.patch \ |
diff --git a/meta-xilinx-standalone/recipes-bsp/embeddedsw/psm-firmware_2023.1.bb b/meta-xilinx-standalone/recipes-bsp/embeddedsw/psm-firmware_2023.1.bb new file mode 100644 index 00000000..569c5a46 --- /dev/null +++ b/meta-xilinx-standalone/recipes-bsp/embeddedsw/psm-firmware_2023.1.bb | |||
@@ -0,0 +1,34 @@ | |||
1 | require psm-firmware.inc | ||
2 | |||
3 | # Separate build directories for versal and versal-net | ||
4 | SOC_DIR = "versal" | ||
5 | SOC_DIR:versal-net = "versal_net" | ||
6 | B = "${S}/lib/sw_apps/versal_psmfw/src/${SOC_DIR}" | ||
7 | |||
8 | BSP_DIR ?= "${B}/../../misc/versal_psmfw_bsp" | ||
9 | |||
10 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw/2023.1:${FILE_DIRNAME}/embeddedsw" | ||
11 | |||
12 | SRC_URI += " \ | ||
13 | file://makefile-skip-copy_bsp.sh.patch \ | ||
14 | file://0001-versal_fw-Fixup-core-makefiles.patch \ | ||
15 | " | ||
16 | |||
17 | EXTRA_COMPILER_FLAGS = "-g -ffunction-sections -fdata-sections -Wall -Wextra" | ||
18 | |||
19 | # Override default since we're in a subdirectory deeper now... | ||
20 | do_configure() { | ||
21 | # manually do the copy_bsp step first, so as to be able to fix up use of | ||
22 | # mb-* commands | ||
23 | if [ ${SOC_DIR} != "versal" ]; then | ||
24 | ${B}/../../misc/${SOC_DIR}/copy_bsp.sh | ||
25 | else | ||
26 | ${B}/../../misc/copy_bsp.sh | ||
27 | fi | ||
28 | } | ||
29 | |||
30 | do_compile() { | ||
31 | oe_runmake | ||
32 | |||
33 | ${MB_OBJCOPY} -O binary ${B}/${ESW_COMPONENT} ${B}/${ESW_COMPONENT}.bin | ||
34 | } | ||
diff --git a/meta-xilinx-standalone/recipes-bsp/embeddedsw/psm-firmware_git.bb b/meta-xilinx-standalone/recipes-bsp/embeddedsw/psm-firmware_git.bb index d04d9183..42e0a95f 100644 --- a/meta-xilinx-standalone/recipes-bsp/embeddedsw/psm-firmware_git.bb +++ b/meta-xilinx-standalone/recipes-bsp/embeddedsw/psm-firmware_git.bb | |||
@@ -3,7 +3,14 @@ DEFAULT_PREFERENCE = "-1" | |||
3 | 3 | ||
4 | require psm-firmware.inc | 4 | require psm-firmware.inc |
5 | 5 | ||
6 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw" | 6 | # Separate build directories for versal and versal-net |
7 | SOC_DIR = "versal" | ||
8 | SOC_DIR:versal-net = "versal_net" | ||
9 | B = "${S}/lib/sw_apps/versal_psmfw/src/${SOC_DIR}" | ||
10 | |||
11 | BSP_DIR ?= "${B}/../../misc/versal_psmfw_bsp" | ||
12 | |||
13 | FILESPATH .= ":${FILE_DIRNAME}/embeddedsw/2023.1:${FILE_DIRNAME}/embeddedsw" | ||
7 | 14 | ||
8 | SRC_URI += " \ | 15 | SRC_URI += " \ |
9 | file://makefile-skip-copy_bsp.sh.patch \ | 16 | file://makefile-skip-copy_bsp.sh.patch \ |
@@ -12,6 +19,17 @@ SRC_URI += " \ | |||
12 | 19 | ||
13 | EXTRA_COMPILER_FLAGS = "-g -ffunction-sections -fdata-sections -Wall -Wextra" | 20 | EXTRA_COMPILER_FLAGS = "-g -ffunction-sections -fdata-sections -Wall -Wextra" |
14 | 21 | ||
22 | # Override default since we're in a subdirectory deeper now... | ||
23 | do_configure() { | ||
24 | # manually do the copy_bsp step first, so as to be able to fix up use of | ||
25 | # mb-* commands | ||
26 | if [ ${SOC_DIR} != "versal" ]; then | ||
27 | ${B}/../../misc/${SOC_DIR}/copy_bsp.sh | ||
28 | else | ||
29 | ${B}/../../misc/copy_bsp.sh | ||
30 | fi | ||
31 | } | ||
32 | |||
15 | do_compile() { | 33 | do_compile() { |
16 | oe_runmake | 34 | oe_runmake |
17 | 35 | ||
diff --git a/meta-xilinx-vendor/README.md b/meta-xilinx-vendor/README.md index 00909ed6..1903df17 100644 --- a/meta-xilinx-vendor/README.md +++ b/meta-xilinx-vendor/README.md | |||
@@ -49,4 +49,4 @@ This layer depends on: | |||
49 | https://git.yoctoproject.org/meta-xilinx (official version) | 49 | https://git.yoctoproject.org/meta-xilinx (official version) |
50 | https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) | 50 | https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) |
51 | layers: meta-xilinx-microblaze, meta-xilinx-core | 51 | layers: meta-xilinx-microblaze, meta-xilinx-core |
52 | branch: langdale or amd xilinx release version (e.g. rel-v2022.2) | 52 | branch: langdale or amd xilinx release version (e.g. rel-v2023.1) |