diff options
| -rw-r--r-- | documentation/bsp-guide/bsp.xml | 236 |
1 files changed, 112 insertions, 124 deletions
diff --git a/documentation/bsp-guide/bsp.xml b/documentation/bsp-guide/bsp.xml index 3cb65c21e7..61714c8814 100644 --- a/documentation/bsp-guide/bsp.xml +++ b/documentation/bsp-guide/bsp.xml | |||
| @@ -56,6 +56,7 @@ | |||
| 56 | BBLAYERS = " \ | 56 | BBLAYERS = " \ |
| 57 | /usr/local/src/yocto/meta \ | 57 | /usr/local/src/yocto/meta \ |
| 58 | /usr/local/src/yocto/meta-yocto \ | 58 | /usr/local/src/yocto/meta-yocto \ |
| 59 | /usr/local/src/yocto/meta-yocto-bsp \ | ||
| 59 | /usr/local/src/yocto/meta-<bsp_name> \ | 60 | /usr/local/src/yocto/meta-<bsp_name> \ |
| 60 | " | 61 | " |
| 61 | </literallayout> | 62 | </literallayout> |
| @@ -1017,7 +1018,7 @@ | |||
| 1017 | 1018 | ||
| 1018 | <para> | 1019 | <para> |
| 1019 | The following sections describe the common location and help features as well | 1020 | The following sections describe the common location and help features as well |
| 1020 | as provides details for the | 1021 | as provide details for the |
| 1021 | <filename>yocto-bsp</filename> and <filename>yocto-kernel</filename> tools. | 1022 | <filename>yocto-bsp</filename> and <filename>yocto-kernel</filename> tools. |
| 1022 | </para> | 1023 | </para> |
| 1023 | 1024 | ||
| @@ -1049,30 +1050,27 @@ | |||
| 1049 | The most immediately useful function is to get help on both tools. | 1050 | The most immediately useful function is to get help on both tools. |
| 1050 | The built-in help system makes it easy to drill down at | 1051 | The built-in help system makes it easy to drill down at |
| 1051 | any time and view the syntax required for any specific command. | 1052 | any time and view the syntax required for any specific command. |
| 1052 | Simply enter the name of the command, or the command along with | 1053 | Simply enter the name of the command with the <filename>help</filename> |
| 1053 | <filename>help</filename> to display a list of the available sub-commands. | 1054 | switch: |
| 1054 | Here is an example: | ||
| 1055 | <literallayout class='monospaced'> | 1055 | <literallayout class='monospaced'> |
| 1056 | $ yocto-bsp | ||
| 1057 | $ yocto-bsp help | 1056 | $ yocto-bsp help |
| 1057 | Usage: | ||
| 1058 | 1058 | ||
| 1059 | Usage: | 1059 | Create a customized Yocto BSP layer. |
| 1060 | |||
| 1061 | Create a customized Yocto BSP layer. | ||
| 1062 | 1060 | ||
| 1063 | usage: yocto-bsp [--version] [--help] COMMAND [ARGS] | 1061 | usage: yocto-bsp [--version] [--help] COMMAND [ARGS] |
| 1064 | 1062 | ||
| 1065 | The most commonly used 'yocto-bsp' commands are: | 1063 | Current 'yocto-bsp' commands are: |
| 1066 | create Create a new Yocto BSP | 1064 | create Create a new Yocto BSP |
| 1067 | list List available values for options and BSP properties | 1065 | list List available values for options and BSP properties |
| 1068 | 1066 | ||
| 1069 | See 'yocto-bsp help COMMAND' for more information on a specific command. | 1067 | See 'yocto-bsp help COMMAND' for more information on a specific command. |
| 1070 | 1068 | ||
| 1071 | 1069 | ||
| 1072 | Options: | 1070 | Options: |
| 1073 | --version show program's version number and exit | 1071 | --version show program's version number and exit |
| 1074 | -h, --help show this help message and exit | 1072 | -h, --help show this help message and exit |
| 1075 | -D, --debug output debug information | 1073 | -D, --debug output debug information |
| 1076 | </literallayout> | 1074 | </literallayout> |
| 1077 | </para> | 1075 | </para> |
| 1078 | 1076 | ||
| @@ -1082,19 +1080,20 @@ | |||
| 1082 | <literallayout class='monospaced'> | 1080 | <literallayout class='monospaced'> |
| 1083 | $ yocto-bsp create | 1081 | $ yocto-bsp create |
| 1084 | 1082 | ||
| 1085 | Usage: | 1083 | Usage: |
| 1084 | |||
| 1085 | Create a new Yocto BSP | ||
| 1086 | 1086 | ||
| 1087 | Create a new Yocto BSP | 1087 | usage: yocto-bsp create <bsp-name> <karch> [-o <DIRNAME> | --outdir <DIRNAME>] |
| 1088 | usage: yocto-bsp create <bsp-name> <karch> [-o <DIRNAME> | --outdir <DIRNAME>] | ||
| 1089 | [-i <JSON PROPERTY FILE> | --infile <JSON PROPERTY_FILE>] | 1088 | [-i <JSON PROPERTY FILE> | --infile <JSON PROPERTY_FILE>] |
| 1090 | 1089 | ||
| 1091 | This command creates a Yocto BSP based on the specified parameters. | 1090 | This command creates a Yocto BSP based on the specified parameters. |
| 1092 | The new BSP will be a new BSP layer contained by default within | 1091 | The new BSP will be a new Yocto BSP layer contained by default within |
| 1093 | the top-level directory specified as 'meta-bsp-name'. The -o option | 1092 | the top-level directory specified as 'meta-bsp-name'. The -o option |
| 1094 | can be used to place the BSP layer in a directory with a different | 1093 | can be used to place the BSP layer in a directory with a different |
| 1095 | name and location. | 1094 | name and location. |
| 1096 | 1095 | ||
| 1097 | ... | 1096 | ... |
| 1098 | </literallayout> | 1097 | </literallayout> |
| 1099 | </para> | 1098 | </para> |
| 1100 | 1099 | ||
| @@ -1105,33 +1104,26 @@ | |||
| 1105 | $ yocto-bsp help create | 1104 | $ yocto-bsp help create |
| 1106 | 1105 | ||
| 1107 | NAME | 1106 | NAME |
| 1108 | yocto-bsp create - Create a new Yocto BSP | 1107 | yocto-bsp create - Create a new Yocto BSP |
| 1109 | 1108 | ||
| 1110 | SYNOPSIS | 1109 | SYNOPSIS |
| 1111 | yocto-bsp create <bsp-name> <karch> [-o <DIRNAME> | --outdir <DIRNAME>] | 1110 | yocto-bsp create <bsp-name> <karch> [-o <DIRNAME> | --outdir <DIRNAME>] |
| 1112 | [-i <JSON PROPERTY FILE> | --infile <JSON PROPERTY_FILE>] | 1111 | [-i <JSON PROPERTY FILE> | --infile <JSON PROPERTY_FILE>] |
| 1113 | 1112 | ||
| 1114 | DESCRIPTION | 1113 | DESCRIPTION |
| 1115 | This command creates a Yocto BSP based on the specified | 1114 | This command creates a Yocto BSP based on the specified |
| 1116 | parameters. The new BSP will be a new Yocto BSP layer contained | 1115 | parameters. The new BSP will be a new Yocto BSP layer contained |
| 1117 | by default within the top-level directory specified as | 1116 | by default within the top-level directory specified as |
| 1118 | 'meta-bsp-name'. The -o option can be used to place the BSP layer | 1117 | 'meta-bsp-name'. The -o option can be used to place the BSP layer |
| 1119 | in a directory with a different name and location. | 1118 | in a directory with a different name and location. |
| 1120 | 1119 | ||
| 1121 | The value of the 'karch' parameter determines the set of files | 1120 | The value of the 'karch' parameter determines the set of files |
| 1122 | that will be generated for the BSP, along with the specific set of | 1121 | that will be generated for the BSP, along with the specific set of |
| 1123 | 'properties' that will be used to fill out the BSP-specific | 1122 | 'properties' that will be used to fill out the BSP-specific |
| 1124 | portions of the BSP. | 1123 | portions of the BSP. The possible values for the 'karch' paramter |
| 1125 | 1124 | can be listed via 'yocto-bsp list karch'. | |
| 1126 | ... | 1125 | |
| 1127 | 1126 | ... | |
| 1128 | NOTE: Once created, you should add your new layer to your | ||
| 1129 | bblayers.conf file in order for it to be subsequently seen and | ||
| 1130 | modified by the yocto-kernel tool. | ||
| 1131 | |||
| 1132 | NOTE for x86- and x86_64-based BSPs: The generated BSP assumes the | ||
| 1133 | presence of the of the meta-intel layer, so you should also have a | ||
| 1134 | meta-intel layer present and added to your bblayers.conf as well. | ||
| 1135 | </literallayout> | 1127 | </literallayout> |
| 1136 | </para> | 1128 | </para> |
| 1137 | 1129 | ||
| @@ -1158,33 +1150,33 @@ | |||
| 1158 | For the current set of BSPs, the script prompts you for various important | 1150 | For the current set of BSPs, the script prompts you for various important |
| 1159 | parameters such as: | 1151 | parameters such as: |
| 1160 | <itemizedlist> | 1152 | <itemizedlist> |
| 1161 | <listitem><para>which kernel to use</para></listitem> | 1153 | <listitem><para>The kernel to use</para></listitem> |
| 1162 | <listitem><para>which branch of that kernel to use (or re-use)</para></listitem> | 1154 | <listitem><para>The branch of that kernel to use (or re-use)</para></listitem> |
| 1163 | <listitem><para>whether or not to use X, and if so, which drivers to use</para></listitem> | 1155 | <listitem><para>Whether or not to use X, and if so, which drivers to use</para></listitem> |
| 1164 | <listitem><para>whether to turn on SMP</para></listitem> | 1156 | <listitem><para>Whether to turn on SMP</para></listitem> |
| 1165 | <listitem><para>whether the BSP has a keyboard</para></listitem> | 1157 | <listitem><para>Whether the BSP has a keyboard</para></listitem> |
| 1166 | <listitem><para>whether the BSP has a touchscreen</para></listitem> | 1158 | <listitem><para>Whether the BSP has a touchscreen</para></listitem> |
| 1167 | <listitem><para>any remaining configurable items associated with the BSP</para></listitem> | 1159 | <listitem><para>Remaining configurable items associated with the BSP</para></listitem> |
| 1168 | </itemizedlist> | 1160 | </itemizedlist> |
| 1169 | </para> | 1161 | </para> |
| 1170 | 1162 | ||
| 1171 | <para> | 1163 | <para> |
| 1172 | You use the <filename>yocto-bsp create</filename> sub-command to create | 1164 | You use the <filename>yocto-bsp create</filename> sub-command to create |
| 1173 | a new BSP layer. | 1165 | a new BSP layer. |
| 1174 | This command requires you to specify a particular architecture on which to | 1166 | This command requires you to specify a particular kernel architecture |
| 1175 | base the BSP. | 1167 | (<filename>karch</filename>) on which to base the BSP. |
| 1176 | Assuming you have sourced the environment, you can use the | 1168 | Assuming you have sourced the environment, you can use the |
| 1177 | <filename>yocto-bsp list karch</filename> sub-command to list the | 1169 | <filename>yocto-bsp list karch</filename> sub-command to list the |
| 1178 | architectures available for BSP creation as follows: | 1170 | architectures available for BSP creation as follows: |
| 1179 | <literallayout class='monospaced'> | 1171 | <literallayout class='monospaced'> |
| 1180 | $ yocto-bsp list karch | 1172 | $ yocto-bsp list karch |
| 1181 | Architectures available: | 1173 | Architectures available: |
| 1182 | arm | 1174 | qemu |
| 1183 | powerpc | 1175 | x86_64 |
| 1184 | i386 | 1176 | i386 |
| 1177 | powerpc | ||
| 1178 | arm | ||
| 1185 | mips | 1179 | mips |
| 1186 | x86_64 | ||
| 1187 | qemu | ||
| 1188 | </literallayout> | 1180 | </literallayout> |
| 1189 | </para> | 1181 | </para> |
| 1190 | 1182 | ||
| @@ -1205,53 +1197,46 @@ | |||
| 1205 | the prompts appear in brackets. | 1197 | the prompts appear in brackets. |
| 1206 | Pressing enter without supplying anything on the command line or pressing enter | 1198 | Pressing enter without supplying anything on the command line or pressing enter |
| 1207 | and providing an invalid response causes the script to accept the default value. | 1199 | and providing an invalid response causes the script to accept the default value. |
| 1200 | Once the script completes, the new <filename>meta-myarm</filename> BSP layer | ||
| 1201 | is created in the current working directory. | ||
| 1202 | This example assumes you have source the &OE_INIT_FILE; and are currently | ||
| 1203 | in the top-level folder of the | ||
| 1204 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>. | ||
| 1208 | </para> | 1205 | </para> |
| 1209 | 1206 | ||
| 1210 | <para> | 1207 | <para> |
| 1211 | Following is the complete example: | 1208 | Following is the complete example: |
| 1212 | <literallayout class='monospaced'> | 1209 | <literallayout class='monospaced'> |
| 1213 | $ yocto-bsp create myarm qemu | 1210 | $ yocto-bsp create myarm qemu |
| 1214 | Which qemu architecture would you like to use? [default: x86] | 1211 | Which qemu architecture would you like to use? [default: i386] |
| 1215 | 1) common 32-bit x86 | 1212 | 1) i386 (32-bit) |
| 1216 | 2) common 64-bit x86 | 1213 | 2) x86_64 (64-bit) |
| 1217 | 3) common 32-bit ARM | 1214 | 3) ARM (32-bit) |
| 1218 | 4) common 32-bit PowerPC | 1215 | 4) PowerPC (32-bit) |
| 1219 | 5) common 32-bit MIPS | 1216 | 5) MIPS (32-bit) |
| 1220 | 3 | 1217 | 3 |
| 1221 | Would you like to use the default (3.2) kernel? (Y/n) | 1218 | Would you like to use the default (3.4) kernel? (y/n) [default: y] |
| 1222 | Do you need a new machine branch for this BSP (the alternative is to re-use an existing branch)? [Y/n] | 1219 | Do you need a new machine branch for this BSP (the alternative is to re-use an existing branch)? [y/n] [default: y] |
| 1223 | Getting branches from remote repo git://git.yoctoproject.org/linux-yocto-3.2... | 1220 | Getting branches from remote repo git://git.yoctoproject.org/linux-yocto-3.4.git... |
| 1224 | Please choose a machine branch to base this BSP on => [default: standard/default/common-pc] | 1221 | Please choose a machine branch to base your new BSP branch on: [default: standard/base] |
| 1225 | 1) base | 1222 | 1) standard/arm-versatile-926ejs |
| 1226 | 2) standard/base | 1223 | 2) standard/base |
| 1227 | 3) standard/default/arm-versatile-926ejs | 1224 | 3) standard/beagleboard |
| 1228 | 4) standard/default/base | 1225 | 4) standard/cedartrail |
| 1229 | 5) standard/default/beagleboard | 1226 | 5) standard/crownbay |
| 1230 | 6) standard/default/cedartrailbsp (copy).xml | 1227 | 6) standard/emenlow |
| 1231 | 7) standard/default/common-pc-64/base | 1228 | 7) standard/fishriver |
| 1232 | 8) standard/default/common-pc-64/jasperforest | 1229 | 8) standard/fri2 |
| 1233 | 9) standard/default/common-pc-64/romley | 1230 | 9) standard/fsl-mpc8315e-rdb |
| 1234 | 10) standard/default/common-pc-64/sugarbay | 1231 | 10) standard/mti-malta32 |
| 1235 | 11) standard/default/common-pc/atom-pc | 1232 | 11) standard/mti-malta64 |
| 1236 | 12) standard/default/common-pc/base | 1233 | 12) standard/qemuppc |
| 1237 | 13) standard/default/crownbay | 1234 | 13) standard/routerstationpro |
| 1238 | 14) standard/default/emenlow | 1235 | 14) standard/sys940x |
| 1239 | 15) standard/default/fishriver | 1236 | 1 |
| 1240 | 16) standard/default/fri2 | 1237 | Would you like SMP support? (y/n) [default: y] |
| 1241 | 17) standard/default/fsl-mpc8315e-rdb | 1238 | Does your BSP have a touchscreen? (y/n) [default: n] |
| 1242 | 18) standard/default/mti-malta32-be | 1239 | Does your BSP have a keyboard? (y/n) [default: y] |
| 1243 | 19) standard/default/mti-malta32-le | ||
| 1244 | 20) standard/default/preempt-rt | ||
| 1245 | 21) standard/default/qemu-ppc32 | ||
| 1246 | 22) standard/default/routerstationpro | ||
| 1247 | 23) standard/preempt-rt/base | ||
| 1248 | 24) standard/preempt-rt/qemu-ppc32 | ||
| 1249 | 25) standard/preempt-rt/routerstationpro | ||
| 1250 | 26) standard/tiny | ||
| 1251 | 3 | ||
| 1252 | Do you need SMP support? (Y/n) | ||
| 1253 | Does your BSP have a touchscreen? (y/N) | ||
| 1254 | Does your BSP have a keyboard? (Y/n) | ||
| 1255 | New qemu BSP created in meta-myarm | 1240 | New qemu BSP created in meta-myarm |
| 1256 | </literallayout> | 1241 | </literallayout> |
| 1257 | Let's take a closer look at the example now: | 1242 | Let's take a closer look at the example now: |
| @@ -1261,10 +1246,10 @@ | |||
| 1261 | In the example, we use the <filename>arm</filename> architecture. | 1246 | In the example, we use the <filename>arm</filename> architecture. |
| 1262 | </para></listitem> | 1247 | </para></listitem> |
| 1263 | <listitem><para>The script then prompts you for the kernel. | 1248 | <listitem><para>The script then prompts you for the kernel. |
| 1264 | The default kernel is 3.2 and is acceptable. | 1249 | The default 3.4 kernel is acceptable. |
| 1265 | So, the example accepts the default. | 1250 | So, the example accepts the default. |
| 1266 | If you enter 'n', the script prompts you to further enter the kernel | 1251 | If you enter 'n', the script prompts you to further enter the kernel |
| 1267 | you do want to use (e.g. 3.0, 3.2_preempt-rt, etc.).</para></listitem> | 1252 | you do want to use (e.g. 3.0, 3.2_preempt-rt, and so forth.).</para></listitem> |
| 1268 | <listitem><para>Next, the script asks whether you would like to have a new | 1253 | <listitem><para>Next, the script asks whether you would like to have a new |
| 1269 | branch created especially for your BSP in the local | 1254 | branch created especially for your BSP in the local |
| 1270 | <ulink url='&YOCTO_DOCS_DEV_URL;#local-kernel-files'>Linux Yocto Kernel</ulink> | 1255 | <ulink url='&YOCTO_DOCS_DEV_URL;#local-kernel-files'>Linux Yocto Kernel</ulink> |
| @@ -1277,25 +1262,20 @@ | |||
| 1277 | The reason a new branch is the default is that typically | 1262 | The reason a new branch is the default is that typically |
| 1278 | new BSPs do require BSP-specific patches. | 1263 | new BSPs do require BSP-specific patches. |
| 1279 | The tool thus assumes that most of time a new branch is required. | 1264 | The tool thus assumes that most of time a new branch is required. |
| 1280 | <note>In the current implementation, creation or re-use of a branch does | 1265 | </para></listitem> |
| 1281 | not actually matter. | 1266 | <listitem><para>Regardless of which choice you make in the previous step, |
| 1282 | The reason is because the generated BSPs assume that patches and | ||
| 1283 | configurations live in recipe-space, which is something that can be done | ||
| 1284 | with or without a dedicated branch. | ||
| 1285 | Generated BSPs, however, are different. | ||
| 1286 | This difference becomes significant once the tool's 'publish' functionality | ||
| 1287 | is implemented.</note></para></listitem> | ||
| 1288 | <listitem><para>Regardless of which choice is made in the previous step, | ||
| 1289 | you are now given the opportunity to select a particular machine branch on | 1267 | you are now given the opportunity to select a particular machine branch on |
| 1290 | which to base your new BSP-specific machine branch on | 1268 | which to base your new BSP-specific machine branch |
| 1291 | (or to re-use if you had elected to not create a new branch). | 1269 | (or to re-use if you had elected to not create a new branch). |
| 1292 | Because this example is generating an <filename>arm</filename> BSP, the example | 1270 | Because this example is generating an <filename>arm</filename> BSP, the example |
| 1293 | uses <filename>#3</filename> at the prompt, which selects the arm-versatile branch. | 1271 | uses <filename>#1</filename> at the prompt, which selects the arm-versatile branch. |
| 1294 | </para></listitem> | 1272 | </para></listitem> |
| 1295 | <listitem><para>The remainder of the prompts are routine. | 1273 | <listitem><para>The remainder of the prompts are routine. |
| 1296 | Defaults are accepted for each.</para></listitem> | 1274 | Defaults are accepted for each.</para></listitem> |
| 1297 | <listitem><para>By default, the script creates the new BSP Layer in the | 1275 | <listitem><para>By default, the script creates the new BSP Layer in the |
| 1298 | <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>. | 1276 | current working directory of the |
| 1277 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>, | ||
| 1278 | which is <filename>poky</filename> in this case. | ||
| 1299 | </para></listitem> | 1279 | </para></listitem> |
| 1300 | </orderedlist> | 1280 | </orderedlist> |
| 1301 | </para> | 1281 | </para> |
| @@ -1308,6 +1288,7 @@ | |||
| 1308 | BBLAYERS = " \ | 1288 | BBLAYERS = " \ |
| 1309 | /usr/local/src/yocto/meta \ | 1289 | /usr/local/src/yocto/meta \ |
| 1310 | /usr/local/src/yocto/meta-yocto \ | 1290 | /usr/local/src/yocto/meta-yocto \ |
| 1291 | /usr/local/src/yocto/meta-yocto-bsp \ | ||
| 1311 | /usr/local/src/yocto/meta-myarm \ | 1292 | /usr/local/src/yocto/meta-myarm \ |
| 1312 | " | 1293 | " |
| 1313 | </literallayout> | 1294 | </literallayout> |
| @@ -1339,21 +1320,28 @@ | |||
| 1339 | is to use the <filename>yocto-kernel</filename> built-in help as follows: | 1320 | is to use the <filename>yocto-kernel</filename> built-in help as follows: |
| 1340 | <literallayout class='monospaced'> | 1321 | <literallayout class='monospaced'> |
| 1341 | $ yocto-kernel | 1322 | $ yocto-kernel |
| 1342 | Usage: | 1323 | Usage: |
| 1343 | 1324 | ||
| 1344 | Modify and list Yocto BSP kernel config items and patches. | 1325 | Modify and list Yocto BSP kernel config items and patches. |
| 1345 | 1326 | ||
| 1346 | usage: yocto-kernel [--version] [--help] COMMAND [ARGS] | 1327 | usage: yocto-kernel [--version] [--help] COMMAND [ARGS] |
| 1347 | 1328 | ||
| 1348 | The most commonly used 'yocto-kernel' commands are: | 1329 | Current 'yocto-kernel' commands are: |
| 1349 | config list List the modifiable set of bare kernel config options for a BSP | 1330 | config list List the modifiable set of bare kernel config options for a BSP |
| 1350 | config add Add or modify bare kernel config options for a BSP | 1331 | config add Add or modify bare kernel config options for a BSP |
| 1351 | config rm Remove bare kernel config options from a BSP | 1332 | config rm Remove bare kernel config options from a BSP |
| 1352 | patch list List the patches associated with a BSP | 1333 | patch list List the patches associated with a BSP |
| 1353 | patch add Patch the Yocto kernel for a BSP | 1334 | patch add Patch the Yocto kernel for a BSP |
| 1354 | patch rm Remove patches from a BSP | 1335 | patch rm Remove patches from a BSP |
| 1355 | 1336 | ||
| 1356 | See 'yocto-kernel help COMMAND' for more information on a specific command. | 1337 | See 'yocto-kernel help COMMAND' for more information on a specific command. |
| 1338 | |||
| 1339 | |||
| 1340 | |||
| 1341 | Options: | ||
| 1342 | --version show program's version number and exit | ||
| 1343 | -h, --help show this help message and exit | ||
| 1344 | -D, --debug output debug information | ||
| 1357 | </literallayout> | 1345 | </literallayout> |
| 1358 | </para> | 1346 | </para> |
| 1359 | 1347 | ||
