Trevor Woerner [Thu, 24 Dec 2020 07:43:52 +0000 (02:43 -0500)]
insane.bbclass: allow fifos
Allow recipes to create fifos. If insane.bbclass tries to read() a fifo,
the process will hang waiting for something to read(). Therefore, skip any
check that would try to read() the object, if the object is a fifo.
Signed-off-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Steve Sakoman [Wed, 23 Dec 2020 14:11:49 +0000 (04:11 -1000)]
oeqa/selftest/cases/devtool.py: fix typo in ignore_patterns call
Causes intermittent autobuilder errors:
2020-12-21 19:34:23,035 - oe-selftest - INFO - testtools.testresult.real._StringException: Traceback (most recent call last):
File "/home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/meta/lib/oeqa/selftest/cases/devtool.py", line 68, in setUpModule
bb.utils.edit_bblayers_conf(bblayers_conf, None, None, bblayers_edit_cb)
File "/home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/bitbake/lib/bb/utils.py", line 1460, in edit_bblayers_conf
(updated, newlines) = edit_metadata(newlines, ['BBLAYERS'], handle_bblayers)
File "/home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/bitbake/lib/bb/utils.py", line 1290, in edit_metadata
if handle_var_end():
File "/home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/bitbake/lib/bb/utils.py", line 1215, in handle_var_end
(newvalue, newop, indent, minbreak) = varfunc(in_var, full_value, op, newlines)
File "/home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/bitbake/lib/bb/utils.py", line 1425, in handle_bblayers
res = edit_cb(layer, canonicalise_path(layer))
File "/home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/meta/lib/oeqa/selftest/cases/devtool.py", line 60, in bblayers_edit_cb
shutil.copytree(pth, destdir, ignore=ignore_patterns('*.pyc', '__pycache__'))
NameError: name 'ignore_patterns' is not defined
Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Tue, 22 Dec 2020 18:08:09 +0000 (19:08 +0100)]
license.bbclass: Add COMMON_LICENSE_DIR and LICENSE_PATH dirs to PSEUDO_IGNORE_PATHS
* now without ${COREBASE}/meta in PSEUDO_IGNORE_PATHS after: 73d538f207 bitbake.conf: Prevent pyc file generation in pseudo context
the do_package tasks are failing when LICENSE_CREATE_PACKAGE is enabled
pseudo.log shows that it's because of license texts copied from
${COREBASE}/meta:
path mismatch [46 links]: ino 96733640 db '/OE/build/tmp-glibc/work/all-oe-linux/foo/1.0/image/usr/share/licenses/foo/generic_Apache-2.0' req '/OE/build/openembedded-core/meta/files/common-licenses/Apache-2.0'.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Yi Zhao [Tue, 22 Dec 2020 08:29:34 +0000 (16:29 +0800)]
inetutils: add dnsdomainname to ALTERNATIVE
The dnsdomainname can also be provided by busybox and net-tools. Also
move it from ${bindir} to ${base_bindir} because the command provided by
busybox or net-tools is located here.
Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There have been intermittent ptest failures in this test;
I couldn't reproduce the failures in isolation, and
this is the only reason I can think of from reading code.
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Fri, 11 Dec 2020 16:09:22 +0000 (16:09 +0000)]
kernel: set COMPATIBLE_HOST to *-linux
The target system triple contains whether the target is Linux or not,
so use it to avoid situations where you can attempt to build a kernel
for systems which don't support Linux.
Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Trevor Woerner [Fri, 18 Dec 2020 04:52:45 +0000 (23:52 -0500)]
mesa: update 20.2.4 -> 20.3.1
Two of the patches have been applied upstream:
0001-meson-Add-xcb-fixes-to-loader-when-using-x11-and-dri.patch
0005-vc4-use-intmax_t-for-formatted-output-of-timespec-me.patch
The 'surfaceless' platform is now enabled by default, therefore it is no
longer a valid choice. The meson build system is intelligent enough now to
decide if 'drm' needs to be enabled based on whether or not gbm is available.
Therefore 'drm' also is no longer a valid platform choice:
ERROR: Options "drm, surfaceless" are not in allowed choices: "auto, x11, wayland, haiku, android, windows"
The updated kern-tools are showing us warnings that were previously
hidden. To silence the fw_loader warning, we need to set the value
to 'y' (since it is 'y' selected by other options and we can't
override that).
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changes the way that capabilities are checked when compiling
a systemtap probe.
In our cross-build -> on target workflow, this results in a
mismatch between the systemtap configuration capabilities and
the kernel configuration.
The result is a compilation failure since the security
components are protected by two different #ifdef's, and they
can be out of sync. By protecting the include and callsite with
the same #ifdef, we ensure they are in sync and fix our
on target problem.
While this fix is oe-specific, a variant will be proposed
upstream once a deeper analsysis of other options has been
completed.
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Tue, 22 Dec 2020 14:28:22 +0000 (09:28 -0500)]
linux-yocto/5.4: update to v5.4.83
Updating linux-yocto/5.4 to the latest korg -stable release that comprises
the following commits:
2bff021f53b2 Linux 5.4.83 66a08d1d3bd8 Revert "geneve: pull IP header before ECN decapsulation" ed58971beb47 x86/insn-eval: Use new for_each_insn_prefix() macro to loop over prefixes bytes 423e1b08ce5c netfilter: nftables_offload: set address type in control dissector 13995410b616 netfilter: nf_tables: avoid false-postive lockdep splat f25fa580f99e Input: i8042 - fix error return code in i8042_setup_aux() b9df537e5fcd dm writecache: remove BUG() and fail gracefully instead 8e2c50315f00 i2c: qup: Fix error return code in qup_i2c_bam_schedule_desc() 1015eefe10e2 rtw88: debug: Fix uninitialized memory in debugfs code af699e99efdc ASoC: wm_adsp: fix error return code in wm_adsp_load() fdc1416c2199 tipc: fix a deadlock when flushing scheduled work 6410c7f53698 netfilter: ipset: prevent uninit-value in hash_ip6_add cd928d387b0b gfs2: check for empty rgrp tree in gfs2_ri_update c358e7e99dda can: af_can: can_rx_unregister(): remove WARN() statement from list operation sanity check 867fbf2bb739 lib/syscall: fix syscall registers retrieval on 32-bit platforms f68f5bdfefd9 tracing: Fix userstacktrace option for instances dbbf6cdab503 iommu/amd: Set DTE[IntTabLen] to represent 512 IRTEs d863a4ad3cc5 spi: bcm2835: Release the DMA channel if probe fails after dma_init 83d5121c3b0f i2c: imx: Check for I2SR_IAL after every byte 83366a7b2d34 i2c: imx: Fix reset of I2SR_IAL flag b0d4fa10bfcc speakup: Reject setting the speakup line discipline outside of speakup a2a163f70bdf mm/swapfile: do not sleep with a spin lock held 4870004d30e3 mm: list_lru: set shrinker map bit when child nr_items is not zero 42ccf9d14ede coredump: fix core_pattern parse error 579c977253b6 x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes 002d2c4a3f66 dm: remove invalid sparse __acquires and __releases annotations 3b02d67064ff dm: fix bug with RCU locking in dm_blk_report_zones 7eb514087cdd powerpc/pseries: Pass MSI affinity to irq_create_mapping() 1f72986fc9df genirq/irqdomain: Add an irq_create_mapping_affinity() function 6466119452a8 powerpc/64s/powernv: Fix memory corruption when saving SLB entries on MCE 8a758e97b707 dm writecache: fix the maximum number of arguments 3f680c5996f9 scsi: mpt3sas: Fix ioctl timeout 812dff6a5250 drm/i915/gt: Program mocs:63 for cache eviction on gen9 b92738c4f9d3 thunderbolt: Fix use-after-free in remove_unplugged_switch() ed201cb54d6f i2c: imx: Don't generate STOP condition if arbitration has been lost 73948ab9f2df cifs: fix potential use-after-free in cifs_echo_request() a0ca8cb2f707 cifs: allow syscalls to be restarted in __smb_send_rqst() 205740ca4a4d ftrace: Fix updating FTRACE_FL_TRAMP d18379bbb856 ALSA: hda/generic: Add option to enforce preferred_dacs pairs f28666e00a44 ALSA: hda/realtek - Add new codec supported for ALC897 c57556f1798b ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294 f3fc36614438 ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model de41002d2e0e ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14 35ee9ac51328 tty: Fix ->session locking c536ecd48560 tty: Fix ->pgrp locking in tiocspgrp() 013d2d046532 USB: serial: option: fix Quectel BG96 matching 3cf949422734 USB: serial: option: add support for Thales Cinterion EXS82 0f8af69bec41 USB: serial: option: add Fibocom NL668 variants 250930f60c33 USB: serial: ch341: sort device-id entries 25b90f887dd4 USB: serial: ch341: add new Product ID for CH341A f0990c21af7d USB: serial: kl5kusb105: fix memleak on open 8954745718e7 usb: gadget: f_fs: Use local copy of descriptors for userspace copy 4a77729b25d6 Partially revert bpf: Zero-fill re-used per-cpu map element 512b18eec5c2 pinctrl: baytrail: Fix pin being driven low for a while on gpiod_get(..., GPIOD_OUT_HIGH) e90d11d0be10 pinctrl: baytrail: Replace WARN with dev_info_once when setting direct-irq pin to output
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This will address libinput ptest failures:
https://www.kernel.org/doc/html/latest/input/uinput.html
https://wayland.freedesktop.org/libinput/doc/latest/test-suite.html
qemux86_64 already has it enabled.
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Tue, 22 Dec 2020 14:28:18 +0000 (09:28 -0500)]
kern-tools: non-gcc config support and option re-classification
Integrating the following commits:
1aa9046 merge_config.sh: Translate some env variables to make variables 6fdcd64 symbol_why: allow re-classification from non-hardare to hardware
With these, a non-gcc compiler can be used, since the invocation of the
kernel configuration explicitly passes the variables as command line
vars, versus environment variables. This means the kernel Makefile
assignments are overriden and the desired compiler used.
With option re-classification, we can inhibit warnings when an option
has incorrectly been classified has 'hardware', and hence triggers a
visible warning.
[merge_config.sh: Translate some env variables to make variables] Signed-off-by: Tyler Hicks <tyhicks@linux.microsoft.com>
[symbol_why: allow re-classification from non-hardare to hardware] Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Teoh Jay Shen [Mon, 21 Dec 2020 02:43:03 +0000 (10:43 +0800)]
oeqa/terminal : improve the test case
-Improve this test case to fulfill the requirements of replacing the click_terminal_icon_on_X_desktop manual test case from oeqa/manual/bsp-hw :
1) verify that the terminal window is working without problem
2) verify that there's only 1 terminal window is launched
Signed-off-by: Teoh Jay Shen <jay.shen.teoh@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Mon, 21 Dec 2020 17:11:52 +0000 (17:11 +0000)]
groff: Fix reproducibility issue
groff chooses a default papersize depending on the value from /etc/papersize
and failing that, the search domain in /etc/resolv.conf based on the comment
in configure:
"""
If the top-level domain is two letters and it's not 'us' or 'ca'
then they probably use A4 paper.
"""
Oddly, my system sets to "a4" in /etc/papersize which means it defaults to
"letter" since its != "A4".
These defaults ripple through to cause the output of man-db to change depending
on which default value was selected.
To resolve this, set a default of "A4" since that covers the larger population
of the two default values.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sun, 20 Dec 2020 12:15:06 +0000 (12:15 +0000)]
u-boot-tools: Fix reproducibility issue
If you build on a system with git < 2.14 from scratch (e.g. debian9), the
tree will be marked as "dirty" and the version will include "-dirty", leading
to a reproducibility problem. The issue is the inode count for Licnses/README
changing due to do_populate_lic hardlinking a copy of the file. We avoid
this by ensuring the index is updated with a "git diff" before the
u-boot machinery tries to determine the version.
Richard Purdie [Sat, 19 Dec 2020 11:20:31 +0000 (11:20 +0000)]
systemd: Ensure uid/gid ranges are set deterministically
meson.build will fall back to greping /etc/login.defs for values of these
if they're not set. Different distros set them (Centos 7/8 does, Ubuntu
does not) so output was not deterministic. Avoid this by setting to the
default values. We now match the vaules from login.defs from shadow.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Khem Raj [Thu, 17 Dec 2020 22:54:39 +0000 (14:54 -0800)]
busybox: Run mdev as daemon
When busybox is used for device management, kernel needs to support
older/obsolete mechanism via CONFIG_UEVENT_HELPER and
CONFIG_UEVENT_HELPER_PATH to enable /proc/sys/kernel/hotplug but this
would require kernel defconfig change and will always be needed when
mdev is used, intead run it in daemon mode
Update mdev init script to run mdev in daemon mode
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Fri, 18 Dec 2020 14:43:35 +0000 (14:43 +0000)]
lib/oe/qa: handle the 'no specific instruction set' ELF e_machine value
[RP: Update OEQA selftest to match change] Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Luca Boccassi [Fri, 18 Dec 2020 09:42:56 +0000 (09:42 +0000)]
systemd: add RRECOMMENDS for weak dependencies, if enabled
Some libraries are now dlopen'ed and skipped at runtime if
not available. Add them to the RRECOMMENDS list, to allow
users to exclude them for smaller images even if generally
enabled at build time.
Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Luca Boccassi [Fri, 18 Dec 2020 09:42:52 +0000 (09:42 +0000)]
systemd: update 246 -> 247
Update systemd to v247.2.
Add rule for new oomd dbus conf and for new pam.d
conf directory in /usr/lib|lib64.
Drop selinux-hook-handling-to-enumerate-nexthop.patch,
merged upstream.
Drop 0001-meson-Fix-reallocarray-check.patch,
merged upstream.
Refresh musl patches.
Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
glibc: Make adjtime() for 32 bit support being called with delta == NULL
This backports a fix from glibc's master branch, which solves a
regression in 2.32 with adjtime() where it would seg fault if being
called with delta == NULL on 32 bit machines.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Thu, 17 Dec 2020 02:51:42 +0000 (18:51 -0800)]
oe-selftest: fitimage: add test for signing FIT images
Add a new test to verify signing FIT images. Also includes testing for
the newly introduced FIT_SIGN_INDIVIDUAL, UBOOT_MKIMAGE,
UBOOT_MKIMAGE_SIGN, and UBOOT_MKIMAGE_SIGN_ARGS variables.
Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Thu, 17 Dec 2020 02:51:40 +0000 (18:51 -0800)]
oe-selftest: move FIT image tests to their own module
I'm about to add an additional test, and on the assumption that we might
also add more in future it seems reasonable to have the tests in their own
module.
Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Luca Boccassi [Thu, 17 Dec 2020 02:51:39 +0000 (18:51 -0800)]
classes/kernel-fitimage: add ability to sign individual images
Add the ability to have the kernel, dtb and ramdisk individually signed
by setting FIT_SIGN_INDIVIDUAL = "1". This could be useful if you are
intending to verify signatures before using kexec for example.
Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com> Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Tanu Kaskinen [Thu, 17 Dec 2020 19:27:38 +0000 (21:27 +0200)]
pulseaudio: switch build system from Autotools to Meson
Upstream is moving from Autotools to Meson, Autotools support will be
dropped in 15.0.
I dropped some configure options:
* --enable-tcpwrap=no doesn't (currently) have a counterpart in Meson,
TCP Wrappers support is always disabled.
* --disable-esound doesn't have a counterpart in Meson, EsounD support
is always disabled.
* --disable-gconf doesn't have a counterpart in Meson, GConf support is
always disabled.
I backported a patch that implements support for the -Dvalgrind=disabled
option.
I checked with buildhistory what the differences are before and after
this patch (with qemuarm with neon removed from TUNE_FEATURES, all
PACKAGECONFIGs enabled):
* Obvious differences in DEPENDS: Autotools stuff removed and Meson
stuff added. There wasn't anything strange here.
* Packages have superfluous RDEPENDS removed from them. With Autotools
something caused for example X11 libraries to be added to RDEPENDS of
packages that don't have anything to do with X11.
* The pulseaudio-src package had MMX and SSE related files removed and
Neon related files added. I don't know why the ARM build previously
had MMX and SSE files included, the addition of Neon files is
explained by the fact that with Meson the Neon optimizations can't be
disabled if the compiler supports Neon (see below).
* libfoo.so symlinks changed to point to libfoo.so.X rather than
directly to libfoo.so.X.Y.Z. To my understading that's fine, since
libfoo.so.X is a symlink that points to libfoo.so.X.Y.Z.
* There were various file size changes, which I didn't investigate.
Previously the recipe disabled ARM Neon optimizations when "neon" was
not in TUNE_FEATURES. That was originally added in commit 4e7b91b5a2613b957b08aefbee1aac28fdd19598 at a time when PulseAudio's
build system didn't check the availability of the arm_neon.h header,
causing compilation errors when the header wasn't available. That issue
was fixed a long time ago, so there was little need for the
TUNE_FEATURES check, although it was still possible to make the build
fail if non-neon -mfpu was passed in CFLAGS, so the TUNE_FEATURES check
still had some theoretical benefit (theoretical, because generally OE
passes -mfpu in CC instead of CFLAGS, so OE's -mfpu option appears very
early in the compiler command line, which doesn't trip up PulseAudio's
current Autotools build system).
With Meson there's no option for disabling Neon optimizations if the
compiler supports Neon. If -mfpu is set in CC or CFLAGS, it's ignored,
because the build system adds -mfpu=neon at the end of the compiler
command line, overriding any earlier -mfpu options. This shouldn't be
a problem, because PulseAudio detects at runtime whether the CPU
supports Neon instructions.
Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Tanu Kaskinen [Thu, 17 Dec 2020 19:27:37 +0000 (21:27 +0200)]
pulseaudio: disable GConf support
The GConf module is only needed for older versions of paprefs, other
applications shouldn't be interacting with PulseAudio's GConf settings.
Paprefs isn't packaged in OpenEmbedded, so there probably aren't any
users of the GConf functionality.
My immediate motivation for doing this is that I'm converting the
pulseaudio recipe to use Meson, and the GConf module isn't supported by
the Meson build system. Adding support for it would be possible, but
pretty pointless.
The GConf module will be removed in PulseAudio 15.0.
Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Tanu Kaskinen [Thu, 17 Dec 2020 19:27:36 +0000 (21:27 +0200)]
pulseaudio: disable EsounD support
This disables PulseAudio's EsounD emulation and the EsounD sink module.
EsounD has been obsolete for a long time, and doesn't seem to be
packaged for OpenEmbedded, so probably there are no applications around
that would need PulseAudio's EsounD support.
Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Tanu Kaskinen [Thu, 17 Dec 2020 19:27:35 +0000 (21:27 +0200)]
pulseaudio: Remove OE_LT_RPATH_ALLOW
I don't know what these variables were supposed to do, but there doesn't
seem to be anything that would use these variables, so removing them
should be safe. The PulseAudio recipe is the only place where these
appear in the repository.
These lines were included already in the original PulseAudio recipe that
was added in commit d9a4c588ef24e7e4019fbe5a2314addbcd3a6bb8 in 2007,
and already at that time there didn't seem to be anything using these
variables.
Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Barker [Wed, 16 Dec 2020 18:16:16 +0000 (18:16 +0000)]
bitbake.conf: Prevent pyc file generation in pseudo context
This also effectively reverts commit b6d30c21b0:
bitbake.conf: Extend PSEUDO_IGNORE_PATHS to ${COREBASE}/meta
The contents of ${COREBASE}/meta were ignored as pyc files could be
generated for the contents of the lib subdirectory if python modules
were imported within a pseudo context. However this doesn't protect us
from pyc files being generated in the lib directories for other layers.
It's far better to tell python not to produce pyc files when running
under pseudo (by setting the PYTHONDONTWRITEBYTECODE variable) as this
will cover any location where pyc files could possibly be created. This
variable is set in FAKEROOTBASEENV so that it applies to the
bitbake-worker instance for fakeroot tasks, preventing pyc files from
being generated for imports in python tasks themselves.
Also add a test case to ensure that pyc files are not created in tasks
which are executed under pseudo.
Signed-off-by: Paul Barker <pbarker@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>