summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--documentation/bsp-guide/bsp.xml230
1 files changed, 111 insertions, 119 deletions
diff --git a/documentation/bsp-guide/bsp.xml b/documentation/bsp-guide/bsp.xml
index 40d994a2b2..f088f30a07 100644
--- a/documentation/bsp-guide/bsp.xml
+++ b/documentation/bsp-guide/bsp.xml
@@ -656,126 +656,118 @@
656 </section> 656 </section>
657 </section> 657 </section>
658 658
659 <section id='bsp-licensing'> 659 <section id='bsp-licensing-considerations'>
660 <title>BSP Licensing Considerations</title> 660 <title>BSP Licensing Considerations</title>
661
661 <para> 662 <para>
662 In some cases, a BSP contains separately licensed IP 663 In some cases, a BSP contains separately licensed Intellectual Property (IP)
663 (Intellectual Property) for a component or components 664 for a component or components.
664 that impose upon the user a requirement to accept the 665 For these cases, you are required to accept the terms of a commercial or other
665 terms of a commercial or other type of license that 666 type of license that requires some kind of explicit End User License Agreement (EULA).
666 requires some kind of explicit EULA (End User License 667 Once the license is accepted, the Yocto Project build system can then build and
667 Agreement). Once the license is accepted the Yocto 668 include the corresponding component in the final BSP image.
668 Project build system can then build and include the 669 If the BSP is available as a pre-built image, you can download the image after
669 corresponding component in the final BSP image, or if 670 agreeing to the license or EULA.
670 the BSP is available in the form of an already built 671 </para>
671 image, the user will be able to download the image after 672
672 agreeing to the license or EULA. 673 <para>
673 </para> 674 You could find that some separately licensed components that are essential
674 <para> 675 for normal operation of the system might not have an unencumbered (or free)
675 Some affected components might be essential to the 676 substitute.
676 normal functioning of the system and have no 'free' 677 Without these essential components, the system would be non-functional.
677 replacement (i.e. the resulting system would be 678 Then again, you might find that other licensed components that are simply
678 non-functional without them). On the other hand, other 679 'good-to-have' or purely elective do have an unencumbered, free replacement
679 components might be simply 'good-to-have' or purely 680 component that you can use rather than agreeing to the separately licensed component.
680 elective, or if essential nonetheless have a 'free' 681 Even for components essential to the system, you might find an unencumbered component
681 (possibly less-capable) version that could be used as a 682 that is not identical but will work as a less-capable version of the
682 in the BSP recipe. 683 licensed version in the BSP recipe.
683 </para> 684 </para>
684 685
685 <para> 686 <para>
686 For cases where you can substitute something and still 687 For cases where you can substitute a free component and still
687 maintain functionality, the Yocto Project website's 688 maintain the system's functionality, the Yocto Project website's
688 <ulink url='&YOCTO_HOME_URL;/download/all?keys=&amp;download_type=1&amp;download_version='>BSP 689 <ulink url='&YOCTO_HOME_URL;/download/all?keys=&amp;download_type=1&amp;download_version='>BSP
689 Download Page</ulink> makes available 'de-featured' BSPs 690 Download Page</ulink> makes available de-featured BSPs
690 that are completely free of any IP encumbrances. For 691 that are completely free of any IP encumbrances.
691 these cases you can use the substitution directly and 692 For these cases, you can use the substitution directly and
692 without any further licensing requirements. If present, 693 without any further licensing requirements.
693 these fully 'de-featured' BSPs are named appropriately 694 If present, these fully de-featured BSPs are named appropriately
694 different as compared to the names of the respective 695 different as compared to the names of the respective
695 encumbered BSPs. If available, these substitutions are 696 encumbered BSPs.
696 the simplest and most preferred options. This, of 697 If available, these substitutions are your
697 course, assumes the resulting functionality meets 698 simplest and most preferred options.
698 requirements. 699 Use of these substitutions of course assumes the resulting functionality meets
699 </para> 700 system requirements.
700 701 </para>
701 <para>
702 If however, a non-encumbered version is unavailable or
703 the 'free' version would provide unsuitable
704 functionality or quality, you can use an encumbered
705 version.
706 </para>
707
708 <para> A couple different methods exist within the Yocto
709 Project build system to satisfy the licensing
710 requirements for an encumbered BSP. The following list
711 describes them in order of preference:
712 </para>
713
714 <orderedlist>
715 <listitem>
716 <para>
717 Yocto recipes that have commercial or other types of
718 specially-licensed packages define a variable named
719 LICENSE_FLAGS. For each of those recipes, a user
720 can specify a matching license string in a
721 local.conf variable named LICENSE_FLAGS_WHITELIST.
722 This signifies that the user agrees to the license,
723 and the corresponding recipe can then be built and
724 included in the image. See Section 3.3.2. in The
725 Yocto Project Reference Manual for details on these
726 variables and how to make use of them.
727 </para>
728
729 <para>
730 If you build as you normally would, without
731 specifying any recipes in the
732 LICENSE_FLAGS_WHITELIST, the build will stop and
733 provide you with the list of recipes that you've
734 tried to include in the image which need entries in
735 the LICENSE_FLAGS_WHITELIST. Once the appropriate
736 license flags have been entered into the whitelist,
737 restart the build to continue where it left off.
738 During the build the prompt will not appear again
739 since you have satisfied the requirement.
740 </para>
741
742 <para>
743 Once the appropriate license flags are whitelisted
744 in the LICENSE_FLAGS_WHITELIST variable, the
745 encumbered image can be built with no change at all
746 to the normal build process.
747 </para>
748 </listitem>
749 <listitem>
750 <para>
751 Get a pre-built version of the BSP. You can do this
752 by visiting the Yocto Project website's
753 <ulink url='&YOCTO_HOME_URL;/download'>Download</ulink>
754 page and clicking on "BSP Downloads". BSP tarballs
755 that contain proprietary components can be
756 downloaded after agreeing to the licensing
757 requirements of each of the individually encumbered
758 packages as part of the download process. Obtaining
759 the BSP this way allows you to access an encumbered
760 image immediately after agreeing to the
761 click-through license agreements presented by the
762 website. Note that if you want to build the image
763 yourself using the recipes contained within the BSP
764 tarball, you will still need to create an
765 appropriate LICENSE_FLAGS_WHITELIST to match the
766 encumbered recipes in the BSP.
767 </para>
768 </listitem>
769 </orderedlist>
770 <para>
771 Note also that the pre-compiled images are bundled with
772 a time-limited kernel which will run for only a
773 predetermined amount of time (10 days) before it forces
774 the system to reboot. This is meant as a discouragement
775 to directly redistributing the image as-is, and means
776 that you'll have to eventually rebuild the image if you
777 want to remove that restriction.
778 </para>
779 </section>
780 702
703 <para>
704 If however, a non-encumbered version is unavailable or
705 it provides unsuitable functionality or quality, you can use an encumbered
706 version.
707 </para>
708
709 <para>
710 A couple different methods exist within the Yocto
711 Project build system to satisfy the licensing
712 requirements for an encumbered BSP.
713 The following list describes them in order of preference:
714 <orderedlist>
715 <listitem><para><emphasis>Use the <filename>LICENSE_FLAGS</filename> variable
716 to define the Yocto Project recipes that have commercial or other types of
717 specially-licensed packages:</emphasis>
718 For each of those recipes, you can
719 specify a matching license string in a
720 <filename>local.conf</filename> variable named
721 <filename>LICENSE_FLAGS_WHITELIST</filename>.
722 Specifying the matching license string signifies that you agree to the license.
723 Thus, the build system can build the corresponding recipe and include
724 the component in the image.
725 See the
726 "<ulink url='&YOCTO_DOCS_REF_URL;#enabling-commercially-licensed-recipes'>Enabling
727 Commercially Licensed Recipes</ulink>" section in the Yocto Project Reference
728 Manual for details on how to use these variables.</para>
729 <para>If you build as you normally would, without
730 specifying any recipes in the
731 <filename>LICENSE_FLAGS_WHITELIST</filename>, the build stops and
732 provides you with the list of recipes that you have
733 tried to include in the image that need entries in
734 the <filename>LICENSE_FLAGS_WHITELIST</filename>.
735 Once you enter the appropriate license flags into the whitelist,
736 restart the build to continue where it left off.
737 During the build, the prompt will not appear again
738 since you have satisfied the requirement.</para>
739 <para>Once the appropriate license flags are whitelisted
740 in the <filename>LICENSE_FLAGS_WHITELIST</filename> variable, you
741 can build the encumbered image with no change at all
742 to the normal build process.</para></listitem>
743 <listitem><para><emphasis>Get a pre-built version of the BSP:</emphasis>
744 You can get this type of BSP by visiting the Yocto Project website's
745 <ulink url='&YOCTO_HOME_URL;/download'>Download</ulink>
746 page and clicking on "BSP Downloads".
747 You can download BSP tarballs that contain proprietary components
748 after agreeing to the licensing
749 requirements of each of the individually encumbered
750 packages as part of the download process.
751 Obtaining the BSP this way allows you to access an encumbered
752 image immediately after agreeing to the
753 click-through license agreements presented by the
754 website.
755 Note that if you want to build the image
756 yourself using the recipes contained within the BSP
757 tarball, you will still need to create an
758 appropriate <filename>LICENSE_FLAGS_WHITELIST</filename> to match the
759 encumbered recipes in the BSP.</para></listitem>
760 </orderedlist>
761 </para>
762
763 <note>
764 Pre-compiled images are bundled with
765 a time-limited kernel that runs for a
766 predetermined amount of time (10 days) before it forces
767 the system to reboot.
768 This limitation is meant to discourage direct redistribution
769 of the image.
770 You must eventually rebuild the image if you want to remove this restriction.
771 </note>
772 </section>
781</chapter> 773</chapter>