summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ref-manual: update SYSROOT_DIRS_* variable entriesRobert P. J. Day2021-09-041-1/+8
| | | | | | | | | | | Both SYSROOT_DIRS and SYSROOT_DIRS_BLACKLIST have more current values. (From yocto-docs rev: 750ae3fca42e273cd533f9c8b678c2e144164191) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Reviewed-by: Quentin Schulz <foss@0leil.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dev-manual: drop "three" since there are four requirementsRobert P. J. Day2021-09-041-1/+1
| | | | | | | | | | | Since there are actually four listed requirements, just drop the number to avoid future issues. (From yocto-docs rev: 612015dc227600d23956402eab7f324e0c8fd42a) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Reviewed-by: Quentin Schulz <foss@0leil.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dev-manual: various pedantic nitpickeryRobert P. J. Day2021-09-041-12/+12
| | | | | | | | | | Some minor grammatical and structure tweaks. (From yocto-docs rev: 505f9b21898475746d401c8ab79b95f3dc4d02e7) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Reviewed-by: Quentin Schulz <foss@0leil.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dev-manual: small number of minor aesthetic tweaksRobert P. J. Day2021-09-041-13/+15
| | | | | | | | | | | | | Just a collection of: - grammar tweaks - space fixes - font changes (From yocto-docs rev: c49984f89cd2295c54f01730649aaca83eaf515e) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ref-manual: add missing "${PN}-src" to default PACKAGES listRobert P. J. Day2021-09-041-1/+1
| | | | | | | | | (From yocto-docs rev: c4e986364fc67799a9cba8fa1e9d33481bebaa8c) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Reviewed-by: Quentin Schulz <foss@0leil.net> Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dev-manual: explicit that devpyshell is a taskMichael Opdenacker2021-09-041-1/+1
| | | | | | | | | | | Without this, readers could think that "devpyshell" is a script, at least until they read the remainder of the section. (From yocto-docs rev: fe1e3323a633acf51d64cfb6c4bdd2ecd324a79e) Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com> Reviewed-by: Quentin Schulz <foss@0leil.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dev-manual: pass False to d.getVar() for devpyshell exampleRobert P. J. Day2021-09-041-1/+1
| | | | | | | | | | | | In the example in section 3.9, the call to d.getVar() needs to have the additional argument of "False" so that the output is not expanded. (From yocto-docs rev: ae364e76a322278e7fe37aeecaa5e854d0a0efee) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Reviewed-by: Quentin Schulz <foss@0leil.net> Tested-by: Michael Opdenacker <michael.opdenacker@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* create-spdx: don't duplicate license texts in each packageRoss Burton2021-09-041-11/+14
| | | | | | | | | | | Instead of putting the full license text for non-SPDX licenses into the recipe and every package, use links to the recipe from the packages if possible. (From OE-Core rev: 9220d35dc9071ebbe991117af8261ad99f321bb3) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* create-spdx: embed unknown license textsRoss Burton2021-09-041-14/+37
| | | | | | | | | | For licenses which are not known to SPDX, find and embed the actual license text in an ExtractedLicesingInfo block. (From OE-Core rev: c638f4ae579520cab8cf30e1b4306bd0e2d2a788) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* create-spdx: remove redundant testRoss Burton2021-09-041-3/+0
| | | | | | | | | | add_extracted_document() is only called if the license isn't known to SPDX, so there's no need to check again. (From OE-Core rev: 03f084251510c810c8434d9ddd459187827c1ca8) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* create-spdx: transform license list into a dict for faster lookupsRoss Burton2021-09-041-7/+8
| | | | | | | | | | spdx-licenses.json contains an array of licenses objects. As we'll be searching it often, convert that to a dictionary when we parse it. (From OE-Core rev: 3405d9114ca9fe4ba820e0025c91670d1a5150b1) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/recipetool: update for license changesRoss Burton2021-09-041-1/+1
| | | | | | | | | Now that recipetool writes BSD-3-Clause, update the test appropriately. (From OE-Core rev: e4cb21609e3e95725b235de48458ab3c111ee9c1) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* go: upgrade 1.16.5 -> 1.16.7Sakib Sajal2021-09-048-4/+4
| | | | | | | | (From OE-Core rev: dd26135ba4e23ead3a9998087cb60d9e93399e48) Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com> Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* xdg-utils: Add fix for CVE-2020-27748Richard Purdie2021-09-042-0/+59
| | | | | | | | Backport an upstream patch for the CVE. (From OE-Core rev: 87191ed0303f6552865ad1edcacd674c57f2010c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* default-distrovars.inc: Set BBINCLUDELOGS to empty to disable printing ↵Martin Jansa2021-09-042-3/+5
| | | | | | | | | | | | | | | | | | failed task output multiple times * the output is shown 3 times with default configuration and 5 times when --verbose is being used with knotty, there might be other use-cases where we actually need this, but until the logging is resolved better, setting this to empty looks like more reasonable option (considering that e.g. log.do_compile from chromium-x11 can be over 50MB long, generating 150MB+ cooker log) * more details in: https://bugzilla.yoctoproject.org/show_bug.cgi?id=14542 (From OE-Core rev: ede2e0df7982777212b8c25195d41ce9e57562b5) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* recipetool/create_buildsys_python: treat BSD as BSD-3-ClauseRoss Burton2021-09-041-1/+1
| | | | | | | | | | | | | | | | The PyPI license classifiers include "OSI Approved: BSD", which does not specify which of the many variations of BSD license it actually means. The generic "BSD" license in the oe-core set is actually BSD-3-Clause. >From a random sample of ten PyPI modules that use "BSD", they are all BSD-3-Clause. As we expect the recipe maintainer to verify the license anyway, and this matches the previous license text, explicitly set the license to BSD-3-Clause. (From OE-Core rev: a879fff9af31e45b1acc3f19a3c2a7eaf6319ad4) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* hdparm: set correct licenseRoss Burton2021-09-041-3/+4
| | | | | | | | | | The bulk of hdparm is under a unique license. Set the correct BSD version, and specify that the hdparm license is also used. (From OE-Core rev: 9a2e2251e34d020cf24d6552c06d7508df3199fa) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ffmpeg: update LICENSERoss Burton2021-09-041-1/+1
| | | | | | | | | | "BSD" is ambiguous, ffmpeg comprises of several licenses which are BSD-like. (From OE-Core rev: 50ba15c0a6867fcb0498a2c2c5449aa96e5f4bde) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ppp: set precise BSD licenseRoss Burton2021-09-041-1/+1
| | | | | | | | | | "BSD" is ambiguous, use the precise licenses BSD-3-Clause-Attribution and BSD-3-Clause. (From OE-Core rev: dceba0bcdb14a117cf8a77448a3bbc8410d96a73) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* ovmf: set precise BSD licenseRoss Burton2021-09-041-2/+2
| | | | | | | | | "BSD" is ambiguous, use the precise license BSD-2-Clause-Patent. (From OE-Core rev: 3e5c91e3517f15c25ecf56877a15962427dd0f3b) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* shadow-sysroot: sync license with shadowRoss Burton2021-09-041-1/+1
| | | | | | | | | | | This recipe is just a single data file from shadow, but as we can't easily tell what license that specific file is under just copy the full license statement. (From OE-Core rev: f0e2f3b1f855ea6e184bd1d8d796279fedcbfa33) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* valgrind: set precise BSD licenseRoss Burton2021-09-041-1/+1
| | | | | | | | | "BSD" is ambiguous, use the precise license BSD-3-Clause. (From OE-Core rev: b12cbda349658ddef8cb72d5738c094c2b009e7e) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libxfont: set precise BSD licenseRoss Burton2021-09-041-1/+1
| | | | | | | | | | | | | "BSD" is ambiguous, use the precise license BSD-3-Clause. Note that the actual license text is BSD 4-Clause with clause 3 rescinded: https://gitlab.freedesktop.org/xorg/lib/libxfont/-/blob/master/COPYING#L157 (From OE-Core rev: 1649e9d281938a9183c5620612ed7a24a9b9f1e2) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/recipeutils: update for license change to python-async-testRoss Burton2021-09-041-1/+1
| | | | | | | | | The python-async-test recipe is now BSD-3-Clause. (From OE-Core rev: d819d86b482d397425043c7f478712a7f225bdae) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* xinetd: correct LICENSERoss Burton2021-09-041-3/+1
| | | | | | | | | | | The xinetd license is superficially BSD-like, but it isn't BSD. Now that we have the full SPDX license set in oe-core, use the specific xinetd license. (From OE-Core rev: 9d99cb5273ee0a775307afe13c14f01cb37426e0) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lsof: add upstream checkRoss Burton2021-09-041-0/+3
| | | | | | | | | | | Upstream has moved to GitHub. Whilst it's now too late to upgrade to the latest release, we can add upstream check variables so that we get notified we're out of date. (From OE-Core rev: 9a86a68a41be5bc6f32f9c86d8de7576c5dffff4) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* selftest/python-async-test: set precise BSD licenseRoss Burton2021-09-041-1/+1
| | | | | | | | | "BSD" is ambiguous, use the precise license BSD-3-Clause. (From OE-Core rev: 78a8427eb11d2931afcbf2a24d2441bf08bac0cf) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lsof: correct LICENSERoss Burton2021-09-041-1/+1
| | | | | | | | | | The lsof LICENSE is superficially BSD-like, but it isn't BSD. Now that we have the full SPDX license set in oe-core, use Spencer-94. (From OE-Core rev: 5c1d61d1d4dfacb643a366285c0392e6a31087ed) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* tcl: Exclude CVE-2021-35331 from checksRichard Purdie2021-09-041-0/+4
| | | | | | | | Upstream don't believe this is an issue. (From OE-Core rev: adf7bafee3f8884e525b5639ba092a1cd8e3beb9) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dev-manual/common-tasks: sync libxpm fragment with the recipeRoss Burton2021-09-031-1/+1
| | | | | | | | | Specifically, the actual recipe now has LICENSE=MIT. (From yocto-docs rev: 9f64931308f73607c40ed1eb8cf915666b6ff90a) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/parselogs: Make DVD ata error apply to all qemux86 machinesRichard Purdie2021-09-031-1/+1
| | | | | | | | | | | This log checking fix is needed for both qemux86 and qemux86-64 so move to the common section. [YOCTO #14528] (From OE-Core rev: 2475ce68f0bc1f342c75364dfcfaf7f30499badf) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mirrors.bbclass: remove redundant server-specific mirrorsDaniel Wagenknecht2021-09-031-2/+0
| | | | | | | | | | | With the previously added general git repo fallback rule the server specific fallback mirrors for git.savannah.gnu.org and git.yoctoproject.org are redundant. Remove them. (From OE-Core rev: da864dbed0c29b3e3f0d1676ec1bb974f332ff3f) Signed-off-by: Daniel Wagenknecht <dwagenknecht@emlix.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mirrors.bbclass: provide additional rule for git repo fallbacksDaniel Wagenknecht2021-09-031-0/+1
| | | | | | | | | | | | Git hosting servers that require a slightly different URL when accessing repositories via https protocol instead of the git native protocol are not uncommon (servers using cgit as web UI). Provide a general rule to try HOST/git/PATH via https as git repo fallback. (From OE-Core rev: 0682697987873ab395360035b70630acfe66cd3a) Signed-off-by: Daniel Wagenknecht <dwagenknecht@emlix.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* readline: correct pkg-config dependency for termcapDenys Dmytriyenko2021-09-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | readline uses ncurses for terminal capabilities database, but it fails to specify it correctly in the pkg-config .pc file, resulting in: Requires.private: termcap As ncurses by default provides newer terminfo instead of termcap, there's no termcap.pc in the system and pkg-config fails when linking with readline: readline.pc X-> termcap.pc Help configure script to set pkg-config to use ncurses for the correct terminal capabilities database: Requires.private: ncurses This fixes pkg-config dependency chain: readline.pc -> ncurses.pc -> tinfo.pc (From OE-Core rev: b4364cc44ae47d3b41a4fd181c904ae97e213842) Signed-off-by: Denys Dmytriyenko <denis@denix.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Comment out placeholder license warningJoshua Watt2021-09-031-1/+2
| | | | | | | | | | We don't want this warning causing problems on the AB, so leave it comment out for now (From OE-Core rev: d41018311abf91899645b8f3160db540abdb5398) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Skip package processing for native recipesJoshua Watt2021-09-031-129/+134
| | | | | | | | | | Native recipes do not produce packages and should not process them, otherwise it can trigger an error in read_subpackage_metadata (From OE-Core rev: ea077b1ff6a4ccd5241a085bf9a3f67011e0f7bf) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Collect all task dependenciesJoshua Watt2021-09-031-2/+1
| | | | | | | | | | | | | Stop filtering the runtime dependencies based on do_create_sdpx (makes it only pick up things in DEPENDS) and instead include all task dependencies that are not the current PN. This allows other dependency methods to be picked up correctly, for example the dependency on the kernel used by kernel modules. (From OE-Core rev: c9659562cf88a820c668ff1eb20814dcb4829392) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Add special exception for Public Domain licenseJoshua Watt2021-09-031-12/+21
| | | | | | | | | | | The Public Domain license (PD) needs a special exception in the license processing since there is no common license text to be extracted for these licenses. (From OE-Core rev: fe5b757712aa99ff1ff10d2304ac320100635200) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Fix file:// in downloadLocationJoshua Watt2021-09-031-3/+6
| | | | | | | | | | | file:// URIs should not be included as the downloadLocation. Instead, loop until a non-file:// URI is found, or set the location to NOASSERTION if none is found (From OE-Core rev: 19c61ec3986213b336d965d90b1329085e7d6179) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Speed up hash calculationsJoshua Watt2021-09-031-33/+16
| | | | | | | | | | Use the bb.utils.sha* utilities to hash files since they are much faster than the loops we were rolling ourselves (From OE-Core rev: a6d9de5350937c7e25899491db59f473345f0b69) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Fix up license reportingJoshua Watt2021-09-032-8/+55
| | | | | | | | | | | | | | | | | | Licenses reported in the SPDX documents should be either: A) A valid SPDX identifier cross referenced from the SPDX license database B) A "LicenseRef" to a license described in the SPDX document The licensing code will now add a placeholder extracted license with corresponding "LicenseRef" for any licenses that are not matched to the SPDX database Parenthesis in the license expression are now handled correctly (From OE-Core rev: 28d9d035c0ff8fcaf28bc96a976a43a602a47e94) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: extend DocumentRef to include nameSaul Wold2021-09-031-2/+2
| | | | | | | | | | | | | This will create a more uniq DocumentRef, which will allow the individual spdx files to be merged into a single SBOM file reflecting the image. Do the same with the runtime dependencies also (From OE-Core rev: df7c88a48621d32c02f328eedc314f10d475b758) Signed-off-by: Saul Wold <saul.wold@windriver.com> Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Fix another creatorJoshua Watt2021-09-031-2/+2
| | | | | | | | | Fixes another creator that was missed earlier (From OE-Core rev: 046c05fec9fc5162d7a14971ed1402d86605d229) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Add NOASSERTION for unknown debug sourcesJoshua Watt2021-09-031-20/+16
| | | | | | | | | | If a debug source cannot be found, mark it as NOASSERTION so that other tools at least know we were unable to locate it. (From OE-Core rev: 0e6bdd3f208c50153087c2baca67e9fd64a458d0) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Add runtime dependency mappingJoshua Watt2021-09-032-3/+181
| | | | | | | (From OE-Core rev: 82f3229bce41dc101c79865033432161dac269d8) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Add index to DEPLOYDIRJoshua Watt2021-09-031-2/+11
| | | | | | | | | Add the index to DEPLOYDIR in addition to adding it to the SPDX archive (From OE-Core rev: 374dc08c0f22e98a267676f71308592d17f77d64) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Add SHA1 to index fileJoshua Watt2021-09-032-4/+15
| | | | | | | (From OE-Core rev: ebfe78ad26b643ce0fb22ba5b3ede43da4a78987) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Change creatorJoshua Watt2021-09-031-6/+6
| | | | | | | | | Update the creator name since this no longer lives in meta-doubleopen (From OE-Core rev: 6fdea64ef53eb4de3d0e58e70ae6b391fdff6cd0) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/create-spdx: Add classJoshua Watt2021-09-033-0/+1005
| | | | | | | | | | | | | Adds a class as a first attempt to create SPDX SBoM documents during the build. This initial work was influenced by [meta-doubleopen][1], although almost completely rewritten. [1]: https://github.com/doubleopen-project/meta-doubleopen (From OE-Core rev: 78c79821ae7e2f060b9a74ea9aefce98102bb00e) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/package: Add extended packaged dataJoshua Watt2021-09-032-3/+49
| | | | | | | | | | | | | | | | | | Adds extended package data which is encoded as JSON which allows it to encode more structure than the "flat" package data files. The extended data might be much larger than the standard package data, so it is not read by default and instead requires oe.packagedata.read_subpkgdata_extended() to be called Currently, the file sizes and ELF debug sources are saved off into the extended package data (From OE-Core rev: db9cf430e54ae68da80fbc3fba80ce88d8df164d) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Reviewed-by: Saul Wold <saul.wold@windriver.com> Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>