diff options
-rw-r--r-- | COPYING.MIT | 17 | ||||
-rw-r--r-- | README | 67 | ||||
-rw-r--r-- | conf/distro/enea-accelerated.conf | 6 | ||||
-rw-r--r-- | conf/layer.conf | 15 | ||||
-rw-r--r-- | conf/template.zcu102-zynqmp/bblayers.conf.sample | 23 | ||||
-rw-r--r-- | conf/template.zcu102-zynqmp/conf-notes.txt | 3 | ||||
-rw-r--r-- | conf/template.zcu102-zynqmp/local.conf.sample | 243 | ||||
-rw-r--r-- | images/enea-image-accelerated-common.inc | 16 | ||||
-rw-r--r-- | images/enea-image-accelerated-sdk.bb | 9 | ||||
-rw-r--r-- | images/enea-image-accelerated.bb | 6 |
10 files changed, 405 insertions, 0 deletions
diff --git a/COPYING.MIT b/COPYING.MIT new file mode 100644 index 0000000..89de354 --- /dev/null +++ b/COPYING.MIT | |||
@@ -0,0 +1,17 @@ | |||
1 | Permission is hereby granted, free of charge, to any person obtaining a copy | ||
2 | of this software and associated documentation files (the "Software"), to deal | ||
3 | in the Software without restriction, including without limitation the rights | ||
4 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
5 | copies of the Software, and to permit persons to whom the Software is | ||
6 | furnished to do so, subject to the following conditions: | ||
7 | |||
8 | The above copyright notice and this permission notice shall be included in | ||
9 | all copies or substantial portions of the Software. | ||
10 | |||
11 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
12 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
13 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
14 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
15 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
16 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | ||
17 | THE SOFTWARE. | ||
@@ -0,0 +1,67 @@ | |||
1 | meta-el-accelerated | ||
2 | =================================================================== | ||
3 | |||
4 | This layer contains distro customizations specific to the Enea Linux | ||
5 | Accelerated) profile releases. | ||
6 | |||
7 | Dependencies | ||
8 | ============ | ||
9 | |||
10 | This layer depends on: | ||
11 | |||
12 | URI: git://git.yoctoproject.org/poky | ||
13 | branch: sumo | ||
14 | |||
15 | URI: git://git.enea.com/linux/meta-el-common | ||
16 | branch: sumo | ||
17 | |||
18 | URI: git://git.enea.com/amp/meta-amp | ||
19 | branch: sumo | ||
20 | |||
21 | |||
22 | Source code | ||
23 | =========== | ||
24 | |||
25 | git://git.enea.com/linux/meta-el-accelerated.git | ||
26 | |||
27 | |||
28 | Patches | ||
29 | ======= | ||
30 | |||
31 | Please submit any patches against the el-accelerated layer to the | ||
32 | following mailing list: linux@lists.enea.com | ||
33 | |||
34 | Maintainers: | ||
35 | Adrian Mangeac <adrian.mangeac@enea.com> | ||
36 | Dan Andresan <dan.andresan@enea.com> | ||
37 | |||
38 | |||
39 | Table | ||
40 | ================= | ||
41 | |||
42 | I. Adding the el-accelerated layer to your build | ||
43 | II. Misc | ||
44 | |||
45 | |||
46 | I. Adding the el-accelerated layer to your build | ||
47 | ================================================= | ||
48 | |||
49 | In order to use this layer, you need to make the build system aware of | ||
50 | it. | ||
51 | |||
52 | Assuming the el-accelerated layer exists at the top-level of your | ||
53 | yocto build tree, you can add it to the build system by adding the | ||
54 | location of the el-accelerated layer to bblayers.conf, along with any | ||
55 | other layers needed. e.g.: | ||
56 | |||
57 | |||
58 | BBLAYERS ?= " \ | ||
59 | /path/to/yocto/meta \ | ||
60 | /path/to/yocto/meta-poky \ | ||
61 | /path/to/yocto/meta-amp \ | ||
62 | /path/to/yocto/meta-el-common \ | ||
63 | /path/to/yocto/meta-el-accelerated\ | ||
64 | " | ||
65 | |||
66 | II. Misc | ||
67 | ======== | ||
diff --git a/conf/distro/enea-accelerated.conf b/conf/distro/enea-accelerated.conf new file mode 100644 index 0000000..903b6e2 --- /dev/null +++ b/conf/distro/enea-accelerated.conf | |||
@@ -0,0 +1,6 @@ | |||
1 | require conf/distro/enea.conf | ||
2 | |||
3 | DISTRO = "enea-accelerated" | ||
4 | DISTRO_NAME = "Enea Accelerated Linux" | ||
5 | |||
6 | # PREFERRED_PROVIDER_virtual/kernel = "linux-intel-rt" | ||
diff --git a/conf/layer.conf b/conf/layer.conf new file mode 100644 index 0000000..46c48eb --- /dev/null +++ b/conf/layer.conf | |||
@@ -0,0 +1,15 @@ | |||
1 | # We have a conf and classes directory, add to BBPATH | ||
2 | BBPATH .= ":${LAYERDIR}" | ||
3 | |||
4 | # We have recipes-* directories, add to BBFILES | ||
5 | BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ | ||
6 | ${LAYERDIR}/images/* \ | ||
7 | ${LAYERDIR}/packagegroups/* \ | ||
8 | ${LAYERDIR}/recipes-*/*/*.bbappend" | ||
9 | |||
10 | BBFILE_COLLECTIONS += "el-accelerated" | ||
11 | BBFILE_PATTERN_el-accelerated = "^${LAYERDIR}/" | ||
12 | BBFILE_PRIORITY_el-accelerated = "7" | ||
13 | LAYERDEPENDS_el-accelerated = "el-common amp" | ||
14 | |||
15 | LAYERSERIES_COMPAT_el-accelerated = "sumo" | ||
diff --git a/conf/template.zcu102-zynqmp/bblayers.conf.sample b/conf/template.zcu102-zynqmp/bblayers.conf.sample new file mode 100644 index 0000000..d446e21 --- /dev/null +++ b/conf/template.zcu102-zynqmp/bblayers.conf.sample | |||
@@ -0,0 +1,23 @@ | |||
1 | # POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf | ||
2 | # changes incompatibly | ||
3 | POKY_BBLAYERS_CONF_VERSION = "2" | ||
4 | |||
5 | BBPATH = "${TOPDIR}" | ||
6 | BBFILES ?= "" | ||
7 | |||
8 | BBLAYERS ?= " \ | ||
9 | ##OEROOT##/meta \ | ||
10 | ##OEROOT##/meta-poky \ | ||
11 | ##OEROOT##/meta-xilinx/meta-xilinx-bsp \ | ||
12 | ##OEROOT##/meta-enea-bsp-common \ | ||
13 | ##OEROOT##/meta-enea-bsp-arm \ | ||
14 | ##OEROOT##/meta-el-common \ | ||
15 | ##OEROOT##/meta-el-accelerated \ | ||
16 | ##OEROOT##/meta-openembedded/meta-oe \ | ||
17 | ##OEROOT##/meta-openembedded/meta-networking \ | ||
18 | ##OEROOT##/meta-openembedded/meta-filesystems \ | ||
19 | ##OEROOT##/meta-openembedded/meta-python \ | ||
20 | ##OEROOT##/meta-amp \ | ||
21 | ##OEROOT##/meta-umLinx \ | ||
22 | ##OEROOT##/meta-jailhouse \ | ||
23 | " | ||
diff --git a/conf/template.zcu102-zynqmp/conf-notes.txt b/conf/template.zcu102-zynqmp/conf-notes.txt new file mode 100644 index 0000000..25fa45b --- /dev/null +++ b/conf/template.zcu102-zynqmp/conf-notes.txt | |||
@@ -0,0 +1,3 @@ | |||
1 | Common targets are: | ||
2 | enea-image-accelerated | ||
3 | enea-image-accelerated-sdk | ||
diff --git a/conf/template.zcu102-zynqmp/local.conf.sample b/conf/template.zcu102-zynqmp/local.conf.sample new file mode 100644 index 0000000..923235c --- /dev/null +++ b/conf/template.zcu102-zynqmp/local.conf.sample | |||
@@ -0,0 +1,243 @@ | |||
1 | # | ||
2 | # This file is your local configuration file and is where all local user settings | ||
3 | # are placed. The comments in this file give some guide to the options a new user | ||
4 | # to the system might want to change but pretty much any configuration option can | ||
5 | # be set in this file. More adventurous users can look at local.conf.extended | ||
6 | # which contains other examples of configuration which can be placed in this file | ||
7 | # but new users likely won't need any of them initially. | ||
8 | # | ||
9 | # Lines starting with the '#' character are commented out and in some cases the | ||
10 | # default values are provided as comments to show people example syntax. Enabling | ||
11 | # the option is a question of removing the # character and making any change to the | ||
12 | # variable as required. | ||
13 | |||
14 | # | ||
15 | # Machine Selection | ||
16 | # | ||
17 | # You need to select a specific machine to target the build with. There are a selection | ||
18 | # of emulated machines available which can boot and run in the QEMU emulator: | ||
19 | # | ||
20 | #MACHINE ?= "qemuarm" | ||
21 | #MACHINE ?= "qemuarm64" | ||
22 | #MACHINE ?= "qemumips" | ||
23 | #MACHINE ?= "qemumips64" | ||
24 | #MACHINE ?= "qemuppc" | ||
25 | #MACHINE ?= "qemux86" | ||
26 | #MACHINE ?= "qemux86-64" | ||
27 | # | ||
28 | # There are also the following hardware board target machines included for | ||
29 | # demonstration purposes: | ||
30 | # | ||
31 | #MACHINE ?= "beaglebone" | ||
32 | #MACHINE ?= "genericx86" | ||
33 | #MACHINE ?= "genericx86-64" | ||
34 | #MACHINE ?= "mpc8315e-rdb" | ||
35 | #MACHINE ?= "edgerouter" | ||
36 | # | ||
37 | # This sets the default machine to be qemux86 if no other machine is selected: | ||
38 | MACHINE ?= "zcu102-zynqmp" | ||
39 | |||
40 | # | ||
41 | # Where to place downloads | ||
42 | # | ||
43 | # During a first build the system will download many different source code tarballs | ||
44 | # from various upstream projects. This can take a while, particularly if your network | ||
45 | # connection is slow. These are all stored in DL_DIR. When wiping and rebuilding you | ||
46 | # can preserve this directory to speed up this part of subsequent builds. This directory | ||
47 | # is safe to share between multiple builds on the same machine too. | ||
48 | # | ||
49 | # The default is a downloads directory under TOPDIR which is the build directory. | ||
50 | # | ||
51 | #DL_DIR ?= "${TOPDIR}/downloads" | ||
52 | |||
53 | # | ||
54 | # Where to place shared-state files | ||
55 | # | ||
56 | # BitBake has the capability to accelerate builds based on previously built output. | ||
57 | # This is done using "shared state" files which can be thought of as cache objects | ||
58 | # and this option determines where those files are placed. | ||
59 | # | ||
60 | # You can wipe out TMPDIR leaving this directory intact and the build would regenerate | ||
61 | # from these files if no changes were made to the configuration. If changes were made | ||
62 | # to the configuration, only shared state files where the state was still valid would | ||
63 | # be used (done using checksums). | ||
64 | # | ||
65 | # The default is a sstate-cache directory under TOPDIR. | ||
66 | # | ||
67 | #SSTATE_DIR ?= "${TOPDIR}/sstate-cache" | ||
68 | |||
69 | # | ||
70 | # Where to place the build output | ||
71 | # | ||
72 | # This option specifies where the bulk of the building work should be done and | ||
73 | # where BitBake should place its temporary files and output. Keep in mind that | ||
74 | # this includes the extraction and compilation of many applications and the toolchain | ||
75 | # which can use Gigabytes of hard disk space. | ||
76 | # | ||
77 | # The default is a tmp directory under TOPDIR. | ||
78 | # | ||
79 | #TMPDIR = "${TOPDIR}/tmp" | ||
80 | |||
81 | # | ||
82 | # Default policy config | ||
83 | # | ||
84 | # The distribution setting controls which policy settings are used as defaults. | ||
85 | # The default value is fine for general Yocto project use, at least initially. | ||
86 | # Ultimately when creating custom policy, people will likely end up subclassing | ||
87 | # these defaults. | ||
88 | # | ||
89 | DISTRO ?= "enea-accelerated" | ||
90 | # As an example of a subclass there is a "bleeding" edge policy configuration | ||
91 | # where many versions are set to the absolute latest code from the upstream | ||
92 | # source control systems. This is just mentioned here as an example, its not | ||
93 | # useful to most new users. | ||
94 | # DISTRO ?= "poky-bleeding" | ||
95 | |||
96 | # | ||
97 | # Package Management configuration | ||
98 | # | ||
99 | # This variable lists which packaging formats to enable. Multiple package backends | ||
100 | # can be enabled at once and the first item listed in the variable will be used | ||
101 | # to generate the root filesystems. | ||
102 | # Options are: | ||
103 | # - 'package_deb' for debian style deb files | ||
104 | # - 'package_ipk' for ipk files are used by opkg (a debian style embedded package manager) | ||
105 | # - 'package_rpm' for rpm style packages | ||
106 | # E.g.: PACKAGE_CLASSES ?= "package_rpm package_deb package_ipk" | ||
107 | # We default to rpm: | ||
108 | PACKAGE_CLASSES ?= "package_deb" | ||
109 | |||
110 | # | ||
111 | # SDK/ADT target architecture | ||
112 | # | ||
113 | # This variable specifies the architecture to build SDK/ADT items for and means | ||
114 | # you can build the SDK packages for architectures other than the machine you are | ||
115 | # running the build on (i.e. building i686 packages on an x86_64 host). | ||
116 | # Supported values are i686 and x86_64 | ||
117 | #SDKMACHINE ?= "i686" | ||
118 | |||
119 | # | ||
120 | # Extra image configuration defaults | ||
121 | # | ||
122 | # The EXTRA_IMAGE_FEATURES variable allows extra packages to be added to the generated | ||
123 | # images. Some of these options are added to certain image types automatically. The | ||
124 | # variable can contain the following options: | ||
125 | # "dbg-pkgs" - add -dbg packages for all installed packages | ||
126 | # (adds symbol information for debugging/profiling) | ||
127 | # "dev-pkgs" - add -dev packages for all installed packages | ||
128 | # (useful if you want to develop against libs in the image) | ||
129 | # "ptest-pkgs" - add -ptest packages for all ptest-enabled packages | ||
130 | # (useful if you want to run the package test suites) | ||
131 | # "tools-sdk" - add development tools (gcc, make, pkgconfig etc.) | ||
132 | # "tools-debug" - add debugging tools (gdb, strace) | ||
133 | # "eclipse-debug" - add Eclipse remote debugging support | ||
134 | # "tools-profile" - add profiling tools (oprofile, lttng, valgrind) | ||
135 | # "tools-testapps" - add useful testing tools (ts_print, aplay, arecord etc.) | ||
136 | # "debug-tweaks" - make an image suitable for development | ||
137 | # e.g. ssh root access has a blank password | ||
138 | # There are other application targets that can be used here too, see | ||
139 | # meta/classes/image.bbclass and meta/classes/core-image.bbclass for more details. | ||
140 | # We default to enabling the debugging tweaks. | ||
141 | EXTRA_IMAGE_FEATURES = "debug-tweaks" | ||
142 | |||
143 | # | ||
144 | # Additional image features | ||
145 | # | ||
146 | # The following is a list of additional classes to use when building images which | ||
147 | # enable extra features. Some available options which can be included in this variable | ||
148 | # are: | ||
149 | # - 'buildstats' collect build statistics | ||
150 | # - 'image-mklibs' to reduce shared library files size for an image | ||
151 | # - 'image-prelink' in order to prelink the filesystem image | ||
152 | # - 'image-swab' to perform host system intrusion detection | ||
153 | # NOTE: if listing mklibs & prelink both, then make sure mklibs is before prelink | ||
154 | # NOTE: mklibs also needs to be explicitly enabled for a given image, see local.conf.extended | ||
155 | USER_CLASSES ?= "buildstats image-mklibs image-prelink" | ||
156 | |||
157 | # | ||
158 | # Runtime testing of images | ||
159 | # | ||
160 | # The build system can test booting virtual machine images under qemu (an emulator) | ||
161 | # after any root filesystems are created and run tests against those images. To | ||
162 | # enable this uncomment this line. See classes/testimage(-auto).bbclass for | ||
163 | # further details. | ||
164 | #TEST_IMAGE = "1" | ||
165 | # | ||
166 | # Interactive shell configuration | ||
167 | # | ||
168 | # Under certain circumstances the system may need input from you and to do this it | ||
169 | # can launch an interactive shell. It needs to do this since the build is | ||
170 | # multithreaded and needs to be able to handle the case where more than one parallel | ||
171 | # process may require the user's attention. The default is iterate over the available | ||
172 | # terminal types to find one that works. | ||
173 | # | ||
174 | # Examples of the occasions this may happen are when resolving patches which cannot | ||
175 | # be applied, to use the devshell or the kernel menuconfig | ||
176 | # | ||
177 | # Supported values are auto, gnome, xfce, rxvt, screen, konsole (KDE 3.x only), none | ||
178 | # Note: currently, Konsole support only works for KDE 3.x due to the way | ||
179 | # newer Konsole versions behave | ||
180 | #OE_TERMINAL = "auto" | ||
181 | # By default disable interactive patch resolution (tasks will just fail instead): | ||
182 | PATCHRESOLVE = "noop" | ||
183 | |||
184 | # | ||
185 | # Disk Space Monitoring during the build | ||
186 | # | ||
187 | # Monitor the disk space during the build. If there is less that 1GB of space or less | ||
188 | # than 100K inodes in any key build location (TMPDIR, DL_DIR, SSTATE_DIR), gracefully | ||
189 | # shutdown the build. If there is less that 100MB or 1K inodes, perform a hard abort | ||
190 | # of the build. The reason for this is that running completely out of space can corrupt | ||
191 | # files and damages the build in ways which may not be easily recoverable. | ||
192 | # It's necesary to monitor /tmp, if there is no space left the build will fail | ||
193 | # with very exotic errors. | ||
194 | BB_DISKMON_DIRS = "\ | ||
195 | STOPTASKS,${TMPDIR},1G,100K \ | ||
196 | STOPTASKS,${DL_DIR},1G,100K \ | ||
197 | STOPTASKS,${SSTATE_DIR},1G,100K \ | ||
198 | STOPTASKS,/tmp,100M,100K \ | ||
199 | ABORT,${TMPDIR},100M,1K \ | ||
200 | ABORT,${DL_DIR},100M,1K \ | ||
201 | ABORT,${SSTATE_DIR},100M,1K \ | ||
202 | ABORT,/tmp,10M,1K" | ||
203 | |||
204 | # | ||
205 | # Shared-state files from other locations | ||
206 | # | ||
207 | # As mentioned above, shared state files are prebuilt cache data objects which can | ||
208 | # used to accelerate build time. This variable can be used to configure the system | ||
209 | # to search other mirror locations for these objects before it builds the data itself. | ||
210 | # | ||
211 | # This can be a filesystem directory, or a remote url such as http or ftp. These | ||
212 | # would contain the sstate-cache results from previous builds (possibly from other | ||
213 | # machines). This variable works like fetcher MIRRORS/PREMIRRORS and points to the | ||
214 | # cache locations to check for the shared objects. | ||
215 | # NOTE: if the mirror uses the same structure as SSTATE_DIR, you need to add PATH | ||
216 | # at the end as shown in the examples below. This will be substituted with the | ||
217 | # correct path within the directory structure. | ||
218 | #SSTATE_MIRRORS ?= "\ | ||
219 | #file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \ | ||
220 | #file://.* file:///some/local/dir/sstate/PATH" | ||
221 | |||
222 | |||
223 | # | ||
224 | # Qemu configuration | ||
225 | # | ||
226 | # By default qemu will build with a builtin VNC server where graphical output can be | ||
227 | # seen. The two lines below enable the SDL backend too. By default libsdl-native will | ||
228 | # be built, if you want to use your host's libSDL instead of the minimal libsdl built | ||
229 | # by libsdl-native then uncomment the ASSUME_PROVIDED line below. | ||
230 | PACKAGECONFIG_append_pn-qemu-native = " sdl" | ||
231 | PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl" | ||
232 | #ASSUME_PROVIDED += "libsdl-native" | ||
233 | |||
234 | # CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to | ||
235 | # track the version of this file when it was generated. This can safely be ignored if | ||
236 | # this doesn't mean anything to you. | ||
237 | CONF_VERSION = "1" | ||
238 | |||
239 | IMAGE_FSTYPES_append = " tar.gz" | ||
240 | IMAGE_FSTYPES_remove = " live" | ||
241 | IMAGE_FSTYPES_remove = " wic" | ||
242 | |||
243 | LICENSE_FLAGS_WHITELIST = "commercial_umlinx commercial_umlinx-sdk commercial_oseutils" | ||
diff --git a/images/enea-image-accelerated-common.inc b/images/enea-image-accelerated-common.inc new file mode 100644 index 0000000..ed92c9a --- /dev/null +++ b/images/enea-image-accelerated-common.inc | |||
@@ -0,0 +1,16 @@ | |||
1 | require images/enea-image-common.inc | ||
2 | require images/enea-amp-common.inc | ||
3 | |||
4 | CORE_IMAGE_EXTRA_INSTALL_append = " kernel-modules" | ||
5 | |||
6 | PACKAGE_EXCLUDE = "cdrtools libxslt sqlite3 bmap-tools alsa-lib btrfs-tools" | ||
7 | |||
8 | IMAGE_FSTYPES = "tar.gz ext4" | ||
9 | IMAGE_FSTYPES_remove = " live wic" | ||
10 | NOHDD = "1" | ||
11 | NOISO = "1" | ||
12 | |||
13 | IMAGE_BOOTLOADER = "" | ||
14 | |||
15 | |||
16 | IMAGE_INSTALL += " fpgautil " | ||
diff --git a/images/enea-image-accelerated-sdk.bb b/images/enea-image-accelerated-sdk.bb new file mode 100644 index 0000000..1ede9e0 --- /dev/null +++ b/images/enea-image-accelerated-sdk.bb | |||
@@ -0,0 +1,9 @@ | |||
1 | DESCRIPTION = "Full featured image for the Accelerated profile" | ||
2 | |||
3 | require images/enea-image-accelerated-common.inc | ||
4 | require images/enea-image-extra.inc | ||
5 | |||
6 | TOOLCHAIN_TARGET_TASK_append = " kernel-devsrc umlinx-sdk" | ||
7 | |||
8 | IMAGE_ROOTFS_EXTRA_SPACE = "1048576" | ||
9 | IMAGE_OVERHEAD_FACTOR = "1.5" | ||
diff --git a/images/enea-image-accelerated.bb b/images/enea-image-accelerated.bb new file mode 100644 index 0000000..99a43b1 --- /dev/null +++ b/images/enea-image-accelerated.bb | |||
@@ -0,0 +1,6 @@ | |||
1 | DESCRIPTION = "Base image for the Accelerated profile" | ||
2 | |||
3 | require images/enea-image-accelerated-common.inc | ||
4 | |||
5 | IMAGE_ROOTFS_EXTRA_SPACE = "131072" | ||
6 | IMAGE_OVERHEAD_FACTOR = "2" | ||