diff options
author | Scott Rifenbark <scott.m.rifenbark@intel.com> | 2012-07-20 10:24:47 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-07-22 11:41:21 +0100 |
commit | 3b4c9331df58ff6e9574c9f616433518b52ea52d (patch) | |
tree | d6877f7c97d235510b813d82bec875f9ff951fc9 | |
parent | 15b96762f1862057c16f0a453c77bb1a0688692d (diff) | |
download | poky-3b4c9331df58ff6e9574c9f616433518b52ea52d.tar.gz |
documentation/poky-ref-manual/ref-variables.xml: New KMACHINE gloss entry
Created a new glossary entry for the KMACHINE variable. I used
Bruce Ashfield as my resource for understanding this variable.
(From yocto-docs rev: 1069ddb3fe0b3bd00ba651b51419354258ae57d3)
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | documentation/poky-ref-manual/ref-variables.xml | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/documentation/poky-ref-manual/ref-variables.xml b/documentation/poky-ref-manual/ref-variables.xml index f83844e0a7..9a4e56043e 100644 --- a/documentation/poky-ref-manual/ref-variables.xml +++ b/documentation/poky-ref-manual/ref-variables.xml | |||
@@ -1128,6 +1128,94 @@ recipes-graphics/xorg-font/xorg-font-common.inc:INC_PR = "r2" | |||
1128 | </glossdef> | 1128 | </glossdef> |
1129 | </glossentry> | 1129 | </glossentry> |
1130 | 1130 | ||
1131 | <glossentry id='var-KMACHINE'><glossterm>KMACHINE</glossterm> | ||
1132 | <glossdef> | ||
1133 | <para> | ||
1134 | The machine as known by the kernel. | ||
1135 | Sometimes the machine name used by the kernel does not match the machine name | ||
1136 | used by the OpenEmbedded build system. | ||
1137 | For example, the machine name that the OpenEmbedded build system understands as | ||
1138 | <filename>qemuarm</filename> goes by a different name in the Linux Yocto kernel. | ||
1139 | The kernel understands that machine as <filename>arm_versatile926ejs</filename>. | ||
1140 | For cases like these, the <filename>KMACHINE</filename> variable maps the | ||
1141 | kernel machine name to the OpenEmbedded build system machine name. | ||
1142 | </para> | ||
1143 | |||
1144 | <para> | ||
1145 | Kernel machine names are initially defined in the | ||
1146 | <ulink url='&YOCTO_DOCS_DEV_URL;#local-kernel-files'>Yocto Project Kernel</ulink> in | ||
1147 | the <filename>meta/cfg/kernel-cache/bsp/<bsp_name>/<bsp-name>-<kernel-type>.scc</filename> file. | ||
1148 | For example, in the <filename>linux-yocto-3.4</filename> kernel in the | ||
1149 | <filename>meta/cfg/kernel-cache/bsp/cedartrail/cedartrail-standard.scc</filename> file, | ||
1150 | has the following: | ||
1151 | <literallayout class='monospaced'> | ||
1152 | define KMACHINE cedartrail | ||
1153 | define KTYPE standard | ||
1154 | define KARCH i386 | ||
1155 | |||
1156 | include ktypes/standard | ||
1157 | branch cedartrail | ||
1158 | |||
1159 | include cedartrail.scc | ||
1160 | </literallayout> | ||
1161 | You can see that the kernel understands the machine name for the Cedar Trail BSP as | ||
1162 | <filename>cedartrail</filename>. | ||
1163 | </para> | ||
1164 | |||
1165 | <para> | ||
1166 | If you look in the Cedar Trail BSP layer in the <filename>meta-intel</filename> source | ||
1167 | repository at <filename>meta-cedartrail/recipes-kernel/linux/linux-yocto_3.0.bbappend</filename>, | ||
1168 | you will find the following statements among others: | ||
1169 | <literallayout class='monospaced'> | ||
1170 | COMPATIBLE_MACHINE_cedartrail = "cedartrail" | ||
1171 | KMACHINE_cedartrail = "cedartrail" | ||
1172 | KBRANCH_cedartrail = "yocto/standard/cedartrail" | ||
1173 | KERNEL_FEATURES_append_cedartrail += "bsp/cedartrail/cedartrail-pvr-merge.scc" | ||
1174 | KERNEL_FEATURES_append_cedartrail += "cfg/efi-ext.scc" | ||
1175 | |||
1176 | COMPATIBLE_MACHINE_cedartrail-nopvr = "cedartrail" | ||
1177 | KMACHINE_cedartrail-nopvr = "cedartrail" | ||
1178 | KBRANCH_cedartrail-nopvr = "yocto/standard/cedartrail" | ||
1179 | KERNEL_FEATURES_append_cedartrail-nopvr += " cfg/smp.scc" | ||
1180 | </literallayout> | ||
1181 | The <filename>KMACHINE</filename> statements in the kernel's append file make sure that | ||
1182 | the OpenEmbedded build system and the Yocto Linux kernel understand the same machine | ||
1183 | names. | ||
1184 | </para> | ||
1185 | |||
1186 | <para> | ||
1187 | This append file uses two <filename>KMACHINE</filename> statements. | ||
1188 | The first is not really necessary but does ensure that the machine known to the | ||
1189 | OpenEmbedded build system as <filename>cedartrail</filename> maps to the machine | ||
1190 | in the kernel also known as <filename>cedartrail</filename>: | ||
1191 | <literallayout class='monospaced'> | ||
1192 | KMACHINE_cedartrail = "cedartrail" | ||
1193 | </literallayout> | ||
1194 | </para> | ||
1195 | |||
1196 | <para> | ||
1197 | The second statement is a good example of why the <filename>KMACHINE</filename> variable | ||
1198 | is needed. | ||
1199 | In this example, the OpenEmbedded build system uses the <filename>cedartrail-nopvr</filename> | ||
1200 | machine name to refer to the Cedar Trail BSP that does not support the propriatory | ||
1201 | PowerVR driver. | ||
1202 | The kernel, however, uses the machine name <filename>cedartrail</filename>. | ||
1203 | Thus, the append file must map the <filename>cedartrail-nopvr</filename> machine name to | ||
1204 | the kernel's <filename>cedartrail</filename> name: | ||
1205 | <literallayout class='monospaced'> | ||
1206 | KMACHINE_cedartrail-nopvr = "cedartrail" | ||
1207 | </literallayout> | ||
1208 | </para> | ||
1209 | |||
1210 | <para> | ||
1211 | BSPs that ship with the Yocto Project release provide all mappings between the Yocto | ||
1212 | Project kernel machine names and the OpenEmbedded machine names. | ||
1213 | Be sure to use the <filename>KMACHINE</filename> if you create a BSP and the machine | ||
1214 | name you use is different than that used in the kernel. | ||
1215 | </para> | ||
1216 | </glossdef> | ||
1217 | </glossentry> | ||
1218 | |||
1131 | </glossdiv> | 1219 | </glossdiv> |
1132 | 1220 | ||
1133 | <glossdiv id='var-glossary-l'><title>L</title> | 1221 | <glossdiv id='var-glossary-l'><title>L</title> |