diff options
Diffstat (limited to 'documentation/bsp-guide/bsp.xml')
-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 | ||