Labworks
Yocto Project
Embedded
Labworks
O QUE UM BSP?
Embedded
Labworks
CAMADA DE BSP
Embedded
Labworks
META-YOCTO-BSP
$treeL3metayoctobsp/
./metayoctobsp/
conf
layer.conf
machine
beaglebone.conf
edgerouter.conf
genericx8664.conf
genericx86.conf
include
mpc8315erdb.conf
recipesbsp
recipescore
recipesgraphics
recipeskernel
Embedded
Labworks
Embedded
Labworks
TARGET_ARCH:
arquitetura da mquina.
PREFERRED_PROVIDER_virtual/kernel:
Embedded
Labworks
wandboard-quad.conf
includeconf/machine/include/imxbase.inc
includeconf/machine/include/tunecortexa9.inc
SOC_FAMILY="mx6:mx6q:wandboard"
PREFERRED_PROVIDER_virtual/kernel?="linuxwandboard"
UBOOT_MACHINE="wandboard_quad_config"
KERNEL_DEVICETREE="imx6qwandboard.dtb"
SERIAL_CONSOLE="115200ttymxc0"
MACHINE_FEATURES+="pciwifibluetooth"
MACHINE_EXTRA_RRECOMMENDS+="broadcomnvramconfig"
Embedded
Labworks
imx-base.inc
includeconf/machine/include/fsldefaultsettings.inc
includeconf/machine/include/fsldefaultversions.inc
includeconf/machine/include/fsldefaultproviders.inc
includeconf/machine/include/socfamily.inc
#Setspecificmaketargetandbinarysuffix
UBOOT_MAKE_TARGET="uboot.imx"
UBOOT_SUFFIX?="imx"
UBOOT_ENTRYPOINT_mx3="0x80008000"
[...]
XSERVER_DRIVER="xf86videofbdev"
[...]
#FloatPointsetting
DEFAULTTUNE_mx6?="cortexa9hfneon"
Embedded
Labworks
MACHINE FEATURES
touchscreen:
wifi:
bluetooth:
Embedded
Labworks
USANDO O BSP
Embedded
Labworks
ESTENDENDO O BSP
Embedded
Labworks
CONFIGURANDO O KERNEL
Embedded
Labworks
SOBRESCREVENDO A
CONFIGURAO
Embedded
Labworks
SOBRESCREVENDO A
CONFIGURAO (cont.)
$treeL4recipeskernel/
recipeskernel
linux
files
defconfig
linuxmyboard.bbappend
$catlinuxmyboard.bbappend
FILESEXTRAPATHS_prepend:="${THISDIR}/files:"
SRC_URI+="file://defconfig"
Embedded
Labworks
Embedded
Labworks
FRAGMENTOS DE CONFIGURAO
SOBRESCREVENDO A
CONFIGURAO (cont.)
$treeL4recipeskernel/
recipeskernel
linux
files
ntfs.cfg
linuxmyboard.bbappend
$catfiles/ntfs.cfg
CONFIG_NTFS_FS=y
$catlinuxmyboard.bbappend
FILESEXTRAPATHS_prepend:="${THISDIR}/files:"
SRC_URI+="file://ntfs.cfg"
Embedded
Labworks
Embedded
Labworks
APLICANDO PATCHES
os
patches
kernel/linux/files/.
no
diretrio
recipes
Embedded
Labworks
Embedded
Labworks
MDULOS DO KERNEL
Embedded
Labworks
hello-mod_0.1.bb
SUMMARY="ExampleofhowtobuildanexternalLinuxkernel
module"
LICENSE="GPLv2"
LIC_FILES_CHKSUM="file://COPYING;md5=12f884d2ae1ff87c09e5b7c
cc2c4ca7e"
inheritmodule
PR="r0"
PV="0.1"
SRC_URI="file://Makefile\
file://hello.c\
file://COPYING"
S="${WORKDIR}"
ALTERANDO OS FONTES DO
KERNEL
Embedded
Labworks
Embedded
Labworks
linux-yocto-custom.bb
inheritkernel
requirerecipeskernel/linux/linuxyocto.inc
SRC_URI="git://git.kernel.org/pub/scm/linux/kernel/git/
torvalds/linux.git;protocol=git;nocheckout=1;name=machine"
LINUX_VERSION?="3.4"
LINUX_VERSION_EXTENSION?="custom"
SRCREV_machine="76e10d158efb6d4516018846f60c2ab5501900bc"
PR="r1"
PV="${LINUX_VERSION}+git${SRCPV}"
COMPATIBLE_MACHINE="(^$)"
Embedded
Labworks
OUTRAS OPES DE
CONFIGURAO
alterar
linha
de
APPEND+="printk.time=yinitcall_debugdebug"
Embedded
Labworks
LABORATRIO
Customizando o BSP