summaryrefslogtreecommitdiffstats
path: root/scripts/lib/bsp/kernel.py
diff options
context:
space:
mode:
authorBrian A. Lloyd <brian.lloyd@familyhonor.net>2013-01-21 15:14:22 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-02-05 21:37:35 +0000
commita7ce81df2f6e513a7e364c443759733c778b5c1f (patch)
treee11282313e3183c367b22bea664405189b1f1384 /scripts/lib/bsp/kernel.py
parent47b0864fbd65746558d8186450c182d98bac78ca (diff)
downloadpoky-a7ce81df2f6e513a7e364c443759733c778b5c1f.tar.gz
yocto-bsp: qualify user files with machine name
The bblayer abstraction makes it where multiple layers can be configured and used at the same time. Some layers make changes to support a specific machine, and should not have any affect when other machines are in use. For linux-yocto, all bsps are created with a user-config.cfg and user-config.cfg and user-patches.scc. This means that those files will be pulled from the first location found, which might correspond to files customized for a different machine. Instead of using the names user-config.cfg and user-patches.scc, I propose a machine specific name be used such as {{=machine}}user-patches.scc and {{=machine}}user-config.cfg. This would necessitate that all references changed to these new names, which would affect the yocto-bsp and yocto-kernel scripts. With this change, it would be possible to have multiple machine BSPs searched at the same time and to select which to build against by using a command like MACHINE=qmeux86 bitbake core-image-sato to override the default. Note many of the standard BSPs do not seem to suffer this problem as they do not use the common files user-config.cfg and user-patches.scc that the yocto-* scripts depend upon. Additions by Tom Zanussi: - renamed user-config.cfg to {{=machine}}-user-config.cfg everywhere - renamed user-patches.scc to {{=machine}}-user-patches.scc everywhere - added the user-config/patches SRC_URI items to the qemu -rt kernel recipes Fixes [YOCTO #3731] (From meta-yocto rev: b148d800773f3c2e6edeb4f05850b0291a8bb7d5) Signed-off-by: Brian A. Lloyd <brian.lloyd@familyhonor.net> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib/bsp/kernel.py')
-rw-r--r--scripts/lib/bsp/kernel.py28
1 files changed, 14 insertions, 14 deletions
diff --git a/scripts/lib/bsp/kernel.py b/scripts/lib/bsp/kernel.py
index d4bdc4c250..7c14761f3c 100644
--- a/scripts/lib/bsp/kernel.py
+++ b/scripts/lib/bsp/kernel.py
@@ -136,12 +136,12 @@ def gen_choices_str(choices):
136def read_config_items(scripts_path, machine): 136def read_config_items(scripts_path, machine):
137 """ 137 """
138 Find and return a list of config items (CONFIG_XXX) in a machine's 138 Find and return a list of config items (CONFIG_XXX) in a machine's
139 user-defined config fragment [user-config.cfg]. 139 user-defined config fragment [${machine}-user-config.cfg].
140 """ 140 """
141 config_items = [] 141 config_items = []
142 142
143 layer = find_bsp_layer(scripts_path, machine) 143 layer = find_bsp_layer(scripts_path, machine)
144 cfg = os.path.join(layer, "recipes-kernel/linux/files/user-config.cfg") 144 cfg = os.path.join(layer, "recipes-kernel/linux/files/"+machine+"-user-config.cfg")
145 145
146 f = open(cfg, "r") 146 f = open(cfg, "r")
147 lines = f.readlines() 147 lines = f.readlines()
@@ -157,10 +157,10 @@ def read_config_items(scripts_path, machine):
157def write_config_items(scripts_path, machine, config_items): 157def write_config_items(scripts_path, machine, config_items):
158 """ 158 """
159 Write (replace) the list of config items (CONFIG_XXX) in a 159 Write (replace) the list of config items (CONFIG_XXX) in a
160 machine's user-defined config fragment [user-config.cfg]. 160 machine's user-defined config fragment [${machine}=user-config.cfg].
161 """ 161 """
162 layer = find_bsp_layer(scripts_path, machine) 162 layer = find_bsp_layer(scripts_path, machine)
163 cfg = os.path.join(layer, "recipes-kernel/linux/files/user-config.cfg") 163 cfg = os.path.join(layer, "recipes-kernel/linux/files/"+machine+"-user-config.cfg")
164 164
165 f = open(cfg, "w") 165 f = open(cfg, "w")
166 for item in config_items: 166 for item in config_items:
@@ -173,7 +173,7 @@ def write_config_items(scripts_path, machine, config_items):
173def yocto_kernel_config_list(scripts_path, machine): 173def yocto_kernel_config_list(scripts_path, machine):
174 """ 174 """
175 Display the list of config items (CONFIG_XXX) in a machine's 175 Display the list of config items (CONFIG_XXX) in a machine's
176 user-defined config fragment [user-config.cfg]. 176 user-defined config fragment [${machine}-user-config.cfg].
177 """ 177 """
178 config_items = read_config_items(scripts_path, machine) 178 config_items = read_config_items(scripts_path, machine)
179 179
@@ -196,7 +196,7 @@ def map_choice(choice_str, array):
196def yocto_kernel_config_rm(scripts_path, machine): 196def yocto_kernel_config_rm(scripts_path, machine):
197 """ 197 """
198 Display the list of config items (CONFIG_XXX) in a machine's 198 Display the list of config items (CONFIG_XXX) in a machine's
199 user-defined config fragment [user-config.cfg], prompt the user 199 user-defined config fragment [${machine}-user-config.cfg], prompt the user
200 for one or more to remove, and remove them. 200 for one or more to remove, and remove them.
201 """ 201 """
202 config_items = read_config_items(scripts_path, machine) 202 config_items = read_config_items(scripts_path, machine)
@@ -229,7 +229,7 @@ def yocto_kernel_config_rm(scripts_path, machine):
229def yocto_kernel_config_add(scripts_path, machine, config_items): 229def yocto_kernel_config_add(scripts_path, machine, config_items):
230 """ 230 """
231 Add one or more config items (CONFIG_XXX) to a machine's 231 Add one or more config items (CONFIG_XXX) to a machine's
232 user-defined config fragment [user-config.cfg]. 232 user-defined config fragment [${machine}-user-config.cfg].
233 """ 233 """
234 new_items = [] 234 new_items = []
235 235
@@ -373,12 +373,12 @@ def find_patches(src_uri):
373def read_patch_items(scripts_path, machine): 373def read_patch_items(scripts_path, machine):
374 """ 374 """
375 Find and return a list of patch items in a machine's user-defined 375 Find and return a list of patch items in a machine's user-defined
376 patch list [user-patches.scc]. 376 patch list [${machine}-user-patches.scc].
377 """ 377 """
378 patch_items = [] 378 patch_items = []
379 379
380 layer = find_bsp_layer(scripts_path, machine) 380 layer = find_bsp_layer(scripts_path, machine)
381 patches = os.path.join(layer, "recipes-kernel/linux/files/user-patches.scc") 381 patches = os.path.join(layer, "recipes-kernel/linux/files/"+machine+"-user-patches.scc")
382 382
383 f = open(patches, "r") 383 f = open(patches, "r")
384 lines = f.readlines() 384 lines = f.readlines()
@@ -397,11 +397,11 @@ def read_patch_items(scripts_path, machine):
397def write_patch_items(scripts_path, machine, patch_items): 397def write_patch_items(scripts_path, machine, patch_items):
398 """ 398 """
399 Write (replace) the list of patches in a machine's user-defined 399 Write (replace) the list of patches in a machine's user-defined
400 patch list [user-patches.scc]. 400 patch list [${machine}-user-patches.scc].
401 """ 401 """
402 layer = find_bsp_layer(scripts_path, machine) 402 layer = find_bsp_layer(scripts_path, machine)
403 403
404 patches = os.path.join(layer, "recipes-kernel/linux/files/user-patches.scc") 404 patches = os.path.join(layer, "recipes-kernel/linux/files/"+machine+"-user-patches.scc")
405 405
406 f = open(patches, "w") 406 f = open(patches, "w")
407 for item in patch_items: 407 for item in patch_items:
@@ -417,7 +417,7 @@ def write_patch_items(scripts_path, machine, patch_items):
417def yocto_kernel_patch_list(scripts_path, machine): 417def yocto_kernel_patch_list(scripts_path, machine):
418 """ 418 """
419 Display the list of patches in a machine's user-defined patch list 419 Display the list of patches in a machine's user-defined patch list
420 [user-patches.scc]. 420 [${machine}-user-patches.scc].
421 """ 421 """
422 (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine) 422 (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine)
423 patches = find_patches(src_uri) 423 patches = find_patches(src_uri)
@@ -429,7 +429,7 @@ def yocto_kernel_patch_list(scripts_path, machine):
429def yocto_kernel_patch_rm(scripts_path, machine): 429def yocto_kernel_patch_rm(scripts_path, machine):
430 """ 430 """
431 Remove one or more patches from a machine's user-defined patch 431 Remove one or more patches from a machine's user-defined patch
432 list [user-patches.scc]. 432 list [${machine}-user-patches.scc].
433 """ 433 """
434 (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine) 434 (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine)
435 patches = find_patches(src_uri) 435 patches = find_patches(src_uri)
@@ -470,7 +470,7 @@ def yocto_kernel_patch_rm(scripts_path, machine):
470def yocto_kernel_patch_add(scripts_path, machine, patches): 470def yocto_kernel_patch_add(scripts_path, machine, patches):
471 """ 471 """
472 Add one or more patches to a machine's user-defined patch list 472 Add one or more patches to a machine's user-defined patch list
473 [user-patches.scc]. 473 [${machine}-user-patches.scc].
474 """ 474 """
475 (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine) 475 (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine)
476 src_uri_patches = find_patches(src_uri) 476 src_uri_patches = find_patches(src_uri)