summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com>2024-10-18 17:11:36 -0600
committerMark Hatle <mark.hatle@amd.com>2024-10-22 10:06:24 -0500
commit820a2c901df932ff10d0f96615b8a49789ea6d97 (patch)
tree971832205156ec5bca47b769223384e8348d7a40
parent90a93bda7714eff9e62d78a48003b5386f869bce (diff)
downloadmeta-xilinx-820a2c901df932ff10d0f96615b8a49789ea6d97.tar.gz
README.md: Update meta-xilinx-standalone-sdt docs to scarthgap
1. Update meta-xilinx-standalone-sdt docs to scarthgap. 2. Move SDT build instructions to README.sdt.bsp.md Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
-rw-r--r--meta-xilinx-standalone-sdt/README.md176
1 files changed, 14 insertions, 162 deletions
diff --git a/meta-xilinx-standalone-sdt/README.md b/meta-xilinx-standalone-sdt/README.md
index 0ecc6e4d..97141332 100644
--- a/meta-xilinx-standalone-sdt/README.md
+++ b/meta-xilinx-standalone-sdt/README.md
@@ -1,162 +1,10 @@
1# meta-xilinx-standalone-sdt 1# meta-xilinx-standalone-sdt
2 2
3This layer contains System Device Tree items that are related to the 3This layer contains System Device Tree build metadata such as multiconfig operating
4meta-xilinx-standalone layer. 4environment(baremetal, freertos etc) boot firmware drivers, libraries and
5applications recipes.
5 6
6## Build Instructions 7See [SDT Build Instructions](README.sdt.bsp.md) for SDT build workflows.
7
8The Yocto Project setup for the System Device Tree (SDT) workflow is as follows.
9Be sure to read everything below.
10
11> **Pre-requisites:**
12> * To use this layer you must REMOVE meta-xilinx-tools from your project.
13meta-xilinx-tools is not compatible with this SDT approach. You may
14also have to remove other layers that depend on meta-xilinx-tools, such as
15meta-kria and meta-system-controller.
16> * Follow [System Device Tree Instructions](https://github.com/Xilinx/system-device-tree-xlnx/blob/master/README.md)
17> to generate the SDT output.
18> * To use the SDT version of the embedded software (firmware) as well
19as system configuration, you must build through gen-machineconf tool. This tool
20is passed a output of system device tree directory.
21
221. Follow [Building Instructions](../README.building.md) upto step 2.
23
242. Clone the meta-openamp repository.
25
26```
27$ git clone -b <rel-version> https://github.com/Xilinx/meta-openamp
28```
293. Continue [Building Instructions](https://github.com/Xilinx/meta-xilinx/blob/master/README.building.md)
30 from step 3 to step 4.
31
324. Remove meta-xilinx-tools and meta-xilinx-tools dependency layers(such as
33 meta-kria and meta-system-controller if included in bblayers.conf), then add
34 the meta-xilinx-standalone-sdt and meta-openamp layer.
35
36> **Note:** SDT builds for following devices are not supported in 2024.2 release.
37> * MicroBlaze
38
39
40```
41$ bitbake-layers remove-layer meta-xilinx-tools
42$ bitbake-layers add-layer ./<path-to-layer>/meta-xilinx/meta-xilinx-standalone-sdt
43$ bitbake-layers add-layer ./<path-to-layer>/meta-openamp
44```
45
461. Export gen-machineconf tool.
47```
48$ export PATH=$PATH:<ABSOLUTE_PATH>/gen-machine-conf
49```
50
511. Run the script from the build or ${TOPDIR} directory. This step describes
52 System Device Tree (SDT) with and without pl overlays. Configruations are same
53 for both SDT with and without pl overlays except for linux dts content.
54
55> **Note:**
56> 1. The -l option will automatically add the necessary parameters to the
57 local.conf file. If you need to re-run this comment, you just clear the
58 parameters from the end of the file. Without the -l option the items are
59 printed to the screen and must be manually added to your conf/local.conf
60> 2. The --soc-family argument is an optional argument and user can skip this.
61> 3. By default minimal set of multiconfigs are generated by gen-machineconf tool.
62> To enable full multiconfig(APU/RPU baremetal or FreeRTOS) then use
63> `--multiconfigfull` option.
64
65 a. Without SDT pl overlay:
66```
67 $ gen-machineconf --hw-description <path_to_sdtgen_output_directory> -c <conf> -l conf/local.conf
68```
69
70 b. With SDT pl overlay:
71 To generate SDT pl overlay run gen-machineconf command with
72 `-g {full|dfx}` option. Once SDT pl overlay command is executed successfully
73 pl.dtsi will be generated under <conf>/dts/${MACHINE}/pl-overlay-{full|dfx}
74 directory. User can use this pl.dtsi as input to full or dfx static firmware
75 recipes.
76
77> **Note:** DFx partial dtsi is not processed by gen-machineconf(lopper) tool, User
78> needs to use the *_partial.dtsi and *_partial.pdi/bit from sdtgen output
79> artifacts to DFx partial firmware recipes.
80
81 * Zynq-700 or ZynqMP Full bitstream or Versal Segmented Configuration:
82```
83 $ gen-machineconf parse-sdt --hw-description <path_to_sdtgen_output_directory> -c <conf> -l conf/local.conf -g full
84```
85
86 * ZynqMP or Versal DFx:
87```
88 $ gen-machineconf parse-sdt --hw-description <path_to_sdtgen_output_directory> -c <conf> -l conf/local.conf -g dfx
89```
90
91For example, Zynq-7000:
92```
93$ gen-machineconf parse-sdt --hw-description <path_to_sdtgen_output_directory> -c conf/ -l conf/local.conf
94```
95The following will be written to the end of the conf/local.conf file:
96
97```
98# Use the newly generated MACHINE
99MACHINE = "xlnx-zynq-zc702"
100
101# Avoid errors in some baremetal configs as these layers may be present
102# but are not used. Note the following lines are optional and can be
103# safetly disabled.
104SKIP_META_VIRT_SANITY_CHECK = "1"
105SKIP_META_SECURITY_SANITY_CHECK = "1"
106SKIP_META_TPM_SANITY_CHECK = "1"
107```
108
109For example, ZynqMP:
110```
111$ gen-machineconf parse-sdt --hw-description <path_to_sdtgen_output_directory> -c conf/ -l conf/local.conf
112```
113The following will be written to the end of the conf/local.conf file:
114
115```
116# Use the newly generated MACHINE
117MACHINE = "xlnx-zynqmp-zcu102-rev1-0"
118
119# Avoid errors in some baremetal configs as these layers may be present
120# but are not used. Note the following lines are optional and can be
121# safetly disabled.
122SKIP_META_VIRT_SANITY_CHECK = "1"
123SKIP_META_SECURITY_SANITY_CHECK = "1"
124SKIP_META_TPM_SANITY_CHECK = "1"
125```
126
127For example, Versal:
128```
129$ gen-machineconf parse-sdt --hw-description <path_to_sdtgen_output_directory> -c conf/ -l conf/local.conf
130```
131
132The following will be written to the end of the conf/local.conf file:
133
134```
135# Use the newly generated MACHINE
136MACHINE = "xlnx-versal-vmk180-rev1-1-x-ebm-01-reva"
137
138# Avoid errors in some baremetal configs as these layers may be present
139# but are not used. Note the following lines are optional and can be
140# safetly disabled.
141SKIP_META_VIRT_SANITY_CHECK = "1"
142SKIP_META_SECURITY_SANITY_CHECK = "1"
143SKIP_META_TPM_SANITY_CHECK = "1"
144```
145
146> **Bitbake Performance Note:**
147Each BBMULTICONFIG value requires all of the recipes to be parsed for that
148configuration. Thus each multiconfig will add more parsing time. A long list
149can lead to a very slow parse (many minutes). To speed up parsing, it is
150suggested that you trim this down to only the configurations you require.
151A minimum configuration is included with the generated configuration.
152
153
1547. Build your project, You should now be able to build your project normally.
155 See the Yocto Project documentation if you have questions on how to work with
156 the multiconfig recipes. The following is a simple build for testing.
157
1588. Continue [Building Instructions](https://github.com/Xilinx/meta-xilinx/blob/master/README.building.md)
159 from step 6.
160 8
161## Dependencies 9## Dependencies
162 10
@@ -170,18 +18,22 @@ This layer depends on:
170 layers: meta-oe 18 layers: meta-oe
171 branch: scarthgap 19 branch: scarthgap
172 20
21 URI: https://git.yoctoproject.org/meta-arm
22 layers: meta-arm, meta-arm-toolchain
23 branch: scarthgap
24
173 URI: 25 URI:
174 https://git.yoctoproject.org/meta-xilinx (official version) 26 https://git.yoctoproject.org/meta-xilinx (official version)
175 https://github.com/Xilinx/meta-xilinx (development and amd xilinx release) 27 https://github.com/Xilinx/meta-xilinx (development and AMD release)
176 layers: meta-xilinx-core, meta-xilinx-bsp, meta-xilinx-standalone 28 layers: meta-xilinx-core, meta-xilinx-bsp, meta-xilinx-standalone
177 branch: scarthgap or amd xilinx release version (e.g. rel-v2024.2) 29 branch: scarthgap or AMD release version (e.g. rel-v2024.2)
178 30
179 URI: 31 URI:
180 https://git.yoctoproject.org/meta-virtualization (official version) 32 https://git.yoctoproject.org/meta-virtualization (official version)
181 https://github.com/Xilinx/meta-virtualization (development and amd xilinx release) 33 https://github.com/Xilinx/meta-virtualization (development and AMD release)
182 branch: scarthgap or amd xilinx release version (e.g. rel-v2024.2) 34 branch: scarthgap or AMD release version (e.g. rel-v2024.2)
183 35
184 URI: 36 URI:
185 https://github.com/OpenAMP/meta-openamp (official version) 37 https://github.com/OpenAMP/meta-openamp (official version)
186 https://github.com/Xilinx/meta-openamp (development and amd xilinx release) 38 https://github.com/Xilinx/meta-openamp (development and AMD release)
187 branch: scarthgap or amd xilinx release version (e.g. rel-v2024.2) 39 branch: scarthgap or AMD release version (e.g. rel-v2024.2)