commits for machine setup tool
cover commits for machine setup tool
From: Nitin A Kamble <[email protected]>
This pull request introduces a new feature called machine-setup-tool, which can be used by the BSP. With the use of the tool, BSPs for different boards which mainly differ in the text configuration for the target board, can be consolidated to use a common BSP.
The tool provides ability to configure the target image at runtime. It also provides ability to detect the target boards for automatic configuration of the image. The tool can handle any text configuration for the target image. All the configuration manipulation needed for the meta-intel BSP boards is already supported in the tool.
The tool's configuration is BSP specific and need to be specified separately in the BSP layer. For example, for the meta-intel layer, the complementary commits can be seen here:
http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-contrib/log/?h=nitin/machinesetuptool
These commits are enabling the meta-intel layer to support 6 boards with 2 common BSPs.
Thanks,
Nitin
The following changes since commit 8657c2fd57600e0b0eaf2a14692de7453c78e1bb:
serf: readded md5sum (2014-12-11 11:34:57 +0000)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib nitin/machinesetuptool
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=nitin/machinesetuptool
Nitin A Kamble (2):
alsa-plugins: a new recipe
machinesetuptool: a new recipe for setup of a machine
.../machinesetuptool/machinesetuptool_git.bb | 55 ++++++++++++++++++++++ .../recipes-multimedia/alsa/alsa-plugins_1.0.28.bb | 49 +++++++++++++++++++ 2 files changed, 104 insertions(+) create mode 100644 meta/recipes-bsp/machinesetuptool/machinesetuptool_git.bb create mode 100644 meta/recipes-multimedia/alsa/alsa-plugins_1.0.28.bb
Signature · 1 line
1.8.1.4
PATCH 1/2 alsa-plugins: a new recipe
From: Nitin A Kamble <[email protected]>
Provides the pulseaudio to ALSA connector, which is needed for ALSA apps when using the pulseaudio sound server on the target,
--- .../recipes-multimedia/alsa/alsa-plugins_1.0.28.bb | 49 ++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 meta/recipes-multimedia/alsa/alsa-plugins_1.0.28.bb
meta/recipes-multimedia/alsa/alsa-plugins_1.0.28.bb new file +49 -0
@@ -0,0 +1,49 @@ +SUMMARY = "ALSA sound plugins" +HOMEPAGE = "http://www.alsa-project.org" +BUGTRACKER = "https://bugtrack.alsa-project.org/alsa-bug/login_page.php" +SECTION = "libs/multimedia" +LICENSE = "LGPLv2.1 & GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34 \ + file://rate/rate_samplerate.c;beginline=1;endline=20;md5=1d72a209fca5472c7bdc3d4f5c01ce03" +DEPENDS = "alsa-lib pulseaudio" + +SRC_URI = "ftp://ftp.alsa-project.org/pub/plugins/${PN}-${PV}.tar.bz2 \ + " + +SRC_URI[md5sum] = "6fcbbb31e96f8ebc5fb926184a717aa4" +SRC_URI[sha256sum] = "426f8af1a07ee9d8c06449524d1f0bd59a06e0331a51aa3d59d343a7c6d03120" + + +inherit autotools pkgconfig + +EXTRA_OECONF += "--disable-jack --disable-samplerate --disable-avcodec --with-speex=no" + +PACKAGES += "${PN}-pulseaudio \ + ${PN}-speex \ + ${PN}-oss \ + ${PN}-vdownmix \ + ${PN}-upmix \ + ${PN}-usbstream \ + ${PN}-arcamav \ + " +FILES_${PN}-doc = "${datadir}/alsa/*" +FILES_${PN}-dbg = "${libdir}/alsa-lib/.debug ${prefix}/src/debug" +FILES_${PN}-dev = "${libdir}/alsa-lib/*.la" +FILES_${PN}-pulseaudio = "${libdir}/alsa-lib/libasound_module*_pulse.so" +FILES_${PN}-speex = "${libdir}/alsa-lib/libasound_module_*_speex*.so" +FILES_${PN}-oss = "${libdir}/alsa-lib/libasound_module_*_oss.so" +FILES_${PN}-vdownmix = "${libdir}/alsa-lib/libasound_module_*_vdownmix.so" +FILES_${PN}-upmix = "${libdir}/alsa-lib/libasound_module_*_upmix.so" +FILES_${PN}-usbstream = "${libdir}/alsa-lib/libasound_module_*_usb_stream.so" +FILES_${PN}-arcamav = "${libdir}/alsa-lib/libasound_module_*_arcam_av.so" + +RDEPENDS_${PN}-pulseaudio = "libpulse" + +SUMMARY_${PN}-pulseaudio = "Alsa to PulseAudio backend" +SUMMARY_${PN}-oss = "Oss PCM output plugin for ALSA" +SUMMARY_${PN}-speex = "Rate Converter Plugin Using Speex Resampler" +SUMMARY_${PN}-vdownmix = "Downmixer to stereo plugin for ALSA" +SUMMARY_${PN}-upmix = "Upmixer channel expander plugin for ALSA" +SUMMARY_${PN}-usbstream = "USB stream plugin for ALSA" +SUMMARY_${PN}-arcamav = "Arcam AV amplifier plugin for ALSA" +
Signature · 1 line
1.8.1.4
PATCH 2/2 machinesetuptool: a new recipe for setup of a machine
From: Nitin A Kamble <[email protected]>
a new recipe which recipe provides the ability to setup a BSP image for a specific machine or platform at the boot time. The base recipe does not provide any machine configuration files, those are provided by individual BSP layer.
--- .../machinesetuptool/machinesetuptool_git.bb | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 meta/recipes-bsp/machinesetuptool/machinesetuptool_git.bb
meta/recipes-bsp/machinesetuptool/machinesetuptool_git.bb new file +55 -0
@@ -0,0 +1,55 @@ +SUMMARY = "Daemon to setup an image for a specific machine at boot time." +SECTION = "base" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" +RDEPENDS_${PN} = "sysvinit sed" + +PV = "1.0+git${SRCPV}" + +SRCREV = "b1a1f62f2f8748080131afa588dd7208bcf35635" + +SRC_URI = "git://git.yoctoproject.org/machinesetuptool.git" + +S = "${WORKDIR}/git" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +inherit autotools pkgconfig update-rc.d + +INITSCRIPT_NAME = "machinesetuptool" +INITSCRIPT_PARAMS = "start 00 S . stop 20 0 1 6 ." + +# This variable is initialized to empty value now. +# It needs to be populated with the desired machine configuration files +# for each BSP in it's own layer. +MACHINE_CONFIG_FILES ?= "" + +python __anonymous () { + src_uri = d.getVar('SRC_URI', True) + machine_config_files = (d.getVar('MACHINE_CONFIG_FILES', True) or "") + for file in machine_config_files.split(): + src_uri += " file://" + file + d.setVar('SRC_URI', src_uri) +} + +do_install_append() { + + if [ -r ${WORKDIR}/defaults ] + then + install -m 0755 ${WORKDIR}/defaults ${D}/${sysconfdir}/${BPN}/ + fi + + if [ -r ${WORKDIR}/detect-machine ] + then + install -m 0755 ${WORKDIR}/detect-machine ${D}/${sysconfdir}/${BPN}/scripts/ + fi + + + for file in ${MACHINE_CONFIG_FILES} + do + if ( [ "$file" != "defaults" ] && [ "$file" != "detect-machine" ] ); then + mkdir -p ${D}/${sysconfdir}/${BPN}/config/`dirname ${file}` + install -m 0644 ${S}/../${file} ${D}/${sysconfdir}/${BPN}/config/${file} + fi + done +}
Signature · 1 line
1.8.1.4
Quoted 8 lines · On Mon, 2014-12-15 at 10:47 -0800, [email protected] wrote:
From: Nitin A Kamble <[email protected]>
This pull request introduces a new feature called machine-setup-tool, which can be used by the BSP. With the use of the tool, BSPs for different boards which mainly differ in the text configuration for the target board, can be consolidated to use a common BSP.
The tool provides ability to configure the target image at runtime. It also
There doesn't seem to be any documentation for this tool that I can see here. How does a user set things up to configure the target image at runtime, or does it just happen?
How do you know it's working or not - there doesn't seem to be any instructions on how to use or test it.
Quoted 2 lines
provides ability to detect the target boards for automatic configuration of the image. The tool can handle any text configuration for the target image.
Great, but how? Are there some files or variables that need tweaking?
Quoted 3 lines
All the configuration manipulation needed for the meta-intel BSP boards is already supported in the tool.
That's great for meta-intel, but this is oe-core, not sure why that's mentioned here.
Quoted 9 lines
The tool's configuration is BSP specific and need to be specified separately in the BSP layer. For example, for the meta-intel layer, the complementary commits can be seen here:
http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-contrib/log/?h=nitin/machinesetuptool
These commits are enabling the meta-intel layer to support 6 boards with 2 common BSPs.
It's good to have working examples, but I don't think that should replace documentation.
Tom
Quoted 24 lines
Thanks,
NitinThe following changes since commit
8657c2fd57600e0b0eaf2a14692de7453c78e1bb:serf: readded md5sum (2014-12-11 11:34:57 +0000)
are available in the git repository at:
git://git.yoctoproject.org/poky-contribnitin/machinesetuptool
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=nitin/machinesetuptoolNitin A Kamble (2):
alsa-plugins: a new recipe
machinesetuptool: a new recipe for setup of a machine.../machinesetuptool/machinesetuptool_git.bb | 55 ++++++++++++++++++++++ .../recipes-multimedia/alsa/alsa-plugins_1.0.28.bb | 49 +++++++++++++++++++ 2 files changed, 104 insertions(+) create mode 100644 meta/recipes-bsp/machinesetuptool/machinesetuptool_git.bb create mode 100644 meta/recipes-multimedia/alsa/alsa-plugins_1.0.28.bb