diff options
author | Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> | 2023-10-31 08:49:34 -0600 |
---|---|---|
committer | Mark Hatle <mark.hatle@amd.com> | 2023-11-01 16:09:55 -0500 |
commit | dbcc3152592f2677c7d73054ca57645199cddc81 (patch) | |
tree | f5cc2a224c370791c87d531bd1613e4eb1333ae2 | |
parent | 994d7f45e4a93ee092c02e9c14411418377e0b13 (diff) | |
download | meta-xilinx-dbcc3152592f2677c7d73054ca57645199cddc81.tar.gz |
README.building.md: Update build instructions
1. Add meta-virtualization layer dependencies in README.md file as
this is required for lopper tool for SDT build flow.
2. Remove machine table list and point to meta layer README.
3. Update build instructions for wic image and setting up tap devices.
4. Add instructions to clone gen-machine-conf repo submodules.
Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com>
Signed-off-by: Mark Hatle <mark.hatle@amd.com>
-rw-r--r-- | README.building.md | 82 |
1 files changed, 47 insertions, 35 deletions
diff --git a/README.building.md b/README.building.md index 7ffc1ab3..10c246f9 100644 --- a/README.building.md +++ b/README.building.md | |||
@@ -17,13 +17,22 @@ $ cd sources | |||
17 | > **Note:** | 17 | > **Note:** |
18 | > * *release_branch:* refers to upstream stable release branch. | 18 | > * *release_branch:* refers to upstream stable release branch. |
19 | > * *rel-version:* refers to amd xilinx release version. | 19 | > * *rel-version:* refers to amd xilinx release version. |
20 | |||
20 | ``` | 21 | ``` |
21 | $ mkdir sources | 22 | $ mkdir sources |
22 | $ git clone -b <release-branch> https://git.yoctoproject.org/poky.git | 23 | $ git clone -b <release-branch> https://git.yoctoproject.org/poky.git |
23 | $ git clone -b <release-branch> https://git.openembedded.org/meta-openembedded.git | 24 | $ git clone -b <release-branch> https://git.openembedded.org/meta-openembedded.git |
25 | $ git clone -b <release-branch> https://git.yoctoproject.org/git/meta-virtualization | ||
24 | $ git clone -b <rel-version> https://github.com/Xilinx/meta-xilinx.git | 26 | $ git clone -b <rel-version> https://github.com/Xilinx/meta-xilinx.git |
25 | $ git clone -b <rel-version> https://github.com/Xilinx/meta-xilinx-tools.git | 27 | $ git clone -b <rel-version> https://github.com/Xilinx/meta-xilinx-tools.git |
26 | ``` | 28 | ``` |
29 | > **Note:** When meta-xilinx layer is cloned using git tool by default it will | ||
30 | > not clone [gen-machine-conf](https://github.com/Xilinx/gen-machine-conf.git) | ||
31 | > repo as submodules, make sure this repo https://github.com/Xilinx/meta-xilinx.git | ||
32 | > is cloned using `--recurse-submodules` option as shown. | ||
33 | > `$ git clone -b <rel-version> https://github.com/Xilinx/meta-xilinx.git --recurse-submodules` | ||
34 | > Skip this step if you are using yocto-manifests https://github.com/Xilinx/yocto-manifests | ||
35 | |||
27 | 3. Initialize a build environment using the `oe-init-build-env` script. | 36 | 3. Initialize a build environment using the `oe-init-build-env` script. |
28 | ``` | 37 | ``` |
29 | $ source poky/oe-init-build-env | 38 | $ source poky/oe-init-build-env |
@@ -39,6 +48,7 @@ $ bitbake-layers add-layer ./<path-to-layer>/meta-openembedded/meta-oe | |||
39 | $ bitbake-layers add-layer ./<path-to-layer>/meta-openembedded/meta-python | 48 | $ bitbake-layers add-layer ./<path-to-layer>/meta-openembedded/meta-python |
40 | $ bitbake-layers add-layer ./<path-to-layer>/meta-openembedded/meta-filesystems | 49 | $ bitbake-layers add-layer ./<path-to-layer>/meta-openembedded/meta-filesystems |
41 | $ bitbake-layers add-layer ./<path-to-layer>/meta-openembedded/meta-networking | 50 | $ bitbake-layers add-layer ./<path-to-layer>/meta-openembedded/meta-networking |
51 | $ bitbake-layers add-layer ./<path-to-layer>/meta-virtualization | ||
42 | $ bitbake-layers add-layer ./<path-to-layer>/meta-xilinx/meta-microbalze | 52 | $ bitbake-layers add-layer ./<path-to-layer>/meta-xilinx/meta-microbalze |
43 | $ bitbake-layers add-layer ./<path-to-layer>/meta-xilinx/meta-xilinx-core | 53 | $ bitbake-layers add-layer ./<path-to-layer>/meta-xilinx/meta-xilinx-core |
44 | $ bitbake-layers add-layer ./<path-to-layer>/meta-xilinx/meta-xilinx-standalone | 54 | $ bitbake-layers add-layer ./<path-to-layer>/meta-xilinx/meta-xilinx-standalone |
@@ -55,45 +65,47 @@ $ bitbake-layers add-layer ./<path-to-layer>/meta-xilinx-tools | |||
55 | ``` | 65 | ``` |
56 | MACHINE = "<target_machine_name>" | 66 | MACHINE = "<target_machine_name>" |
57 | ``` | 67 | ``` |
58 | Available target machines are: | 68 | * For list of available target machines see meta layer README files. |
59 | 69 | ||
60 | | Device | target machines | | 70 | * [meta-xilinx-bsp README](https://github.com/Xilinx/meta-xilinx/tree/master/meta-xilinx-bsp#amd-xilinx-evaluation-boards-bsp-machines-files) |
61 | |------------|---------------------| | 71 | * [meta-kria README](https://github.com/Xilinx/meta-xilinx/tree/master/meta-xilinx-bsp#amd-xilinx-evaluation-boards-bsp-machines-files) |
62 | | MicroBlaze | microblaze-generic | | 72 | |
63 | | | ac701-microblazeel | | 73 | 6. For NFS build host system modify the build/conf/local.conf and add TMPDIR |
64 | | | kc705-microblazeel | | 74 | path as shown below. On local storage $TMPDIR will be set to build/tmp |
65 | | | kcu105-microblazeel | | 75 | ``` |
66 | | | vcu118-microblazeel | | 76 | TMPDIR = "/tmp/$USER/yocto/release_version/build" |
67 | | Zynq-7000 | zynq-generic | | 77 | ``` |
68 | | | zc702-zynq7 | | 78 | |
69 | | | zc706-zynq7 | | 79 | 7. Modify the build/conf/local.conf file to add wic image to default target |
70 | | ZynqMP | zynqmp-generic | | 80 | image as shown below. |
71 | | | zcu102-zynqmp | | 81 | ``` |
72 | | | zcu104-zynqmp | | 82 | IMAGE_FSTYPES += "wic" |
73 | | | zcu106-zynqmp | | 83 | WKS_FILES = "xilinx-default-sd.wks" |
74 | | | zcu111-zynqmp | | 84 | ``` |
75 | | | zcu208-zynqmp | | 85 | |
76 | | | zcu216-zynqmp | | 86 | 8. Build the qemu-helper-native package to setup QEMU network tap devices. |
77 | | | zcu670-zynqmp | | 87 | ``` |
78 | | | zcu1275-zynqmp | | 88 | $ bitbake qemu-helper-native |
79 | | | zcu1285-zynqmp | | 89 | ``` |
80 | | | ultra96-zynqmp | | 90 | |
81 | | Versal | versal-generic | | 91 | 9. Manually configure a tap interface for your build system. As root run |
82 | | | versal-net-generic | | 92 | <path-to>/sources/poky/scripts/runqemu-gen-tapdevs, which should generate a |
83 | | | vck190-versal | | 93 | list of tap devices. Once tap interfaces are successfully create you should |
84 | | | vmk180-versal | | 94 | be able to see all the interfaces by running ifconfig command. |
85 | | | vek280-versal | | 95 | |
86 | | | vpk120-versal | | 96 | ``` |
87 | | | vpk180-versal | | 97 | $ sudo ./<path-to-layer>/poky/scripts/runqemu-gen-tapdevs $(id -u $USER) $(id -g $USER) 4 tmp/sysroots-components/x86_64/qemu-helper-native/usr/bin |
88 | | | vhk158-versal | | 98 | ``` |
89 | 99 | ||
90 | 6. Build an OS image for the target using `bitbake` command. | 100 | 10. Build an OS image for the target using `bitbake` command. |
91 | > **Note:** Refer ./<path-to-distro-layer>/conf/templates/default/conf-notes.txt | 101 | > **Note:** Refer ./<path-to-distro-layer>/conf/templates/default/conf-notes.txt |
92 | > for available target image-name. e.g. core-image-minimal | 102 | > for available target image-name. e.g. core-image-minimal or petalinux-image-minimal |
93 | 103 | ||
94 | ``` | 104 | ``` |
95 | $ bitbake <image-name> | 105 | $ bitbake <target-image> |
96 | ``` | 106 | ``` |
97 | 107 | ||
98 | 7. Once complete the images for the target machine will be available in the output | 108 | 7. Once complete the images for the target machine will be available in the output |
99 | directory `${TMPDIR}/deploy/images/${MACHINE}/`. | 109 | directory `${TMPDIR}/deploy/images/${MACHINE}/`. |
110 | |||
111 | 8. Follow [Booting Instructions](https://github.com/Xilinx/meta-xilinx/blob/master/README.booting.md) | ||