summaryrefslogtreecommitdiffstats
path: root/meta-yocto-bsp
diff options
context:
space:
mode:
Diffstat (limited to 'meta-yocto-bsp')
-rw-r--r--meta-yocto-bsp/README.hardware265
-rw-r--r--meta-yocto-bsp/README.hardware.md182
-rw-r--r--meta-yocto-bsp/conf/layer.conf2
-rw-r--r--meta-yocto-bsp/conf/machine/beaglebone-yocto.conf28
-rw-r--r--meta-yocto-bsp/conf/machine/edgerouter.conf26
-rw-r--r--meta-yocto-bsp/conf/machine/genericarm64.conf60
-rw-r--r--meta-yocto-bsp/conf/machine/genericx86-64.conf3
-rw-r--r--meta-yocto-bsp/conf/machine/genericx86.conf3
-rw-r--r--meta-yocto-bsp/conf/machine/include/genericx86-common.inc10
-rw-r--r--meta-yocto-bsp/lib/oeqa/controllers/beaglebonetarget.py19
-rw-r--r--meta-yocto-bsp/lib/oeqa/controllers/edgeroutertarget.py90
-rw-r--r--meta-yocto-bsp/lib/oeqa/controllers/grubtarget.py17
-rw-r--r--meta-yocto-bsp/lib/oeqa/runtime/cases/parselogs-ignores-beaglebone-yocto.txt4
-rw-r--r--meta-yocto-bsp/lib/oeqa/runtime/cases/parselogs-ignores-genericx86-64.txt7
-rw-r--r--meta-yocto-bsp/lib/oeqa/selftest/cases/systemd_boot.py11
-rw-r--r--meta-yocto-bsp/recipes-bsp/formfactor/formfactor_0.0.bbappend2
-rw-r--r--meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf2
-rw-r--r--meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh15
-rw-r--r--meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb18
-rw-r--r--meta-yocto-bsp/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend2
-rw-r--r--meta-yocto-bsp/recipes-kernel/linux/linux-yocto-dev.bbappend22
-rw-r--r--meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend23
-rw-r--r--meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend23
-rw-r--r--meta-yocto-bsp/recipes-kernel/linux/linux-yocto_6.6.bbappend21
-rw-r--r--meta-yocto-bsp/wic/beaglebone-yocto.wks2
-rw-r--r--meta-yocto-bsp/wic/edgerouter.wks4
-rw-r--r--meta-yocto-bsp/wic/genericarm64.wks.in11
27 files changed, 340 insertions, 532 deletions
diff --git a/meta-yocto-bsp/README.hardware b/meta-yocto-bsp/README.hardware
deleted file mode 100644
index 9803af006a..0000000000
--- a/meta-yocto-bsp/README.hardware
+++ /dev/null
@@ -1,265 +0,0 @@
1 Yocto Project Hardware Reference BSPs README
2 ============================================
3
4This file gives details about using the Yocto Project hardware reference BSPs.
5The machines supported can be seen in the conf/machine/ directory and are listed
6below. There is one per supported hardware architecture and these are primarily
7used to validate that the Yocto Project works on the hardware arctectures of
8those machines.
9
10If you are in doubt about using Poky/OpenEmbedded/Yocto Project with your hardware,
11consult the documentation for your board/device.
12
13Support for additional devices is normally added by adding BSP layers to your
14configuration. For more information please see the Yocto Board Support Package
15(BSP) Developer's Guide - documentation source is in documentation/bspguide or
16download the PDF from:
17
18 http://yoctoproject.org/documentation
19
20Note that these reference BSPs use the linux-yocto kernel and in general don't
21pull in binary module support for the platforms. This means some device functionality
22may be limited compared to a 'full' BSP which may be available.
23
24
25Hardware Reference Boards
26=========================
27
28The following boards are supported by the meta-yocto-bsp layer:
29
30 * Texas Instruments Beaglebone (beaglebone-yocto)
31 * Ubiquiti Networks EdgeRouter Lite (edgerouter)
32 * General IA platforms (genericx86 and genericx86-64)
33
34For more information see the board's section below. The appropriate MACHINE
35variable value corresponding to the board is given in brackets.
36
37Reference Board Maintenance
38===========================
39
40Send pull requests, patches, comments or questions about meta-yocto-bsps to poky@yoctoproject.org
41
42Maintainers: Kevin Hao <kexin.hao@windriver.com>
43 Bruce Ashfield <bruce.ashfield@windriver.com>
44
45Consumer Devices
46================
47
48The following consumer devices are supported by the meta-yocto-bsp layer:
49
50 * Intel x86 based PCs and devices (genericx86)
51 * Ubiquiti Networks EdgeRouter Lite (edgerouter)
52
53For more information see the device's section below. The appropriate MACHINE
54variable value corresponding to the device is given in brackets.
55
56
57
58 Specific Hardware Documentation
59 ===============================
60
61
62Intel x86 based PCs and devices (genericx86*)
63=============================================
64
65The genericx86 and genericx86-64 MACHINE are tested on the following platforms:
66
67Intel Xeon/Core i-Series:
68 + Intel NUC5 Series - ix-52xx Series SOC (Broadwell)
69 + Intel NUC6 Series - ix-62xx Series SOC (Skylake)
70 + Intel Shumway Xeon Server
71
72Intel Atom platforms:
73 + MinnowBoard MAX - E3825 SOC (Bay Trail)
74 + MinnowBoard MAX - Turbot (ADI Engineering) - E3826 SOC (Bay Trail)
75 - These boards can be either 32bot or 64bit modes depending on firmware
76 - See minnowboard.org for details
77 + Intel Braswell SOC
78
79and is likely to work on many unlisted Atom/Core/Xeon based devices. The MACHINE
80type supports ethernet, wifi, sound, and Intel/vesa graphics by default in
81addition to common PC input devices, busses, and so on.
82
83Depending on the device, it can boot from a traditional hard-disk, a USB device,
84or over the network. Writing generated images to physical media is
85straightforward with a caveat for USB devices. The following examples assume the
86target boot device is /dev/sdb, be sure to verify this and use the correct
87device as the following commands are run as root and are not reversable.
88
89USB Device:
90 1. Build a live image. This image type consists of a simple filesystem
91 without a partition table, which is suitable for USB keys, and with the
92 default setup for the genericx86 machine, this image type is built
93 automatically for any image you build. For example:
94
95 $ bitbake core-image-minimal
96
97 2. Use the "dd" utility to write the image to the raw block device. For
98 example:
99
100 # dd if=core-image-minimal-genericx86.hddimg of=/dev/sdb
101
102 If the device fails to boot with "Boot error" displayed, or apparently
103 stops just after the SYSLINUX version banner, it is likely the BIOS cannot
104 understand the physical layout of the disk (or rather it expects a
105 particular layout and cannot handle anything else). There are two possible
106 solutions to this problem:
107
108 1. Change the BIOS USB Device setting to HDD mode. The label will vary by
109 device, but the idea is to force BIOS to read the Cylinder/Head/Sector
110 geometry from the device.
111
112 2. Use a ".wic" image with an EFI partition
113
114 a) With a default grub-efi bootloader:
115 # dd if=core-image-minimal-genericx86-64.wic of=/dev/sdb
116
117 b) Use systemd-boot instead
118 - Build an image with EFI_PROVIDER="systemd-boot" then use the above
119 dd command to write the image to a USB stick.
120
121
122Texas Instruments Beaglebone (beaglebone-yocto)
123===============================================
124
125The Beaglebone is an ARM Cortex-A8 development board with USB, Ethernet, 2D/3D
126accelerated graphics, audio, serial, JTAG, and SD/MMC. The Black adds a faster
127CPU, more RAM, eMMC flash and a micro HDMI port. The beaglebone MACHINE is
128tested on the following platforms:
129
130 o Beaglebone Black A6
131 o Beaglebone A6 (the original "White" model)
132
133The Beaglebone Black has eMMC, while the White does not. Pressing the USER/BOOT
134button when powering on will temporarily change the boot order. But for the sake
135of simplicity, these instructions assume you have erased the eMMC on the Black,
136so its boot behavior matches that of the White and boots off of SD card. To do
137this, issue the following commands from the u-boot prompt:
138
139 # mmc dev 1
140 # mmc erase 0 512
141
142To further tailor these instructions for your board, please refer to the
143documentation at http://www.beagleboard.org/bone and http://www.beagleboard.org/black
144
145From a Linux system with access to the image files perform the following steps:
146
147 1. Build an image. For example:
148
149 $ bitbake core-image-minimal
150
151 2. Use the "dd" utility to write the image to the SD card. For example:
152
153 # dd if=core-image-minimal-beaglebone-yocto.wic of=/dev/sdb
154
155 3. Insert the SD card into the Beaglebone and boot the board.
156
157Ubiquiti Networks EdgeRouter Lite (edgerouter)
158==============================================
159
160The EdgeRouter Lite is part of the EdgeMax series. It is a MIPS64 router
161(based on the Cavium Octeon processor) with 512MB of RAM, which uses an
162internal USB pendrive for storage.
163
164Setup instructions
165------------------
166
167You will need the following:
168* RJ45 -> serial ("rollover") cable connected from your PC to the CONSOLE
169 port on the device
170* Ethernet connected to the first ethernet port on the board
171
172If using NFS as part of the setup process, you will also need:
173* NFS root setup on your workstation
174* TFTP server installed on your workstation (if fetching the kernel from
175 TFTP, see below).
176
177--- Preparation ---
178
179Build an image (e.g. core-image-minimal) using "edgerouter" as the MACHINE.
180In the following instruction it is based on core-image-minimal. Another target
181may be similiar with it.
182
183--- Booting from NFS root / kernel via TFTP ---
184
185Load the kernel, and boot the system as follows:
186
187 1. Get the kernel (vmlinux) file from the tmp/deploy/images/edgerouter
188 directory, and make them available on your TFTP server.
189
190 2. Connect the board's first serial port to your workstation and then start up
191 your favourite serial terminal so that you will be able to interact with
192 the serial console. If you don't have a favourite, picocom is suggested:
193
194 $ picocom /dev/ttyS0 -b 115200
195
196 3. Power up or reset the board and press a key on the terminal when prompted
197 to get to the U-Boot command line
198
199 4. Set up the environment in U-Boot:
200
201 => setenv ipaddr <board ip>
202 => setenv serverip <tftp server ip>
203
204 5. Download the kernel and boot:
205
206 => tftp tftp $loadaddr vmlinux
207 => bootoctlinux $loadaddr coremask=0x3 root=/dev/nfs rw nfsroot=<nfsroot ip>:<rootfs path> ip=<board ip>:<server ip>:<gateway ip>:<netmask>:edgerouter:eth0:off mtdparts=phys_mapped_flash:512k(boot0),512k(boot1),64k@3072k(eeprom)
208
209--- Booting from USB disk ---
210
211To boot from the USB disk, you either need to remove it from the edgerouter
212box and populate it from another computer, or use a previously booted NFS
213image and populate from the edgerouter itself.
214
215Type 1: Use partitioned image
216-----------------------------
217
218Steps:
219
220 1. Remove the USB disk from the edgerouter and insert it into a computer
221 that has access to your build artifacts.
222
223 2. Flash the image.
224
225 # dd if=core-image-minimal-edgerouter.wic of=/dev/sdb
226
227 3. Insert USB disk into the edgerouter and boot it.
228
229Type 2: NFS
230-----------
231
232Note: If you place the kernel on the ext3 partition, you must re-create the
233 ext3 filesystem, since the factory u-boot can only handle 128 byte inodes and
234 cannot read the partition otherwise.
235
236 These boot instructions assume that you have recreated the ext3 filesystem with
237 128 byte inodes, you have an updated uboot or you are running and image capable
238 of making the filesystem on the board itself.
239
240
241 1. Boot from NFS root
242
243 2. Mount the USB disk partition 2 and then extract the contents of
244 tmp/deploy/core-image-XXXX.tar.bz2 into it.
245
246 Before starting, copy core-image-minimal-xxx.tar.bz2 and vmlinux into
247 rootfs path on your workstation.
248
249 and then,
250
251 # mount /dev/sda2 /media/sda2
252 # tar -xvjpf core-image-minimal-XXX.tar.bz2 -C /media/sda2
253 # cp vmlinux /media/sda2/boot/vmlinux
254 # umount /media/sda2
255 # reboot
256
257 3. Reboot the board and press a key on the terminal when prompted to get to the U-Boot
258 command line:
259
260 # reboot
261
262 4. Load the kernel and boot:
263
264 => ext2load usb 0:2 $loadaddr boot/vmlinux
265 => bootoctlinux $loadaddr coremask=0x3 root=/dev/sda2 rw rootwait mtdparts=phys_mapped_flash:512k(boot0),512k(boot1),64k@3072k(eeprom)
diff --git a/meta-yocto-bsp/README.hardware.md b/meta-yocto-bsp/README.hardware.md
new file mode 100644
index 0000000000..6045c3d867
--- /dev/null
+++ b/meta-yocto-bsp/README.hardware.md
@@ -0,0 +1,182 @@
1Yocto Project Hardware Reference BSPs README
2============================================
3
4This file gives details about using the Yocto Project hardware reference BSPs.
5The machines supported can be seen in the conf/machine/ directory and are listed
6below. There is one per supported hardware architecture and these are primarily
7used to validate that the Yocto Project works on the hardware arctectures of
8those machines.
9
10If you are in doubt about using Poky/OpenEmbedded/Yocto Project with your hardware,
11consult the documentation for your board/device.
12
13Support for additional devices is normally added by adding BSP layers to your
14configuration. For more information please see the Yocto Board Support Package
15(BSP) Developer's Guide - documentation source is in documentation/bspguide or
16download the PDF from https://docs.yoctoproject.org/
17
18Note that these reference BSPs use the linux-yocto kernel and in general don't
19pull in binary module support for the platforms. This means some device functionality
20may be limited compared to a 'full' BSP which may be available.
21
22
23Hardware Reference Boards
24=========================
25
26The following boards are supported by the meta-yocto-bsp layer:
27
28 * Texas Instruments Beaglebone (`beaglebone-yocto`)
29 * General 64-bit Arm SystemReady platforms (`genericarm64`)
30 * General IA platforms (`genericx86` and `genericx86-64`)
31
32For more information see the board's section below. The appropriate MACHINE
33variable value corresponding to the board is given in brackets.
34
35Reference Board Maintenance and Contributions
36=============================================
37
38Please refer to our contributor guide here: https://docs.yoctoproject.org/dev/contributor-guide/
39for full details on how to submit changes.
40
41As a quick guide, patches should be sent to <poky@lists.yoctoproject.org>
42The git command to do that would be:
43
44 git send-email -M -1 --to poky@lists.yoctoproject.org
45
46Send pull requests, patches, comments or questions about meta-yocto-bsp to
47<poky@lists.yoctoproject.org>.
48
49Maintainers:
50* Kevin Hao <kexin.hao@windriver.com>
51* Bruce Ashfield <bruce.ashfield@gmail.com>
52
53Consumer Devices
54================
55
56The following consumer devices are supported by the meta-yocto-bsp layer:
57
58 * Arm-based SystemReady devices (`genericarm64`)
59 * Intel x86 based PCs and devices (`genericx86` and `genericx86-64`)
60
61For more information see the device's section below. The appropriate MACHINE
62variable value corresponding to the device is given in brackets.
63
64
65Specific Hardware Documentation
66===============================
67
68
69Intel x86 based PCs and devices (genericx86*)
70---------------------------------------------
71
72The genericx86 and genericx86-64 MACHINE are tested on the following platforms:
73
74Intel Xeon/Core i-Series:
75 + Intel NUC5 Series - ix-52xx Series SOC (Broadwell)
76 + Intel NUC6 Series - ix-62xx Series SOC (Skylake)
77 + Intel Shumway Xeon Server
78
79Intel Atom platforms:
80 + MinnowBoard MAX - E3825 SOC (Bay Trail)
81 + MinnowBoard MAX - Turbot (ADI Engineering) - E3826 SOC (Bay Trail)
82 - These boards can be either 32bot or 64bit modes depending on firmware
83 - See minnowboard.org for details
84 + Intel Braswell SOC
85
86and is likely to work on many unlisted Atom/Core/Xeon based devices. The MACHINE
87type supports ethernet, wifi, sound, and Intel/vesa graphics by default in
88addition to common PC input devices, busses, and so on.
89
90Depending on the device, it can boot from a traditional hard-disk, a USB device,
91or over the network. Writing generated images to physical media is
92straightforward with a caveat for USB devices. The following examples assume the
93target boot device is /dev/sdb, be sure to verify this and use the correct
94device as the following commands are run as root and are not reversable.
95
96USB Device:
97
98 1. Build a live image. This image type consists of a simple filesystem
99 without a partition table, which is suitable for USB keys, and with the
100 default setup for the genericx86 machine, this image type is built
101 automatically for any image you build. For example:
102
103 $ bitbake core-image-minimal
104
105 2. Use the `dd` utility to write the image to the raw block device. For
106 example:
107
108 # dd if=core-image-minimal-genericx86.hddimg of=/dev/sdb
109
110 If the device fails to boot with "Boot error" displayed, or apparently
111 stops just after the SYSLINUX version banner, it is likely the BIOS cannot
112 understand the physical layout of the disk (or rather it expects a
113 particular layout and cannot handle anything else). There are two possible
114 solutions to this problem:
115
116 1. Change the BIOS USB Device setting to HDD mode. The label will vary by
117 device, but the idea is to force BIOS to read the Cylinder/Head/Sector
118 geometry from the device.
119
120 2. Use a ".wic" image with an EFI partition
121
122 1. With a default grub-efi bootloader:
123
124 # dd if=core-image-minimal-genericx86-64.wic of=/dev/sdb
125
126 2. Use systemd-boot instead. Build an image with `EFI_PROVIDER="systemd-boot"` then use the above
127 `dd` command to write the image to a USB stick.
128
129
130SystemReady Arm Platforms (genericarm64)
131----------------------------------------
132
133The genericarm64 MACHINE is designed to work on standard SystemReady IR
134compliant boards with preinstalled firmware.
135
136The genericarm64 MACHINE is currently tested on the following platforms:
137
138 * Texas Instruments BeaglePlay
139
140The images built are EFI bootable disk images and can be written directly to a
141SD card for booting, for example.
142
143There is also limited support for booting a genericarm64 image inside QEMU. When
144building the image also build the `u-boot` recipe to build the required
145firmware (note that this firmware will _not_ boot on real hardware), then use
146`runqemu` as usual.
147
148
149Texas Instruments Beaglebone (beaglebone-yocto)
150-----------------------------------------------
151
152The Beaglebone is an ARM Cortex-A8 development board with USB, Ethernet, 2D/3D
153accelerated graphics, audio, serial, JTAG, and SD/MMC. The Black adds a faster
154CPU, more RAM, eMMC flash and a micro HDMI port. The beaglebone MACHINE is
155tested on the following platforms:
156
157 * Beaglebone Black A6
158 * Beaglebone A6 (the original "White" model)
159
160The Beaglebone Black has eMMC, while the White does not. Pressing the USER/BOOT
161button when powering on will temporarily change the boot order. But for the sake
162of simplicity, these instructions assume you have erased the eMMC on the Black,
163so its boot behavior matches that of the White and boots off of SD card. To do
164this, issue the following commands from the u-boot prompt:
165
166 # mmc dev 1
167 # mmc erase 0 512
168
169To further tailor these instructions for your board, please refer to the
170documentation at http://www.beagleboard.org/bone and http://www.beagleboard.org/black
171
172From a Linux system with access to the image files perform the following steps:
173
174 1. Build an image. For example:
175
176 $ bitbake core-image-minimal
177
178 2. Use the "dd" utility to write the image to the SD card. For example:
179
180 # dd if=core-image-minimal-beaglebone-yocto.wic of=/dev/sdb
181
182 3. Insert the SD card into the Beaglebone and boot the board.
diff --git a/meta-yocto-bsp/conf/layer.conf b/meta-yocto-bsp/conf/layer.conf
index bf0c1bfece..60902b4de9 100644
--- a/meta-yocto-bsp/conf/layer.conf
+++ b/meta-yocto-bsp/conf/layer.conf
@@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "yoctobsp"
9BBFILE_PATTERN_yoctobsp = "^${LAYERDIR}/" 9BBFILE_PATTERN_yoctobsp = "^${LAYERDIR}/"
10BBFILE_PRIORITY_yoctobsp = "5" 10BBFILE_PRIORITY_yoctobsp = "5"
11LAYERVERSION_yoctobsp = "4" 11LAYERVERSION_yoctobsp = "4"
12LAYERSERIES_COMPAT_yoctobsp = "gatesgarth" 12LAYERSERIES_COMPAT_yoctobsp = "scarthgap"
diff --git a/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf b/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
index f8368ebd0e..459c83f5c2 100644
--- a/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
+++ b/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
@@ -3,42 +3,38 @@
3#@DESCRIPTION: Reference machine configuration for http://beagleboard.org/bone and http://beagleboard.org/black boards 3#@DESCRIPTION: Reference machine configuration for http://beagleboard.org/bone and http://beagleboard.org/black boards
4 4
5PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg" 5PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
6XSERVER ?= "xserver-xorg \
7 xf86-video-modesetting \
8 "
9 6
10MACHINE_EXTRA_RRECOMMENDS = "kernel-modules kernel-devicetree" 7MACHINE_EXTRA_RRECOMMENDS = "kernel-modules"
11 8
12EXTRA_IMAGEDEPENDS += "u-boot" 9EXTRA_IMAGEDEPENDS += "virtual/bootloader"
13 10
14DEFAULTTUNE ?= "cortexa8hf-neon" 11DEFAULTTUNE ?= "cortexa8hf-neon"
15include conf/machine/include/tune-cortexa8.inc 12include conf/machine/include/arm/armv7a/tune-cortexa8.inc
16 13
17IMAGE_FSTYPES += "tar.bz2 jffs2 wic wic.bmap" 14IMAGE_FSTYPES += "tar.bz2 jffs2 wic wic.bmap"
18EXTRA_IMAGECMD_jffs2 = "-lnp " 15EXTRA_IMAGECMD:jffs2 = "-lnp "
19WKS_FILE ?= "beaglebone-yocto.wks" 16WKS_FILE ?= "beaglebone-yocto.wks"
20IMAGE_INSTALL_append = " kernel-devicetree kernel-image-zimage" 17MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-image kernel-devicetree"
21do_image_wic[depends] += "mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot u-boot:do_deploy" 18do_image_wic[depends] += "mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot virtual/bootloader:do_deploy"
22 19
23SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyO0 115200;ttyAMA0" 20SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyO0 115200;ttyAMA0"
24SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
25 21
26PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto" 22PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
27PREFERRED_VERSION_linux-yocto ?= "5.10%" 23PREFERRED_VERSION_linux-yocto ?= "6.6%"
28 24
29KERNEL_IMAGETYPE = "zImage" 25KERNEL_IMAGETYPE = "zImage"
30KERNEL_DEVICETREE = "am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb" 26DTB_FILES = "am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb"
31KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}" 27KERNEL_DEVICETREE = '${@' '.join('ti/omap/%s' % d for d in '${DTB_FILES}'.split())}'
28
29PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot"
32 30
33SPL_BINARY = "MLO" 31SPL_BINARY = "MLO"
34UBOOT_SUFFIX = "img" 32UBOOT_SUFFIX = "img"
35UBOOT_MACHINE = "am335x_evm_defconfig" 33UBOOT_MACHINE = "am335x_evm_defconfig"
36UBOOT_ENTRYPOINT = "0x80008000"
37UBOOT_LOADADDRESS = "0x80008000"
38 34
39MACHINE_FEATURES = "usbgadget usbhost vfat alsa" 35MACHINE_FEATURES = "usbgadget usbhost vfat alsa"
40 36
41IMAGE_BOOT_FILES ?= "u-boot.${UBOOT_SUFFIX} ${SPL_BINARY} ${KERNEL_IMAGETYPE} ${KERNEL_DEVICETREE}" 37IMAGE_BOOT_FILES ?= "u-boot.${UBOOT_SUFFIX} ${SPL_BINARY} ${KERNEL_IMAGETYPE} ${DTB_FILES}"
42 38
43# support runqemu 39# support runqemu
44EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native" 40EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native"
diff --git a/meta-yocto-bsp/conf/machine/edgerouter.conf b/meta-yocto-bsp/conf/machine/edgerouter.conf
deleted file mode 100644
index fbe33be9d1..0000000000
--- a/meta-yocto-bsp/conf/machine/edgerouter.conf
+++ /dev/null
@@ -1,26 +0,0 @@
1#@TYPE: Machine
2#@NAME: Edgerouter
3#@DESCRIPTION: Machine configuration for a generic edgerouter
4
5require conf/machine/include/tune-mips64.inc
6
7MACHINE_FEATURES = "pci ext2 ext3 serial"
8
9KERNEL_IMAGETYPE = "vmlinux"
10KERNEL_ALT_IMAGETYPE = "vmlinux.bin"
11KERNEL_IMAGE_STRIP_EXTRA_SECTIONS = ".comment"
12
13PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
14PREFERRED_VERSION_linux-yocto ?= "5.10%"
15
16SERIAL_CONSOLES = "115200;ttyS0"
17USE_VT ?= "0"
18
19MACHINE_EXTRA_RRECOMMENDS = "kernel-modules"
20
21IMAGE_FSTYPES ?= "jffs2 tar.bz2 wic wic.bmap"
22JFFS2_ERASEBLOCK = "0x10000"
23
24WKS_FILE ?= "edgerouter.wks"
25IMAGE_BOOT_FILES ?= "vmlinux;vmlinux.64"
26do_image_wic[depends] += "mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot"
diff --git a/meta-yocto-bsp/conf/machine/genericarm64.conf b/meta-yocto-bsp/conf/machine/genericarm64.conf
new file mode 100644
index 0000000000..4fa9395b31
--- /dev/null
+++ b/meta-yocto-bsp/conf/machine/genericarm64.conf
@@ -0,0 +1,60 @@
1#@TYPE: Machine
2#@NAME: genericarm64
3#@DESCRIPTION: Generic Arm64 machine for typical SystemReady IR/ES platforms, which
4#have working firmware and boot via EFI.
5
6require conf/machine/include/arm/arch-armv8a.inc
7
8# Arm Base System Architecture says v8.0+ is allowed, but FEAT_CRC32 is required
9DEFAULTTUNE = "armv8a-crc"
10
11MACHINE_FEATURES = "acpi alsa bluetooth efi keyboard pci qemu-usermode rtc screen usbhost vfat wifi"
12
13KERNEL_IMAGETYPE = "Image"
14PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
15
16# Install all the kernel modules into the rootfs
17MACHINE_EXTRA_RRECOMMENDS += "kernel-modules"
18# Install selected pieces of firmware
19MACHINE_EXTRA_RRECOMMENDS += "linux-firmware-wl12xx linux-firmware-wl18xx linux-firmware-rtl-nic"
20
21# Use an initramfs and populate it with the kernel modules and key firmware
22INITRAMFS_IMAGE ?= "core-image-initramfs-boot"
23PACKAGE_INSTALL:append:pn-core-image-initramfs-boot = " ${MACHINE_EXTRA_RRECOMMENDS}"
24
25IMAGE_FSTYPES ?= "wic"
26WKS_FILE ?= "genericarm64.wks.in"
27
28EFI_PROVIDER ?= "${@bb.utils.contains("DISTRO_FEATURES", "systemd", "systemd-boot", "grub-efi", d)}"
29
30# Try to bring up one physical serial console, or a virtualized serial console
31SERIAL_CONSOLES ?= "115200;ttyAMA0 115200;hvc0"
32
33# Allow u-boot to be built for use with qemu-system-aarch64.
34# This u-boot is _not_ suitable for use with real hardware, and the expectation
35# of this machine is that real hardware comes with the firmware pre-loaded.
36UBOOT_MACHINE = "qemu_arm64_defconfig"
37
38# runqemu configuration to run a genericarm64 image inside a qemu-system-aarch64. You will need
39# to build u-boot explicitly.
40IMAGE_CLASSES += "qemuboot"
41QB_SYSTEM_NAME = "qemu-system-aarch64"
42# Boot the virtual machine with either an emulated Cortex-A76, or the host if using KVM
43QB_MACHINE = "-machine virt"
44QB_CPU = "-cpu cortex-a76"
45QB_CPU_KVM = "-cpu host -machine gic-version=3"
46QB_SMP = "-smp 4"
47# Boot into U-Boot and let that scan the disk for the next step, don't pass any kernel or filesystem hints
48QB_DEFAULT_BIOS = "u-boot.bin"
49QB_DEFAULT_KERNEL = "none"
50QB_DEFAULT_FSTYPE = "wic"
51QB_FSINFO = "wic:no-kernel-in-fs"
52# Mount the wic rootfs as a virtio block device
53QB_ROOTFS_OPT = "-drive id=root,file=@ROOTFS@,if=none,format=raw -device virtio-blk-pci,drive=root"
54# Virtio graphics
55QB_GRAPHICS = "-device virtio-gpu-pci"
56# Virtio serial consoles
57QB_SERIAL_OPT = "-device virtio-serial-pci -chardev null,id=virtcon -device virtconsole,chardev=virtcon"
58QB_TCPSERIAL_OPT = "-device virtio-serial-pci -chardev socket,id=virtcon,port=@PORT@,host=127.0.0.1,nodelay=on -device virtconsole,chardev=virtcon"
59# Virtio networking
60QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no"
diff --git a/meta-yocto-bsp/conf/machine/genericx86-64.conf b/meta-yocto-bsp/conf/machine/genericx86-64.conf
index 81ec24e971..f19a1c1527 100644
--- a/meta-yocto-bsp/conf/machine/genericx86-64.conf
+++ b/meta-yocto-bsp/conf/machine/genericx86-64.conf
@@ -3,9 +3,8 @@
3#@DESCRIPTION: Machine configuration for generic x86_64 (64-bit) PCs and servers. Supports a moderately wide range of drivers that should boot and be usable on "typical" hardware. 3#@DESCRIPTION: Machine configuration for generic x86_64 (64-bit) PCs and servers. Supports a moderately wide range of drivers that should boot and be usable on "typical" hardware.
4 4
5DEFAULTTUNE ?= "core2-64" 5DEFAULTTUNE ?= "core2-64"
6require conf/machine/include/tune-core2.inc 6require conf/machine/include/x86/tune-core2.inc
7require conf/machine/include/genericx86-common.inc 7require conf/machine/include/genericx86-common.inc
8 8
9SERIAL_CONSOLES_CHECK = "ttyS0"
10#For runqemu 9#For runqemu
11QB_SYSTEM_NAME = "qemu-system-x86_64" 10QB_SYSTEM_NAME = "qemu-system-x86_64"
diff --git a/meta-yocto-bsp/conf/machine/genericx86.conf b/meta-yocto-bsp/conf/machine/genericx86.conf
index 1387bde852..34e1448a8c 100644
--- a/meta-yocto-bsp/conf/machine/genericx86.conf
+++ b/meta-yocto-bsp/conf/machine/genericx86.conf
@@ -3,9 +3,8 @@
3#@DESCRIPTION: Machine configuration for generic x86 (32-bit) PCs. Supports a moderately wide range of drivers that should boot and be usable on "typical" hardware. 3#@DESCRIPTION: Machine configuration for generic x86 (32-bit) PCs. Supports a moderately wide range of drivers that should boot and be usable on "typical" hardware.
4 4
5DEFAULTTUNE ?= "core2-32" 5DEFAULTTUNE ?= "core2-32"
6require conf/machine/include/tune-core2.inc 6require conf/machine/include/x86/tune-core2.inc
7require conf/machine/include/genericx86-common.inc 7require conf/machine/include/genericx86-common.inc
8 8
9MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "gma500-gfx-check"
10#For runqemu 9#For runqemu
11QB_SYSTEM_NAME = "qemu-system-i386" 10QB_SYSTEM_NAME = "qemu-system-i386"
diff --git a/meta-yocto-bsp/conf/machine/include/genericx86-common.inc b/meta-yocto-bsp/conf/machine/include/genericx86-common.inc
index 1de069011d..50a233dd8f 100644
--- a/meta-yocto-bsp/conf/machine/include/genericx86-common.inc
+++ b/meta-yocto-bsp/conf/machine/include/genericx86-common.inc
@@ -1,8 +1,8 @@
1include conf/machine/include/x86-base.inc 1include conf/machine/include/x86/x86-base.inc
2require conf/machine/include/qemuboot-x86.inc 2require conf/machine/include/x86/qemuboot-x86.inc
3MACHINE_FEATURES += "wifi efi pcbios" 3MACHINE_FEATURES += "wifi efi pcbios"
4 4
5PREFERRED_VERSION_linux-yocto ?= "5.10%" 5PREFERRED_VERSION_linux-yocto ?= "6.6%"
6PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto" 6PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
7PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg" 7PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
8XSERVER ?= "${XSERVER_X86_BASE} \ 8XSERVER ?= "${XSERVER_X86_BASE} \
@@ -16,10 +16,6 @@ XSERVER ?= "${XSERVER_X86_BASE} \
16 16
17MACHINE_EXTRA_RRECOMMENDS += "kernel-modules linux-firmware" 17MACHINE_EXTRA_RRECOMMENDS += "kernel-modules linux-firmware"
18 18
19GLIBC_ADDONS = "nptl"
20
21EXTRA_OECONF_append_pn-matchbox-panel-2 = " --with-battery=acpi"
22
23IMAGE_FSTYPES += "wic wic.bmap" 19IMAGE_FSTYPES += "wic wic.bmap"
24WKS_FILE ?= "genericx86.wks.in" 20WKS_FILE ?= "genericx86.wks.in"
25EFI_PROVIDER ??= "grub-efi" 21EFI_PROVIDER ??= "grub-efi"
diff --git a/meta-yocto-bsp/lib/oeqa/controllers/beaglebonetarget.py b/meta-yocto-bsp/lib/oeqa/controllers/beaglebonetarget.py
index 0f1aeb398f..7af3e1dac7 100644
--- a/meta-yocto-bsp/lib/oeqa/controllers/beaglebonetarget.py
+++ b/meta-yocto-bsp/lib/oeqa/controllers/beaglebonetarget.py
@@ -24,11 +24,10 @@ import subprocess
24import sys 24import sys
25import pexpect 25import pexpect
26 26
27import oeqa.utils.sshcontrol as sshcontrol 27from oeqa.controllers.controllerimage import ControllerImageHardwareTarget
28from oeqa.controllers.masterimage import MasterImageHardwareTarget
29 28
30 29
31class BeagleBoneTarget(MasterImageHardwareTarget): 30class BeagleBoneTarget(ControllerImageHardwareTarget):
32 31
33 dtbs = {'uImage-am335x-bone.dtb': 'am335x-bone.dtb', 'uImage-am335x-boneblack.dtb': 'am335x-boneblack.dtb'} 32 dtbs = {'uImage-am335x-bone.dtb': 'am335x-bone.dtb', 'uImage-am335x-boneblack.dtb': 'am335x-boneblack.dtb'}
34 33
@@ -57,21 +56,21 @@ class BeagleBoneTarget(MasterImageHardwareTarget):
57 56
58 57
59 def _deploy(self): 58 def _deploy(self):
60 self.master.run("umount /boot; umount /mnt/testrootfs;") 59 self.controller.run("umount /boot; umount /mnt/testrootfs;")
61 self.master.ignore_status = False 60 self.controller.ignore_status = False
62 # Kernel and dtb files may not be in the image, so copy them just in case 61 # Kernel and dtb files may not be in the image, so copy them just in case
63 self.master.copy_to(self.kernel, "~/test-kernel") 62 self.controller.copy_to(self.kernel, "~/test-kernel")
64 kernelpath = os.path.dirname(self.kernel) 63 kernelpath = os.path.dirname(self.kernel)
65 for dtborig, dtbfn in self.dtbs.iteritems(): 64 for dtborig, dtbfn in self.dtbs.iteritems():
66 dtbfile = os.path.join(kernelpath, dtborig) 65 dtbfile = os.path.join(kernelpath, dtborig)
67 if os.path.exists(dtbfile): 66 if os.path.exists(dtbfile):
68 self.master.copy_to(dtbfile, "~/%s" % dtbfn) 67 self.controller.copy_to(dtbfile, "~/%s" % dtbfn)
69 self.master.copy_to(self.rootfs, "~/test-rootfs.%s" % self.image_fstype) 68 self.controller.copy_to(self.rootfs, "~/test-rootfs.%s" % self.image_fstype)
70 for cmd in self.deploy_cmds: 69 for cmd in self.deploy_cmds:
71 self.master.run(cmd) 70 self.controller.run(cmd)
72 71
73 def _start(self, params=None): 72 def _start(self, params=None):
74 self.power_cycle(self.master) 73 self.power_cycle(self.controller)
75 try: 74 try:
76 serialconn = pexpect.spawn(self.serialcontrol_cmd, env=self.origenv, logfile=sys.stdout) 75 serialconn = pexpect.spawn(self.serialcontrol_cmd, env=self.origenv, logfile=sys.stdout)
77 # We'd wait for "U-Boot" here but sometimes we connect too late on BeagleBone white to see it 76 # We'd wait for "U-Boot" here but sometimes we connect too late on BeagleBone white to see it
diff --git a/meta-yocto-bsp/lib/oeqa/controllers/edgeroutertarget.py b/meta-yocto-bsp/lib/oeqa/controllers/edgeroutertarget.py
deleted file mode 100644
index 9c47b5b044..0000000000
--- a/meta-yocto-bsp/lib/oeqa/controllers/edgeroutertarget.py
+++ /dev/null
@@ -1,90 +0,0 @@
1# Copyright (C) 2014 Intel Corporation
2#
3# Released under the MIT license (see COPYING.MIT)
4
5# This module adds support to testimage.bbclass to deploy images and run
6# tests on a Ubiquiti Networks EdgeRouter Lite. The device must be set up
7# to boot into the master image already - the easiest way to do that is as
8# follows:
9#
10# 1. Take out the internal USB drive and plug it into your PC
11# 2. Repartition the USB drive so that you have three partitions in this
12# order:
13# 1: vfat, labelled "boot" (it will need to be formatted with mkfs.vfat
14# for this to be possible, since FAT partitions formatted under
15# DOS/Windows will only support uppercase labels)
16# 2: ext3 (for master image) labelled "testmaster"
17# 3: ext3 (for image under test) labelled "testrootfs"
18# 3. Copy the kernel to be used by the master image to the FAT partition
19# (it should be named "vmlinux.64" with the factory u-boot configuration)
20# 4. Install the master image onto the "testmaster" ext3 partition. If
21# you do this by just extracting the contents of an image onto the
22# partition, you will also likely need to create the master image marker
23# file /etc/masterimage within this partition so that we can tell when
24# we're booted into it that it is the master image.
25# 5. Put the USB drive back into the device, and ensure the console port
26# and first ethernet port are connected before powering on
27#
28# TEST_SERIALCONTROL_CMD will need to be set in local.conf so that we can
29# interact with u-boot over the serial console port.
30
31import os
32import bb
33import time
34import subprocess
35import sys
36import pexpect
37
38import oeqa.utils.sshcontrol as sshcontrol
39from oeqa.controllers.masterimage import MasterImageHardwareTarget
40
41
42class EdgeRouterTarget(MasterImageHardwareTarget):
43
44 def __init__(self, d):
45 super(EdgeRouterTarget, self).__init__(d)
46
47 self.image_fstype = self.get_image_fstype(d)
48 self.deploy_cmds = [
49 'mount -L boot /boot',
50 'mkdir -p /mnt/testrootfs',
51 'mount -L testrootfs /mnt/testrootfs',
52 'cp ~/test-kernel /boot',
53 'rm -rf /mnt/testrootfs/*',
54 'tar xvf ~/test-rootfs.%s -C /mnt/testrootfs' % self.image_fstype
55 ]
56 if not self.serialcontrol_cmd:
57 bb.fatal("This TEST_TARGET needs a TEST_SERIALCONTROL_CMD defined in local.conf.")
58
59
60 def _deploy(self):
61 self.master.run("umount /mnt/testrootfs;")
62 self.master.ignore_status = False
63 self.master.copy_to(self.kernel, "~/test-kernel")
64 self.master.copy_to(self.rootfs, "~/test-rootfs.%s" % self.image_fstype)
65 for cmd in self.deploy_cmds:
66 self.master.run(cmd)
67
68 def _start(self, params=None):
69 self.power_cycle(self.master)
70 try:
71 serialconn = pexpect.spawn(self.serialcontrol_cmd, env=self.origenv, logfile=sys.stdout)
72 serialconn.expect("U-Boot")
73 serialconn.sendline("a")
74 serialconn.expect("Octeon ubnt_e100#")
75 serialconn.sendline("fatload usb 0:1 $loadaddr test-kernel")
76 serialconn.expect(" bytes read")
77 serialconn.expect("Octeon ubnt_e100#")
78 serialconn.sendline("bootoctlinux $loadaddr coremask=0x3 root=/dev/sda3 rw rootwait mtdparts=phys_mapped_flash:512k(boot0),512k(boot1),64k@3072k(eeprom)")
79 serialconn.expect("login:", timeout=120)
80 serialconn.close()
81 except pexpect.ExceptionPexpect as e:
82 bb.fatal('Serial interaction failed: %s' % str(e))
83
84 def _wait_until_booted(self):
85 try:
86 serialconn = pexpect.spawn(self.serialcontrol_cmd, env=self.origenv, logfile=sys.stdout)
87 serialconn.expect("login:", timeout=120)
88 serialconn.close()
89 except pexpect.ExceptionPexpect as e:
90 bb.fatal('Serial interaction failed: %s' % str(e))
diff --git a/meta-yocto-bsp/lib/oeqa/controllers/grubtarget.py b/meta-yocto-bsp/lib/oeqa/controllers/grubtarget.py
index 7bc807d2bc..c3a98979c5 100644
--- a/meta-yocto-bsp/lib/oeqa/controllers/grubtarget.py
+++ b/meta-yocto-bsp/lib/oeqa/controllers/grubtarget.py
@@ -19,10 +19,9 @@ import subprocess
19import sys 19import sys
20import pexpect 20import pexpect
21 21
22import oeqa.utils.sshcontrol as sshcontrol 22from oeqa.controllers.controllerimage import ControllerImageHardwareTarget
23from oeqa.controllers.masterimage import MasterImageHardwareTarget
24 23
25class GrubTarget(MasterImageHardwareTarget): 24class GrubTarget(ControllerImageHardwareTarget):
26 25
27 def __init__(self, d): 26 def __init__(self, d):
28 super(GrubTarget, self).__init__(d) 27 super(GrubTarget, self).__init__(d)
@@ -41,16 +40,16 @@ class GrubTarget(MasterImageHardwareTarget):
41 40
42 def _deploy(self): 41 def _deploy(self):
43 # make sure these aren't mounted 42 # make sure these aren't mounted
44 self.master.run("umount /boot; umount /mnt/testrootfs;") 43 self.controller.run("umount /boot; umount /mnt/testrootfs;")
45 self.master.ignore_status = False 44 self.controller.ignore_status = False
46 # Kernel files may not be in the image, so copy them just in case 45 # Kernel files may not be in the image, so copy them just in case
47 self.master.copy_to(self.rootfs, "~/test-rootfs." + self.image_fstype) 46 self.controller.copy_to(self.rootfs, "~/test-rootfs." + self.image_fstype)
48 self.master.copy_to(self.kernel, "~/test-kernel") 47 self.controller.copy_to(self.kernel, "~/test-kernel")
49 for cmd in self.deploy_cmds: 48 for cmd in self.deploy_cmds:
50 self.master.run(cmd) 49 self.controller.run(cmd)
51 50
52 def _start(self, params=None): 51 def _start(self, params=None):
53 self.power_cycle(self.master) 52 self.power_cycle(self.controller)
54 try: 53 try:
55 serialconn = pexpect.spawn(self.serialcontrol_cmd, env=self.origenv, logfile=sys.stdout) 54 serialconn = pexpect.spawn(self.serialcontrol_cmd, env=self.origenv, logfile=sys.stdout)
56 serialconn.expect("GNU GRUB version 2.00") 55 serialconn.expect("GNU GRUB version 2.00")
diff --git a/meta-yocto-bsp/lib/oeqa/runtime/cases/parselogs-ignores-beaglebone-yocto.txt b/meta-yocto-bsp/lib/oeqa/runtime/cases/parselogs-ignores-beaglebone-yocto.txt
new file mode 100644
index 0000000000..b0d98418d1
--- /dev/null
+++ b/meta-yocto-bsp/lib/oeqa/runtime/cases/parselogs-ignores-beaglebone-yocto.txt
@@ -0,0 +1,4 @@
1# These should be reviewed to see if they are still needed
2l4_wkup_cm
3Failed to make EGL context current
4glamor initialization failed \ No newline at end of file
diff --git a/meta-yocto-bsp/lib/oeqa/runtime/cases/parselogs-ignores-genericx86-64.txt b/meta-yocto-bsp/lib/oeqa/runtime/cases/parselogs-ignores-genericx86-64.txt
new file mode 100644
index 0000000000..9a655564cd
--- /dev/null
+++ b/meta-yocto-bsp/lib/oeqa/runtime/cases/parselogs-ignores-genericx86-64.txt
@@ -0,0 +1,7 @@
1# These should be reviewed to see if they are still needed
2Direct firmware load for i915
3Failed to load firmware i915
4Failed to fetch GuC
5Failed to initialize GuC
6Failed to load DMC firmware
7The driver is built-in, so to load the firmware you need to \ No newline at end of file
diff --git a/meta-yocto-bsp/lib/oeqa/selftest/cases/systemd_boot.py b/meta-yocto-bsp/lib/oeqa/selftest/cases/systemd_boot.py
index 57599e19aa..6ce9a3b3f8 100644
--- a/meta-yocto-bsp/lib/oeqa/selftest/cases/systemd_boot.py
+++ b/meta-yocto-bsp/lib/oeqa/selftest/cases/systemd_boot.py
@@ -2,7 +2,7 @@ import os
2 2
3from oeqa.selftest.case import OESelftestTestCase 3from oeqa.selftest.case import OESelftestTestCase
4from oeqa.core.decorator.depends import OETestDepends 4from oeqa.core.decorator.depends import OETestDepends
5from oeqa.utils.commands import runCmd, bitbake, get_bb_var, runqemu 5from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars, runqemu
6 6
7class Systemdboot(OESelftestTestCase): 7class Systemdboot(OESelftestTestCase):
8 8
@@ -21,8 +21,9 @@ class Systemdboot(OESelftestTestCase):
21 features += 'MACHINE = "genericx86-64"' 21 features += 'MACHINE = "genericx86-64"'
22 self.append_config(features) 22 self.append_config(features)
23 23
24 deploydir = get_bb_var('DEPLOY_DIR_IMAGE', "core-image-minimal") 24 image = 'core-image-minimal'
25 systemdbootfile = os.path.join(deploydir, 'systemd-bootx64.efi') 25 bb_vars = get_bb_vars(['DEPLOY_DIR_IMAGE', 'IMAGE_LINK_NAME'], image)
26 systemdbootfile = os.path.join(bb_vars['DEPLOY_DIR_IMAGE'], 'systemd-bootx64.efi')
26 27
27 # Ensure we're actually testing that this gets built and not that 28 # Ensure we're actually testing that this gets built and not that
28 # it was around from an earlier build 29 # it was around from an earlier build
@@ -50,8 +51,8 @@ class Systemdboot(OESelftestTestCase):
50 AutomatedBy: Jose Perez Carranza <jose.perez.carranza at linux-intel.com> 51 AutomatedBy: Jose Perez Carranza <jose.perez.carranza at linux-intel.com>
51 """ 52 """
52 53
53 systemdbootimage = os.path.join(deploydir, 'core-image-minimal-genericx86-64.wic') 54 systemdbootimage = os.path.join(bb_vars['DEPLOY_DIR_IMAGE'], '%s.wic' % bb_vars['IMAGE_LINK_NAME'])
54 imagebootfile = os.path.join(deploydir, 'bootx64.efi') 55 imagebootfile = os.path.join(bb_vars['DEPLOY_DIR_IMAGE'], 'bootx64.efi')
55 56
56 # Clean environment before start the test 57 # Clean environment before start the test
57 if os.path.isfile(imagebootfile): 58 if os.path.isfile(imagebootfile):
diff --git a/meta-yocto-bsp/recipes-bsp/formfactor/formfactor_0.0.bbappend b/meta-yocto-bsp/recipes-bsp/formfactor/formfactor_0.0.bbappend
index 72d991c7e5..4fc41d0580 100644
--- a/meta-yocto-bsp/recipes-bsp/formfactor/formfactor_0.0.bbappend
+++ b/meta-yocto-bsp/recipes-bsp/formfactor/formfactor_0.0.bbappend
@@ -1 +1 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf b/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf
deleted file mode 100644
index 74d33c871f..0000000000
--- a/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.conf
+++ /dev/null
@@ -1,2 +0,0 @@
1# Mimic modprobe's install funcitonality with busybox's modprobe
2install gma500_gfx dmesg | grep gma500_gfx_checked || { /etc/modprobe.d/gma500-gfx-check.sh || modprobe gma500_gfx; }
diff --git a/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh b/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh
deleted file mode 100644
index 75cda99f54..0000000000
--- a/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check/gma500-gfx-check.sh
+++ /dev/null
@@ -1,15 +0,0 @@
1#!/bin/sh
2
3# Check for devices we wish to avoid gma500_gfx for
4DEVICES="0x8119 0x4108"
5
6# Checked flag to avoid infinite modprobe
7echo "gma500_gfx_checked" >> /dev/kmsg;
8
9for DEVICE in $DEVICES; do
10 if udevadm trigger --subsystem-match=pci --verbose --attr-match=device=$DEVICE | grep "pci" >> /dev/null ; then
11 echo "Found $DEVICE, avoiding gma500_gfx module" >> /dev/kmsg;
12 exit 0
13 fi
14done
15exit 1
diff --git a/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb b/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb
deleted file mode 100644
index 8f10bd239c..0000000000
--- a/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb
+++ /dev/null
@@ -1,18 +0,0 @@
1SUMMARY = "Intel gma500_gfx fix for certain hardware"
2DESCRIPTION = "Avoid inserting gma500_gfx module for certain hardware devices."
3LICENSE="GPLv2"
4LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
5
6SRC_URI = "file://gma500-gfx-check.conf \
7 file://gma500-gfx-check.sh "
8
9do_install(){
10 install -d ${D}${sysconfdir}/modprobe.d/
11 install -m 755 ${WORKDIR}/gma500-gfx-check.sh ${D}${sysconfdir}/modprobe.d/gma500-gfx-check.sh
12 install -m 644 ${WORKDIR}/gma500-gfx-check.conf ${D}${sysconfdir}/modprobe.d/gma500-gfx-check.conf
13}
14
15FILES_${PN}="${sysconfdir}/modprobe.d/gma500-gfx-check.conf \
16 ${sysconfdir}/modprobe.d/gma500-gfx-check.sh"
17
18COMPATIBLE_MACHINE = "genericx86"
diff --git a/meta-yocto-bsp/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend b/meta-yocto-bsp/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend
index 72d991c7e5..4fc41d0580 100644
--- a/meta-yocto-bsp/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend
+++ b/meta-yocto-bsp/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend
@@ -1 +1 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/meta-yocto-bsp/recipes-kernel/linux/linux-yocto-dev.bbappend b/meta-yocto-bsp/recipes-kernel/linux/linux-yocto-dev.bbappend
index 6e5a129dd4..5b1b736b1c 100644
--- a/meta-yocto-bsp/recipes-kernel/linux/linux-yocto-dev.bbappend
+++ b/meta-yocto-bsp/recipes-kernel/linux/linux-yocto-dev.bbappend
@@ -1,13 +1,13 @@
1KBRANCH_genericx86 = "standard/base" 1KBRANCH:genericx86 = "standard/base"
2KBRANCH_genericx86-64 = "standard/base" 2KBRANCH:genericx86-64 = "standard/base"
3KBRANCH_edgerouter = "standard/edgerouter" 3KBRANCH:beaglebone-yocto = "standard/beaglebone"
4KBRANCH_beaglebone-yocto = "standard/beaglebone"
5 4
6KMACHINE_genericx86 ?= "common-pc" 5KMACHINE:genericarm64 ?= "genericarm64"
7KMACHINE_genericx86-64 ?= "common-pc-64" 6KMACHINE:genericx86 ?= "common-pc"
8KMACHINE_beaglebone-yocto ?= "beaglebone" 7KMACHINE:genericx86-64 ?= "common-pc-64"
8KMACHINE:beaglebone-yocto ?= "beaglebone"
9 9
10COMPATIBLE_MACHINE_genericx86 = "genericx86" 10COMPATIBLE_MACHINE:genericarm64 = "genericarm64"
11COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64" 11COMPATIBLE_MACHINE:genericx86 = "genericx86"
12COMPATIBLE_MACHINE_edgerouter = "edgerouter" 12COMPATIBLE_MACHINE:genericx86-64 = "genericx86-64"
13COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto" 13COMPATIBLE_MACHINE:beaglebone-yocto = "beaglebone-yocto"
diff --git a/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend b/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend
deleted file mode 100644
index 87e47352a6..0000000000
--- a/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend
+++ /dev/null
@@ -1,23 +0,0 @@
1KBRANCH_genericx86 = "v5.10/standard/base"
2KBRANCH_genericx86-64 = "v5.10/standard/base"
3KBRANCH_edgerouter = "v5.10/standard/edgerouter"
4KBRANCH_beaglebone-yocto = "v5.10/standard/beaglebone"
5
6KMACHINE_genericx86 ?= "common-pc"
7KMACHINE_genericx86-64 ?= "common-pc-64"
8KMACHINE_beaglebone-yocto ?= "beaglebone"
9
10SRCREV_machine_genericx86 ?= "cdca78778415b4b3bd64e8390ee8adf04bf7e17a"
11SRCREV_machine_genericx86-64 ?= "cdca78778415b4b3bd64e8390ee8adf04bf7e17a"
12SRCREV_machine_edgerouter ?= "2e1fb8f84f09ca768eb531f33a126a40bb90e791"
13SRCREV_machine_beaglebone-yocto ?= "cdca78778415b4b3bd64e8390ee8adf04bf7e17a"
14
15COMPATIBLE_MACHINE_genericx86 = "genericx86"
16COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
17COMPATIBLE_MACHINE_edgerouter = "edgerouter"
18COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"
19
20LINUX_VERSION_genericx86 = "5.10.12"
21LINUX_VERSION_genericx86-64 = "5.10.12"
22LINUX_VERSION_edgerouter = "5.10.12"
23LINUX_VERSION_beaglebone-yocto = "5.10.12"
diff --git a/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend b/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend
deleted file mode 100644
index 35147d2da8..0000000000
--- a/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend
+++ /dev/null
@@ -1,23 +0,0 @@
1KBRANCH_genericx86 = "v5.4/standard/base"
2KBRANCH_genericx86-64 = "v5.4/standard/base"
3KBRANCH_edgerouter = "v5.4/standard/edgerouter"
4KBRANCH_beaglebone-yocto = "v5.4/standard/beaglebone"
5
6KMACHINE_genericx86 ?= "common-pc"
7KMACHINE_genericx86-64 ?= "common-pc-64"
8KMACHINE_beaglebone-yocto ?= "beaglebone"
9
10SRCREV_machine_genericx86 ?= "31db2b47ac7d8508080fbb7344399b501216de66"
11SRCREV_machine_genericx86-64 ?= "31db2b47ac7d8508080fbb7344399b501216de66"
12SRCREV_machine_edgerouter ?= "706efec4c1e270ec5dda92275898cd465dfdc7dd"
13SRCREV_machine_beaglebone-yocto ?= "706efec4c1e270ec5dda92275898cd465dfdc7dd"
14
15COMPATIBLE_MACHINE_genericx86 = "genericx86"
16COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
17COMPATIBLE_MACHINE_edgerouter = "edgerouter"
18COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"
19
20LINUX_VERSION_genericx86 = "5.4.94"
21LINUX_VERSION_genericx86-64 = "5.4.94"
22LINUX_VERSION_edgerouter = "5.4.58"
23LINUX_VERSION_beaglebone-yocto = "5.4.58"
diff --git a/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_6.6.bbappend b/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_6.6.bbappend
new file mode 100644
index 0000000000..3f33ec991d
--- /dev/null
+++ b/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_6.6.bbappend
@@ -0,0 +1,21 @@
1COMPATIBLE_MACHINE:genericarm64 = "genericarm64"
2COMPATIBLE_MACHINE:genericx86 = "genericx86"
3COMPATIBLE_MACHINE:genericx86-64 = "genericx86-64"
4COMPATIBLE_MACHINE:beaglebone-yocto = "beaglebone-yocto"
5
6KBRANCH:genericx86 = "v6.6/standard/base"
7KBRANCH:genericx86-64 = "v6.6/standard/base"
8KBRANCH:beaglebone-yocto = "v6.6/standard/beaglebone"
9
10KMACHINE:genericarm64 ?= "genericarm64"
11KMACHINE:genericx86 ?= "common-pc"
12KMACHINE:genericx86-64 ?= "common-pc-64"
13KMACHINE:beaglebone-yocto ?= "beaglebone"
14
15SRCREV_machine:genericx86 ?= "06644f0d7193d7ec39d7fe41939a21953e7a0c65"
16SRCREV_machine:genericx86-64 ?= "06644f0d7193d7ec39d7fe41939a21953e7a0c65"
17SRCREV_machine:beaglebone-yocto ?= "06644f0d7193d7ec39d7fe41939a21953e7a0c65"
18
19LINUX_VERSION:genericx86 = "6.6.21"
20LINUX_VERSION:genericx86-64 = "6.6.21"
21LINUX_VERSION:beaglebone-yocto = "6.6.21"
diff --git a/meta-yocto-bsp/wic/beaglebone-yocto.wks b/meta-yocto-bsp/wic/beaglebone-yocto.wks
index 701ae0b3d4..7a28fb23dc 100644
--- a/meta-yocto-bsp/wic/beaglebone-yocto.wks
+++ b/meta-yocto-bsp/wic/beaglebone-yocto.wks
@@ -2,6 +2,6 @@
2# long-description: Creates a partitioned SD card image for Beaglebone. 2# long-description: Creates a partitioned SD card image for Beaglebone.
3# Boot files are located in the first vfat partition. 3# Boot files are located in the first vfat partition.
4 4
5part /boot --source bootimg-partition --ondisk mmcblk0 --fstype=vfat --label boot --active --align 4 --size 16 --sourceparams="loader=u-boot" --use-uuid 5part /boot --source bootimg-partition --ondisk mmcblk0 --fstype=vfat --label boot --active --align 4 --fixed-size 32 --sourceparams="loader=u-boot" --use-uuid
6part / --source rootfs --ondisk mmcblk0 --fstype=ext4 --label root --align 4 --use-uuid 6part / --source rootfs --ondisk mmcblk0 --fstype=ext4 --label root --align 4 --use-uuid
7bootloader --append="console=ttyS0,115200" 7bootloader --append="console=ttyS0,115200"
diff --git a/meta-yocto-bsp/wic/edgerouter.wks b/meta-yocto-bsp/wic/edgerouter.wks
deleted file mode 100644
index 7176fe436b..0000000000
--- a/meta-yocto-bsp/wic/edgerouter.wks
+++ /dev/null
@@ -1,4 +0,0 @@
1# short-description: Create SD card image for Edgerouter
2# long-description: Create a partitioned SD card image for MIPS64 Edgerouter reference hardware.
3part /boot --source bootimg-partition --ondisk sda --fstype=vfat --label boot --active --align 4 --size 16
4part / --source rootfs --ondisk sda --fstype=ext4 --label root --align 4
diff --git a/meta-yocto-bsp/wic/genericarm64.wks.in b/meta-yocto-bsp/wic/genericarm64.wks.in
new file mode 100644
index 0000000000..ee7da87ded
--- /dev/null
+++ b/meta-yocto-bsp/wic/genericarm64.wks.in
@@ -0,0 +1,11 @@
1# short-description: Create an EFI disk image
2# long-description: Creates a partitioned EFI disk image that the user
3# can directly dd to boot media.
4
5part /boot --source bootimg-efi --sourceparams="loader=${EFI_PROVIDER},initrd=${INITRAMFS_IMAGE}-${MACHINE}.${INITRAMFS_FSTYPES}" --label boot --active --align 1024 --use-uuid
6
7part swap --size 44 --label swap --fstype=swap --use-uuid
8
9part / --source rootfs --fstype=ext4 --label root --align 1024 --use-uuid
10
11bootloader --ptable gpt --timeout=5 --append="rootwait rootfstype=ext4"